@sankhyalabs/ezui 2.2.4 → 2.3.1

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 (75) hide show
  1. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  2. package/dist/cjs/ez-combo-box.cjs.entry.js +2 -7
  3. package/dist/cjs/ez-date-input.cjs.entry.js +2 -10
  4. package/dist/cjs/ez-date-time-input.cjs.entry.js +2 -10
  5. package/dist/cjs/ez-filter-input.cjs.entry.js +2 -7
  6. package/dist/cjs/ez-form.cjs.entry.js +2 -2
  7. package/dist/cjs/ez-grid.cjs.entry.js +77 -2
  8. package/dist/cjs/ez-number-input.cjs.entry.js +2 -7
  9. package/dist/cjs/ez-search.cjs.entry.js +2 -7
  10. package/dist/cjs/ez-tabselector.cjs.entry.js +4 -4
  11. package/dist/cjs/ez-text-area.cjs.entry.js +2 -7
  12. package/dist/cjs/ez-text-edit.cjs.entry.js +2 -7
  13. package/dist/cjs/ez-text-input.cjs.entry.js +2 -7
  14. package/dist/cjs/ez-time-input.cjs.entry.js +2 -7
  15. package/dist/cjs/ezui.cjs.js +1 -1
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/collection/components/ez-chip/ez-chip.js +1 -1
  18. package/dist/collection/components/ez-combo-box/ez-combo-box.js +2 -7
  19. package/dist/collection/components/ez-date-input/ez-date-input.js +3 -11
  20. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +3 -11
  21. package/dist/collection/components/ez-filter-input/ez-filter-input.js +2 -7
  22. package/dist/collection/components/ez-form/ez-form.js +2 -2
  23. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +63 -1
  24. package/dist/collection/components/ez-grid/ez-grid.js +16 -2
  25. package/dist/collection/components/ez-number-input/ez-number-input.js +2 -7
  26. package/dist/collection/components/ez-search/ez-search.js +2 -7
  27. package/dist/collection/components/ez-tabselector/ez-tabselector.js +4 -4
  28. package/dist/collection/components/ez-text-area/ez-text-area.js +2 -7
  29. package/dist/collection/components/ez-text-edit/ez-text-edit.js +2 -7
  30. package/dist/collection/components/ez-text-input/ez-text-input.js +2 -7
  31. package/dist/collection/components/ez-time-input/ez-time-input.js +2 -7
  32. package/dist/custom-elements/index.js +105 -86
  33. package/dist/esm/ez-chip.entry.js +1 -1
  34. package/dist/esm/ez-combo-box.entry.js +2 -7
  35. package/dist/esm/ez-date-input.entry.js +2 -10
  36. package/dist/esm/ez-date-time-input.entry.js +2 -10
  37. package/dist/esm/ez-filter-input.entry.js +2 -7
  38. package/dist/esm/ez-form.entry.js +2 -2
  39. package/dist/esm/ez-grid.entry.js +77 -2
  40. package/dist/esm/ez-number-input.entry.js +2 -7
  41. package/dist/esm/ez-search.entry.js +2 -7
  42. package/dist/esm/ez-tabselector.entry.js +4 -4
  43. package/dist/esm/ez-text-area.entry.js +2 -7
  44. package/dist/esm/ez-text-edit.entry.js +2 -7
  45. package/dist/esm/ez-text-input.entry.js +2 -7
  46. package/dist/esm/ez-time-input.entry.js +2 -7
  47. package/dist/esm/ezui.js +1 -1
  48. package/dist/esm/loader.js +1 -1
  49. package/dist/ezui/ezui.esm.js +1 -1
  50. package/dist/ezui/{p-b484a0b3.entry.js → p-0fb5f4be.entry.js} +1 -1
  51. package/dist/ezui/{p-77b7b623.entry.js → p-19a38745.entry.js} +1 -1
  52. package/dist/ezui/p-66ebdf34.entry.js +1 -0
  53. package/dist/ezui/p-6bcf35fd.entry.js +1 -0
  54. package/dist/ezui/{p-587e8dca.entry.js → p-72d755a8.entry.js} +1 -1
  55. package/dist/ezui/p-7cf71eb3.entry.js +1 -0
  56. package/dist/ezui/{p-107aff56.entry.js → p-81fb0c90.entry.js} +1 -1
  57. package/dist/ezui/p-855f99f8.entry.js +1 -0
  58. package/dist/ezui/{p-a595dd4e.entry.js → p-89b2a151.entry.js} +1 -1
  59. package/dist/ezui/{p-8eae779b.entry.js → p-941d9bf9.entry.js} +1 -1
  60. package/dist/ezui/p-ac15d77e.entry.js +1 -0
  61. package/dist/ezui/p-c2ebc450.entry.js +1 -0
  62. package/dist/ezui/p-ca9a0a49.entry.js +1 -0
  63. package/dist/ezui/p-f4d2438e.entry.js +1 -0
  64. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +8 -0
  65. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +4 -0
  66. package/dist/types/components/ez-grid/ez-grid.d.ts +1 -0
  67. package/package.json +2 -2
  68. package/dist/ezui/p-019c7fc4.entry.js +0 -1
  69. package/dist/ezui/p-4b2595f4.entry.js +0 -1
  70. package/dist/ezui/p-6a8e7fb2.entry.js +0 -1
  71. package/dist/ezui/p-74e6c2a9.entry.js +0 -1
  72. package/dist/ezui/p-7b8d1f1c.entry.js +0 -1
  73. package/dist/ezui/p-c55f63c6.entry.js +0 -1
  74. package/dist/ezui/p-dff2b725.entry.js +0 -1
  75. package/dist/ezui/p-fe578dc0.entry.js +0 -1
