fix(SW-366): add nights to next level

This commit is contained in:
Christel Westerberg
2024-09-05 08:02:48 +02:00
parent 2c2390a5bf
commit df38a718b5
3 changed files with 17 additions and 3 deletions

View File

@@ -39,12 +39,13 @@ export const StayOnLevelColumn = ({ points, subtitleParam }: PointsColumn) =>
export const NextLevelNightsColumn = ({ export const NextLevelNightsColumn = ({
nights, nights,
subtitleParam, subtitleParam,
subtitle = "by",
}: NightsColumn) => }: NightsColumn) =>
PointsColumn({ PointsColumn({
nights, nights,
title: "Nights needed to level up", title: "Nights needed to level up",
subtitleParam, subtitleParam,
subtitle: "by", subtitle,
}) })
async function PointsColumn({ async function PointsColumn({
@@ -72,7 +73,7 @@ async function PointsColumn({
{points ?? nights ?? "N/A"} {points ?? nights ?? "N/A"}
</Title> </Title>
<Body color="white" textAlign="center"> <Body color="white" textAlign="center">
{formatMessage({ id: subtitle })} {subtitleParam} {subtitle ? formatMessage({ id: subtitle }) : ""} {subtitleParam}
</Body> </Body>
</article> </article>
) )

View File

@@ -5,7 +5,11 @@ import { getMembershipLevelObject } from "@/utils/membershipLevel"
import { getMembership } from "@/utils/user" import { getMembership } from "@/utils/user"
import PointsContainer from "./Container" import PointsContainer from "./Container"
import { NextLevelPointsColumn, YourPointsColumn } from "./PointsColumn" import {
NextLevelNightsColumn,
NextLevelPointsColumn,
YourPointsColumn,
} from "./PointsColumn"
import { UserProps } from "@/types/components/myPages/user" import { UserProps } from "@/types/components/myPages/user"
@@ -25,6 +29,13 @@ export default async function Points({ user }: UserProps) {
subtitleParam={nextLevel.name} subtitleParam={nextLevel.name}
/> />
)} )}
{membership?.nightsToTopTier && (
<NextLevelNightsColumn
nights={membership.nightsToTopTier}
subtitleParam={membership.tierExpirationDate}
subtitle={membership.tierExpirationDate ? "by" : ""}
/>
)}
</PointsContainer> </PointsContainer>
) )
} }

View File

@@ -24,9 +24,11 @@ export const getUserSchema = z.object({
memberSince: z.string(), memberSince: z.string(),
membershipType: z.string(), membershipType: z.string(),
nextLevel: z.string().optional(), nextLevel: z.string().optional(),
nightsToTopTier: z.number().optional(),
pointsExpiryDate: z.string().optional(), pointsExpiryDate: z.string().optional(),
pointsRequiredToNextlevel: z.number().optional(), pointsRequiredToNextlevel: z.number().optional(),
pointsToExpire: z.number().optional(), pointsToExpire: z.number().optional(),
tierExpirationDate: z.string().optional(),
}) })
), ),
phoneNumber: z.string().optional(), phoneNumber: z.string().optional(),