@syncfusion/ej2-form-renderer 34.2.6 → 35.1.37

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 (216) hide show
  1. package/README.md +6 -3
  2. package/dist/ej2-form-renderer.umd.min.js +2 -2
  3. package/dist/ej2-form-renderer.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-form-renderer.es2015.js +3261 -1523
  5. package/dist/es6/ej2-form-renderer.es2015.js.map +1 -1
  6. package/dist/es6/ej2-form-renderer.es5.js +3316 -1540
  7. package/dist/es6/ej2-form-renderer.es5.js.map +1 -1
  8. package/dist/global/ej2-form-renderer.min.js +2 -2
  9. package/dist/global/ej2-form-renderer.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +11 -11
  12. package/src/{common → form-renderer/common}/checkbox-group.js +1 -1
  13. package/src/{common → form-renderer/common}/conditional-rule-engine.d.ts +1 -6
  14. package/src/{common → form-renderer/common}/custom-validation-engine.d.ts +1 -1
  15. package/src/{common → form-renderer/common}/expressions/expression-engine.d.ts +1 -4
  16. package/src/{common → form-renderer/common}/expressions/expression-parser.d.ts +1 -9
  17. package/src/{common → form-renderer/common}/index.d.ts +2 -0
  18. package/src/{common → form-renderer/common}/index.js +2 -0
  19. package/src/{common → form-renderer/common}/json-converter.d.ts +6 -1
  20. package/src/{common → form-renderer/common}/json-converter.js +49 -8
  21. package/src/form-renderer/common/props-forwarder.d.ts +38 -0
  22. package/src/form-renderer/common/props-forwarder.js +123 -0
  23. package/src/{common → form-renderer/common}/utils.d.ts +6 -0
  24. package/src/form-renderer/form-renderer/custom-widget-resolver.d.ts +17 -0
  25. package/src/form-renderer/form-renderer/custom-widget-resolver.js +39 -0
  26. package/src/form-renderer/form-renderer/form-renderer-model.d.ts +125 -0
  27. package/src/form-renderer/form-renderer/form-renderer.d.ts +373 -0
  28. package/src/form-renderer/{form-renderer.js → form-renderer/form-renderer.js} +419 -298
  29. package/src/form-renderer/form-renderer/index.d.ts +7 -0
  30. package/src/form-renderer/form-renderer/index.js +6 -0
  31. package/src/form-renderer/{render-form-field.js → form-renderer/render-form-field.js} +154 -25
  32. package/src/form-renderer/index.d.ts +3 -4
  33. package/src/form-renderer/index.js +3 -3
  34. package/src/index.d.ts +1 -4
  35. package/src/index.js +1 -4
  36. package/common.d.ts +0 -4
  37. package/common.js +0 -4
  38. package/src/form-renderer/form-renderer-model.d.ts +0 -65
  39. package/src/form-renderer/form-renderer.d.ts +0 -425
  40. package/styles/bds-lite.css +0 -599
  41. package/styles/bds-lite.scss +0 -2
  42. package/styles/bds.css +0 -599
  43. package/styles/bds.scss +0 -2
  44. package/styles/bootstrap-dark-lite.css +0 -608
  45. package/styles/bootstrap-dark-lite.scss +0 -2
  46. package/styles/bootstrap-dark.css +0 -608
  47. package/styles/bootstrap-dark.scss +0 -2
  48. package/styles/bootstrap-lite.css +0 -595
  49. package/styles/bootstrap-lite.scss +0 -2
  50. package/styles/bootstrap.css +0 -595
  51. package/styles/bootstrap.scss +0 -2
  52. package/styles/bootstrap4-lite.css +0 -595
  53. package/styles/bootstrap4-lite.scss +0 -2
  54. package/styles/bootstrap4.css +0 -595
  55. package/styles/bootstrap4.scss +0 -2
  56. package/styles/bootstrap5-dark-lite.css +0 -595
  57. package/styles/bootstrap5-dark-lite.scss +0 -2
  58. package/styles/bootstrap5-dark.css +0 -595
  59. package/styles/bootstrap5-dark.scss +0 -2
  60. package/styles/bootstrap5-lite.css +0 -595
  61. package/styles/bootstrap5-lite.scss +0 -2
  62. package/styles/bootstrap5.3-lite.css +0 -679
  63. package/styles/bootstrap5.3-lite.scss +0 -2
  64. package/styles/bootstrap5.3.css +0 -679
  65. package/styles/bootstrap5.3.scss +0 -2
  66. package/styles/bootstrap5.css +0 -595
  67. package/styles/bootstrap5.scss +0 -2
  68. package/styles/fabric-dark-lite.css +0 -608
  69. package/styles/fabric-dark-lite.scss +0 -2
  70. package/styles/fabric-dark.css +0 -608
  71. package/styles/fabric-dark.scss +0 -2
  72. package/styles/fabric-lite.css +0 -595
  73. package/styles/fabric-lite.scss +0 -2
  74. package/styles/fabric.css +0 -595
  75. package/styles/fabric.scss +0 -2
  76. package/styles/fluent-dark-lite.css +0 -595
  77. package/styles/fluent-dark-lite.scss +0 -2
  78. package/styles/fluent-dark.css +0 -595
  79. package/styles/fluent-dark.scss +0 -2
  80. package/styles/fluent-lite.css +0 -595
  81. package/styles/fluent-lite.scss +0 -2
  82. package/styles/fluent.css +0 -595
  83. package/styles/fluent.scss +0 -2
  84. package/styles/fluent2-lite.css +0 -681
  85. package/styles/fluent2-lite.scss +0 -2
  86. package/styles/fluent2.css +0 -681
  87. package/styles/fluent2.scss +0 -2
  88. package/styles/form-renderer/_all.scss +0 -2
  89. package/styles/form-renderer/_bds-definition.scss +0 -8
  90. package/styles/form-renderer/_bootstrap-dark-definition.scss +0 -8
  91. package/styles/form-renderer/_bootstrap-definition.scss +0 -8
  92. package/styles/form-renderer/_bootstrap4-definition.scss +0 -8
  93. package/styles/form-renderer/_bootstrap5-dark-definition.scss +0 -8
  94. package/styles/form-renderer/_bootstrap5-definition.scss +0 -8
  95. package/styles/form-renderer/_bootstrap5.3-definition.scss +0 -8
  96. package/styles/form-renderer/_fabric-dark-definition.scss +0 -8
  97. package/styles/form-renderer/_fabric-definition.scss +0 -8
  98. package/styles/form-renderer/_fluent-dark-definition.scss +0 -8
  99. package/styles/form-renderer/_fluent-definition.scss +0 -8
  100. package/styles/form-renderer/_fluent2-definition.scss +0 -8
  101. package/styles/form-renderer/_highcontrast-definition.scss +0 -8
  102. package/styles/form-renderer/_highcontrast-light-definition.scss +0 -8
  103. package/styles/form-renderer/_layout.scss +0 -480
  104. package/styles/form-renderer/_material-dark-definition.scss +0 -8
  105. package/styles/form-renderer/_material-definition.scss +0 -8
  106. package/styles/form-renderer/_material3-dark-definition.scss +0 -8
  107. package/styles/form-renderer/_material3-definition.scss +0 -8
  108. package/styles/form-renderer/_mixin.scss +0 -26
  109. package/styles/form-renderer/_tailwind-dark-definition.scss +0 -8
  110. package/styles/form-renderer/_tailwind-definition.scss +0 -8
  111. package/styles/form-renderer/_tailwind3-definition.scss +0 -8
  112. package/styles/form-renderer/_theme.scss +0 -69
  113. package/styles/form-renderer/_variables.scss +0 -2
  114. package/styles/form-renderer/bds.css +0 -599
  115. package/styles/form-renderer/bds.scss +0 -2
  116. package/styles/form-renderer/bootstrap-dark.css +0 -608
  117. package/styles/form-renderer/bootstrap-dark.scss +0 -2
  118. package/styles/form-renderer/bootstrap.css +0 -595
  119. package/styles/form-renderer/bootstrap.scss +0 -2
  120. package/styles/form-renderer/bootstrap4.css +0 -595
  121. package/styles/form-renderer/bootstrap4.scss +0 -2
  122. package/styles/form-renderer/bootstrap5-dark.css +0 -595
  123. package/styles/form-renderer/bootstrap5-dark.scss +0 -2
  124. package/styles/form-renderer/bootstrap5.3.css +0 -679
  125. package/styles/form-renderer/bootstrap5.3.scss +0 -2
  126. package/styles/form-renderer/bootstrap5.css +0 -595
  127. package/styles/form-renderer/bootstrap5.scss +0 -2
  128. package/styles/form-renderer/fabric-dark.css +0 -608
  129. package/styles/form-renderer/fabric-dark.scss +0 -2
  130. package/styles/form-renderer/fabric.css +0 -595
  131. package/styles/form-renderer/fabric.scss +0 -2
  132. package/styles/form-renderer/fluent-dark.css +0 -595
  133. package/styles/form-renderer/fluent-dark.scss +0 -2
  134. package/styles/form-renderer/fluent.css +0 -595
  135. package/styles/form-renderer/fluent.scss +0 -2
  136. package/styles/form-renderer/fluent2.css +0 -681
  137. package/styles/form-renderer/fluent2.scss +0 -2
  138. package/styles/form-renderer/highcontrast-light.css +0 -595
  139. package/styles/form-renderer/highcontrast-light.scss +0 -2
  140. package/styles/form-renderer/highcontrast.css +0 -608
  141. package/styles/form-renderer/highcontrast.scss +0 -2
  142. package/styles/form-renderer/material-dark.css +0 -608
  143. package/styles/form-renderer/material-dark.scss +0 -2
  144. package/styles/form-renderer/material.css +0 -595
  145. package/styles/form-renderer/material.scss +0 -2
  146. package/styles/form-renderer/material3-dark.css +0 -677
  147. package/styles/form-renderer/material3-dark.scss +0 -2
  148. package/styles/form-renderer/material3.css +0 -679
  149. package/styles/form-renderer/material3.scss +0 -2
  150. package/styles/form-renderer/tailwind-dark.css +0 -595
  151. package/styles/form-renderer/tailwind-dark.scss +0 -2
  152. package/styles/form-renderer/tailwind.css +0 -595
  153. package/styles/form-renderer/tailwind.scss +0 -2
  154. package/styles/form-renderer/tailwind3.css +0 -669
  155. package/styles/form-renderer/tailwind3.scss +0 -2
  156. package/styles/highcontrast-light-lite.css +0 -595
  157. package/styles/highcontrast-light-lite.scss +0 -2
  158. package/styles/highcontrast-light.css +0 -595
  159. package/styles/highcontrast-light.scss +0 -2
  160. package/styles/highcontrast-lite.css +0 -608
  161. package/styles/highcontrast-lite.scss +0 -2
  162. package/styles/highcontrast.css +0 -608
  163. package/styles/highcontrast.scss +0 -2
  164. package/styles/material-dark-lite.css +0 -608
  165. package/styles/material-dark-lite.scss +0 -2
  166. package/styles/material-dark.css +0 -608
  167. package/styles/material-dark.scss +0 -2
  168. package/styles/material-lite.css +0 -595
  169. package/styles/material-lite.scss +0 -2
  170. package/styles/material.css +0 -595
  171. package/styles/material.scss +0 -2
  172. package/styles/material3-dark-lite.css +0 -677
  173. package/styles/material3-dark-lite.scss +0 -2
  174. package/styles/material3-dark.css +0 -677
  175. package/styles/material3-dark.scss +0 -2
  176. package/styles/material3-lite.css +0 -679
  177. package/styles/material3-lite.scss +0 -2
  178. package/styles/material3.css +0 -679
  179. package/styles/material3.scss +0 -2
  180. package/styles/tailwind-dark-lite.css +0 -595
  181. package/styles/tailwind-dark-lite.scss +0 -2
  182. package/styles/tailwind-dark.css +0 -595
  183. package/styles/tailwind-dark.scss +0 -2
  184. package/styles/tailwind-lite.css +0 -595
  185. package/styles/tailwind-lite.scss +0 -2
  186. package/styles/tailwind.css +0 -595
  187. package/styles/tailwind.scss +0 -2
  188. package/styles/tailwind3-lite.css +0 -669
  189. package/styles/tailwind3-lite.scss +0 -2
  190. package/styles/tailwind3.css +0 -669
  191. package/styles/tailwind3.scss +0 -2
  192. /package/src/{common → form-renderer/common}/checkbox-group.d.ts +0 -0
  193. /package/src/{common → form-renderer/common}/conditional-rule-engine.js +0 -0
  194. /package/src/{common → form-renderer/common}/custom-validation-engine.js +0 -0
  195. /package/src/{common → form-renderer/common}/datagrid-component.d.ts +0 -0
  196. /package/src/{common → form-renderer/common}/datagrid-component.js +0 -0
  197. /package/src/{common → form-renderer/common}/expressions/dependency-tracker.d.ts +0 -0
  198. /package/src/{common → form-renderer/common}/expressions/dependency-tracker.js +0 -0
  199. /package/src/{common → form-renderer/common}/expressions/expression-engine.js +0 -0
  200. /package/src/{common → form-renderer/common}/expressions/expression-parser.js +0 -0
  201. /package/src/{common → form-renderer/common}/expressions/grid-expressions.d.ts +0 -0
  202. /package/src/{common → form-renderer/common}/expressions/grid-expressions.js +0 -0
  203. /package/src/{common → form-renderer/common}/expressions/index.d.ts +0 -0
  204. /package/src/{common → form-renderer/common}/expressions/index.js +0 -0
  205. /package/src/{common → form-renderer/common}/minmax-rule-engine.d.ts +0 -0
  206. /package/src/{common → form-renderer/common}/minmax-rule-engine.js +0 -0
  207. /package/src/{common → form-renderer/common}/option-fetcher.d.ts +0 -0
  208. /package/src/{common → form-renderer/common}/option-fetcher.js +0 -0
  209. /package/src/{common → form-renderer/common}/parser.d.ts +0 -0
  210. /package/src/{common → form-renderer/common}/parser.js +0 -0
  211. /package/src/{common → form-renderer/common}/static-html-renderer.d.ts +0 -0
  212. /package/src/{common → form-renderer/common}/static-html-renderer.js +0 -0
  213. /package/src/{common → form-renderer/common}/utils.js +0 -0
  214. /package/src/form-renderer/{render-form-field.d.ts → form-renderer/render-form-field.d.ts} +0 -0
  215. /package/src/form-renderer/{types → form-renderer/types}/form-schema.d.ts +0 -0
  216. /package/src/form-renderer/{types → form-renderer/types}/form-schema.js +0 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Form renderer modules