@@ -826,7 +826,7 @@ let EzChip$1 = class extends HTMLElement$1 {
826
826
  if (this._containerElem) {
827
827
  this.observeValue();
828
828
  this.observeEnabled();
829
- this._containerElem.setAttribute("data-element-id", 'ezChip_internal_button');
829
+ this._containerElem.setAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME, 'ezChip_internal_button');
830
830
  ElementIDUtils.addIDInfo(this._containerElem);
831
831
  }
832
832
  }
@@ -1331,12 +1331,6 @@ let EzComboBox$1 = class extends HTMLElement$1 {
1331
1331
  componentDidLoad() {
1332
1332
  CSSVarsUtils.applyVarsTextInput(this.el, this._textInput);
1333
1333
  this.setInputValue(false);
1334
- if (this.el) {
1335
- ElementIDUtils.addIDInfo(this.el, 'input');
1336
- if (this._textInput) {
1337
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this.el.getAttribute("data-element-id") });
1338
- }
1339
- }
1340
1334
  }
1341
1335
  //---------------------------------------------
1342
1336
  // Event handlers
@@ -1429,7 +1423,8 @@ let EzComboBox$1 = class extends HTMLElement$1 {
1429
1423
  }
1430
1424
  render() {
1431
1425
  var _a;
1432
- return (h(Host, null, h("ez-text-input", { 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 }, h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, 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)
1426
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
1427
+ return (h(Host, null, 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 }, h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, 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)
1433
1428
  ? h("button", { class: "btn btn__close", slot: "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.clearSearch() }, h("ez-icon", { iconName: "close" }))
1434
1429
  : undefined), h("section", { class: "list-container", ref: elem => this._listContainer = elem }, h("div", { class: "list-wrapper", ref: elem => this._listWrapper = elem }, h("div", { class: "list-options", ref: elem => this._optionsList = elem }, this._visibleOptions.length === 0
1435
1430
  && h("div", { class: "message" }, !this._showLoading && h("span", { class: "message__no-result" }, this._textEmptyList), this._showLoading && h("div", { class: "message__loading" })), this.showOptionValue
@@ -1588,18 +1583,10 @@ let EzDateInput$1 = class extends HTMLElement$1 {
1588
1583
  componentDidLoad() {
1589
1584
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
1590
1585
  this.setInputValue();
1591
- if (this._elem) {
1592
- ElementIDUtils.addIDInfo(this._elem, 'input');
1593
- if (this._textInput) {
1594
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
1595
- }
1596
- if (this._calendar) {
1597
- ElementIDUtils.addIDInfo(this._calendar, 'internal_calendar', { id: this._elem.getAttribute("data-element-id") });
1598
- }
1599
- }
1600
1586
  }
1601
1587
  render() {
1602
- return (h(Host, null, h("ez-text-input", { 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 }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), h("ez-calendar", { onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
1588
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
1589
+ return (h(Host, null, 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 }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), h("ez-calendar", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "calendar"), onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
1603
1590
  }
1604
1591
  get _elem() { return this; }
1605
1592
  static get watchers() { return {
@@ -1803,18 +1790,10 @@ let EzDateTimeInput$1 = class extends HTMLElement$1 {
1803
1790
  componentDidLoad() {
1804
1791
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
1805
1792
  this.setInputValue();
1806
- if (this._elem) {
1807
- ElementIDUtils.addIDInfo(this._elem, 'input');
1808
- if (this._textInput) {
1809
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
1810
- }
1811
- if (this._calendar) {
1812
- ElementIDUtils.addIDInfo(this._calendar, 'internal_calendar', { id: this._elem.getAttribute("data-element-id") });
1813
- }
1814
- }
1815
1793
  }
1816
1794
  render() {
1817
- return (h(Host, null, h("ez-text-input", { 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() }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), h("ez-calendar", { onEzChange: (event) => { this.changeValue(this._calendar.value); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem, time: true, showSeconds: this.showSeconds })));
1795
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
1796
+ return (h(Host, null, 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() }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), 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 })));
1818
1797
  }
1819
1798
  get _elem() { return this; }
1820
1799
  static get watchers() { return {
@@ -2026,15 +2005,10 @@ let EzFilterInput$1 = class extends HTMLElement$1 {
2026
2005
  }
2027
2006
  componentDidLoad() {
2028
2007
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
2029
- if (this._elem) {
2030
- ElementIDUtils.addIDInfo(this._elem, 'input');
2031
- if (this._textInput) {
2032
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
2033
- }
2034
- }
2035
2008
  }
2036
2009
  render() {
2037
- return (h("ez-text-input", { 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, loading: this.loading, mode: this.mode }, h("ez-icon", { slot: "leftIcon", iconName: "search" })));
2010
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
2011
+ 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, loading: this.loading, mode: this.mode }, h("ez-icon", { slot: "leftIcon", iconName: "search" })));
2038
2012
  }
2039
2013
  get _elem() { return this; }
2040
2014
  static get watchers() { return {
@@ -2986,7 +2960,7 @@ let EzForm$1 = class extends HTMLElement$1 {
2986
2960
  const idTabSelector = `${this._dataElementIdEzForm}_internal_tabSelector`;
2987
2961
  result.push(h("ez-tabselector", { tabs: this.buildIdTabSelector(tabs), onEzChange: (evt) => this._store.dispatch(changeTab(evt.detail)), selectedTab: currentSheet.name, "data-element-id": idTabSelector }));
2988
2962
  }
2989
- const idFormSheet = `${this._dataElementIdEzForm}_${StringUtils$1.toCamelCase(currentSheet.label)}`;
2963
+ const idFormSheet = `${this._dataElementIdEzForm}_${StringUtils$1.replaceAccentuatedChars(StringUtils$1.toCamelCase(currentSheet.label), false)}`;
2990
2964
  result.push(h(FormSheet, { store: this._store, source: currentSheet, dataElementId: idFormSheet }));
2991
2965
  return result;
2992
2966
  }
@@ -3064,7 +3038,7 @@ let EzForm$1 = class extends HTMLElement$1 {
3064
3038
  }
3065
3039
  buildIdTabSelector(tabs) {
3066
3040
  if (tabs) {
3067
- tabs.forEach(tab => tab["data-element-id"] = `${this._dataElementIdEzForm}_${StringUtils$1.toCamelCase(tab.label)}`);
3041
+ tabs.forEach(tab => tab[ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = `${this._dataElementIdEzForm}_${StringUtils$1.toCamelCase(tab.label)}`);
3068
3042
  }
3069
3043
  return tabs;
3070
3044
  }
@@ -117869,6 +117843,7 @@ class AgGridController {
117869
117843
  sortingOrder: ['desc', 'asc', null],
117870
117844
  columnDefs: this._colDefs,
117871
117845
  blockLoadDebounceMillis: this.BLOCK_LOAD_DEBOUNCE,
117846
+ navigateToNextCell: this.navigateToNextCell.bind(this),
117872
117847
  getRowNodeId: this._dataUnit ? (params) => typeof params === "string" ? params : params[this._idAttribName] : undefined,
117873
117848
  getMainMenuItems: (params) => {
117874
117849
  const column = params.column;
@@ -117908,6 +117883,45 @@ class AgGridController {
117908
117883
  getRowHeight() {
117909
117884
  return this.DEFAULT_ROW_HEIGHT;
117910
117885
  }
117886
+ navigateToNextCell(params) {
117887
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
117888
+ switch (params.key) {
117889
+ case 'ArrowUp':
117890
+ if (((_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.hasPrevious()) === false) {
117891
+ return null;
117892
+ }
117893
+ this._gridOptions.api.deselectAll();
117894
+ if (((_b = params.nextCellPosition) === null || _b === void 0 ? void 0 : _b.rowIndex) < 0) {
117895
+ (_c = this._dataUnit) === null || _c === void 0 ? void 0 : _c.previousRecord();
117896
+ return null;
117897
+ }
117898
+ else {
117899
+ (_d = this._dataUnit) === null || _d === void 0 ? void 0 : _d.setSelectionByIndex([params.nextCellPosition.rowIndex]);
117900
+ return params.nextCellPosition;
117901
+ }
117902
+ case 'ArrowDown':
117903
+ if (((_e = this._dataUnit) === null || _e === void 0 ? void 0 : _e.hasNext()) === false) {
117904
+ return null;
117905
+ }
117906
+ this._gridOptions.api.deselectAll();
117907
+ if ((_f = params.nextCellPosition) === null || _f === void 0 ? void 0 : _f.rowIndex) {
117908
+ (_g = this._dataUnit) === null || _g === void 0 ? void 0 : _g.setSelectionByIndex([params.nextCellPosition.rowIndex]);
117909
+ }
117910
+ else {
117911
+ (_h = this._dataUnit) === null || _h === void 0 ? void 0 : _h.nextRecord();
117912
+ }
117913
+ return params.nextCellPosition;
117914
+ case "ArrowLeft":
117915
+ case "ArrowRight":
117916
+ if (((_j = params.nextCellPosition) === null || _j === void 0 ? void 0 : _j.column.colDef.headerName) !== "") {
117917
+ return params.nextCellPosition;
117918
+ }
117919
+ else {
117920
+ return null;
117921
+ }
117922
+ }
117923
+ return null;
117924
+ }
117911
117925
  setOptionsEvents(opt) {
117912
117926
  opt.onSortChanged = e => this.onCallStateChange("sort", e);
117913
117927
  opt.onColumnResized = e => this.onCallStateChange("columnResize", e);
@@ -117968,7 +117982,14 @@ class AgGridController {
117968
117982
  throw new Error("Erro interno: Grid ainda não inicializado.");
117969
117983
  }
117970
117984
  this._gridOptions.api.forEachNode(node => {
117971
- node.setSelected(rowIds && rowIds.includes(node.id));
117985
+ var _a;
117986
+ if (rowIds && rowIds.includes(node.id)) {
117987
+ node.setSelected(true);
117988
+ (_a = this._gridOptions.api) === null || _a === void 0 ? void 0 : _a.ensureNodeVisible(node);
117989
+ }
117990
+ else {
117991
+ node.setSelected(false);
117992
+ }
117972
117993
  });
117973
117994
  const selectionHeader = this._gridOptions.context.selectionHeader;
117974
117995
  if (selectionHeader) {
@@ -118014,6 +118035,21 @@ class AgGridController {
118014
118035
  }
118015
118036
  this._gridOptions.api.refreshServerSide({ purge: false });
118016
118037
  }
118038
+ setFocusFirstRow() {
118039
+ const firstRow = this._gridOptions.api.getDisplayedRowAtIndex(0);
118040
+ this.setFocusOnRow(firstRow.rowIndex);
118041
+ }
118042
+ setFocusLastRow() {
118043
+ const lastRow = this._gridOptions.api.getDisplayedRowAtIndex(this._gridOptions.api.getLastDisplayedRow());
118044
+ this.setFocusOnRow(lastRow.rowIndex);
118045
+ }
118046
+ setFocusOnRow(rowIndex) {
118047
+ let displayedColumns = this._gridOptions.columnApi.getAllDisplayedColumns();
118048
+ let firstCell = displayedColumns.find((column) => column.getColDef().headerName !== "");
118049
+ this._gridOptions.api.ensureColumnVisible(firstCell);
118050
+ this._gridOptions.api.ensureIndexVisible(rowIndex);
118051
+ this._gridOptions.api.setFocusedCell(rowIndex, firstCell);
118052
+ }
118017
118053
  setColumnsDef(cols) {
118018
118054
  const newColDefs = [Object.assign({ colId: this.CHECK_BOX_COL_ID, headerName: "", checkboxSelection: true, width: 28, suppressMovable: true, suppressAutoSize: true, suppressMenu: true, lockPosition: true, pinned: true }, this._multipleSelection && { headerComponent: "ezGridHeaderComponent", headerClass: "ag-column-select-header" })];
118019
118055
  if (this._statusResolver != undefined) {
@@ -118283,6 +118319,7 @@ let EzGrid$1 = class extends HTMLElement$1 {
118283
118319
  this.ezDoubleClick = createEvent(this, "ezDoubleClick", 7);
118284
118320
  this.configChange = createEvent(this, "configChange", 7);
118285
118321
  this._gridController = new AgGridController(false);
118322
+ this._paginationChangedByKeyboard = true;
118286
118323
  }
118287
118324
  /**
118288
118325
  * Método responsável por receber a definição das colunas
@@ -118407,7 +118444,17 @@ let EzGrid$1 = class extends HTMLElement$1 {
118407
118444
  this._gridController.initDatagrid(this._container, {
118408
118445
  onColumnStateChange: (type, state, info) => this.onColumnStateChange(type, state, info),
118409
118446
  onSelectionChange: (selection) => this.ezSelectionChange.emit(selection),
118410
- onPaginationChange: (paginationInfo) => this._paginationInfo = paginationInfo,
118447
+ onPaginationChange: (paginationInfo) => {
118448
+ var _a;
118449
+ if (((_a = this._paginationInfo) === null || _a === void 0 ? void 0 : _a.currentPage) > paginationInfo.currentPage && this._paginationChangedByKeyboard) {
118450
+ this._gridController.setFocusLastRow();
118451
+ }
118452
+ else {
118453
+ this._gridController.setFocusFirstRow();
118454
+ this._paginationChangedByKeyboard = true;
118455
+ }
118456
+ this._paginationInfo = paginationInfo;
118457
+ },
118411
118458
  onDoubleClick: (row) => {
118412
118459
  this.ezDoubleClick.emit(row);
118413
118460
  },
@@ -118430,11 +118477,13 @@ let EzGrid$1 = class extends HTMLElement$1 {
118430
118477
  previousPage() {
118431
118478
  if (this.dataUnit) {
118432
118479
  this.dataUnit.previousPage();
118480
+ this._paginationChangedByKeyboard = false;
118433
118481
  }
118434
118482
  }
118435
118483
  nextPage() {
118436
118484
  if (this.dataUnit) {
118437
118485
  this.dataUnit.nextPage();
118486
+ this._paginationChangedByKeyboard = false;
118438
118487
  }
118439
118488
  }
118440
118489
  getPaginationControl() {
@@ -119284,15 +119333,10 @@ let EzNumberInput$1 = class extends HTMLElement$1 {
119284
119333
  componentDidLoad() {
119285
119334
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
119286
119335
  this.setInputValue();
119287
- if (this._elem) {
119288
- ElementIDUtils.addIDInfo(this._elem, 'input');
119289
- if (this._textInput) {
119290
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
119291
- }
119292
- }
119293
119336
  }
119294
119337
  render() {
119295
- return (h("ez-text-input", { 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 }));
119338
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
119339
+ return (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: () => this.handleInput(), restrict: this.precision > 0 ? "0123456789-,." : "0123456789-", enabled: this.enabled, errorMessage: this.errorMessage, mode: this.mode }));
119296
119340
  }
119297
119341
  get _elem() { return this; }
119298
119342
  static get watchers() { return {
@@ -119788,15 +119832,10 @@ let EzSearch$1 = class extends HTMLElement$1 {
119788
119832
  }
119789
119833
  componentDidLoad() {
119790
119834
  CSSVarsUtils.applyVarsTextInput(this._elem, this._comboElement);
119791
- if (this._elem) {
119792
- ElementIDUtils.addIDInfo(this._elem, 'input');
119793
- if (this._comboElement) {
119794
- ElementIDUtils.addIDInfo(this._comboElement, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
119795
- }
119796
- }
119797
119835
  }
119798
119836
  render() {
119799
- return (h("ez-combo-box", { 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 }));
119837
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
119838
+ return (h("ez-combo-box", { "data-element-id": 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 }));
119800
119839
  }
119801
119840
  ;
119802
119841
  get _elem() { return this; }
@@ -119913,7 +119952,7 @@ let EzTabselector$1 = class extends HTMLElement$1 {
119913
119952
  }
119914
119953
  componentDidLoad() {
119915
119954
  this._hostElem.shadowRoot.querySelectorAll('button[name="tab-button"]').forEach((elem) => {
119916
- const elemIdTabSelector = this._hostElem.getAttribute("data-element-id");
119955
+ const elemIdTabSelector = this._hostElem.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME);
119917
119956
  const dataInfo = { id: `${elemIdTabSelector}_${StringUtils$1.toCamelCase(elem.id)}` };
119918
119957
  ElementIDUtils.addIDInfo(elem, null, dataInfo);
119919
119958
  });
@@ -120005,10 +120044,10 @@ let EzTabselector$1 = class extends HTMLElement$1 {
120005
120044
  }
120006
120045
  buildElementIdTab(tabs) {
120007
120046
  tabs.forEach(tab => {
120008
- if (!tab.hasOwnProperty("data-element-id")) {
120009
- const elemIdTabSelector = this._hostElem.getAttribute("data-element-id");
120047
+ if (!tab.hasOwnProperty(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME)) {
120048
+ const elemIdTabSelector = this._hostElem.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME);
120010
120049
  const dataElementID = `${elemIdTabSelector}_${StringUtils$1.toCamelCase(tab.tabKey)}`;
120011
- tab["data-element-id"] = dataElementID;
120050
+ tab[ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = dataElementID;
120012
120051
  }
120013
120052
  });
120014
120053
  }
@@ -120171,17 +120210,12 @@ let EzTextArea$1 = class extends HTMLElement$1 {
120171
120210
  this.observeErrorMessage();
120172
120211
  this.adjustFloatingLabel();
120173
120212
  this.observeMode();
120174
- if (this._hostElement) {
120175
- ElementIDUtils.addIDInfo(this._hostElement, 'input');
120176
- if (this._inputElem) {
120177
- ElementIDUtils.addIDInfo(this._inputElem, 'internal_input', { id: this._hostElement.getAttribute("data-element-id") });
120178
- }
120179
- }
120180
120213
  }
120181
120214
  render() {
120215
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._hostElement, 'input');
120182
120216
  return (h(Host, null, h("div", { class: "textarea", ref: (el) => this._container = el }, this.label && this.mode != "slim" ?
120183
120217
  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)
120184
- : null, h("textarea", { onFocus: () => this.handleFocus(), 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" &&
120218
+ : null, h("textarea", { onFocus: () => this.handleFocus(), "data-element-id": 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" &&
120185
120219
  h("span", { class: "message-box", ref: (el) => this._messageBoxElem = el, title: this.errorMessage }, this.errorMessage)));
120186
120220
  }
120187
120221
  get _hostElement() { return this; }
@@ -120278,18 +120312,13 @@ let EzTextEdit$1 = class extends HTMLElement$1 {
120278
120312
  componentDidLoad() {
120279
120313
  this.applyFocusSelect();
120280
120314
  this.setNewValue(this.value);
120281
- if (this._element) {
120282
- ElementIDUtils.addIDInfo(this._element, 'input');
120283
- if (this._inputElement) {
120284
- ElementIDUtils.addIDInfo(this._inputElement, 'internal_input', { id: this._element.getAttribute("data-element-id") });
120285
- }
120286
- }
120287
120315
  }
120288
120316
  componentDidRender() {
120289
120317
  this.setStyledInput();
120290
120318
  }
120291
120319
  render() {
120292
- return (h(Host, null, h("span", { class: "text-edit__hidden-value", ref: elem => this._valueBasis = elem }), h("ez-text-input", { 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 }), h("ez-button", { class: "text-edit__icon-check", mode: "icon", iconName: "check", size: "small", onClick: () => { this.handleSaveEdition(); } }), h("ez-button", { class: "text-edit__icon-close", mode: "icon", iconName: "close", size: "small", onClick: () => { this.cancelEdition.emit(); } })));
120320
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._element, 'input');
120321
+ return (h(Host, null, h("span", { class: "text-edit__hidden-value", ref: elem => this._valueBasis = elem }), h("ez-text-input", { "data-element-id": 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 }), h("ez-button", { class: "text-edit__icon-check", mode: "icon", iconName: "check", size: "small", onClick: () => { this.handleSaveEdition(); } }), h("ez-button", { class: "text-edit__icon-close", mode: "icon", iconName: "close", size: "small", onClick: () => { this.cancelEdition.emit(); } })));
120293
120322
  }
120294
120323
  get _element() { return this; }
120295
120324
  static get style() { return ezTextEditCss; }
@@ -120505,12 +120534,6 @@ let EzTextInput$1 = class extends HTMLElement$1 {
120505
120534
  this.observeMask();
120506
120535
  this.adjustFloatingLabel();
120507
120536
  this.adjustBorderInput();
120508
- if (this._hostElement) {
120509
- ElementIDUtils.addIDInfo(this._hostElement, 'input');
120510
- if (this._inputElem) {
120511
- ElementIDUtils.addIDInfo(this._inputElem, 'internal_input', { id: this._hostElement.getAttribute("data-element-id") });
120512
- }
120513
- }
120514
120537
  }
120515
120538
  componentWillLoad() {
120516
120539
  this.observeMask();
@@ -120530,9 +120553,10 @@ let EzTextInput$1 = class extends HTMLElement$1 {
120530
120553
  }
120531
120554
  }
120532
120555
  render() {
120556
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._hostElement, 'input');
120533
120557
  return (h(Host, null, h("slot", { name: "leftIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.label && this.mode != "slim" ?
120534
120558
  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)
120535
- : null, h("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(); } }), h("slot", { name: "rightIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.canShowError && this.mode != "slim" &&
120559
+ : null, h("input", { "data-element-id": 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(); } }), h("slot", { name: "rightIcon", onSlotchange: (ev) => { this.handleSlotChange(ev); } }), this.canShowError && this.mode != "slim" &&
120536
120560
  h("span", { class: "message-box", ref: (el) => this._messageBoxElem = el, title: this.errorMessage }, this.errorMessage)));
120537
120561
  }
120538
120562
  get _hostElement() { return this; }
@@ -120682,12 +120706,6 @@ let EzTimeInput$1 = class extends HTMLElement$1 {
120682
120706
  //---------------------------------------------
120683
120707
  componentDidLoad() {
120684
120708
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
120685
- if (this._elem) {
120686
- ElementIDUtils.addIDInfo(this._elem, 'input');
120687
- if (this._textInput) {
120688
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
120689
- }
120690
- }
120691
120709
  }
120692
120710
  componentWillLoad() {
120693
120711
  this.observeShowSeconds();
@@ -120699,7 +120717,8 @@ let EzTimeInput$1 = class extends HTMLElement$1 {
120699
120717
  }
120700
120718
  }
120701
120719
  render() {
120702
- return (h(Host, null, h("ez-text-input", { 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 }, h("ez-icon", { slot: "leftIcon", iconName: "timer-outline" }))));
120720
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
120721
+ return (h(Host, null, h("ez-text-input", { "data-element-id": 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 }, h("ez-icon", { slot: "leftIcon", iconName: "timer-outline" }))));
120703
120722
  }
120704
120723
  static get assetsDirs() { return ["../assets"]; }
120705
120724
  get _elem() { return this; }
@@ -121265,7 +121284,7 @@ const EzDateTimeInput = /*@__PURE__*/proxyCustomElement(EzDateTimeInput$1, [1,"e
121265
121284
  const EzDialog = /*@__PURE__*/proxyCustomElement(EzDialog$1, [1,"ez-dialog",{"confirm":[1028],"dialogType":[1025,"dialog-type"],"message":[1025],"opened":[1540],"personalizedIconPath":[1025,"personalized-icon-path"],"ezTitle":[1025,"ez-title"]}]);
121266
121285
  const EzFilterInput = /*@__PURE__*/proxyCustomElement(EzFilterInput$1, [1,"ez-filter-input",{"label":[1],"value":[1537],"enabled":[4],"loading":[516],"errorMessage":[1537,"error-message"],"restrict":[1],"mode":[513]}]);
121267
121286
  const EzForm = /*@__PURE__*/proxyCustomElement(EzForm$1, [0,"ez-form",{"dataUnit":[1040],"config":[16],"recordsValidator":[16]}]);
121268
- const EzGrid = /*@__PURE__*/proxyCustomElement(EzGrid$1, [6,"ez-grid",{"multipleSelection":[4,"multiple-selection"],"config":[1040],"serverUrl":[1,"server-url"],"dataUnit":[16],"statusResolver":[16],"_paginationInfo":[32]}]);
121287
+ const EzGrid = /*@__PURE__*/proxyCustomElement(EzGrid$1, [6,"ez-grid",{"multipleSelection":[4,"multiple-selection"],"config":[1040],"serverUrl":[1,"server-url"],"dataUnit":[16],"statusResolver":[16],"_paginationInfo":[32],"_paginationChangedByKeyboard":[32]}]);
121269
121288
  const EzIcon = /*@__PURE__*/proxyCustomElement(EzIcon$1, [1,"ez-icon",{"size":[513],"href":[513],"iconName":[513,"icon-name"]}]);
121270
121289
  const EzList = /*@__PURE__*/proxyCustomElement(EzList$1, [1,"ez-list",{"dataSource":[1040],"useGroups":[1540,"use-groups"],"ezDraggable":[1028,"ez-draggable"],"ezSelectable":[1028,"ez-selectable"],"itemSlotBuilder":[1040],"_listItems":[32],"_listGroupItems":[32]}]);
121271
121290
  const EzLoadingBar = /*@__PURE__*/proxyCustomElement(EzLoadingBar$1, [1,"ez-loading-bar",{"_showLoading":[32]}]);
@@ -92,7 +92,7 @@ let EzChip = class {
92
92
  if (this._containerElem) {
93
93
  this.observeValue();
94
94
  this.observeEnabled();
95
- this._containerElem.setAttribute("data-element-id", 'ezChip_internal_button');
95
+ this._containerElem.setAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME, 'ezChip_internal_button');
96
96
  ElementIDUtils.addIDInfo(this._containerElem);
97
97
  }
98
98
  }
@@ -355,12 +355,6 @@ let EzComboBox = class {
355
355
  componentDidLoad() {
356
356
  CSSVarsUtils.applyVarsTextInput(this.el, this._textInput);
357
357
  this.setInputValue(false);
358
- if (this.el) {
359
- ElementIDUtils.addIDInfo(this.el, 'input');
360
- if (this._textInput) {
361
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this.el.getAttribute("data-element-id") });
362
- }
363
- }
364
358
  }
365
359
  //---------------------------------------------
366
360
  // Event handlers
@@ -453,7 +447,8 @@ let EzComboBox = class {
453
447
  }
454
448
  render() {
455
449
  var _a;
456
- return (h(Host, null, h("ez-text-input", { 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 }, h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, 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)
450
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
451
+ return (h(Host, null, 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 }, h("button", { class: "btn", slot: this.searchMode ? "leftIcon" : "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, 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)
457
452
  ? h("button", { class: "btn btn__close", slot: "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.clearSearch() }, h("ez-icon", { iconName: "close" }))
458
453
  : undefined), h("section", { class: "list-container", ref: elem => this._listContainer = elem }, h("div", { class: "list-wrapper", ref: elem => this._listWrapper = elem }, h("div", { class: "list-options", ref: elem => this._optionsList = elem }, this._visibleOptions.length === 0
459
454
  && h("div", { class: "message" }, !this._showLoading && h("span", { class: "message__no-result" }, this._textEmptyList), this._showLoading && h("div", { class: "message__loading" })), this.showOptionValue
@@ -138,18 +138,10 @@ let EzDateInput = class {
138
138
  componentDidLoad() {
139
139
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
140
140
  this.setInputValue();
141
- if (this._elem) {
142
- ElementIDUtils.addIDInfo(this._elem, 'input');
143
- if (this._textInput) {
144
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
145
- }
146
- if (this._calendar) {
147
- ElementIDUtils.addIDInfo(this._calendar, 'internal_calendar', { id: this._elem.getAttribute("data-element-id") });
148
- }
149
- }
150
141
  }
151
142
  render() {
152
- return (h(Host, null, h("ez-text-input", { 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 }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), h("ez-calendar", { onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
143
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
144
+ return (h(Host, null, 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 }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), h("ez-calendar", { "data-element-id": ElementIDUtils.getInternalIDInfo(elementId, "calendar"), onEzChange: (event) => { this.hideCalendar(); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem })));
153
145
  }
154
146
  get _elem() { return getElement(this); }
155
147
  static get watchers() { return {
@@ -193,18 +193,10 @@ let EzDateTimeInput = class {
193
193
  componentDidLoad() {
194
194
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
195
195
  this.setInputValue();
196
- if (this._elem) {
197
- ElementIDUtils.addIDInfo(this._elem, 'input');
198
- if (this._textInput) {
199
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
200
- }
201
- if (this._calendar) {
202
- ElementIDUtils.addIDInfo(this._calendar, 'internal_calendar', { id: this._elem.getAttribute("data-element-id") });
203
- }
204
- }
205
196
  }
206
197
  render() {
207
- return (h(Host, null, h("ez-text-input", { 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() }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), h("ez-calendar", { onEzChange: (event) => { this.changeValue(this._calendar.value); event.stopPropagation(); }, floating: true, ref: elem => this._calendar = elem, time: true, showSeconds: this.showSeconds })));
198
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
199
+ return (h(Host, null, 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() }, h("button", { disabled: !this.enabled, tabindex: -1, class: "btn-open-cal", onClick: () => this.showCalendar(), slot: "leftIcon" })), 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 })));
208
200
  }
209
201
  get _elem() { return getElement(this); }
210
202
  static get watchers() { return {
@@ -60,15 +60,10 @@ let EzFilterInput = class {
60
60
  }
61
61
  componentDidLoad() {
62
62
  CSSVarsUtils.applyVarsTextInput(this._elem, this._textInput);
63
- if (this._elem) {
64
- ElementIDUtils.addIDInfo(this._elem, 'input');
65
- if (this._textInput) {
66
- ElementIDUtils.addIDInfo(this._textInput, 'internal_input', { id: this._elem.getAttribute("data-element-id") });
67
- }
68
- }
69
63
  }
70
64
  render() {
71
- return (h("ez-text-input", { 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, loading: this.loading, mode: this.mode }, h("ez-icon", { slot: "leftIcon", iconName: "search" })));
65
+ let elementId = ElementIDUtils.addIDInfoIfNotExists(this._elem, 'input');
66
+ 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, loading: this.loading, mode: this.mode }, h("ez-icon", { slot: "leftIcon", iconName: "search" })));
72
67
  }
73
68
  get _elem() { return getElement(this); }
74
69
  static get watchers() { return {
@@ -944,7 +944,7 @@ let EzForm = class {
944
944
  const idTabSelector = `${this._dataElementIdEzForm}_internal_tabSelector`;
945
945
  result.push(h("ez-tabselector", { tabs: this.buildIdTabSelector(tabs), onEzChange: (evt) => this._store.dispatch(changeTab(evt.detail)), selectedTab: currentSheet.name, "data-element-id": idTabSelector }));
946
946
  }
947
- const idFormSheet = `${this._dataElementIdEzForm}_${StringUtils.toCamelCase(currentSheet.label)}`;
947
+ const idFormSheet = `${this._dataElementIdEzForm}_${StringUtils.replaceAccentuatedChars(StringUtils.toCamelCase(currentSheet.label), false)}`;
948
948
  result.push(h(FormSheet, { store: this._store, source: currentSheet, dataElementId: idFormSheet }));
949
949
  return result;
950
950
  }
@@ -1022,7 +1022,7 @@ let EzForm = class {
1022
1022
  }
1023
1023
  buildIdTabSelector(tabs) {
1024
1024
  if (tabs) {
1025
- tabs.forEach(tab => tab["data-element-id"] = `${this._dataElementIdEzForm}_${StringUtils.toCamelCase(tab.label)}`);
1025
+ tabs.forEach(tab => tab[ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = `${this._dataElementIdEzForm}_${StringUtils.toCamelCase(tab.label)}`);
1026
1026
  }
1027
1027
  return tabs;
1028
1028
  }