@cntrl-site/components 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +3 -0
  3. package/dist/cli.d.ts +10 -0
  4. package/dist/components.css +1 -0
  5. package/dist/index.d.ts +33 -0
  6. package/dist/index.js +7765 -0
  7. package/dist/index.mjs +7748 -0
  8. package/dist/sdk/Client/Client.d.ts +32 -0
  9. package/dist/sdk/Client/Client.test.d.ts +1 -0
  10. package/dist/sdk/Client/__mock__/articleMock.d.ts +2 -0
  11. package/dist/sdk/Client/__mock__/keyframesMock.d.ts +2 -0
  12. package/dist/sdk/Client/__mock__/projectMock.d.ts +2 -0
  13. package/dist/sdk/Components/ControlSlider/ControlSlider.d.ts +90 -0
  14. package/dist/sdk/Components/ControlSlider/ControlSliderComponent.d.ts +519 -0
  15. package/dist/sdk/Components/ImageRevealSlider/ControlImageRevealSliderComponent.d.ts +209 -0
  16. package/dist/sdk/Components/ImageRevealSlider/ImageRevealSlider.d.ts +38 -0
  17. package/dist/sdk/Components/components.d.ts +2 -0
  18. package/dist/sdk/Components/helpers/RichTextRenderer/RichTextRenderer.d.ts +6 -0
  19. package/dist/sdk/Components/helpers/SvgImage/SvgImage.d.ts +9 -0
  20. package/dist/sdk/Components/utils/scalingValue.d.ts +1 -0
  21. package/dist/sdk/FontFaceGenerator/FontFaceGenerator.d.ts +6 -0
  22. package/dist/sdk/FontFaceGenerator/FontFaceGenerator.test.d.ts +1 -0
  23. package/dist/sdk/ScrollPlaybackVideoManager/ScrollPlaybackVideoManager.d.ts +31 -0
  24. package/dist/sdk/VideoDecoder/VideoDecoder.d.ts +12 -0
  25. package/dist/sdk/schemas/article/Article.schema.d.ts +328 -0
  26. package/dist/sdk/schemas/article/FillLayer.schema.d.ts +186 -0
  27. package/dist/sdk/schemas/article/Interaction.schema.d.ts +103 -0
  28. package/dist/sdk/schemas/article/Item.schema.d.ts +40 -0
  29. package/dist/sdk/schemas/article/ItemArea.schema.d.ts +36 -0
  30. package/dist/sdk/schemas/article/ItemBase.schema.d.ts +137 -0
  31. package/dist/sdk/schemas/article/ItemState.schema.d.ts +15723 -0
  32. package/dist/sdk/schemas/article/RichTextItem.schema.d.ts +1372 -0
  33. package/dist/sdk/schemas/article/Section.schema.d.ts +176 -0
  34. package/dist/sdk/schemas/keyframe/Keyframes.schema.d.ts +2000 -0
  35. package/dist/sdk/schemas/project/Layout.schema.d.ts +17 -0
  36. package/dist/sdk/schemas/project/Project.schema.d.ts +253 -0
  37. package/dist/sdk/schemas/shared/FillLayer.schema.d.ts +186 -0
  38. package/dist/sdk/types/article/Article.d.ts +7 -0
  39. package/dist/sdk/types/article/ArticleItemType.d.ts +13 -0
  40. package/dist/sdk/types/article/CompoundSettings.d.ts +6 -0
  41. package/dist/sdk/types/article/FX.d.ts +23 -0
  42. package/dist/sdk/types/article/Interaction.d.ts +28 -0
  43. package/dist/sdk/types/article/Item.d.ts +250 -0
  44. package/dist/sdk/types/article/ItemArea.d.ts +36 -0
  45. package/dist/sdk/types/article/ItemState.d.ts +78 -0
  46. package/dist/sdk/types/article/RichText.d.ts +40 -0
  47. package/dist/sdk/types/article/Section.d.ts +37 -0
  48. package/dist/sdk/types/component/Component.d.ts +15 -0
  49. package/dist/sdk/types/keyframe/Keyframe.d.ts +86 -0
  50. package/dist/sdk/types/project/Fonts.d.ts +22 -0
  51. package/dist/sdk/types/project/Layout.d.ts +6 -0
  52. package/dist/sdk/types/project/Meta.d.ts +9 -0
  53. package/dist/sdk/types/project/Page.d.ts +11 -0
  54. package/dist/sdk/types/project/Project.d.ts +17 -0
  55. package/dist/sdk-nextjs/common/useCurrentLayout.d.ts +6 -0
  56. package/dist/sdk-nextjs/common/useExemplary.d.ts +1 -0
  57. package/dist/sdk-nextjs/common/useItemFXData.d.ts +8 -0
  58. package/dist/sdk-nextjs/common/useKeyframeValue.d.ts +8 -0
  59. package/dist/sdk-nextjs/common/useRegisterResize.d.ts +1 -0
  60. package/dist/sdk-nextjs/components/Article.d.ts +9 -0
  61. package/dist/sdk-nextjs/components/ArticleWrapper.d.ts +2 -0
  62. package/dist/sdk-nextjs/components/Head.d.ts +9 -0
  63. package/dist/sdk-nextjs/components/LayoutStyle.d.ts +9 -0
  64. package/dist/sdk-nextjs/components/Page.d.ts +15 -0
  65. package/dist/sdk-nextjs/components/ScrollPlaybackVideo.d.ts +14 -0
  66. package/dist/sdk-nextjs/components/Section/Section.d.ts +11 -0
  67. package/dist/sdk-nextjs/components/Section/SectionImage.d.ts +14 -0
  68. package/dist/sdk-nextjs/components/Section/SectionVideo.d.ts +17 -0
  69. package/dist/sdk-nextjs/components/Section/useSectionColor.d.ts +4 -0
  70. package/dist/sdk-nextjs/components/Section/useSectionHeightMap.d.ts +3 -0
  71. package/dist/sdk-nextjs/components/items/CodeEmbedItem/CodeEmbedItem.d.ts +5 -0
  72. package/dist/sdk-nextjs/components/items/CodeEmbedItem/useCodeEmbedItem.d.ts +7 -0
  73. package/dist/sdk-nextjs/components/items/ComponentItem/ComponentItem.d.ts +4 -0
  74. package/dist/sdk-nextjs/components/items/ComponentItem/useComponentItem.d.ts +5 -0
  75. package/dist/sdk-nextjs/components/items/CompoundItem/CompoundChild.d.ts +9 -0
  76. package/dist/sdk-nextjs/components/items/CompoundItem/CompoundItem.d.ts +4 -0
  77. package/dist/sdk-nextjs/components/items/CompoundItem/useCompoundItem.d.ts +4 -0
  78. package/dist/sdk-nextjs/components/items/CustomItem/CustomItem.d.ts +4 -0
  79. package/dist/sdk-nextjs/components/items/EmbedVideoItem/VimeoEmbed.d.ts +4 -0
  80. package/dist/sdk-nextjs/components/items/EmbedVideoItem/YoutubeEmbed.d.ts +4 -0
  81. package/dist/sdk-nextjs/components/items/EmbedVideoItem/useEmbedVideoItem.d.ts +6 -0
  82. package/dist/sdk-nextjs/components/items/FileItem/ImageItem.d.ts +4 -0
  83. package/dist/sdk-nextjs/components/items/FileItem/VideoItem.d.ts +4 -0
  84. package/dist/sdk-nextjs/components/items/FileItem/useFileItem.d.ts +8 -0
  85. package/dist/sdk-nextjs/components/items/GroupItem/GroupItem.d.ts +4 -0
  86. package/dist/sdk-nextjs/components/items/GroupItem/useGroupItem.d.ts +5 -0
  87. package/dist/sdk-nextjs/components/items/Item.d.ts +20 -0
  88. package/dist/sdk-nextjs/components/items/LinkWrapper.d.ts +8 -0
  89. package/dist/sdk-nextjs/components/items/RectangleItem/RectangleItem.d.ts +4 -0
  90. package/dist/sdk-nextjs/components/items/RectangleItem/useRectangleItem.d.ts +9 -0
  91. package/dist/sdk-nextjs/components/items/RichTextItem/RichTextItem.d.ts +4 -0
  92. package/dist/sdk-nextjs/components/items/RichTextItem/useRichTextItem.d.ts +3 -0
  93. package/dist/sdk-nextjs/components/items/RichTextWrapper.d.ts +7 -0
  94. package/dist/sdk-nextjs/components/items/itemsMap.d.ts +4 -0
  95. package/dist/sdk-nextjs/components/items/useDraggable.d.ts +17 -0
  96. package/dist/sdk-nextjs/components/items/useItemAngle.d.ts +2 -0
  97. package/dist/sdk-nextjs/components/items/useItemArea.d.ts +12 -0
  98. package/dist/sdk-nextjs/components/items/useItemPointerEvents.d.ts +4 -0
  99. package/dist/sdk-nextjs/components/items/useItemScale.d.ts +2 -0
  100. package/dist/sdk-nextjs/components/items/useItemTriggers.d.ts +6 -0
  101. package/dist/sdk-nextjs/components/items/useRichTextItemValues.d.ts +9 -0
  102. package/dist/sdk-nextjs/components/items/useSizing.d.ts +8 -0
  103. package/dist/sdk-nextjs/components/items/useStickyItemTop.d.ts +2 -0
  104. package/dist/sdk-nextjs/components/useLayoutContext.d.ts +1 -0
  105. package/dist/sdk-nextjs/interactions/CSSPropertyNameMap.d.ts +4 -0
  106. package/dist/sdk-nextjs/interactions/InteractionsRegistry.d.ts +39 -0
  107. package/dist/sdk-nextjs/interactions/ItemInteractionCtrl.d.ts +21 -0
  108. package/dist/sdk-nextjs/interactions/getTransition.d.ts +9 -0
  109. package/dist/sdk-nextjs/interactions/types.d.ts +34 -0
  110. package/dist/sdk-nextjs/interactions/useItemInteractionCtrl.d.ts +2 -0
  111. package/dist/sdk-nextjs/provider/ArticleRectContext.d.ts +2 -0
  112. package/dist/sdk-nextjs/provider/CntrlContext.d.ts +2 -0
  113. package/dist/sdk-nextjs/provider/CntrlProvider.d.ts +2 -0
  114. package/dist/sdk-nextjs/provider/CntrlSdkContext.d.ts +31 -0
  115. package/dist/sdk-nextjs/provider/CustomItemRegistry.d.ts +6 -0
  116. package/dist/sdk-nextjs/provider/CustomItemTypes.d.ts +2 -0
  117. package/dist/sdk-nextjs/provider/CustomSectionRegistry.d.ts +15 -0
  118. package/dist/sdk-nextjs/provider/InteractionsContext.d.ts +10 -0
  119. package/dist/sdk-nextjs/provider/Keyframes.d.ts +6 -0
  120. package/dist/sdk-nextjs/provider/KeyframesContext.d.ts +2 -0
  121. package/dist/sdk-nextjs/provider/LayoutContext.d.ts +1 -0
  122. package/dist/sdk-nextjs/provider/WebGLContextManagerContext.d.ts +2 -0
  123. package/dist/sdk-nextjs/provider/defaultContext.d.ts +2 -0
  124. package/dist/sdk-nextjs/provider/useCntrlContext.d.ts +2 -0
  125. package/dist/sdk-nextjs/utils/Animator/Animator.d.ts +43 -0
  126. package/dist/sdk-nextjs/utils/ArticleRectManager/ArticleRectObserver.d.ts +25 -0
  127. package/dist/sdk-nextjs/utils/ArticleRectManager/useArticleRectObserver.d.ts +2 -0
  128. package/dist/sdk-nextjs/utils/ArticleRectManager/useSectionRegistry.d.ts +1 -0
  129. package/dist/sdk-nextjs/utils/EventEmitter.d.ts +11 -0
  130. package/dist/sdk-nextjs/utils/RichTextConverter/RichTextConverter.d.ts +11 -0
  131. package/dist/sdk-nextjs/utils/ScaleAnchorMap.d.ts +11 -0
  132. package/dist/sdk-nextjs/utils/StickyManager/StickyManager.d.ts +10 -0
  133. package/dist/sdk-nextjs/utils/Youtube/YouTubeIframeApiLoader.d.ts +10 -0
  134. package/dist/sdk-nextjs/utils/Youtube/YoutubeIframeApi.d.ts +89 -0
  135. package/dist/sdk-nextjs/utils/Youtube/useYouTubeIframeApi.d.ts +2 -0
  136. package/dist/sdk-nextjs/utils/areFillsVisible/areFillsVisible.d.ts +23 -0
  137. package/dist/sdk-nextjs/utils/areFillsVisible/areFillsVisible.test.d.ts +1 -0
  138. package/dist/sdk-nextjs/utils/binSearchInsertAt.d.ts +5 -0
  139. package/dist/sdk-nextjs/utils/castObject.d.ts +5 -0
  140. package/dist/sdk-nextjs/utils/checkOverflowClipSupport.d.ts +1 -0
  141. package/dist/sdk-nextjs/utils/effects/useImageFx.d.ts +7 -0
  142. package/dist/sdk-nextjs/utils/effects/useVideoFx.d.ts +7 -0
  143. package/dist/sdk-nextjs/utils/getAnchoredItemTop.d.ts +2 -0
  144. package/dist/sdk-nextjs/utils/getCompoundBoundaryStyles.d.ts +12 -0
  145. package/dist/sdk-nextjs/utils/getFill.d.ts +2 -0
  146. package/dist/sdk-nextjs/utils/getFontFamilyValue.d.ts +1 -0
  147. package/dist/sdk-nextjs/utils/getInvertedRanges.d.ts +10 -0
  148. package/dist/sdk-nextjs/utils/getItemTopStyle.d.ts +2 -0
  149. package/dist/sdk-nextjs/utils/getStyleFromItemStateAndParams.d.ts +1 -0
  150. package/dist/sdk-nextjs/utils/getValidYoutubeUrl.d.ts +1 -0
  151. package/dist/sdk-nextjs/utils/isItemType.d.ts +3 -0
  152. package/dist/sdk-nextjs/utils/rangeMap.d.ts +1 -0
  153. package/dist/sdk-nextjs/utils/useElementRect.d.ts +1 -0
  154. package/dist/utils.d.ts +3 -0
  155. package/package.json +92 -0
