@acorex/platform 19.2.8 → 19.2.9

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 (88) hide show
  1. package/common/lib/app/application.types.d.ts +7 -0
  2. package/common/lib/utils/index.d.ts +2 -0
  3. package/common/lib/utils/regional-util.service.d.ts +15 -0
  4. package/common/lib/utils/regional.types.d.ts +55 -0
  5. package/fesm2022/acorex-platform-common.mjs +4 -2
  6. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-core.mjs +35 -16
  8. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-layout-builder.mjs +74 -23
  10. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-layout-designer.mjs +27 -26
  12. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-layout-entity.mjs +97 -51
  14. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  15. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Bl9f4Rtk.mjs → acorex-platform-themes-default-entity-master-create-view.component-BK8BItxL.mjs} +2 -2
  16. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BK8BItxL.mjs.map +1 -0
  17. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-B4aBmc5H.mjs → acorex-platform-themes-default-entity-master-single-view.component-BGUrwL2P.mjs} +3 -3
  18. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BGUrwL2P.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-themes-default-setting-page.component-CN2NCgUv.mjs +74 -0
  20. package/fesm2022/acorex-platform-themes-default-setting-page.component-CN2NCgUv.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-themes-default-setting-view.component-CsCug3Vu.mjs +71 -0
  22. package/fesm2022/acorex-platform-themes-default-setting-view.component-CsCug3Vu.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-themes-default.mjs +22 -12
  24. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-themes-shared.mjs +10 -1
  26. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  27. package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-B90if8wb.mjs → acorex-platform-widgets-tabular-data-edit-popup.component-BiCinIok.mjs} +13 -11
  28. package/fesm2022/acorex-platform-widgets-tabular-data-edit-popup.component-BiCinIok.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-widgets.mjs +356 -384
  30. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  31. package/layout/builder/lib/builder/datasource-provider.service.d.ts +3 -1
  32. package/layout/builder/lib/builder/widget.types.d.ts +2 -0
  33. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -0
  34. package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +3 -0
  35. package/layout/entity/lib/entity-master-create.viewmodel.d.ts +3 -1
  36. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +1 -1
  37. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +0 -2
  38. package/layout/entity/lib/widgets/widget-selector/widget-selector-widget-edit.component.d.ts +0 -2
  39. package/layout/setting/lib/setting.viewmodel.d.ts +3 -0
  40. package/package.json +5 -5
  41. package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +3 -0
  42. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +3 -0
  43. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +3 -0
  44. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +3 -0
  45. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +3 -0
  46. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +6 -0
  47. package/themes/default/lib/layouts/root-layout/root-layout.module.d.ts +2 -1
  48. package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +3 -0
  49. package/themes/default/lib/pages/theme-palette-preview/theme-palette-preview.page.d.ts +3 -0
  50. package/themes/shared/lib/components/slots/theme-slot.component.d.ts +3 -0
  51. package/themes/shared/lib/setting.keys.d.ts +2 -1
  52. package/themes/shared/lib/theme.service.d.ts +3 -0
  53. package/widgets/lib/properties/data-source.props.d.ts +3 -0
  54. package/widgets/lib/properties/editors.props.d.ts +0 -1
  55. package/widgets/lib/properties/index.d.ts +1 -0
  56. package/widgets/lib/widgets/charts/bar-chart/bar-chart-widget-edit.component.d.ts +0 -5
  57. package/widgets/lib/widgets/charts/bar-chart/bar-chart.type.d.ts +1 -1
  58. package/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.d.ts +0 -2
  59. package/widgets/lib/widgets/editors/color/color-box-widget-edit.component.d.ts +0 -2
  60. package/widgets/lib/widgets/editors/contact/contact-widget-edit.component.d.ts +0 -4
  61. package/widgets/lib/widgets/editors/date-time/date-time-box-widget-edit.component.d.ts +0 -2
  62. package/widgets/lib/widgets/editors/email/email-box-widget-edit.component.d.ts +0 -4
  63. package/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.d.ts +0 -2
  64. package/widgets/lib/widgets/editors/link/link-widget-edit.component.d.ts +0 -4
  65. package/widgets/lib/widgets/editors/number/number-box-widget-edit.component.d.ts +0 -2
  66. package/widgets/lib/widgets/editors/phone/phone-box-widget-edit.component.d.ts +0 -4
  67. package/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.d.ts +0 -2
  68. package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +0 -2
  69. package/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.d.ts +0 -2
  70. package/widgets/lib/widgets/editors/tabular-data/tabular-data-edit-popup.component.d.ts +0 -1
  71. package/widgets/lib/widgets/editors/text/text-box-widget-edit.component.d.ts +0 -2
  72. package/widgets/lib/widgets/validations/base-validation/base-validation.d.ts +3 -2
  73. package/widgets/lib/widgets/validations/between-validation/between-validation-widget-edit.component.d.ts +1 -7
  74. package/widgets/lib/widgets/validations/callback-validation/callback-validation-widget-edit.component.d.ts +1 -7
  75. package/widgets/lib/widgets/validations/equal-validation/equal-validation-widget-edit.component.d.ts +1 -7
  76. package/widgets/lib/widgets/validations/greater-than-validation/greater-than-validation-widget-edit.component.d.ts +1 -7
  77. package/widgets/lib/widgets/validations/less-than-validation/less-than-validation-widget-edit.component.d.ts +1 -7
  78. package/widgets/lib/widgets/validations/max-length-validation/max-length-validation-widget-edit.component.d.ts +1 -7
  79. package/widgets/lib/widgets/validations/min-length-validation/min-length-validation-widget-edit.component.d.ts +1 -7
  80. package/widgets/lib/widgets/validations/regular-expression-validation/regular-expression-validation-widget-edit.component.d.ts +1 -7
  81. package/widgets/lib/widgets/validations/required-validation/required-validation-widget-edit.component.d.ts +1 -7
  82. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Bl9f4Rtk.mjs.map +0 -1
  83. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B4aBmc5H.mjs.map +0 -1
  84. package/fesm2022/acorex-platform-themes-default-setting-page.component-BERYnJnp.mjs +0 -74
  85. package/fesm2022/acorex-platform-themes-default-setting-page.component-BERYnJnp.mjs.map +0 -1
  86. package/fesm2022/acorex-platform-themes-default-setting-view.component-BagAWM4W.mjs +0 -71
  87. package/fesm2022/acorex-platform-themes-default-setting-view.component-BagAWM4W.mjs.map +0 -1
  88. package/fesm2022/acorex-platform-widgets-tabular-data-edit-popup.component-B90if8wb.mjs.map +0 -1
@@ -128,6 +128,57 @@ const AXP_DATA_SOURCE_PROPERTY = {
128
128
  },
129
129
  visible: true,
130
130
  };
131
+ const AXP_DATA_SOURCE_VALUE_FIELD = {
132
+ name: 'valueField',
133
+ title: 'Value Field',
134
+ group: AXP_DATA_PROPERTY_GROUP,
135
+ schema: {
136
+ dataType: 'string',
137
+ interface: {
138
+ name: 'valueField',
139
+ path: 'options.valueField',
140
+ type: AXPWidgetsCatalog.text,
141
+ options: {
142
+ hasClearButton: true,
143
+ },
144
+ triggers: [
145
+ {
146
+ event: `{{ events.context('options.dataSource') }}`,
147
+ action: `{{ context.set('options.valueField',context.eval("options.dataSource").valueField); }}`,
148
+ },
149
+ ],
150
+ },
151
+ },
152
+ visible: false,
153
+ };
154
+ const AXP_DATA_SOURCE_TEXT_FIELD = {
155
+ name: 'textField',
156
+ title: 'Text Field',
157
+ group: AXP_DATA_PROPERTY_GROUP,
158
+ schema: {
159
+ dataType: 'string',
160
+ interface: {
161
+ name: 'textField',
162
+ path: 'options.textField',
163
+ type: AXPWidgetsCatalog.text,
164
+ options: {
165
+ hasClearButton: true,
166
+ },
167
+ triggers: [
168
+ {
169
+ event: `{{ events.context('options.dataSource') }}`,
170
+ action: `{{ context.set('options.textField',context.eval("options.dataSource").textField); }}`,
171
+ },
172
+ ],
173
+ },
174
+ },
175
+ visible: false,
176
+ };
177
+ const AXP_DATA_SOURCE_PROPERTIES = [
178
+ AXP_DATA_SOURCE_PROPERTY,
179
+ AXP_DATA_SOURCE_VALUE_FIELD,
180
+ AXP_DATA_SOURCE_TEXT_FIELD
181
+ ];
131
182
 
