fix: handle webviews

This commit is contained in:
Christel Westerberg
2024-07-15 09:49:21 +02:00
parent 73cea4ba51
commit c7446032fe
12 changed files with 86 additions and 53 deletions
@@ -6,6 +6,7 @@ import { serverClient } from "@/lib/trpc/server"
import MaxWidth from "@/components/MaxWidth"
import Content from "@/components/MyPages/AccountPage/Webview/Content"
import TrackingSDK from "@/components/TrackingSDK"
import LinkToOverview from "@/components/Webviews/LinkToOverview"
import styles from "./accountPage.module.css"
@@ -14,16 +15,24 @@ import { LangParams } from "@/types/params"
export default async function MyPages({ lang }: LangParams) {
const accountPage = await serverClient().contentstack.accountPage.get()
if (!accountPage) {
return null
}
const accountPageTracking = serverClient().contentstack.accountPage.tracking()
const userTrackingData = serverClient().user.tracking()
const linkToOverview = `/${lang}/webview${accountPage.url}` !== overview[lang]
return (
<MaxWidth className={styles.blocks} tag="main">
{linkToOverview ? <LinkToOverview lang={lang} /> : null}
<Content lang={lang} content={accountPage.content} />
<TrackingSDK
pageDataPromise={accountPageTracking}
userDataPromise={userTrackingData}
/>
</MaxWidth>
)
}
@@ -1,9 +1,9 @@
import { serverClient } from "@/lib/trpc/server"
import { Blocks } from "@/components/Loyalty/Blocks/WebView"
import Sidebar from "@/components/Loyalty/Sidebar"
import MaxWidth from "@/components/MaxWidth"
import Title from "@/components/TempDesignSystem/Text/Title"
import TrackingSDK from "@/components/TrackingSDK"
import LinkToOverview from "@/components/Webviews/LinkToOverview"
import styles from "./loyaltyPage.module.css"
@@ -12,21 +12,25 @@ import { LangParams } from "@/types/params"
export default async function AboutScandicFriends({ lang }: LangParams) {
const loyaltyPage = await serverClient().contentstack.loyaltyPage.get()
if (!loyaltyPage) {
return null
}
const loyaltyPageTracking = serverClient().contentstack.loyaltyPage.tracking()
const userTrackingData = serverClient().user.tracking()
return (
<section className={styles.content}>
<LinkToOverview lang={lang} />
{loyaltyPage.sidebar.length ? (
<Sidebar blocks={loyaltyPage.sidebar} lang={lang} />
) : null}
<MaxWidth tag="main" className={styles.blocks}>
<Title>{loyaltyPage.heading}</Title>
<Blocks blocks={loyaltyPage.blocks} lang={lang} />
</MaxWidth>
<TrackingSDK
pageDataPromise={loyaltyPageTracking}
userDataPromise={userTrackingData}
/>
</section>
)
}
@@ -4,11 +4,6 @@
gap: var(--Spacing-x5);
}
.sidebar {
margin-left: calc(var(--Spacing-x2) * -1);
margin-right: calc(var(--Spacing-x2) * -1);
}
.blocks {
display: grid;
gap: var(--Spacing-x5);