@sankhyalabs/ezui 2.10.1 → 2.11.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 (144) hide show
  1. package/dist/cjs/ez-actions-button.cjs.entry.js +1 -1
  2. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  3. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  4. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-button.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-card-item.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  10. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-combo-box.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
  13. package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-dropdown.cjs.entry.js +503 -0
  16. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  17. package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
  18. package/dist/cjs/ez-form.cjs.entry.js +1 -1
  19. package/dist/cjs/ez-grid.cjs.entry.js +1 -1
  20. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-list.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
  24. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  25. package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
  26. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  28. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  29. package/dist/cjs/ez-scroller.cjs.entry.js +1 -1
  30. package/dist/cjs/ez-search.cjs.entry.js +1 -1
  31. package/dist/cjs/ez-sidebar-button.cjs.entry.js +1 -1
  32. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  34. package/dist/cjs/ez-text-edit.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  39. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  41. package/dist/cjs/ezui.cjs.js +2 -2
  42. package/dist/cjs/{index-8646c40d.js → index-fb179d74.js} +3 -0
  43. package/dist/cjs/loader.cjs.js +2 -2
  44. package/dist/collection/collection-manifest.json +1 -0
  45. package/dist/collection/components/ez-dropdown/ez-dropdown.css +349 -0
  46. package/dist/collection/components/ez-dropdown/ez-dropdown.js +339 -0
  47. package/dist/collection/components/ez-dropdown/structure/DropdownItem.js +33 -0
  48. package/dist/collection/components/ez-dropdown/structure/SubmenuControl.js +241 -0
  49. package/dist/custom-elements/index.d.ts +6 -0
  50. package/dist/custom-elements/index.js +501 -2
  51. package/dist/esm/ez-actions-button.entry.js +1 -1
  52. package/dist/esm/ez-alert.entry.js +1 -1
  53. package/dist/esm/ez-application.entry.js +1 -1
  54. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  55. package/dist/esm/ez-button.entry.js +1 -1
  56. package/dist/esm/ez-calendar.entry.js +1 -1
  57. package/dist/esm/ez-card-item.entry.js +1 -1
  58. package/dist/esm/ez-check.entry.js +1 -1
  59. package/dist/esm/ez-chip.entry.js +1 -1
  60. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  61. package/dist/esm/ez-combo-box.entry.js +1 -1
  62. package/dist/esm/ez-date-input.entry.js +1 -1
  63. package/dist/esm/ez-date-time-input.entry.js +1 -1
  64. package/dist/esm/ez-dialog.entry.js +1 -1
  65. package/dist/esm/ez-dropdown.entry.js +499 -0
  66. package/dist/esm/ez-file-item.entry.js +1 -1
  67. package/dist/esm/ez-filter-input.entry.js +1 -1
  68. package/dist/esm/ez-form.entry.js +1 -1
  69. package/dist/esm/ez-grid.entry.js +1 -1
  70. package/dist/esm/ez-icon.entry.js +1 -1
  71. package/dist/esm/ez-list.entry.js +1 -1
  72. package/dist/esm/ez-loading-bar.entry.js +1 -1
  73. package/dist/esm/ez-modal-container.entry.js +1 -1
  74. package/dist/esm/ez-modal.entry.js +1 -1
  75. package/dist/esm/ez-number-input.entry.js +1 -1
  76. package/dist/esm/ez-popover.entry.js +1 -1
  77. package/dist/esm/ez-popup.entry.js +1 -1
  78. package/dist/esm/ez-radio-button.entry.js +1 -1
  79. package/dist/esm/ez-scroller.entry.js +1 -1
  80. package/dist/esm/ez-search.entry.js +1 -1
  81. package/dist/esm/ez-sidebar-button.entry.js +1 -1
  82. package/dist/esm/ez-tabselector.entry.js +1 -1
  83. package/dist/esm/ez-text-area.entry.js +1 -1
  84. package/dist/esm/ez-text-edit.entry.js +1 -1
  85. package/dist/esm/ez-text-input.entry.js +1 -1
  86. package/dist/esm/ez-time-input.entry.js +1 -1
  87. package/dist/esm/ez-toast.entry.js +1 -1
  88. package/dist/esm/ez-tree.entry.js +1 -1
  89. package/dist/esm/ez-upload.entry.js +1 -1
  90. package/dist/esm/ez-view-stack.entry.js +1 -1
  91. package/dist/esm/ezui.js +2 -2
  92. package/dist/esm/{index-7bc778b3.js → index-b77dcd0d.js} +3 -0
  93. package/dist/esm/loader.js +2 -2
  94. package/dist/ezui/ezui.esm.js +1 -1
  95. package/dist/ezui/{p-cfcc23e6.entry.js → p-07d07b75.entry.js} +1 -1
  96. package/dist/ezui/{p-7c227b86.entry.js → p-21782390.entry.js} +1 -1
  97. package/dist/ezui/{p-739d60d1.entry.js → p-22f06920.entry.js} +1 -1
  98. package/dist/ezui/{p-f6111077.entry.js → p-2686fa5b.entry.js} +1 -1
  99. package/dist/ezui/{p-b60fbad2.entry.js → p-297d4378.entry.js} +1 -1
  100. package/dist/ezui/p-42376b77.entry.js +1 -0
  101. package/dist/ezui/{p-f18f16e0.entry.js → p-42f85e36.entry.js} +1 -1
  102. package/dist/ezui/{p-171c3236.entry.js → p-46c3cd8e.entry.js} +1 -1
  103. package/dist/ezui/{p-32f9f83a.entry.js → p-4b93860c.entry.js} +1 -1
  104. package/dist/ezui/{p-7e496975.entry.js → p-52a18a6c.entry.js} +1 -1
  105. package/dist/ezui/{p-5dc3af60.entry.js → p-5d19cd0d.entry.js} +1 -1
  106. package/dist/ezui/{p-9def6fd0.entry.js → p-5e3079cb.entry.js} +1 -1
  107. package/dist/ezui/{p-ea877274.entry.js → p-620e71e2.entry.js} +1 -1
  108. package/dist/ezui/{p-04fab1e9.entry.js → p-6a53943d.entry.js} +1 -1
  109. package/dist/ezui/{p-1634c851.entry.js → p-6c43b275.entry.js} +1 -1
  110. package/dist/ezui/{p-3c7ea91b.js → p-6ccf5720.js} +1 -1
  111. package/dist/ezui/{p-123a2bd5.entry.js → p-6cdfe0db.entry.js} +1 -1
  112. package/dist/ezui/p-74a3f9d8.entry.js +1 -0
  113. package/dist/ezui/{p-a2e55b33.entry.js → p-7d8e693d.entry.js} +1 -1
  114. package/dist/ezui/{p-93bcc628.entry.js → p-7e9ab877.entry.js} +1 -1
  115. package/dist/ezui/{p-5c9ce8a7.entry.js → p-87dd65ba.entry.js} +1 -1
  116. package/dist/ezui/{p-f2627de5.entry.js → p-8c273b22.entry.js} +1 -1
  117. package/dist/ezui/{p-04a3b457.entry.js → p-9171043f.entry.js} +1 -1
  118. package/dist/ezui/{p-941e9792.entry.js → p-98c78c29.entry.js} +1 -1
  119. package/dist/ezui/{p-ddb1c350.entry.js → p-99e07a6b.entry.js} +1 -1
  120. package/dist/ezui/{p-6fd5e142.entry.js → p-a4405e80.entry.js} +1 -1
  121. package/dist/ezui/{p-f2c4e811.entry.js → p-a7380524.entry.js} +1 -1
  122. package/dist/ezui/{p-79e409c6.entry.js → p-a928ea8d.entry.js} +1 -1
  123. package/dist/ezui/{p-25e83e46.entry.js → p-b5efd273.entry.js} +1 -1
  124. package/dist/ezui/{p-9404f22b.entry.js → p-b7a8708e.entry.js} +1 -1
  125. package/dist/ezui/{p-46113d5a.entry.js → p-b9d91679.entry.js} +1 -1
  126. package/dist/ezui/{p-1a89d3ff.entry.js → p-ba7b2b8f.entry.js} +1 -1
  127. package/dist/ezui/{p-14a04845.entry.js → p-bdb5e325.entry.js} +1 -1
  128. package/dist/ezui/{p-50ae478a.entry.js → p-d04f3bb1.entry.js} +1 -1
  129. package/dist/ezui/{p-e613d9bf.entry.js → p-e3743d12.entry.js} +1 -1
  130. package/dist/ezui/{p-37335c51.entry.js → p-e628c8bd.entry.js} +1 -1
  131. package/dist/ezui/{p-ad5fe50b.entry.js → p-e881ec6d.entry.js} +1 -1
  132. package/dist/ezui/{p-3cfefc57.entry.js → p-e9b4b3bd.entry.js} +1 -1
  133. package/dist/ezui/{p-74c7f960.entry.js → p-f58201e8.entry.js} +1 -1
  134. package/dist/ezui/{p-a86d00b3.entry.js → p-f8f87959.entry.js} +1 -1
  135. package/dist/ezui/{p-9334a724.entry.js → p-fe1f0c92.entry.js} +1 -1
  136. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +58 -0
  137. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +28 -0
  138. package/dist/types/components/ez-dropdown/structure/SubmenuControl.d.ts +78 -0
  139. package/dist/types/components.d.ts +46 -0
  140. package/package.json +1 -1
  141. package/react/components.d.ts +1 -0
  142. package/react/components.js +1 -0
  143. package/react/components.js.map +1 -1
  144. package/dist/ezui/p-1cc11468.entry.js +0 -1
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-b77dcd0d.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezChipCss = ":host{--ez-label-chip--height:30px;--ez-label-chip__label--font-size:var(--text--medium, 14px);--ez-label-chip__label--font-family:var(--font-pattern, Arial);--ez-label-chip__label--font-weight:var(--text-weight--medium, 400);--ez-label-chip__label--space--medium:var(--space--medium, 12px);--ez-label-chip__label--title--primary:var(--title--primary, #2B3A54);--ez-label-chip__label--text--primary:var(--text--primary, #626e82);--ez-label-chip__label__container--border-radius:var(--border--radius-large, 24px);--ez-label-chip__label__container--border:1px solid;--ez-label-chip__label__container--border-color-strokes:var(--color--strokes, #DCE0E8);--ez-label-chip__label__container--color-primary:var(--color--primary, #008561);--ez-label-chip__label__container-color--disable-secondary:var(--color--disable-secondary, #F2F5F8);--ez-label-chip__label__container--background-color:var(--color--primary-300);--ez-label-chip__label__container--border-color:#0085610F;--ez-label-chip__label__container--default--border-color--active:var(--color--primary, #007a5a);--ez-label-chip__label__container--default--background-color--hover:var(--color--primary-300, #f2faf8);--ez-label-chip__label__container--default--color--hover:var(--color--primary, #f2faf8);--ez-label-chip__label__container--text--disabled:var(--text--disable, #AFB6C0);--ez-label-chip__label__container--default--border-color--active:var(--color--primary)}.lbl{display:flex;white-space:nowrap;align-items:center;cursor:pointer;user-select:none;color:var(--ez-label-chip__label--title--primary);height:var(--ez-label-chip--height);font-family:var(--ez-label-chip__label--font-family);font-size:var(--ez-label-chip__label--font-size);font-weight:var(--ez-label-chip__label--font-weight)}.lbl--active{color:var(--ez-label-chip__label__container--default--color--hover)}.lbl--disabled{color:var(--ez-label-chip__label__container--text--disabled)}.label__container{cursor:pointer;width:max-content;display:flex;flex-wrap:wrap;align-items:center;background-color:#FFFFFF;color:var(--ez-label-chip__label--text--primary);fill:var(--ez-label-chip__label--text--primary);--ez-icon--color:var(--ez-label-chip__label--text--primary);border:var(--ez-label-chip__label__container--border);border-radius:var(--ez-label-chip__label__container--border-radius);border-color:var(--ez-label-chip__label__container--border-color-strokes);padding-right:var(--ez-label-chip__label--space--medium);padding-left:var(--ez-label-chip__label--space--medium);outline-color:var(--ez-label-chip__label__container--default--border-color--active)}.label__content{display:flex;align-items:center;flex-wrap:wrap;--ez-icon--color:var(--ez-label-chip__label--text--primary)}.label__container--disabled{cursor:default;border-color:var(--ez-label-chip__label__container-color--disable-secondary);background-color:var(--ez-label-chip__label__container-color--disable-secondary);fill:var(--ez-label-chip__label__container--text--disabled);color:var(--ez-label-chip__label__container--text--disabled);--ez-icon--color:var(--ez-label-chip__label__container--text--disabled)}.label__container--active{border-color:var(--ez-label-chip__label__container--default--background-color--hover);background-color:var(--ez-label-chip__label__container--default--background-color--hover);color:var(--ez-label-chip__label__container--default--color--hover);fill:var(--ez-label-chip__label__container--default--color--hover);--ez-icon--color:var(--ez-label-chip__label__container--default--color--hover)}.label__container:hover{border-color:var(--ez-label-chip__label__container--default--border-color--active)}.label__container--disabled:hover{cursor:default;border:var(--ez-label-chip__label__container--border);border-color:var(--ez-label-chip__label__container-color--disable-secondary);background-color:var(--ez-label-chip__label__container-color--disable-secondary);fill:var(--ez-label-chip__label__container--text--disabled);color:var(--ez-label-chip__label__container--text--disabled);--ez-icon--color:var(--ez-label-chip__label__container--text--disabled)}.label__content__icon{display:flex;cursor:pointer;color:var(--ez-label-chip__label--text--primary);fill:var(--ez-label-chip__label--text--primary);--ez-icon--color:var(--ez-label-chip__label--text--primary)}.label__container--row-reverse{flex-direction:row-reverse}.label__container .btn-close{padding:0px 0px 0px 8px}.label__container--row-reverse .btn-close{padding:0px 8px 0px 0px}.cursor-disable{cursor:default}ez-icon{--ez-icon--color:inherit}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-b77dcd0d.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { A as ApplicationUtils } from './ApplicationUtils-9fda4796.js';
4
4
  import './DialogType-54a62731.js';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-b77dcd0d.js';
