feat(SW-66, SW-348): search functionality and ui

This commit is contained in:
Simon Emanuelsson
2024-08-28 10:47:57 +02:00
parent b9dbcf7d90
commit af850c90e7
437 changed files with 7663 additions and 9881 deletions

View File

@@ -28,3 +28,32 @@ export async function generateMetadata() {
},
}
}
export async function generateMetadataAccountPage() {
const metaData = await serverClient().contentstack.accountPage.metadata.get()
if (!metaData) {
return {
title: "",
description: "",
openGraph: {
images: [],
},
}
}
const title = metaData?.breadcrumbsTitle ?? metaData?.title ?? ""
const description = metaData?.description ?? ""
const images =
metaData?.imageConnection?.edges?.map((edge) => ({
url: edge.node.url,
})) || []
return {
title,
description,
openGraph: {
images,
},
}
}

View File

@@ -1,3 +1,4 @@
import { System } from "@/types/requests/system"
import type { Edges } from "@/types/requests/utils/edges"
import type { NodeRefs } from "@/types/requests/utils/refs"
import type { Lang } from "@/constants/languages"
@@ -69,3 +70,16 @@ export function generateTags(lang: Lang, connections: Edges<NodeRefs>[]) {
})
.flat()
}
export function generateTagsFromSystem(
lang: Lang,
connections: System["system"][]
) {
return connections.map((system) => {
return generateRefTag(
system.locale ?? lang,
system.content_type_uid,
system.uid
)
})
}

View File

@@ -1,7 +1,4 @@
import type {
Benefit,
ComparisonLevel,
} from "@/types/components/loyalty/blocks"
import type { Benefit, ComparisonLevel } from "@/types/components/overviewTable"
export function getUnlockedBenefits(levels: ComparisonLevel[]) {
const allBenefits = levels

View File

@@ -3,14 +3,14 @@ import { z } from "zod"
import { MembershipLevelEnum } from "@/constants/membershipLevels"
import { getMembershipCardsSchema } from "@/server/routers/user/output"
import { User } from "@/types/user"
import type { Memberships, User } from "@/types/user"
enum scandicMemberships {
guestpr = "guestpr",
scandicfriends = "scandicfriend's",
}
export function getMembership(memberships: User["memberships"]) {
export function getMembership(memberships: Memberships) {
return memberships?.find(
(membership) =>
membership.membershipType.toLowerCase() === scandicMemberships.guestpr