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

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 (89) hide show
  1. package/dist/{KanbanLayout-DGHT9E0N.js → KanbanLayout-BJFmisAk.js} +1 -1
  2. package/dist/components/AppContainer/AppContainer.d.ts +1 -1
  3. package/dist/components/AppContainer/components/DesktopNavbar.d.ts +1 -1
  4. package/dist/components/AppContainer/components/MenuUserDropdown.d.ts +2 -0
  5. package/dist/components/AppContainer/types.d.ts +4 -1
  6. package/dist/components/AttachmentsGalleryModal/ShakaPlayer.d.ts +5 -0
  7. package/dist/components/BouncingLogo/BouncingLogo.d.ts +3 -0
  8. package/dist/components/CircleColorPicker/CircleColorPicker.d.ts +2 -2
  9. package/dist/components/CommentComposer/index.d.ts +2 -1
  10. package/dist/components/CommentsPanel/index.d.ts +2 -1
  11. package/dist/components/CommentsPanel/types.d.ts +0 -5
  12. package/dist/components/EmojiPicker/EmojiPicker.d.ts +2 -1
  13. package/dist/components/FormViewer/FormViewer.d.ts +8 -0
  14. package/dist/components/FormViewer/KeyboardNavigation.d.ts +5 -0
  15. package/dist/components/FormViewer/components/AllSlidesLayout.d.ts +7 -0
  16. package/dist/components/FormViewer/components/Container.d.ts +5 -0
  17. package/dist/components/FormViewer/components/ListFocusBox.d.ts +4 -0
  18. package/dist/components/FormViewer/components/NavControls.d.ts +4 -0
  19. package/dist/components/FormViewer/components/Navigation/Navigation.d.ts +1 -0
  20. package/dist/components/FormViewer/components/OneSlideLayput.d.ts +7 -0
  21. package/dist/components/FormViewer/components/Step.d.ts +6 -0
  22. package/dist/components/FormViewer/components/StepDescription.d.ts +6 -0
  23. package/dist/components/FormViewer/components/StepTitle.d.ts +6 -0
  24. package/dist/components/FormViewer/components/fields/AddOptionButton.d.ts +3 -0
  25. package/dist/components/FormViewer/components/fields/ButtonField/ButtonField.d.ts +6 -0
  26. package/dist/components/FormViewer/components/fields/ButtonField/InnerButton.d.ts +9 -0
  27. package/dist/components/FormViewer/components/fields/ChoiceField/ChoiceCard.d.ts +11 -0
  28. package/dist/components/FormViewer/components/fields/ChoiceField/ChoiceField.d.ts +6 -0
  29. package/dist/components/FormViewer/components/fields/ChoiceField/PictureChoiceCard.d.ts +12 -0
  30. package/dist/components/FormViewer/components/fields/ChoiceField/PictureChoiceField.d.ts +6 -0
  31. package/dist/components/FormViewer/components/fields/ConfirmButton.d.ts +6 -0
  32. package/dist/components/FormViewer/components/fields/ConfirmField.d.ts +6 -0
  33. package/dist/components/FormViewer/components/fields/DateField.d.ts +4 -0
  34. package/dist/components/FormViewer/components/fields/DragOptions/DragOptions.d.ts +11 -0
  35. package/dist/components/FormViewer/components/fields/DropdownField/DropdownField.d.ts +6 -0
  36. package/dist/components/FormViewer/components/fields/EditableContent/EditableContent.d.ts +5 -0
  37. package/dist/components/FormViewer/components/fields/EmailField.d.ts +4 -0
  38. package/dist/components/FormViewer/components/fields/LocationField.d.ts +4 -0
  39. package/dist/components/FormViewer/components/fields/LongTextField.d.ts +4 -0
  40. package/dist/components/FormViewer/components/fields/MultipleChoice/MultipleChoiceCard.d.ts +12 -0
  41. package/dist/components/FormViewer/components/fields/MultipleChoice/MultipleChoiceField.d.ts +6 -0
  42. package/dist/components/FormViewer/components/fields/NumberField.d.ts +4 -0
  43. package/dist/components/FormViewer/components/fields/PhoneField.d.ts +4 -0
  44. package/dist/components/FormViewer/components/fields/ProgressLine.d.ts +1 -0
  45. package/dist/components/FormViewer/components/fields/RatingField.d.ts +5 -0
  46. package/dist/components/FormViewer/components/fields/SelectableCard/PictureSelectableCard.d.ts +21 -0
  47. package/dist/components/FormViewer/components/fields/SelectableCard/SelectableCard.d.ts +14 -0
  48. package/dist/components/FormViewer/components/fields/SliderField.d.ts +5 -0
  49. package/dist/components/FormViewer/components/fields/StartButton.d.ts +5 -0
  50. package/dist/components/FormViewer/components/fields/StartField.d.ts +6 -0
  51. package/dist/components/FormViewer/components/fields/TextField.d.ts +4 -0
  52. package/dist/components/FormViewer/components/fields/UploadField/UploadField.d.ts +30 -0
  53. package/dist/components/FormViewer/components/fields/UploadField/UploadFile/UploadFile.d.ts +8 -0
  54. package/dist/components/FormViewer/components/fields/YesNoField.d.ts +4 -0
  55. package/dist/components/FormViewer/constants/defaultTheme.d.ts +2 -0
  56. package/dist/components/FormViewer/helpers/conditions.d.ts +285 -0
  57. package/dist/components/FormViewer/helpers/controls.d.ts +6 -0
  58. package/dist/components/FormViewer/helpers/cssScoping.d.ts +11 -0
  59. package/dist/components/FormViewer/helpers/helpers.d.ts +283 -0
  60. package/dist/components/FormViewer/helpers/index.d.ts +7 -0
  61. package/dist/components/FormViewer/helpers/slides.d.ts +3 -0
  62. package/dist/components/FormViewer/helpers/staticClasses.d.ts +47 -0
  63. package/dist/components/FormViewer/helpers/steps.d.ts +298 -0
  64. package/dist/components/FormViewer/helpers/themeUtils.d.ts +2 -0
  65. package/dist/components/FormViewer/helpers/validation.d.ts +10 -0
  66. package/dist/components/FormViewer/hooks/index.d.ts +6 -0
  67. package/dist/components/FormViewer/hooks/useActiveControl.d.ts +206 -0
  68. package/dist/components/FormViewer/hooks/useActiveStep.d.ts +281 -0
  69. package/dist/components/FormViewer/hooks/useCreateFormContext.d.ts +22 -0
  70. package/dist/components/FormViewer/hooks/useFormGlobalTheme.d.ts +145 -0
  71. package/dist/components/FormViewer/hooks/useFormMobile.d.ts +4 -0
  72. package/dist/components/FormViewer/hooks/useInterpolateText.d.ts +2 -0
  73. package/dist/components/FormViewer/index.d.ts +8 -0
  74. package/dist/components/FormViewer/store/formStore.d.ts +1357 -0
  75. package/dist/components/FormViewer/store/formStoreApi.d.ts +659 -0
  76. package/dist/components/FormViewer/store/selectors.d.ts +80491 -0
  77. package/dist/components/FormViewer/types/form.d.ts +58 -0
  78. package/dist/components/FormViewer/types/schemes.d.ts +7595 -0
  79. package/dist/components/InviteModal/InviteModal.d.ts +2 -0
  80. package/dist/components/InviteModal/slice.d.ts +13 -0
  81. package/dist/components/WorkspaceAvatar/WorkspaceAvatar.d.ts +1 -0
  82. package/dist/helpers/getFileType.d.ts +2 -1
  83. package/dist/helpers/isAppMode.d.ts +2 -0
  84. package/dist/hooks/useEvent.d.ts +1 -0
  85. package/dist/{index-BI1_FPl_.js → index-Cj-dmalk.js} +42701 -9664
  86. package/dist/index.d.ts +8 -0
  87. package/dist/index.js +77 -4
  88. package/dist/index.umd.cjs +59 -59
  89. package/package.json +1 -1