3
+ */
4
+ export * from './form-renderer';
5
+ export * from './form-renderer-model';
6
+ export * from './types/form-schema';
7
+ export * from './render-form-field';
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Form renderer modules
3
+ */
4
+ export * from './form-renderer';
5
+ export * from './types/form-schema';
6
+ export * from './render-form-field';
@@ -23,6 +23,7 @@ import { OptionFetcher } from '../common/option-fetcher';
23
23
  import { CheckboxGroup } from '../common/checkbox-group';
24
24
  import { DataGridComponent } from '../common/datagrid-component';
25
25
  import { ConditionalRuleEngine } from '../common/conditional-rule-engine';
26
+ import { forwardExtras } from '../common/index';
26
27
  /**
27
28
  * @private
28
29
  */
@@ -93,6 +94,11 @@ export var renderFormField = function (options) {
93
94
  if (target) {
94
95
  tb.appendTo(target);
95
96
  }
97
+ forwardExtras(tb, component, [
98
+ 'name', 'multiline', 'textboxType', 'defaultValue',
99
+ 'showClearButton', 'autocomplete', 'readOnly', 'cssClass',
100
+ 'suffix', 'prefix', 'floatLabelType', 'placeholder', 'disabled'
101
+ ]);
96
102
  ref(tb);
97
103
  return tb;
98
104
  }
