feat: payload cms
This commit is contained in:
263
payload-types.ts
263
payload-types.ts
@@ -94,10 +94,10 @@ export interface Config {
|
||||
db: {
|
||||
defaultIDType: number;
|
||||
};
|
||||
fallbackLocale: null;
|
||||
fallbackLocale: ('false' | 'none' | 'null') | false | null | ('de' | 'en') | ('de' | 'en')[];
|
||||
globals: {};
|
||||
globalsSelect: {};
|
||||
locale: null;
|
||||
locale: 'de' | 'en';
|
||||
user: User;
|
||||
jobs: {
|
||||
tasks: unknown;
|
||||
@@ -200,6 +200,9 @@ export interface Media {
|
||||
export interface Post {
|
||||
id: number;
|
||||
title: string;
|
||||
/**
|
||||
* Unique slug per locale (e.g. same slug can exist in DE and EN).
|
||||
*/
|
||||
slug: string;
|
||||
/**
|
||||
* A short summary for blog feed cards and SEO.
|
||||
@@ -213,7 +216,6 @@ export interface Post {
|
||||
* The primary Hero image used for headers and OpenGraph previews.
|
||||
*/
|
||||
featuredImage?: (number | null) | Media;
|
||||
locale: 'en' | 'de';
|
||||
/**
|
||||
* Used for tag bucketing (e.g. "Kabel Technologie").
|
||||
*/
|
||||
@@ -266,7 +268,6 @@ export interface Product {
|
||||
sku: string;
|
||||
slug: string;
|
||||
description: string;
|
||||
locale: 'en' | 'de';
|
||||
categories: {
|
||||
category?: string | null;
|
||||
id?: string | null;
|
||||
@@ -317,8 +318,14 @@ export interface Product {
|
||||
export interface Page {
|
||||
id: number;
|
||||
title: string;
|
||||
/**
|
||||
* The URL slug for this locale (e.g. "impressum" for DE, "imprint" for EN).
|
||||
*/
|
||||
slug: string;
|
||||
locale: 'en' | 'de';
|
||||
/**
|
||||
* Full Bleed pages render blocks edge-to-edge without a generic hero wrapper.
|
||||
*/
|
||||
layout?: ('default' | 'fullBleed') | null;
|
||||
excerpt?: string | null;
|
||||
featuredImage?: (number | null) | Media;
|
||||
content: {
|
||||
@@ -338,6 +345,7 @@ export interface Page {
|
||||
};
|
||||
updatedAt: string;
|
||||
createdAt: string;
|
||||
_status?: ('draft' | 'published') | null;
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
@@ -514,7 +522,6 @@ export interface PostsSelect<T extends boolean = true> {
|
||||
excerpt?: T;
|
||||
date?: T;
|
||||
featuredImage?: T;
|
||||
locale?: T;
|
||||
category?: T;
|
||||
content?: T;
|
||||
updatedAt?: T;
|
||||
@@ -543,7 +550,6 @@ export interface ProductsSelect<T extends boolean = true> {
|
||||
sku?: T;
|
||||
slug?: T;
|
||||
description?: T;
|
||||
locale?: T;
|
||||
categories?:
|
||||
| T
|
||||
| {
|
||||
@@ -565,12 +571,13 @@ export interface ProductsSelect<T extends boolean = true> {
|
||||
export interface PagesSelect<T extends boolean = true> {
|
||||
title?: T;
|
||||
slug?: T;
|
||||
locale?: T;
|
||||
layout?: T;
|
||||
excerpt?: T;
|
||||
featuredImage?: T;
|
||||
content?: T;
|
||||
updatedAt?: T;
|
||||
createdAt?: T;
|
||||
_status?: T;
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
@@ -702,6 +709,246 @@ export interface ProductTabsBlock {
|
||||
blockName?: string | null;
|
||||
blockType: 'productTabs';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeHeroBlock".
|
||||
*/
|
||||
export interface HomeHeroBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
ctaLabel?: string | null;
|
||||
secondaryCtaLabel?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeHero';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeProductCategoriesBlock".
|
||||
*/
|
||||
export interface HomeProductCategoriesBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeProductCategories';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeWhatWeDoBlock".
|
||||
*/
|
||||
export interface HomeWhatWeDoBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
expertiseLabel?: string | null;
|
||||
quote?: string | null;
|
||||
items?:
|
||||
| {
|
||||
title?: string | null;
|
||||
description?: string | null;
|
||||
id?: string | null;
|
||||
}[]
|
||||
| null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeWhatWeDo';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeRecentPostsBlock".
|
||||
*/
|
||||
export interface HomeRecentPostsBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeRecentPosts';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeExperienceBlock".
|
||||
*/
|
||||
export interface HomeExperienceBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
paragraph1?: string | null;
|
||||
paragraph2?: string | null;
|
||||
badge1?: string | null;
|
||||
badge1Text?: string | null;
|
||||
badge2?: string | null;
|
||||
badge2Text?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeExperience';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeWhyChooseUsBlock".
|
||||
*/
|
||||
export interface HomeWhyChooseUsBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
tagline?: string | null;
|
||||
features?:
|
||||
| {
|
||||
feature?: string | null;
|
||||
id?: string | null;
|
||||
}[]
|
||||
| null;
|
||||
items?:
|
||||
| {
|
||||
title?: string | null;
|
||||
description?: string | null;
|
||||
id?: string | null;
|
||||
}[]
|
||||
| null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeWhyChooseUs';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeMeetTheTeamBlock".
|
||||
*/
|
||||
export interface HomeMeetTheTeamBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
description?: string | null;
|
||||
ctaLabel?: string | null;
|
||||
networkLabel?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeMeetTheTeam';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeGalleryBlock".
|
||||
*/
|
||||
export interface HomeGalleryBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeGallery';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeVideoBlock".
|
||||
*/
|
||||
export interface HomeVideoBlock {
|
||||
title?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeVideo';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HomeCTABlock".
|
||||
*/
|
||||
export interface HomeCTABlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
description?: string | null;
|
||||
buttonLabel?: string | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'homeCTA';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "CategoryGridBlock".
|
||||
*/
|
||||
export interface CategoryGridBlock {
|
||||
categories: {
|
||||
title: string;
|
||||
description?: string | null;
|
||||
image?: (number | null) | Media;
|
||||
icon?: (number | null) | Media;
|
||||
href: string;
|
||||
ctaLabel?: string | null;
|
||||
id?: string | null;
|
||||
}[];
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'categoryGrid';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "ContactSectionBlock".
|
||||
*/
|
||||
export interface ContactSectionBlock {
|
||||
showForm?: boolean | null;
|
||||
showMap?: boolean | null;
|
||||
showHours?: boolean | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'contactSection';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "HeroSectionBlock".
|
||||
*/
|
||||
export interface HeroSectionBlock {
|
||||
badge?: string | null;
|
||||
title: string;
|
||||
subtitle?: string | null;
|
||||
backgroundImage?: (number | null) | Media;
|
||||
ctaLabel?: string | null;
|
||||
ctaHref?: string | null;
|
||||
alignment?: ('left' | 'center') | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'heroSection';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "ImageGalleryBlock".
|
||||
*/
|
||||
export interface ImageGalleryBlock {
|
||||
images: {
|
||||
image: number | Media;
|
||||
alt?: string | null;
|
||||
id?: string | null;
|
||||
}[];
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'imageGallery';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "ManifestoGridBlock".
|
||||
*/
|
||||
export interface ManifestoGridBlock {
|
||||
title?: string | null;
|
||||
subtitle?: string | null;
|
||||
tagline?: string | null;
|
||||
items: {
|
||||
title: string;
|
||||
description: string;
|
||||
id?: string | null;
|
||||
}[];
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'manifestoGrid';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "TeamProfileBlock".
|
||||
*/
|
||||
export interface TeamProfileBlock {
|
||||
name: string;
|
||||
role: string;
|
||||
quote?: string | null;
|
||||
description?: string | null;
|
||||
image?: (number | null) | Media;
|
||||
linkedinUrl?: string | null;
|
||||
linkedinLabel?: string | null;
|
||||
layout?: ('imageRight' | 'imageLeft') | null;
|
||||
colorScheme?: ('dark' | 'light') | null;
|
||||
id?: string | null;
|
||||
blockName?: string | null;
|
||||
blockType: 'teamProfile';
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "auth".
|
||||
|
||||
Reference in New Issue
Block a user