@layers-app/shared 0.0.39-comments.2 → 0.0.39-comments.3

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 (77) hide show
  1. package/dist/{KanbanLayout-DGHT9E0N.js → KanbanLayout-C5JdVttk.js} +1 -1
  2. package/dist/components/AttachmentsGalleryModal/ShakaPlayer.d.ts +5 -0
  3. package/dist/components/BouncingLogo/BouncingLogo.d.ts +3 -0
  4. package/dist/components/CircleColorPicker/CircleColorPicker.d.ts +2 -2
  5. package/dist/components/CommentsPanel/types.d.ts +0 -5
  6. package/dist/components/FormViewer/FormViewer.d.ts +8 -0
  7. package/dist/components/FormViewer/KeyboardNavigation.d.ts +5 -0
  8. package/dist/components/FormViewer/components/AllSlidesLayout.d.ts +7 -0
  9. package/dist/components/FormViewer/components/Container.d.ts +5 -0
  10. package/dist/components/FormViewer/components/ListFocusBox.d.ts +4 -0
  11. package/dist/components/FormViewer/components/NavControls.d.ts +4 -0
  12. package/dist/components/FormViewer/components/Navigation/Navigation.d.ts +1 -0
  13. package/dist/components/FormViewer/components/OneSlideLayput.d.ts +7 -0
  14. package/dist/components/FormViewer/components/Step.d.ts +6 -0
  15. package/dist/components/FormViewer/components/StepDescription.d.ts +6 -0
  16. package/dist/components/FormViewer/components/StepTitle.d.ts +6 -0
  17. package/dist/components/FormViewer/components/fields/AddOptionButton.d.ts +3 -0
  18. package/dist/components/FormViewer/components/fields/ButtonField/ButtonField.d.ts +6 -0
  19. package/dist/components/FormViewer/components/fields/ButtonField/InnerButton.d.ts +9 -0
  20. package/dist/components/FormViewer/components/fields/ChoiceField/ChoiceCard.d.ts +11 -0
  21. package/dist/components/FormViewer/components/fields/ChoiceField/ChoiceField.d.ts +6 -0
  22. package/dist/components/FormViewer/components/fields/ChoiceField/PictureChoiceCard.d.ts +12 -0
  23. package/dist/components/FormViewer/components/fields/ChoiceField/PictureChoiceField.d.ts +6 -0
  24. package/dist/components/FormViewer/components/fields/ConfirmButton.d.ts +6 -0
  25. package/dist/components/FormViewer/components/fields/ConfirmField.d.ts +6 -0
  26. package/dist/components/FormViewer/components/fields/DateField.d.ts +4 -0
  27. package/dist/components/FormViewer/components/fields/DragOptions/DragOptions.d.ts +11 -0
  28. package/dist/components/FormViewer/components/fields/DropdownField/DropdownField.d.ts +6 -0
  29. package/dist/components/FormViewer/components/fields/EditableContent/EditableContent.d.ts +5 -0
  30. package/dist/components/FormViewer/components/fields/EmailField.d.ts +4 -0
  31. package/dist/components/FormViewer/components/fields/LocationField.d.ts +4 -0
  32. package/dist/components/FormViewer/components/fields/LongTextField.d.ts +4 -0
  33. package/dist/components/FormViewer/components/fields/MultipleChoice/MultipleChoiceCard.d.ts +12 -0
  34. package/dist/components/FormViewer/components/fields/MultipleChoice/MultipleChoiceField.d.ts +6 -0
  35. package/dist/components/FormViewer/components/fields/NumberField.d.ts +4 -0
  36. package/dist/components/FormViewer/components/fields/PhoneField.d.ts +4 -0
  37. package/dist/components/FormViewer/components/fields/ProgressLine.d.ts +1 -0
  38. package/dist/components/FormViewer/components/fields/RatingField.d.ts +5 -0
  39. package/dist/components/FormViewer/components/fields/SelectableCard/PictureSelectableCard.d.ts +21 -0
  40. package/dist/components/FormViewer/components/fields/SelectableCard/SelectableCard.d.ts +14 -0
  41. package/dist/components/FormViewer/components/fields/SliderField.d.ts +5 -0
  42. package/dist/components/FormViewer/components/fields/StartButton.d.ts +5 -0
  43. package/dist/components/FormViewer/components/fields/StartField.d.ts +6 -0
  44. package/dist/components/FormViewer/components/fields/TextField.d.ts +4 -0
  45. package/dist/components/FormViewer/components/fields/UploadField/UploadField.d.ts +30 -0
  46. package/dist/components/FormViewer/components/fields/UploadField/UploadFile/UploadFile.d.ts +8 -0
  47. package/dist/components/FormViewer/components/fields/YesNoField.d.ts +4 -0
  48. package/dist/components/FormViewer/constants/defaultTheme.d.ts +2 -0
  49. package/dist/components/FormViewer/helpers/conditions.d.ts +279 -0
  50. package/dist/components/FormViewer/helpers/controls.d.ts +6 -0
  51. package/dist/components/FormViewer/helpers/cssScoping.d.ts +11 -0
  52. package/dist/components/FormViewer/helpers/helpers.d.ts +277 -0
  53. package/dist/components/FormViewer/helpers/index.d.ts +7 -0
  54. package/dist/components/FormViewer/helpers/slides.d.ts +3 -0
  55. package/dist/components/FormViewer/helpers/staticClasses.d.ts +47 -0
  56. package/dist/components/FormViewer/helpers/steps.d.ts +292 -0
  57. package/dist/components/FormViewer/helpers/themeUtils.d.ts +2 -0
  58. package/dist/components/FormViewer/helpers/validation.d.ts +10 -0
  59. package/dist/components/FormViewer/hooks/index.d.ts +6 -0
  60. package/dist/components/FormViewer/hooks/useActiveControl.d.ts +204 -0
  61. package/dist/components/FormViewer/hooks/useActiveStep.d.ts +275 -0
  62. package/dist/components/FormViewer/hooks/useCreateFormContext.d.ts +22 -0
  63. package/dist/components/FormViewer/hooks/useFormGlobalTheme.d.ts +145 -0
  64. package/dist/components/FormViewer/hooks/useFormMobile.d.ts +4 -0
  65. package/dist/components/FormViewer/hooks/useInterpolateText.d.ts +2 -0
  66. package/dist/components/FormViewer/index.d.ts +8 -0
  67. package/dist/components/FormViewer/store/formStore.d.ts +112 -0
  68. package/dist/components/FormViewer/store/formStoreApi.d.ts +36 -0
  69. package/dist/components/FormViewer/store/selectors.d.ts +75110 -0
  70. package/dist/components/FormViewer/types/form.d.ts +58 -0
  71. package/dist/components/FormViewer/types/schemes.d.ts +7475 -0
  72. package/dist/hooks/useEvent.d.ts +1 -0
  73. package/dist/{index-BI1_FPl_.js → index-CM1iBMgt.js} +44206 -11726
  74. package/dist/index.d.ts +5 -0
  75. package/dist/index.js +70 -4
  76. package/dist/index.umd.cjs +59 -59
  77. package/package.json +1 -1