@@ -101,6 +107,11 @@ export var renderFormField = function (options) {
101
107
  if (target) {
102
108
  ta.appendTo(target);
103
109
  }
110
+ forwardExtras(ta, component, [
111
+ 'name', 'defaultValue', 'cols', 'textareaRows',
112
+ 'showClearButton', 'readOnly', 'maxLength', 'cssClass',
113
+ 'suffix', 'prefix', 'floatLabelType', 'placeholder', 'disabled'
114
+ ]);
104
115
  ref(ta);
105
116
  return ta;
106
117
  }
@@ -132,6 +143,11 @@ export var renderFormField = function (options) {
132
143
  target.setAttribute('name', component.id);
133
144
  ntb.appendTo(target);
134
145
  }
146
+ forwardExtras(ntb, component, [
147
+ 'name', 'defaultValue', 'decimals', 'currency', 'numberFormat',
148
+ 'step', 'minValue', 'maxValue', 'readOnly', 'showClearButton',
149
+ 'cssClass', 'suffix', 'prefix', 'floatLabelType', 'placeholder', 'disabled'
150
+ ]);
135
151
  ref(ntb);
136
152
  return ntb;
137
153
  }
@@ -156,6 +172,10 @@ export var renderFormField = function (options) {
156
172
  applyHostId(target, component.name);
157
173
  cb.appendTo(target);
158
174
  }