@@ -0,0 +1,285 @@
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
+ otherOption?: boolean | undefined;
100
+ } | {
101
+ id: string;
102
+ options: {
103
+ label: string;
104
+ id: string;
105
+ }[];
106
+ controlType: "multipleChoice";
107
+ title?: string | undefined;
108
+ description?: string | undefined;
109
+ icon?: string | undefined;
110
+ required?: boolean | undefined;
111
+ variableName?: string | undefined;
112
+ showInput?: boolean | undefined;
113
+ otherOption?: boolean | undefined;
114
+ minOptions?: number | undefined;
115
+ maxOptions?: number | undefined;
116
+ } | {
117
+ id: string;
118
+ options: {
119
+ label: string;
120
+ id: string;
121
+ image?: string | undefined;
122
+ }[];
123
+ controlType: "pictureChoice";
124
+ title?: string | undefined;
125
+ description?: string | undefined;
126
+ icon?: string | undefined;
127
+ required?: boolean | undefined;
128
+ variableName?: string | undefined;
129
+ showInput?: boolean | undefined;
130
+ } | {
131
+ id: string;
132
+ options: {
133
+ label: string;
134
+ id: string;
135
+ }[];
136
+ controlType: "dropdown";
137
+ title?: string | undefined;
138
+ description?: string | undefined;
139
+ icon?: string | undefined;
140
+ placeholder?: string | undefined;
141
+ required?: boolean | undefined;
142
+ variableName?: string | undefined;
143
+ } | {
144
+ id: string;
145
+ controlType: "email";
146
+ title?: string | undefined;
147
+ description?: string | undefined;
148
+ icon?: string | undefined;
149
+ placeholder?: string | undefined;
150
+ required?: boolean | undefined;
151
+ variableName?: string | undefined;
152
+ } | {
153
+ id: string;
154
+ controlType: "location";
155
+ title?: string | undefined;
156
+ description?: string | undefined;
157
+ icon?: string | undefined;
158
+ placeholder?: string | undefined;
159
+ required?: boolean | undefined;
160
+ variableName?: string | undefined;
161
+ } | {
162
+ id: string;
163
+ controlType: "phone";
164
+ title?: string | undefined;
165
+ description?: string | undefined;
166
+ icon?: string | undefined;
167
+ placeholder?: string | undefined;
168
+ required?: boolean | undefined;
169
+ variableName?: string | undefined;
170
+ } | {
171
+ id: string;
172
+ controlType: "slider";
173
+ title?: string | undefined;
174
+ description?: string | undefined;
175
+ icon?: string | undefined;
176
+ max?: number | undefined;
177
+ min?: number | undefined;
178
+ required?: boolean | undefined;
179
+ variableName?: string | undefined;
180
+ } | {
181
+ id: string;
182
+ controlType: "upload";
183
+ title?: string | undefined;
184
+ description?: string | undefined;
185
+ icon?: string | undefined;
186
+ multiple?: boolean | undefined;
187
+ accept?: string[] | undefined;
188
+ required?: boolean | undefined;
189
+ maxSize?: number | undefined;
190
+ maxFiles?: number | undefined;
191
+ variableName?: string | undefined;
192
+ minFiles?: number | undefined;
193
+ } | {
194
+ id: string;
195
+ controlType: "yesNo";
196
+ title?: string | undefined;
197
+ description?: string | undefined;
198
+ icon?: string | undefined;
199
+ required?: boolean | undefined;
200
+ variableName?: string | undefined;
201
+ yesLabel?: string | undefined;
202
+ noLabel?: string | undefined;
203
+ } | {
204
+ id: string;
205
+ controlType: "rating";
206
+ title?: string | undefined;
207
+ description?: string | undefined;
208
+ required?: boolean | undefined;
209
+ count?: number | undefined;
210
+ variableName?: string | undefined;
211
+ })[];
212
+ trigger: string;
213
+ position?: {
214
+ x: number;
215
+ y: number;
216
+ } | undefined;
217
+ media?: {
218
+ video?: string | undefined;
219
+ image?: string | undefined;
220
+ color?: string | undefined;
221
+ size?: number | undefined;
222
+ layout?: "content" | "top" | "left" | "bottom" | "right" | "background" | "fullLeft" | "fullRight" | "fullTop" | "fullBottom" | undefined;
223
+ blur?: number | undefined;
224
+ brightness?: number | undefined;
225
+ videoThumb?: string | undefined;
226
+ } | undefined;
227
+ theme?: {
228
+ input?: {
229
+ backgroundColor?: string | undefined;
230
+ borderColor?: string | undefined;
231
+ } | undefined;
232
+ title?: {
233
+ color?: string | undefined;
234
+ fontSize?: number | undefined;
235
+ fontWeight?: number | undefined;
236
+ fontFamily?: string | undefined;
237
+ } | undefined;
238
+ size?: "sm" | "md" | "lg" | undefined;
239
+ description?: {
240
+ color?: string | undefined;
241
+ fontSize?: number | undefined;
242
+ fontWeight?: number | undefined;
243
+ fontFamily?: string | undefined;
244
+ } | undefined;
245
+ align?: "center" | "end" | "start" | undefined;
246
+ background?: {
247
+ image?: string | undefined;
248
+ color?: string | undefined;
249
+ opacity?: number | undefined;
250
+ blur?: number | undefined;
251
+ brightness?: number | undefined;
252
+ fit?: string | undefined;
253
+ blendMode?: string | undefined;
254
+ } | undefined;
255
+ container?: {
256
+ color?: string | undefined;
257
+ opacity?: number | undefined;
258
+ backgroundImage?: string | undefined;
259
+ blur?: number | undefined;
260
+ shadowSize?: number | undefined;
261
+ shadowColor?: string | undefined;
262
+ } | undefined;
263
+ borderRadius?: "sm" | "md" | "lg" | undefined;
264
+ font?: {
265
+ color?: string | undefined;
266
+ fontSize?: number | undefined;
267
+ fontWeight?: number | undefined;
268
+ fontFamily?: string | undefined;
269
+ } | undefined;
270
+ listStyle?: string | undefined;
271
+ primaryColor?: string | undefined;
272
+ customCSS?: string | undefined;
273
+ } | undefined;
274
+ isStart?: boolean | undefined;
275
+ isEnd?: boolean | undefined;
276
+ autoSubmit?: boolean | undefined;
277
+ confirmLabel?: string | undefined;
278
+ conditions?: {
279
+ operator: string;
280
+ trigger: string;
281
+ controlId: string;
282
+ compareValue?: string | undefined;
283
+ }[] | undefined;
284
+ };
285
+ 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,283 @@
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
+ otherOption?: 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
+ otherOption?: boolean | undefined;
113
+ minOptions?: number | undefined;
114
+ maxOptions?: number | undefined;
115
+ } | {
116
+ id: string;
117
+ options: {
118
+ label: string;
119
+ id: string;
120
+ image?: string | undefined;
121
+ }[];
122
+ controlType: "pictureChoice";
123
+ title?: string | undefined;
124
+ description?: string | undefined;
125
+ icon?: string | undefined;
126
+ required?: boolean | undefined;
127
+ variableName?: string | undefined;
128
+ showInput?: boolean | undefined;
129
+ } | {
130
+ id: string;
131
+ options: {
132
+ label: string;
133
+ id: string;
134
+ }[];
135
+ controlType: "dropdown";
136
+ title?: string | undefined;
137
+ description?: string | undefined;
138
+ icon?: string | undefined;
139
+ placeholder?: string | undefined;
140
+ required?: boolean | undefined;
141
+ variableName?: string | undefined;
142
+ } | {
143
+ id: string;
144
+ controlType: "email";
145
+ title?: string | undefined;
146
+ description?: string | undefined;
147
+ icon?: string | undefined;
148
+ placeholder?: string | undefined;
149
+ required?: boolean | undefined;
150
+ variableName?: string | undefined;
151
+ } | {
152
+ id: string;
153
+ controlType: "location";
154
+ title?: string | undefined;
155
+ description?: string | undefined;
156
+ icon?: string | undefined;
157
+ placeholder?: string | undefined;
158
+ required?: boolean | undefined;
159
+ variableName?: string | undefined;
160
+ } | {
161
+ id: string;
162
+ controlType: "phone";
163
+ title?: string | undefined;
164
+ description?: string | undefined;
165
+ icon?: string | undefined;
166
+ placeholder?: string | undefined;
167
+ required?: boolean | undefined;
168
+ variableName?: string | undefined;
169
+ } | {
170
+ id: string;
171
+ controlType: "slider";
172
+ title?: string | undefined;
173
+ description?: string | undefined;
174
+ icon?: string | undefined;
175
+ max?: number | undefined;
176
+ min?: number | undefined;
177
+ required?: boolean | undefined;
178
+ variableName?: string | undefined;
179
+ } | {
180
+ id: string;
181
+ controlType: "upload";
182
+ title?: string | undefined;
183
+ description?: string | undefined;
184
+ icon?: string | undefined;
185
+ multiple?: boolean | undefined;
186
+ accept?: string[] | undefined;
187
+ required?: boolean | undefined;
188
+ maxSize?: number | undefined;
189
+ maxFiles?: number | undefined;
190
+ variableName?: string | undefined;
191
+ minFiles?: number | undefined;
192
+ } | {
193
+ id: string;
194
+ controlType: "yesNo";
195
+ title?: string | undefined;
196
+ description?: string | undefined;
197
+ icon?: string | undefined;
198
+ required?: boolean | undefined;
199
+ variableName?: string | undefined;
200
+ yesLabel?: string | undefined;
201
+ noLabel?: string | undefined;
202
+ } | {
203
+ id: string;
204
+ controlType: "rating";
205
+ title?: string | undefined;
206
+ description?: string | undefined;
207
+ required?: boolean | undefined;
208
+ count?: number | undefined;
209
+ variableName?: string | undefined;
210
+ })[];
211
+ trigger: string;
212
+ position?: {
213
+ x: number;
214
+ y: number;
215
+ } | undefined;
216
+ media?: {
217
+ video?: string | undefined;
218
+ image?: string | undefined;
219
+ color?: string | undefined;
220
+ size?: number | undefined;
221
+ layout?: "content" | "top" | "left" | "bottom" | "right" | "background" | "fullLeft" | "fullRight" | "fullTop" | "fullBottom" | undefined;
222
+ blur?: number | undefined;
223
+ brightness?: number | undefined;
224
+ videoThumb?: string | undefined;
225
+ } | undefined;
226
+ theme?: {
227
+ input?: {
228
+ backgroundColor?: string | undefined;
229
+ borderColor?: string | undefined;
230
+ } | undefined;
231
+ title?: {
232
+ color?: string | undefined;
233
+ fontSize?: number | undefined;
234
+ fontWeight?: number | undefined;
235
+ fontFamily?: string | undefined;
236
+ } | undefined;
237
+ size?: "sm" | "md" | "lg" | undefined;
238
+ description?: {
239
+ color?: string | undefined;
240
+ fontSize?: number | undefined;
241
+ fontWeight?: number | undefined;
242
+ fontFamily?: string | undefined;
243
+ } | undefined;
244
+ align?: "center" | "end" | "start" | undefined;
245
+ background?: {
246
+ image?: string | undefined;
247
+ color?: string | undefined;
248
+ opacity?: number | undefined;
249
+ blur?: number | undefined;
250
+ brightness?: number | undefined;
251
+ fit?: string | undefined;
252
+ blendMode?: string | undefined;
253
+ } | undefined;
254
+ container?: {
255
+ color?: string | undefined;
256
+ opacity?: number | undefined;
257
+ backgroundImage?: string | undefined;
258
+ blur?: number | undefined;
259
+ shadowSize?: number | undefined;
260
+ shadowColor?: string | undefined;
261
+ } | undefined;
262
+ borderRadius?: "sm" | "md" | "lg" | undefined;
263
+ font?: {
264
+ color?: string | undefined;
265
+ fontSize?: number | undefined;
266
+ fontWeight?: number | undefined;
267
+ fontFamily?: string | undefined;
268
+ } | undefined;
269
+ listStyle?: string | undefined;
270
+ primaryColor?: string | undefined;
271
+ customCSS?: string | undefined;
272
+ } | undefined;
273
+ isStart?: boolean | undefined;
274
+ isEnd?: boolean | undefined;
275
+ autoSubmit?: boolean | undefined;
276
+ confirmLabel?: string | undefined;
277
+ conditions?: {
278
+ operator: string;
279
+ trigger: string;
280
+ controlId: string;
281
+ compareValue?: string | undefined;
282
+ }[] | undefined;
283
+ }[];
@@ -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;