@sankhyalabs/ezui 2.3.13 → 2.4.0

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 (107) hide show
  1. package/dist/cjs/ez-actions-button.cjs.entry.js +1 -0
  2. package/dist/cjs/ez-button.cjs.entry.js +2 -2
  3. package/dist/cjs/ez-check.cjs.entry.js +1 -4
  4. package/dist/cjs/ez-chip.cjs.entry.js +1 -2
  5. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-combo-box.cjs.entry.js +6 -2
  7. package/dist/cjs/ez-date-input.cjs.entry.js +2 -2
  8. package/dist/cjs/ez-date-time-input.cjs.entry.js +2 -2
  9. package/dist/cjs/ez-filter-input.cjs.entry.js +2 -2
  10. package/dist/cjs/ez-form.cjs.entry.js +8 -8
  11. package/dist/cjs/ez-grid.cjs.entry.js +3 -3
  12. package/dist/cjs/ez-icon.cjs.entry.js +4 -0
  13. package/dist/cjs/ez-list.cjs.entry.js +4 -0
  14. package/dist/cjs/ez-number-input.cjs.entry.js +2 -2
  15. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  16. package/dist/cjs/ez-search.cjs.entry.js +2 -2
  17. package/dist/cjs/ez-tabselector.cjs.entry.js +5 -4
  18. package/dist/cjs/ez-text-area.cjs.entry.js +2 -2
  19. package/dist/cjs/ez-text-edit.cjs.entry.js +2 -2
  20. package/dist/cjs/ez-text-input.cjs.entry.js +4 -3
  21. package/dist/cjs/ez-time-input.cjs.entry.js +2 -2
  22. package/dist/collection/components/ez-actions-button/ez-actions-button.js +2 -1
  23. package/dist/collection/components/ez-button/ez-button.js +2 -2
  24. package/dist/collection/components/ez-check/ez-check.js +1 -4
  25. package/dist/collection/components/ez-chip/ez-chip.js +1 -2
  26. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.js +1 -1
  27. package/dist/collection/components/ez-combo-box/ez-combo-box.js +6 -2
  28. package/dist/collection/components/ez-date-input/ez-date-input.js +3 -3
  29. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +3 -3
  30. package/dist/collection/components/ez-filter-input/ez-filter-input.js +2 -2
  31. package/dist/collection/components/ez-form/ez-form.js +4 -4
  32. package/dist/collection/components/ez-form/structure/FormItem.js +1 -1
  33. package/dist/collection/components/ez-form/structure/FormSheetMetadata.js +3 -3
  34. package/dist/collection/components/ez-grid/ez-grid.js +3 -3
  35. package/dist/collection/components/ez-icon/ez-icon.js +6 -2
  36. package/dist/collection/components/ez-list/ez-list.js +4 -0
  37. package/dist/collection/components/ez-number-input/ez-number-input.js +2 -2
  38. package/dist/collection/components/ez-radio-button/ez-radio-button.js +1 -1
  39. package/dist/collection/components/ez-search/ez-search.js +2 -2
  40. package/dist/collection/components/ez-tabselector/ez-tabselector.js +5 -4
  41. package/dist/collection/components/ez-text-area/ez-text-area.js +2 -2
  42. package/dist/collection/components/ez-text-edit/ez-text-edit.js +2 -2
  43. package/dist/collection/components/ez-text-input/ez-text-input.js +4 -3
  44. package/dist/collection/components/ez-time-input/ez-time-input.js +2 -2
  45. package/dist/custom-elements/index.js +56 -46
  46. package/dist/esm/ez-actions-button.entry.js +2 -1
  47. package/dist/esm/ez-button.entry.js +2 -2
  48. package/dist/esm/ez-check.entry.js +1 -4
  49. package/dist/esm/ez-chip.entry.js +1 -2
  50. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  51. package/dist/esm/ez-combo-box.entry.js +6 -2
  52. package/dist/esm/ez-date-input.entry.js +2 -2
  53. package/dist/esm/ez-date-time-input.entry.js +2 -2
  54. package/dist/esm/ez-filter-input.entry.js +2 -2
  55. package/dist/esm/ez-form.entry.js +8 -8
  56. package/dist/esm/ez-grid.entry.js +3 -3
  57. package/dist/esm/ez-icon.entry.js +6 -2
  58. package/dist/esm/ez-list.entry.js +4 -0
  59. package/dist/esm/ez-number-input.entry.js +2 -2
  60. package/dist/esm/ez-radio-button.entry.js +1 -1
  61. package/dist/esm/ez-search.entry.js +2 -2
  62. package/dist/esm/ez-tabselector.entry.js +5 -4
  63. package/dist/esm/ez-text-area.entry.js +2 -2
  64. package/dist/esm/ez-text-edit.entry.js +2 -2
  65. package/dist/esm/ez-text-input.entry.js +4 -3
  66. package/dist/esm/ez-time-input.entry.js +2 -2
  67. package/dist/ezui/ezui.esm.js +1 -1
  68. package/dist/ezui/{p-81fb0c90.entry.js → p-01b79946.entry.js} +1 -1
  69. package/dist/ezui/p-05dbdaeb.entry.js +1 -0
  70. package/dist/ezui/{p-ccbe8272.entry.js → p-123a2bd5.entry.js} +1 -1
  71. package/dist/ezui/{p-941d9bf9.entry.js → p-1a89d3ff.entry.js} +1 -1
  72. package/dist/ezui/{p-ff5be174.entry.js → p-4c061e51.entry.js} +1 -1
  73. package/dist/ezui/p-590d9e91.entry.js +1 -0
  74. package/dist/ezui/p-5cb4b43b.entry.js +1 -0
  75. package/dist/ezui/p-6d0b9d3c.entry.js +1 -0
  76. package/dist/ezui/p-7b906805.entry.js +1 -0
  77. package/dist/ezui/p-7e496975.entry.js +1 -0
  78. package/dist/ezui/p-87ee59e8.entry.js +1 -0
  79. package/dist/ezui/p-9334a724.entry.js +1 -0
  80. package/dist/ezui/p-941e9792.entry.js +1 -0
  81. package/dist/ezui/p-9def6fd0.entry.js +1 -0
  82. package/dist/ezui/p-a2e55b33.entry.js +1 -0
  83. package/dist/ezui/p-a34b52f8.entry.js +1 -0
  84. package/dist/ezui/p-abcd17e6.entry.js +1 -0
  85. package/dist/ezui/{p-ede1328a.entry.js → p-ad5fe50b.entry.js} +1 -1
  86. package/dist/ezui/{p-72d755a8.entry.js → p-ea877274.entry.js} +1 -1
  87. package/dist/ezui/p-f2627de5.entry.js +1 -0
  88. package/dist/ezui/p-f2c4e811.entry.js +1 -0
  89. package/dist/types/components/ez-form/ez-form.d.ts +0 -1
  90. package/dist/types/components/ez-icon/ez-icon.d.ts +2 -0
  91. package/dist/types/components/ez-list/ez-list.d.ts +1 -0
  92. package/package.json +1 -1
  93. package/dist/ezui/p-1214c5ce.entry.js +0 -1
  94. package/dist/ezui/p-205fc8bc.entry.js +0 -1
  95. package/dist/ezui/p-66ebdf34.entry.js +0 -1
  96. package/dist/ezui/p-6acb7364.entry.js +0 -1
  97. package/dist/ezui/p-6bcf35fd.entry.js +0 -1
  98. package/dist/ezui/p-7cf71eb3.entry.js +0 -1
  99. package/dist/ezui/p-88d0fc06.entry.js +0 -1
  100. package/dist/ezui/p-8964287f.entry.js +0 -1
  101. package/dist/ezui/p-ac15d77e.entry.js +0 -1
  102. package/dist/ezui/p-c2ebc450.entry.js +0 -1
  103. package/dist/ezui/p-ca9a0a49.entry.js +0 -1
  104. package/dist/ezui/p-e2337c61.entry.js +0 -1
  105. package/dist/ezui/p-ec9decf2.entry.js +0 -1
  106. package/dist/ezui/p-f4d2438e.entry.js +0 -1
  107. package/dist/ezui/p-fcee02c6.entry.js +0 -1
