@syncfusion/ej2-react-form-builder 0.1.0-beta → 35.1.42

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 (160) hide show
  1. package/README.md +81 -36
  2. package/diConfig.json +148 -0
  3. package/dist/ej2-react-form-builder.min.js +10 -0
  4. package/dist/ej2-react-form-builder.umd.min.js +11 -0
  5. package/dist/ej2-react-form-builder.umd.min.js.map +1 -0
  6. package/dist/es6/ej2-react-form-builder.es2015.js +60 -0
  7. package/dist/es6/ej2-react-form-builder.es2015.js.map +1 -0
  8. package/form-builder.d.ts +4 -0
  9. package/form-builder.js +4 -0
  10. package/index.d.ts +2 -4
  11. package/index.js +2 -4
  12. package/license +6 -13
  13. package/package.json +19 -43
  14. package/src/form-builder/formbuilder.component.d.ts +37 -0
  15. package/src/form-builder/formbuilder.component.js +50 -0
  16. package/src/form-builder/index.d.ts +2 -0
  17. package/src/form-builder/index.js +2 -0
  18. package/src/form-builder/toolboxitems-directive.d.ts +28 -0
  19. package/src/form-builder/toolboxitems-directive.js +47 -0
  20. package/src/global.js +1 -0
  21. package/src/index.d.ts +2 -16
  22. package/src/index.js +2 -6
  23. package/Common/CheckboxGroup.d.ts +0 -13
  24. package/Common/CheckboxGroup.js +0 -50
  25. package/Common/ConditionalRuleEngine.d.ts +0 -296
  26. package/Common/ConditionalRuleEngine.js +0 -566
  27. package/Common/CustomTabComponent.d.ts +0 -17
  28. package/Common/CustomTabComponent.js +0 -30
  29. package/Common/CustomValidationEngine.d.ts +0 -58
  30. package/Common/CustomValidationEngine.js +0 -146
  31. package/Common/DataGridComponent.d.ts +0 -20
  32. package/Common/DataGridComponent.js +0 -273
  33. package/Common/FormValidator.d.ts +0 -485
  34. package/Common/FormValidator.js +0 -575
  35. package/Common/MinMaxRuleEngine.d.ts +0 -105
  36. package/Common/MinMaxRuleEngine.js +0 -365
  37. package/Common/StaticHtmlRenderer.d.ts +0 -14
  38. package/Common/StaticHtmlRenderer.js +0 -24
  39. package/Common/expressions/DependencyTracker.d.ts +0 -30
  40. package/Common/expressions/DependencyTracker.js +0 -128
  41. package/Common/expressions/ExpressionEngine.d.ts +0 -95
  42. package/Common/expressions/ExpressionEngine.js +0 -506
  43. package/Common/expressions/ExpressionParser.d.ts +0 -41
  44. package/Common/expressions/ExpressionParser.js +0 -269
  45. package/Common/expressions/useGridExpressions.d.ts +0 -12
  46. package/Common/expressions/useGridExpressions.js +0 -71
  47. package/Common/globalFormId.d.ts +0 -26
  48. package/Common/globalFormId.js +0 -45
  49. package/Common/json-converter.d.ts +0 -444
  50. package/Common/json-converter.js +0 -1184
  51. package/Common/parser.d.ts +0 -98
  52. package/Common/parser.js +0 -753
  53. package/Common/utils.d.ts +0 -130
  54. package/Common/utils.js +0 -574
  55. package/src/FormBuilder.d.ts +0 -211
  56. package/src/FormBuilder.js +0 -1299
  57. package/src/components/Database/ConnectionForm.d.ts +0 -8
  58. package/src/components/Database/ConnectionForm.js +0 -28
  59. package/src/components/TopBar.d.ts +0 -10
  60. package/src/components/TopBar.js +0 -7
  61. package/src/components/icons/ComponentIcons.d.ts +0 -44
  62. package/src/components/icons/ComponentIcons.js +0 -40
  63. package/src/components/layout/FormFieldWrapper.d.ts +0 -41
  64. package/src/components/layout/FormFieldWrapper.js +0 -112
  65. package/src/components/layout/LeftPane.d.ts +0 -23
  66. package/src/components/layout/LeftPane.js +0 -310
  67. package/src/components/layout/ListBoxPane.d.ts +0 -24
  68. package/src/components/layout/ListBoxPane.js +0 -94
  69. package/src/components/layout/MainSection.d.ts +0 -39
  70. package/src/components/layout/MainSection.js +0 -1766
  71. package/src/components/layout/Preview.d.ts +0 -12
  72. package/src/components/layout/Preview.js +0 -337
  73. package/src/components/layout/RightPane.d.ts +0 -22
  74. package/src/components/layout/RightPane.js +0 -370
  75. package/src/components/theme/ThemeSwitcher.d.ts +0 -14
  76. package/src/components/theme/ThemeSwitcher.js +0 -24
  77. package/src/components/theme/theme-constant.d.ts +0 -37
  78. package/src/components/theme/theme-constant.js +0 -23
  79. package/src/config/component-properties.json +0 -4929
  80. package/src/config/form-setting.json +0 -56
  81. package/src/config/locale.d.ts +0 -449
  82. package/src/config/locale.js +0 -449
  83. package/src/context/FormSchemaContext.d.ts +0 -32
  84. package/src/context/FormSchemaContext.js +0 -155
  85. package/src/context/LocalizationContext.d.ts +0 -27
  86. package/src/context/LocalizationContext.js +0 -43
  87. package/src/context/ThemeContext.d.ts +0 -23
  88. package/src/context/ThemeContext.js +0 -161
  89. package/src/context/contexts.d.ts +0 -6
  90. package/src/context/contexts.js +0 -6
  91. package/src/context/defaultFormSchema.d.ts +0 -6
  92. package/src/context/defaultFormSchema.js +0 -20
  93. package/src/defaultPalette.d.ts +0 -9
  94. package/src/defaultPalette.js +0 -45
  95. package/src/defaultTemplate.d.ts +0 -3
  96. package/src/defaultTemplate.js +0 -185
  97. package/src/import/schemaImportUtils.d.ts +0 -24
  98. package/src/import/schemaImportUtils.js +0 -121
  99. package/src/types/ActionButtons.d.ts +0 -44
  100. package/src/types/ActionButtons.js +0 -27
  101. package/src/types/ComponentProperties.d.ts +0 -33
  102. package/src/types/ComponentProperties.js +0 -2
  103. package/src/types/FormSchema.d.ts +0 -585
  104. package/src/types/FormSchema.js +0 -147
  105. package/src/types/connection.d.ts +0 -19
  106. package/src/types/connection.js +0 -9
  107. package/src/utils/AttributesEditor.d.ts +0 -13
  108. package/src/utils/AttributesEditor.js +0 -117
  109. package/src/utils/ButtonGroupEditor.d.ts +0 -15
  110. package/src/utils/ButtonGroupEditor.js +0 -141
  111. package/src/utils/ChoiceBasedFieldEditor.d.ts +0 -16
  112. package/src/utils/ChoiceBasedFieldEditor.js +0 -87
  113. package/src/utils/ClipboardHelper.d.ts +0 -26
  114. package/src/utils/ClipboardHelper.js +0 -83
  115. package/src/utils/ColumnBuilder.d.ts +0 -11
  116. package/src/utils/ColumnBuilder.js +0 -153
  117. package/src/utils/ColumnSpanEditor.d.ts +0 -8
  118. package/src/utils/ColumnSpanEditor.js +0 -98
  119. package/src/utils/ConditionDataEditor.d.ts +0 -29
  120. package/src/utils/ConditionDataEditor.js +0 -177
  121. package/src/utils/ConditionalEditorUtils.d.ts +0 -27
  122. package/src/utils/ConditionalEditorUtils.js +0 -310
  123. package/src/utils/ConditionsEditor.d.ts +0 -20
  124. package/src/utils/ConditionsEditor.js +0 -571
  125. package/src/utils/CustomAccordion.d.ts +0 -13
  126. package/src/utils/CustomAccordion.js +0 -38
  127. package/src/utils/CustomValidationEditor.d.ts +0 -11
  128. package/src/utils/CustomValidationEditor.js +0 -208
  129. package/src/utils/DataSourceCollector.d.ts +0 -3
  130. package/src/utils/DataSourceCollector.js +0 -252
  131. package/src/utils/ExpressionEditor.d.ts +0 -13
  132. package/src/utils/ExpressionEditor.js +0 -99
  133. package/src/utils/FormSettingsPanel.d.ts +0 -9
  134. package/src/utils/FormSettingsPanel.js +0 -60
  135. package/src/utils/LookupConfig.d.ts +0 -11
  136. package/src/utils/LookupConfig.js +0 -159
  137. package/src/utils/MinMaxValueEditor.d.ts +0 -25
  138. package/src/utils/MinMaxValueEditor.js +0 -188
  139. package/src/utils/OptionsEditor.d.ts +0 -8
  140. package/src/utils/OptionsEditor.js +0 -79
  141. package/src/utils/PropertyRenderer.d.ts +0 -22
  142. package/src/utils/PropertyRenderer.js +0 -210
  143. package/src/utils/ValueRenderer.d.ts +0 -2
  144. package/src/utils/ValueRenderer.js +0 -91
  145. package/src/utils/ej2DbAdaptor.d.ts +0 -6
  146. package/src/utils/ej2DbAdaptor.js +0 -38
  147. package/src/utils/mappingHeuristics.d.ts +0 -10
  148. package/src/utils/mappingHeuristics.js +0 -33
  149. package/src/utils/renderComponent.d.ts +0 -18
  150. package/src/utils/renderComponent.js +0 -300
  151. package/styles/tailwind3.css +0 -67
  152. package/styles/themes/action-buttons.css +0 -110
  153. package/styles/themes/datagrid.css +0 -380
  154. package/styles/themes/drag-reorder.css +0 -248
  155. package/styles/themes/import-dialog.css +0 -292
  156. package/styles/themes/index.css +0 -658
  157. package/styles/themes/left-pane.css +0 -253
  158. package/styles/themes/options-editor.css +0 -63
  159. package/styles/themes/preview.css +0 -702
  160. package/styles/themes/property-dialog.css +0 -371
