From 29f51e655ecd3ab385c654d497a51a685e33a95d Mon Sep 17 00:00:00 2001 From: "Chuma Mcphoy (We Ahead)" Date: Mon, 13 Oct 2025 06:51:59 +0000 Subject: [PATCH] Merged in fix/LOY-359-revert-to-loyalty-level-to-support-boosted-level (pull request #2954) fix(LOY-359): Revert back to allow non-native loyalty level in overview cards * fix(LOY-359): Revert back to allow non-native loyalty level in overview cards Approved-by: Erik Tiekstra --- .../Overview/MembershipOverviewCard/index.tsx | 21 ++++++------------- .../MyPages/LevelProgressCard/index.tsx | 13 ++++-------- .../MyPages/LevelProgressCard/utils.ts | 10 ++++----- packages/trpc/lib/routers/user/helpers.ts | 4 ---- 4 files changed, 15 insertions(+), 33 deletions(-) diff --git a/apps/scandic-web/components/Blocks/DynamicContent/Overview/MembershipOverviewCard/index.tsx b/apps/scandic-web/components/Blocks/DynamicContent/Overview/MembershipOverviewCard/index.tsx index d35f7175f..6a7f6bec3 100644 --- a/apps/scandic-web/components/Blocks/DynamicContent/Overview/MembershipOverviewCard/index.tsx +++ b/apps/scandic-web/components/Blocks/DynamicContent/Overview/MembershipOverviewCard/index.tsx @@ -2,10 +2,7 @@ import { MembershipLevelEnum } from "@scandic-hotels/common/constants/membership import { Divider } from "@scandic-hotels/design-system/Divider" import { MaterialIcon } from "@scandic-hotels/design-system/Icons/MaterialIcon" import { Typography } from "@scandic-hotels/design-system/Typography" -import { - getEurobonusMembership, - getScandicNativeMembership, -} from "@scandic-hotels/trpc/routers/user/helpers" +import { getEurobonusMembership } from "@scandic-hotels/trpc/routers/user/helpers" import { membershipLevels } from "@/constants/membershipLevels" @@ -28,19 +25,13 @@ export default async function MembershipOverviewCard({ }: MembershipOverviewCardProps) { const intl = await getIntl() - const friendsMembership = user.loyalty - ? getScandicNativeMembership(user.loyalty) - : null - - if (!user.membership || !friendsMembership) { + if (!user.membership?.membershipLevel) { return null } - const currentPoints = user.membership.currentPoints - const pointsToSpendText = - typeof currentPoints === "number" - ? intl.formatNumber(currentPoints) + typeof user.membership.currentPoints === "number" + ? intl.formatNumber(user.membership.currentPoints) : intl.formatMessage({ defaultMessage: "N/A" }) const sasMembership = user.loyalty @@ -64,7 +55,7 @@ export default async function MembershipOverviewCard({ { defaultMessage: "LEVEL {level}", }, - { level: membershipLevels[friendsMembership.tier] } + { level: membershipLevels[user.membership.membershipLevel] } )} @@ -74,7 +65,7 @@ export default async function MembershipOverviewCard({ diff --git a/apps/scandic-web/components/MyPages/LevelProgressCard/utils.ts b/apps/scandic-web/components/MyPages/LevelProgressCard/utils.ts index e7f61db66..395f5f653 100644 --- a/apps/scandic-web/components/MyPages/LevelProgressCard/utils.ts +++ b/apps/scandic-web/components/MyPages/LevelProgressCard/utils.ts @@ -6,14 +6,14 @@ import { isHighestMembership } from "@/utils/user" import { type LevelProgressData, type ProgressCalculation } from "./types" -import type { NativeFriendsMembership } from "@scandic-hotels/trpc/types/user" +import type { FriendsMembership } from "@scandic-hotels/trpc/types/user" export async function getLevelProgressData( - membership: NonNullable + membership: NonNullable ): Promise { const caller = await serverClient() const currentLevel = await caller.contentstack.loyaltyLevels.byLevel({ - level: MembershipLevelEnum[membership.tier], + level: MembershipLevelEnum[membership.membershipLevel], }) const earned = membership.tierPoints ?? 0 @@ -24,7 +24,7 @@ export async function getLevelProgressData( ? currentLevel.required_points - earned : undefined - if (isHighestMembership(membership.tier)) { + if (isHighestMembership(membership.membershipLevel)) { return toKeepCurrent ? { type: "highest-incomplete", @@ -38,7 +38,7 @@ export async function getLevelProgressData( return { type: "lower-level", earned, - toNext: membership.pointsToNextTier ?? 0, + toNext: membership.pointsRequiredToNextlevel ?? 0, toKeepCurrent, } } diff --git a/packages/trpc/lib/routers/user/helpers.ts b/packages/trpc/lib/routers/user/helpers.ts index d2337eb28..1dfe5d648 100644 --- a/packages/trpc/lib/routers/user/helpers.ts +++ b/packages/trpc/lib/routers/user/helpers.ts @@ -48,10 +48,6 @@ export function getFriendsMembership(userLoyalty: UserLoyalty) { return result } -export function getScandicNativeMembership(loyalty: UserLoyalty) { - return loyalty.memberships?.find(isScandicNativeMembership) -} - function isEurobonusMembership( membership: Membership ): membership is EurobonusMembership {