@@ -172,6 +172,7 @@ let EzActionsButton = class {
172
172
  }
173
173
  componentDidLoad() {
174
174
  CSSVarsUtils.CSSVarsUtils.applyVarsButton(this._element, this._button);
175
+ core.ElementIDUtils.addIDInfo(this._element);
175
176
  this.controlScrollPage();
176
177
  }
177
178
  componentDidRender() {
@@ -36,8 +36,8 @@ let EzButton = class {
36
36
  core.ElementIDUtils.addIDInfo(this._element);
37
37
  }
38
38
  if (this._button) {
39
- const dataInfo = { id: 'ezButton_internal_button' };
40
- core.ElementIDUtils.addIDInfo(this._button, null, dataInfo);
39
+ const dataInfo = { id: 'embedded' };
40
+ core.ElementIDUtils.addIDInfo(this._button, 'button', dataInfo);
41
41
  }
42
42
  }
43
43
  getIconSize(sizeParam = "medium") {
@@ -44,9 +44,6 @@ let EzCheck = class {
44
44
  this._inputElem.focus();
45
45
  }
46
46
  componentDidLoad() {
47
- if (this._inputElem) {
48
- core.ElementIDUtils.addIDInfo(this._inputElem, 'input');
49
- }
50
47
  if (this._element) {
51
48
  core.ElementIDUtils.addIDInfo(this._element, 'input');
52
49
  }
@@ -70,7 +67,7 @@ let EzCheck = class {
70
67
  return ((_a = this.mode) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === CheckMode.CheckMode.SWITCH ? "switch-mode" : "regular-mode";
71
68
  }
72
69
  render() {
73
- return (index.h(index.Host, null, index.h("input", { type: "checkbox", ref: (el) => this._inputElem = el, class: this.getInputClasses(), checked: this.value === true, onChange: () => { this.changeValue(); }, indeterminate: this.indeterminate, disabled: !this.enabled }), this.label ? index.h("label", { class: this.getLabelClasses(), onClick: () => { this.changeValue(); }, title: this.label }, this.label) : undefined));
70
+ return (index.h(index.Host, null, index.h("input", { type: "checkbox", ref: (el) => this._inputElem = el, class: this.getInputClasses(), checked: this.value === true, onChange: () => { this.changeValue(); }, indeterminate: this.indeterminate, disabled: !this.enabled, "data-element-id": core.ElementIDUtils.getInternalIDInfo("input") }), this.label ? index.h("label", { class: this.getLabelClasses(), onClick: () => { this.changeValue(); }, title: this.label }, this.label) : undefined));
74
71
  }
75
72
  get _element() { return index.getElement(this); }
76
73
  static get watchers() { return {
@@ -96,8 +96,7 @@ let EzChip = class {
96
96
  if (this._containerElem) {
97
97
  this.observeValue();
98
98
  this.observeEnabled();
99
- this._containerElem.setAttribute(core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME, 'ezChip_internal_button');
100
- core.ElementIDUtils.addIDInfo(this._containerElem);
99
+ this._containerElem.setAttribute(core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME, core.ElementIDUtils.getInternalIDInfo('button'));
101
100
  }
102
101
  }
103
102
  render() {
@@ -126,7 +126,7 @@ let EzCollapsibleBox = class {
126
126
  render() {
127
127
  return (index.h("div", { class: "collapsible-box" }, index.h("div", { class: "collapsible-box__header" }, index.h("button", Object.assign({}, (!this._activeEditText ? { onClick: () => { this.showHide(); } } : null), { class: "collapsible-box__title collapsible-box__title--" + (this.headerAlign || "left") +
128
128
  (this.iconPlacement === "right" ? " collapsible-box__title--icon-right" : "") +
129
- (this.value ? " collapsible-box__title--no-margin" : "") }), index.h("ez-icon", { slot: "icon", "icon-name": "chevron-right", size: this.getHeaderSize(), class: "collapsible-box__icon collapsible-box__icon--" + this.getHeaderSize() + (this.value ? " collapsible-box__icon--collapsed" : "") }), !this._activeEditText ?
129
+ (this.value ? " collapsible-box__title--no-margin" : "") }), index.h("ez-icon", { slot: "icon", "icon-name": "chevron-right", size: this.getHeaderSize(), class: "collapsible-box__icon collapsible-box__icon--" + this.getHeaderSize() + (this.value ? " collapsible-box__icon--collapsed" : ""), id: "toggleCollapsible" }), !this._activeEditText ?
130
130
  index.h("label", { class: "collapsible-box__label font--" + this.getHeaderSize(), title: this.label, ref: elem => this._refLabel = elem }, index.h("span", null, this.label), this.editable &&
131
131
  index.h("ez-icon", { slot: "icon", "icon-name": "edit", onClick: (evt) => this.editLabel(evt), title: "Editar" }), this.removable &&
132
132
  index.h("ez-icon", { slot: "icon", "icon-name": "delete", onClick: (evt) => this.confirmRemove(evt), title: "Remover" })) :
@@ -352,9 +352,13 @@ let EzComboBox = class {
352
352
  }
353
353
  }
354
354
  componentDidRender() {
355
+ var _a;
355
356
  if (this._floatingID === undefined) {
356
357
  this._listWrapper.remove();
357
358
  }
359
+ (_a = this._optionsList) === null || _a === void 0 ? void 0 : _a.querySelectorAll(".item").forEach((elem) => {
360
+ core.ElementIDUtils.addIDInfoIfNotExists(elem, "itemComboBox");
361
+ });
358
362
  }
359
363
  componentDidLoad() {
360
364
  CSSVarsUtils.CSSVarsUtils.applyVarsTextInput(this.el, this._textInput);
@@ -451,8 +455,8 @@ let EzComboBox = class {
451
455
  }
452
456
  render() {
453
457
  var _a;
454
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
455
- return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "textInput"), class: this.suppressSearch ? "suppressed-search-input" : "", ref: elem => this._textInput = elem, "data-slave-mode": "true", enabled: this.enabled && !this.suppressSearch, onInput: event => this.onTextInputChangeHandler(event), onClick: () => this.onTextInputClickHandler(), onFocusout: () => this.onTextInputFocusOutHandler(), onKeyDown: event => this.keyDownHandler(event), label: this.label, canShowError: this.canShowError, errorMessage: this.errorMessage, mode: this.mode }, index.h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, index.h("ez-icon", { iconName: this.searchMode ? "search" : "chevron-down" })), this.searchMode && ((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value) && (this._criteria || this.value)
458
+ core.ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
459
+ return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), class: this.suppressSearch ? "suppressed-search-input" : "", ref: elem => this._textInput = elem, "data-slave-mode": "true", enabled: this.enabled && !this.suppressSearch, onInput: event => this.onTextInputChangeHandler(event), onClick: () => this.onTextInputClickHandler(), onFocusout: () => this.onTextInputFocusOutHandler(), onKeyDown: event => this.keyDownHandler(event), label: this.label, canShowError: this.canShowError, errorMessage: this.errorMessage, mode: this.mode }, index.h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, index.h("ez-icon", { iconName: this.searchMode ? "search" : "chevron-down" })), this.searchMode && ((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value) && (this._criteria || this.value)
456
460
  ? index.h("button", { class: "btn btn__close", slot: "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.clearSearch() }, index.h("ez-icon", { iconName: "close" }))
457
461
  : undefined), index.h("section", { class: "list-container", ref: elem => this._listContainer = elem }, index.h("div", { class: "list-wrapper", ref: elem => this._listWrapper = elem }, index.h("div", { class: "list-options", ref: elem => this._optionsList = elem }, this._visibleOptions.length === 0
458
462
  && index.h("div", { class: "message" }, !this._showLoading && index.h("span", { class: "message__no-result" }, this._textEmptyList), this._showLoading && index.h("div", { class: "message__loading" })), this.showOptionValue
@@ -144,8 +144,8 @@ let EzDateInput = class {
144
144
  this.setInputValue();
145
145
  }
146
146
  render() {
147
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
148
- return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), restrict: "0123456789/", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode }, index.h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), index.h("ez-calendar", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "calendar"), onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
147
+ core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
148
+ return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), restrict: "0123456789/", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode }, index.h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), index.h("ez-calendar", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("calendar"), onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
149
149
  }
150
150
  get _elem() { return index.getElement(this); }
151
151
  static get watchers() { return {
@@ -199,8 +199,8 @@ let EzDateTimeInput = class {
199
199
  this.setInputValue();
200
200
  }
201
201
  render() {
202
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
203
- return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, restrict: "0123456789/: ", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode, onKeyDown: event => { this.handleKeyDown(event); }, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), onFocus: () => this.handleFocus(), onClick: () => this.handleClick() }, index.h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), index.h("ez-calendar", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "calendar"), onEzChange: (event) => { this.changeValue(this._calendar.value); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem, time: true, showSeconds: this.showSeconds })));
202
+ core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
203
+ return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, restrict: "0123456789/: ", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode, onKeyDown: event => { this.handleKeyDown(event); }, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), onFocus: () => this.handleFocus(), onClick: () => this.handleClick() }, index.h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), index.h("ez-calendar", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("calendar"), onEzChange: (event) => { this.changeValue(this._calendar.value); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem, time: true, showSeconds: this.showSeconds })));
204
204
  }
