Merged in feat/sw-187-footer-content-stack (pull request #565)

Feat/sw 187 footer content stack

Approved-by: Erik Tiekstra
Approved-by: Matilda Landström
This commit is contained in:
Pontus Dreij
2024-09-12 07:11:25 +00:00
63 changed files with 1350 additions and 521 deletions

View File

@@ -0,0 +1,21 @@
export interface DropdownState {
isHamburgerMenuOpen: boolean
isMyPagesMobileMenuOpen: boolean
isMyPagesMenuOpen: boolean
isHeaderLanguageSwitcherOpen: boolean
isHeaderLanguageSwitcherMobileOpen: boolean
isFooterLanguageSwitcherOpen: boolean
toggleDropdown: (dropdown: DropdownTypeEnum) => void
handleHamburgerClick: () => void
}
export enum DropdownTypeEnum {
HamburgerMenu = "hamburgerMenu",
MyPagesMobileMenu = "myPagesMobileMenu",
MyPagesMenu = "myPagesMenu",
HeaderLanguageSwitcher = "headerLanguageSwitcher",
HeaderLanguageSwitcherMobile = "headerLanguageSwitcherMobile",
FooterLanguageSwitcher = "footerLanguageSwitcher",
}
export type DropdownType = `${DropdownTypeEnum}`

View File

@@ -0,0 +1,14 @@
export enum AppDownLoadLinks {
apple_da = "/_static/img/store-badges/app-store-badge-da.svg",
apple_de = "/_static/img/store-badges/app-store-badge-de.svg",
apple_en = "/_static/img/store-badges/app-store-badge-en.svg",
apple_fi = "/_static/img/store-badges/app-store-badge-fi.svg",
apple_no = "/_static/img/store-badges/app-store-badge-no.svg",
apple_sv = "/_static/img/store-badges/app-store-badge-sv.svg",
google_da = "/_static/img/store-badges/google-play-badge-da.svg",
google_de = "/_static/img/store-badges/google-play-badge-de.svg",
google_en = "/_static/img/store-badges/google-play-badge-en.svg",
google_fi = "/_static/img/store-badges/google-play-badge-fi.svg",
google_no = "/_static/img/store-badges/google-play-badge-no.svg",
google_sv = "/_static/img/store-badges/google-play-badge-sv.svg",
}

View File

@@ -0,0 +1,11 @@
import { z } from "zod"
import {
validateFooterConfigSchema,
validateFooterRefConfigSchema,
validateLinkItem,
} from "@/server/routers/contentstack/base/output"
export type FooterRefDataRaw = z.infer<typeof validateFooterRefConfigSchema>
export type FooterDataRaw = z.infer<typeof validateFooterConfigSchema>
export type FooterLinkItem = z.infer<typeof validateLinkItem>

View File

@@ -1,37 +1,41 @@
export type FooterMainNav = {
id: string
href: string
title: string
openInNewTab: boolean
isExternal: boolean
}
import { z } from "zod"
import {
validateLinkItem,
validateLinksWithType,
validateSecondaryLinks,
} from "@/server/routers/contentstack/base/output"
import type { LanguageSwitcherData } from "@/types/requests/languageSwitcher"
export type FooterLink = z.output<typeof validateLinkItem>
export type FooterMainNavProps = {
mainLinks: FooterMainNav[]
mainLinks: FooterLink[]
}
export type FooterSecondaryNav = {
id: string
href: string
type FooterSecondaryNavGroup = z.output<typeof validateSecondaryLinks>
type FooterLinkWithType = z.output<typeof validateLinksWithType>
type FooterAppDownloads = {
title: string
openInNewTab: boolean
isExternal: boolean
}
export type FooterSecondaryNavProps = {
secondaryLinks: {
title: string
links: FooterSecondaryNav[]
}[]
appDownloads: {
title: string
links: {
title: string
href: string
id: string
}[]
}
links: FooterLinkWithType
}
export enum AppDownLoadLinks {
apple = "/_static/img/app-store-badge.svg",
google = "/_static/img/google-play-badge.svg",
type FooterSocialMedia = {
links: FooterLinkWithType
}
export type FooterSecondaryNavProps = {
secondaryLinks: FooterSecondaryNavGroup
appDownloads: FooterAppDownloads
}
export type FooterDetailsProps = {
socialMedia?: FooterSocialMedia
tertiaryLinks?: FooterLink[]
languageUrls?: LanguageSwitcherData
}
export type FooterNavigationProps = FooterMainNavProps & FooterSecondaryNavProps

View File

@@ -1,6 +1,6 @@
import { LanguageSwitcherData } from "@/types/requests/languageSwitcher"
import type { LanguageSwitcherData } from "@/types/requests/languageSwitcher"
export interface LanguageSwitcherProps {
type: "mobileHeader" | "mobileFooter" | "desktopHeader" | "desktopFooter"
type: "mobileHeader" | "desktopHeader" | "footer"
urls: LanguageSwitcherData
}