2
2
  import { FloatingManager, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { A as ApplicationUtils } from './ApplicationUtils-9fda4796.js';
4
4
  import { C as CSSVarsUtils } from './CSSVarsUtils-00f67f32.js';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-b77dcd0d.js';
2
2
  import { DateUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { C as CSSVarsUtils } from './CSSVarsUtils-00f67f32.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-b77dcd0d.js';
2
2
  import { DateUtils, TimeFormatter, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { C as CSSVarsUtils } from './CSSVarsUtils-00f67f32.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, f as forceUpdate, h, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, g as getElement } from './index-b77dcd0d.js';
2
2
  import { D as DialogType } from './DialogType-54a62731.js';
3
3
  import { ElementIDUtils } from '@sankhyalabs/core';
4
4
 
@@ -0,0 +1,499 @@
1
+ import { h, r as registerInstance, c as createEvent, H as Host, g as getElement } from './index-b77dcd0d.js';
2
+ import { ElementIDUtils, ObjectUtils } from '@sankhyalabs/core';
3
+
4
+ const DropdownItem = ({ item, hasIcon, hasChildren, isLockedLevels, onSubActionClick }) => {
5
+ return (h("div", { class: "ez-dropdown__item-wrapper", title: item.label },
6
+ getContentLeft(item, hasIcon),
7
+ h("span", { class: "ez-dropdown__item-label" }, item.label),
8
+ getContentRight(item, hasChildren, isLockedLevels, onSubActionClick)));
9
+ };
10
+ const getContentLeft = (item, hasIcon) => {
11
+ if (item == undefined || !hasIcon) {
12
+ return;
13
+ }
14
+ if (item.iconName) {
15
+ return (h("ez-icon", Object.assign({ class: "ez-dropdown__icon-left", iconName: item.iconName, size: "medium" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${item.id}_ezDropdownItemIcon` })));
16
+ }
17
+ return (h("ez-icon", { class: "ez-dropdown__icon-left ez-dropdown__hidden", size: "medium" }));
18
+ };
19
+ const getContentRight = (item, hasChildren, isLockedLevels, onClick) => {
20
+ var _a, _b;
21
+ if (item == undefined) {
22
+ return;
23
+ }
24
+ if (!((_a = item.children) === null || _a === void 0 ? void 0 : _a.length) && item.subAction != undefined && Object.keys(item.subAction).length > 0) {
25
+ return (h("span", Object.assign({ onClick: () => onClick(item), title: item.subAction.label, class: `ez-dropdown__link ez-dropdown__link--${item.subAction.type || "primary"}` }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${item.subAction.id}_ezDropdownItemSubAction` }), item.subAction.label));
26
+ }
27
+ if (isLockedLevels || !hasChildren) {
28
+ return;
29
+ }
30
+ if (((_b = item.children) === null || _b === void 0 ? void 0 : _b.length) > 0) {
31
+ return (h("ez-icon", Object.assign({ class: "ez-dropdown__icon-right", iconName: "chevron-right", size: "medium" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${item.id}_ezDropdownIconOpenChildren` })));
32
+ }
33
+ return (h("ez-icon", { class: "ez-dropdown__icon-right ez-dropdown__hidden", size: "medium" }));
34
+ };
35
+
36
+ class SubmenuControl {
37
+ constructor() { }
38
+ //---------------------------------------------
39
+ // Public methods
40
+ //---------------------------------------------
41
+ /**
42
+ * Método responsável por fechar submenus abertos e abrir o submenu desejado.
43
+ * @param menu - Item de menu selecionado para abrir o submenu.
44
+ */
45
+ show(menu) {
46
+ const submenu = menu === null || menu === void 0 ? void 0 : menu.querySelector(".ez-dropdown__submenu");
47
+ if (menu == undefined || submenu == undefined) {
48
+ return;
49
+ }
50
+ submenu.classList.remove("ez-dropdown__submenu--hide");
51
+ this.setPosition(menu);
52
+ this.setScrollContainer(menu);
53
+ this.setMaxHeight(submenu);
54
+ }
55
+ /**
56
+ * Método responsável por fechar um determinado submenu aberto.
57
+ * @param menu - Item de menu selecionado com o submenu aberto.
58
+ */
59
+ hide(menu) {
60
+ if (menu == undefined) {
61
+ return;
62
+ }
63
+ const submenuSelector = ".ez-dropdown__submenu:not(.ez-dropdown__submenu--hide)";
64
+ const submenuElement = menu.querySelector(submenuSelector);
65
+ this.reset(submenuElement);
66
+ this.hideChild(submenuElement);
67
+ }
68
+ /**
69
+ * Método responsável por fechar todos os submenus filhos de um determinado submenu.
70
+ * @param submenu - Elemento HTML do submenu pai.
71
+ */
72
+ hideChild(submenu) {
73
+ if (submenu == undefined) {
74
+ return;
75
+ }
76
+ submenu.querySelectorAll(".ez-dropdown__submenu")
77
+ .forEach((child) => {
78
+ this.reset(child);
79
+ });
80
+ }
81
+ /**
82
+ * Método responsável por posicionar o submenu na tela.
83
+ * @param menu - Item da lista selecionado para abrir o submenu.
84
+ */
85
+ setPosition(menu) {
86
+ const submenu = menu === null || menu === void 0 ? void 0 : menu.querySelector(".ez-dropdown__submenu");
87
+ const dropdown = menu === null || menu === void 0 ? void 0 : menu.closest(".ez-dropdown");
88
+ if (submenu == undefined || dropdown == undefined) {
89
+ return;
90
+ }
91
+ submenu.style.top = this.getPositionTop(menu);
92
+ submenu.style.left = this.getPositionRight(dropdown);
93
+ const bounding = submenu === null || submenu === void 0 ? void 0 : submenu.getBoundingClientRect();
94
+ const docWidth = document.body.clientWidth;
95
+ if ((bounding === null || bounding === void 0 ? void 0 : bounding.right) > docWidth) {
96
+ this.updatePosition(dropdown, submenu);
97
+ }
98
+ }
99
+ /**
100
+ * Método responsável por controlar a altura máxima do dropdown.
101
+ * @param element - Elemento HTML pai do dropdown que será renderizado.
102
+ */
103
+ setMaxHeight(element) {
104
+ var _a;
105
+ const parentElement = (element === null || element === void 0 ? void 0 : element.shadowRoot) || element;
106
+ const dropdown = parentElement === null || parentElement === void 0 ? void 0 : parentElement.querySelector(".ez-dropdown");
107
+ const docHeight = document.body.clientHeight;
108
+ let submenu;
109
+ let bounding;
110
+ if ((parentElement === null || parentElement === void 0 ? void 0 : parentElement["tagName"]) != undefined) {
111
+ submenu = parentElement;
112
+ bounding = submenu === null || submenu === void 0 ? void 0 : submenu.getBoundingClientRect();
113
+ }
114
+ else {
115
+ bounding = dropdown === null || dropdown === void 0 ? void 0 : dropdown.getBoundingClientRect();
116
+ }
117
+ if (dropdown == undefined || bounding == undefined) {
118
+ return;
119
+ }
120
+ /**
121
+ * Menu aberto irá ultrapassar a altura da página?
122
+ */
123
+ if ((bounding.y + bounding.height) > docHeight) {
124
+ /**
125
+ * Menu aberto é um submenu?
126
+ * Sim: realiza o calculo com base na altura do menu pai
127
+ * Não: recalcula a altura do menu para atualizar a barra de rolagem
128
+ */
129
+ if (submenu != undefined) {
130
+ const dropdownParent = submenu.closest(".ez-dropdown");
131
+ const boundingParent = dropdownParent === null || dropdownParent === void 0 ? void 0 : dropdownParent.getBoundingClientRect();
132
+ const marginTop = parseFloat(((_a = getComputedStyle(submenu)) === null || _a === void 0 ? void 0 : _a.marginTop) || "0");
133
+ if (dropdownParent == undefined || boundingParent == undefined) {
134
+ return;
135
+ }
136
+ /**
137
+ * Submenu aberto ao ser reposicionado ficará acima da altura do menu pai?
138
+ * Sim: posiciona o submenu na altura do menu pai e recalcula a sua altura para atualizar a barra de rolagem
139
+ * Não: posiciona o submenu entre a altura do menu pai e o rodapé da página
140
+ */
141
+ if ((boundingParent.y + bounding.height) > docHeight) {
142
+ submenu.style.top = (boundingParent.y - marginTop) + "px";
143
+ dropdown.style.maxHeight = (docHeight - boundingParent.y) + "px";
144
+ }
145
+ else {
146
+ submenu.style.top = (docHeight - bounding.height - marginTop) + "px";
147
+ }
148
+ }
149
+ else {
150
+ let maxHeight = docHeight - bounding.y;
151
+ if (maxHeight < 0) {
152
+ maxHeight = bounding.height - docHeight;
153
+ }
154
+ dropdown.style.maxHeight = maxHeight + "px";
155
+ }
156
+ }
157
+ this.setSpacerContainer(dropdown);
158
+ }
159
+ /**
160
+ * Método responsável por atribuir a classe de espaçamento entre o conteúdo e o scroll.
161
+ * @param dropdown - Elemento HTML pai do container que receberá a classe.
162
+ */
163
+ setSpacerContainer(dropdown) {
164
+ const container = dropdown === null || dropdown === void 0 ? void 0 : dropdown.querySelector(".ez-dropdown__container");
165
+ if (container == undefined) {
166
+ return;
167
+ }
168
+ if (container.scrollHeight > container.clientHeight) {
169
+ container.classList.add("ez-dropdown__container--spacer");
170
+ }
171
+ else {
172
+ container.classList.remove("ez-dropdown__container--spacer");
173
+ }
174
+ }
175
+ /**
176
+ * Método responsável por resetar um determinado submenu aberto.
177
+ * @param submenu - Elemento HTML do submenu que será resetado.
178
+ */
179
+ reset(submenu) {
180
+ if (submenu == undefined) {
181
+ return;
182
+ }
183
+ submenu.classList.add("ez-dropdown__submenu--hide");
184
+ submenu.style.left = "";
185
+ submenu.style.top = "";
186
+ const dropdown = submenu.querySelector(".ez-dropdown");
187
+ this.resetDropdown(dropdown);
188
+ }
189
+ /**
190
+ * Método responsável por resetar um determinado dropdown renderizado.
191
+ * @param dropdown - Elemento HTML do dropdown que será resetado.
192
+ */
193
+ resetDropdown(dropdown) {
194
+ if (dropdown == undefined) {
195
+ return;
196
+ }
197
+ dropdown.style.maxHeight = "";
198
+ this.setSpacerContainer(dropdown);
199
+ }
200
+ //---------------------------------------------
201
+ // Private methods
202
+ //---------------------------------------------
203
+ /**
204
+ * Método responsável por controlar o scroll do container do submenu aberto.
205
+ * @param menu - Item da lista selecionado para abrir o submenu.
206
+ */
207
+ setScrollContainer(menu) {
208
+ const container = menu === null || menu === void 0 ? void 0 : menu.closest(".ez-dropdown__container");
209
+ if (container == undefined) {
210
+ return;
211
+ }
212
+ container.onscroll = this.onScrollContainer.bind(this);
213
+ }
214
+ /**
215
+ * Método responsável por fechar os submenus filhos ao movimentar o scroll.
216
+ * @param event - Evento de scroll disparado pelo Elemento HTML pai.
217
+ */
218
+ onScrollContainer(event) {
219
+ const target = event === null || event === void 0 ? void 0 : event.target;
220
+ this.hideChild(target);
221
+ }
222
+ /**
223
+ * Método responsável por retornar a posição superior (top) de um elemento HTML na tela.
224
+ * @param hostElement - Elemento HTML que será capturado o valor de sua posição superior (top) na tela.
225
+ * @returns Valor da posição superior (top) de um determinado elemento HTML.
226
+ */
227
+ getPositionTop(hostElement) {
228
+ const boundingHost = hostElement === null || hostElement === void 0 ? void 0 : hostElement.getBoundingClientRect();
229
+ if (boundingHost == undefined) {
230
+ return;
231
+ }
232
+ return boundingHost.y + "px";
233
+ }
234
+ /**
235
+ * Método responsável por retornar a posição direita (right) de um elemento HTML na tela.
236
+ * @param hostElement - Elemento HTML que será capturado o valor de sua posição direita (right) na tela.
237
+ * @returns Valor da posição direita (right) de um determinado elemento HTML.
238
+ */
239
+ getPositionRight(hostElement) {
240
+ const boundingHost = hostElement === null || hostElement === void 0 ? void 0 : hostElement.getBoundingClientRect();
241
+ if (boundingHost == undefined) {
242
+ return;
243
+ }
244
+ return (boundingHost.x + boundingHost.width) + "px";
245
+ }
246
+ /**
247
+ * Método responsável por retornar a posição esquerda (left) de um elemento HTML desconsiderando a largura de outro elemento HTML.
248
+ * @param hostElement - Elemento HTML que será capturado o valor de sua posição esquerda (left) na tela.
249
+ * @param targetElement - Elemento HTML que será capturado o valor de sua largura (width).
250
+ * @returns Valor da posição esquerda (left) de um determinado elemento HTML desconsiderando a largura de outro elemento HTML.
251
+ */
252
+ getPositionLeft(hostElement, targetElement) {
253
+ const boundingHost = hostElement === null || hostElement === void 0 ? void 0 : hostElement.getBoundingClientRect();
254
+ const boundingTarget = targetElement === null || targetElement === void 0 ? void 0 : targetElement.getBoundingClientRect();
255
+ if (boundingHost == undefined || boundingTarget == undefined) {
256
+ return;
257
+ }
258
+ return (boundingHost.x - boundingTarget.width) + "px";
259
+ }
260
+ /**
261
+ * Método responsável por atualizar a posição de um elemento HTML que renderizou fora da tela.
262
+ * @param hostElement - Elemento HTML que será a referência de posição dentro da tela.
263
+ * @param targetElement - Elemento HTML que será reposicionado na tela.
264
+ */
265
+ updatePosition(hostElement, targetElement) {
266
+ const boundingHost = hostElement === null || hostElement === void 0 ? void 0 : hostElement.getBoundingClientRect();
267
+ const boundingTarget = targetElement === null || targetElement === void 0 ? void 0 : targetElement.getBoundingClientRect();
268
+ if (boundingHost == undefined || boundingTarget == undefined) {
269
+ return;
270
+ }
271
+ if (boundingHost.x < boundingTarget.right) {
272
+ targetElement.style.left = this.getPositionLeft(hostElement, targetElement);
273
+ this.updatePosition(hostElement, targetElement);
274
+ }
275
+ }
276
+ }
277
+
278
+ const ezDropdownCss = ":host{--ez-dropdown--z-index:var(--more-visible, 2);--ez-dropdown--padding:var(--space--small, 6px);--ez-dropdown--box-shadow:var(--shadow--medium, 0px 8px 24px rgba(0, 38, 111, 0.1));--ez-dropdown--border-radius:var(--border--radius-medium, 12px);--ez-dropdown--background-color:var(--background--xlight, #fff);--ez-dropdown--font-family:var(--font-pattern, 'Roboto');--ez-dropdown--max-width:320px;--ez-dropdown--max-height:440px;--ez-dropdown__item--padding:var(--space--small, 6px);--ez-dropdown__item--gap:var(--space--small, 6px);--ez-dropdown__item--border-radius:var(--border--radius-small, 6px);--ez-dropdown__item--color:var(--title--primary, #2b3a54);--ez-dropdown__item--font-weight:var(--text-weight--medium, 400);--ez-dropdown__item--font-size:var(--text--medium, 14px);--ez-dropdown__item--line-height:calc(var(--ez-dropdown__item--font-size) + 4px);--ez-dropdown__item--background-color:var(--background--medium, #f0f3f7);--ez-dropdown__item--transition:var(--transition, .2s linear);--ez-dropdown__item-label--margin-right:var(--space--medium, 12px);--ez-dropdown__icon--size:var(--icon--medium, 18px);--ez-dropdown__divider--background-color:var(--color--disable-secondary, #f2f5f8);--ez-dropdown__divider--margin:var(--space--extra-small, 3px) 0;--ez-dropdown__group-label--color:var(--text--secondary, #A2ABB9);--ez-dropdown__group-label--font-weight:var(--text-weight--large, 600);--ez-dropdown__group-label--font-size:var(--text--small, 12px);--ez-dropdown__group-label--line-height:var(--text--medium, 14px);--ez-dropdown__group-label--padding:var(--space--small, 6px);--ez-dropdown__submenu--z-index:var(--most-visible, 3);--ez-dropdown__link--font-weight:var(--text-weight--large, 600);--ez-dropdown__link--primary--color:var(--color--primary, #008561);--ez-dropdown__link--critical--color:var(--color-alert--error-800, #BD0025);--ez-dropdown__scrollbar--color-default:var(--scrollbar--default, #626e82);--ez-dropdown__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--ez-dropdown__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--ez-dropdown__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--ez-dropdown__scrollbar--border-radius:var(--border--radius-small, 6px);--ez-dropdown__scrollbar--width:var(--space--small, 6px);--ez-dropdown__scrollbar--padding-right:var(--space--extra-small, 3px);display:flex;flex-direction:column;height:fit-content;user-select:none;box-sizing:border-box;position:fixed;z-index:var(--ez-dropdown--z-index)}:host *{box-sizing:border-box}.ez-dropdown{display:flex;padding:var(--ez-dropdown--padding);box-shadow:var(--ez-dropdown--box-shadow);border-radius:var(--ez-dropdown--border-radius);background-color:var(--ez-dropdown--background-color);max-width:var(--ez-dropdown--max-width);max-height:var(--ez-dropdown--max-height)}.ez-dropdown *{font-family:var(--ez-dropdown--font-family)}.ez-dropdown__container{display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;flex:auto;scrollbar-color:var(--ez-dropdown__scrollbar--color-clicked) var(--ez-dropdown__scrollbar--color-background)}.ez-dropdown__container::-webkit-scrollbar{background-color:var(--ez-dropdown__scrollbar--color-background);width:var(--ez-dropdown__scrollbar--width);max-width:var(--ez-dropdown__scrollbar--width);min-width:var(--ez-dropdown__scrollbar--width)}.ez-dropdown__container::-webkit-scrollbar-track{background-color:var(--ez-dropdown__scrollbar--color-background);border-radius:var(--ez-dropdown__scrollbar--border-radius)}.ez-dropdown__container::-webkit-scrollbar-thumb{background-color:var(--ez-dropdown__scrollbar--color-default);border-radius:var(--ez-dropdown__scrollbar--border-radius)}.ez-dropdown__container::-webkit-scrollbar-thumb:vertical:hover,.ez-dropdown__container::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-dropdown__scrollbar--color-hover)}.ez-dropdown__container::-webkit-scrollbar-thumb:vertical:active,.ez-dropdown__container::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-dropdown__scrollbar--color-clicked)}.ez-dropdown__container--spacer{padding-right:var(--ez-dropdown__scrollbar--padding-right)}.ez-dropdown__item{display:flex;align-items:center;background-color:transparent;border-radius:var(--ez-dropdown__item--border-radius);transition:var(--ez-dropdown__item--transition)}.ez-dropdown__item:hover{background-color:var(--ez-dropdown__item--background-color)}.ez-dropdown__item-wrapper{display:flex;align-items:center;position:relative;cursor:pointer;width:100%;margin:0;white-space:nowrap;gap:var(--ez-dropdown__item--gap);color:var(--ez-dropdown__item--color);font-weight:var(--ez-dropdown__item--font-weight);font-size:var(--ez-dropdown__item--font-size);line-height:var(--ez-dropdown__item--line-height);padding:var(--ez-dropdown__item--padding)}.ez-dropdown__item-wrapper ez-icon{display:flex;justify-content:center;align-items:center;width:var(--ez-dropdown__icon--size);height:var(--ez-dropdown__icon--size);min-width:var(--ez-dropdown__icon--size);min-height:var(--ez-dropdown__icon--size)}.ez-dropdown__item-content{display:flex;align-items:center;flex:auto;overflow:hidden;gap:var(--ez-dropdown__item--gap)}.ez-dropdown__item-label{text-align:left;text-overflow:ellipsis;overflow:hidden;flex:auto}.ez-dropdown__item-label:not(:last-child){margin-right:var(--ez-dropdown__item-label--margin-right)}.ez-dropdown__item-content+.ez-dropdown__link{margin-left:var(--ez-dropdown__item-label--margin-right);margin-right:var(--ez-dropdown__item--padding)}.ez-dropdown__item-builder{flex:auto}.ez-dropdown__divider{width:100%;height:2px;border-radius:1px;border:none;display:block;background-color:var(--ez-dropdown__divider--background-color);margin:var(--ez-dropdown__divider--margin)}.ez-dropdown__hidden{visibility:hidden}.ez-dropdown__group{display:flex;flex-direction:column}.ez-dropdown__group-label{display:block;width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ez-dropdown__group-label--color);font-weight:var(--ez-dropdown__group-label--font-weight);font-size:var(--ez-dropdown__group-label--font-size);line-height:var(--ez-dropdown__group-label--line-height);padding:var(--ez-dropdown__group-label--padding)}.ez-dropdown__icon-right{margin-left:auto}.ez-dropdown__submenu{position:fixed;z-index:var(--ez-dropdown__submenu--z-index);margin-top:calc(var(--ez-dropdown__item--padding) * -1)}.ez-dropdown__submenu--hide{display:none}.ez-dropdown__link{display:block;margin-left:auto;cursor:pointer;text-overflow:ellipsis;overflow:hidden;font-weight:var(--ez-dropdown__link--font-weight);max-width:calc(var(--ez-dropdown--max-width) * 0.43)}.ez-dropdown__link--primary{color:var(--ez-dropdown__link--primary--color)}.ez-dropdown__link--critical{color:var(--ez-dropdown__link--critical--color)}.ez-dropdown__link:hover{text-decoration:underline}";
279
+
280
+ let EzDropdown = class {
281
+ constructor(hostRef) {
282
+ registerInstance(this, hostRef);
283
+ this.ezClick = createEvent(this, "ezClick", 7);
284
+ this.ezSubActionClick = createEvent(this, "ezSubActionClick", 7);
285
+ this._itemList = {};
286
+ this._submenuList = [];
287
+ this._openedMenuList = {};
288
+ /**
289
+ * Limitador de níveis de menu + submenu.
290
+ * Valor 0, null ou undefined desativa o limitador.
291
+ */
292
+ this._levelLimits = 3;
293
+ /**
294
+ * Lista de itens que vão ser apresentados no dropdown.
295
+ */
296
+ this.items = [];
297
+ }
298
+ //---------------------------------------------
299
+ // Private methods
300
+ //---------------------------------------------
301
+ defaultItemBuilder(item, isLockedLevels, hasIcon, hasChildren) {
302
+ return (h(DropdownItem, { item: item, hasIcon: hasIcon, hasChildren: hasChildren, isLockedLevels: isLockedLevels, onSubActionClick: this.onSubActionClick.bind(this) }));
303
+ }
304
+ getMaxOrder(items) {
305
+ if (items == undefined || items.length === 0) {
306
+ return -1;
307
+ }
308
+ return Math.max(...items.map((item) => {
309
+ var _a;
310
+ const order = (_a = item.group) === null || _a === void 0 ? void 0 : _a["order"];
311
+ return order != undefined && order >= 0 ? order : -1;
312
+ }));
313
+ }
314
+ hasIcon(items) {
315
+ return items === null || items === void 0 ? void 0 : items.some((item) => (item.iconName || "") !== "");
316
+ }
317
+ hasGroup(items) {
318
+ return items === null || items === void 0 ? void 0 : items.some((item) => (item.group || "") !== "");
319
+ }
320
+ hasChildren(items) {
321
+ return items === null || items === void 0 ? void 0 : items.some((item) => (item.children || []).length > 0);
322
+ }
323
+ isLockedLevels(level) {
324
+ if (!this._levelLimits) {
325
+ return false;
326
+ }
327
+ return level === (this._levelLimits + 1);
328
+ }
329
+ getItemsByGroup(items, level) {
330
+ let itemsByGroup = {};
331
+ const maxOrder = this.getMaxOrder(items);
332
+ items.forEach((item) => {
333
+ const label = item.group && item.group["label"] != undefined ? item.group["label"] || "noGroup" : item.group || "noGroup";
334
+ const order = item.group && item.group["order"] != undefined ? item.group["order"] : item.group ? (maxOrder + 1) : (maxOrder + 2);
335
+ let groupObj = itemsByGroup[label];
336
+ if (groupObj == undefined) {
337
+ groupObj = {
338
+ items: [],
339
+ order
340
+ };
341
+ }
342
+ this.validateItem(item, level);
343
+ groupObj.items.push(item);
344
+ itemsByGroup[label] = groupObj;
345
+ });
346
+ return ObjectUtils.sortByProperty(itemsByGroup, "order");
347
+ }
348
+ validateItem(item, level) {
349
+ if (this._itemList == undefined) {
350
+ this._itemList = {};
351
+ }
352
+ if (item.type == undefined) {
353
+ item.type = "item";
354
+ }
355
+ if (item.id == undefined) {
356
+ const itemId = `level_${level}_${item.type}`;
357
+ const counter = Object.keys(this._itemList).filter((key) => key.includes(itemId)).length;
358
+ item.id = `${itemId}_${counter + 1}`;
359
+ }
360
+ if (item.label == undefined) {
361
+ item.label = "";
362
+ }
363
+ if (item.subAction != undefined) {
364
+ if (item.subAction.id == undefined) {
365
+ const subId = `subAction_${item.id}`;
366
+ item.subAction.id = subId;
367
+ }
368
+ if (item.subAction.label == undefined) {
369
+ item.subAction.label = "";
370
+ }
371
+ }
372
+ if (this._itemList[item.id] == undefined) {
373
+ this._itemList[item.id] = {};
374
+ }
375
+ }
376
+ getItemsRender(groupItems, level, hasIcon, hasChildren) {
377
+ if (groupItems == undefined) {
378
+ return;
379
+ }
380
+ let counterLevel = level;
381
+ let isLockedLevels = false;
382
+ if (hasChildren) {
383
+ counterLevel++;
384
+ isLockedLevels = this.isLockedLevels(counterLevel);
385
+ }
386
+ return groupItems.map((item) => {
387
+ var _a;
388
+ return (item.type !== "divider"
389
+ ? h("div", Object.assign({ ref: (ref) => this._itemList[item.id] = ref, class: "ez-dropdown__item", "data-level": level }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`${item.id}_ezDropdownItem`) }), h("div", { class: "ez-dropdown__item-content", onClick: (evt) => this.onItemClick(evt, item), onMouseOver: (evt) => this.onShowSubmenu(evt, item) }, this.itemBuilder
390
+ ? h("div", { class: "ez-dropdown__item-builder", innerHTML: this.itemBuilder(item, level) })
391
+ : this.defaultItemBuilder(item, isLockedLevels, hasIcon, hasChildren)), ((_a = item.children) === null || _a === void 0 ? void 0 : _a.length) > 0 &&
392
+ !isLockedLevels &&
393
+ hasChildren &&
394
+ h("div", { ref: (ref) => this._submenuList.push(ref), class: "ez-dropdown__submenu ez-dropdown__submenu--hide" }, this.renderDropdown(item.children, counterLevel)))
395
+ : h("hr", Object.assign({ class: "ez-dropdown__divider" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${item.id}_ezDropdownDivider` })));
396
+ });
397
+ }
398
+ renderDropdown(branchItems = this.items, level = 1) {
399
+ if (branchItems == undefined || this.isLockedLevels(level)) {
400
+ return;
401
+ }
402
+ const itemsByGroup = this.getItemsByGroup(branchItems, level);
403
+ const hasGroup = this.hasGroup(branchItems);
404
+ const hasIcon = this.hasIcon(branchItems);
405
+ const hasChildren = this.hasChildren(branchItems);
406
+ return (h("div", { class: "ez-dropdown", "data-level": level }, h("div", { class: "ez-dropdown__container" }, Object.keys(itemsByGroup)
407
+ .map((groupLabel) => {
408
+ return (h("div", Object.assign({ class: "ez-dropdown__group" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`${groupLabel}_ezDropdownGroup`) }), groupLabel !== "noGroup" &&
409
+ h("label", { class: "ez-dropdown__group-label", title: groupLabel }, groupLabel), hasGroup &&
410
+ groupLabel === "noGroup" &&
411
+ h("hr", { class: "ez-dropdown__divider" }), this.getItemsRender(itemsByGroup[groupLabel].items, level, hasIcon, hasChildren)));
412
+ }))));
413
+ }
414
+ hasOpenedSubmenu(level) {
415
+ const openedLevels = Object.keys(this._openedMenuList);
416
+ return openedLevels.includes(level.toString())
417
+ || openedLevels.some((openedLevel) => Number(openedLevel) > level);
418
+ }
419
+ hasSubmenuOpened() {
420
+ var _a;
421
+ return (_a = this._submenuList) === null || _a === void 0 ? void 0 : _a.some((submenu) => !submenu.classList.contains("ez-dropdown__submenu--hide"));
422
+ }
423
+ setEvents() {
424
+ document.removeEventListener('click', this.onHideAllSubmenu.bind(this));
425
+ document.addEventListener('click', this.onHideAllSubmenu.bind(this));
426
+ document.removeEventListener('scroll', this.onSubmenuReposition.bind(this));
427
+ document.addEventListener('scroll', this.onSubmenuReposition.bind(this));
428
+ }
429
+ //---------------------------------------------
430
+ // Event handlers
431
+ //---------------------------------------------
432
+ onShowSubmenu(evt, item) {
433
+ var _a;
434
+ if (evt == undefined) {
435
+ return;
436
+ }
437
+ const menu = this._itemList[item.id];
438
+ if (!(menu === null || menu === void 0 ? void 0 : menu.classList.contains("ez-dropdown__item"))) {
439
+ return;
440
+ }
441
+ const level = Number(menu.dataset.level || "0");
442
+ if (this.hasOpenedSubmenu(level)) {
443
+ this._submenuControl.hide(this._openedMenuList[level]);
444
+ delete this._openedMenuList[level];
445
+ }
446
+ if (!((_a = item.children) === null || _a === void 0 ? void 0 : _a.length)) {
447
+ return;
448
+ }
449
+ this._openedMenuList[menu.dataset.level] = menu;
450
+ this._submenuControl.show(menu);
451
+ }
452
+ onItemClick(evt, item) {
453
+ const target = evt === null || evt === void 0 ? void 0 : evt.target;
454
+ if (target === null || target === void 0 ? void 0 : target.classList.contains("ez-dropdown__link")) {
455
+ return;
456
+ }
457
+ this.value = item;
458
+ this.ezClick.emit(item);
459
+ }
460
+ onSubActionClick(item) {
461
+ this.ezSubActionClick.emit(item.subAction);
462
+ }
463
+ onHideAllSubmenu(evt = undefined) {
464
+ const target = evt === null || evt === void 0 ? void 0 : evt.target;
465
+ if (this.hasSubmenuOpened() && (target == undefined || (!target.closest(".ez-dropdown") && target.tagName !== "EZ-DROPDOWN"))) {
466
+ this._openedMenuList = {};
467
+ this._submenuList.forEach(this._submenuControl.reset.bind(this._submenuControl));
468
+ }
469
+ }
470
+ onSubmenuReposition() {
471
+ if (this._openedMenuList != undefined) {
472
+ Object.keys(this._openedMenuList).forEach((key) => {
473
+ const menu = this._openedMenuList[key];
474
+ this._submenuControl.setPosition(menu);
475
+ });
476
+ }
477
+ }
478
+ //---------------------------------------------
479
+ // Lifecycle web component
480
+ //---------------------------------------------
481
+ componentDidLoad() {
482
+ ElementIDUtils.addIDInfo(this._element);
483
+ this._submenuControl = new SubmenuControl();
484
+ this._submenuControl.setMaxHeight(this._element);
485
+ }
486
+ componentDidUpdate() {
487
+ this._submenuControl.setMaxHeight(this._element);
488
+ }
489
+ componentDidRender() {
490
+ this.setEvents();
491
+ }
492
+ render() {
493
+ return (h(Host, null, this.renderDropdown()));
494
+ }
495
+ get _element() { return getElement(this); }
496
+ };
497
+ EzDropdown.style = ezDropdownCss;
498
+
499
+ export { EzDropdown as ez_dropdown };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-b77dcd0d.js';
2
2
  import { StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezFileItemCss = ":host{display:flex;width:100%;--ez-file-item--height:42px;--ez-file-item--padding:9px;--ez-file-item--border-radius:var(--border--radius-medium, 12px);--ez-file-item--border-color:var(--color--strokes, #DCE0E8);--ez-file-item--border-style:var(--border--small, 1px solid);--ez-file-item--font-family:var(--font-pattern, Arial);--ez-file-item--font-size:var(--text--medium, 14px);--ez-file-item--font-weight:var(--text-weight--medium, 400);--ez-file-item--color:var(--title--primary, #2B3A54);--ez-file-item__file-size--font-weight:var(--text-weight--large, 600);--ez-file-item__file-size--color:var(--color--primary, #008561);--ez-file-item__background-progress--color:var(--color--primary-300, E2F4EF);--ez-file-item--icon-color:var(--title--primary, #2B3A54)}.box{display:flex;box-sizing:border-box;position:relative;align-items:center;justify-content:space-between;width:100%;padding:var(--ez-file-item--padding);border:var(--ez-file-item--border-color) var(--ez-file-item--border-style);border-radius:var(--ez-file-item--border-radius);height:var(--ez-file-item--height)}.box::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;clip-path:inset(2px calc(var(--ez-file-item--upload-progress, 0%) + 2px) 2px 2px round calc(var(--ez-file-item--border-radius) - 4px));background-color:var(--ez-file-item__background-progress--color)}.content{display:flex;align-items:center;z-index:0;overflow:hidden}.file-name{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:var(--ez-file-item--font-family);font-size:var(--ez-file-item--font-size);font-weight:var(--ez-file-item--font-weight);color:var(--ez-file-item--color)}.file-type-icon{flex-shrink:0;--ez-icon--color:var(--ez-file-item--icon-color);padding-right:var(--ez-file-item--padding)}.file-size{padding-left:2px;overflow:hidden;flex-shrink:0;white-space:nowrap;font-family:var(--ez-file-item--font-family);font-size:var(--ez-file-item--font-size);font-weight:var(--ez-file-item__file-size--font-weight);color:var(--ez-file-item__file-size--color)}.btn-remove{cursor:pointer;flex-shrink:0;--ez-icon--color:var(--ez-file-item--icon-color)}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-b77dcd0d.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { C as CSSVarsUtils } from './CSSVarsUtils-00f67f32.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { h, r as registerInstance, c as createEvent, f as forceUpdate, H as Host, g as getElement } from './index-7bc778b3.js';
1
+ import { h, r as registerInstance, c as createEvent, f as forceUpdate, H as Host, g as getElement } from './index-b77dcd0d.js';
2
2
  import { UserInterface, Action, WaitingChangeException, ApplicationContext, StringUtils, DataUnitAction, DataUnit, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { C as CheckMode } from './CheckMode-bdb2ec19.js';
4
4
  import { A as ApplicationUtils } from './ApplicationUtils-9fda4796.js';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-b77dcd0d.js';
2
2
  import { Action, ObjectUtils as ObjectUtils$1, ApplicationContext, StringUtils as StringUtils$1, UserInterface, NumberUtils as NumberUtils$1, DataType, SortMode, ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-7bc778b3.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-b77dcd0d.js';
2
2
  import { StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezIconCss = ":host{display:flex;overflow:hidden;position:relative;--ez-icon--color:var(--icon--color, #ffffff)}svg{display:flex;justify-content:center;align-items:center;fill:var(--ez-icon--color)}.x-small{width:12px;height:12px}.small{width:16px;height:16px}.medium{width:20px;height:20px}.large{width:24px;height:24px}.x-large{width:30px;height:30px}[class^=\"ez-icon-\"],[class*=\" ez-icon-\"]{color:var(--ez-icon--color)}[class^=\"ez-icon-\"],[class*=\" ez-icon-\"]{font-family:'ez-icons' !important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ez-icon-2chevron-down:before{content:\"\\ea01\"}.ez-icon-2chevron-up:before{content:\"\\ea02\"}.ez-icon-account-outline:before{content:\"\\ea03\"}.ez-icon-account:before{content:\"\\ea04\"}.ez-icon-actions-sprite-v1:before{content:\"\\ea05\"}.ez-icon-alert-circle-inverted:before{content:\"\\ea06\"}.ez-icon-alert-circle:before{content:\"\\ea07\"}.ez-icon-alert-mail:before{content:\"\\ea08\"}.ez-icon-alert-popup:before{content:\"\\ea09\"}.ez-icon-anexo:before{content:\"\\ea0a\"}.ez-icon-antecipação:before{content:\"\\ea0b\"}.ez-icon-apps:before{content:\"\\ea0c\"}.ez-icon-arrow_back:before{content:\"\\ea0d\"}.ez-icon-arrow_downward:before{content:\"\\ea0e\"}.ez-icon-baixa:before{content:\"\\ea0f\"}.ez-icon-balance:before{content:\"\\ea10\"}.ez-icon-bell-inverted:before{content:\"\\ea11\"}.ez-icon-bell:before{content:\"\\ea12\"}.ez-icon-boleto:before{content:\"\\ea13\"}.ez-icon-business-center:before{content:\"\\ea14\"}.ez-icon-calendar-clock:before{content:\"\\ea15\"}.ez-icon-calendar:before{content:\"\\ea16\"}.ez-icon-cash-remove:before{content:\"\\ea17\"}.ez-icon-check-circle-inverted:before{content:\"\\ea18\"}.ez-icon-check-circle:before{content:\"\\ea19\"}.ez-icon-check:before{content:\"\\ea1a\"}.ez-icon-chevron-down:before{content:\"\\ea1b\"}.ez-icon-chevron-left:before{content:\"\\ea1c\"}.ez-icon-chevron-right:before{content:\"\\ea1d\"}.ez-icon-chevron-up:before{content:\"\\ea1e\"}.ez-icon-circle--medium:before{content:\"\\ea1f\"}.ez-icon-circle:before{content:\"\\ea20\"}.ez-icon-cleaning:before{content:\"\\ea21\"}.ez-icon-clipboard:before{content:\"\\ea22\"}.ez-icon-close:before{content:\"\\ea23\"}.ez-icon-cobrar:before{content:\"\\ea24\"}.ez-icon-code:before{content:\"\\ea25\"}.ez-icon-configuration:before{content:\"\\ea26\"}.ez-icon-copy:before{content:\"\\ea27\"}.ez-icon-credit_card:before{content:\"\\ea28\"}.ez-icon-crop:before{content:\"\\ea29\"}.ez-icon-custom:before{content:\"\\ea2a\"}.ez-icon-delete:before{content:\"\\ea2b\"}.ez-icon-description:before{content:\"\\ea2c\"}.ez-icon-dividir:before{content:\"\\ea2d\"}.ez-icon-docx:before{content:\"\\ea2e\"}.ez-icon-dot-notification:before{content:\"\\ea2f\"}.ez-icon-dots-horizontal:before{content:\"\\ea30\"}.ez-icon-dots-vertical:before{content:\"\\ea31\"}.ez-icon-drag-indicator:before{content:\"\\ea32\"}.ez-icon-dual-chevron-down:before{content:\"\\ea33\"}.ez-icon-dual-chevron-up:before{content:\"\\ea34\"}.ez-icon-edit-file:before{content:\"\\ea35\"}.ez-icon-edit-table:before{content:\"\\ea36\"}.ez-icon-edit-time:before{content:\"\\ea37\"}.ez-icon-edit:before{content:\"\\ea38\"}.ez-icon-email:before{content:\"\\ea39\"}.ez-icon-estorno:before{content:\"\\ea3a\"}.ez-icon-exe:before{content:\"\\ea3b\"}.ez-icon-expand:before{content:\"\\ea3c\"}.ez-icon-expandir_card:before{content:\"\\ea3d\"}.ez-icon-extrato:before{content:\"\\ea3e\"}.ez-icon-eye-off:before{content:\"\\ea3f\"}.ez-icon-eye:before{content:\"\\ea40\"}.ez-icon-favorite:before{content:\"\\ea41\"}.ez-icon-figma:before{content:\"\\ea42\"}.ez-icon-file-download:before{content:\"\\ea43\"}.ez-icon-file-upload:before{content:\"\\ea44\"}.ez-icon-filter:before{content:\"\\ea45\"}.ez-icon-find-file:before{content:\"\\ea46\"}.ez-icon-find-page:before{content:\"\\ea47\"}.ez-icon-format-color-fill:before{content:\"\\ea48\"}.ez-icon-generic:before{content:\"\\ea49\"}.ez-icon-gif:before{content:\"\\ea4a\"}.ez-icon-graph_bar:before{content:\"\\ea4b\"}.ez-icon-handshake:before{content:\"\\ea4c\"}.ez-icon-help-inverted:before{content:\"\\ea4d\"}.ez-icon-help:before{content:\"\\ea4e\"}.ez-icon-hide_menu:before{content:\"\\ea4f\"}.ez-icon-home:before{content:\"\\ea50\"}.ez-icon-icons104:before{content:\"\\ea51\"}.ez-icon-language:before{content:\"\\ea52\"}.ez-icon-launch:before{content:\"\\ea53\"}.ez-icon-lightbulb:before{content:\"\\ea54\"}.ez-icon-list:before{content:\"\\ea55\"}.ez-icon-location:before{content:\"\\ea56\"}.ez-icon-lock-outline:before{content:\"\\ea57\"}.ez-icon-lock:before{content:\"\\ea58\"}.ez-icon-menu:before{content:\"\\ea59\"}.ez-icon-mid:before{content:\"\\ea5a\"}.ez-icon-minus:before{content:\"\\ea5b\"}.ez-icon-money-off:before{content:\"\\ea5c\"}.ez-icon-money:before{content:\"\\ea5d\"}.ez-icon-more:before{content:\"\\ea5e\"}.ez-icon-mp3:before{content:\"\\ea5f\"}.ez-icon-mp4:before{content:\"\\ea60\"}.ez-icon-north-west:before{content:\"\\ea61\"}.ez-icon-number:before{content:\"\\ea62\"}.ez-icon-ordem-ascendente:before{content:\"\\ea63\"}.ez-icon-ordem-descendente:before{content:\"\\ea64\"}.ez-icon-parcelar:before{content:\"\\ea65\"}.ez-icon-pause:before{content:\"\\ea66\"}.ez-icon-payments:before{content:\"\\ea67\"}.ez-icon-pdf:before{content:\"\\ea68\"}.ez-icon-play:before{content:\"\\ea69\"}.ez-icon-plus:before{content:\"\\ea6a\"}.ez-icon-png:before{content:\"\\ea6b\"}.ez-icon-power:before{content:\"\\ea6c\"}.ez-icon-pptx:before{content:\"\\ea6d\"}.ez-icon-print:before{content:\"\\ea6e\"}.ez-icon-push-pin:before{content:\"\\ea6f\"}.ez-icon-rateio:before{content:\"\\ea70\"}.ez-icon-receipt:before{content:\"\\ea71\"}.ez-icon-recolher_card:before{content:\"\\ea72\"}.ez-icon-restore:before{content:\"\\ea73\"}.ez-icon-return:before{content:\"\\ea74\"}.ez-icon-save:before{content:\"\\ea75\"}.ez-icon-search:before{content:\"\\ea76\"}.ez-icon-settings-inverted:before{content:\"\\ea77\"}.ez-icon-settings:before{content:\"\\ea78\"}.ez-icon-share:before{content:\"\\ea79\"}.ez-icon-shield:before{content:\"\\ea7a\"}.ez-icon-show_menu:before{content:\"\\ea7b\"}.ez-icon-south-east:before{content:\"\\ea7c\"}.ez-icon-sync:before{content:\"\\ea7d\"}.ez-icon-table:before{content:\"\\ea7e\"}.ez-icon-tag_code:before{content:\"\\ea7f\"}.ez-icon-text:before{content:\"\\ea80\"}.ez-icon-timeline:before{content:\"\\ea81\"}.ez-icon-timer-outline:before{content:\"\\ea82\"}.ez-icon-tune:before{content:\"\\ea83\"}.ez-icon-txt:before{content:\"\\ea84\"}.ez-icon-un-pin:before{content:\"\\ea85\"}.ez-icon-unfold_less:before{content:\"\\ea86\"}.ez-icon-unfold_more:before{content:\"\\ea87\"}.ez-icon-user-circle:before{content:\"\\ea88\"}.ez-icon-warning-outline:before{content:\"\\ea89\"}.ez-icon-warning_triangle:before{content:\"\\ea8a\"}.ez-icon-whatshot:before{content:\"\\ea8b\"}.ez-icon-xlsx:before{content:\"\\ea8c\"}.ez-icon-zip:before{content:\"\\ea8d\"}.x-small--font{font-size:12px}.small--font{font-size:16px}.medium--font{font-size:20px}.large--font{font-size:24px}.x-large--font{font-size:30px}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-7bc778b3.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-b77dcd0d.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  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__over--border--color:var(--color--primary, #008561);--ez-list__last-droppable-space--height:var(--space--small, 6px);--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>');--ez-list__scrollbar--color-default:var(--scrollbar--default, #626e82);--ez-list__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--ez-list__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--ez-list__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--ez-list__scrollbar--border-radius:var(--border--radius-small, 6px);--ez-list__scrollbar--width:var(--space--medium, 12px);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;flex:1;width:100%;font-family:var(--ez-list__item--font-family);font-size:var(--ez-list__item--font-size)}.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{padding:0;margin:0;width:100%;max-height:100%;scrollbar-width:thin;color:var(--text-color);scrollbar-color:var(--ez-list__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background)}.draggable-list li{background-color:#fff;display:flex;height:32px;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)}.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{background-color:var(--ez-list__scrollbar--color-background);width:var(--ez-list__scrollbar--width);max-width:var(--ez-list__scrollbar--width);min-width:var(--ez-list__scrollbar--width)}.draggable-list::-webkit-scrollbar-track{background-color:var(--ez-list__scrollbar--color-background);border-radius:var(--ez-list__scrollbar--border-radius)}.draggable-list::-webkit-scrollbar-thumb{background-color:var(--ez-list__scrollbar--color-default);border-radius:var(--ez-list__scrollbar--border-radius)}.draggable-list::-webkit-scrollbar-thumb:vertical:hover,.draggable-list::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-list__scrollbar--color-hover)}.draggable-list::-webkit-scrollbar-thumb:vertical:active,.draggable-list::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-list__scrollbar--color-clicked)}.draggable-icon{align-items:flex-start;display:flex;outline:none;border:none;background-color:unset}.draggable-icon::after{content:'';display:flex;width:18px;height:18px;background-color:var(--ez-list__icon--color);-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__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background)}.group-name{-webkit-user-select:none;-moz-user-select:-moz-none;-ms-user-select:none;user-select:none;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)}.group{display:flex;flex-direction:column}.group-container::-webkit-scrollbar{background-color:var(--ez-list__scrollbar--color-background);width:var(--ez-list__scrollbar--width);max-width:var(--ez-list__scrollbar--width);min-width:var(--ez-list__scrollbar--width)}.group-container::-webkit-scrollbar-track{background-color:var(--ez-list__scrollbar--color-background);border-radius:var(--ez-list__scrollbar--border-radius)}.group-container::-webkit-scrollbar-thumb{background-color:var(--ez-list__scrollbar--color-default);border-radius:var(--ez-list__scrollbar--border-radius)}.group-container::-webkit-scrollbar-thumb:vertical:hover,.group-container::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-list__scrollbar--color-hover)}.group-container::-webkit-scrollbar-thumb:vertical:active,.group-container::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-list__scrollbar--color-clicked)}.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__scrollbar--color-clicked) var(--ez-list__scrollbar--color-background)}.group-items-container{width:100%;max-height:100%;height:100%;outline:none}.items-container::-webkit-scrollbar{background-color:var(--ez-list__scrollbar--color-background);width:var(--ez-list__scrollbar--width);max-width:var(--ez-list__scrollbar--width);min-width:var(--ez-list__scrollbar--width)}.items-container::-webkit-scrollbar-track{background-color:var(--ez-list__scrollbar--color-background);border-radius:var(--ez-list__scrollbar--border-radius)}.items-container::-webkit-scrollbar-thumb{background-color:var(--ez-list__scrollbar--color-default);border-radius:var(--ez-list__scrollbar--border-radius)}.items-container::-webkit-scrollbar-thumb:vertical:hover,.items-container::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-list__scrollbar--color-hover)}.items-container::-webkit-scrollbar-thumb:vertical:active,.items-container::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-list__scrollbar--color-clicked)}.group-overlay{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;font-family:var(--ez-list__group-overlay--font-family);font-size:var(--ez-list__group-overlay--font-size)}.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}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-7bc778b3.js';
1
+ import { r as registerInstance, h, H as Host } from './index-b77dcd0d.js';
2
2
 
3
3
  const ezLoadingBarCss = ":host{position:fixed;top:0px;width:100%}.loading-bar{width:100%;margin:0 auto;position:absolute;background-color:var(--color--primary-300, #e2f4ef);height:5px}.loading-bar:before{content:'';position:absolute}.loading-bar__container{position:absolute;top:0;right:100%;bottom:0;left:0;background-color:var(--color--primary, #008561);width:0;animation:loading 2s linear infinite}@keyframes loading{0%{left:0%;right:100%;width:0%}25%{left:0%;right:75%;width:25%}50%{left:0%;right:50%;width:90%}70%{right:0%;left:75%;width:25%}100%{left:100%;right:0%;width:0%}}@-webkit-keyframes loading{0%{left:0%;right:100%;width:0%}25%{left:0%;right:75%;width:25%}50%{left:0%;right:50%;width:90%}70%{right:0%;left:75%;width:25%}100%{left:100%;right:0%;width:0%}}";
4
4