205
205
  get _elem() { return index.getElement(this); }
206
206
  static get watchers() { return {
@@ -66,8 +66,8 @@ let EzFilterInput = class {
66
66
  CSSVarsUtils.CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
67
67
  }
68
68
  render() {
69
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
70
- return (index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: elem => this._textInput = elem, label: this.label, onEzChange: evt => this.changeValue(evt), value: this.value, enabled: this.enabled, errorMessage: this.errorMessage, restrict: this.restrict, mode: this.mode }, index.h("ez-icon", { slot: "leftIcon", iconName: "search" })));
69
+ core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
70
+ return (index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, label: this.label, onEzChange: evt => this.changeValue(evt), value: this.value, enabled: this.enabled, errorMessage: this.errorMessage, restrict: this.restrict, mode: this.mode }, index.h("ez-icon", { slot: "leftIcon", iconName: "search" })));
71
71
  }
72
72
  get _elem() { return index.getElement(this); }
73
73
  static get watchers() { return {
@@ -118,7 +118,7 @@ const buildFromConfig = (config, dataUnit) => {
118
118
  }
119
119
  });
120
120
  (_b = config === null || config === void 0 ? void 0 : config.fields) === null || _b === void 0 ? void 0 : _b.forEach((field) => {
121
- var _a, _b, _c;
121
+ var _a, _b, _c, _d;
122
122
  if (field.visible !== false) {
123
123
  const tabConfig = getTabConfig(field.tab || "__main", sheets);
124
124
  if (hiddenTabs.has(tabConfig.label)) {
@@ -134,10 +134,10 @@ const buildFromConfig = (config, dataUnit) => {
134
134
  requiredFields.push(field.name);
135
135
  }
136
136
  const cleanOnCopy = field.cleanOnCopy == undefined ? (_a = descriptor.properties) === null || _a === void 0 ? void 0 : _a.cleanOnCopy : field.cleanOnCopy;
137
- if (cleanOnCopy || ((_b = descriptor.properties) === null || _b === void 0 ? void 0 : _b.autoNum)) {
137
+ if (cleanOnCopy || ((_b = descriptor.properties) === null || _b === void 0 ? void 0 : _b.autoNum) || ((_c = descriptor.properties) === null || _c === void 0 ? void 0 : _c.cleanOnCopy)) {
138
138
  cleanOnCopyFields.push(field.name);
139
139
  }
140
- const defaultValue = field.defaultValue == undefined ? (_c = descriptor.properties) === null || _c === void 0 ? void 0 : _c.defaultValue : field.defaultValue;
140
+ const defaultValue = field.defaultValue == undefined ? (_d = descriptor.properties) === null || _d === void 0 ? void 0 : _d.defaultValue : field.defaultValue;
141
141
  if (defaultValue) {
142
142
  defaultValues[field.name] = field.defaultValue;
143
143
  }
@@ -274,7 +274,7 @@ const buildField = (field) => {
274
274
  const FormItem = ({ source }) => {
275
275
  if ("items" in source) {
276
276
  const fieldSet = source;
277
- return index.h("ez-collapsible-box", { label: source.label, "header-size": "large" }, fieldSet.items.map(fi => buildField(fi)));
277
+ return index.h("ez-collapsible-box", { label: source.label, "header-size": "large", key: source.label }, fieldSet.items.map(fi => buildField(fi)));
278
278
  }
279
279
  else {
280
280
  return buildField(source);
@@ -952,10 +952,10 @@ let EzForm = class {
952
952
  const tabs = allSheets.map((sheet, index) => {
953
953
  return { tabKey: sheet.name, label: sheet.label, index };
954
954
  });
955
- const idTabSelector = `${this._dataElementIdEzForm}_internal_tabSelector`;
955
+ const idTabSelector = `selector`;
956
956
  result.push(index.h("ez-tabselector", { tabs: this.buildIdTabSelector(tabs), onEzChange: (evt) => this._store.dispatch(changeTab(evt.detail)), selectedTab: currentSheet.name, "data-element-id": idTabSelector }));
957
957
  }
958
- const idFormSheet = `${this._dataElementIdEzForm}_${core.StringUtils.replaceAccentuatedChars(core.StringUtils.toCamelCase(currentSheet.label), false)}`;
958
+ const idFormSheet = `${core.StringUtils.replaceAccentuatedChars(core.StringUtils.toCamelCase(currentSheet.label), false)}_selectorContainer`;
959
959
  result.push(index.h(FormSheet, { store: this._store, source: currentSheet, dataElementId: idFormSheet }));
960
960
  return result;
961
961
  }
@@ -1020,7 +1020,7 @@ let EzForm = class {
1020
1020
  this._staticFields = Array.from(this._element.querySelectorAll("[data-field-name]"));
1021
1021
  this.processMetadata();
1022
1022
  const dataInfo = { dataUnit: this.dataUnit };
1023
- this._dataElementIdEzForm = core.ElementIDUtils.addIDInfo(this._element, null, dataInfo);
1023
+ core.ElementIDUtils.addIDInfo(this._element, null, dataInfo);
1024
1024
  }
1025
1025
  componentDidRender() {
1026
1026
  this._dataBinder.bind(Array.from(this._element.querySelectorAll("[data-field-name]")));
@@ -1033,7 +1033,7 @@ let EzForm = class {
1033
1033
  }
1034
1034
  buildIdTabSelector(tabs) {
1035
1035
  if (tabs) {
1036
- tabs.forEach(tab => tab[core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = `${this._dataElementIdEzForm}_${core.StringUtils.toCamelCase(tab.label)}`);
1036
+ tabs.forEach(tab => tab[core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = core.StringUtils.toCamelCase(tab.label));
1037
1037
  }
1038
1038
  return tabs;
1039
1039
  }
@@ -115423,9 +115423,9 @@ let EzGrid = class {
115423
115423
  }
115424
115424
  buildDataElementId() {
115425
115425
  const dataInfo = { dataUnit: this.dataUnit };
115426
- const dataElementIdEzGrid = core.ElementIDUtils.addIDInfo(this._element, null, dataInfo);
115427
- const dtInfo = { id: `${dataElementIdEzGrid}_ezGrid_pagination` };
115428
- core.ElementIDUtils.addIDInfo(this._refPaginationControl, null, dtInfo);
115426
+ core.ElementIDUtils.addIDInfo(this._element, null, dataInfo);
115427
+ const dtInfo = { id: "ezGrid" };
115428
+ core.ElementIDUtils.addIDInfo(this._refPaginationControl, "pagination", dtInfo);
115429
115429
  }
115430
115430
  previousPage() {
115431
115431
  if (this.dataUnit) {
@@ -32,9 +32,13 @@ let EzIcon = class {
32
32
  return index.h("img", { class: this.size, src: this.href });
33
33
  }
34
34
  }
35
+ componentDidLoad() {
36
+ core.ElementIDUtils.addIDInfo(this._hostElement, "icon");
37
+ }
35
38
  render() {
36
39
  return (index.h(index.Host, null, this.getIconContent()));
37
40
  }
41
+ get _hostElement() { return index.getElement(this); }
38
42
  };
39
43
  EzIcon.style = ezIconCss;
40
44
 
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-8646c40d.js');
6
+ const core = require('@sankhyalabs/core');
6
7
 
7
8
  const ezListCss = ":host{--ez-list__host--z-index:var(--visible, 1);--ez-list__host--border-radius:var(--border--radius-medium, 12px);--ez-list__host--padding:var(--space--medium, 12px);--ez-list__icon--padding:var(--space--small, 6px);--ez-list__icon--color:#AFB6C0;--ez-list__item--margin:0 var(--space--small, 6px);--ez-list__item--color:var(--title--primary, #2b3a54);--ez-list__item--border-bottom:var(--border--small, 1px solid);--ez-list__item--border-color:var(--title--primary, #2b3a54);--ez-list__item--font-family:var(--font-pattern, \"Roboto\");--ez-list__item--font-size:var(--text--medium, 14px);--ez-list__selectable--padding-right:var(--space--small, 6px);--ez-list__selectable--padding-left:var(--space--small, 6px);--ez-list__selected-item--border-radius:var(--border--radius-small, 6px);--ez-list__selected-item--background-color:var(--color--primary-300, #E2F4EF);--ez-list__group--font-family:var(--font-pattern, \"Roboto\");--ez-list__group--font-size:var(--text--medium, 14px);--ez-list__group--font-weight:var(--text-weight--large, 600);--ez-list__group--padding-bottom:var(--space-small, 6px);--ez-list__group-overlay--font-family:var(--font-pattern, \"Roboto\");--ez-list__group-overlay--font-size:var(--text--medium, 14px);--ez-list__group-container-scrollbar--border-radius:var(--border--radius-small, 6px);--ez-list__group-container-scrollbar--width:var(--space--medium, 12px);--ez-list__group-container-scrollbar--background-color-primary:var(--scrollbar--primary, #2B3A54);--ez-list__group-container-scrollbar--background-color-secondary:var(--scrollbar--secondary, #E5EAF0);--ez-list__over--border--color:var(--color--primary, #008561);--ez-list__last-droppable-space--height:var(--space--small, 6px);--ez-list__draggable-scrollbar--border-radius:var(--border--radius-small, 6px);--ez-list__draggable-scrollbar--width:var(--space--medium, 12px);--ez-list__draggable-scrollbar--background-color-primary:var(--scrollbar--primary, #2B3A54);--ez-list__draggable-scrollbar--background-color-secondary:var(--scrollbar--secondary, #E5EAF0);--ez-list__draggable-list--padding-bottom:var(--space--small, 6px);--ez-list__draggable-icon--image:url('data:image/svg+xml;utf8,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m 6.75,2.25 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z m -3,3 h 1.5 v 1.5 h -1.5 z m 3,0 h 1.5 v 1.5 h -1.5 z\"/></svg>');max-height:100%;width:100%;background-color:#fff;display:flex;z-index:var(--ez-list__host--z-index)}p{margin:0}.draggable{display:flex;align-items:center;border-top:1px dashed #fff;justify-content:space-between;background-color:#fff;font-family:var(--ez-list__item--font-family);font-size:var(--ez-list__item--font-size);flex:1;width:100%}.dragging{background:#FFFFFF;border:1px solid #008561;box-sizing:border-box;box-shadow:0px 0px 16px rgba(0, 38, 111, 0.122);border-radius:6px}.selectable{cursor:pointer;padding-right:var(--ez-list__selectable--padding-right);padding-left:var(--ez-list__selectable--padding-left)}.selectable-container{margin:0px !important}.item-content{display:flex;justify-content:flex-start;align-items:center;width:100%}.group-container .item-content{max-width:calc(100% - 41px)}.items-container .item-content{max-width:calc(100% - 100px)}.draggable-list{color:var(--text-color);padding:0;margin:0;width:100%;max-height:100%;scrollbar-width:thin;scrollbar-color:var(--ez-list__draggable-scrollbar--background-color-primary) var(--ez-list__draggable-scrollbar--background-color-secondary)}.draggable-list li{background-color:#fff;display:flex;margin:var(--ez-list__item--margin);font-family:var(--ez-list__item--font-family);font-size:var(--ez-list__item--font-size);color:var(--ez-list__item--color);height:32px}.over{border-top:1px dashed var(--ez-list__over--border--color)}.last-droppable-space{height:var(--ez-list__last-droppable-space--height)}.draggable-selected{background-color:var(--background--strong) !important}.draggable-selected div:hover{background-color:var(--background--strong) !important}.draggable-list::-webkit-scrollbar-track{background-color:var(--ez-list__draggable-scrollbar--background-color-secondary)}.draggable-list::-webkit-scrollbar-thumb{background-color:var(--ez-list__draggable-scrollbar--background-color-primary);border-radius:var(--ez-list__draggable-scrollbar--border-radius)}.draggable-list::-webkit-scrollbar{background-color:var(--ez-list__draggable-scrollbar--background-color-secondary);width:var(--ez-list__draggable-scrollbar--width);max-width:var(--ez-list__draggable-scrollbar--width);min-width:var(--ez-list__draggable-scrollbar--width)}.draggable-icon{align-items:flex-start;display:flex;outline:none;border:none;background-color:unset}.draggable-icon::after{content:'';display:flex;background-color:var(--ez-list__icon--color);width:18px;height:18px;-webkit-mask-image:var(--ez-list__draggable-icon--image);mask-image:var(--ez-list__draggable-icon--image)}*{box-sizing:border-box}.checkbox{width:fit-content}.text--ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-container{display:flex;flex-direction:column;max-height:100%;overflow-y:auto;outline:none;width:100%;scrollbar-width:thin;scrollbar-color:var(--ez-list__group-container-scrollbar--background-color-primary) var(--ez-list__group-container-scrollbar--background-color-secondary)}.group-name{font-family:var(--ez-list__group--font-family);font-size:var(--ez-list__group--font-size);font-weight:var(--ez-list__group--font-weight);padding-bottom:var(--ez-list__group--padding-bottom);-webkit-user-select:none;-moz-user-select:-moz-none;-ms-user-select:none;user-select:none}.group{display:flex;flex-direction:column}.group-container::-webkit-scrollbar-track{background-color:var(--ez-list__group-container-scrollbar--background-color-secondary)}.group-container::-webkit-scrollbar-thumb{background-color:var(--ez-list__group-container-scrollbar--background-color-primary);border-radius:var(--ez-list__group-container-scrollbar--border-radius)}.group-container::-webkit-scrollbar{background-color:var(--ez-list__group-container-scrollbar--background-color-secondary);width:var(--ez-list__group-container-scrollbar--width);max-width:var(--ez-list__group-container-scrollbar--width);min-width:var(--ez-list__group-container-scrollbar--width)}.section-container{display:flex;position:relative;height:100%}.items-container{width:100%;max-height:100%;overflow-y:auto;outline:none;scrollbar-width:thin;scrollbar-color:var(--ez-list__draggable-scrollbar--background-color-primary) var(--ez-list__draggable-scrollbar--background-color-secondary)}.group-items-container{width:100%;max-height:100%;height:100%;outline:none}.items-container::-webkit-scrollbar-track{background-color:var(--ez-list__draggable-scrollbar--background-color-secondary)}.items-container::-webkit-scrollbar-thumb{background-color:var(--ez-list__draggable-scrollbar--background-color-primary);border-radius:var(--ez-list__draggable-scrollbar--border-radius)}.items-container::-webkit-scrollbar{background-color:var(--ez-list__draggable-scrollbar--background-color-secondary);width:var(--ez-list__draggable-scrollbar--width);max-width:var(--ez-list__draggable-scrollbar--width);min-width:var(--ez-list__draggable-scrollbar--width)}.group-overlay{font-family:var(--ez-list__group-overlay--font-family);font-size:var(--ez-list__group-overlay--font-size);background:rgba(226, 244, 239, 0.8);border:1px solid #008561;border-radius:8px;position:absolute;display:none;place-items:center;top:0;bottom:0;left:0;right:0;z-index:2;margin:0;cursor:pointer}.presetedHeight{min-height:100px}.overlay-text{position:absolute;top:50%;left:50%;font-size:50px;color:white;transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%)}.selected-item{background:var(--ez-list__selected-item--background-color);border-radius:var(--ez-list__selected-item--border-radius)}.slot-item{align-items:flex-end}.overGroup{background:rgba(226, 244, 239, 0.8);border:1px solid #008561;box-sizing:border-box;border-radius:8px;padding-top:6px}";
8
9
 
@@ -166,6 +167,9 @@ let EzList = class {
166
167
  componentWillRender() {
167
168
  this.createList();
168
169
  }
170
+ componentDidLoad() {
171
+ core.ElementIDUtils.addIDInfo(this._element);
172
+ }
169
173
  onDrop(ev, dragEndItem) {
170
174
  this.removeOverClass();
171
175
  this.setSelection(undefined);
@@ -139,8 +139,8 @@ let EzNumberInput = class {
139
139
  this.setInputValue();
140
140
  }
141
141
  render() {
142
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
143
- return (index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: () => this.handleInput(), restrict: this.precision > 0 ? "0123456789-,." : "0123456789-", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode }));
142
+ core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
143
+ return (index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: () => this.handleInput(), restrict: this.precision > 0 ? "0123456789-,." : "0123456789-", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode }));
144
144
  }
145
145
  get _elem() { return index.getElement(this); }
146
146
  static get watchers() { return {
@@ -46,7 +46,7 @@ let EzRadioButton = class {
46
46
  this.ezChange.emit(this.value);
47
47
  }
48
48
  render() {
49
- return (index.h(index.Host, null, this.label && index.h("label", { class: "label" }, this.label), index.h("div", { class: "form form--" + this.direction }, this._options.map((option, key) => index.h("div", { class: "form__group" }, index.h("input", { id: "rad" + key, class: "form__radio", name: "theradio", type: "radio", value: option.value, onChange: (ev) => { this.handleInputChange(ev); }, disabled: !this.enabled, checked: option.value === this.value }), index.h("label", { htmlFor: "rad" + key, class: "form__label" }, option.label))))));
49
+ return (index.h(index.Host, null, this.label && index.h("label", { class: "label" }, this.label), index.h("div", { class: "form form--" + this.direction }, this._options.map((option, key) => index.h("div", { class: "form__group" }, index.h("input", { id: "rad" + key, class: "form__radio", name: "theradio", type: "radio", value: option.value, onChange: (ev) => { this.handleInputChange(ev); }, disabled: !this.enabled, checked: option.value === this.value, "data-element-id": core.ElementIDUtils.getInternalIDInfo(`input_${option.value}`) }), index.h("label", { htmlFor: "rad" + key, class: "form__label" }, option.label))))));
50
50
  }
51
51
  get hostElement() { return index.getElement(this); }
52
52
  };
@@ -73,8 +73,8 @@ let EzSearch = class {
73
73
  CSSVarsUtils.CSSVarsUtils.applyVarsTextInput(this._elem, this._comboElement);
74
74
  }
75
75
  render() {
76
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
77
- return (index.h("ez-combo-box", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "combo"), ref: elem => this._comboElement = elem, value: this.value, label: this.label, enabled: this.enabled, errorMessage: this.errorMessage, optionLoader: this.optionLoader, searchMode: true, onEzChange: event => this.onComboChange(event), showSelectedValue: this.showSelectedValue, showOptionValue: this.showOptionValue, suppressEmptyOption: this.suppressEmptyOption, mode: this.mode }));
76
+ core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
77
+ return (index.h("ez-combo-box", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("combo"), ref: elem => this._comboElement = elem, value: this.value, label: this.label, enabled: this.enabled, errorMessage: this.errorMessage, optionLoader: this.optionLoader, searchMode: true, onEzChange: event => this.onComboChange(event), showSelectedValue: this.showSelectedValue, showOptionValue: this.showOptionValue, suppressEmptyOption: this.suppressEmptyOption, mode: this.mode }));
78
78
  }
79
79
  ;
80
80
  get _elem() { return index.getElement(this); }
@@ -76,7 +76,6 @@ let EzTabselector = class {
76
76
  this.setFocusedBtn(false, tab.index);
77
77
  }
78
78
  componentWillRender() {
79
- core.ElementIDUtils.addIDInfo(this._hostElem);
80
79
  if (!this._processedTabs) {
81
80
  this._processedTabs = [];
82
81
  if (this.tabs) {
@@ -108,10 +107,12 @@ let EzTabselector = class {
108
107
  this.updateScroll();
109
108
  }
110
109
  componentDidLoad() {
110
+ core.ElementIDUtils.addIDInfo(this._hostElem, "itemsSelector");
111
111
  this._hostElem.shadowRoot.querySelectorAll('button[name="tab-button"]').forEach((elem) => {
112
- const elemIdTabSelector = this._hostElem.getAttribute(core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME);
113
- const dataInfo = { id: `${elemIdTabSelector}_${core.StringUtils.toCamelCase(elem.id)}` };
114
- core.ElementIDUtils.addIDInfo(elem, null, dataInfo);
112
+ var _a;
113
+ const label = (_a = elem.querySelector('span.tab-label')) === null || _a === void 0 ? void 0 : _a.innerText;
114
+ const dataInfo = { id: `${core.StringUtils.toCamelCase(label)}` };
115
+ core.ElementIDUtils.addIDInfo(elem, "itemSelector", dataInfo);
115
116
  });
116
117
  }
117
118
  handleSlotChange(ev) {
@@ -145,10 +145,10 @@ let EzTextArea = class {
145
145
  this.observeMode();
146
146
  }
147
147
  render() {
148
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._hostElement, 'input');
148
+ core.ElementIDUtils.addIDInfoIfNotExists(this._hostElement, 'input');
149
149
  return (index.h(index.Host, null, index.h("div", { class: "textarea", ref: (el) => this._container = el }, this.label && this.mode != "slim" ?
150
150
  index.h("label", { ref: (el) => this._labelElem = el, class: this.enabled ? "textarea__label" : "textarea__label textarea__label--disabled", onClick: () => this._inputElem.focus(), title: this.label }, this.label)
151
- : null, index.h("textarea", { onFocus: () => this.handleFocus(), "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "input"), ref: (el) => this._inputElem = el, value: this.value, disabled: !this.enabled, class: this.mode === "slim" ? "textarea--slim" : "", placeholder: this.mode === "slim" && this.label ? this.label : "", onInput: () => { this.handleChange(); }, onFocusout: () => { this.handleFocusout(); }, onKeyDown: event => event.stopPropagation(), rows: this.rows })), this.canShowError && this.mode != "slim" &&
151
+ : null, index.h("textarea", { onFocus: () => this.handleFocus(), "data-element-id": core.ElementIDUtils.getInternalIDInfo("input"), ref: (el) => this._inputElem = el, value: this.value, disabled: !this.enabled, class: this.mode === "slim" ? "textarea--slim" : "", placeholder: this.mode === "slim" && this.label ? this.label : "", onInput: () => { this.handleChange(); }, onFocusout: () => { this.handleFocusout(); }, onKeyDown: event => event.stopPropagation(), rows: this.rows })), this.canShowError && this.mode != "slim" &&
152
152
  index.h("span", { class: "message-box", ref: (el) => this._messageBoxElem = el, title: this.errorMessage }, this.errorMessage)));
153
153
  }
154
154
  get _hostElement() { return index.getElement(this); }
@@ -95,8 +95,8 @@ let EzTextEdit = class {
95
95
  this.setStyledInput();
96
96
  }
97
97
  render() {
98
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._element, 'input');
99
- return (index.h(index.Host, null, index.h("span", { class: "text-edit__hidden-value", ref: elem => this._valueBasis = elem }), index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "textInput"), onInput: () => { this.calcSizeInput(this._newValue); }, class: "text-edit__form-input", value: this._newValue, ref: (elem) => this._inputElement = elem, mode: "slim", onEzChange: (evt) => this.setNewValue(evt === null || evt === void 0 ? void 0 : evt.detail), noBorder: true }), index.h("ez-button", { class: "text-edit__icon-check", mode: "icon", iconName: "check", size: "small", onClick: () => { this.handleSaveEdition(); } }), index.h("ez-button", { class: "text-edit__icon-close", mode: "icon", iconName: "close", size: "small", onClick: () => { this.cancelEdition.emit(); } })));
98
+ core.ElementIDUtils.addIDInfoIfNotExists(this._element, 'input');
99
+ return (index.h(index.Host, null, index.h("span", { class: "text-edit__hidden-value", ref: elem => this._valueBasis = elem }), index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), onInput: () => { this.calcSizeInput(this._newValue); }, class: "text-edit__form-input", value: this._newValue, ref: (elem) => this._inputElement = elem, mode: "slim", onEzChange: (evt) => this.setNewValue(evt === null || evt === void 0 ? void 0 : evt.detail), noBorder: true }), index.h("ez-button", { class: "text-edit__icon-check", mode: "icon", iconName: "check", size: "small", onClick: () => { this.handleSaveEdition(); } }), index.h("ez-button", { class: "text-edit__icon-close", mode: "icon", iconName: "close", size: "small", onClick: () => { this.cancelEdition.emit(); } })));
100
100
  }
101
101
  get _element() { return index.getElement(this); }
102
102
  };
@@ -196,6 +196,7 @@ let EzTextInput = class {
196
196
  this._labelElem.classList.add("input__label--right");
197
197
  }
198
198
  }
199
+ slot.name && core.ElementIDUtils.addIDInfo(content, slot.name);
199
200
  }
200
201
  this.observeErrorMessage();
201
202
  }