132
183
  const AXP_NAME_PROPERTY = createStringProperty({
133
184
  name: 'name',
@@ -240,20 +291,6 @@ const AXP_BG_COLOR_PROPERTY = {
240
291
  visible: true,
241
292
  };
242
293
 
243
- const AXP_VALIDATION_PROPERTY = {
244
- name: 'validationRules',
245
- title: 'Validation Rules',
246
- group: AXP_DATA_PROPERTY_GROUP,
247
- schema: {
248
- dataType: 'array',
249
- defaultValue: [],
250
- interface: {
251
- type: AXPWidgetsCatalog.text,
252
- path: 'validationRules',
253
- },
254
- },
255
- visible: true,
256
- };
257
294
  const AXP_CONTENT_PROPERTY = createStringProperty({
258
295
  name: 'content',
259
296
  title: 'Content',
@@ -917,6 +954,142 @@ const AXP_TABLE_COLUMN_HEIGHT_PROPERTY = {
917
954
  visible: false,
918
955
  };
919
956
 
957
+ const AXP_REQUIRED_VALIDATION_PROPERTY = {
958
+ name: 'requiredValidation',
959
+ title: 'Required',
960
+ group: AXP_VALIDATION_PROPERTY_GROUP,
961
+ schema: {
962
+ dataType: 'object',
963
+ interface: {
964
+ name: 'requiredValidation',
965
+ path: 'options.validations.required',
966
+ type: AXPWidgetsCatalog.requiredValidation,
967
+ defaultValue: false,
968
+ },
969
+ },
970
+ visible: true,
971
+ };
972
+ const AXP_MIN_LENGTH_VALIDATION_PROPERTY = {
973
+ name: 'minLengthValidation',
974
+ title: 'Minimum Length',
975
+ group: AXP_VALIDATION_PROPERTY_GROUP,
976
+ schema: {
977
+ dataType: 'object',
978
+ interface: {
979
+ name: 'minLengthValidation',
980
+ path: 'options.validations.minLength',
981
+ type: AXPWidgetsCatalog.minLengthValidation,
982
+ defaultValue: null,
983
+ },
984
+ },
985
+ visible: true,
986
+ };
987
+ const AXP_MAX_LENGTH_VALIDATION_PROPERTY = {
988
+ name: 'maxLengthValidation',
989
+ title: 'Maximum Length',
990
+ group: AXP_VALIDATION_PROPERTY_GROUP,
991
+ schema: {
992
+ dataType: 'object',
993
+ interface: {
994
+ name: 'maxLengthValidation',
995
+ path: 'options.validations.maxLength',
996
+ type: AXPWidgetsCatalog.maxLengthValidation,
997
+ defaultValue: null,
998
+ },
999
+ },
1000
+ visible: true,
1001
+ };
1002
+ const AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY = {
1003
+ name: 'regularExpressionValidation',
1004
+ title: 'Regular Expression',
1005
+ group: AXP_VALIDATION_PROPERTY_GROUP,
1006
+ schema: {
1007
+ dataType: 'object',
1008
+ interface: {
1009
+ name: 'regularExpressionValidation',
1010
+ path: 'options.validations.regex',
1011
+ type: AXPWidgetsCatalog.regularExpressionValidation,
1012
+ defaultValue: false,
1013
+ },
1014
+ },
1015
+ visible: true,
1016
+ };
1017
+ const AXP_LESS_THAN_VALIDATION_PROPERTY = {
1018
+ name: 'lessThanValidation',
1019
+ title: 'Less Than',
1020
+ group: AXP_VALIDATION_PROPERTY_GROUP,
1021
+ schema: {
1022
+ dataType: 'object',
1023
+ interface: {
1024
+ name: 'lessThanValidation',
1025
+ path: 'options.validations.lessThan',
1026
+ type: AXPWidgetsCatalog.lessThanValidation,
1027
+ defaultValue: false,
1028
+ },
1029
+ },
1030
+ visible: true,
1031
+ };
1032
+ const AXP_GREATER_THAN_VALIDATION_PROPERTY = {
1033
+ name: 'greaterThanValidation',
1034
+ title: 'Greater Than',
1035
+ group: AXP_VALIDATION_PROPERTY_GROUP,
1036
+ schema: {
1037
+ dataType: 'object',
1038
+ interface: {
1039
+ name: 'greaterThanValidation',
1040
+ path: 'options.validations.greaterThan',
1041
+ type: AXPWidgetsCatalog.greaterThanValidation,
1042
+ defaultValue: false,
1043
+ },
1044
+ },
1045
+ visible: true,
1046
+ };
1047
+ const AXP_BETWEEN_VALIDATION_PROPERTY = {
1048
+ name: 'betweenValidation',
1049
+ title: 'Between',
1050
+ group: AXP_VALIDATION_PROPERTY_GROUP,
1051
+ schema: {
1052
+ dataType: 'object',
1053
+ interface: {
1054
+ name: 'betweenValidation',
1055
+ path: 'options.validations.between',
1056
+ type: AXPWidgetsCatalog.betweenValidation,
1057
+ defaultValue: false,
1058
+ },
1059
+ },
1060
+ visible: true,
1061
+ };
1062
+ const AXP_EQUAL_VALIDATION_PROPERTY = {
1063
+ name: 'equalValidation',
1064
+ title: 'Equal',
1065
+ group: AXP_VALIDATION_PROPERTY_GROUP,
1066
+ schema: {
1067
+ dataType: 'object',
1068
+ interface: {
1069
+ name: 'equalValidation',
1070
+ path: 'options.validations.equal',
1071
+ type: AXPWidgetsCatalog.equalValidation,
1072
+ defaultValue: false,
1073
+ },
1074
+ },
1075
+ visible: true,
1076
+ };
1077
+ const AXP_CALLBACK_VALIDATION_PROPERTY = {
1078
+ name: 'callbackValidation',
1079
+ title: 'Callback',
1080
+ group: AXP_VALIDATION_PROPERTY_GROUP,
1081
+ schema: {
1082
+ dataType: 'object',
1083
+ interface: {
1084
+ name: 'callbackValidation',
1085
+ path: 'options.validations.callback',
1086
+ type: AXPWidgetsCatalog.callbackValidation,
1087
+ defaultValue: false,
1088
+ },
1089
+ },
1090
+ visible: true,
1091
+ };
1092
+
920
1093
  class AXPButtonWidgetViewComponent extends AXPWidgetComponent {
921
1094
  constructor() {
922
1095
  super(...arguments);
@@ -1013,7 +1186,6 @@ class AXPCheckBoxWidgetEditComponent extends AXPWidgetComponent {
1013
1186
  this.disabled = computed(() => this.options()['disabled']);
1014
1187
  this.readonly = computed(() => this.options()['readonly']);
1015
1188
  this.label = computed(() => this.options()['label']);
1016
- this.validationRules = computed(() => this.options()['validationRules'] ?? []);
1017
1189
  }
1018
1190
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPCheckBoxWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1019
1191
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPCheckBoxWidgetEditComponent, isStandalone: true, selector: "axp-checkbox-widget-edit", usesInheritance: true, ngImport: i0, template: `
@@ -1084,7 +1256,7 @@ const AXPCheckBoxWidget = {
1084
1256
  AXP_LABEL_PROPERTY,
1085
1257
  AXP_READONLY_PROPERTY,
1086
1258
  AXP_DISABLED_PROPERTY,
1087
- AXP_VALIDATION_PROPERTY,
1259
+ // AXP_VALIDATION_PROPERTY,
1088
1260
  booleanDefaultProperty(),
1089
1261
  ],
1090
1262
  components: {
@@ -1252,7 +1424,6 @@ class AXPContactWidgetEditComponent extends AXPWidgetComponent {
1252
1424
  },
1253
1425
  });
1254
1426
  this.validationService = inject(AXValidationService);
1255
- this._validationRules = [];
1256
1427
  this.itemToArray = (item) => {
1257
1428
  if (typeof item === 'object')
1258
1429
  return {
@@ -1342,12 +1513,6 @@ class AXPContactWidgetEditComponent extends AXPWidgetComponent {
1342
1513
  }
1343
1514
  }
1344
1515
  }
1345
- get validationRules() {
1346
- return this._validationRules;
1347
- }
1348
- set validationRules(v) {
1349
- this._validationRules = v;
1350
- }
1351
1516
  valueToArray() {
1352
1517
  const value = this.getValue();
1353
1518
  if (Array.isArray(value)) {
@@ -1388,7 +1553,7 @@ class AXPContactWidgetEditComponent extends AXPWidgetComponent {
1388
1553
  [ngClass]="generateClasses('value')"
1389
1554
  [disabled]="disabled()"
1390
1555
  >
1391
- @for (validation of validationRules; track $index) {
1556
+ @for (validation of validationRules(); track $index) {
1392
1557
  <ax-validation-rule
1393
1558
  [rule]="validation.rule"
1394
1559
  [message]="validation.options?.message"
@@ -1450,7 +1615,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
1450
1615
  [ngClass]="generateClasses('value')"
1451
1616
  [disabled]="disabled()"
1452
1617
  >
1453
- @for (validation of validationRules; track $index) {
1618
+ @for (validation of validationRules(); track $index) {
1454
1619
  <ax-validation-rule
1455
1620
  [rule]="validation.rule"
1456
1621
  [message]="validation.options?.message"
@@ -1687,11 +1852,12 @@ const AXPContactWidget = {
1687
1852
  visible: true,
1688
1853
  },
1689
1854
  AXP_DISABLED_PROPERTY,
1690
- AXP_VALIDATION_PROPERTY,
1691
1855
  AXP_ALLOW_MULTIPLE_PROPERTY,
1692
1856
  AXP_HAS_LABEL_PROPERTY,
1693
1857
  AXP_HAS_ICON_PROPERTY,
1694
1858
  AXP_PLACEHOLDER_PROPERTY,
1859
+ //
1860
+ AXP_REQUIRED_VALIDATION_PROPERTY,
1695
1861
  ],
1696
1862
  components: {
1697
1863
  view: {
@@ -1794,7 +1960,6 @@ class AXPDateTimeBoxWidgetEditComponent extends AXPWidgetComponent {
1794
1960
  this.disabled = computed(() => this.options()['disabled']);
1795
1961
  this.placeholder = computed(() => this.options()['placeholder']);
1796
1962
  this.internalValue = computed(() => Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]);
1797
- this.validationRules = computed(() => this.options()['validationRules'] ?? []);
1798
1963
  this.calendarFormat = computed(() => {
1799
1964
  if (this.format() === 'date')
1800
1965
  return 'dd/MM/yyyy';
@@ -2046,9 +2211,12 @@ const AXPDateTimeBoxWidget = {
2046
2211
  AXP_DATE_FORMAT_PROPERTY,
2047
2212
  AXP_READONLY_PROPERTY,
2048
2213
  AXP_DISABLED_PROPERTY,
2049
- AXP_VALIDATION_PROPERTY,
2050
2214
  AXP_PLACEHOLDER_PROPERTY,
2051
2215
  cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),
2216
+ //
2217
+ AXP_REQUIRED_VALIDATION_PROPERTY,
2218
+ AXP_LESS_THAN_VALIDATION_PROPERTY,
2219
+ AXP_GREATER_THAN_VALIDATION_PROPERTY,
2052
2220
  ],
2053
2221
  components: {
2054
2222
  view: {
@@ -2194,7 +2362,6 @@ class AXPEmailBoxWidgetEditComponent extends AXPWidgetComponent {
2194
2362
  this.hasLabel = computed(() => this.options()["hasLabel"] ?? true);
2195
2363
  this.lables = computed(() => this.options()["lables"] ?? ['Primary', 'Secondary']);
2196
2364
  this.internalValue = computed(() => this.getValueAsArrayOfObjects());
2197
- this._validationRules = [];
2198
2365
  this.convertItem = (item, e) => {
2199
2366
  if (typeof item === 'object') {
2200
2367
  return { ...item, value: e.value };
@@ -2204,12 +2371,6 @@ class AXPEmailBoxWidgetEditComponent extends AXPWidgetComponent {
2204
2371
  }
2205
2372
  };
2206
2373
  }
2207
- get validationRules() {
2208
- return this._validationRules;
2209
- }
2210
- set validationRules(v) {
2211
- this._validationRules = v;
2212
- }
2213
2374
  getValueAsArrayOfObjects() {
2214
2375
  const value = this.getValue();
2215
2376
  if (Array.isArray(value)) {
@@ -2268,7 +2429,7 @@ class AXPEmailBoxWidgetEditComponent extends AXPWidgetComponent {
2268
2429
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
2269
2430
  [class.lg:!ax-col-end-12]="!hasLabel()"
2270
2431
  >
2271
- @for (validation of validationRules; track $index) {
2432
+ @for (validation of validationRules(); track $index) {
2272
2433
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
2273
2434
  }
2274
2435
  <ax-validation-rule [rule]="'email'"></ax-validation-rule>
@@ -2314,10 +2475,9 @@ class AXPEmailBoxWidgetEditComponent extends AXPWidgetComponent {
2314
2475
  type="text"
2315
2476
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
2316
2477
  [class.lg:!ax-col-end-13]="!hasLabel()">
2317
- @for (validation of validationRules; track $index) {
2478
+ @for (validation of validationRules(); track $index) {
2318
2479
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
2319
2480
  }
2320
- <ax-validation-rule [rule]="'email'"></ax-validation-rule>
2321
2481
  </ax-text-box>
2322
2482
  @if(hasLabel()){
2323
2483
  <ax-select-box
@@ -2350,7 +2510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
2350
2510
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
2351
2511
  [class.lg:!ax-col-end-12]="!hasLabel()"
2352
2512
  >
2353
- @for (validation of validationRules; track $index) {
2513
+ @for (validation of validationRules(); track $index) {
2354
2514
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
2355
2515
  }
2356
2516
  <ax-validation-rule [rule]="'email'"></ax-validation-rule>
@@ -2396,10 +2556,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
2396
2556
  type="text"
2397
2557
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
2398
2558
  [class.lg:!ax-col-end-13]="!hasLabel()">
2399
- @for (validation of validationRules; track $index) {
2559
+ @for (validation of validationRules(); track $index) {
2400
2560
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
2401
2561
  }
2402
- <ax-validation-rule [rule]="'email'"></ax-validation-rule>
2403
2562
  </ax-text-box>
2404
2563
  @if(hasLabel()){
2405
2564
  <ax-select-box
@@ -2545,9 +2704,10 @@ const AXPEmailBoxWidget = {
2545
2704
  AXP_DATA_PATH_PROPERTY,
2546
2705
  AXP_ALLOW_MULTIPLE_PROPERTY,
2547
2706
  AXP_DISABLED_PROPERTY,
2548
- AXP_VALIDATION_PROPERTY,
2549
2707
  AXP_PLACEHOLDER_PROPERTY,
2550
2708
  AXP_HAS_LABEL_PROPERTY,
2709
+ //
2710
+ AXP_REQUIRED_VALIDATION_PROPERTY,
2551
2711
  ],
2552
2712
  components: {
2553
2713
  view: {
@@ -2609,7 +2769,6 @@ class AXPLargeTextWidgetEditComponent extends AXPWidgetComponent {
2609
2769
  this.disabled = computed(() => this.options()['disabled']);
2610
2770
  this.clearButton = computed(() => this.options()['clearButton'] ?? true);
2611
2771
  this.placeholder = computed(() => this.options()['placeholder']);
2612
- this.validationRules = computed(() => this.options()['validationRules'] ?? []);
2613
2772
  }
2614
2773
  get __class() {
2615
2774
  const cls = {};
@@ -2746,10 +2905,13 @@ const AXPLargeTextWidget = {
2746
2905
  AXP_NAME_PROPERTY,
2747
2906
  AXP_DATA_PATH_PROPERTY,
2748
2907
  AXP_DISABLED_PROPERTY,
2749
- AXP_VALIDATION_PROPERTY,
2750
2908
  AXP_PLACEHOLDER_PROPERTY,
2751
2909
  largeTextDefaultProperty(),
2752
2910
  //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '300px' } }),
2911
+ AXP_REQUIRED_VALIDATION_PROPERTY,
2912
+ AXP_MIN_LENGTH_VALIDATION_PROPERTY,
2913
+ AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY,
2914
+ AXP_MAX_LENGTH_VALIDATION_PROPERTY,
2753
2915
  ],
2754
2916
  components: {
2755
2917
  view: {
@@ -2917,7 +3079,6 @@ class AXPLinkWidgetEditComponent extends AXPWidgetComponent {
2917
3079
  },
2918
3080
  });
2919
3081
  this.internalValue = computed(() => this.getValueAsArrayOfObjects());
2920
- this._validationRules = [];
2921
3082
  this.convertItem = (item, e) => {
2922
3083
  if (typeof item === 'object')
2923
3084
  return { ...item, value: e.value };
@@ -2929,12 +3090,6 @@ class AXPLinkWidgetEditComponent extends AXPWidgetComponent {
2929
3090
  super.ngOnInit();
2930
3091
  this.getValueAsArrayOfObjects();
2931
3092
  }
2932
- get validationRules() {
2933
- return this._validationRules;
2934
- }
2935
- set validationRules(v) {
2936
- this._validationRules = v;
2937
- }
2938
3093
  getValueAsArrayOfObjects() {
2939
3094
  const value = this.getValue();
2940
3095
  if (Array.isArray(value)) {
@@ -3071,10 +3226,9 @@ class AXPLinkWidgetEditComponent extends AXPWidgetComponent {
3071
3226
  class="ax-col-start-1 ax-col-end-13"
3072
3227
  [ngClass]="generateClasses('url', 'multiple')"
3073
3228
  >
3074
- @for (validation of validationRules; track $index) {
3229
+ @for (validation of validationRules(); track $index) {
3075
3230
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
3076
3231
  }
3077
- <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
3078
3232
  </ax-text-box>
3079
3233
  @if(hasTitle()){
3080
3234
  <ax-text-box
@@ -3125,10 +3279,9 @@ class AXPLinkWidgetEditComponent extends AXPWidgetComponent {
3125
3279
  placeholder="Link"
3126
3280
  class="ax-col-start-1 ax-col-end-13"
3127
3281
  >
3128
- @for (validation of validationRules; track $index) {
3282
+ @for (validation of validationRules(); track $index) {
3129
3283
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
3130
3284
  }
3131
- <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
3132
3285
  </ax-text-box>
3133
3286
  @if(hasTitle()){
3134
3287
  <ax-text-box
@@ -3167,10 +3320,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
3167
3320
  class="ax-col-start-1 ax-col-end-13"
3168
3321
  [ngClass]="generateClasses('url', 'multiple')"
3169
3322
  >
3170
- @for (validation of validationRules; track $index) {
3323
+ @for (validation of validationRules(); track $index) {
3171
3324
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
3172
3325
  }
3173
- <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
3174
3326
  </ax-text-box>
3175
3327
  @if(hasTitle()){
3176
3328
  <ax-text-box
@@ -3221,10 +3373,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
3221
3373
  placeholder="Link"
3222
3374
  class="ax-col-start-1 ax-col-end-13"
3223
3375
  >
3224
- @for (validation of validationRules; track $index) {
3376
+ @for (validation of validationRules(); track $index) {
3225
3377
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
3226
3378
  }
3227
- <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
3228
3379
  </ax-text-box>
3229
3380
  @if(hasTitle()){
3230
3381
  <ax-text-box
@@ -3417,7 +3568,6 @@ class AXPNumberBoxWidgetEditComponent extends AXPWidgetComponent {
3417
3568
  this.maxValue = computed(() => this.options()['maxValue']);
3418
3569
  this.seprator = computed(() => this.options()['seprator'] ?? null);
3419
3570
  this.placeholder = computed(() => this.options()['placeholder']);
3420
- this.validationRules = computed(() => this.options()["validationRules"] ?? []);
3421
3571
  this.internalValue = computed(() => Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]);
3422
3572
  }
3423
3573
  handleValueChange(e, i) {
@@ -3634,12 +3784,15 @@ const AXPNumberBoxWidget = {
3634
3784
  AXP_ALLOW_MULTIPLE_PROPERTY,
3635
3785
  AXP_HAS_CLEAR_BUTTON_PROPERTY,
3636
3786
  AXP_DISABLED_PROPERTY,
3637
- AXP_VALIDATION_PROPERTY,
3638
3787
  AXP_PLACEHOLDER_PROPERTY,
3639
3788
  numberDefaultProperty(),
3640
3789
  numberMinValueProperty(),
3641
3790
  numberMaxValueProperty(),
3642
3791
  cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),
3792
+ //
3793
+ AXP_REQUIRED_VALIDATION_PROPERTY,
3794
+ AXP_LESS_THAN_VALIDATION_PROPERTY,
3795
+ AXP_GREATER_THAN_VALIDATION_PROPERTY,
3643
3796
  ],
3644
3797
  components: {
3645
3798
  view: {
@@ -3759,8 +3912,13 @@ class AXPPasswordBoxWidgetEditComponent extends AXPWidgetComponent {
3759
3912
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPPasswordBoxWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3760
3913
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPPasswordBoxWidgetEditComponent, isStandalone: true, selector: "ng-component", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
3761
3914
  <ax-password-box [ngModel]="getValue()" [disabled]="disabled()" (onValueChanged)="handleValueChanged($event)">
3762
- <ax-validation-rule rule="required"></ax-validation-rule>
3763
- @if(hasClearButton()){
3915
+ @for (validation of validationRules(); track $index) {
3916
+ <ax-validation-rule
3917
+ [rule]="validation.rule"
3918
+ [message]="validation.options?.message"
3919
+ [options]="validation.options"
3920
+ ></ax-validation-rule>
3921
+ } @if(hasClearButton()){
3764
3922
  <ax-clear-button></ax-clear-button>
3765
3923
  }
3766
3924
  </ax-password-box>
@@ -3771,15 +3929,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
3771
3929
  args: [{
3772
3930
  template: `
3773
3931
  <ax-password-box [ngModel]="getValue()" [disabled]="disabled()" (onValueChanged)="handleValueChanged($event)">
3774
- <ax-validation-rule rule="required"></ax-validation-rule>
3775
- @if(hasClearButton()){
3932
+ @for (validation of validationRules(); track $index) {
3933
+ <ax-validation-rule
3934
+ [rule]="validation.rule"
3935
+ [message]="validation.options?.message"
3936
+ [options]="validation.options"
3937
+ ></ax-validation-rule>
3938
+ } @if(hasClearButton()){
3776
3939
  <ax-clear-button></ax-clear-button>
3777
3940
  }
3778
3941
  </ax-password-box>
3779
3942
  `,
3780
3943
  changeDetection: ChangeDetectionStrategy.OnPush,
3781
3944
  imports: [CommonModule, FormsModule, AXDecoratorModule, AXPasswordBoxModule, AXValidationModule, AXFormModule],
3782
- inputs: []
3945
+ inputs: [],
3783
3946
  }]
3784
3947
  }], propDecorators: { __class: [{
3785
3948
  type: HostBinding,
@@ -3894,12 +4057,13 @@ const AXPPasswordBoxWidget = {
3894
4057
  type: 'editor',
3895
4058
  properties: [
3896
4059
  AXP_NAME_PROPERTY,
3897
- AXP_VALIDATION_PROPERTY,
3898
4060
  AXP_DATA_PATH_PROPERTY,
3899
4061
  AXP_HAS_CLEAR_BUTTON_PROPERTY,
3900
4062
  AXP_DISABLED_PROPERTY,
3901
4063
  AXP_HAS_COPY_ICON_PROPERTY,
3902
4064
  AXP_HAS_EYE_ICON_PROPERTY,
4065
+ //
4066
+ AXP_REQUIRED_VALIDATION_PROPERTY,
3903
4067
  ],
3904
4068
  components: {
3905
4069
  view: {
@@ -4044,13 +4208,6 @@ class AXPPhoneBoxWidgetEditComponent extends AXPWidgetComponent {
4044
4208
  this.hasLabel = computed(() => this.options()['hasLabel']);
4045
4209
  this.phoneLabels = computed(() => this.options()['phoneLabels'] || ['Mobile', 'Home', 'Work', 'Other']);
4046
4210
  this.internalValue = computed(() => this.getValueAsArrayOfObjects());
4047
- this._validationRules = [];
4048
- }
4049
- get validationRules() {
4050
- return this._validationRules;
4051
- }
4052
- set validationRules(v) {
4053
- this._validationRules = v;
4054
4211
  }
4055
4212
  getValueAsArrayOfObjects() {
4056
4213
  const value = this.getValue();
@@ -4105,7 +4262,7 @@ class AXPPhoneBoxWidgetEditComponent extends AXPWidgetComponent {
4105
4262
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
4106
4263
  [class.lg:!ax-col-end-12]="!hasLabel()"
4107
4264
  >
4108
- @for (validation of validationRules; track $index) {
4265
+ @for (validation of validationRules(); track $index) {
4109
4266
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
4110
4267
  }
4111
4268
  </ax-text-box>
@@ -4136,7 +4293,7 @@ class AXPPhoneBoxWidgetEditComponent extends AXPWidgetComponent {
4136
4293
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
4137
4294
  [class.lg:!ax-col-end-13]="!hasLabel"
4138
4295
  >
4139
- @for (validation of validationRules; track $index) {
4296
+ @for (validation of validationRules(); track $index) {
4140
4297
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
4141
4298
  }
4142
4299
  </ax-text-box>
@@ -4178,7 +4335,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
4178
4335
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
4179
4336
  [class.lg:!ax-col-end-12]="!hasLabel()"
4180
4337
  >
4181
- @for (validation of validationRules; track $index) {
4338
+ @for (validation of validationRules(); track $index) {
4182
4339
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
4183
4340
  }
4184
4341
  </ax-text-box>
@@ -4209,7 +4366,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
4209
4366
  class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-8"
4210
4367
  [class.lg:!ax-col-end-13]="!hasLabel"
4211
4368
  >
4212
- @for (validation of validationRules; track $index) {
4369
+ @for (validation of validationRules(); track $index) {
4213
4370
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
4214
4371
  }
4215
4372
  </ax-text-box>
@@ -4365,8 +4522,8 @@ const AXPPhoneBoxWidget = {
4365
4522
  properties: [
4366
4523
  AXP_HAS_LABEL_PROPERTY,
4367
4524
  AXP_ALLOW_MULTIPLE_PROPERTY,
4368
- AXP_VALIDATION_PROPERTY,
4369
4525
  AXP_TABLE_COLUMN_WIDTH_PROPERTY,
4526
+ AXP_REQUIRED_VALIDATION_PROPERTY,
4370
4527
  ],
4371
4528
  components: {
4372
4529
  view: {
@@ -4440,10 +4597,9 @@ class AXPRichTextWidgetEditComponent extends AXPWidgetComponent {
4440
4597
  super(...arguments);
4441
4598
  this.placeholder = computed(() => this.options()['placeholder']);
4442
4599
  this.disabled = computed(() => this.options()['disabled']);
4443
- this.minLineCount = computed(() => this.options()['minLineCount'] ?? 3);
4444
- this.maxLineCount = computed(() => this.options()['maxLineCount'] ?? 3);
4600
+ this.minLineCount = computed(() => this.options()['minLineCount'] ?? this.options()['maxLineCount'] ?? 3);
4601
+ this.maxLineCount = computed(() => this.options()['maxLineCount'] ?? this.options()['minLineCount'] ?? 3);
4445
4602
  this.isFitLine = computed(() => this.options()['fitLineCount'] ?? false);
4446
- this.validationRules = computed(() => this.options()['validationRules'] ?? []);
4447
4603
  }
4448
4604
  setWysiwyg(e) {
4449
4605
  if (e) {
@@ -4659,9 +4815,11 @@ const AXPRichTextWidget = {
4659
4815
  AXP_DATA_PATH_PROPERTY,
4660
4816
  AXP_ALLOW_MULTIPLE_PROPERTY,
4661
4817
  AXP_DISABLED_PROPERTY,
4662
- // AXP_VALIDATION_PROPERTY,
4663
4818
  AXP_PLACEHOLDER_PROPERTY,
4664
4819
  //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '300px' } }),
4820
+ AXP_REQUIRED_VALIDATION_PROPERTY,
4821
+ AXP_MIN_LENGTH_VALIDATION_PROPERTY,
4822
+ AXP_MAX_LENGTH_VALIDATION_PROPERTY,
4665
4823
  ],
4666
4824
  components: {
4667
4825
  view: {
@@ -4745,7 +4903,6 @@ class AXPSelectBoxWidgetEditComponent extends AXPDataListWidgetComponent {
4745
4903
  constructor() {
4746
4904
  super(...arguments);
4747
4905
  this.widgetsConfigs = inject(STRATEGY_CONFIG_TOKEN);
4748
- this.validationRules = computed(() => this.options()['validationRules'] ?? []);
4749
4906
  this.multiple = computed(() => this.options()['multiple']);
4750
4907
  this.disabled = computed(() => this.options()['disabled']);
4751
4908
  this.placeholder = computed(() => this.options()['placeholder'] ?? '');
@@ -4784,7 +4941,7 @@ class AXPSelectBoxWidgetEditComponent extends AXPDataListWidgetComponent {
4784
4941
  clear() {
4785
4942
  this.selectbox?.reset(true);
4786
4943
  setTimeout(() => {
4787
- this.selectbox?.refresh();
4944
+ this.refresh();
4788
4945
  }, 0);
4789
4946
  }
4790
4947
  get __class() {
@@ -4811,7 +4968,17 @@ class AXPSelectBoxWidgetEditComponent extends AXPDataListWidgetComponent {
4811
4968
  } @if(hasClearButton()) {
4812
4969
  <ax-clear-button></ax-clear-button>
4813
4970
  } @for (validation of validationRules(); track $index) {
4814
- <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
4971
+ <ax-validation-rule
4972
+ [rule]="validation.rule"
4973
+ [message]="validation.options?.message"
4974
+ [options]="validation.options"
4975
+ ></ax-validation-rule>
4976
+ } @for (validation of validationRules(); track $index) {
4977
+ <ax-validation-rule
4978
+ [rule]="validation.rule"
4979
+ [message]="validation.options?.message"
4980
+ [options]="validation.options"
4981
+ ></ax-validation-rule>
4815
4982
  }
4816
4983
  </ax-select-box>
4817
4984
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3$2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "selectedItems", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i3$1.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i5$2.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
@@ -4837,7 +5004,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
4837
5004
  } @if(hasClearButton()) {
4838
5005
  <ax-clear-button></ax-clear-button>
4839
5006
  } @for (validation of validationRules(); track $index) {
4840
- <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
5007
+ <ax-validation-rule
5008
+ [rule]="validation.rule"
5009
+ [message]="validation.options?.message"
5010
+ [options]="validation.options"
5011
+ ></ax-validation-rule>
5012
+ } @for (validation of validationRules(); track $index) {
5013
+ <ax-validation-rule
5014
+ [rule]="validation.rule"
5015
+ [message]="validation.options?.message"
5016
+ [options]="validation.options"
5017
+ ></ax-validation-rule>
4841
5018
  }
4842
5019
  </ax-select-box>
4843
5020
  `,
@@ -5144,7 +5321,6 @@ class AXPSelectionListWidgetEditComponent extends AXPDataListWidgetComponent {
5144
5321
  });
5145
5322
  this.dataSource().refresh();
5146
5323
  });
5147
- this.validationRules = computed(() => this.options()['validationRules'] ?? []);
5148
5324
  }
5149
5325
  handleValueChange(e) {
5150
5326
  if (e.isUserInteraction) {
@@ -5320,17 +5496,15 @@ const AXPSelectionListWidget = {
5320
5496
  group: AXP_WIDGETS_EDITOR_GROUP,
5321
5497
  defaultFilterWidgetName: 'select-filter',
5322
5498
  properties: [
5323
- AXP_DATA_SOURCE_PROPERTY,
5499
+ ...AXP_DATA_SOURCE_PROPERTIES,
5324
5500
  AXP_NAME_PROPERTY,
5325
5501
  AXP_DATA_PATH_PROPERTY,
5326
- AXP_VALUE_FIELD_PROPERTY,
5327
- AXP_TEXT_FIELD_PROPERTY,
5328
5502
  AXP_ALLOW_MULTIPLE_PROPERTY,
5329
5503
  AXP_DIRECTION_PROPERTY,
5330
5504
  AXP_DISABLED_PROPERTY,
5331
5505
  AXP_READONLY_PROPERTY,
5332
- AXP_VALIDATION_PROPERTY,
5333
5506
  //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),
5507
+ AXP_REQUIRED_VALIDATION_PROPERTY,
5334
5508
  ],
5335
5509
  type: 'editor',
5336
5510
  components: {
@@ -5409,7 +5583,6 @@ class AXPTextBoxWidgetEditComponent extends AXPWidgetComponent {
5409
5583
  this.hasClearButton = computed(() => this.options()['hasClearButton']);
5410
5584
  this.disabled = computed(() => this.options()['disabled']);
5411
5585
  this.placeholder = computed(() => this.options()['placeholder']);
5412
- this.validationRules = computed(() => this.options()['validationRules'] ?? []);
5413
5586
  this.internalValue = computed(() => Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]);
5414
5587
  }
5415
5588
  //eff = effect(() => console.log(this.options()));
@@ -5608,142 +5781,6 @@ var textBoxWidgetPrint_component = /*#__PURE__*/Object.freeze({
5608
5781
  AXPTextBoxWidgetPrintComponent: AXPTextBoxWidgetPrintComponent
5609
5782
  });
5610
5783
 
5611
- const AXP_REQUIRED_VALIDATION_PROPERTY = {
5612
- name: 'requiredValidation',
5613
- title: 'Required',
5614
- group: AXP_VALIDATION_PROPERTY_GROUP,
5615
- schema: {
5616
- dataType: 'object',
5617
- interface: {
5618
- name: 'requiredValidation',
5619
- path: 'options.requiredValidation',
5620
- type: AXPWidgetsCatalog.requiredValidation,
5621
- defaultValue: false,
5622
- },
5623
- },
5624
- visible: true,
5625
- };
5626
- const AXP_MIN_LENGTH_VALIDATION_PROPERTY = {
5627
- name: 'minLengthValidation',
5628
- title: 'Minimum Length',
5629
- group: AXP_VALIDATION_PROPERTY_GROUP,
5630
- schema: {
5631
- dataType: 'object',
5632
- interface: {
5633
- name: 'minLengthValidation',
5634
- path: 'options.minLengthValidation',
5635
- type: AXPWidgetsCatalog.minLengthValidation,
5636
- defaultValue: false,
5637
- },
5638
- },
5639
- visible: true,
5640
- };
5641
- const AXP_MAX_LENGTH_VALIDATION_PROPERTY = {
5642
- name: 'maxLengthValidation',
5643
- title: 'Maximum Length',
5644
- group: AXP_VALIDATION_PROPERTY_GROUP,
5645
- schema: {
5646
- dataType: 'object',
5647
- interface: {
5648
- name: 'maxLengthValidation',
5649
- path: 'options.maxLengthValidation',
5650
- type: AXPWidgetsCatalog.maxLengthValidation,
5651
- defaultValue: false,
5652
- },
5653
- },
5654
- visible: true,
5655
- };
5656
- const AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY = {
5657
- name: 'regularExpressionValidation',
5658
- title: 'Regular Expression',
5659
- group: AXP_VALIDATION_PROPERTY_GROUP,
5660
- schema: {
5661
- dataType: 'object',
5662
- interface: {
5663
- name: 'regularExpressionValidation',
5664
- path: 'options.regularExpressionValidation',
5665
- type: AXPWidgetsCatalog.regularExpressionValidation,
5666
- defaultValue: false,
5667
- },
5668
- },
5669
- visible: true,
5670
- };
5671
- const AXP_LESS_THAN_VALIDATION_PROPERTY = {
5672
- name: 'lessThanValidation',
5673
- title: 'Less Than',
5674
- group: AXP_VALIDATION_PROPERTY_GROUP,
5675
- schema: {
5676
- dataType: 'object',
5677
- interface: {
5678
- name: 'lessThanValidation',
5679
- path: 'options.lessThanValidation',
5680
- type: AXPWidgetsCatalog.lessThanValidation,
5681
- defaultValue: false,
5682
- },
5683
- },
5684
- visible: true,
5685
- };
5686
- const AXP_GREATER_THAN_VALIDATION_PROPERTY = {
5687
- name: 'greaterThanValidation',
5688
- title: 'Greater Than',
5689
- group: AXP_VALIDATION_PROPERTY_GROUP,
5690
- schema: {
5691
- dataType: 'object',
5692
- interface: {
5693
- name: 'greaterThanValidation',
5694
- path: 'options.greaterThanValidation',
5695
- type: AXPWidgetsCatalog.greaterThanValidation,
5696
- defaultValue: false,
5697
- },
5698
- },
5699
- visible: true,
5700
- };
5701
- const AXP_BETWEEN_VALIDATION_PROPERTY = {
5702
- name: 'betweenValidation',
5703
- title: 'Between',
5704
- group: AXP_VALIDATION_PROPERTY_GROUP,
5705
- schema: {
5706
- dataType: 'object',
5707
- interface: {
5708
- name: 'betweenValidation',
5709
- path: 'options.betweenValidation',
5710
- type: AXPWidgetsCatalog.betweenValidation,
5711
- defaultValue: false,
5712
- },
5713
- },
5714
- visible: true,
5715
- };
5716
- const AXP_EQUAL_VALIDATION_PROPERTY = {
5717
- name: 'equalValidation',
5718
- title: 'Equal',
5719
- group: AXP_VALIDATION_PROPERTY_GROUP,
5720
- schema: {
5721
- dataType: 'object',
5722
- interface: {
5723
- name: 'equalValidation',
5724
- path: 'options.equalValidation',
5725
- type: AXPWidgetsCatalog.equalValidation,
5726
- defaultValue: false,
5727
- },
5728
- },
5729
- visible: true,
5730
- };
5731
- const AXP_CALLBACK_VALIDATION_PROPERTY = {
5732
- name: 'callbackValidation',
5733
- title: 'Callback',
5734
- group: AXP_VALIDATION_PROPERTY_GROUP,
5735
- schema: {
5736
- dataType: 'object',
5737
- interface: {
5738
- name: 'callbackValidation',
5739
- path: 'options.callbackValidation',
5740
- type: AXPWidgetsCatalog.callbackValidation,
5741
- defaultValue: false,
5742
- },
5743
- },
5744
- visible: true,
5745
- };
5746
-
5747
5784
  const AXPTextBoxWidget = {
5748
5785
  name: 'text-editor',
5749
5786
  title: 'Text Box',
@@ -5760,15 +5797,11 @@ const AXPTextBoxWidget = {
5760
5797
  AXP_PLACEHOLDER_PROPERTY,
5761
5798
  AXP_HAS_CLEAR_BUTTON_PROPERTY,
5762
5799
  plainTextDefaultProperty(),
5800
+ //
5763
5801
  AXP_REQUIRED_VALIDATION_PROPERTY,
5764
5802
  AXP_MIN_LENGTH_VALIDATION_PROPERTY,
5765
5803
  AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY,
5766
5804
  AXP_MAX_LENGTH_VALIDATION_PROPERTY,
5767
- AXP_LESS_THAN_VALIDATION_PROPERTY,
5768
- AXP_GREATER_THAN_VALIDATION_PROPERTY,
5769
- AXP_BETWEEN_VALIDATION_PROPERTY,
5770
- AXP_EQUAL_VALIDATION_PROPERTY,
5771
- AXP_CALLBACK_VALIDATION_PROPERTY,
5772
5805
  //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),
5773
5806
  ],
5774
5807
  components: {
@@ -6717,7 +6750,6 @@ const AXPFileBoxWidget = {
6717
6750
  properties: [
6718
6751
  AXP_NAME_PROPERTY,
6719
6752
  AXP_DATA_PATH_PROPERTY,
6720
- AXP_VALIDATION_PROPERTY,
6721
6753
  AXP_ALLOW_MULTIPLE_PROPERTY,
6722
6754
  AXP_DOWNLOADABLE_PROPERTY,
6723
6755
  AXP_DESCRIPTION_PROPERTY,
@@ -7709,7 +7741,12 @@ const AXPSignatureWidget = {
7709
7741
  icon: 'fa-solid fa-file-signature',
7710
7742
  group: AXP_WIDGETS_ADVANCE_GROUP,
7711
7743
  type: 'editor',
7712
- properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_VALIDATION_PROPERTY],
7744
+ properties: [
7745
+ AXP_NAME_PROPERTY,
7746
+ AXP_DATA_PATH_PROPERTY,
7747
+ AXP_DISABLED_PROPERTY,
7748
+ AXP_REQUIRED_VALIDATION_PROPERTY
7749
+ ],
7713
7750
  components: {
7714
7751
  view: {
7715
7752
  component: () => Promise.resolve().then(function () { return signaturePadWidgetView_component; }).then((c) => c.AXPSignatureWidgetViewComponent),
@@ -11569,6 +11606,11 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11569
11606
  initializeChart() {
11570
11607
  const chartValue = this.data();
11571
11608
  const { width, height, margin } = this.getChartDimensions(chartValue.options);
11609
+ // Clear existing SVG if it exists
11610
+ if (this.svg) {
11611
+ this.svg.selectAll('*').remove();
11612
+ }
11613
+ // Create SVG
11572
11614
  this.svg = this.d3.select(this.chartEl().nativeElement).append('svg').attr('width', width).attr('height', height);
11573
11615
  this.drawChart(chartValue);
11574
11616
  }
@@ -11583,10 +11625,7 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11583
11625
  this.addTooltips(data, x, y, options);
11584
11626
  }
11585
11627
  if (options.enableLegend) {
11586
- this.addLegend(data, width, margin, options);
11587
- }
11588
- if (options.enableZoom) {
11589
- this.addZoom();
11628
+ this.addLegend(data, width, height, margin, options);
11590
11629
  }
11591
11630
  if (options.enableExport) {
11592
11631
  this.addExportButton();
@@ -11594,28 +11633,39 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11594
11633
  }
11595
11634
  updateChart(chartValue) {
11596
11635
  const { data, options } = chartValue;
11597
- const { width, height, margin } = this.getChartDimensions(options);
11598
- const x = this.createXScale(data, width, margin);
11599
- const y = this.createYScale(data, height, margin);
11600
- this.updateBars(data, x, y, height, margin, options);
11601
- this.updateAxes(x, y, height, margin, options);
11602
- if (options.enableTooltip) {
11603
- this.updateTooltips(data, x, y, options);
11604
- }
11605
- if (options.enableLegend) {
11606
- this.updateLegend(data, width, margin, options);
11607
- }
11636
+ // Clear existing chart content
11637
+ this.svg.selectAll('*').remove();
11638
+ // Re-render chart with new options
11639
+ this.drawChart(chartValue);
11608
11640
  }
11609
11641
  getChartDimensions(options) {
11610
- const width = options.width || 400;
11611
- const height = options.height || 200;
11642
+ const baseWidth = options.width || 400;
11643
+ const baseHeight = options.height || 200;
11612
11644
  const margin = options.margin || { top: 20, right: 20, bottom: 30, left: 40 };
11645
+ // Reserve space for legend
11646
+ const legendSpace = 100; // 100px reserved for legend
11647
+ let width = baseWidth;
11648
+ let height = baseHeight;
11649
+ if (options.enableLegend) {
11650
+ switch (options.legendPosition) {
11651
+ case 'top-right':
11652
+ case 'top-left':
11653
+ height -= legendSpace; // Reserve space at the top
11654
+ margin.top += legendSpace;
11655
+ break;
11656
+ case 'bottom-right':
11657
+ case 'bottom-left':
11658
+ height -= legendSpace; // Reserve space at the bottom
11659
+ margin.bottom += legendSpace;
11660
+ break;
11661
+ }
11662
+ }
11613
11663
  return { width, height, margin };
11614
11664
  }
11615
11665
  createXScale(data, width, margin) {
11616
11666
  return this.d3
11617
11667
  .scaleBand()
11618
- .domain(data.map((d) => d.name)) // Use name instead of id
11668
+ .domain(data.map((d) => d.name))
11619
11669
  .range([margin.left, width - margin.right])
11620
11670
  .padding(0.1);
11621
11671
  }
@@ -11632,23 +11682,7 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11632
11682
  .data(data)
11633
11683
  .enter()
11634
11684
  .append('rect')
11635
- .attr('x', (d) => x(d.name) || 0) // Use name instead of id
11636
- .attr('y', height - margin.bottom)
11637
- .attr('width', x.bandwidth())
11638
- .attr('height', 0)
11639
- .attr('fill', (d) => d.color || options.color || 'teal')
11640
- .transition()
11641
- .duration(500)
11642
- .attr('y', (d) => y(d.value))
11643
- .attr('height', (d) => y(0) - y(d.value));
11644
- }
11645
- updateBars(data, x, y, height, margin, options) {
11646
- const bars = this.svg.selectAll('rect').data(data, (d) => d.id);
11647
- // Enter new bars
11648
- bars
11649
- .enter()
11650
- .append('rect')
11651
- .attr('x', (d) => x(d.name) || 0) // Use name instead of id
11685
+ .attr('x', (d) => x(d.name) || 0)
11652
11686
  .attr('y', height - margin.bottom)
11653
11687
  .attr('width', x.bandwidth())
11654
11688
  .attr('height', 0)
@@ -11657,23 +11691,6 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11657
11691
  .duration(500)
11658
11692
  .attr('y', (d) => y(d.value))
11659
11693
  .attr('height', (d) => y(0) - y(d.value));
11660
- // Update existing bars
11661
- bars
11662
- .transition()
11663
- .duration(500)
11664
- .attr('x', (d) => x(d.name) || 0) // Use name instead of id
11665
- .attr('y', (d) => y(d.value))
11666
- .attr('width', x.bandwidth())
11667
- .attr('height', (d) => y(0) - y(d.value))
11668
- .attr('fill', (d) => d.color || options.color || 'teal');
11669
- // Exit old bars
11670
- bars
11671
- .exit()
11672
- .transition()
11673
- .duration(500)
11674
- .attr('y', height - margin.bottom)
11675
- .attr('height', 0)
11676
- .remove();
11677
11694
  }
11678
11695
  drawAxes(x, y, height, margin, options) {
11679
11696
  const axisColor = options.axisColor || '#000';
@@ -11695,61 +11712,37 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11695
11712
  .attr('color', axisColor)
11696
11713
  .style('font-size', `${axisFontSize}px`);
11697
11714
  }
11698
- updateAxes(x, y, height, margin, options) {
11699
- const axisColor = options.axisColor || '#000';
11700
- const axisFontSize = options.axisFontSize || 12;
11701
- // Update X axis
11702
- this.svg
11703
- .select('.x-axis')
11704
- .transition()
11705
- .duration(500)
11706
- .call(this.d3.axisBottom(x).tickSizeOuter(0))
11707
- .attr('color', axisColor)
11708
- .style('font-size', `${axisFontSize}px`);
11709
- // Update Y axis
11710
- this.svg
11711
- .select('.y-axis')
11712
- .transition()
11713
- .duration(500)
11714
- .call(this.d3.axisLeft(y))
11715
- .attr('color', axisColor)
11716
- .style('font-size', `${axisFontSize}px`);
11717
- }
11718
11715
  addTooltips(data, x, y, options) {
11719
- this.tooltip = this.d3
11720
- .select('body')
11721
- .append('div')
11722
- .attr('class', 'tooltip')
11723
- .style('opacity', 0)
11724
- .style('position', 'absolute')
11725
- .style('background', options.tooltipBackground || '#fff')
11726
- .style('color', options.tooltipTextColor || '#000')
11727
- .style('padding', '5px')
11728
- .style('border-radius', '3px');
11716
+ this.tooltip = this.svg.append('g').attr('class', 'tooltip').style('opacity', 0);
11717
+ this.tooltip
11718
+ .append('rect')
11719
+ .attr('width', 80)
11720
+ .attr('height', 30)
11721
+ .attr('fill', options.tooltipBackground || '#fff')
11722
+ .attr('rx', 4)
11723
+ .attr('ry', 4);
11724
+ this.tooltip
11725
+ .append('text')
11726
+ .attr('x', 40)
11727
+ .attr('y', 20)
11728
+ .attr('text-anchor', 'middle')
11729
+ .attr('fill', options.tooltipTextColor || '#000')
11730
+ .style('font-size', '11px');
11729
11731
  this.svg
11730
11732
  .selectAll('rect')
11731
11733
  .on('mouseover', (event, d) => {
11732
- const [xPos, yPos] = this.d3.pointer(event);
11733
- this.tooltip.transition().duration(200).style('opacity', 0.9);
11734
- this.tooltip
11735
- .html(`Value: ${d.value}`)
11736
- .style('left', `${xPos + 10}px`)
11737
- .style('top', `${yPos - 10}px`);
11734
+ const barX = x(d.name) || 0;
11735
+ const barY = y(d.value);
11736
+ this.tooltip.style('opacity', 1).attr('transform', `translate(${barX + x.bandwidth() / 2 - 40},${barY - 40})`);
11737
+ this.tooltip.select('text').text(`${d.name}: ${d.value}`);
11738
11738
  })
11739
11739
  .on('mouseout', () => {
11740
- this.tooltip.transition().duration(500).style('opacity', 0);
11740
+ this.tooltip.style('opacity', 0);
11741
11741
  });
11742
11742
  }
11743
- updateTooltips(data, x, y, options) {
11744
- if (!this.tooltip) {
11745
- this.addTooltips(data, x, y, options);
11746
- }
11747
- }
11748
- addLegend(data, width, margin, options) {
11749
- const legend = this.svg
11750
- .append('g')
11751
- .attr('class', 'legend')
11752
- .attr('transform', `translate(${width - margin.right - 100}, ${margin.top})`);
11743
+ addLegend(data, width, height, margin, options) {
11744
+ const legendPosition = options.legendPosition || 'top-right';
11745
+ const legend = this.svg.append('g').attr('class', 'legend');
11753
11746
  const legendItems = legend
11754
11747
  .selectAll('.legend-item')
11755
11748
  .data(data)
@@ -11759,49 +11752,31 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11759
11752
  .attr('transform', (d, i) => `translate(0, ${i * 20})`);
11760
11753
  legendItems
11761
11754
  .append('rect')
11762
- .attr('width', 18)
11763
- .attr('height', 18)
11755
+ .attr('width', 16)
11756
+ .attr('height', 16)
11764
11757
  .attr('fill', (d) => d.color || options.color || 'teal');
11765
11758
  legendItems
11766
11759
  .append('text')
11767
11760
  .attr('x', 24)
11768
- .attr('y', 9)
11769
- .attr('dy', '.35em')
11770
- .text((d) => d.name); // Use name instead of id
11771
- }
11772
- updateLegend(data, width, margin, options) {
11773
- const legend = this.svg.select('.legend').data([data]);
11774
- const legendItems = legend.selectAll('.legend-item').data(data, (d) => d.id);
11775
- // Enter new legend items
11776
- const newLegendItems = legendItems
11777
- .enter()
11778
- .append('g')
11779
- .attr('class', 'legend-item')
11780
- .attr('transform', (d, i) => `translate(0, ${i * 20})`);
11781
- newLegendItems
11782
- .append('rect')
11783
- .attr('width', 18)
11784
- .attr('height', 18)
11785
- .attr('fill', (d) => d.color || options.color || 'teal');
11786
- newLegendItems
11787
- .append('text')
11788
- .attr('x', 24)
11789
- .attr('y', 9)
11790
- .attr('dy', '.35em')
11791
- .text((d) => d.name); // Use name instead of id
11792
- // Update existing legend items
11793
- legendItems.select('text').text((d) => d.name); // Use name instead of id
11794
- // Exit old legend items
11795
- legendItems.exit().remove();
11796
- }
11797
- addZoom() {
11798
- const zoom = this.d3
11799
- .zoom()
11800
- .scaleExtent([1, 10])
11801
- .on('zoom', (event) => {
11802
- this.svg.attr('transform', event.transform.toString());
11803
- });
11804
- this.svg.call(zoom);
11761
+ .attr('y', 12)
11762
+ .attr('fill', '#000')
11763
+ .style('font-size', '12px')
11764
+ .text((d) => d.name);
11765
+ // Position the legend
11766
+ switch (legendPosition) {
11767
+ case 'top-right':
11768
+ legend.attr('transform', `translate(${width - margin.right - 100}, ${margin.top - 80})`);
11769
+ break;
11770
+ case 'top-left':
11771
+ legend.attr('transform', `translate(${margin.left}, ${margin.top - 80})`);
11772
+ break;
11773
+ case 'bottom-right':
11774
+ legend.attr('transform', `translate(${width - margin.right - 100}, ${height - margin.bottom + 20})`);
11775
+ break;
11776
+ case 'bottom-left':
11777
+ legend.attr('transform', `translate(${margin.left}, ${height - margin.bottom + 20})`);
11778
+ break;
11779
+ }
11805
11780
  }
11806
11781
  addExportButton() {
11807
11782
  const exportButton = this.d3
@@ -11811,6 +11786,7 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11811
11786
  .style('position', 'absolute')
11812
11787
  .style('top', '10px')
11813
11788
  .style('right', '10px')
11789
+ .style('z-index', '1000')
11814
11790
  .on('click', () => {
11815
11791
  const svgElement = this.svg.node();
11816
11792
  if (svgElement) {
@@ -11836,9 +11812,6 @@ class AXPBarChartWidgetEditComponent extends AXPWidgetComponent {
11836
11812
  if (this.svg) {
11837
11813
  this.svg.selectAll('*').remove();
11838
11814
  }
11839
- if (this.tooltip) {
11840
- this.tooltip.remove();
11841
- }
11842
11815
  }
11843
11816
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPBarChartWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11844
11817
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.3", type: AXPBarChartWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "chartEl", first: true, predicate: ["chart"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `<div class="ax-flex ax-justify-center ax-items-center" #chart></div>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
@@ -12288,7 +12261,6 @@ class AXPColorBoxWidgetEditComponent extends AXPWidgetComponent {
12288
12261
  this.disabled = computed(() => this.options()["disabled"]);
12289
12262
  this.readonly = computed(() => this.options()["readonly"]);
12290
12263
  this.hasClearButton = computed(() => this.options()['hasClearButton']);
12291
- this.validationRules = computed(() => this.options()["validationRules"] ?? []);
12292
12264
  }
12293
12265
  get __class() {
12294
12266
  const cls = {};
@@ -12422,8 +12394,9 @@ const AXPColorBoxWidget = {
12422
12394
  AXP_DATA_PATH_PROPERTY,
12423
12395
  AXP_READONLY_PROPERTY,
12424
12396
  AXP_DISABLED_PROPERTY,
12425
- AXP_VALIDATION_PROPERTY,
12426
- AXP_PLACEHOLDER_PROPERTY
12397
+ AXP_PLACEHOLDER_PROPERTY,
12398
+ //
12399
+ AXP_REQUIRED_VALIDATION_PROPERTY,
12427
12400
  ],
12428
12401
  components: {
12429
12402
  designer: {
@@ -12476,9 +12449,9 @@ class AXPTabularDataEditorWidgetEditComponent extends AXPWidgetComponent {
12476
12449
  this.platform = inject(AXPlatform);
12477
12450
  }
12478
12451
  async openPopup() {
12479
- const { AXPTabularDataPopupComponent } = await import('./acorex-platform-widgets-tabular-data-edit-popup.component-B90if8wb.mjs');
12452
+ const { AXPTabularDataPopupComponent } = await import('./acorex-platform-widgets-tabular-data-edit-popup.component-BiCinIok.mjs');
12480
12453
  const popupData = await this.popupService.open(AXPTabularDataPopupComponent, {
12481
- size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',
12454
+ size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : this.columns().length > 3 ? 'lg' : 'md',
12482
12455
  header: true,
12483
12456
  closeOnBackdropClick: true,
12484
12457
  closeButton: true,
@@ -12613,7 +12586,6 @@ const AXPTableEditorWidget = {
12613
12586
  AXP_DATA_PATH_PROPERTY,
12614
12587
  AXP_ALLOW_MULTIPLE_PROPERTY,
12615
12588
  AXP_DISABLED_PROPERTY,
12616
- AXP_VALIDATION_PROPERTY,
12617
12589
  AXP_PLACEHOLDER_PROPERTY,
12618
12590
  AXP_HAS_CLEAR_BUTTON_PROPERTY,
12619
12591
  //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),
@@ -14403,5 +14375,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
14403
14375
  * Generated bundle index. Do not edit.
14404
14376
  */
14405
14377
 
14406
- export { AXPAdvancedGridItemWidget, AXPAdvancedGridItemWidgetDesignerComponent, AXPAdvancedGridItemWidgetPrintComponent, AXPAdvancedGridItemWidgetViewComponent, AXPAdvancedGridOptionsWidget, AXPAdvancedGridOptionsWidgetEditComponent, AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBarChartWidget, AXPBarChartWidgetEditComponent, AXPBetweenExpressionValidationWidget, AXPBetweenValidationWidgetEditComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCallbackValidationWidget, AXPCallbackValidationWidgetEditComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetPrintComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetFilterComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPDonutChartWidget, AXPDonutChartWidgetEditComponent, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPEqualValidationWidget, AXPEqualValidationWidgetEditComponent, AXPFileBoxWidget, AXPFileBoxWidgetColumnComponent, AXPFileBoxWidgetEditComponent, AXPFileBoxWidgetFilterComponent, AXPFileBoxWidgetPrintComponent, AXPFileBoxWidgetViewComponent, AXPFileManagementService, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPGalleryWidget, AXPGalleryWidgetColumnComponent, AXPGalleryWidgetEditComponent, AXPGalleryWidgetFilterComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGreaterThanExpressionValidationWidget, AXPGreaterThanValidationWidgetEditComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLessThanExpressionValidationWidget, AXPLessThanValidationWidgetEditComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPMaxLengthExpressionValidationWidget, AXPMaxLengthValidationWidgetEditComponent, AXPMinLengthExpressionValidationWidget, AXPMinLengthValidationWidgetEditComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPPropertyEditorHelper, AXPRegularExpressionValidationWidget, AXPRegularExpressionValidationWidgetEditComponent, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRequiredValidationWidget, AXPRequiredValidationWidgetEditComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetFilterComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent$1 as AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTY, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_ALIGN_CONTENT_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_COL_END_PROPERTY, AXP_LAYOUT_COL_SPAN_PROPERTY, AXP_LAYOUT_COL_START_PROPERTY, AXP_LAYOUT_FLEX_ALIGN_PROPERTY, AXP_LAYOUT_FLEX_DIRECTION_PROPERTY, AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY, AXP_LAYOUT_FLEX_PROPERTIES, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_FLEX_WRAP_PROPERTY, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTIES, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY, AXP_VALIDATION_PROPERTY_GROUP, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, findNonEmptyBreakpoints, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
14378
+ export { AXPAdvancedGridItemWidget, AXPAdvancedGridItemWidgetDesignerComponent, AXPAdvancedGridItemWidgetPrintComponent, AXPAdvancedGridItemWidgetViewComponent, AXPAdvancedGridOptionsWidget, AXPAdvancedGridOptionsWidgetEditComponent, AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBarChartWidget, AXPBarChartWidgetEditComponent, AXPBetweenExpressionValidationWidget, AXPBetweenValidationWidgetEditComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCallbackValidationWidget, AXPCallbackValidationWidgetEditComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetPrintComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetFilterComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPDonutChartWidget, AXPDonutChartWidgetEditComponent, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPEqualValidationWidget, AXPEqualValidationWidgetEditComponent, AXPFileBoxWidget, AXPFileBoxWidgetColumnComponent, AXPFileBoxWidgetEditComponent, AXPFileBoxWidgetFilterComponent, AXPFileBoxWidgetPrintComponent, AXPFileBoxWidgetViewComponent, AXPFileManagementService, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPGalleryWidget, AXPGalleryWidgetColumnComponent, AXPGalleryWidgetEditComponent, AXPGalleryWidgetFilterComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGreaterThanExpressionValidationWidget, AXPGreaterThanValidationWidgetEditComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLessThanExpressionValidationWidget, AXPLessThanValidationWidgetEditComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPMaxLengthExpressionValidationWidget, AXPMaxLengthValidationWidgetEditComponent, AXPMinLengthExpressionValidationWidget, AXPMinLengthValidationWidgetEditComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPPropertyEditorHelper, AXPRegularExpressionValidationWidget, AXPRegularExpressionValidationWidgetEditComponent, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRequiredValidationWidget, AXPRequiredValidationWidgetEditComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetFilterComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent$1 as AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BETWEEN_VALIDATION_PROPERTY, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_CALLBACK_VALIDATION_PROPERTY, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTIES, AXP_DATA_SOURCE_PROPERTY, AXP_DATA_SOURCE_TEXT_FIELD, AXP_DATA_SOURCE_VALUE_FIELD, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_EQUAL_VALIDATION_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_GREATER_THAN_VALIDATION_PROPERTY, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_ALIGN_CONTENT_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_COL_END_PROPERTY, AXP_LAYOUT_COL_SPAN_PROPERTY, AXP_LAYOUT_COL_START_PROPERTY, AXP_LAYOUT_FLEX_ALIGN_PROPERTY, AXP_LAYOUT_FLEX_DIRECTION_PROPERTY, AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY, AXP_LAYOUT_FLEX_PROPERTIES, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_FLEX_WRAP_PROPERTY, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTIES, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_LESS_THAN_VALIDATION_PROPERTY, AXP_MAX_LENGTH_VALIDATION_PROPERTY, AXP_MIN_LENGTH_VALIDATION_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY, AXP_REQUIRED_VALIDATION_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY_GROUP, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, findNonEmptyBreakpoints, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
14407
14379
  //# sourceMappingURL=acorex-platform-widgets.mjs.map