diff --git a/apps/backend/package.json b/apps/backend/package.json index 1781a5a..9235528 100644 --- a/apps/backend/package.json +++ b/apps/backend/package.json @@ -1,6 +1,7 @@ { - "name": "", + "name": "backend", "version": "1.0.0", + "private": true, "description": "Website template for Payload", "license": "MIT", "type": "module", @@ -83,12 +84,5 @@ "engines": { "node": "^18.20.2 || >=20.9.0", "pnpm": "^9 || ^10" - }, - "pnpm": { - "onlyBuiltDependencies": [ - "sharp", - "esbuild", - "unrs-resolver" - ] } } diff --git a/apps/backend/src/Footer/Component.tsx b/apps/backend/src/Footer/Component.tsx index 868908f..ee4fe45 100644 --- a/apps/backend/src/Footer/Component.tsx +++ b/apps/backend/src/Footer/Component.tsx @@ -22,9 +22,24 @@ export async function Footer() {
-
diff --git a/apps/backend/src/Footer/RowLabel.tsx b/apps/backend/src/Footer/RowLabel.tsx index a6f9494..106b466 100644 --- a/apps/backend/src/Footer/RowLabel.tsx +++ b/apps/backend/src/Footer/RowLabel.tsx @@ -1,9 +1,9 @@ 'use client' -import { Header } from '@/payload-types' +import { Footer as FooterGlobal } from '@/payload-types' import { RowLabelProps, useRowLabel } from '@payloadcms/ui' export const RowLabel: React.FC = () => { - const data = useRowLabel[number]>() + const data = useRowLabel[number]>() const label = data?.data?.link?.label ? `Nav item ${data.rowNumber !== undefined ? data.rowNumber + 1 : ''}: ${data?.data?.link?.label}` diff --git a/apps/backend/src/Footer/config.ts b/apps/backend/src/Footer/config.ts index ca9b54b..6716d41 100644 --- a/apps/backend/src/Footer/config.ts +++ b/apps/backend/src/Footer/config.ts @@ -16,6 +16,20 @@ export const Footer: GlobalConfig = { link({ appearances: false, }), + { + name: 'childNavItems', + label: 'Nested links', + type: 'array', + fields: [ + link({ + appearances: false, + }), + ], + maxRows: 8, + admin: { + initCollapsed: true, + }, + }, ], maxRows: 6, admin: { diff --git a/apps/backend/src/payload-types.ts b/apps/backend/src/payload-types.ts index 1196d9c..357c855 100644 --- a/apps/backend/src/payload-types.ts +++ b/apps/backend/src/payload-types.ts @@ -154,7 +154,7 @@ export interface Page { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -219,7 +219,7 @@ export interface Post { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -265,7 +265,7 @@ export interface Media { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -401,7 +401,7 @@ export interface CallToActionBlock { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -452,7 +452,7 @@ export interface ContentBlock { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -509,7 +509,7 @@ export interface ArchiveBlock { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -545,7 +545,7 @@ export interface FormBlock { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -602,7 +602,7 @@ export interface Form { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -685,7 +685,7 @@ export interface Form { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -717,7 +717,7 @@ export interface Form { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; @@ -1598,6 +1598,26 @@ export interface Footer { url?: string | null; label: string; }; + childNavItems?: + | { + link: { + type?: ('reference' | 'custom') | null; + newTab?: boolean | null; + reference?: + | ({ + relationTo: 'pages'; + value: string | Page; + } | null) + | ({ + relationTo: 'posts'; + value: string | Post; + } | null); + url?: string | null; + label: string; + }; + id?: string | null; + }[] + | null; id?: string | null; }[] | null; @@ -1644,6 +1664,20 @@ export interface FooterSelect { url?: T; label?: T; }; + childNavItems?: + | T + | { + link?: + | T + | { + type?: T; + newTab?: T; + reference?: T; + url?: T; + label?: T; + }; + id?: T; + }; id?: T; }; updatedAt?: T; @@ -1682,7 +1716,7 @@ export interface BannerBlock { root: { type: string; children: { - type: any; + type: string; version: number; [k: string]: unknown; }[]; diff --git a/package.json b/package.json index d4f3c0f..92cd51b 100644 --- a/package.json +++ b/package.json @@ -10,5 +10,12 @@ }, "devDependencies": { "turbo": "^2.0.5" + }, + "pnpm": { + "onlyBuiltDependencies": [ + "sharp", + "esbuild", + "unrs-resolver" + ] } }