@@ -232,11 +233,11 @@ let EzTextInput = class {
232
233
  }
233
234
  }
234
235
  render() {
235
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._hostElement, 'input');
236
+ core.ElementIDUtils.addIDInfoIfNotExists(this._hostElement, 'input');
236
237
  return (index.h(index.Host, null, index.h("slot", { name: "leftIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.label && this.mode != "slim" ?
237
238
  index.h("label", { ref: (el) => this._labelElem = el, class: this.enabled ? "input__label" : "input__label input__label--disabled", onClick: () => this._inputElem.focus(), title: this.label }, this.label)
238
- : null, index.h("input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "input"), onFocus: () => this.doFocus(), ref: (el) => this._inputElem = el, type: "text", class: this.mode === "slim" ? "input--slim" : "", placeholder: this.mode === "slim" && this.label ? this.label : "", value: this.value, disabled: !this.enabled, onInput: () => { this.handleChange(); }, onFocusout: () => { this.handleFocusout(); } }), index.h("slot", { name: "rightIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.canShowError && this.mode != "slim" &&
239
- index.h("span", { class: "message-box", ref: (el) => this._messageBoxElem = el, title: this.errorMessage }, this.errorMessage)));
239
+ : null, index.h("input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("input"), onFocus: () => this.doFocus(), ref: (el) => this._inputElem = el, type: "text", class: this.mode === "slim" ? "input--slim" : "", placeholder: this.mode === "slim" && this.label ? this.label : "", value: this.value, disabled: !this.enabled, onInput: () => { this.handleChange(); }, onFocusout: () => { this.handleFocusout(); } }), index.h("slot", { name: "rightIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.canShowError && this.mode != "slim" &&
240
+ index.h("span", { class: "message-box", ref: (el) => this._messageBoxElem = el, title: this.errorMessage, "data-element-id": core.ElementIDUtils.getInternalIDInfo("message_box") }, this.errorMessage)));
240
241
  }
241
242
  get _hostElement() { return index.getElement(this); }
242
243
  static get watchers() { return {
@@ -153,8 +153,8 @@ let EzTimeInput = class {
153
153
  }
154
154
  }
155
155
  render() {
156
- let elementId = core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
157
- return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: (el) => this._textInput = el, "data-slave-mode": "true", value: this._viewValue, enabled: this.enabled, label: this.label, restrict: "0123456789:", onBlur: () => this.handleBlur(), onInput: () => this.handleInput(), errorMessage: this.errorMessage, mode: this.mode }, index.h("ez-icon", { slot: "leftIcon", iconName: "timer-outline" }))));
156
+ core.ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
157
+ return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), ref: (el) => this._textInput = el, "data-slave-mode": "true", value: this._viewValue, enabled: this.enabled, label: this.label, restrict: "0123456789:", onBlur: () => this.handleBlur(), onInput: () => this.handleInput(), errorMessage: this.errorMessage, mode: this.mode }, index.h("ez-icon", { slot: "leftIcon", iconName: "timer-outline" }))));
158
158
  }
