fix(SW-556): add membership number, remove some unused code

This commit is contained in:
Christian Andolf
2024-10-16 16:37:09 +02:00
parent e5b4b6f82e
commit 95d0a70f5e
6 changed files with 26 additions and 10 deletions

View File

@@ -17,6 +17,7 @@ import type { CurrentRewardsClientProps } from "@/types/components/blocks/curren
export default function ClientCurrentRewards({
initialCurrentRewards,
membershipNumber,
}: CurrentRewardsClientProps) {
const lang = useLang()
const { data, isFetching, fetchNextPage, hasNextPage, isLoading } =
@@ -81,7 +82,7 @@ export default function ClientCurrentRewards({
) : (
<ShowMoreButton loadMoreData={loadMoreData} />
))}
<Surprises surprises={surprises} />
<Surprises surprises={surprises} membershipNumber={membershipNumber} />
</>
)
}

View File

@@ -1,3 +1,4 @@
import { getProfile } from "@/lib/trpc/memoizedRequests"
import { serverClient } from "@/lib/trpc/server"
import SectionContainer from "@/components/Section/Container"
@@ -22,10 +23,19 @@ export default async function CurrentRewardsBlock({
return null
}
const user = await getProfile()
if (!user || "error" in user) {
return null
}
return (
<SectionContainer>
<SectionHeader title={title} link={link} preamble={subtitle} />
<ClientCurrentRewards initialCurrentRewards={initialCurrentRewards} />
<ClientCurrentRewards
initialCurrentRewards={initialCurrentRewards}
membershipNumber={user.membership?.membershipNumber}
/>
<SectionLink link={link} variant="mobile" />
</SectionContainer>
)

View File

@@ -22,7 +22,10 @@ import styles from "./surprises.module.css"
import type { SurprisesProps } from "@/types/components/blocks/surprises"
export default function Surprises({ surprises }: SurprisesProps) {
export default function Surprises({
surprises,
membershipNumber,
}: SurprisesProps) {
const lang = useLang()
const [open, setOpen] = useState(true)
const [selectedSurprise, setSelectedSurprise] = useState(0)
@@ -54,7 +57,7 @@ export default function Surprises({ surprises }: SurprisesProps) {
{ amount: surprises.length }
)}
<br />
<Link href={benefits[lang]}>
<Link href={benefits[lang]} variant="underscored" color="burgundy">
{intl.formatMessage({ id: "Go to My Benefits" })}
</Link>
</>
@@ -105,7 +108,10 @@ export default function Surprises({ surprises }: SurprisesProps) {
</Body>
<div className={styles.badge}>
<Caption>Valid through DD M YYYY</Caption>
<Caption>Member ID 000000</Caption>
<Caption>
{intl.formatMessage({ id: "Membership ID" })}{" "}
{membershipNumber}
</Caption>
</div>
</Surprise>
</div>

View File

@@ -1,7 +1,3 @@
.icon {
align-self: center;
}
@keyframes modal-fade {
from {
opacity: 0;
@@ -55,7 +51,6 @@
position: absolute;
left: 0;
bottom: 0;
transition: height 200ms ease-in-out;
&[data-entering] {
animation: slide-up 200ms;

View File

@@ -1,9 +1,12 @@
import { ApiReward, Reward } from "@/server/routers/contentstack/reward/output"
import { SafeUser } from "@/types/user"
export type CurrentRewardsClientProps = {
initialCurrentRewards: {
rewards: Reward[]
apiRewards: ApiReward[]
nextCursor: number | undefined
}
membershipNumber?: string
}

View File

@@ -2,4 +2,5 @@ import { ApiReward } from "@/server/routers/contentstack/reward/output"
export interface SurprisesProps {
surprises: ApiReward[]
membershipNumber?: string
}