@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-83282.0 → 0.0.0-bugfix-dev-KB-75065.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 (200) hide show
  1. package/dist/cjs/ez-actions-button.cjs.entry.js +1 -1
  2. package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
  3. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  4. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-badge.cjs.entry.js +15 -3
  6. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-button.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-card-item_2.cjs.entry.js +1 -1
  10. package/dist/cjs/ez-chart.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  13. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-combo-box.cjs.entry.js +185 -59
  15. package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +236 -0
  16. package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
  17. package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
  18. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  19. package/dist/cjs/ez-double-list.cjs.entry.js +1 -1
  20. package/dist/cjs/ez-dropdown_2.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-form-view.cjs.entry.js +1 -1
  24. package/dist/cjs/ez-form.cjs.entry.js +1 -1
  25. package/dist/cjs/ez-grid.cjs.entry.js +1 -59
  26. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  28. package/dist/cjs/ez-list.cjs.entry.js +1 -1
  29. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
  31. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  32. package/dist/cjs/{ez-popover-core_2.cjs.entry.js → ez-multi-selection-list_2.cjs.entry.js} +197 -116
  33. package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
  34. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-search.cjs.entry.js +1 -1
  39. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-split-button.cjs.entry.js +1 -1
  41. package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
  42. package/dist/cjs/ez-split-panel.cjs.entry.js +1 -1
  43. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  44. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  46. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  47. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  48. package/dist/cjs/ez-tooltip.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  50. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  51. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  52. package/dist/cjs/ezui.cjs.js +2 -2
  53. package/dist/cjs/filter-column.cjs.entry.js +1 -1
  54. package/dist/cjs/{index-a7b0c73d.js → index-9e5554cb.js} +7 -8
  55. package/dist/cjs/loader.cjs.js +2 -2
  56. package/dist/collection/collection-manifest.json +0 -2
  57. package/dist/collection/components/ez-badge/ez-badge.css +12 -1
  58. package/dist/collection/components/ez-badge/ez-badge.js +31 -1
  59. package/dist/collection/components/ez-combo-box/ez-combo-box.css +250 -0
  60. package/dist/collection/components/ez-combo-box/ez-combo-box.js +194 -61
  61. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +0 -3
  62. package/dist/collection/components/ez-grid/ez-grid.js +1 -56
  63. package/dist/collection/components/ez-popover-plus/ez-popover-plus.css +64 -0
  64. package/dist/collection/components/ez-popover-plus/ez-popover-plus.js +127 -47
  65. package/dist/custom-elements/index.d.ts +0 -12
  66. package/dist/custom-elements/index.js +218 -394
  67. package/dist/esm/ez-actions-button.entry.js +1 -1
  68. package/dist/esm/ez-alert-list.entry.js +1 -1
  69. package/dist/esm/ez-alert.entry.js +1 -1
  70. package/dist/esm/ez-application.entry.js +1 -1
  71. package/dist/esm/ez-badge.entry.js +15 -3
  72. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  73. package/dist/esm/ez-button.entry.js +1 -1
  74. package/dist/esm/ez-calendar.entry.js +1 -1
  75. package/dist/esm/ez-card-item_2.entry.js +1 -1
  76. package/dist/esm/ez-chart.entry.js +1 -1
  77. package/dist/esm/ez-check.entry.js +1 -1
  78. package/dist/esm/ez-chip.entry.js +1 -1
  79. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  80. package/dist/esm/ez-combo-box.entry.js +186 -60
  81. package/dist/esm/ez-custom-form-input_2.entry.js +231 -0
  82. package/dist/esm/ez-date-input.entry.js +1 -1
  83. package/dist/esm/ez-date-time-input.entry.js +1 -1
  84. package/dist/esm/ez-dialog.entry.js +1 -1
  85. package/dist/esm/ez-double-list.entry.js +1 -1
  86. package/dist/esm/ez-dropdown_2.entry.js +1 -1
  87. package/dist/esm/ez-file-item.entry.js +1 -1
  88. package/dist/esm/ez-filter-input.entry.js +1 -1
  89. package/dist/esm/ez-form-view.entry.js +1 -1
  90. package/dist/esm/ez-form.entry.js +1 -1
  91. package/dist/esm/ez-grid.entry.js +2 -60
  92. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  93. package/dist/esm/ez-icon.entry.js +1 -1
  94. package/dist/esm/ez-list.entry.js +1 -1
  95. package/dist/esm/ez-loading-bar.entry.js +1 -1
  96. package/dist/esm/ez-modal-container.entry.js +1 -1
  97. package/dist/esm/ez-modal.entry.js +1 -1
  98. package/dist/esm/{ez-popover-core_2.entry.js → ez-multi-selection-list_2.entry.js} +197 -116
  99. package/dist/esm/ez-number-input.entry.js +1 -1
  100. package/dist/esm/ez-popover.entry.js +1 -1
  101. package/dist/esm/ez-popup.entry.js +1 -1
  102. package/dist/esm/ez-radio-button.entry.js +1 -1
  103. package/dist/esm/ez-scroller_2.entry.js +1 -1
  104. package/dist/esm/ez-search.entry.js +1 -1
  105. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  106. package/dist/esm/ez-split-button.entry.js +1 -1
  107. package/dist/esm/ez-split-item.entry.js +1 -1
  108. package/dist/esm/ez-split-panel.entry.js +1 -1
  109. package/dist/esm/ez-tabselector.entry.js +1 -1
  110. package/dist/esm/ez-text-area.entry.js +1 -1
  111. package/dist/esm/ez-text-input.entry.js +1 -1
  112. package/dist/esm/ez-time-input.entry.js +1 -1
  113. package/dist/esm/ez-toast.entry.js +1 -1
  114. package/dist/esm/ez-tooltip.entry.js +1 -1
  115. package/dist/esm/ez-tree.entry.js +1 -1
  116. package/dist/esm/ez-upload.entry.js +1 -1
  117. package/dist/esm/ez-view-stack.entry.js +1 -1
  118. package/dist/esm/ezui.js +3 -3
  119. package/dist/esm/filter-column.entry.js +1 -1
  120. package/dist/esm/{index-baa5e267.js → index-5a720e56.js} +7 -9
  121. package/dist/esm/loader.js +3 -3
  122. package/dist/ezui/ezui.esm.js +1 -1
  123. package/dist/ezui/p-000159dc.entry.js +1 -0
  124. package/dist/ezui/{p-44caad9a.entry.js → p-0378416a.entry.js} +1 -1
  125. package/dist/ezui/{p-65f471bc.entry.js → p-03b0ed5a.entry.js} +1 -1
  126. package/dist/ezui/{p-5b205c80.entry.js → p-044d46d5.entry.js} +1 -1
  127. package/dist/ezui/{p-a4cee65d.entry.js → p-0cfbbe82.entry.js} +1 -1
  128. package/dist/ezui/{p-77a4bd35.entry.js → p-11bfeca3.entry.js} +1 -1
  129. package/dist/ezui/{p-7e677b7b.entry.js → p-2069c78a.entry.js} +1 -1
  130. package/dist/ezui/{p-31b71e50.entry.js → p-23dab72f.entry.js} +1 -1
  131. package/dist/ezui/{p-17eabf46.entry.js → p-24b42f3d.entry.js} +1 -1
  132. package/dist/ezui/{p-556468d9.entry.js → p-3791d9c8.entry.js} +1 -1
  133. package/dist/ezui/{p-1ad6c61b.entry.js → p-3885e66e.entry.js} +1 -1
  134. package/dist/ezui/p-3af64edd.entry.js +1 -0
  135. package/dist/ezui/{p-fa6732f2.entry.js → p-44b39e81.entry.js} +1 -1
  136. package/dist/ezui/{p-c1527804.entry.js → p-4818b8ce.entry.js} +1 -1
  137. package/dist/ezui/{p-d9548bdf.entry.js → p-5010315a.entry.js} +1 -1
  138. package/dist/ezui/{p-ea54d056.entry.js → p-68b2e579.entry.js} +1 -1
  139. package/dist/ezui/{p-1f50fa05.entry.js → p-6b51c9cc.entry.js} +1 -1
  140. package/dist/ezui/{p-2bb2a0c4.entry.js → p-6d31c43c.entry.js} +1 -1
  141. package/dist/ezui/{p-6cdd3e0a.entry.js → p-6d8b3298.entry.js} +1 -1
  142. package/dist/ezui/p-6ec40dec.entry.js +1 -0
  143. package/dist/ezui/{p-5ed81457.entry.js → p-6fc26622.entry.js} +1 -1
  144. package/dist/ezui/{p-da1b4a38.entry.js → p-708b196e.entry.js} +1 -1
  145. package/dist/ezui/{p-555c9018.entry.js → p-7567ccdd.entry.js} +1 -1
  146. package/dist/ezui/{p-1e7a8633.entry.js → p-81461d2f.entry.js} +1 -1
  147. package/dist/ezui/{p-8df1ca33.entry.js → p-82fa4b09.entry.js} +1 -1
  148. package/dist/ezui/{p-0fa52b0f.entry.js → p-88c615f0.entry.js} +1 -1
  149. package/dist/ezui/{p-56fe5341.entry.js → p-9066b0b0.entry.js} +1 -1
  150. package/dist/ezui/{p-09de35a2.entry.js → p-91ccae0c.entry.js} +1 -1
  151. package/dist/ezui/{p-c0d9c4f8.entry.js → p-92748142.entry.js} +1 -1
  152. package/dist/ezui/{p-0faf71c5.entry.js → p-92fbaf2b.entry.js} +1 -1
  153. package/dist/ezui/{p-e6a9041d.entry.js → p-9e95bfeb.entry.js} +1 -1
  154. package/dist/ezui/{p-3195a7a7.entry.js → p-9fc250d4.entry.js} +1 -1
  155. package/dist/ezui/{p-53116373.entry.js → p-a3319796.entry.js} +46 -46
  156. package/dist/ezui/{p-990b4318.entry.js → p-a921e3e7.entry.js} +1 -1
  157. package/dist/ezui/{p-3429080c.entry.js → p-b22889ea.entry.js} +1 -1
  158. package/dist/ezui/{p-17be134a.entry.js → p-b2f6bc0a.entry.js} +1 -1
  159. package/dist/ezui/{p-cb1535f7.entry.js → p-b9282c79.entry.js} +1 -1
  160. package/dist/ezui/{p-e347df9c.entry.js → p-bef7daac.entry.js} +1 -1
  161. package/dist/ezui/{p-9f5fa3f9.entry.js → p-c2b20f78.entry.js} +1 -1
  162. package/dist/ezui/{p-17de16e5.entry.js → p-c96fbbef.entry.js} +1 -1
  163. package/dist/ezui/{p-2f45506d.entry.js → p-ca8936df.entry.js} +1 -1
  164. package/dist/ezui/p-cba34702.entry.js +1 -0
  165. package/dist/ezui/{p-20c024f7.entry.js → p-cf33bc48.entry.js} +1 -1
  166. package/dist/ezui/{p-58783dcf.entry.js → p-cf3b60fd.entry.js} +1 -1
  167. package/dist/ezui/{p-a80b1287.entry.js → p-dfca5946.entry.js} +1 -1
  168. package/dist/ezui/{p-7fdd479f.entry.js → p-e18d9e6a.entry.js} +1 -1
  169. package/dist/ezui/{p-fd0a19d6.entry.js → p-e3f8660b.entry.js} +1 -1
  170. package/dist/ezui/{p-23a36bb6.js → p-e4c7eb39.js} +2 -2
  171. package/dist/ezui/{p-0306dff7.entry.js → p-e6b38ade.entry.js} +1 -1
  172. package/dist/ezui/{p-b26f6c5b.entry.js → p-f30e0590.entry.js} +1 -1
  173. package/dist/ezui/{p-cf87aacb.entry.js → p-f4da7e1e.entry.js} +1 -1
  174. package/dist/ezui/{p-6e429cff.entry.js → p-fc194825.entry.js} +1 -1
  175. package/dist/ezui/p-fcc78b7f.entry.js +1 -0
  176. package/dist/types/components/ez-badge/ez-badge.d.ts +5 -0
  177. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +16 -7
  178. package/dist/types/components/ez-grid/ez-grid.d.ts +0 -5
  179. package/dist/types/components/ez-popover-plus/ez-popover-plus.d.ts +19 -6
  180. package/dist/types/components.d.ts +11 -218
  181. package/package.json +1 -1
  182. package/react/components.d.ts +0 -2
  183. package/react/components.js +0 -2
  184. package/react/components.js.map +1 -1
  185. package/dist/cjs/ez-combo-box-list_3.cjs.entry.js +0 -387
  186. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +0 -186
  187. package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.css +0 -205
  188. package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.js +0 -426
  189. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.css +0 -67
  190. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +0 -468
  191. package/dist/esm/ez-combo-box-list_3.entry.js +0 -381
  192. package/dist/esm/ez-multi-selection-list.entry.js +0 -182
  193. package/dist/ezui/p-3a009184.entry.js +0 -1
  194. package/dist/ezui/p-650e4b6d.entry.js +0 -1
  195. package/dist/ezui/p-7bd15498.entry.js +0 -1
  196. package/dist/ezui/p-bc2f844e.entry.js +0 -1
  197. package/dist/ezui/p-dc73e1fe.entry.js +0 -1
  198. package/dist/ezui/p-f5931caa.entry.js +0 -1
  199. package/dist/types/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.d.ts +0 -104
  200. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +0 -81
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { FloatingManager, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import './ApplicationUtils-eaf91331.js';
4
4
  import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.js';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { FloatingManager, ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezAlertListCss = ":host {\n display: flex;\n\n /* Alert List */\n \n /*@doc Define a largura da lista minimizado */\n --ez-alert-list__container--width: 680px;\n /*@doc Define a altura da lista minimizado */\n --ez-alert-list__container--height: 220px;\n \n /*@doc Define a largura da lista maximizada */\n --ez-alert-list__container--width--expanded: 920px;\n /*@doc Define a altura da lista maximizada */\n --ez-alert-list__container--height--expanded: 540px;\n\n /* Title */\n /*@doc Define a fonte do título do componente */\n --ez-alert-list__title--font-family: var(--font-pattern, \"Roboto\");\n /*@doc Define o tamanho da fonte do título do popup.*/\n --ez-alert-list__title--font-size: var(--title--large, 20px);\n /*@doc Define a cor da fonte do título do popup.*/\n --ez-alert-list__title--color: var(--title--primary, #2b3a54);\n /*@doc Define o peso da fonte do título do popup.*/\n --ez-alert-list__title--font-weight: var(--text-weight--extra-large, 700);\n\n /* @doc Define a borda inferior do item da lista. */\n --ez-list__item--border-bottom: var(--border--small, 1px solid);\n\n /* @doc Define a cor da borda inferior do item da lista. */\n --ez-list__item--border-bottom-color: var(--color--strokes, #DCE0E8);\n\n /* @doc Define o tipo da quebra de linha do item da lista. */\n --ez-list__item--white-space: break-space;\n}\n\n.alert-list__content {\n display: flex;\n flex-direction: column;\n \n gap: var(--space--xs);\n margin: var(--space--large, 24px);\n width: 100%;\n}\n\n.alert-list__container {\n z-index: var(--ez-elevation--8, 8);\n display: flex;\n height: var(--ez-alert-list__container--height);\n width: var(--ez-alert-list__container--width);\n border-radius: var(--border--radius-medium);\n background-color: var(--background--xlight);\n box-shadow: var(--shadow--medium);\n\n &.expanded {\n height: var(--ez-alert-list__container--height--expanded);\n width: var(--ez-alert-list__container--width--expanded);\n }\n\n @media (max-height: 640px) {\n max-height: calc(100vh - var(--space--3xl));\n } \n}\n\n.alert-list__header {\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.alert-list__title {\n font-family: var(--ez-alert-list__title--font-family);\n font-size: var(--ez-alert-list__title--font-size);\n font-weight: var(--ez-alert-list__title--font-weight);\n color: var(--ez-alert-list__title--color);\n}\n\n.alert-list__header__buttons {\n display: flex;\n gap: var(--space--xs);\n}\n\n.alert-list__expandable-content {\n overflow-y: auto;\n scrollbar-width: thin;\n}\n\n";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezAlertCss = ":host{--ez-alert-alert-container--padding-up-down:var(--space--small, 6px);--ez-alert-alert-container--padding-right-left:var(--space--medium, 12px);--ez-alert-alert-container--gap:var(--space--medium, 12px);--ez-alert-alert-container--border-radius:var(--border--radius-medium, 12px);--ez-alert-alert-container--font-color-warn:var(--color--alert-warning-900, #8C6B00);--ez-alert-alert-container--icon-warn:var(--color--alert-warning-900, #8C6B00);--ez-alert-alert-container--background-color-warn:var(--color--alert-warning-200, #FFF7D5);--ez-alert-alert-container--font-color-critical:var(--color--alert-error, #BD0025);--ez-alert-alert-container--icon-critical:var(--color--alert-error, #BD0025);--ez-alert-alert-container--background-color-critical:var(--color--alert-error-200, #F7E0E5);--ez-alert-alert-container--font-color-success:var(--color--alert-success, #157A00);--ez-alert-alert-container--icon-success:var(--color--alert-success, #157A00);--ez-alert-alert-container--background-color-success:var(--color--alert-success-200, #E7F6E0);font-size:var(--text--small, 12px);font-family:var(--font-pattern, \"Roboto\");width:100%;hyphens:auto;display:block}.alert-container{display:flex;align-items:center;gap:var(--ez-alert-alert-container--gap);padding:var(--ez-alert-alert-container--padding-up-down) var(--ez-alert-alert-container--padding-right-left);border-radius:var(--ez-alert-alert-container--border-radius)}.warn{background-color:var(--ez-alert-alert-container--background-color-warn);color:var(--ez-alert-alert-container--font-color-warn)}.critical{background-color:var(--ez-alert-alert-container--background-color-critical);color:var(--ez-alert-alert-container--font-color-critical)}.success{background-color:var(--ez-alert-alert-container--background-color-success);color:var(--ez-alert-alert-container--font-color-success)}ez-icon{--ez-icon--color:inherit}.alert-container__icon-warn{--ez-icon--color:var(--ez-alert-alert-container--icon-warn)}.alert-container__icon-critical{--ez-icon--color:var(--ez-alert-alert-container--icon-critical)}.alert-container__icon-success{--ez-icon--color:var(--ez-alert-alert-container--icon-success)}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-5a720e56.js';
2
2
 
3
3
  const ezApplicationCss = "";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  var Sizes;
@@ -11,7 +11,7 @@ var Sizes;
11
11
  Sizes["EXTRA_SMALL"] = "extra-small";
12
12
  })(Sizes || (Sizes = {}));