@@ -0,0 +1,209 @@
1
+ import { ImageRevealSlider } from './ImageRevealSlider';
2
+ export declare const ControlImageRevealSliderComponent: {
3
+ element: typeof ImageRevealSlider;
4
+ id: string;
5
+ name: string;
6
+ preview: {
7
+ type: "video";
8
+ url: string;
9
+ };
10
+ defaultSize: {
11
+ width: number;
12
+ height: number;
13
+ };
14
+ schema: {
15
+ type: string;
16
+ properties: {
17
+ settings: {
18
+ layoutBased: boolean;
19
+ type: string;
20
+ properties: {
21
+ imageSize: {
22
+ name: string;
23
+ icon: string;
24
+ tooltip: string;
25
+ type: string;
26
+ properties: {
27
+ sizeType: {
28
+ name: string;
29
+ type: string;
30
+ display: {
31
+ type: string;
32
+ };
33
+ enum: string[];
34
+ };
35
+ imageWidth: {
36
+ type: string;
37
+ label: string;
38
+ display: {
39
+ type: string;
40
+ visible: boolean;
41
+ };
42
+ };
43
+ randomRangeImageWidth: {
44
+ type: string;
45
+ display: {
46
+ type: string;
47
+ visible: boolean;
48
+ };
49
+ properties: {
50
+ min: {
51
+ type: string;
52
+ };
53
+ max: {
54
+ type: string;
55
+ };
56
+ };
57
+ };
58
+ };
59
+ };
60
+ cursor: {
61
+ name: string;
62
+ icon: string;
63
+ tooltip: string;
64
+ type: string;
65
+ properties: {
66
+ cursorType: {
67
+ name: string;
68
+ type: string;
69
+ display: {
70
+ type: string;
71
+ };
72
+ enum: string[];
73
+ };
74
+ defaultCursor: {
75
+ type: string[];
76
+ display: {
77
+ type: string;
78
+ title: string;
79
+ visible: boolean;
80
+ };
81
+ };
82
+ hoverCursor: {
83
+ type: string[];
84
+ display: {
85
+ type: string;
86
+ title: string;
87
+ visible: boolean;
88
+ };
89
+ };
90
+ };
91
+ };
92
+ position: {
93
+ name: string;
94
+ icon: string;
95
+ tooltip: string;
96
+ type: string;
97
+ properties: {
98
+ revealPosition: {
99
+ type: string;
100
+ display: {
101
+ type: string;
102
+ };
103
+ enum: string[];
104
+ };
105
+ visible: {
106
+ type: string;
107
+ display: {
108
+ type: string;
109
+ };
110
+ enum: string[];
111
+ };
112
+ target: {
113
+ type: string;
114
+ display: {
115
+ type: string;
116
+ };
117
+ enum: string[];
118
+ };
119
+ };
120
+ };
121
+ };
122
+ default: {
123
+ imageSize: {
124
+ sizeType: string;
125
+ imageWidth: number;
126
+ randomRangeImageWidth: {
127
+ min: number;
128
+ max: number;
129
+ };
130
+ };
131
+ cursor: {
132
+ cursorType: string;
133
+ defaultCursor: null;
134
+ hoverCursor: null;
135
+ };
136
+ position: {
137
+ revealPosition: string;
138
+ visible: string;
139
+ target: string;
140
+ };
141
+ };
142
+ displayRules: ({
143
+ if: {
144
+ name: string;
145
+ value: string;
146
+ };
147
+ then: {
148
+ name: string;
149
+ value: boolean;
150
+ };
151
+ } | {
152
+ if: {
153
+ name: string;
154
+ value: string;
155
+ }[];
156
+ then: {
157
+ name: string;
158
+ value: boolean;
159
+ };
160
+ })[];
161
+ };
162
+ content: {
163
+ layoutBased: boolean;
164
+ type: string;
165
+ items: {
166
+ type: string;
167
+ properties: {
168
+ image: {
169
+ type: string;
170
+ display: {
171
+ type: string;
172
+ isObjectFitEditable: boolean;
173
+ };
174
+ properties: {
175
+ url: {
176
+ type: string;
177
+ };
178
+ name: {
179
+ type: string;
180
+ };
181
+ objectFit: {
182
+ type: string;
183
+ enum: string[];
184
+ };
185
+ };
186
+ required: string[];
187
+ };
188
+ link: {
189
+ type: string;
190
+ display: {
191
+ type: string;
192
+ placeholder: string;
193
+ };
194
+ };
195
+ };
196
+ required: string[];
197
+ };
198
+ default: {
199
+ image: {
200
+ objectFit: string;
201
+ url: string;
202
+ name: string;
203
+ };
204
+ link: string;
205
+ }[];
206
+ };
207
+ };
208
+ };
209
+ };
@@ -0,0 +1,38 @@
1
+ interface ImageRevealSliderProps {
2
+ settings: ImageRevealSliderSettings;
3
+ content: ImageRevealSliderItem[];
4
+ isEditor?: boolean;
5
+ }
6
+ type RandomRange = {
7
+ min: number;
8
+ max: number;
9
+ };
10
+ type ImageRevealSliderImageSize = {
11
+ sizeType: 'as Is' | 'custom' | 'random';
12
+ imageWidth: number;
13
+ randomRangeImageWidth: RandomRange;
14
+ };
15
+ type ImageRevealSliderCursor = {
16
+ cursorType: 'system' | 'custom';
17
+ defaultCursor: string | null;
18
+ hoverCursor: string | null;
19
+ };
20
+ type ImageRevealSliderPosition = {
21
+ revealPosition: 'random' | 'same' | 'on Click';
22
+ visible: 'all' | 'last One';
23
+ target: 'area' | 'image';
24
+ };
25
+ type ImageRevealSliderSettings = {
26
+ imageSize: ImageRevealSliderImageSize;
27
+ cursor: ImageRevealSliderCursor;
28
+ position: ImageRevealSliderPosition;
29
+ };
30
+ type ImageRevealSliderItem = {
31
+ image: {
32
+ url: string;
33
+ name: string;
34
+ };
35
+ link: string;
36
+ };
37
+ export declare function ImageRevealSlider({ settings, content, isEditor }: ImageRevealSliderProps): JSX.Element;
38
+ export {};
@@ -0,0 +1,2 @@
1
+ import { Component } from '../types/component/Component';
2
+ export declare const components: Component[];
@@ -0,0 +1,6 @@
1
+ import { FC } from 'react';
2
+ interface Props {
3
+ content: any[];
4
+ }
5
+ export declare const RichTextRenderer: FC<Props>;
6
+ export {};
@@ -0,0 +1,9 @@
1
+ import { FC } from 'react';
2
+ interface SvgImageProps {
3
+ url: string;
4
+ fill?: string;
5
+ hoverFill?: string;
6
+ className?: string;
7
+ }
8
+ export declare const SvgImage: FC<SvgImageProps>;
9
+ export {};
@@ -0,0 +1 @@
1
+ export declare function scalingValue(value: number, isEditor?: boolean): string;
@@ -0,0 +1,6 @@
1
+ import { CustomFont } from '../types/project/Fonts';
2
+ export declare class FontFaceGenerator {
3
+ private fonts;
4
+ constructor(fonts: CustomFont[]);
5
+ generate(): string;
6
+ }
@@ -0,0 +1,31 @@
1
+ interface ScrollVideoOptions {
2
+ src: string;
3
+ videoContainer: HTMLElement | string;
4
+ }
5
+ export declare class ScrollPlaybackVideoManager {
6
+ private container?;
7
+ private video?;
8
+ private isSafari?;
9
+ private currentTime;
10
+ private targetTime;
11
+ private canvas;
12
+ private context;
13
+ private frames;
14
+ private frameRate;
15
+ private transitioning;
16
+ private debug;
17
+ private frameThreshold;
18
+ private transitionSpeed;
19
+ private useWebCodecs;
20
+ private resizeObserver;
21
+ constructor(options: ScrollVideoOptions);
22
+ private setCoverStyle;
23
+ private resize;
24
+ private decodeVideo;
25
+ private paintCanvasFrame;
26
+ private transitionToTargetTime;
27
+ private resetCanvasDimensions;
28
+ setTargetTimePercent(setPercentage: number, jump?: boolean): void;
29
+ destroy(): void;
30
+ }
31
+ export {};
@@ -0,0 +1,12 @@
1
+ export declare class Writer {
2
+ private data;
3
+ private idx;
4
+ private size;
5
+ constructor(size: number);
6
+ getData(): Uint8Array<ArrayBuffer>;
7
+ writeUint8(value: number): void;
8
+ writeUint16(value: number): void;
9
+ writeUint8Array(value: Uint8Array): void;
10
+ }
11
+ declare const _default: (src: string, emitFrame: (bitmap: ImageBitmap) => void, debug: boolean) => Promise<void>;
12
+ export default _default;
@@ -0,0 +1,328 @@
1
+ import { z } from 'zod';
2
+ export declare const ArticleSchema: z.ZodObject<{
3
+ id: z.ZodString;
4
+ sections: z.ZodArray<z.ZodObject<{
5
+ id: z.ZodString;
6
+ items: z.ZodArray<z.ZodType<import('../../..').ItemAny, z.ZodTypeDef, import('../../..').ItemAny>, "many">;
7
+ name: z.ZodOptional<z.ZodString>;
8
+ height: z.ZodRecord<z.ZodString, z.ZodObject<{
9
+ mode: z.ZodNativeEnum<typeof import('../../..').SectionHeightMode>;
10
+ units: z.ZodNumber;
11
+ vhUnits: z.ZodOptional<z.ZodNumber>;
12
+ }, "strip", z.ZodTypeAny, {
13
+ mode: import('../../..').SectionHeightMode;
14
+ units: number;
15
+ vhUnits?: number | undefined;
16
+ }, {
17
+ mode: import('../../..').SectionHeightMode;
18
+ units: number;
19
+ vhUnits?: number | undefined;
20
+ }>>;
21
+ position: z.ZodRecord<z.ZodString, z.ZodNumber>;
22
+ hidden: z.ZodRecord<z.ZodString, z.ZodBoolean>;
23
+ color: z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>;
24
+ media: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
25
+ url: z.ZodString;
26
+ size: z.ZodString;
27
+ type: z.ZodLiteral<"video">;
28
+ play: z.ZodEnum<["on-click", "auto"]>;
29
+ coverUrl: z.ZodNullable<z.ZodString>;
30
+ position: z.ZodString;
31
+ offsetX: z.ZodNullable<z.ZodNumber>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ url: string;
34
+ coverUrl: string | null;
35
+ play: "on-click" | "auto";
36
+ position: string;
37
+ type: "video";
38
+ size: string;
39
+ offsetX: number | null;
40
+ }, {
41
+ url: string;
42
+ coverUrl: string | null;
43
+ play: "on-click" | "auto";
44
+ position: string;
45
+ type: "video";
46
+ size: string;
47
+ offsetX: number | null;
48
+ }>, z.ZodObject<{
49
+ url: z.ZodString;
50
+ type: z.ZodLiteral<"image">;
51
+ size: z.ZodString;
52
+ position: z.ZodString;
53
+ offsetX: z.ZodNullable<z.ZodNumber>;
54
+ }, "strip", z.ZodTypeAny, {
55
+ url: string;
56
+ position: string;
57
+ type: "image";
58
+ size: string;
59
+ offsetX: number | null;
60
+ }, {
61
+ url: string;
62
+ position: string;
63
+ type: "image";
64
+ size: string;
65
+ offsetX: number | null;
66
+ }>]>>>;
67
+ }, "strip", z.ZodTypeAny, {
68
+ color: Record<string, string | null>;
69
+ hidden: Record<string, boolean>;
70
+ position: Record<string, number>;
71
+ id: string;
72
+ height: Record<string, {
73
+ mode: import('../../..').SectionHeightMode;
74
+ units: number;
75
+ vhUnits?: number | undefined;
76
+ }>;
77
+ items: import('../../..').ItemAny[];
78
+ name?: string | undefined;
79
+ media?: Record<string, {
80
+ url: string;
81
+ coverUrl: string | null;
82
+ play: "on-click" | "auto";
83
+ position: string;
84
+ type: "video";
85
+ size: string;
86
+ offsetX: number | null;
87
+ } | {
88
+ url: string;
89
+ position: string;
90
+ type: "image";
91
+ size: string;
92
+ offsetX: number | null;
93
+ }> | undefined;
94
+ }, {
95
+ color: Record<string, string | null>;
96
+ hidden: Record<string, boolean>;
97
+ position: Record<string, number>;
98
+ id: string;
99
+ height: Record<string, {
100
+ mode: import('../../..').SectionHeightMode;
101
+ units: number;
102
+ vhUnits?: number | undefined;
103
+ }>;
104
+ items: import('../../..').ItemAny[];
105
+ name?: string | undefined;
106
+ media?: Record<string, {
107
+ url: string;
108
+ coverUrl: string | null;
109
+ play: "on-click" | "auto";
110
+ position: string;
111
+ type: "video";
112
+ size: string;
113
+ offsetX: number | null;
114
+ } | {
115
+ url: string;
116
+ position: string;
117
+ type: "image";
118
+ size: string;
119
+ offsetX: number | null;
120
+ }> | undefined;
121
+ }>, "many">;
122
+ interactions: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
123
+ id: z.ZodString;
124
+ triggers: z.ZodArray<z.ZodUnion<[z.ZodObject<{
125
+ itemId: z.ZodString;
126
+ type: z.ZodEnum<["hover-in", "hover-out", "click"]>;
127
+ from: z.ZodString;
128
+ to: z.ZodString;
129
+ }, "strip", z.ZodTypeAny, {
130
+ type: "hover-in" | "hover-out" | "click";
131
+ from: string;
132
+ to: string;
133
+ itemId: string;
134
+ }, {
135
+ type: "hover-in" | "hover-out" | "click";
136
+ from: string;
137
+ to: string;
138
+ itemId: string;
139
+ }>, z.ZodObject<{
140
+ position: z.ZodNumber;
141
+ from: z.ZodString;
142
+ to: z.ZodString;
143
+ isReverse: z.ZodBoolean;
144
+ }, "strip", z.ZodTypeAny, {
145
+ position: number;
146
+ from: string;
147
+ to: string;
148
+ isReverse: boolean;
149
+ }, {
150
+ position: number;
151
+ from: string;
152
+ to: string;
153
+ isReverse: boolean;
154
+ }>]>, "many">;
155
+ states: z.ZodArray<z.ZodObject<{
156
+ id: z.ZodString;
157
+ actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
158
+ type: z.ZodEnum<["play", "pause"]>;
159
+ itemId: z.ZodString;
160
+ }, "strip", z.ZodTypeAny, {
161
+ type: "play" | "pause";
162
+ itemId: string;
163
+ }, {
164
+ type: "play" | "pause";
165
+ itemId: string;
166
+ }>, "many">>;
167
+ }, "strip", z.ZodTypeAny, {
168
+ id: string;
169
+ actions?: {
170
+ type: "play" | "pause";
171
+ itemId: string;
172
+ }[] | undefined;
173
+ }, {
174
+ id: string;
175
+ actions?: {
176
+ type: "play" | "pause";
177
+ itemId: string;
178
+ }[] | undefined;
179
+ }>, "many">;
180
+ startStateId: z.ZodString;
181
+ }, "strip", z.ZodTypeAny, {
182
+ id: string;
183
+ triggers: ({
184
+ type: "hover-in" | "hover-out" | "click";
185
+ from: string;
186
+ to: string;
187
+ itemId: string;
188
+ } | {
189
+ position: number;
190
+ from: string;
191
+ to: string;
192
+ isReverse: boolean;
193
+ })[];
194
+ states: {
195
+ id: string;
196
+ actions?: {
197
+ type: "play" | "pause";
198
+ itemId: string;
199
+ }[] | undefined;
200
+ }[];
201
+ startStateId: string;
202
+ }, {
203
+ id: string;
204
+ triggers: ({
205
+ type: "hover-in" | "hover-out" | "click";
206
+ from: string;
207
+ to: string;
208
+ itemId: string;
209
+ } | {
210
+ position: number;
211
+ from: string;
212
+ to: string;
213
+ isReverse: boolean;
214
+ })[];
215
+ states: {
216
+ id: string;
217
+ actions?: {
218
+ type: "play" | "pause";
219
+ itemId: string;
220
+ }[] | undefined;
221
+ }[];
222
+ startStateId: string;
223
+ }>, "many">>;
224
+ }, "strip", z.ZodTypeAny, {
225
+ id: string;
226
+ sections: {
227
+ color: Record<string, string | null>;
228
+ hidden: Record<string, boolean>;
229
+ position: Record<string, number>;
230
+ id: string;
231
+ height: Record<string, {
232
+ mode: import('../../..').SectionHeightMode;
233
+ units: number;
234
+ vhUnits?: number | undefined;
235
+ }>;
236
+ items: import('../../..').ItemAny[];
237
+ name?: string | undefined;
238
+ media?: Record<string, {
239
+ url: string;
240
+ coverUrl: string | null;
241
+ play: "on-click" | "auto";
242
+ position: string;
243
+ type: "video";
244
+ size: string;
245
+ offsetX: number | null;
246
+ } | {
247
+ url: string;
248
+ position: string;
249
+ type: "image";
250
+ size: string;
251
+ offsetX: number | null;
252
+ }> | undefined;
253
+ }[];
254
+ interactions: Record<string, {
255
+ id: string;
256
+ triggers: ({
257
+ type: "hover-in" | "hover-out" | "click";
258
+ from: string;
259
+ to: string;
260
+ itemId: string;
261
+ } | {
262
+ position: number;
263
+ from: string;
264
+ to: string;
265
+ isReverse: boolean;
266
+ })[];
267
+ states: {
268
+ id: string;
269
+ actions?: {
270
+ type: "play" | "pause";
271
+ itemId: string;
272
+ }[] | undefined;
273
+ }[];
274
+ startStateId: string;
275
+ }[]>;
276
+ }, {
277
+ id: string;
278
+ sections: {
279
+ color: Record<string, string | null>;
280
+ hidden: Record<string, boolean>;
281
+ position: Record<string, number>;
282
+ id: string;
283
+ height: Record<string, {
284
+ mode: import('../../..').SectionHeightMode;
285
+ units: number;
286
+ vhUnits?: number | undefined;
287
+ }>;
288
+ items: import('../../..').ItemAny[];
289
+ name?: string | undefined;
290
+ media?: Record<string, {
291
+ url: string;
292
+ coverUrl: string | null;
293
+ play: "on-click" | "auto";
294
+ position: string;
295
+ type: "video";
296
+ size: string;
297
+ offsetX: number | null;
298
+ } | {
299
+ url: string;
300
+ position: string;
301
+ type: "image";
302
+ size: string;
303
+ offsetX: number | null;
304
+ }> | undefined;
305
+ }[];
306
+ interactions: Record<string, {
307
+ id: string;
308
+ triggers: ({
309
+ type: "hover-in" | "hover-out" | "click";
310
+ from: string;
311
+ to: string;
312
+ itemId: string;
313
+ } | {
314
+ position: number;
315
+ from: string;
316
+ to: string;
317
+ isReverse: boolean;
318
+ })[];
319
+ states: {
320
+ id: string;
321
+ actions?: {
322
+ type: "play" | "pause";
323
+ itemId: string;
324
+ }[] | undefined;
325
+ }[];
326
+ startStateId: string;
327
+ }[]>;
328
+ }>;