x
This commit is contained in:
1 parent
dba82b26a8
commit
943fd8f1a3
16 files changed
+257
-20
No files matched your search
@@ -652,6 +652,15 @@ export const DefaultTextColorSchemeSchema = (fallback: TextColorScheme = 'light'
|
||||
.optional()
|
||||
.transform((val) => (val ? (val as TextColorScheme) : fallback));
|
||||
|
||||
export const TitleSizeSchema = z.enum(['sm', 'md', 'lg', 'xl']);
|
||||
export type TitleSize = z.infer<typeof TitleSizeSchema>;
|
||||
|
||||
export const DefaultTitleSizeSchema = (fallback: TitleSize = 'xl') =>
|
||||
z
|
||||
.union([TitleSizeSchema, z.literal(''), z.null()])
|
||||
.optional()
|
||||
.transform((val) => (val ? (val as TitleSize) : fallback));
|
||||
|
||||
export const SectionPaddingLevelSchema = z.enum(['none', 'compact', 'normal', 'spacious']);
|
||||
export type SectionPaddingLevel = z.infer<typeof SectionPaddingLevelSchema>;
|
||||
|
||||
@@ -674,6 +683,7 @@ export const HeroSectionPayloadSchema = z.object({
|
||||
mobileButtonPosition: OptionalContentPositionSchema,
|
||||
contentWidth: DefaultContentWidthSchema('standard'),
|
||||
textColorScheme: DefaultTextColorSchemeSchema('light'),
|
||||
titleSize: DefaultTitleSizeSchema('xl'),
|
||||
overlayStyle: z.enum(['gradient', 'solid', 'none']).optional().default('gradient'),
|
||||
overlayOpacity: z.number().min(0).max(100).optional(),
|
||||
});
|
||||
@@ -712,6 +722,7 @@ export const BannerSectionPayloadSchema = z.object({
|
||||
mobileButtonPosition: OptionalContentPositionSchema,
|
||||
contentWidth: DefaultContentWidthSchema('standard'),
|
||||
textColorScheme: DefaultTextColorSchemeSchema('light'),
|
||||
titleSize: DefaultTitleSizeSchema('xl'),
|
||||
});
|
||||
export type BannerSectionPayload = z.infer<typeof BannerSectionPayloadSchema>;
|
||||
|
||||
@@ -803,6 +814,7 @@ export const HeroVideoSectionPayloadSchema = z.object({
|
||||
mobileButtonPosition: OptionalContentPositionSchema,
|
||||
contentWidth: DefaultContentWidthSchema('standard'),
|
||||
textColorScheme: DefaultTextColorSchemeSchema('light'),
|
||||
titleSize: DefaultTitleSizeSchema('xl'),
|
||||
});
|
||||
export type HeroVideoSectionPayload = z.infer<typeof HeroVideoSectionPayloadSchema>;
|
||||
|
||||
@@ -836,6 +848,7 @@ export const HeroCarouselSlideSchema = z.object({
|
||||
mobileButtonPosition: OptionalContentPositionSchema,
|
||||
contentWidth: DefaultContentWidthSchema('standard'),
|
||||
textColorScheme: DefaultTextColorSchemeSchema('light'),
|
||||
titleSize: DefaultTitleSizeSchema('xl'),
|
||||
});
|
||||
export type HeroCarouselSlide = z.infer<typeof HeroCarouselSlideSchema>;
|
||||
|
||||
@@ -889,6 +902,7 @@ export const HeroArticleSectionPayloadSchema = z.object({
|
||||
imageUrl: z.string().optional(),
|
||||
backgroundImageUrl: z.string().optional(),
|
||||
overlayColor: z.string().optional(),
|
||||
titleSize: DefaultTitleSizeSchema('xl'),
|
||||
});
|
||||
export type HeroArticleSectionPayload = z.infer<typeof HeroArticleSectionPayloadSchema>;
|
||||
|
||||
@@ -1189,6 +1203,7 @@ export const HeroV2SectionPayloadSchema = z.object({
|
||||
secondaryButtonText: LocalizedStringSchema.optional(),
|
||||
secondaryButtonLink: z.string().optional(),
|
||||
focalPoint: z.object({ x: z.string(), y: z.string() }).optional(),
|
||||
titleSize: DefaultTitleSizeSchema('lg'),
|
||||
});
|
||||
export type HeroV2SectionPayload = z.infer<typeof HeroV2SectionPayloadSchema>;
|
||||
|
||||
@@ -1215,6 +1230,7 @@ export const HeroMinimalSectionPayloadSchema = z.object({
|
||||
focalPoint: z.object({ x: z.string(), y: z.string() }).optional(),
|
||||
contentAlignment: z.enum(['left', 'center', 'right']).optional().default('center'),
|
||||
overlayOpacity: z.number().optional().default(20),
|
||||
titleSize: DefaultTitleSizeSchema('lg'),
|
||||
});
|
||||
export type HeroMinimalSectionPayload = z.infer<typeof HeroMinimalSectionPayloadSchema>;
|
||||
|
||||
@@ -1225,6 +1241,7 @@ export const HeroSplitMinimalSectionPayloadSchema = z.object({
|
||||
imagePosition: z.enum(['left', 'right']).optional().default('right'),
|
||||
focalPoint: z.object({ x: z.string(), y: z.string() }).optional(),
|
||||
backgroundColor: z.string().optional(),
|
||||
titleSize: DefaultTitleSizeSchema('lg'),
|
||||
});
|
||||
export type HeroSplitMinimalSectionPayload = z.infer<typeof HeroSplitMinimalSectionPayloadSchema>;
|
||||
|
||||
@@ -1236,6 +1253,7 @@ export const HeroVideoMinimalSectionPayloadSchema = z.object({
|
||||
overlayOpacity: z.number().optional().default(25),
|
||||
height: z.enum(['full', 'large', 'medium']).optional().default('large'),
|
||||
focalPoint: z.object({ x: z.string(), y: z.string() }).optional(),
|
||||
titleSize: DefaultTitleSizeSchema('lg'),
|
||||
});
|
||||
export type HeroVideoMinimalSectionPayload = z.infer<typeof HeroVideoMinimalSectionPayloadSchema>;
|
||||
|
||||
|
||||
Reference in new issue
Block a user