13
13
 
14
- const ezBadgeCss = ":host{--ez-badge--size-2xs:var(--space--2xs, 8px);--ez-badge--size-xs:var(--space--xs, 12px);--ez-badge--size-sm:var(--space--sm, 16px);--ez-badge--size-md:var(--space--md, 20px);--ez-badge--size-lg:var(--space--lg, 24px);--ez-badge--size-xl:var(--space--xl, 32px);--ez-badge--padding-2xs:0;--ez-badge--padding-xs:var(--space--nano, 2px);--ez-badge--padding-sm:calc(var(--space--nano, 2px) + 1px);--ez-badge--padding-md:var(--space--3xs, 4px);--ez-badge--padding-lg:calc(var(--space--3xs, 4px) + 2px);--ez-badge--padding-xl:var(--space--2xs);--ez-badge--border-radius:calc(var(--border--radius-medium, 12px) + 8px);--ez-badge--font-family:var(--font-pattern, Roboto);--ez-badge--font-weight-medium:var(--text-weight--medium, 400);--ez-badge--background-color:var(--color--primary, #008561);--ez-badge--border-none:0;--ez-badge--color:var(--text--inverted, #ffffff);--ez-badge--gap:calc(var(--ez-badge--padding-xs) + 1px);--ez-badge--font-size-md:var(--text--medium);--ez-badge--font-size-sm:var(--text--medium);--ez-badge--font-size-xs:var(--text--small)}ez-icon{--ez-icon--color:inherit}.badge{display:flex;justify-content:center;align-items:center;position:relative}.badge__content{font-family:var(--ez-badge--font-family, Roboto);font-weight:var(--ez-badge--font-weight-medium, 400);background-color:var(--ez-badge--background-color, #008561);border:var(--ez-badge--border-none, 0);color:var(--ez-badge--color, #ffffff);border-radius:var(--ez-badge--border-radius, 20px);gap:var(--ez-badge--gap, 3px);display:flex;justify-content:center;align-items:center}.badge__content--fill-xs{height:var(--ez-badge--size-xs, 12px);min-width:var(--ez-badge--size-xs, 12px)}.badge__content--fill-2xs{height:var(--ez-badge--size-2xs, 8px);min-width:var(--ez-badge--size-2xs, 8px)}.badge__content--text-md{height:calc(var(--ez-badge--size-md, 20px) - 2px);min-width:var(--ez-badge--size-sm, 20px);padding-top:var(--ez-badge--padding-sm);padding-bottom:var(--ez-badge--padding-sm);padding-right:var(--ez-badge--padding-xl);padding-left:var(--ez-badge--padding-xl);font-size:var(--ez-badge--font-size-md)}.badge__content--text-sm{height:calc(var(--ez-badge--size-sm, 16px) - 2px);min-width:var(--ez-badge--size-sm, 16px);padding-top:var(--ez-badge--padding-sm);padding-bottom:var(--ez-badge--padding-sm);padding-right:var(--ez-badge--padding-xl);padding-left:var(--ez-badge--padding-xl);font-size:var(--ez-badge--font-size-sm)}.badge__content--text-xs{height:var(--ez-badge--size-sm, 16px);min-width:var(--ez-badge--size-sm, 16px);padding-top:var(--ez-badge--padding-2xs);padding-bottom:var(--ez-badge--padding-2xs);padding-right:var(--ez-badge--padding-lg);padding-left:var(--ez-badge--padding-lg);font-size:var(--ez-badge--font-size-xs)}.badge__content--icon-lg{height:var(--ez-badge--size-lg, 24px);min-width:var(--ez-badge--size-lg, 24px);padding:var(--ez-badge--padding-md)}.badge__content--icon-md{height:var(--ez-badge--size-sm, 16px);min-width:var(--ez-badge--size-sm, 16px);padding:var(--ez-badge--padding-md)}.badge__content--icon-sm{height:var(--ez-badge--size-sm, 16px);min-width:var(--ez-badge--size-sm, 16px);padding:var(--ez-badge--padding-xs)}.badge__content--icon-xs{height:var(--ez-badge--size-xs, 12px);min-width:var(--ez-badge--size-xs, 12px);padding:var(--ez-badge--padding-xs)}.badge__content--fill{position:absolute;top:0;inset-inline-end:0;z-index:var(--most-visible, 2)}.badge__content--fill-top-right{transform:translate(50%, -50%);position:absolute;top:0;right:0}.badge__content--fill-top-left{transform:translate(-50%, -50%);position:absolute;top:0;left:0}.badge__content--fill-bottom-left{transform:translate(-50%, 50%);position:absolute;bottom:0;left:0}.badge__content--fill-bottom-right{transform:translate(50%, 50%);position:absolute;bottom:0;right:0}";
14
+ const ezBadgeCss = ":host{--ez-badge--size-2xs:var(--space--2xs, 8px);--ez-badge--size-xs:var(--space--xs, 12px);--ez-badge--size-sm:var(--space--sm, 16px);--ez-badge--size-md:var(--space--md, 20px);--ez-badge--size-lg:var(--space--lg, 24px);--ez-badge--size-xl:var(--space--xl, 32px);--ez-badge--padding-2xs:0;--ez-badge--padding-xs:var(--space--nano, 2px);--ez-badge--padding-sm:calc(var(--space--nano, 2px) + 1px);--ez-badge--padding-md:var(--space--3xs, 4px);--ez-badge--padding-lg:calc(var(--space--3xs, 4px) + 2px);--ez-badge--padding-xl:var(--space--2xs);--ez-badge--border-radius:calc(var(--border--radius-medium, 12px) + 8px);--ez-badge--font-family:var(--font-pattern, Roboto);--ez-badge--font-weight-medium:var(--text-weight--medium, 400);--ez-badge--background-color:var(--color--primary, #008561);--ez-badge--border-none:0;--ez-badge--color:var(--text--inverted, #ffffff);--ez-badge--gap:calc(var(--ez-badge--padding-xs) + 1px);--ez-badge--font-size-md:var(--text--medium);--ez-badge--font-size-sm:var(--text--medium);--ez-badge--font-size-xs:var(--text--small)}ez-icon{--ez-icon--color:inherit}.badge{display:flex;justify-content:center;align-items:center;position:relative}.badge__content{font-family:var(--ez-badge--font-family, Roboto);font-weight:var(--ez-badge--font-weight-medium, 400);background-color:var(--ez-badge--background-color, #008561);border:var(--ez-badge--border-none, 0);color:var(--ez-badge--color, #ffffff);border-radius:var(--ez-badge--border-radius, 20px);gap:var(--ez-badge--gap, 3px);display:flex;justify-content:center}.badge__content--fill-xs{height:var(--ez-badge--size-xs, 12px);min-width:var(--ez-badge--size-xs, 12px)}.badge__content--fill-2xs{height:var(--ez-badge--size-2xs, 8px);min-width:var(--ez-badge--size-2xs, 8px)}.badge__content--text-md{height:calc(var(--ez-badge--size-md, 20px) - 2px);min-width:var(--ez-badge--size-sm, 20px);padding-top:var(--ez-badge--padding-sm);padding-bottom:var(--ez-badge--padding-sm);padding-right:var(--ez-badge--padding-xl);padding-left:var(--ez-badge--padding-xl);font-size:var(--ez-badge--font-size-md)}.badge__content--text-sm{height:calc(var(--ez-badge--size-sm, 16px) - 2px);min-width:var(--ez-badge--size-sm, 16px);padding-top:var(--ez-badge--padding-sm);padding-bottom:var(--ez-badge--padding-sm);padding-right:var(--ez-badge--padding-xl);padding-left:var(--ez-badge--padding-xl);font-size:var(--ez-badge--font-size-sm)}.badge__content--text-xs{height:var(--ez-badge--size-sm, 16px);min-width:var(--ez-badge--size-sm, 16px);padding-top:var(--ez-badge--padding-2xs);padding-bottom:var(--ez-badge--padding-2xs);padding-right:var(--ez-badge--padding-lg);padding-left:var(--ez-badge--padding-lg);font-size:var(--ez-badge--font-size-xs)}.badge__content--icon-lg{height:var(--ez-badge--size-lg, 24px);min-width:var(--ez-badge--size-lg, 24px);padding:var(--ez-badge--padding-md)}.badge__content--icon-md{height:var(--ez-badge--size-sm, 16px);min-width:var(--ez-badge--size-sm, 16px);padding:var(--ez-badge--padding-md)}.badge__content--icon-sm{height:var(--ez-badge--size-sm, 16px);min-width:var(--ez-badge--size-sm, 16px);padding:var(--ez-badge--padding-xs)}.badge__content--icon-xs{height:var(--ez-badge--size-xs, 12px);min-width:var(--ez-badge--size-xs, 12px);padding:var(--ez-badge--padding-xs)}.badge__content--icon-align-center{align-items:center}.badge__content--icon-align-start{align-items:flex-start}.badge__content--icon-align-end{align-items:flex-end}.badge__content--fill{position:absolute;top:0;inset-inline-end:0;z-index:var(--most-visible, 2)}.badge__content--fill-top-right{transform:translate(50%, -50%);position:absolute;top:0;right:0}.badge__content--fill-top-left{transform:translate(-50%, -50%);position:absolute;top:0;left:0}.badge__content--fill-bottom-left{transform:translate(-50%, 50%);position:absolute;bottom:0;left:0}.badge__content--fill-bottom-right{transform:translate(50%, 50%);position:absolute;bottom:0;right:0}";
15
15
 
