Sha256: f09d39eb5eabc53cb579176a2da3a3cf9a3d8adf3fe75aba60e7d28e172eb952

Contents?: true

Size: 824 Bytes

Versions: 76

Compression:

Stored size: 824 Bytes

Contents

# frozen_string_literal: true

module Spree
  module Tax
    # Used to build shipping rate taxes
    class ShippingRateTaxer
      # Build shipping rate taxes for a shipping rate
      # Modifies the passed-in shipping rate with associated shipping rate taxes.
      # @param [Spree::ShippingRate] shipping_rate The shipping rate to add taxes to.
      #   This parameter will be modified.
      # @return [Spree::ShippingRate] The shipping rate with associated tax objects
      def tax(shipping_rate)
        taxes = Spree::Config.shipping_rate_tax_calculator_class.new(shipping_rate.order).calculate(shipping_rate)
        taxes.each do |tax|
          shipping_rate.taxes.build(
            amount: tax.amount,
            tax_rate: tax.tax_rate
          )
        end
        shipping_rate
      end
    end
  end
end

Version data entries

76 entries across 76 versions & 2 rubygems

Version Path
solidus_core-3.0.8 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.7 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.17 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.16 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.6 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.15 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.14 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.5 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.13 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.4 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.12 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.3 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.11 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.2 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.10.5 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.10 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.1 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-3.0.0 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.9 app/models/spree/tax/shipping_rate_taxer.rb
solidus_core-2.11.8 app/models/spree/tax/shipping_rate_taxer.rb