31 lines
1.0 KiB
Go
31 lines
1.0 KiB
Go
package order
|
|
|
|
import "git.k6n.net/mats/go-cart-actor/pkg/cart"
|
|
|
|
// TaxProvider computes taxes for orders and line items.
|
|
// The canonical definition is in pkg/cart; this is a re-export for
|
|
// backward compatibility.
|
|
type TaxProvider = cart.TaxProvider
|
|
|
|
// ComputeTax is the shared tax formula: tax = total x rate / (100 + rate).
|
|
// Re-exported from pkg/cart for backward compatibility.
|
|
func ComputeTax(total int64, taxRate int) int64 {
|
|
return cart.ComputeTax(total, taxRate)
|
|
}
|
|
|
|
// NordicTaxProvider implements TaxProvider for the Nordic countries.
|
|
// Re-exported from pkg/cart for backward compatibility.
|
|
type NordicTaxProvider = cart.NordicTaxProvider
|
|
|
|
func NewNordicTaxProvider(defaultCountry string) *NordicTaxProvider {
|
|
return cart.NewNordicTaxProvider(defaultCountry)
|
|
}
|
|
|
|
// StaticTaxProvider is a stateless TaxProvider with no country awareness.
|
|
// Re-exported from pkg/cart for backward compatibility.
|
|
type StaticTaxProvider = cart.StaticTaxProvider
|
|
|
|
func NewStaticTaxProvider() *StaticTaxProvider {
|
|
return cart.NewStaticTaxProvider()
|
|
}
|