16
16
  const EzBadge = class {
17
17
  constructor(hostRef) {
@@ -42,6 +42,7 @@ const EzBadge = class {
42
42
  this.iconLeft = undefined;
43
43
  this.iconRight = undefined;
44
44
  this.position = { horizontal: "right", vertical: "top" };
45
+ this.alignItems = "center";
45
46
  }
46
47
  getIconSize() {
47
48
  switch (this.size) {
@@ -56,6 +57,16 @@ const EzBadge = class {
56
57
  return null;
57
58
  }
58
59
  }
60
+ getAlignItemsClass() {
61
+ switch (this.alignItems) {
62
+ case "flex-end":
63
+ return "end";
64
+ case "flex-start":
65
+ return "start";
66
+ default:
67
+ return "center";
68
+ }
69
+ }
59
70
  componentDidLoad() {
60
71
  if (this._element) {
61
72
  ElementIDUtils.addIDInfo(this._element);
@@ -79,7 +90,8 @@ const EzBadge = class {
79
90
  }
80
91
  createContainerClassName() {
81
92
  let sizeSufix = this._sizes[this.size].sufix;
82
- let containerClassNames = ["badge__content"];
93
+ let alignItemsClass = "badge__content--icon-align-" + this.getAlignItemsClass();
94
+ let containerClassNames = ["badge__content", alignItemsClass];
83
95
  if (this.hasSlot) {
84
96
  containerClassNames.push("badge__content--fill-" + sizeSufix);
85
97
  if (this.position.vertical == "bottom" && this.position.horizontal == "right") {
@@ -1,4 +1,4 @@
1
- import { h, r as registerInstance, c as createEvent, g as getElement } from './index-baa5e267.js';
1
+ import { h, r as registerInstance, c as createEvent, g as getElement } from './index-5a720e56.js';
2
2
  import { ElementIDUtils, ObjectUtils, JSUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const BreadcrumbItem = (props) => {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, h, g as getElement } from './index-5a720e56.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezButtonCss = ":host{--ez-button--min-width:100px;--ez-button--width:'auto';--ez-button--height:42px;--ez-button__icon--width:18px;--ez-button__inline__icon--padding:12px;--ez-button--padding-top:0px;--ez-button--padding-bottom:0px;--ez-button--padding-right:var(--space--large, 24px);--ez-button--padding-left:var(--space--large, 24px);--ez-button--color:var(--title--primary, #2B3A54);--ez-button--font-size:var(--text--medium, 14px);--ez-button--font-family:var(--font-pattern, Arial);--ez-button--font-weight:var(--text-weight--large);--ez-button--background-color:var(--background--light, #ffffff);--ez-button--border-radius:var(--border--radius-large, 24px);--ez-button--border:1px solid var(--color--strokes);--ez-button--justify-content:center;--ez-button--hover-color:var(--color--primary-600, #007a5a);--ez-button--hover--background-color:var(--background--light, #ffffff);--ez-button--disabled-color:var(--text--primary);--ez-button--disabled--background-color:var(--background--medium);--ez-button--focus--border:var(--border--medium, 2px solid) var(--color--primary-300);--ez-button--focus--box-shadow:var(--color--primary-300) 0px 0px 0px 2px;--ez-button--active-color:var(--color--primary-700);--ez-button--active--background-color:var(--background--strong);--ez-button--link-color:var(--color--primary, '#008561');--ez-button--link--hover-color:var(--color--primary-700, '#1C1D22');--ez-button--link-disabled-color:var(--text--secondary, #a2abb9);--ez-button--link--small--font-size:var(--text--small, 12px);--ez-button--link--medium--font-size:var(--text--medium, 14px);--ez-button--link--large--font-size:var(--text--large, 16px)}ez-icon{--ez-icon--color:inherit}button{position:relative;display:flex;align-items:center;margin:0;cursor:pointer;transition:background-color 0.2s linear;white-space:nowrap;min-width:var(--ez-button--min-width);width:var(--ez-button--width);height:var(--ez-button--height);font-family:var(--ez-button--font-family);font-size:var(--ez-button--font-size);font-weight:var(--ez-button--font-weight);padding:var(--ez-button--padding-top) var(--ez-button--padding-right) var(--ez-button--padding-bottom) var(--ez-button--padding-left);border-radius:var(--ez-button--border-radius);background-color:var(--ez-button--background-color);color:var(--ez-button--color);fill:var(--ez-button--color);border:var(--ez-button--border);justify-content:var(--ez-button--justify-content)}button:focus{outline:var(--ez-button--focus--border);box-shadow:none}button:hover{outline:none;background-color:var(--ez-button--hover--background-color);color:var(--ez-button--hover-color);fill:var(--ez-button--hover-color);--ez-icon--color:var(--ez-button--hover-color)}button:active{outline:none;box-shadow:none;background-color:var(--ez-button--active--background-color);color:var(--ez-button--active-color);fill:var(--ez-button--active-color);--ez-icon--color:var(--ez-button--active-color)}button:disabled{background-color:var(--ez-button--disabled--background-color);color:var(--ez-button--disabled-color);fill:var(--ez-button--disabled-color);--ez-icon--color:var(--ez-button--disabled-color);cursor:no-drop}.x-small{height:28px;--ez-button--font-size:var(--text--small, 12px)}.small{height:32px;--ez-button--font-size:var(--text--small, 12px)}.medium{height:42px}.large{height:46px}.btn-icon{padding:0px}.btn-icon--medium{width:42px;min-width:42px;height:42px}.btn-icon--x-small{width:28px;min-width:28px;height:28px}.btn-icon--small{width:32px;min-width:32px;height:32px}.btn-icon--large{width:46px;min-width:46px;height:46px}.label-icon{display:flex;flex-direction:column;align-items:center;color:var(--ez-button--color)}.label-icon:hover{color:var(--ez-button--hover-color);fill:var(--ez-button--hover-color);--ez-icon--color:var(--ez-button--hover-color)}.label-icon:active{color:var(--ez-button--active-color);fill:var(--ez-button--active-color);--ez-icon--color:var(--ez-button--active-color)}.label-icon label{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;font-family:var(--ez-button--font-family);font-size:var(--ez-button--font-size);font-weight:var(--ez-button--font-weight);user-select:none}button:disabled+label{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;font-family:var(--ez-button--font-family);font-size:var(--ez-button--font-size);font-weight:var(--ez-button--font-weight);color:var(--ez-button--disabled-color);cursor:no-drop}div.label-icon{cursor:pointer}div.label-icon,button:disabled{cursor:no-drop}a{font-family:var(--ez-button--font-family);font-weight:var(--ez-button--font-weight);color:var(--ez-button--link-color);cursor:pointer;display:flex;align-items:center;justify-content:center;}a:hover{color:var(--ez-button--link--hover-color)}a.small{font-size:var(--ez-button--link--small--font-size);line-height:var(--ez-button--link--small--font-size)}a.medium{font-size:var(--ez-button--link--medium--font-size);line-height:var(--ez-button--link--medium--font-size)}a.large{font-size:var(--ez-button--link--large--font-size);line-height:var(--ez-button--link--large--font-size)}a.disabled{color:var(--ez-button--link-disabled-color);cursor:not-allowed}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, f as forceUpdate, h, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, g as getElement } from './index-5a720e56.js';
2
2
  import { FloatingManager } from '@sankhyalabs/core';
3
3
 
4
4
  const ezCalendarCss = ":host{--ez-calendar--font-family:var(--font-pattern, Arial);--ez-calendar--color:var(--title--primary, #626e82);--ez-calendar--text-shadow:var(--text-shadow, 0 0 0 #353535, 0 0 1px transparent);--ez-calendar__body--background-color:var(--background--xlight, #FFF);--ez-calendar__time--background-color:var(--background--xlight, #FAFAFA);--ez-calendar__body--padding:var(--space--medium, 12px) var(--space--small, 6px);--ez-calendar__body--border-radius:var(--border--radius-medium, 12px);--ez-calendar__body--shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-container--z-index:var(--more-visible, 2);--ez-calendar__header-line--stroke:1px;--ez-calendar__header-line--color:var(--color--strokes, #C0C0C0);--ez-calendar__nav-btn--fill:var(--text--primary, #008561);--ez-calendar__nav-btn--hover--fill:var(--color--primary, #350404);--ez-calendar__nav-btn--width:10px;--ez-calendar__nav-btn--height:16px;--ez-calendar__nav-btn--previous-image:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" height=\"16px\" width=\"10px\"><path d=\"M 9.7808475,13.860393 3.9204526,8.0000004 9.7808475,2.0624965 7.9301965,0.28895552 0.21915255,8.0000004 7.9301965,15.711044 Z\"/></svg>');--ez-calendar__nav-btn--next-image:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" height=\"16px\" width=\"10px\"><path d=\"M 0.21915251,13.860393 6.0795475,8.0000007 0.21915251,2.0624968 2.0698036,0.28895588 9.7808475,8.0000007 2.0698036,15.711044 Z\"/></svg>');--ez-calendar__cell--margin:0px 1.5px;--ez-calendar__cell--width:var(--space--large, 24px);--ez-calendar__cell--padding:1.5px 0px;--ez-calendar__cell--border-radius:var(--border--radius-small, 6px);--ez-calendar__cell--over--background-color:var(--color--primary, #E2F4EF);--ez-calendar__cell--over--color:var(--color--primary-300, #008561);--ez-calendar__cell--outset--color:var(--color--disable-primary, #E5EAF0);--ez-calendar__cell--selected--background-color:var(--color--primary, #008561);--ez-calendar__cell--selected--color:var(--color--inverted, #FFF);--ez-calendar__btn-today--color:var(--color--primary);--ez-calendar__btn-today--hover--background-color:var(--color--primary-300, #E2F4EF);--ez-calendar__btn-today--border-radius:var(--border--radius-small, 6px);position:relative;display:flex;user-select:none}.calendar__container{display:flex;z-index:var(--more-visible, 2)}.calendar{display:flex;flex-direction:column;z-index:var(--more-visible, 2);background-color:var(--ez-calendar__body--background-color);padding:var(--ez-calendar__body--padding);border-radius:var(--ez-calendar__body--border-radius);box-shadow:var(--ez-calendar__body--shadow)}.calendar__header{display:flex;justify-content:space-between;padding-bottom:var(--space--small, 6px);margin:0px var(--space--, 12px) var(--space--small, 6px) var(--space--, 12px);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow);border-bottom:solid var(--ez-calendar__header-line--stroke) var(--ez-calendar__header-line--color)}.calendar__btn-next,.calendar__btn-previous{outline:none;border:none;background-color:unset;cursor:pointer;padding:0px}.calendar__btn-next::after,.calendar__btn-previous::after{content:'';display:flex;background-color:var(--ez-calendar__nav-btn--fill);width:var(--ez-calendar__nav-btn--width);height:var(--ez-calendar__nav-btn--height)}.calendar__btn-previous::after{-webkit-mask-image:var(--ez-calendar__nav-btn--previous-image);mask-image:var(--ez-calendar__nav-btn--previous-image)}.calendar__btn-next::after{-webkit-mask-image:var(--ez-calendar__nav-btn--next-image);mask-image:var(--ez-calendar__nav-btn--next-image)}.calendar__btn-next:hover::after,.calendar__btn-previous:hover::after{background-color:var(--ez-calendar__nav-btn--hover--fill)}.calendar__lbl-month{font-weight:var(--text-weight--extra-large, 700);font-size:var(--title--small, 14px);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow)}.calendar__line{display:flex;padding:0px;margin:0px}.calendar__cell{display:flex;justify-content:center;align-content:center;cursor:pointer;font-size:var(--text--extra-small, 10px);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow);padding:var(--ez-calendar__cell--padding);margin:var(--ez-calendar__cell--margin);min-width:var(--ez-calendar__cell--width);border-radius:var(--ez-calendar__cell--border-radius)}.calendar__cell:hover{background-color:var(--ez-calendar__cell--over--background-color);color:var(--ez-calendar__cell--over--color)}.calendar__cell--secondary{color:var(--ez-calendar__cell--outset--color)}.calendar__cell--unselectable:hover{background-color:unset;border-radius:unset;cursor:unset;color:var(--ez-calendar--color)}.calendar__cell--unselectable{font-weight:var(--text-weight--large, 600);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow)}.calendar__cell--selected,.calendar__cell--selected:hover{background-color:var(--ez-calendar__cell--selected--background-color);color:var(--ez-calendar__cell--selected--color)}.calendar__footer{display:flex;flex-direction:column}.calendar__btn-today{border:none;background-color:unset;cursor:pointer;padding:0px;font-weight:var(--text-weight--large, 600);font-size:var(--title--extra-small, 12px);font-family:var(--ez-calendar--font-family);text-shadow:var(--ez-calendar--text-shadow);color:var(--ez-calendar__btn-today--color);border-radius:var(--ez-calendar__btn-today--border-radius)}.calendar__btn-today:hover{background-color:var(--ez-calendar__btn-today--hover--background-color)}section{display:flex}.calendar-time{margin-left:-10px;display:flex;flex-direction:column;padding:12px 0px 0px 10px;background-color:var(--ez-calendar__time--background-color);border-top-right-radius:var(--ez-calendar__body--border-radius);border-bottom-right-radius:var(--ez-calendar__body--border-radius);box-shadow:var(--ez-calendar__body--shadow)}.calendar__column{height:136px;padding:0px;margin:0px;overflow:auto;scrollbar-width:none}.calendar__column::-webkit-scrollbar{width:0px;max-width:0px;min-width:0px}.calendar-time__header{display:flex;justify-content:space-between;padding-left:var(--space--small, 6px);padding-right:var(--space--small, 6px);padding-bottom:var(--space--small, 6px);margin:0px var(--space--, 12px) var(--space--small, 6px) var(--space--, 12px);font-weight:var(--text-weight--extra-large, 700);font-size:var(--title--small, 14px);text-shadow:var(--ez-calendar--text-shadow);border-bottom:solid var(--ez-calendar__header-line--stroke) var(--ez-calendar__header-line--color);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow)}.separatorTime{color:#A2ABB9;padding:0px 1px;line-height:16px;font-size:17px;font-weight:normal}.endHidden{-webkit-mask-image:linear-gradient(180deg, #000 calc(100% - 48px), transparent 100%)}.calendar__column .calendar__cell{margin:0px;padding:1.5px 1.5px}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezCardItemCss = ":host { \n /*@doc Define o tamanho da fonte do componente.*/\n --ez-card-item--font-size: var(--text--medium, 14px);\n\n /*@doc Define o tamanho da fonte do componente no modo compacto.*/\n --ez-card-item--font-size-compacted: var(--text--extra-small, 10px);\n\n /*@doc Define a família da fonte do componente.*/\n --ez-card-item--font-family: var(--font-pattern, Arial);\n\n /*@doc Define o peso da fonte do componente.*/\n --ez-card-item--font-weight: var(--text-weight--medium, 400);\n\n /*@doc Define o peso da fonte do title do componente.*/\n --ez-card-item--font-weight-large: var(--text-weight--large, 600);\n\n /*@doc Define a cor da fonte do componente.*/\n --ez-card-item--color: var(--text--primary, #626e82);\n\n /*@doc Define a cor da fonte da key do componente.*/\n --ez-card-item__key--color: var(--text--primary, #626e82);\n\n /*@doc Define a cor da fonte do label do detalhe do componente.*/\n --ez-card-item__detail-label--color: var(--text--secondary, #A2ABB9);\n\n /*@doc Define o espaçamento inferior dos detalhes do componente.*/\n --ez-card-item__detail--padding-bottom: var(--space--extra-small, 3px);\n\n /*@doc Define o espaçamento inferior do title do componente.*/\n --ez-card-item__title--padding-bottom: var(--space--extra-small, 3px);\n\n /*@doc Define a cor do highlight / marcação nos textos do componente.*/\n --ez-card-item__highlight--color: var(--color--primary-300, #E2F4EF);\n\n /*@doc Define o peso da fonte do componente.*/\n --ez-card-item--detail-label--font-weight: var(--text-weight--large, 400);\n\n width: 100%;\n display: flex;\n cursor: pointer;\n}\n\n.card-item {\n display: flex;\n flex-direction: column;\n width: 100%;\n cursor: pointer;\n z-index: 0;\n position: relative;\n container-type: inline-size;\n container-name: box;\n white-space: pre-line;\n}\n\n.card-item__detail{\n display: inline-block;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n opacity: var(--opacity--soft);\n}\n\n\n\n.card-item__expanded {\n padding: var(--space--medium);\n}\n\n.card-item:hover {\n background: #F0F3F7;\n border-radius: 12px;\n}\n\n.card-item__title {\n display: flex;\n align-items: center;\n line-height: 18px;\n cursor: pointer;\n\n /*public*/\n font-size: var(--ez-card-item--font-size);\n font-family: var(--ez-card-item--font-family);\n font-weight: var(--ez-card-item--font-weight-large);\n color: var(--ez-card-item--color);\n padding-bottom: var(--ez-card-item__title--padding-bottom);\n gap: var(--space--small, 6px);\n}\n\n.card-item__key {\n /*public*/\n color: var(--ez-card-item__key--color);\n}\n\n.card-item__details {\n display: flex;\n flex-direction: column;\n cursor: pointer;\n justify-content: space-between;\n width: 100%;\n}\n\n.card-item__details-container__left {\n display: flex;\n flex-direction: column;\n white-space: pre-line;\n cursor: pointer;\n width: 50%;\n}\n\n.card-item__details-container__right {\n display: flex;\n flex-direction: column;\n white-space: pre-line;\n width: 50%;\n cursor: pointer;\n}\n\n.card-item__detail{\n cursor: pointer;\n}\n\n.card-item__detail-default:not(:last-child) {\n padding-bottom: var(--ez-card-item__detail--padding-bottom);\n}\n\n.card-item__detail-label {\n cursor: pointer;\n\n /*public*/\n font-size: var(--ez-card-item--font-size);\n font-family: var(--ez-card-item--font-family);\n font-weight: var(--ez-card-item--detail-label--font-weight);\n}\n\n.card-item__detail-value {\n cursor: pointer;\n line-break: anywhere;\n\n /*public*/\n font-size: var(--ez-card-item--font-size);\n font-family: var(--ez-card-item--font-family);\n font-weight: var(--ez-card-item--font-weight);\n}\n\n.card-item__highlight {\n position: relative;\n border-radius: 8px;\n z-index: -1;\n\n /*public*/\n background-color: var(--ez-card-item__highlight--color);\n outline: 2px solid var(--ez-card-item__highlight--color);\n box-shadow: -4px 0px 0px 0px var(--ez-card-item__highlight--color), \n 4px 0px 0px 0px var(--ez-card-item__highlight--color);\n}\n\n.card-item__content{\n display: flex;\n align-items: center;\n}\n\n.card-item__details-container_default{\n display: flex;\n}\n\n.card-item__details-slot{\n margin-left: auto;\n}\n\n/* Modo compacto */\n.card-item__compacted {\n padding: var(--space--medium);\n padding-bottom: 0px;\n padding-right: 0px;\n}\n\n.card-item__detail-label-compacted {\n font-size: var(--ez-card-item--font-size-compacted);\n}\n\n.card-item__detail-value-compacted {\n font-size: var(--ez-card-item--font-size-compacted);\n}\n\n.card-item__title-compacted {\n font-size: var(--ez-card-item--font-size-compacted);\n}\n\n.card-item__details-container__left-compacted{\n width: 100%;\n}\n\n.card-item__details-container__right-compacted {\n width: 100%;\n}\n\n\n@container box (max-width: 550px) {\n .card-item__details {\n flex-direction: column;\n }\n\n .card-item__details-container__left {\n width: 100%;\n }\n \n .card-item__details-container__right {\n width: 100%;\n }\n}\n\n@container box (max-width: 200px) {\n .card-item__title {\n font-size: 10px;\n }\n\n .card-item__detail-label {\n font-size: 10px;\n }\n\n .card-item__detail-value {\n font-size: 10px;\n }\n\n}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-5a720e56.js';
2
2
 
3
3
  class ChartContext {
4
4
  constructor(strategy) {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { C as CheckMode } from './CheckMode-bdb2ec19.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-5a720e56.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:focus{outline:var(--border--medium) 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-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-5a720e56.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { A as ApplicationUtils } from './ApplicationUtils-eaf91331.js';
4
4
  import './DialogType-54a62731.js';
@@ -1,12 +1,12 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
2
- import { ObjectUtils, ElementIDUtils } from '@sankhyalabs/core';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
2
+ import { ObjectUtils, FloatingManager, StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import './ApplicationUtils-eaf91331.js';
4
4
  import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.js';
5
5
  import './DialogType-54a62731.js';
6
6
  import './CheckMode-bdb2ec19.js';
7
7
  import './ICustomRender-875b5a40.js';
8
8
 
9
- const ezComboBoxCss = ":host{--ez-combo-box--height:42px;--ez-combo-box--width:100%;--ez-combo-box--border-radius:var(--border--radius-medium, 12px);--ez-combo-box--font-size:var(--text--medium, 14px);--ez-combo-box--font-family:var(--font-pattern, Arial);--ez-combo-box--background-color--xlight:var(--background--xlight, #fff);--ez-combo-box__input--background-color:var(--background--medium, #e0e0e0);--ez-combo-box__input--border:var(--border--medium, 2px solid);--ez-combo-box__input--border-color:var(--ez-combo-box__input--background-color);--ez-combo-box__input--focus--border-color:var(--color--primary, #008561);--ez-combo-box__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-combo-box__input--disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__btn--color:var(--title--primary, #2B3A54);--ez-combo-box__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__btn-hover--color:var(--color--primary, #4e4e4e);width:var(--ez-combo-box--width)}ez-icon{--ez-icon--color:inherit;font-weight:var(--text-weight--large, 600)}.suppressed-search-input{--ez-text-input__input--border-color:var(--color--strokes, #dce0e8);--ez-text-input__input--disabled--background-color:var(--background--xlight, #fff);--ez-text-input__input--disabled--color:var(--title--primary, #2B3A54)}.btn{outline:none;border:none;background:none;cursor:pointer;padding:0px;color:var(--ez-combo-box__btn--color)}.btn:disabled{cursor:unset;color:var(--ez-combo-box__btn-disabled--color)}.btn:disabled:hover{cursor:not-allowed;color:var(--ez-combo-box__btn-disabled--color)}.btn:hover{color:var(--ez-combo-box__btn-hover--color)}.btn__close{visibility:hidden}ez-text-input:hover .btn__close,ez-text-input:focus .btn__close{visibility:visible}.text-input-slot-container{--ez-text-input__icon--width:32px;--ez-text-input__min-width:var(--ez-combo-box__min-width);--ez-text-input__max-width:var(--ez-combo-box__max-width)}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";
9
+ const ezComboBoxCss = ":host{--ez-combo-box--height:42px;--ez-combo-box--width:100%;--ez-combo-box__icon--width:48px;--ez-combo-box__min-width:0px;--ez-combo-box__max-width:100%;--ez-combo-box--border-radius:var(--border--radius-medium, 12px);--ez-combo-box--border-radius-small:var(--border--radius-small, 6px);--ez-combo-box--font-size:var(--text--medium, 14px);--ez-combo-box--font-family:var(--font-pattern, Arial);--ez-combo-box--font-weight--large:var(--text-weight--large, 500);--ez-combo-box--font-weight--medium:var(--text-weight--medium, 400);--ez-combo-box--background-color--xlight:var(--background--xlight, #fff);--ez-combo-box--background-medium:var(--background--medium, #f0f3f7);--ez-combo-box--line-height:calc(var(--text--medium, 14px) + 4px);--ez-combo-box__input--background-color:var(--background--medium, #e0e0e0);--ez-combo-box__input--border:var(--border--medium, 2px solid);--ez-combo-box__input--border-color:var(--ez-combo-box__input--background-color);--ez-combo-box__input--focus--border-color:var(--color--primary, #008561);--ez-combo-box__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-combo-box__input--disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__input--error--border-color:#CC2936;--ez-combo-box__btn--color:var(--title--primary, #2B3A54);--ez-combo-box__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__btn-hover--color:var(--color--primary, #4e4e4e);--ez-combo-box__label--color:var(--title--primary, #2B3A54);--ez-combo-box__list-title--primary:var(--title--primary, #2B3A54);--ez-combo-box__list-text--primary:var(--text--primary, #626e82);--ez-combo-box__list-height:calc(var(--ez-combo-box--font-size) + var(--ez-combo-box--space--medium) + 4px);--ez-combo-box__list-min-width:64px;--ez-combo-box--space--medium:var(--space--medium, 12px);--ez-combo-box--space--small:var(--space--small, 6px);--ez-combo-box__scrollbar--color-default:var(--scrollbar--default, #626e82);--ez-combo-box__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--ez-combo-box__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--ez-combo-box__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--ez-combo-box__scrollbar--border-radius:var(--border--radius-small, 6px);--ez-combo-box__scrollbar--width:var(--space--small, 6px);display:flex;flex-wrap:wrap;position:relative;width:var(--ez-combo-box--width)}ez-icon{--ez-icon--color:inherit;font-weight:var(--text-weight--large, 600)}.suppressed-search-input{--ez-text-input__input--border-color:var(--color--strokes, #dce0e8);--ez-text-input__input--disabled--background-color:var(--background--xlight, #fff);--ez-text-input__input--disabled--color:var(--title--primary, #2B3A54)}.list-container{min-width:var(--ez-combo-box__list-min-width);position:relative;width:100%}.list-wrapper{display:flex;flex-direction:column;box-sizing:border-box;width:0;z-index:var(--more-visible, 2);max-height:calc(4*var(--ez-combo-box__list-height) + 2*var(--ez-combo-box--space--small) + 9px);background-color:var(--ez-combo-box--background-color--xlight);border-radius:var(--ez-combo-box--border-radius);box-shadow:var(--shadow, 0px 0px 16px 0px #000);padding:var(--ez-combo-box--space--small)}.list-options{box-sizing:border-box;width:100%;height:100%;padding:0;display:flex;flex-direction:column;scroll-behavior:smooth;overflow:auto;scrollbar-width:thin;gap:3px;scrollbar-color:var(--ez-combo-box__scrollbar--color-clicked) var(--ez-combo-box__scrollbar--color-background)}.list-options::-webkit-scrollbar{background-color:var(--ez-combo-box__scrollbar--color-background);width:var(--ez-combo-box__scrollbar--width);max-width:var(--ez-combo-box__scrollbar--width);min-width:var(--ez-combo-box__scrollbar--width)}.list-options::-webkit-scrollbar-track{background-color:var(--ez-combo-box__scrollbar--color-background);border-radius:var(--ez-combo-box__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb{background-color:var(--ez-combo-box__scrollbar--color-default);border-radius:var(--ez-combo-box__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb:vertical:hover,.list-options::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-combo-box__scrollbar--color-hover)}.list-options::-webkit-scrollbar-thumb:vertical:active,.list-options::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-combo-box__scrollbar--color-clicked)}.item{display:flex;align-items:center;width:100%;box-sizing:border-box;list-style-type:none;cursor:pointer;border-radius:var(--ez-combo-box--border-radius-small);padding:var(--ez-combo-box--space--small);min-height:var(--ez-combo-box__list-height);gap:var(--space--small, 6px)}.item__value,.item__label{flex-basis:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ez-combo-box__list-title--primary);font-family:var(--ez-combo-box--font-family);font-size:var(--ez-combo-box--font-size);line-height:var(--ez-combo-box--line-height)}.item__label{font-weight:var(--ez-combo-box--font-weight--medium)}.item__label--bold{font-weight:var(--ez-combo-box--font-weight--large)}.item__value{text-align:center;color:var(--ez-combo-box__list-text--primary);font-weight:var(--ez-combo-box--font-weight--large)}.item__value--hidden{visibility:hidden;position:absolute;white-space:nowrap;z-index:-1;top:0;left:0}.item__label{text-align:left}.message{text-align:center;display:flex;justify-content:center;align-items:center;list-style-type:none;min-height:var(--ez-combo-box__list-height)}.message__no-result{color:var(--ez-combo-box__list-title--primary);font-family:var(--ez-combo-box--font-family);font-size:var(--ez-combo-box--font-size)}.message__loading{border-radius:50%;width:14px;height:14px;-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite;border:3px solid var(--ez-combo-box__list-title--primary);border-top:3px solid transparent}li:hover{background-color:var(--ez-combo-box--background-medium)}.preselected{background-color:var(--background--medium)}.btn{outline:none;border:none;background:none;cursor:pointer;padding:0px;color:var(--ez-combo-box__btn--color)}.btn:disabled{cursor:unset;color:var(--ez-combo-box__btn-disabled--color)}.btn:disabled:hover{cursor:not-allowed;color:var(--ez-combo-box__btn-disabled--color)}.btn:hover{color:var(--ez-combo-box__btn-hover--color)}.btn__close{visibility:hidden}ez-text-input:hover .btn__close,ez-text-input:focus .btn__close{visibility:visible}.text-input-slot-container{--ez-text-input__icon--width:32px;--ez-text-input__min-width:var(--ez-combo-box__min-width);--ez-text-input__max-width:var(--ez-combo-box__max-width)}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";
10
10
 
11
11
  const EzComboBox = class {
12
12
  constructor(hostRef) {
@@ -18,13 +18,11 @@ const EzComboBox = class {
18
18
  this._tabPressed = false;
19
19
  this._textEmptyList = "Nenhum resultado encontrado";
20
20
  this._lookupMode = false;
21
- this.isOpen = false;
22
21
  this._preSelection = undefined;
23
22
  this._visibleOptions = undefined;
24
23
  this._startLoading = false;
25
24
  this._showLoading = true;
26
25
  this._criteria = undefined;
27
- this._textInputReady = undefined;
28
26
  this.limitCharsToSearch = 3;
29
27
  this.value = undefined;
30
28
  this.label = undefined;
@@ -130,6 +128,63 @@ const EzComboBox = class {
130
128
  async clearValue() {
131
129
  this.clearSearch();
132
130
  }
131
+ scrollListener() {
132
+ var _a;
133
+ if (this._floatingID == undefined) {
134
+ return;
135
+ }
136
+ if ((_a = this.listOptionsPosition) === null || _a === void 0 ? void 0 : _a.hardPosition) {
137
+ this.hideOptions();
138
+ }
139
+ else {
140
+ window.requestAnimationFrame(() => {
141
+ this.updateListPosition();
142
+ });
143
+ }
144
+ }
145
+ updateListPosition() {
146
+ let { verticalPosition, horizontalPosition, fromBottom, fromRight, bottomLimit, hardPosition } = this.getListPosition();
147
+ const elementRect = this._listWrapper.getBoundingClientRect();
148
+ const containerRect = this._listContainer.getBoundingClientRect();
149
+ const textInputRect = this._textInput.getBoundingClientRect();
150
+ const limitHeight = bottomLimit || window.innerHeight;
151
+ const neededHeight = containerRect.bottom + elementRect.height;
152
+ if (!fromBottom && (elementRect.top < 0 || neededHeight > limitHeight)) {
153
+ fromBottom = true;
154
+ }
155
+ if (!hardPosition) {
156
+ verticalPosition = verticalPosition || 0;
157
+ horizontalPosition = horizontalPosition || 0;
158
+ if (fromBottom) {
159
+ verticalPosition = window.innerHeight - textInputRect.top + verticalPosition;
160
+ }
161
+ else {
162
+ verticalPosition += containerRect.top;
163
+ }
164
+ if (fromRight) {
165
+ horizontalPosition = window.innerWidth - textInputRect.right + horizontalPosition;
166
+ }
167
+ else {
168
+ horizontalPosition += containerRect.left;
169
+ }
170
+ }
171
+ if (verticalPosition != undefined) {
172
+ this._listWrapper.style[fromBottom ? "bottom" : "top"] = `${verticalPosition}px`;
173
+ this._listWrapper.style[fromBottom ? "top" : "bottom"] = "";
174
+ }
175
+ if (horizontalPosition != undefined) {
176
+ this._listWrapper.style[fromRight ? "right" : "left"] = `${horizontalPosition}px`;
177
+ this._listWrapper.style[fromRight ? "left" : "right"] = "";
178
+ }
179
+ }
180
+ getListPosition() {
181
+ if (this.listOptionsPosition) {
182
+ return this.listOptionsPosition;
183
+ }
184
+ return {
185
+ verticalPosition: 6
186
+ };
187
+ }
133
188
  isDifferentValues(firstValue, secondValue) {
134
189
  return ObjectUtils.objectToString(firstValue || {}) !== ObjectUtils.objectToString(secondValue || {});
135
190
  }
@@ -202,24 +257,85 @@ const EzComboBox = class {
202
257
  }
203
258
  return 0;
204
259
  }
260
+ buildItem(opt, index) {
261
+ const widthValue = this.showOptionValue && this._maxWidthValue > 0 ? `${this._maxWidthValue}px` : '';
262
+ opt.label = opt.label || opt.value;
263
+ return h("li", { class: index === this._preSelection ? "item preselected" : "item", id: `item_${opt.value}`, onMouseDown: () => this.selectOption(opt), onMouseOver: () => this._preSelection = index }, this.showOptionValue
264
+ ? h("span", { class: "item__value", title: opt.value, style: { width: widthValue, minWidth: widthValue, maxWidth: widthValue } }, opt.value)
265
+ : undefined, h("span", { class: "item__label " + (this.showOptionValue ? "item__label--bold" : ""), title: opt.label }, opt.label));
266
+ }
205
267
  showOptions() {
206
268
  var _a, _b;
207
269
  if (!this.enabled)
208
270
  return;
209
- this.openPopover();
271
+ if (this.isOptionsVisible()) {
272
+ return;
273
+ }
210
274
  const valueString = (_b = (_a = this.value) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : this.value;
211
275
  const indexValue = this._visibleOptions.findIndex(option => option.value === valueString);
212
276
  this._preSelection = indexValue === -1 ? 0 : indexValue;
213
277
  if (!!this._resizeObserver)
214
278
  this._resizeObserver.observe(this._textInput);
279
+ this._floatingID = FloatingManager.float(this._listWrapper, this._listContainer, { autoClose: true, isFixed: true, backClickListener: () => this.hideOptions() });
215
280
  this.setFocus();
281
+ window.requestAnimationFrame(() => {
282
+ this.updateListPosition();
283
+ if (!this.listOptionsPosition) {
284
+ this._listWrapper.scrollIntoView({ behavior: "smooth", block: "nearest", inline: "nearest" });
285
+ }
286
+ });
216
287
  }
217
288
  hideOptions() {
218
- var _a;
219
- (_a = this._popover) === null || _a === void 0 ? void 0 : _a.hide();
289
+ if (this._floatingID !== undefined) {
290
+ FloatingManager.close(this._floatingID);
291
+ }
292
+ this._floatingID = undefined;
220
293
  if (!!this._resizeObserver)
221
294
  this._resizeObserver.unobserve(this._textInput);
222
295
  }
296
+ isOptionsVisible() {
297
+ return this._floatingID !== undefined && FloatingManager.isFloating(this._floatingID);
298
+ }
299
+ nextOption() {
300
+ if (!this.isOptionsVisible()) {
301
+ return;
302
+ }
303
+ this.showOptions();
304
+ this._preSelection = this._preSelection === undefined ? 0 : Math.min(this._preSelection + 1, this._visibleOptions.length - 1);
305
+ this.scrollToOption(this._visibleOptions[this._preSelection]);
306
+ }
307
+ previousOption() {
308
+ this._preSelection = this._preSelection === undefined ? 0 : Math.max(this._preSelection - 1, 0);
309
+ this.scrollToOption(this._visibleOptions[this._preSelection]);
310
+ }
311
+ scrollToOption(opt) {
312
+ window.requestAnimationFrame(() => {
313
+ const liElem = (opt === null || opt === void 0 ? void 0 : opt.value) ? this._optionsList.querySelector(`li#item_${opt.value.replace(/[<>\[\]#=]/g, '\\$&').replace(/:/g, '\\:')}`) : undefined;
314
+ if (liElem)
315
+ liElem.scrollIntoView({ behavior: "smooth", block: "nearest" });
316
+ });
317
+ }
318
+ selectCurrentOption(focusOnInput = true) {
319
+ if (this._preSelection !== undefined) {
320
+ this.selectOption(this._visibleOptions[this._preSelection], focusOnInput);
321
+ this._preSelection = undefined;
322
+ }
323
+ else {
324
+ this.controlListWithOnlyOne(focusOnInput);
325
+ }
326
+ }
327
+ controlListWithOnlyOne(focusOnInput = true) {
328
+ var _a;
329
+ const source = (_a = this._visibleOptions) === null || _a === void 0 ? void 0 : _a.filter((opt) => opt.label !== "" && opt.value != undefined);
330
+ if ((source === null || source === void 0 ? void 0 : source.length) > 0) {
331
+ let title = StringUtils.decodeHtmlEntities(source[0].label);
332
+ const option = {
333
+ value: source[0].value,
334
+ label: title,
335
+ };
336
+ this.selectOption(option, focusOnInput);
337
+ }
338
+ }
223
339
  updateSource(source) {
224
340
  this._startLoading = false;
225
341
  if (source instanceof Promise) {
@@ -245,13 +361,12 @@ const EzComboBox = class {
245
361
  }
246
362
  }
247
363
  selectOption(newOption, focusOnInput = true) {
248
- var _a, _b, _c;
364
+ var _a, _b;
249
365
  const currentValue = this.getSelectedOption(this.value);
250
366
  if ((((_a = currentValue === null || currentValue === void 0 ? void 0 : currentValue.value) === null || _a === void 0 ? void 0 : _a.toString()) !== ((_b = newOption === null || newOption === void 0 ? void 0 : newOption.value) === null || _b === void 0 ? void 0 : _b.toString()))
251
367
  || (currentValue == undefined && newOption != undefined && "value" in newOption)) {
252
368
  const adjustedOpt = !(newOption === null || newOption === void 0 ? void 0 : newOption.value) ? undefined : newOption;
253
369
  this.value = adjustedOpt;
254
- (_c = this._popover) === null || _c === void 0 ? void 0 : _c.hide();
255
370
  }
256
371
  else {
257
372
  this.resetOptions();
@@ -304,11 +419,6 @@ const EzComboBox = class {
304
419
  //---------------------------------------------
305
420
  // Lifecycle web component
306
421
  //---------------------------------------------
307
- componentDidRender() {
308
- if (this._textInput) {
309
- this._textInputReady = true;
310
- }
311
- }
312
422
  componentWillLoad() {
313
423
  if (this.options === undefined) {
314
424
  this.options = [];
@@ -327,6 +437,15 @@ const EzComboBox = class {
327
437
  }
328
438
  this.loadOptions(SearchMode.PRELOAD);
329
439
  }
440
+ componentDidRender() {
441
+ var _a;
442
+ if (this._floatingID === undefined) {
443
+ this._listWrapper.remove();
444
+ }
445
+ (_a = this._optionsList) === null || _a === void 0 ? void 0 : _a.querySelectorAll(".item").forEach((elem) => {
446
+ ElementIDUtils.addIDInfoIfNotExists(elem, "itemComboBox");
447
+ });
448
+ }
330
449
  componentDidLoad() {
331
450
  CSSVarsUtils.applyVarsTextInput(this.el, this._textInput);
332
451
  this.setInputValue(false);
@@ -334,12 +453,10 @@ const EzComboBox = class {
334
453
  window.requestAnimationFrame(() => {
335
454
  if (!Array.isArray(entries) || !entries.length)
336
455
  return;
337
- if (!this._textInput)
338
- return;
339
- if (!this._comboBoxList)
340
- return;
341
- const textInputWidth = this._textInput.clientWidth;
342
- this._comboBoxList.width = textInputWidth;
456
+ const { clientWidth } = this._listContainer;
457
+ if (clientWidth > 0 && !!this._listWrapper) {
458
+ this._listWrapper.style.width = `${clientWidth}px`;
459
+ }
343
460
  });
344
461
  });
345
462
  if (this.autoFocus) {
@@ -348,13 +465,6 @@ const EzComboBox = class {
348
465
  });
349
466
  }
350
467
  }
351
- disconnectedCallback() {
352
- var _a;
353
- (_a = this._popover) === null || _a === void 0 ? void 0 : _a.remove();
354
- if (this._resizeObserver) {
355
- this._resizeObserver.disconnect();
356
- }
357
- }
358
468
  //---------------------------------------------
359
469
  // Event handlers
360
470
  //---------------------------------------------
@@ -394,48 +504,65 @@ const EzComboBox = class {
394
504
  this.showOptions();
395
505
  }
396
506
  keyDownHandler(event) {
397
- var _a, _b, _c, _d, _e, _f;
398
- if (event.ctrlKey && (event.key === "f" || event.key === "F")) {
399
- this.loadOptions(SearchMode.ADVANCED);
400
- event.preventDefault();
401
- event.stopPropagation();
402
- return;
507
+ this._tabPressed = false;
508
+ if (event.ctrlKey) {
509
+ if (event.key === "f" || event.key === "F") {
510
+ this.loadOptions(SearchMode.ADVANCED);
511
+ //ATENÇÃO: Ctrl + F tem ação específica nos browsers
512
+ //nesse caso, como vamos abrir o popup de busca avançada,
513
+ //não é interessante deixar o evento propagar;
514
+ event.stopPropagation();
515
+ event.stopImmediatePropagation();
516
+ event.preventDefault();
517
+ }
403
518
  }
404
519
  switch (event.key) {
405
520
  case "ArrowDown":
406
- event.preventDefault();
407
- if (this.canShowListOptions()) {
408
- this.showOptions();
409
- (_a = this._comboBoxList) === null || _a === void 0 ? void 0 : _a.nextOption();
410
- }
521
+ event.stopPropagation();
522
+ if (this.canShowListOptions())
523
+ event.preventDefault();
524
+ this.showOptions();
525
+ this.nextOption();
411
526
  break;
412
527
  case "ArrowUp":
413
- event.preventDefault();
414
- if (this.canShowListOptions()) {
415
- this.showOptions();
416
- (_b = this._comboBoxList) === null || _b === void 0 ? void 0 : _b.previousOption();
417
- }
528
+ event.stopPropagation();
529
+ if (this.canShowListOptions())
530
+ event.preventDefault();
531
+ this.showOptions();
532
+ this.previousOption();
418
533
  break;
419
534
  case "Enter":
420
- if (this.isOpen) {
421
- event.preventDefault();
422
- (_c = this._comboBoxList) === null || _c === void 0 ? void 0 : _c.selectCurrentOption();
535
+ this.handleEventPropagation(event);
536
+ if (this.isOptionsVisible()) {
537
+ this.selectCurrentOption();
423
538
  }
424
539
  break;
425
540
  case "Escape":
426
- if (this.isOpen) {
427
- event.preventDefault();
428
- (_d = this._popover) === null || _d === void 0 ? void 0 : _d.hide();
541
+ if (this.isOptionsVisible()) {
542
+ event.stopPropagation();
429
543
  }
544
+ this.cancelPreselection();
545
+ this.resetOptions();
430
546
  break;
431
547
  case "Tab":
432
548
  this._tabPressed = true;
433
- if (this.isOpen) {
434
- (_e = this._comboBoxList) === null || _e === void 0 ? void 0 : _e.selectCurrentOption();
435
- (_f = this._popover) === null || _f === void 0 ? void 0 : _f.hide();
549
+ if (this.isOptionsVisible()) {
550
+ this.selectCurrentOption(false);
436
551
  }
552
+ this.resetOptions();
437
553
  break;
438
554
  }
555
+ //ATENÇÃO: Existe a necessidade de propagar o evento de teclado.
556
+ //Por exemplo, quando o usuário dá um Enter, além de selecionar
557
+ //um valor, também significa que a ateração finalizou,
558
+ //e o contexto pode reagir (fechar um popup por exemplo).
559
+ //event.stopPropagation();
560
+ }
561
+ //O evento deve ter sua propagação interrompida, apenas se a lista de opções estiver sendo exibida.
562
+ handleEventPropagation(event) {
563
+ if (this._listContainer.hasChildNodes() && this.stopPropagateEnterKeyEvent) {
564
+ event.stopPropagation();
565
+ }
439
566
  }
440
567
  onTextInputFocusOutHandler() {
441
568
  if (this.hideErrorOnFocusOut)
@@ -444,15 +571,14 @@ const EzComboBox = class {
444
571
  canShowListOptions() {
445
572
  return !this._showLoading && this._visibleOptions.length > 0;
446
573
  }
447
- openPopover() {
448
- var _a;
449
- this.isOpen = true;
450
- (_a = this._popover) === null || _a === void 0 ? void 0 : _a.show();
451
- }
452
574
  render() {
453
- var _a;
454
575
  ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
455
- return (h(Host, null, h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), class: `text-input-slot-container ${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: "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, h("ez-icon", { iconName: "chevron-down" }))), h("ez-popover-plus", { ref: elem => this._popover = elem, anchorElement: this._textInput, autoClose: true, boxWidth: 'fit-content', overlayType: 'none', onEzVisibilityChange: event => this.isOpen = event.detail }, h("ez-combo-box-list", { ref: ref => this._comboBoxList = ref, showLoading: this._showLoading, visibleOptions: this._visibleOptions, textEmptyList: this._textEmptyList, showOptionValue: this.showOptionValue, preSelection: this._preSelection, maxWidth: this._maxWidthValue, width: (_a = this._textInput) === null || _a === void 0 ? void 0 : _a.clientWidth, onOptionSelect: (opt) => this.selectOption(opt), onOptionHover: (index) => this._preSelection = index }))));
576
+ return (h(Host, null, h("ez-text-input", { "data-element-id": ElementIDUtils.getInternalIDInfo("textInput"), class: `text-input-slot-container ${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: "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, h("ez-icon", { iconName: "chevron-down" }))), h("section", { class: "list-container", ref: elem => this._listContainer = elem }, h("div", { class: "list-wrapper", ref: elem => this._listWrapper = elem }, h("ul", { class: "list-options", ref: elem => this._optionsList = elem }, !this._showLoading
577
+ && this._visibleOptions.length === 0
578
+ && h("div", { class: "message" }, h("span", { class: "message__no-result" }, this._textEmptyList)), this._showLoading
579
+ && h("div", { class: "message" }, h("div", { class: "message__loading" })), this.showOptionValue
580
+ ? h("span", { class: "item__value item__value--hidden", ref: elem => this._itemValueBasis = elem })
581
+ : undefined, this.canShowListOptions() && this._visibleOptions.map((opt, index) => this.buildItem(opt, index)))))));
456
582
  }
457
583
  get el() { return getElement(this); }
458
584
  static get watchers() { return {