159
159
  static get assetsDirs() { return ["../assets"]; }
160
160
  get _elem() { return index.getElement(this); }
@@ -1,4 +1,4 @@
1
- import { FloatingManager } from '@sankhyalabs/core';
1
+ import { FloatingManager, ElementIDUtils } from '@sankhyalabs/core';
2
2
  import { Component, Element, Event, h, Host, Prop, State, Method } from '@stencil/core';
3
3
  import { CSSVarsUtils } from '../../utils';
4
4
  export class EzActionsButton {
@@ -160,6 +160,7 @@ export class EzActionsButton {
160
160
  }
161
161
  componentDidLoad() {
162
162
  CSSVarsUtils.applyVarsButton(this._element, this._button);
163
+ ElementIDUtils.addIDInfo(this._element);
163
164
  this.controlScrollPage();
164
165
  }
165
166
  componentDidRender() {
@@ -28,8 +28,8 @@ export class EzButton {
28
28
  ElementIDUtils.addIDInfo(this._element);
29
29
  }
30
30
  if (this._button) {
31
- const dataInfo = { id: 'ezButton_internal_button' };
32
- ElementIDUtils.addIDInfo(this._button, null, dataInfo);
31
+ const dataInfo = { id: 'embedded' };
32
+ ElementIDUtils.addIDInfo(this._button, 'button', dataInfo);
33
33
  }
34
34
  }
35
35
  getIconSize(sizeParam = "medium") {
@@ -35,9 +35,6 @@ export class EzCheck {
35
35
  this._inputElem.focus();
36
36
  }
37
37
  componentDidLoad() {
38
- if (this._inputElem) {
39
- ElementIDUtils.addIDInfo(this._inputElem, 'input');
40
- }
41
38
  if (this._element) {
42
39
  ElementIDUtils.addIDInfo(this._element, 'input');
43
40
  }
@@ -62,7 +59,7 @@ export class EzCheck {
62
59
  }
63
60
  render() {
64
61
  return (h(Host, null,
65
- h("input", { type: "checkbox", ref: (el) => this._inputElem = el, class: this.getInputClasses(), checked: this.value === true, onChange: () => { this.changeValue(); }, indeterminate: this.indeterminate, disabled: !this.enabled }),
62
+ h("input", { type: "checkbox", ref: (el) => this._inputElem = el, class: this.getInputClasses(), checked: this.value === true, onChange: () => { this.changeValue(); }, indeterminate: this.indeterminate, disabled: !this.enabled, "data-element-id": ElementIDUtils.getInternalIDInfo("input") }),
66
63
  this.label ? h("label", { class: this.getLabelClasses(), onClick: () => { this.changeValue(); }, title: this.label }, this.label) : undefined));
67
64
  }
68
65
  static get is() { return "ez-check"; }
@@ -85,8 +85,7 @@ export class EzChip {
85
85
  if (this._containerElem) {
86
86
  this.observeValue();
87
87
  this.observeEnabled();
88
- this._containerElem.setAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME, 'ezChip_internal_button');
89
- ElementIDUtils.addIDInfo(this._containerElem);
88
+ this._containerElem.setAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME, ElementIDUtils.getInternalIDInfo('button'));
90
89
  }
91
90
  }
92
91
  render() {
@@ -115,7 +115,7 @@ export class EzCollapsibleBox {
115
115
  h("button", Object.assign({}, (!this._activeEditText ? { onClick: () => { this.showHide(); } } : null), { class: "collapsible-box__title collapsible-box__title--" + (this.headerAlign || "left") +
116
116
  (this.iconPlacement === "right" ? " collapsible-box__title--icon-right" : "") +
117
117
  (this.value ? " collapsible-box__title--no-margin" : "") }),
118
- h("ez-icon", { slot: "icon", "icon-name": "chevron-right", size: this.getHeaderSize(), class: "collapsible-box__icon collapsible-box__icon--" + this.getHeaderSize() + (this.value ? " collapsible-box__icon--collapsed" : "") }),
118
+ h("ez-icon", { slot: "icon", "icon-name": "chevron-right", size: this.getHeaderSize(), class: "collapsible-box__icon collapsible-box__icon--" + this.getHeaderSize() + (this.value ? " collapsible-box__icon--collapsed" : ""), id: "toggleCollapsible" }),
119
119
  !this._activeEditText ?
120
120
  h("label", { class: "collapsible-box__label font--" + this.getHeaderSize(), title: this.label, ref: elem => this._refLabel = elem },
121
121
  h("span", null, this.label),
@@ -342,9 +342,13 @@ export class EzComboBox {
342
342
  }
343
343
  }
344
344
  componentDidRender() {
345
+ var _a;
345
346
  if (this._floatingID === undefined) {
346
347
  this._listWrapper.remove();
347
348
  }
349
+ (_a = this._optionsList) === null || _a === void 0 ? void 0 : _a.querySelectorAll(".item").forEach((elem) => {
350
+ ElementIDUtils.addIDInfoIfNotExists(elem, "itemComboBox");
351
+ });
348
352
  }
349
353
  componentDidLoad() {
350
354
  CSSVarsUtils.applyVarsTextInput(this.el, this._textInput);
@@ -441,9 +445,9 @@ export class EzComboBox {
441
445
  }
442
446
  render() {
443
447
  var _a;
444
- let elementId = ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
448
+ ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
445
449
  return (h(Host, null,
446
- h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "textInput"), class: this.suppressSearch ? "suppressed-search-input" : "", ref: elem => this._textInput = elem, "data-slave-mode": "true", enabled: this.enabled && !this.suppressSearch, onInput: event => this.onTextInputChangeHandler(event), onClick: () => this.onTextInputClickHandler(), onFocusout: () => this.onTextInputFocusOutHandler(), onKeyDown: event => this.keyDownHandler(event), label: this.label, canShowError: this.canShowError, errorMessage: this.errorMessage, mode: this.mode },
450
+ h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), class: this.suppressSearch ? "suppressed-search-input" : "", ref: elem => this._textInput = elem, "data-slave-mode": "true", enabled: this.enabled && !this.suppressSearch, onInput: event => this.onTextInputChangeHandler(event), onClick: () => this.onTextInputClickHandler(), onFocusout: () => this.onTextInputFocusOutHandler(), onKeyDown: event => this.keyDownHandler(event), label: this.label, canShowError: this.canShowError, errorMessage: this.errorMessage, mode: this.mode },
447
451
  h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() },
448
452
  h("ez-icon", { iconName: this.searchMode ? "search" : "chevron-down" })),
449
453
  this.searchMode && ((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value) && (this._criteria || this.value)
@@ -133,11 +133,11 @@ export class EzDateInput {
133
133
  this.setInputValue();
134
134
  }
135
135
  render() {
136
- let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
136
+ ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
137
137
  return (h(Host, null,
138
- h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), restrict: "0123456789/", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode },
138
+ h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), restrict: "0123456789/", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode },
139
139
  h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })),