175
+ forwardExtras(cb, component, [
176
+ 'name', 'checked', 'indeterminate',
177
+ 'checkboxLabelPosition', 'cssClass'
178
+ ]);
159
179
  ref(cb);
160
180
  return cb;
161
181
  }
@@ -185,6 +205,11 @@ export var renderFormField = function (options) {
185
205
  if (target) {
186
206
  applyHostId(target, component.name);
187
207
  }
208
+ forwardExtras(group_1, component, [
209
+ 'options', 'enableRtl', 'disabled', 'readOnly', 'required',
210
+ 'checkboxLabelPosition', 'layoutDirection', 'gap', 'size',
211
+ 'cssClass', 'htmlAttributes'
212
+ ]);
188
213
  group_1.render(target);
189
214
  return group_1;
190
215
  }
@@ -194,12 +219,11 @@ export var renderFormField = function (options) {
194
219
  id: component.name + "-group",
195
220
  className: "e-radio-group " + errorClass
196
221
  });
197
- var rbInstances = [];
222
+ var rbInstances_1 = [];
198
223
  radioOptions.forEach(function (option, idx) {
199
224
  var optionValue = option;
200
225
  var optionText = option;
201
226
  var row = createElement('div');
202
- row.style.marginBottom = '8px';
203
227
  wrapper_1.appendChild(row);
204
228
  var rbHost = createElement('input', {
205
229
  id: component.name + "_" + idx + "_" + optionValue,
@@ -228,11 +252,16 @@ export var renderFormField = function (options) {
228
252
  if (options.ref && typeof options.ref === 'function') {
229
253
  options.ref(rb, idx);
230
254
  }
255
+ rbInstances_1.push(rb);
256
+ forwardExtras(rb, component, [
257
+ 'name', 'options', 'disabled', 'defaultValue',
258
+ 'fieldLabelPosition', 'cssClass', 'htmlAttributes'
259
+ ]);
231
260
  });
232
261
  if (target) {
233
262
  target.appendChild(wrapper_1);
234
263
  }
235
- return rbInstances;
264
+ return rbInstances_1;
236
265
  }
237
266
  case 'dropdown': {
238
267
  // Same Vanilla TS fetch adaptation as checkboxGroup (see above).
@@ -262,6 +291,12 @@ export var renderFormField = function (options) {
262
291
  if (target) {
263
292
  ddl_1.appendTo(target);
264
293
  }
294
+ forwardExtras(ddl_1, component, [
295
+ 'name', 'defaultValue', 'showClearButton', 'readOnly',
296
+ 'enableVirtualization', 'popupHeight', 'popupWidth',
297
+ 'cssClass', 'htmlAttributes', 'floatLabelType', 'placeholder',
298
+ 'disabled', 'fields', 'groupBy'
299
+ ]);
265
300
  ref(ddl_1);
266
301
  return ddl_1;
267
302
  }
@@ -283,6 +318,14 @@ export var renderFormField = function (options) {
283
318
  if (target) {
284
319
  ms_1.appendTo(target);
285
320
  }
321
+ forwardExtras(ms_1, component, [
322
+ 'name', 'defaultValue', 'placeholder', 'showClearButton',
323
+ 'readOnly', 'allowCustomValue', 'addTagOnBlur',
324
+ 'delimiterChar', 'showSelectAll', 'visualMode', 'selectAllText',
325
+ 'unSelectAllText', 'showDropDownIcon', 'enableVirtualization',
326
+ 'popupHeight', 'popupWidth', 'cssClass', 'htmlAttributes',
327
+ 'floatLabelType', 'disabled'
328
+ ]);
286
329
  ref(ms_1);
287
330
  return ms_1;
288
331
  }
@@ -292,6 +335,13 @@ export var renderFormField = function (options) {
292
335
  if (target) {
293
336
  dp.appendTo(target);
294
337
  }
338
+ forwardExtras(dp, component, [
339
+ 'name', 'defaultValue', 'format', 'readOnly', 'showClearButton',
340
+ 'showTodayButton', 'calendarMode', 'dayHeaderFormat',
341
+ 'depth', 'start', 'firstDayOfWeek', 'minDate', 'maxDate',
342
+ 'cssClass', 'htmlAttributes', 'floatLabelType', 'placeholder',
343
+ 'disabled'
344
+ ]);
295
345
  ref(dp);
296
346
  return dp;
297
347
  }
@@ -301,6 +351,13 @@ export var renderFormField = function (options) {
301
351
  if (target) {
302
352
  dtp.appendTo(target);
303
353
  }
354
+ forwardExtras(dtp, component, [
355
+ 'name', 'defaultValue', 'format', 'showClearButton',
356
+ 'showTodayButton', 'dayHeaderFormat', 'depth', 'start', 'step',
357
+ 'minDate', 'maxDate', 'minTime', 'maxTime', 'readOnly',
358
+ 'cssClass', 'htmlAttributes', 'floatLabelType', 'placeholder',
359
+ 'disabled'
360
+ ]);
304
361
  ref(dtp);
305
362
  return dtp;
306
363
  }
@@ -309,6 +366,12 @@ export var renderFormField = function (options) {
309
366
  if (target) {
310
367
  tp.appendTo(target);
311
368
  }
369
+ forwardExtras(tp, component, [
370
+ 'name', 'defaultValue', 'format', 'showClearButton',
371
+ 'step', 'minTime', 'maxTime', 'readOnly',
372
+ 'cssClass', 'htmlAttributes', 'floatLabelType', 'placeholder',
373
+ 'disabled'
374
+ ]);
312
375
  ref(tp);
313
376
  return tp;
314
377
  }
@@ -317,6 +380,13 @@ export var renderFormField = function (options) {
317
380
  if (target) {
318
381
  drp.appendTo(target);
319
382
  }
383
+ forwardExtras(drp, component, [
384
+ 'name', 'defaultValue', 'format', 'separator',
385
+ 'showClearButton', 'minDate', 'maxDate', 'readOnly',
386
+ 'dayHeaderFormat', 'depth', 'start',
387
+ 'cssClass', 'htmlAttributes', 'floatLabelType', 'placeholder',
388
+ 'disabled'
389
+ ]);
320
390
  ref(drp);
321
391
  return drp;
322
392
  }
@@ -338,6 +408,10 @@ export var renderFormField = function (options) {
338
408
  applyHostId(target, component.name);
339
409
  sw.appendTo(target);
340
410
  }
411
+ forwardExtras(sw, component, [
412
+ 'name', 'defaultValue', 'checked', 'onLabel', 'offLabel',
413
+ 'cssClass', 'htmlAttributes'
414
+ ]);
341
415
  ref(sw);
342
416
  return sw;
343
417
  }
@@ -350,7 +424,8 @@ export var renderFormField = function (options) {
350
424
  alignItems: 'center',
351
425
  gap: component.gap || '8px',
352
426
  justifyContent: mapPositionToJustifyContent(component.position),
353
- width: component.width || undefined
427
+ width: component.width || undefined,
428
+ maxWidth: '100%'
354
429
  };
355
430
  var groupContainer_1 = createElement('div', {
356
431
  id: component.name,
@@ -396,6 +471,11 @@ export var renderFormField = function (options) {
396
471
  if (target) {
397
472
  target.appendChild(groupContainer_1);
398
473
  }
474
+ for (var bi = 0; bi < btnInstances_1.length; bi++) {
475
+ forwardExtras(btnInstances_1[bi], component, [
476
+ 'buttonsGroups', 'gap', 'position', 'size', 'cssClass'
477
+ ]);
478
+ }
399
479
  return btnInstances_1;
400
480
  }
401
481
  // Fallback: single ButtonComponent when no group is configured.
@@ -440,6 +520,10 @@ export var renderFormField = function (options) {
440
520
  if (target) {
441
521
  target.appendChild(container);
442
522
  }
523
+ forwardExtras(btnInst, component, [
524
+ 'buttonType', 'style', 'iconCss', 'iconPosition',
525
+ 'cssClass', 'position', 'size', 'disabled'
526
+ ]);
443
527
  return btnInst;
444
528
  }
445
529
  case 'splitButton': {
@@ -450,7 +534,8 @@ export var renderFormField = function (options) {
450
534
  component.style === 'error' ? 'e-danger' : '',
451
535
  component.style === 'success' ? 'e-success' : '',
452
536
  component.style === 'warning' ? 'e-warning' : '',
453
- component.cssClass || ''
537
+ component.cssClass || '',
538
+ component.size === 'Small' ? ' e-small' : component.size === 'Bigger' ? ' e-bigger' : ''
454
539
  ].filter(Boolean).join(' ') || undefined;
455
540
  var splitButtonContainerStyle = {
456
541
  display: 'flex',
@@ -495,12 +580,17 @@ export var renderFormField = function (options) {
495
580
  if (target) {
496
581
  target.appendChild(container);
497
582
  }
583
+ forwardExtras(sb, component, [
584
+ 'options', 'style', 'iconCss', 'iconPosition',
585
+ 'cssClass', 'position', 'disabled'
586
+ ]);
498
587
  ref(sb);
499
588
  return sb;
500
589
  }
501
590
  case 'signature': {
502
591
  var canvas = createElement('canvas', {
503
- id: component.name
592
+ id: component.name,
593
+ className: cssClass
504
594
  });
505
595
  var sig = new Signature({
506
596
  enableRtl: enableRtl,
@@ -517,6 +607,9 @@ export var renderFormField = function (options) {
517
607
  sig.appendTo(canvas);
518
608
  target.appendChild(canvas);
519
609
  }
610
+ forwardExtras(sig, component, [
611
+ 'backgroundColor', 'strokeColor', 'maxValue', 'minValue', 'velocity'
612
+ ]);
520
613
  ref(sig);
521
614
  return sig;
522
615
  }
@@ -542,6 +635,11 @@ export var renderFormField = function (options) {
542
635
  target.setAttribute('name', component.id);
543
636
  rt.appendTo(target);
544
637
  }
638
+ forwardExtras(rt, component, [
639
+ 'defaultValue', 'allowReset', 'itemsCount', 'minValue',
640
+ 'precision', 'readOnly', 'showRatingTooltip',
641
+ 'showRatingLabel', 'ratingLabelPosition', 'cssClass', 'labelPosition'
642
+ ]);
545
643
  ref(rt);
546
644
  return rt;
547
645
  }
@@ -562,6 +660,10 @@ export var renderFormField = function (options) {
562
660
  applyHostId(target, component.name);
563
661
  cp.appendTo(target);
564
662
  }
663
+ forwardExtras(cp, component, [
664
+ 'defaultValue', 'enableOpacity', 'showButtons',
665
+ 'showRecentColors', 'showNoColor', 'cssClass'
666
+ ]);
565
667
  ref(cp);
566
668
  return cp;
567
669
  }
@@ -570,6 +672,12 @@ export var renderFormField = function (options) {
570
672
  if (target) {
571
673
  im.appendTo(target);
572
674
  }
675
+ forwardExtras(im, component, [
676
+ 'name', 'defaultValue', 'mask', 'promptChar',
677
+ 'customCharacters', 'readOnly', 'showClearButton',
678
+ 'cssClass', 'htmlAttributes', 'suffix', 'prefix',
679
+ 'floatLabelType', 'placeholder', 'disabled'
680
+ ]);
573
681
  ref(im);
574
682
  return im;
575
683
  }
@@ -591,6 +699,10 @@ export var renderFormField = function (options) {
591
699
  applyHostId(target, component.name);
592
700
  sl.appendTo(target);
593
701
  }
702
+ forwardExtras(sl, component, [
703
+ 'defaultValue', 'minValue', 'maxValue', 'step',
704
+ 'cssClass', 'readOnly', 'showButtons'
705
+ ]);
594
706
  ref(sl);
595
707
  return sl;
596
708
  }
@@ -619,32 +731,35 @@ export var renderFormField = function (options) {
619
731
  applyHostId(target, component.name);
620
732
  up.appendTo(target);
621
733
  }
734
+ forwardExtras(up, component, [
735
+ 'allowExtensions', 'saveUrl', 'removeUrl',
736
+ 'buttons', 'maxValue', 'minValue',
737
+ 'allowMultiple', 'showFileList',
738
+ 'htmlAttributes', 'cssClass'
739
+ ]);
622
740
  ref(up);
623
741
  return up;
624
742
  }
625
743
  case 'imageEditor': {
626
- var ieHost = createElement('div', {
627
- id: component.name,
628
- attrs: { 'data-field': component.id }
744
+ var ie = new ImageEditor({
745
+ locale: locale,
746
+ enableRtl: enableRtl,
747
+ disabled: component.disabled,
748
+ cssClass: cssClass,
749
+ height: (component.height != null ? component.height : '350px').toString(),
750
+ width: (component.width != null ? component.width : '100%').toString(),
751
+ editComplete: function () { return onChange(component.name); },
752
+ fileOpened: function () { return onChange(component.name); }
629
753
  });
630
- var ie_1;
631
- setTimeout(function () {
632
- ie_1 = new ImageEditor({
633
- locale: locale,
634
- enableRtl: enableRtl,
635
- disabled: component.disabled,
636
- cssClass: cssClass,
637
- height: (component.height != null ? component.height : '350px').toString(),
638
- width: (component.width != null ? component.width : '100%').toString(),
639
- editComplete: function () { return onChange(component.name); },
640
- fileOpened: function () { return onChange(component.name); }
641
- }, "#" + component.name);
642
- }, 100);
643
754
  if (target) {
644
- target.appendChild(ieHost);
755
+ applyHostId(target, component.name);
756
+ ie.appendTo(target);
645
757
  }
646
- ref(ie_1);
647
- return ie_1;
758
+ forwardExtras(ie, component, [
759
+ 'height', 'width', 'cssClass'
760
+ ]);
761
+ ref(ie);
762
+ return ie;
648
763
  }
649
764
  case 'message': {
650
765
  var msg = new Message({
@@ -661,6 +776,10 @@ export var renderFormField = function (options) {
661
776
  applyHostId(target, component.name);
662
777
  msg.appendTo(target);
663
778
  }
779
+ forwardExtras(msg, component, [
780
+ 'severity', 'messageType', 'variant', 'content',
781
+ 'showCloseIcon', 'showIcon', 'cssClass'
782
+ ]);
664
783
  ref(msg);
665
784
  return msg;
666
785
  }
@@ -715,6 +834,11 @@ export var renderFormField = function (options) {
715
834
  gridComp_1.isInitialized = true;
716
835
  initializedGrids.add(component.id);
717
836
  }
837
+ forwardExtras(gridComp_1, component, [
838
+ 'dataSource', 'columns', 'conditions', 'height', 'width',
839
+ 'pageSize', 'allowPaging', 'allowFiltering', 'allowAdding',
840
+ 'allowEditing', 'allowDeleting', 'cssClass'
841
+ ]);
718
842
  if (typeof options.ref === 'function') {
719
843
  options.ref(gridComp_1);
720
844
  }
@@ -794,6 +918,11 @@ export var renderFormField = function (options) {
794
918
  });
795
919
  RichTextEditor.Inject(Toolbar, Link, HtmlEditor, QuickToolbar, RTEImage, Count, Table, EmojiPicker, PasteCleanup, SlashMenu, CodeBlock, ClipBoardCleanup, AutoFormat, ImportExport);
796
920
  rte.appendTo(target);
921
+ forwardExtras(rte, component, [
922
+ 'enableImportFromWord', 'enableExportToWord', 'enableExportToPdf',
923
+ 'defaultValue', 'placeholder', 'readOnly', 'maxLength', 'cssClass',
924
+ 'height', 'width', 'htmlAttributes', 'toolbarSettings'
925
+ ]);
797
926
  ref(rte);
798
927
  return rte;
799
928
  }
@@ -1,6 +1,5 @@
1
1
  /**
2
- * Form renderer modules
2
+ * Form Renderer all modules.
3
3
  */
4
- export * from './form-renderer';
5
- export * from './form-renderer-model';
6
- export * from './types/form-schema';
4
+ export * from './form-renderer/index';
5
+ export * from './common/index';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Form renderer modules
2
+ * Form Renderer all modules.
3
3
  */
4
- export * from './form-renderer';
5
- export * from './types/form-schema';
4
+ export * from './form-renderer/index';
5
+ export * from './common/index';
package/src/index.d.ts CHANGED
@@ -1,4 +1 @@
1
- /**
2
- * Form Renderer all modules.
3
- */
4
- export * from './form-renderer/index';
1
+ export * from './form-renderer';
package/src/index.js CHANGED
@@ -1,4 +1 @@
1
- /**
2
- * Form Renderer all modules.
3
- */
4
- export * from './form-renderer/index';
1
+ export * from './form-renderer';
package/common.d.ts DELETED
@@ -1,4 +0,0 @@
1
- /**
2
- * common
3
- */
4
- export * from './src/common/index';
package/common.js DELETED
@@ -1,4 +0,0 @@
1
- /**
2
- * common
3
- */
4
- export * from './src/common/index';
@@ -1,65 +0,0 @@
1
- import { Component, Property, Event, EmitType, NotifyPropertyChanges, enableRipple, createElement, isNullOrUndefined, L10n, getComponent, addClass } from '@syncfusion/ej2-base';import { Tab, Toolbar } from '@syncfusion/ej2-navigations';import { Tooltip } from '@syncfusion/ej2-popups';import { FormValidator, Signature } from '@syncfusion/ej2-inputs';import { FormLayout, FormNode, Schema } from './types/form-schema';import { renderFormField } from './render-form-field';import { mergeSchema, UnifiedSchema } from '../common/json-converter';import { UniversalJsonParser } from '../common/parser';import { VALIDATION_REGEX, formatDateValues, splitWidths } from '../common/utils';import StaticHtmlRenderer from '../common/static-html-renderer';import { ConditionalRuleEngine, FormValueType } from '../common/conditional-rule-engine';import { ExpressionEngine, DependencyGraph } from '../common/expressions/expression-engine';import { MinMaxRuleEngine } from '../common/minmax-rule-engine';import { CustomValidationEngine } from '../common/custom-validation-engine';import { RichTextEditor } from '@syncfusion/ej2-richtexteditor';import { ImageEditor } from '@syncfusion/ej2-image-editor';
2
- import {SubmitEventArgs,ChangeEventArgs,ButtonClickEventArgs,FailureEventArgs} from "./form-renderer";
3
- import {ComponentModel} from '@syncfusion/ej2-base';
4
-
5
- /**
6
- * Interface for a class FormRenderer
7
- */
8
- export interface FormRendererModel extends ComponentModel{
9
-
10
- /**
11
- * Specifies the data schema of the form that needs to be rendered in the Form Renderer.
12
- */
13
- schema?: Schema | string | Record<string, unknown> | null;
14
-
15
- /**
16
- * Specifies the form layout configuration (only applies when layout details are NOT available in the schema). Determines how form fields are arranged in columns.
17
- *
18
- * @default 'SingleColumn'
19
- */
20
- layout?: FormLayout | string;
21
-
22
- /**
23
- * Specifies the CSS class name to apply to the root form container element. This property supports space-separated multiple classes.
24
- *
25
- * @default ""
26
- */
27
- className?: string;
28
-
29
- /**
30
- * Event triggered when the form is submitted.
31
- * This event provides form data and validation status in the event argument.
32
- *
33
- * @event
34
- */
35
- submit?: EmitType<SubmitEventArgs>;
36
-
37
- /**
38
- * Event triggered when any form field value changes. Fired on user input for tracked fields.
39
- *
40
- * @event
41
- */
42
- change?: EmitType<ChangeEventArgs>;
43
-
44
- /**
45
- * Event triggered when a button in the form is clicked. Applies to all button types (button, submit, splitButton).
46
- *
47
- * @event
48
- */
49
- buttonClick?: EmitType<ButtonClickEventArgs>;
50
-
51
- /**
52
- * Event triggered when an error is thrown in the form rendering or schema parsing.
53
- *
54
- * @event
55
- */
56
- failure?: EmitType<FailureEventArgs>;
57
-
58
- /**
59
- * Event triggered when all form elements are rendered and ready for interaction. Useful for performing post-render initialization or setup.
60
- *
61
- * @event
62
- */
63
- created?: EmitType<Object>;
64
-
65
- }