@@ -0,0 +1,279 @@
1
+ import { UseFormReturnType } from '@mantine/form';
2
+ import { StepsFormValues } from '../hooks/useCreateFormContext';
3
+ import { ControlType, OperatorType, StepData } from '../types/form';
4
+ export declare const getNextStep: (step: StepData, steps: StepData[], form: UseFormReturnType<StepsFormValues>) => {
5
+ id: string;
6
+ controls: ({
7
+ id: string;
8
+ controlType: "text";
9
+ title?: string | undefined;
10
+ description?: string | undefined;
11
+ icon?: string | undefined;
12
+ maxLength?: number | undefined;
13
+ minLength?: number | undefined;
14
+ placeholder?: string | undefined;
15
+ required?: boolean | undefined;
16
+ variableName?: string | undefined;
17
+ } | {
18
+ id: string;
19
+ controlType: "longText";
20
+ title?: string | undefined;
21
+ description?: string | undefined;
22
+ icon?: string | undefined;
23
+ maxLength?: number | undefined;
24
+ minLength?: number | undefined;
25
+ placeholder?: string | undefined;
26
+ required?: boolean | undefined;
27
+ variableName?: string | undefined;
28
+ } | {
29
+ id: string;
30
+ controlType: "button";
31
+ label?: string | undefined;
32
+ link?: string | undefined;
33
+ title?: string | undefined;
34
+ description?: string | undefined;
35
+ buttons?: any[] | undefined;
36
+ width?: number | undefined;
37
+ orientation?: "column" | "column-reverse" | "row" | "row-reverse" | undefined;
38
+ required?: boolean | undefined;
39
+ showIconButton?: boolean | undefined;
40
+ buttonIcon?: string | undefined;
41
+ alignButton?: "center" | "end" | "start" | undefined;
42
+ enableTooltip?: boolean | undefined;
43
+ fullWidthMobile?: boolean | undefined;
44
+ } | {
45
+ id: string;
46
+ controlType: "date";
47
+ title?: string | undefined;
48
+ description?: string | undefined;
49
+ icon?: string | undefined;
50
+ placeholder?: string | undefined;
51
+ required?: boolean | undefined;
52
+ minDate?: string | undefined;
53
+ maxDate?: string | undefined;
54
+ variableName?: string | undefined;
55
+ } | {
56
+ id: string;
57
+ controlType: "start";
58
+ label?: string | undefined;
59
+ title?: string | undefined;
60
+ description?: string | undefined;
61
+ icon?: string | undefined;
62
+ required?: boolean | undefined;
63
+ showIconButton?: boolean | undefined;
64
+ buttonIcon?: string | undefined;
65
+ showButton?: boolean | undefined;
66
+ } | {
67
+ id: string;
68
+ controlType: "confirm";
69
+ label?: string | undefined;
70
+ link?: string | undefined;
71
+ title?: string | undefined;
72
+ description?: string | undefined;
73
+ required?: boolean | undefined;
74
+ buttonIcon?: string | undefined;
75
+ showButton?: boolean | undefined;
76
+ } | {
77
+ id: string;
78
+ controlType: "number";
79
+ title?: string | undefined;
80
+ description?: string | undefined;
81
+ icon?: string | undefined;
82
+ max?: number | undefined;
83
+ min?: number | undefined;
84
+ placeholder?: string | undefined;
85
+ required?: boolean | undefined;
86
+ variableName?: string | undefined;
87
+ } | {
88
+ id: string;
89
+ options: {
90
+ label: string;
91
+ id: string;
92
+ }[];
93
+ controlType: "choice";
94
+ title?: string | undefined;
95
+ description?: string | undefined;
96
+ required?: boolean | undefined;
97
+ variableName?: string | undefined;
98
+ showInput?: boolean | undefined;
99
+ } | {
100
+ id: string;
101
+ options: {
102
+ label: string;
103
+ id: string;
104
+ }[];
105
+ controlType: "multipleChoice";
106
+ title?: string | undefined;
107
+ description?: string | undefined;
108
+ icon?: string | undefined;
109
+ required?: boolean | undefined;
110
+ variableName?: string | undefined;
111
+ showInput?: boolean | undefined;
112
+ minOptions?: number | undefined;
113
+ maxOptions?: number | undefined;
114
+ } | {
115
+ id: string;
116
+ options: {
117
+ label: string;
118
+ id: string;
119
+ image?: string | undefined;
120
+ }[];
121
+ controlType: "pictureChoice";
122
+ title?: string | undefined;
123
+ description?: string | undefined;
124
+ icon?: string | undefined;
125
+ required?: boolean | undefined;
126
+ variableName?: string | undefined;
127
+ showInput?: boolean | undefined;
128
+ } | {
129
+ id: string;
130
+ options: {
131
+ label: string;
132
+ id: string;
133
+ }[];
134
+ controlType: "dropdown";
135
+ title?: string | undefined;
136
+ description?: string | undefined;
137
+ icon?: string | undefined;
138
+ placeholder?: string | undefined;
139
+ required?: boolean | undefined;
140
+ variableName?: string | undefined;
141
+ } | {
142
+ id: string;
143
+ controlType: "email";
144
+ title?: string | undefined;
145
+ description?: string | undefined;
146
+ icon?: string | undefined;
147
+ placeholder?: string | undefined;
148
+ required?: boolean | undefined;
149
+ variableName?: string | undefined;
150
+ } | {
151
+ id: string;
152
+ controlType: "location";
153
+ title?: string | undefined;
154
+ description?: string | undefined;
155
+ icon?: string | undefined;
156
+ placeholder?: string | undefined;
157
+ required?: boolean | undefined;
158
+ variableName?: string | undefined;
159
+ } | {
160
+ id: string;
161
+ controlType: "phone";
162
+ title?: string | undefined;
163
+ description?: string | undefined;
164
+ icon?: string | undefined;
165
+ placeholder?: string | undefined;
166
+ required?: boolean | undefined;
167
+ variableName?: string | undefined;
168
+ } | {
169
+ id: string;
170
+ controlType: "slider";
171
+ title?: string | undefined;
172
+ description?: string | undefined;
173
+ icon?: string | undefined;
174
+ max?: number | undefined;
175
+ min?: number | undefined;
176
+ required?: boolean | undefined;
177
+ variableName?: string | undefined;
178
+ } | {
179
+ id: string;
180
+ controlType: "upload";
181
+ title?: string | undefined;
182
+ description?: string | undefined;
183
+ icon?: string | undefined;
184
+ multiple?: boolean | undefined;
185
+ accept?: string[] | undefined;
186
+ required?: boolean | undefined;
187
+ maxSize?: number | undefined;
188
+ maxFiles?: number | undefined;
189
+ variableName?: string | undefined;
190
+ minFiles?: number | undefined;
191
+ } | {
192
+ id: string;
193
+ controlType: "yesNo";
194
+ title?: string | undefined;
195
+ description?: string | undefined;
196
+ icon?: string | undefined;
197
+ required?: boolean | undefined;
198
+ variableName?: string | undefined;
199
+ yesLabel?: string | undefined;
200
+ noLabel?: string | undefined;
201
+ } | {
202
+ id: string;
203
+ controlType: "rating";
204
+ title?: string | undefined;
205
+ description?: string | undefined;
206
+ required?: boolean | undefined;
207
+ count?: number | undefined;
208
+ variableName?: string | undefined;
209
+ })[];
210
+ trigger: string;
211
+ media?: {
212
+ video?: string | undefined;
213
+ image?: string | undefined;
214
+ color?: string | undefined;
215
+ size?: number | undefined;
216
+ layout?: "content" | "top" | "left" | "bottom" | "right" | "background" | "fullLeft" | "fullRight" | "fullTop" | "fullBottom" | undefined;
217
+ blur?: number | undefined;
218
+ brightness?: number | undefined;
219
+ videoThumb?: string | undefined;
220
+ } | undefined;
221
+ theme?: {
222
+ input?: {
223
+ backgroundColor?: string | undefined;
224
+ borderColor?: string | undefined;
225
+ } | undefined;
226
+ title?: {
227
+ color?: string | undefined;
228
+ fontSize?: number | undefined;
229
+ fontWeight?: number | undefined;
230
+ fontFamily?: string | undefined;
231
+ } | undefined;
232
+ size?: "sm" | "md" | "lg" | undefined;
233
+ description?: {
234
+ color?: string | undefined;
235
+ fontSize?: number | undefined;
236
+ fontWeight?: number | undefined;
237
+ fontFamily?: string | undefined;
238
+ } | undefined;
239
+ align?: "center" | "end" | "start" | undefined;
240
+ background?: {
241
+ image?: string | undefined;
242
+ color?: string | undefined;
243
+ opacity?: number | undefined;
244
+ blur?: number | undefined;
245
+ brightness?: number | undefined;
246
+ fit?: string | undefined;
247
+ blendMode?: string | undefined;
248
+ } | undefined;
249
+ container?: {
250
+ color?: string | undefined;
251
+ opacity?: number | undefined;
252
+ backgroundImage?: string | undefined;
253
+ blur?: number | undefined;
254
+ shadowSize?: number | undefined;
255
+ shadowColor?: string | undefined;
256
+ } | undefined;
257
+ borderRadius?: "sm" | "md" | "lg" | undefined;
258
+ font?: {
259
+ color?: string | undefined;
260
+ fontSize?: number | undefined;
261
+ fontWeight?: number | undefined;
262
+ fontFamily?: string | undefined;
263
+ } | undefined;
264
+ listStyle?: string | undefined;
265
+ primaryColor?: string | undefined;
266
+ customCSS?: string | undefined;
267
+ } | undefined;
268
+ isStart?: boolean | undefined;
269
+ isEnd?: boolean | undefined;
270
+ autoSubmit?: boolean | undefined;
271
+ confirmLabel?: string | undefined;
272
+ conditions?: {
273
+ operator: string;
274
+ trigger: string;
275
+ controlId: string;
276
+ compareValue?: string | undefined;
277
+ }[] | undefined;
278
+ };
279
+ export declare const operatorsRelation: Record<ControlType, OperatorType[]>;
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ import { ControlType } from '../types/form';
3
+ export declare const controlsDataMap: Record<ControlType, {
4
+ icon: ReactNode;
5
+ color: string;
6
+ }>;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Утилита для безопасного скопинга пользовательского CSS
3
+ */
4
+ /**
5
+ * Добавляет префикс контейнера к CSS селекторам для изоляции стилей
6
+ *
7
+ * @param css - Пользовательский CSS
8
+ * @param containerId - ID контейнера для скопинга (например, "#forms-provider-abc123")
9
+ * @returns Scoped CSS с префиксами
10
+ */
11
+ export declare const scopeCustomCss: (css: string, containerId: string) => string;
@@ -0,0 +1,277 @@
1
+ import { StepData, ThemeData } from '../types/form';
2
+ export declare const mergeTheme: (theme: Partial<ThemeData>, updatedTheme: Partial<ThemeData>) => Partial<ThemeData>;
3
+ export declare const sortSteps: (steps: StepData[]) => {
4
+ id: string;
5
+ controls: ({
6
+ id: string;
7
+ controlType: "text";
8
+ title?: string | undefined;
9
+ description?: string | undefined;
10
+ icon?: string | undefined;
11
+ maxLength?: number | undefined;
12
+ minLength?: number | undefined;
13
+ placeholder?: string | undefined;
14
+ required?: boolean | undefined;
15
+ variableName?: string | undefined;
16
+ } | {
17
+ id: string;
18
+ controlType: "longText";
19
+ title?: string | undefined;
20
+ description?: string | undefined;
21
+ icon?: string | undefined;
22
+ maxLength?: number | undefined;
23
+ minLength?: number | undefined;
24
+ placeholder?: string | undefined;
25
+ required?: boolean | undefined;
26
+ variableName?: string | undefined;
27
+ } | {
28
+ id: string;
29
+ controlType: "button";
30
+ label?: string | undefined;
31
+ link?: string | undefined;
32
+ title?: string | undefined;
33
+ description?: string | undefined;
34
+ buttons?: any[] | undefined;
35
+ width?: number | undefined;
36
+ orientation?: "column" | "column-reverse" | "row" | "row-reverse" | undefined;
37
+ required?: boolean | undefined;
38
+ showIconButton?: boolean | undefined;
39
+ buttonIcon?: string | undefined;
40
+ alignButton?: "center" | "end" | "start" | undefined;
41
+ enableTooltip?: boolean | undefined;
42
+ fullWidthMobile?: boolean | undefined;
43
+ } | {
44
+ id: string;
45
+ controlType: "date";
46
+ title?: string | undefined;
47
+ description?: string | undefined;
48
+ icon?: string | undefined;
49
+ placeholder?: string | undefined;
50
+ required?: boolean | undefined;
51
+ minDate?: string | undefined;
52
+ maxDate?: string | undefined;
53
+ variableName?: string | undefined;
54
+ } | {
55
+ id: string;
56
+ controlType: "start";
57
+ label?: string | undefined;
58
+ title?: string | undefined;
59
+ description?: string | undefined;
60
+ icon?: string | undefined;
61
+ required?: boolean | undefined;
62
+ showIconButton?: boolean | undefined;
63
+ buttonIcon?: string | undefined;
64
+ showButton?: boolean | undefined;
65
+ } | {
66
+ id: string;
67
+ controlType: "confirm";
68
+ label?: string | undefined;
69
+ link?: string | undefined;
70
+ title?: string | undefined;
71
+ description?: string | undefined;
72
+ required?: boolean | undefined;
73
+ buttonIcon?: string | undefined;
74
+ showButton?: boolean | undefined;
75
+ } | {
76
+ id: string;
77
+ controlType: "number";
78
+ title?: string | undefined;
79
+ description?: string | undefined;
80
+ icon?: string | undefined;
81
+ max?: number | undefined;
82
+ min?: number | undefined;
83
+ placeholder?: string | undefined;
84
+ required?: boolean | undefined;
85
+ variableName?: string | undefined;
86
+ } | {
87
+ id: string;
88
+ options: {
89
+ label: string;
90
+ id: string;
91
+ }[];
92
+ controlType: "choice";
93
+ title?: string | undefined;
94
+ description?: string | undefined;
95
+ required?: boolean | undefined;
96
+ variableName?: string | undefined;
97
+ showInput?: boolean | undefined;
98
+ } | {
99
+ id: string;
100
+ options: {
101
+ label: string;
102
+ id: string;
103
+ }[];
104
+ controlType: "multipleChoice";
105
+ title?: string | undefined;
106
+ description?: string | undefined;
107
+ icon?: string | undefined;
108
+ required?: boolean | undefined;
109
+ variableName?: string | undefined;
110
+ showInput?: boolean | undefined;
111
+ minOptions?: number | undefined;
112
+ maxOptions?: number | undefined;
113
+ } | {
114
+ id: string;
115
+ options: {
116
+ label: string;
117
+ id: string;
118
+ image?: string | undefined;
119
+ }[];
120
+ controlType: "pictureChoice";
121
+ title?: string | undefined;
122
+ description?: string | undefined;
123
+ icon?: string | undefined;
124
+ required?: boolean | undefined;
125
+ variableName?: string | undefined;
126
+ showInput?: boolean | undefined;
127
+ } | {
128
+ id: string;
129
+ options: {
130
+ label: string;
131
+ id: string;
132
+ }[];
133
+ controlType: "dropdown";
134
+ title?: string | undefined;
135
+ description?: string | undefined;
136
+ icon?: string | undefined;
137
+ placeholder?: string | undefined;
138
+ required?: boolean | undefined;
139
+ variableName?: string | undefined;
140
+ } | {
141
+ id: string;
142
+ controlType: "email";
143
+ title?: string | undefined;
144
+ description?: string | undefined;
145
+ icon?: string | undefined;
146
+ placeholder?: string | undefined;
147
+ required?: boolean | undefined;
148
+ variableName?: string | undefined;
149
+ } | {
150
+ id: string;
151
+ controlType: "location";
152
+ title?: string | undefined;
153
+ description?: string | undefined;
154
+ icon?: string | undefined;
155
+ placeholder?: string | undefined;
156
+ required?: boolean | undefined;
157
+ variableName?: string | undefined;
158
+ } | {
159
+ id: string;
160
+ controlType: "phone";
161
+ title?: string | undefined;
162
+ description?: string | undefined;
163
+ icon?: string | undefined;
164
+ placeholder?: string | undefined;
165
+ required?: boolean | undefined;
166
+ variableName?: string | undefined;
167
+ } | {
168
+ id: string;
169
+ controlType: "slider";
170
+ title?: string | undefined;
171
+ description?: string | undefined;
172
+ icon?: string | undefined;
173
+ max?: number | undefined;
174
+ min?: number | undefined;
175
+ required?: boolean | undefined;
176
+ variableName?: string | undefined;
177
+ } | {
178
+ id: string;
179
+ controlType: "upload";
180
+ title?: string | undefined;
181
+ description?: string | undefined;
182
+ icon?: string | undefined;
183
+ multiple?: boolean | undefined;
184
+ accept?: string[] | undefined;
185
+ required?: boolean | undefined;
186
+ maxSize?: number | undefined;
187
+ maxFiles?: number | undefined;
188
+ variableName?: string | undefined;
189
+ minFiles?: number | undefined;
190
+ } | {
191
+ id: string;
192
+ controlType: "yesNo";
193
+ title?: string | undefined;
194
+ description?: string | undefined;
195
+ icon?: string | undefined;
196
+ required?: boolean | undefined;
197
+ variableName?: string | undefined;
198
+ yesLabel?: string | undefined;
199
+ noLabel?: string | undefined;
200
+ } | {
201
+ id: string;
202
+ controlType: "rating";
203
+ title?: string | undefined;
204
+ description?: string | undefined;
205
+ required?: boolean | undefined;
206
+ count?: number | undefined;
207
+ variableName?: string | undefined;
208
+ })[];
209
+ trigger: string;
210
+ media?: {
211
+ video?: string | undefined;
212
+ image?: string | undefined;
213
+ color?: string | undefined;
214
+ size?: number | undefined;
215
+ layout?: "content" | "top" | "left" | "bottom" | "right" | "background" | "fullLeft" | "fullRight" | "fullTop" | "fullBottom" | undefined;
216
+ blur?: number | undefined;
217
+ brightness?: number | undefined;
218
+ videoThumb?: string | undefined;
219
+ } | undefined;
220
+ theme?: {
221
+ input?: {
222
+ backgroundColor?: string | undefined;
223
+ borderColor?: string | undefined;
224
+ } | undefined;
225
+ title?: {
226
+ color?: string | undefined;
227
+ fontSize?: number | undefined;
228
+ fontWeight?: number | undefined;
229
+ fontFamily?: string | undefined;
230
+ } | undefined;
231
+ size?: "sm" | "md" | "lg" | undefined;
232
+ description?: {
233
+ color?: string | undefined;
234
+ fontSize?: number | undefined;
235
+ fontWeight?: number | undefined;
236
+ fontFamily?: string | undefined;
237
+ } | undefined;
238
+ align?: "center" | "end" | "start" | undefined;
239
+ background?: {
240
+ image?: string | undefined;
241
+ color?: string | undefined;
242
+ opacity?: number | undefined;
243
+ blur?: number | undefined;
244
+ brightness?: number | undefined;
245
+ fit?: string | undefined;
246
+ blendMode?: string | undefined;
247
+ } | undefined;
248
+ container?: {
249
+ color?: string | undefined;
250
+ opacity?: number | undefined;
251
+ backgroundImage?: string | undefined;
252
+ blur?: number | undefined;
253
+ shadowSize?: number | undefined;
254
+ shadowColor?: string | undefined;
255
+ } | undefined;
256
+ borderRadius?: "sm" | "md" | "lg" | undefined;
257
+ font?: {
258
+ color?: string | undefined;
259
+ fontSize?: number | undefined;
260
+ fontWeight?: number | undefined;
261
+ fontFamily?: string | undefined;
262
+ } | undefined;
263
+ listStyle?: string | undefined;
264
+ primaryColor?: string | undefined;
265
+ customCSS?: string | undefined;
266
+ } | undefined;
267
+ isStart?: boolean | undefined;
268
+ isEnd?: boolean | undefined;
269
+ autoSubmit?: boolean | undefined;
270
+ confirmLabel?: string | undefined;
271
+ conditions?: {
272
+ operator: string;
273
+ trigger: string;
274
+ controlId: string;
275
+ compareValue?: string | undefined;
276
+ }[] | undefined;
277
+ }[];
@@ -0,0 +1,7 @@
1
+ export * from './controls';
2
+ export * from './steps';
3
+ export * from './staticClasses';
4
+ export * from './validation';
5
+ export * from './conditions';
6
+ export * from './helpers';
7
+ export * from './themeUtils';
@@ -0,0 +1,3 @@
1
+ import { MotionProps } from 'framer-motion';
2
+ import { Direction, SlideAnimation } from '../types/form';
3
+ export declare const animations: Record<SlideAnimation, Record<Direction, MotionProps>>;
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Static class names for form components
3
+ * Following Mantine pattern but with "layers-" prefix
4
+ * Only includes classes that are actually implemented in components
5
+ */
6
+ export declare const STATIC_CLASSES: {
7
+ readonly PAGE: "layers-page";
8
+ readonly START: "layers-start";
9
+ readonly END: "layers-end";
10
+ readonly SUBMIT_BUTTON: "layers-submit-button";
11
+ readonly REQUIRED_INDICATOR: "layers-required-indicator";
12
+ readonly VALIDATION_ERROR: "layers-validation-error";
13
+ readonly BLOCK: "layers-block";
14
+ readonly BLOCK_TEXT: "layers-block-text";
15
+ readonly BLOCK_TITLE: "layers-block-title";
16
+ readonly BLOCK_IMAGE: "layers-block-image";
17
+ readonly MEDIA_LAYOUT_CONTENT: "layers-media-layout-content";
18
+ readonly MEDIA_LAYOUT_LEFT: "layers-media-layout-left";
19
+ readonly MEDIA_LAYOUT_RIGHT: "layers-media-layout-right";
20
+ readonly MEDIA_LAYOUT_FULL_LEFT: "layers-media-layout-full-left";
21
+ readonly MEDIA_LAYOUT_FULL_RIGHT: "layers-media-layout-full-right";
22
+ readonly MEDIA_LAYOUT_BACKGROUND: "layers-media-layout-background";
23
+ readonly MEDIA_LAYOUT_TOP: "layers-media-layout-top";
24
+ readonly MEDIA_LAYOUT_BOTTOM: "layers-media-layout-bottom";
25
+ readonly MEDIA_LAYOUT_FULL_TOP: "layers-media-layout-full-top";
26
+ readonly MEDIA_LAYOUT_FULL_BOTTOM: "layers-media-layout-full-bottom";
27
+ readonly BLOCK_MULTIPLE_CHOICE: "layers-block-multiple-choice";
28
+ readonly MULTIPLE_CHOICE_OPTION: "layers-multiple-choice-option";
29
+ readonly MULTIPLE_CHOICE_OPTION_SELECTED: "layers-multiple-choice-option-selected";
30
+ readonly NUMBER_BADGE: "layers-number-badge";
31
+ readonly CHECKBOX: "layers-checkbox";
32
+ readonly CHECKBOX_SELECTED: "layers-checkbox-selected";
33
+ readonly RADIO: "layers-radio";
34
+ readonly RADIO_SELECTED: "layers-radio-selected";
35
+ readonly BLOCK_INPUT_TEXT: "layers-block-input-text";
36
+ readonly BLOCK_INPUT_NUMBER: "layers-block-input-number";
37
+ readonly BLOCK_INPUT_EMAIL: "layers-block-input-email";
38
+ readonly BLOCK_TEXTAREA: "layers-block-textarea";
39
+ };
40
+ /**
41
+ * Generate page number class
42
+ */
43
+ export declare const getPageNumberClass: (pageNumber: number) => string;
44
+ /**
45
+ * Utility function to combine static classes with existing classes
46
+ */
47
+ export declare const combineClasses: (...classes: (string | undefined | null)[]) => string;