140
- h("ez-calendar", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "calendar"), onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
140
+ h("ez-calendar", { "data-element-id": ElementIDUtils.getInternalIDInfo("calendar"), onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
141
141
  }
142
142
  static get is() { return "ez-date-input"; }
143
143
  static get encapsulation() { return "shadow"; }
@@ -186,11 +186,11 @@ export class EzDateTimeInput {
186
186
  this.setInputValue();
187
187
  }
188
188
  render() {
189
- let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
189
+ ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
190
190
  return (h(Host, null,
191
- h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, restrict: "0123456789/: ", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode, onKeyDown: event => { this.handleKeyDown(event); }, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), onFocus: () => this.handleFocus(), onClick: () => this.handleClick() },
191
+ h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, "data-slave-mode": "true", label: this.label, restrict: "0123456789/: ", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode, onKeyDown: event => { this.handleKeyDown(event); }, onBlur: () => this.handleBlur(), onInput: (evt) => this.handleInput(evt), onFocus: () => this.handleFocus(), onClick: () => this.handleClick() },
192
192
  h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })),
193
- h("ez-calendar", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "calendar"), onEzChange: (event) => { this.changeValue(this._calendar.value); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem, time: true, showSeconds: this.showSeconds })));
193
+ h("ez-calendar", { "data-element-id": ElementIDUtils.getInternalIDInfo("calendar"), onEzChange: (event) => { this.changeValue(this._calendar.value); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem, time: true, showSeconds: this.showSeconds })));
194
194
  }
