Files
web/apps/scandic-web/components/Blocks/DynamicContent/Stays/Previous/index.tsx
Christian Andolf acc77625c8 feat(LOY-263): added new link to missing points form
removed soonest stays for redundancy
2025-06-25 11:40:15 +02:00

61 lines
1.9 KiB
TypeScript

import { MaterialIcon } from "@scandic-hotels/design-system/Icons/MaterialIcon"
import { Typography } from "@scandic-hotels/design-system/Typography"
import { serverClient } from "@/lib/trpc/server"
import ButtonLink from "@/components/ButtonLink"
import SectionContainer from "@/components/Section/Container"
import SectionHeader from "@/components/Section/Header"
import SectionLink from "@/components/Section/Link"
import { getIntl } from "@/i18n"
import ClientPreviousStays from "./Client"
import styles from "./previous.module.css"
import type { AccountPageComponentProps } from "@/types/components/myPages/myPage/accountPage"
export default async function PreviousStays({
title,
link,
}: AccountPageComponentProps) {
const intl = await getIntl()
const caller = await serverClient()
const initialPreviousStays = await caller.user.stays.previous({
limit: 6,
})
if (!initialPreviousStays?.data.length) {
return null
}
return (
<SectionContainer>
<div className={styles.header}>
<SectionHeader title={title} link={link} />
<div className={styles.claim}>
<Typography variant="Body/Supporting text (caption)/smRegular">
<p>
{intl.formatMessage({
defaultMessage: "Missing a previous stay?",
})}
</p>
</Typography>
<ButtonLink
href="https://www.scandichotels.com/forms/missing-points"
variant="Text"
target="_blank"
size="Small"
typography="Body/Supporting text (caption)/smBold"
>
{intl.formatMessage({ defaultMessage: "Claim points" })}
<MaterialIcon icon="open_in_new" size={20} color="CurrentColor" />
</ButtonLink>
</div>
</div>
<ClientPreviousStays initialPreviousStays={initialPreviousStays} />
<SectionLink link={link} variant="mobile" />
</SectionContainer>
)
}