@@ -1,444 +0,0 @@
1
- import type { FormSchema, FormComponent } from '../FormBuilder/types/FormSchema';
2
- /**
3
- * @private
4
- */
5
- export declare const generateId: (type: string) => string;
6
- /**
7
- * @private
8
- */
9
- export declare const generateName: (type: string) => string;
10
- /**
11
- * @private
12
- */
13
- export interface UnifiedSchema {
14
- version: string;
15
- properties: Record<string, FieldProperties>;
16
- theme?: string;
17
- layout: LayoutNode[];
18
- settings?: any;
19
- }
20
- /**
21
- * @private
22
- */
23
- export interface DataSchema {
24
- version: string;
25
- properties: Record<string, DataField>;
26
- settings?: any;
27
- }
28
- /**
29
- * Represents the properties provided to the form fields in the JSON schema.
30
- */
31
- export interface FieldProperties {
32
- /**
33
- * Specifies the id of the form field.
34
- */
35
- id: string;
36
- /**
37
- * Specifies the type of the form field. The values are `string`, `number`, `boolean`, `array`, and so on.
38
- */
39
- type: 'string' | 'number' | 'boolean' | 'array' | 'any' | 'button' | 'message' | 'sign' | 'image' | 'file' | 'color' | 'grid';
40
- /**
41
- * Specifies the name assigned to the form field, which is used in expressions and other form operations.
42
- */
43
- name: string;
44
- /**
45
- * Specifies the label assigned to the form field for identification in the form UI.
46
- */
47
- label?: string;
48
- /**
49
- * Specifies an identifier for inputs such as Date Picker, DateTime Picker, TimePicker, and TextBox.
50
- * Takes values such as `date` for Date Picker, `date-time` for DateTime Picker, `time` for TimePicker, and `email` and `url` for TextBox.
51
- */
52
- format?: 'date' | 'date-time' | 'time' | 'email' | 'url';
53
- /**
54
- * Specifies the default value of the form field.
55
- */
56
- defaultValue?: any;
57
- /**
58
- * Specifies the expression assigned to the form field.
59
- */
60
- expressionValue?: string;
61
- /**
62
- * Specifies the text content used for message fields.
63
- */
64
- content?: string;
65
- /**
66
- * Specifies the type of the button set on the button field.
67
- */
68
- buttonType?: string;
69
- /**
70
- * Specifies the type of the text box set on the text box field.
71
- * Takes values such as `text`, `password`, `email`, `number`, and `url`.
72
- */
73
- textboxType?: string;
74
- /**
75
- * Specifies the multiple choice options set on the form field.
76
- * This property applies to Radio Button, Dropdown List, MultiSelect, and Checkbox Group.
77
- */
78
- options?: string[] | any[];
79
- /**
80
- * Specifies whether the current field is mandatory.
81
- */
82
- required?: boolean;
83
- /**
84
- * Specifies the minimum length of input allowed for the text box and text area.
85
- */
86
- minLength?: number;
87
- /**
88
- * Specifies the maximum length of input allowed for the text box and text area.
89
- */
90
- maxLength?: number;
91
- /**
92
- * Specifies the minimum value that can be set to the rating and range slider components.
93
- */
94
- minValue?: number;
95
- /**
96
- * Specifies the maximum value that can be set to the range slider component.
97
- */
98
- maxValue?: number;
99
- /**
100
- * Specifies the minimum date value that can be set to the DateRange Picker.
101
- */
102
- minDate?: string;
103
- /**
104
- * Specifies the maximum date value that can be set to the DateRange Picker.
105
- */
106
- maxDate?: string;
107
- /**
108
- * @private
109
- */
110
- minTime?: string;
111
- /**
112
- * @private
113
- */
114
- maxTime?: string;
115
- /**
116
- * Specifies the regular expression pattern used to validate the text box and text area form fields.
117
- */
118
- pattern?: string;
119
- /**
120
- * Specifies the widget used for the current component.
121
- */
122
- widget: string;
123
- /**
124
- * @private
125
- */
126
- _configured?: boolean;
127
- /** Additional UI properties supported by the rendered component. */
128
- [key: string]: any;
129
- }
130
- /**
131
- * @private
132
- */
133
- export interface DataField {
134
- id: string;
135
- type: 'string' | 'number' | 'boolean' | 'array' | 'any' | 'button' | 'message' | 'sign' | 'image' | 'file' | 'color' | 'grid';
136
- name: string;
137
- label?: string;
138
- format?: 'date' | 'date-time' | 'time' | 'email' | 'url';
139
- defaultValue?: any;
140
- expressionValue?: string;
141
- content?: string;
142
- buttonType?: string;
143
- textboxType?: string;
144
- options?: string[] | any[] | string | any;
145
- required?: boolean;
146
- minLength?: number;
147
- maxLength?: number;
148
- minValue?: number;
149
- maxValue?: number;
150
- minDate?: string;
151
- maxDate?: string;
152
- minTime?: string;
153
- maxTime?: string;
154
- pattern?: string;
155
- }
156
- /**
157
- * @private
158
- */
159
- export interface UISchema {
160
- properties: Record<string, UIField>;
161
- layout: LayoutNode[];
162
- }
163
- /**
164
- * @private
165
- */
166
- export interface UIField {
167
- widget: string;
168
- _configured?: boolean;
169
- [key: string]: any;
170
- }
171
- /**
172
- * Specifies the layouts available in the form.
173
- */
174
- export type LayoutNode = FieldNode | TableNode | PanelNode | TabsNode | CardNode;
175
- /**
176
- * Provides the properties to signify a field node.
177
- */
178
- export interface FieldNode {
179
- /**
180
- * Specifies the type identifier of the layout node, set to `field`.
181
- */
182
- type: 'field';
183
- /**
184
- * Specifies the field id in the properties key, which is provided as a reference to the layout.
185
- */
186
- propertyId: string;
187
- }
188
- /**
189
- * Provides the properties to signify a table.
190
- */
191
- export interface TableNode {
192
- /**
193
- * Specifies the type identifier of the layout node, set to `table`.
194
- */
195
- type: 'table';
196
- /**
197
- * Specifies the id of the table.
198
- */
199
- id: string;
200
- /**
201
- * Specifies the name assigned to the table, which is used in expressions and other form operations.
202
- */
203
- name: string;
204
- /**
205
- * Specifies the label assigned to the table for identification in the form UI.
206
- */
207
- label?: string;
208
- /**
209
- * Specifies the class name that can be added to the table for CSS styling.
210
- */
211
- cssClass?: string;
212
- /**
213
- * Specifies whether the border of the table is hidden.
214
- */
215
- hideBorders?: boolean;
216
- /**
217
- * Specifies the row count in the table.
218
- */
219
- rows: number;
220
- /**
221
- * Specifies the column count in the table.
222
- */
223
- cols: number;
224
- /**
225
- * Specifies the configuration set on the table cells.
226
- */
227
- cells: TableCell[][];
228
- /**
229
- * Specifies the configuration of the column widths.
230
- */
231
- columnWidths?: {
232
- widths: (number | null)[];
233
- };
234
- /**
235
- * Specifies the condition rules that are set on the table element.
236
- */
237
- conditions?: any;
238
- }
239
- /**
240
- * Provides the properties to signify a table cell.
241
- */
242
- export interface TableCell {
243
- /**
244
- * Specifies the row index of the table cell.
245
- */
246
- row: number;
247
- /**
248
- * Specifies the column index of the table cell.
249
- */
250
- col: number;
251
- /**
252
- * Specifies the fields or layouts that are available in the current cell.
253
- */
254
- children: LayoutNode[];
255
- }
256
- /**
257
- * Provides the properties to signify a panel.
258
- */
259
- export interface PanelNode {
260
- /**
261
- * Specifies the type identifier of the layout node, set to `panel`.
262
- */
263
- type: 'panel';
264
- /**
265
- * Specifies the id of the panel.
266
- */
267
- id: string;
268
- /**
269
- * Specifies the name assigned to the panel, which is used in expressions and other form operations.
270
- */
271
- name: string;
272
- /**
273
- * Specifies the label assigned to the panel for identification in the form UI.
274
- */
275
- label?: string;
276
- /**
277
- * Specifies the class name that can be added to the panel for CSS styling.
278
- */
279
- cssClass?: string;
280
- /**
281
- * Specifies whether the border of the panel is hidden.
282
- */
283
- hideBorders?: boolean;
284
- /**
285
- * Specifies whether the label of the panel is hidden.
286
- */
287
- hideLabel?: boolean;
288
- /**
289
- * Specifies the fields or layouts that are available in the current panel.
290
- */
291
- children: LayoutNode[];
292
- /**
293
- * Specifies the condition rules that are set on the panel element.
294
- */
295
- conditions?: any;
296
- }
297
- /**
298
- * Provides the properties to signify a tab.
299
- */
300
- export interface TabsNode {
301
- /**
302
- * Specifies the type identifier of the layout node, set to `tabs`.
303
- */
304
- type: 'tabs';
305
- /**
306
- * Specifies the id of the tabs.
307
- */
308
- id: string;
309
- /**
310
- * Specifies the name assigned to the tabs, which is used in expressions and other form operations.
311
- */
312
- name: string;
313
- /**
314
- * Specifies the class name that can be added to the tabs for CSS styling.
315
- */
316
- cssClass?: string;
317
- /**
318
- * Specifies the label assigned to the tabs for identification in the form UI.
319
- */
320
- label?: string;
321
- /**
322
- * Specifies the name of each tab item.
323
- */
324
- tabOptions?: string[];
325
- /**
326
- * Specifies the configuration that has been set on each tab item.
327
- */
328
- tabs: TabItem[];
329
- /**
330
- * Specifies the condition rules that are set on the tabs element.
331
- */
332
- conditions?: any;
333
- }
334
- /**
335
- * Provides the properties to signify a tab item.
336
- */
337
- export interface TabItem {
338
- /**
339
- * Specifies the header name of the tab.
340
- */
341
- header: string;
342
- /**
343
- * Specifies the fields or layouts that are available in the current tab item.
344
- */
345
- children: LayoutNode[];
346
- }
347
- /**
348
- * Provides the properties to signify a card.
349
- */
350
- export interface CardNode {
351
- /**
352
- * Specifies the type identifier of the layout node, set to `card`.
353
- */
354
- type: 'card';
355
- /**
356
- * Specifies the id of the card.
357
- */
358
- id: string;
359
- /**
360
- * Specifies the name assigned to the card, which is used in expressions and other form operations.
361
- */
362
- name: string;
363
- /**
364
- * Specifies the label assigned to the card for identification in the form UI.
365
- */
366
- label?: string;
367
- /**
368
- * Specifies the class name that can be added to the card for CSS styling.
369
- */
370
- cssClass?: string;
371
- /**
372
- * Specifies whether the label of the card is hidden.
373
- */
374
- hideLabel?: boolean;
375
- /**
376
- * Specifies the title of the card.
377
- */
378
- cardTitle?: string;
379
- /**
380
- * Specifies the subtitle of the card.
381
- */
382
- cardSubtitle?: string;
383
- /**
384
- * Specifies the fields or layouts that are available in the current card.
385
- */
386
- children: LayoutNode[];
387
- /**
388
- * Specifies the condition rules that are set on the card element.
389
- */
390
- conditions?: any;
391
- }
392
- /**
393
- * @private
394
- */
395
- export declare function labelToFieldKey(label: string, fallbackId?: string): string;
396
- /**
397
- * @private
398
- */
399
- export declare function makeUniqueFieldKey(baseKey: string, existingKeys: Set<string>, originalId?: string): string;
400
- /**
401
- * @private
402
- */
403
- export declare const UI_TYPE_TO_SEMANTIC_TYPE: Record<string, {
404
- type: DataField['type'];
405
- format?: string;
406
- } | null>;
407
- /**
408
- * @private
409
- */
410
- export declare function splitSchema(heartSchema: FormSchema): UnifiedSchema;
411
- /**
412
- * @private
413
- */
414
- export declare function mergeSchema(unified: UnifiedSchema): FormSchema;
415
- /**
416
- * @private
417
- */
418
- export declare function inferWidgetFromType(type: string, format?: string, hasOptions?: boolean): string;
419
- /**
420
- * @private
421
- */
422
- export interface FieldMatchResult {
423
- existingId: string;
424
- newDataId: string;
425
- confidence: 'exact' | 'high' | 'medium' | 'low';
426
- method: 'id' | 'label-exact' | 'label-fuzzy' | 'new';
427
- similarity?: number;
428
- }
429
- /**
430
- * @private
431
- */
432
- export declare function matchFieldWithIDPreservation(newDataField: DataField, existingUISchema: UISchema): FieldMatchResult;
433
- /**
434
- * @private
435
- */
436
- export declare function mergeWithIDRemapping(newDataSchema: DataSchema, existingUISchema: UISchema): FormSchema;
437
- /**
438
- * @private
439
- */
440
- export declare function extractFieldIdsFromLayout(layout: LayoutNode[]): Set<string>;
441
- /**
442
- * @private
443
- */
444
- export declare function convertComponentsToDataSchema(components: FormComponent[]): DataSchema;