195
195
  static get is() { return "ez-date-time-input"; }
196
196
  static get encapsulation() { return "shadow"; }
@@ -57,8 +57,8 @@ export class EzFilterInput {
57
57
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
58
58
  }
59
59
  render() {
60
- let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
61
- return (h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "textInput"), ref: elem => this._textInput = elem, label: this.label, onEzChange: evt => this.changeValue(evt), value: this.value, enabled: this.enabled, errorMessage: this.errorMessage, restrict: this.restrict, mode: this.mode },
60
+ ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
61
+ return (h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), ref: elem => this._textInput = elem, label: this.label, onEzChange: evt => this.changeValue(evt), value: this.value, enabled: this.enabled, errorMessage: this.errorMessage, restrict: this.restrict, mode: this.mode },
62
62
  h("ez-icon", { slot: "leftIcon", iconName: "search" })));
63
63
  }
64
64
  static get is() { return "ez-filter-input"; }
@@ -100,10 +100,10 @@ export class EzForm {
100
100
  const tabs = allSheets.map((sheet, index) => {
101
101
  return { tabKey: sheet.name, label: sheet.label, index };
102
102
  });
103
- const idTabSelector = `${this._dataElementIdEzForm}_internal_tabSelector`;
103
+ const idTabSelector = `selector`;
104
104
  result.push(h("ez-tabselector", { tabs: this.buildIdTabSelector(tabs), onEzChange: (evt) => this._store.dispatch(changeTab(evt.detail)), selectedTab: currentSheet.name, "data-element-id": idTabSelector }));
105
105
  }
