Merged in fix/refactor-currency-display (pull request #3434)

fix(SW-3616): Handle EuroBonus point type everywhere

* Add tests to formatPrice

* formatPrice

* More work replacing config with api points type

* More work replacing config with api points type

* More fixing with currency

* maybe actually fixed it

* Fix MyStay

* Clean up

* Fix comments

* Merge branch 'master' into fix/refactor-currency-display

* Fix calculateTotalPrice for EB points + SF points + cash


Approved-by: Joakim Jäderberg
This commit is contained in:
Anton Gunnarsson
2026-01-15 09:32:17 +00:00
parent c61ddaf94d
commit 16fbdb7ae0
59 changed files with 729 additions and 282 deletions

View File

@@ -17,12 +17,10 @@ export function getTotalPrice({
selectedRates,
isMember,
addAdditionalCost = true,
pointsCurrency,
}: {
selectedRates: Array<SelectedRate | null>
isMember: boolean
addAdditionalCost?: boolean
pointsCurrency?: CurrencyEnum
}): Price | null {
const mainRoom = selectedRates[0]
const mainRoomRate = mainRoom?.rate
@@ -47,8 +45,7 @@ export function getTotalPrice({
mainRoom.roomConfiguration?.selectedPackages.filter(
(pkg) => "localPrice" in pkg
) ?? null,
addAdditionalCost,
pointsCurrency
addAdditionalCost
)
}
if ("voucher" in mainRoomRate) {
@@ -159,8 +156,7 @@ function calculateTotalPrice(
function calculateRedemptionTotalPrice(
redemption: RedemptionProduct["redemption"],
packages: RoomPackage[] | null,
addAdditonalCost: boolean,
pointsCurrency?: CurrencyEnum
addAdditonalCost: boolean
) {
const pkgsSum = addAdditonalCost
? sumPackages(packages)
@@ -183,8 +179,9 @@ function calculateRedemptionTotalPrice(
local: {
additionalPrice,
additionalPriceCurrency,
currency: pointsCurrency ?? CurrencyEnum.POINTS,
currency: CurrencyEnum.POINTS,
price: redemption.localPrice.pointsPerStay,
pointsType: redemption.localPrice.pointsType,
},
}
}