Support stacking multiple discount codes
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
import type { Discount } from './cart'
|
||||
|
||||
/** Combine multiple discount codes into one effective factor. */
|
||||
export function applyDiscounts(subtotalCents: number, discounts: Discount[]): number {
|
||||
let totalPercentOff = 0
|
||||
for (const discount of discounts) {
|
||||
totalPercentOff += discount.percentOff
|
||||
}
|
||||
return Math.round(subtotalCents * (1 - totalPercentOff / 100))
|
||||
}
|
||||
Reference in New Issue
Block a user