106
- const idFormSheet = `${this._dataElementIdEzForm}_${StringUtils.replaceAccentuatedChars(StringUtils.toCamelCase(currentSheet.label), false)}`;
106
+ const idFormSheet = `${StringUtils.replaceAccentuatedChars(StringUtils.toCamelCase(currentSheet.label), false)}_selectorContainer`;
107
107
  result.push(h(FormSheet, { store: this._store, source: currentSheet, dataElementId: idFormSheet }));
108
108
  return result;
109
109
  }
@@ -168,7 +168,7 @@ export class EzForm {
168
168
  this._staticFields = Array.from(this._element.querySelectorAll("[data-field-name]"));
169
169
  this.processMetadata();
170
170
  const dataInfo = { dataUnit: this.dataUnit };
171
- this._dataElementIdEzForm = ElementIDUtils.addIDInfo(this._element, null, dataInfo);
171
+ ElementIDUtils.addIDInfo(this._element, null, dataInfo);
172
172
  }
173
173
  componentDidRender() {
174
174
  this._dataBinder.bind(Array.from(this._element.querySelectorAll("[data-field-name]")));
@@ -181,7 +181,7 @@ export class EzForm {
181
181
  }
182
182
  buildIdTabSelector(tabs) {
183
183
  if (tabs) {
184
- tabs.forEach(tab => tab[ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = `${this._dataElementIdEzForm}_${StringUtils.toCamelCase(tab.label)}`);
184
+ tabs.forEach(tab => tab[ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = StringUtils.toCamelCase(tab.label));
185
185
  }
186
186
  return tabs;
187
187
  }
@@ -3,7 +3,7 @@ import { buildField } from "../fieldbuilder/FieldBuilder";
3
3
  export const FormItem = ({ source }) => {
4
4
  if ("items" in source) {
5
5
  const fieldSet = source;
6
- return h("ez-collapsible-box", { label: source.label, "header-size": "large" }, fieldSet.items.map(fi => buildField(fi)));
6
+ return h("ez-collapsible-box", { label: source.label, "header-size": "large", key: source.label }, fieldSet.items.map(fi => buildField(fi)));
7
7
  }
8
8
  else {
9
9
  return buildField(source);