@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-75065.1 → 0.0.0-bugfix-dev-KB-83282.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 +3 -15
  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-list_3.cjs.entry.js +387 -0
  15. package/dist/cjs/ez-combo-box.cjs.entry.js +59 -185
  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 +59 -1
  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-multi-selection-list.cjs.entry.js +186 -0
  33. package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
  34. package/dist/cjs/{ez-multi-selection-list_2.cjs.entry.js → ez-popover-core_2.cjs.entry.js} +116 -197
  35. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
  39. package/dist/cjs/ez-search.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  41. package/dist/cjs/ez-split-button.cjs.entry.js +1 -1
  42. package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
  43. package/dist/cjs/ez-split-panel.cjs.entry.js +1 -1
  44. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  46. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  47. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  48. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-tooltip.cjs.entry.js +1 -1
  50. package/dist/cjs/ez-tree.cjs.entry.js +1 -1
  51. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  52. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  53. package/dist/cjs/ezui.cjs.js +2 -2
  54. package/dist/cjs/filter-column.cjs.entry.js +1 -1
  55. package/dist/cjs/{index-9e5554cb.js → index-a7b0c73d.js} +8 -7
  56. package/dist/cjs/loader.cjs.js +2 -2
  57. package/dist/collection/collection-manifest.json +2 -0
  58. package/dist/collection/components/ez-badge/ez-badge.css +1 -12
  59. package/dist/collection/components/ez-badge/ez-badge.js +1 -31
  60. package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.css +205 -0
  61. package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.js +426 -0
  62. package/dist/collection/components/ez-combo-box/ez-combo-box.css +0 -250
  63. package/dist/collection/components/ez-combo-box/ez-combo-box.js +61 -194
  64. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +3 -0
  65. package/dist/collection/components/ez-grid/ez-grid.js +56 -1
  66. package/dist/collection/components/ez-popover-plus/ez-popover-plus.css +0 -64
  67. package/dist/collection/components/ez-popover-plus/ez-popover-plus.js +47 -127
  68. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.css +67 -0
  69. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +468 -0
  70. package/dist/custom-elements/index.d.ts +12 -0
  71. package/dist/custom-elements/index.js +394 -218
  72. package/dist/esm/ez-actions-button.entry.js +1 -1
  73. package/dist/esm/ez-alert-list.entry.js +1 -1
  74. package/dist/esm/ez-alert.entry.js +1 -1
  75. package/dist/esm/ez-application.entry.js +1 -1
  76. package/dist/esm/ez-badge.entry.js +3 -15
  77. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  78. package/dist/esm/ez-button.entry.js +1 -1
  79. package/dist/esm/ez-calendar.entry.js +1 -1
  80. package/dist/esm/ez-card-item_2.entry.js +1 -1
  81. package/dist/esm/ez-chart.entry.js +1 -1
  82. package/dist/esm/ez-check.entry.js +1 -1
  83. package/dist/esm/ez-chip.entry.js +1 -1
  84. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  85. package/dist/esm/ez-combo-box-list_3.entry.js +381 -0
  86. package/dist/esm/ez-combo-box.entry.js +60 -186
  87. package/dist/esm/ez-date-input.entry.js +1 -1
  88. package/dist/esm/ez-date-time-input.entry.js +1 -1
  89. package/dist/esm/ez-dialog.entry.js +1 -1
  90. package/dist/esm/ez-double-list.entry.js +1 -1
  91. package/dist/esm/ez-dropdown_2.entry.js +1 -1
  92. package/dist/esm/ez-file-item.entry.js +1 -1
  93. package/dist/esm/ez-filter-input.entry.js +1 -1
  94. package/dist/esm/ez-form-view.entry.js +1 -1
  95. package/dist/esm/ez-form.entry.js +1 -1
  96. package/dist/esm/ez-grid.entry.js +60 -2
  97. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  98. package/dist/esm/ez-icon.entry.js +1 -1
  99. package/dist/esm/ez-list.entry.js +1 -1
  100. package/dist/esm/ez-loading-bar.entry.js +1 -1
  101. package/dist/esm/ez-modal-container.entry.js +1 -1
  102. package/dist/esm/ez-modal.entry.js +1 -1
  103. package/dist/esm/ez-multi-selection-list.entry.js +182 -0
  104. package/dist/esm/ez-number-input.entry.js +1 -1
  105. package/dist/esm/{ez-multi-selection-list_2.entry.js → ez-popover-core_2.entry.js} +116 -197
  106. package/dist/esm/ez-popover.entry.js +1 -1
  107. package/dist/esm/ez-popup.entry.js +1 -1
  108. package/dist/esm/ez-radio-button.entry.js +1 -1
  109. package/dist/esm/ez-scroller_2.entry.js +1 -1
  110. package/dist/esm/ez-search.entry.js +1 -1
  111. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  112. package/dist/esm/ez-split-button.entry.js +1 -1
  113. package/dist/esm/ez-split-item.entry.js +1 -1
  114. package/dist/esm/ez-split-panel.entry.js +1 -1
  115. package/dist/esm/ez-tabselector.entry.js +1 -1
  116. package/dist/esm/ez-text-area.entry.js +1 -1
  117. package/dist/esm/ez-text-input.entry.js +1 -1
  118. package/dist/esm/ez-time-input.entry.js +1 -1
  119. package/dist/esm/ez-toast.entry.js +1 -1
  120. package/dist/esm/ez-tooltip.entry.js +1 -1
  121. package/dist/esm/ez-tree.entry.js +1 -1
  122. package/dist/esm/ez-upload.entry.js +1 -1
  123. package/dist/esm/ez-view-stack.entry.js +1 -1
  124. package/dist/esm/ezui.js +3 -3
  125. package/dist/esm/filter-column.entry.js +1 -1
  126. package/dist/esm/{index-5a720e56.js → index-baa5e267.js} +9 -7
  127. package/dist/esm/loader.js +3 -3
  128. package/dist/ezui/ezui.esm.js +1 -1
  129. package/dist/ezui/{p-e6b38ade.entry.js → p-0306dff7.entry.js} +1 -1
  130. package/dist/ezui/{p-91ccae0c.entry.js → p-09de35a2.entry.js} +1 -1
  131. package/dist/ezui/{p-88c615f0.entry.js → p-0fa52b0f.entry.js} +1 -1
  132. package/dist/ezui/{p-92fbaf2b.entry.js → p-0faf71c5.entry.js} +1 -1
  133. package/dist/ezui/{p-b2f6bc0a.entry.js → p-17be134a.entry.js} +1 -1
  134. package/dist/ezui/{p-c96fbbef.entry.js → p-17de16e5.entry.js} +1 -1
  135. package/dist/ezui/{p-24b42f3d.entry.js → p-17eabf46.entry.js} +1 -1
  136. package/dist/ezui/{p-3885e66e.entry.js → p-1ad6c61b.entry.js} +1 -1
  137. package/dist/ezui/{p-81461d2f.entry.js → p-1e7a8633.entry.js} +1 -1
  138. package/dist/ezui/{p-6b51c9cc.entry.js → p-1f50fa05.entry.js} +1 -1
  139. package/dist/ezui/{p-cf33bc48.entry.js → p-20c024f7.entry.js} +1 -1
  140. package/dist/ezui/{p-e4c7eb39.js → p-23a36bb6.js} +2 -2
  141. package/dist/ezui/{p-6d31c43c.entry.js → p-2bb2a0c4.entry.js} +1 -1
  142. package/dist/ezui/{p-ca8936df.entry.js → p-2f45506d.entry.js} +1 -1
  143. package/dist/ezui/{p-9fc250d4.entry.js → p-3195a7a7.entry.js} +1 -1
  144. package/dist/ezui/{p-23dab72f.entry.js → p-31b71e50.entry.js} +1 -1
  145. package/dist/ezui/{p-b22889ea.entry.js → p-3429080c.entry.js} +1 -1
  146. package/dist/ezui/{p-0378416a.entry.js → p-44caad9a.entry.js} +1 -1
  147. package/dist/ezui/{p-a3319796.entry.js → p-53116373.entry.js} +46 -46
  148. package/dist/ezui/{p-7567ccdd.entry.js → p-555c9018.entry.js} +1 -1
  149. package/dist/ezui/{p-3791d9c8.entry.js → p-556468d9.entry.js} +1 -1
  150. package/dist/ezui/{p-9066b0b0.entry.js → p-56fe5341.entry.js} +1 -1
  151. package/dist/ezui/{p-cf3b60fd.entry.js → p-58783dcf.entry.js} +1 -1
  152. package/dist/ezui/{p-044d46d5.entry.js → p-5b205c80.entry.js} +1 -1
  153. package/dist/ezui/{p-6fc26622.entry.js → p-5ed81457.entry.js} +1 -1
  154. package/dist/ezui/p-650e4b6d.entry.js +1 -0
  155. package/dist/ezui/{p-03b0ed5a.entry.js → p-65f471bc.entry.js} +1 -1
  156. package/dist/ezui/{p-6d8b3298.entry.js → p-6cdd3e0a.entry.js} +1 -1
  157. package/dist/ezui/{p-fc194825.entry.js → p-6e429cff.entry.js} +1 -1
  158. package/dist/ezui/{p-11bfeca3.entry.js → p-77a4bd35.entry.js} +1 -1
  159. package/dist/ezui/p-7bd15498.entry.js +1 -0
  160. package/dist/ezui/{p-2069c78a.entry.js → p-7e677b7b.entry.js} +1 -1
  161. package/dist/ezui/{p-e18d9e6a.entry.js → p-7fdd479f.entry.js} +1 -1
  162. package/dist/ezui/{p-82fa4b09.entry.js → p-8df1ca33.entry.js} +1 -1
  163. package/dist/ezui/{p-a921e3e7.entry.js → p-990b4318.entry.js} +1 -1
  164. package/dist/ezui/{p-c2b20f78.entry.js → p-9f5fa3f9.entry.js} +1 -1
  165. package/dist/ezui/{p-0cfbbe82.entry.js → p-a4cee65d.entry.js} +1 -1
  166. package/dist/ezui/{p-dfca5946.entry.js → p-a80b1287.entry.js} +1 -1
  167. package/dist/ezui/{p-f30e0590.entry.js → p-b26f6c5b.entry.js} +1 -1
  168. package/dist/ezui/p-bc2f844e.entry.js +1 -0
  169. package/dist/ezui/{p-92748142.entry.js → p-c0d9c4f8.entry.js} +1 -1
  170. package/dist/ezui/{p-4818b8ce.entry.js → p-c1527804.entry.js} +1 -1
  171. package/dist/ezui/p-c297aa52.entry.js +1 -0
  172. package/dist/ezui/{p-b9282c79.entry.js → p-cb1535f7.entry.js} +1 -1
  173. package/dist/ezui/{p-f4da7e1e.entry.js → p-cf87aacb.entry.js} +1 -1
  174. package/dist/ezui/{p-5010315a.entry.js → p-d9548bdf.entry.js} +1 -1
  175. package/dist/ezui/{p-708b196e.entry.js → p-da1b4a38.entry.js} +1 -1
  176. package/dist/ezui/p-dc73e1fe.entry.js +1 -0
  177. package/dist/ezui/{p-bef7daac.entry.js → p-e347df9c.entry.js} +1 -1
  178. package/dist/ezui/{p-9e95bfeb.entry.js → p-e6a9041d.entry.js} +1 -1
  179. package/dist/ezui/{p-68b2e579.entry.js → p-ea54d056.entry.js} +1 -1
  180. package/dist/ezui/p-f5931caa.entry.js +1 -0
  181. package/dist/ezui/{p-44b39e81.entry.js → p-fa6732f2.entry.js} +1 -1
  182. package/dist/ezui/{p-e3f8660b.entry.js → p-fd0a19d6.entry.js} +1 -1
  183. package/dist/types/components/ez-badge/ez-badge.d.ts +0 -5
  184. package/dist/types/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.d.ts +104 -0
  185. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +7 -16
  186. package/dist/types/components/ez-grid/ez-grid.d.ts +5 -0
  187. package/dist/types/components/ez-popover-plus/ez-popover-plus.d.ts +6 -19
  188. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +81 -0
  189. package/dist/types/components.d.ts +218 -11
  190. package/package.json +1 -1
  191. package/react/components.d.ts +2 -0
  192. package/react/components.js +2 -0
  193. package/react/components.js.map +1 -1
  194. package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +0 -236
  195. package/dist/esm/ez-custom-form-input_2.entry.js +0 -231
  196. package/dist/ezui/p-000159dc.entry.js +0 -1
  197. package/dist/ezui/p-3af64edd.entry.js +0 -1
  198. package/dist/ezui/p-6ec40dec.entry.js +0 -1
  199. package/dist/ezui/p-cba34702.entry.js +0 -1
  200. package/dist/ezui/p-fcc78b7f.entry.js +0 -1
@@ -0,0 +1,182 @@
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host } from './index-baa5e267.js';
2
+ import { ArrayUtils } from '@sankhyalabs/core';
3
+
4
+ const ezMultiSelectionListCss = ".sc-ez-multi-selection-list-h{--ez-check--outter-gap:0px;--ez-multi-selection-default-height:322px;display:block;width:304px;height:var(--ez-multi-selection-default-height);min-height:fit-content;max-height:calc(100vh - 350px)}.multi-selection__input.sc-ez-multi-selection-list{margin-bottom:var(--space--2xs, 8px)}.multi-selection__content-options.sc-ez-multi-selection-list{position:relative;left:-4px}.multi-selection__select-all.sc-ez-multi-selection-list{height:var(--space--xl);margin:0 var(--space--small, 6px)}.multi-selection__list.sc-ez-multi-selection-list{max-height:calc(100vh - 435px);overflow-y:auto;overflow-x:clip}.multi-selection__list.sc-ez-multi-selection-list::-webkit-scrollbar{width:var(--space--small);min-width:var(--space--small);max-width:var(--space--small)}";
5
+
6
+ var ViewScenarios;
7
+ (function (ViewScenarios) {
8
+ ViewScenarios["DATASOURCE_RESULTS"] = "DATASOURCE_RESULTS";
9
+ ViewScenarios["DATASOURCE_RESULTS_EMPTY"] = "DATASOURCE_RESULTS_EMPTY";
10
+ ViewScenarios["DATASOURCE_INIT"] = "DATASOURCE_INIT";
11
+ ViewScenarios["OPTIONS_EMPTY"] = "OPTIONS_EMPTY";
12
+ ViewScenarios["OPTIONS"] = "OPTIONS";
13
+ })(ViewScenarios || (ViewScenarios = {}));
14
+ const EzMuiltiSelectionList = class {
15
+ constructor(hostRef) {
16
+ registerInstance(this, hostRef);
17
+ this.changeFilteredOptions = createEvent(this, "changeFilteredOptions", 7);
18
+ this.columnName = undefined;
19
+ this.dataSource = undefined;
20
+ this.useOptions = false;
21
+ this.options = undefined;
22
+ this.isTextSearch = false;
23
+ this.filteredOptions = undefined;
24
+ this.displayOptions = undefined;
25
+ this.viewScenario = undefined;
26
+ this.displayOptionToCheckAllItems = true;
27
+ }
28
+ async clearFilteredOptions() {
29
+ this.setInitialScenario();
30
+ this.filteredOptions = [];
31
+ if (this.searchInput) {
32
+ this.searchInput.value = '';
33
+ }
34
+ if (this.filterInput) {
35
+ this.filterInput.value = '';
36
+ }
37
+ }
38
+ onChangeUseOptions() {
39
+ this.setInitialScenario();
40
+ }
41
+ onChangeOptions() {
42
+ if (this.options) {
43
+ this.filteredOptions = this.ordenationByCheckStateAndAlphabetically(this.options);
44
+ }
45
+ this.checkInput && this.changeCheckAllValeuFromFilteredOptions();
46
+ this.setInitialScenario();
47
+ }
48
+ onChangeFilteredOptions(optionsListUpdated) {
49
+ this.displayOptions = this.filteredOptions;
50
+ this.displayOptionToCheckAllItems = this.filteredOptions.length > 1;
51
+ this.checkInput && this.changeCheckAllValeuFromFilteredOptions();
52
+ this.changeFilteredOptions.emit(optionsListUpdated);
53
+ }
54
+ componentDidRender() {
55
+ this.changeCheckAllValeuFromFilteredOptions();
56
+ }
57
+ ordenationByCheckStateAndAlphabetically(filteredOptions) {
58
+ const listWithSelectChecked = [];
59
+ const listWithNotSelectChecked = [];
60
+ let emptyElement;
61
+ filteredOptions.forEach(item => {
62
+ if (item.value == undefined || item.label === "") {
63
+ emptyElement = Object.assign(Object.assign({}, item), { label: "(Vazio)" });
64
+ }
65
+ else {
66
+ (item.check ? listWithSelectChecked.push(item) : listWithNotSelectChecked.push(item));
67
+ }
68
+ });
69
+ return (emptyElement == undefined ? [] : [emptyElement])
70
+ .concat(this.dataSource == undefined ? ArrayUtils.sortAlphabetically(listWithSelectChecked) : this.dataSource.sortItems(this.columnName, listWithSelectChecked))
71
+ .concat(this.dataSource == undefined ? ArrayUtils.sortAlphabetically(listWithNotSelectChecked) : this.dataSource.sortItems(this.columnName, listWithNotSelectChecked));
72
+ }
73
+ changeCheckAllValeuFromFilteredOptions() {
74
+ var _a, _b, _c, _d;
75
+ const selectAll = (_a = this.filteredOptions) === null || _a === void 0 ? void 0 : _a.every(item => item.check === true);
76
+ const notSelectAll = (_b = this.filteredOptions) === null || _b === void 0 ? void 0 : _b.every(item => item.check === false);
77
+ const selectIndeterminated = ((_c = this.filteredOptions) === null || _c === void 0 ? void 0 : _c.some(item => item.check === false)) && ((_d = this.filteredOptions) === null || _d === void 0 ? void 0 : _d.some(item => item.check === true)) && (!selectAll || !notSelectAll);
78
+ if (this.checkInput && selectAll) {
79
+ this.checkInput.indeterminate = false;
80
+ this.checkInput.value = true;
81
+ return;
82
+ }
83
+ if (this.checkInput && selectIndeterminated) {
84
+ this.checkInput.indeterminate = true;
85
+ this.checkInput.value = false;
86
+ return;
87
+ }
88
+ if (this.checkInput && notSelectAll) {
89
+ this.checkInput.indeterminate = false;
90
+ this.checkInput.value = false;
91
+ return;
92
+ }
93
+ }
94
+ setInitialScenario() {
95
+ if (this.useOptions) {
96
+ this.viewScenario = ViewScenarios.OPTIONS;
97
+ this.changeCheckAllValeuFromFilteredOptions();
98
+ return;
99
+ }
100
+ this.viewScenario = this.options && this.options.length > 0 ? ViewScenarios.DATASOURCE_RESULTS : ViewScenarios.DATASOURCE_INIT;
101
+ }
102
+ async searchWithDataSource(searchArgument, fieldName) {
103
+ const { argument, mode } = searchArgument;
104
+ if (mode !== 'PRELOAD' && fieldName) {
105
+ return this.dataSource.fetchData(argument, fieldName);
106
+ }
107
+ }
108
+ handleSearchOnDataSource(event) {
109
+ var _a;
110
+ const optionsToSort = (_a = this.filteredOptions) !== null && _a !== void 0 ? _a : [];
111
+ if (event.detail && !optionsToSort.some(item => item.value == event.detail.value)) {
112
+ this.filteredOptions = this.ordenationByCheckStateAndAlphabetically([...optionsToSort, event.detail]);
113
+ }
114
+ this.viewScenario = ViewScenarios.DATASOURCE_RESULTS;
115
+ this.searchInput.value = "";
116
+ }
117
+ handleRemoveItemFromOptions(item) {
118
+ this.filteredOptions = this.ordenationByCheckStateAndAlphabetically(this.filteredOptions.filter(i => i.value !== item.value));
119
+ if (this.filteredOptions.length === 0) {
120
+ this.viewScenario = ViewScenarios.DATASOURCE_INIT;
121
+ }
122
+ if (this.searchInput) {
123
+ this.searchInput.value = '';
124
+ }
125
+ }
126
+ handleSearchOnOption(event) {
127
+ if (event.detail) {
128
+ this.displayOptions = ArrayUtils.applyStringFilter(event.detail, this.filteredOptions, true);
129
+ this.viewScenario = this.displayOptions.length === 0 ? ViewScenarios.OPTIONS_EMPTY : ViewScenarios.OPTIONS;
130
+ return;
131
+ }
132
+ this.displayOptions = this.filteredOptions;
133
+ this.viewScenario = ViewScenarios.OPTIONS;
134
+ }
135
+ handleChangeSelectAllItems(event) {
136
+ this.filteredOptions = this.ordenationByCheckStateAndAlphabetically([
137
+ ...this.filteredOptions.map(item => {
138
+ item.check = !!event.detail;
139
+ return item;
140
+ }),
141
+ ]);
142
+ }
143
+ handleChangeSelectedItem(event) {
144
+ const { detail: itemCheckSelected } = event;
145
+ const itemSelected = this.filteredOptions.find(item => item.label === itemCheckSelected.label);
146
+ itemSelected.check = itemCheckSelected.check;
147
+ }
148
+ buildViewList(hasDelete) {
149
+ return (h(Fragment, null, this.displayOptionToCheckAllItems && (h("ez-check", { ref: (element) => (this.checkInput = element), label: "Selecionar todos", class: "multi-selection__select-all", onEzChange: this.handleChangeSelectAllItems.bind(this) })), h("ez-list", { class: "multi-selection__list", dataSource: this.displayOptions, listMode: "check", hoverFeedback: true, onEzCheckChange: this.handleChangeSelectedItem.bind(this), itemSlotBuilder: hasDelete ? this.buildDeleteIconSlot.bind(this) : null })));
150
+ }
151
+ buildDeleteIconSlot(item) {
152
+ return h("ez-icon", { style: { cursor: 'pointer' }, iconName: "delete", onClick: () => this.handleRemoveItemFromOptions(item) });
153
+ }
154
+ buildInitViewWithDataSource() {
155
+ return h("multi-selection-box-message", { message: "Selecione os valores a serem filtrados atrav\u00E9s do campo de busca." });
156
+ }
157
+ buildViewEmptyResults() {
158
+ return h("multi-selection-box-message", { message: "Nenhum resultado encontrado." });
159
+ }
160
+ scenarioToDisplay(view) {
161
+ const scenarios = {
162
+ [ViewScenarios.DATASOURCE_INIT]: () => this.buildInitViewWithDataSource(),
163
+ [ViewScenarios.DATASOURCE_RESULTS]: () => this.buildViewList(true),
164
+ [ViewScenarios.DATASOURCE_RESULTS_EMPTY]: () => this.buildViewEmptyResults(),
165
+ [ViewScenarios.OPTIONS_EMPTY]: () => this.buildViewEmptyResults(),
166
+ [ViewScenarios.OPTIONS]: () => this.buildViewList(false),
167
+ };
168
+ const scenarioBuilder = scenarios[view];
169
+ return scenarioBuilder ? scenarioBuilder() : undefined;
170
+ }
171
+ render() {
172
+ return (h(Host, null, h("div", { class: "multi-selection" }, this.useOptions ? (h("ez-filter-input", { ref: (element) => (this.filterInput = element), label: `Buscar..`, onEzChange: this.handleSearchOnOption.bind(this) })) : (h("ez-search", { class: "multi-selection__input", label: `Buscar...`, ref: (element) => (this.searchInput = element), suppressEmptyOption: true, showOptionValue: false, showSelectedValue: false, optionLoader: (search) => this.searchWithDataSource(search, this.columnName), onEzChange: this.handleSearchOnDataSource.bind(this), isTextSearch: this.isTextSearch })), h("ez-scroll", { class: "multi-selection__content-options" }, this.scenarioToDisplay(this.viewScenario)))));
173
+ }
174
+ static get watchers() { return {
175
+ "useOptions": ["onChangeUseOptions"],
176
+ "options": ["onChangeOptions"],
177
+ "filteredOptions": ["onChangeFilteredOptions"]
178
+ }; }
179
+ };
180
+ EzMuiltiSelectionList.style = ezMultiSelectionListCss;
181
+
182
+ export { EzMuiltiSelectionList as ez_multi_selection_list };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-baa5e267.js';
2
2
  import { NumberUtils, StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.js';
4
4
 
@@ -1,183 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, g as getElement } from './index-5a720e56.js';
2
- import { ArrayUtils } from '@sankhyalabs/core';
3
-
4
- const ezMultiSelectionListCss = ".sc-ez-multi-selection-list-h{--ez-check--outter-gap:0px;--ez-multi-selection-default-height:322px;display:block;width:304px;height:var(--ez-multi-selection-default-height);min-height:fit-content;max-height:calc(100vh - 350px)}.multi-selection__input.sc-ez-multi-selection-list{margin-bottom:var(--space--2xs, 8px)}.multi-selection__content-options.sc-ez-multi-selection-list{position:relative;left:-4px}.multi-selection__select-all.sc-ez-multi-selection-list{height:var(--space--xl);margin:0 var(--space--small, 6px)}.multi-selection__list.sc-ez-multi-selection-list{max-height:calc(100vh - 435px);overflow-y:auto;overflow-x:clip}.multi-selection__list.sc-ez-multi-selection-list::-webkit-scrollbar{width:var(--space--small);min-width:var(--space--small);max-width:var(--space--small)}";
5
-
6
- var ViewScenarios;
7
- (function (ViewScenarios) {
8
- ViewScenarios["DATASOURCE_RESULTS"] = "DATASOURCE_RESULTS";
9
- ViewScenarios["DATASOURCE_RESULTS_EMPTY"] = "DATASOURCE_RESULTS_EMPTY";
10
- ViewScenarios["DATASOURCE_INIT"] = "DATASOURCE_INIT";
11
- ViewScenarios["OPTIONS_EMPTY"] = "OPTIONS_EMPTY";
12
- ViewScenarios["OPTIONS"] = "OPTIONS";
13
- })(ViewScenarios || (ViewScenarios = {}));
14
- const EzMuiltiSelectionList = class {
15
- constructor(hostRef) {
16
- registerInstance(this, hostRef);
17
- this.changeFilteredOptions = createEvent(this, "changeFilteredOptions", 7);
18
- this.columnName = undefined;
19
- this.dataSource = undefined;
20
- this.useOptions = false;
21
- this.options = undefined;
22
- this.isTextSearch = false;
23
- this.filteredOptions = undefined;
24
- this.displayOptions = undefined;
25
- this.viewScenario = undefined;
26
- this.displayOptionToCheckAllItems = true;
27
- }
28
- async clearFilteredOptions() {
29
- this.setInitialScenario();
30
- this.filteredOptions = [];
31
- if (this.searchInput) {
32
- this.searchInput.value = '';
33
- }
34
- if (this.filterInput) {
35
- this.filterInput.value = '';
36
- }
37
- }
38
- onChangeUseOptions() {
39
- this.setInitialScenario();
40
- }
41
- onChangeOptions() {
42
- if (this.options) {
43
- this.filteredOptions = this.ordenationByCheckStateAndAlphabetically(this.options);
44
- }
45
- this.checkInput && this.changeCheckAllValeuFromFilteredOptions();
46
- this.setInitialScenario();
47
- }
48
- onChangeFilteredOptions(optionsListUpdated) {
49
- this.displayOptions = this.filteredOptions;
50
- this.displayOptionToCheckAllItems = this.filteredOptions.length > 1;
51
- this.checkInput && this.changeCheckAllValeuFromFilteredOptions();
52
- this.changeFilteredOptions.emit(optionsListUpdated);
53
- }
54
- componentDidRender() {
55
- this.changeCheckAllValeuFromFilteredOptions();
56
- }
57
- ordenationByCheckStateAndAlphabetically(filteredOptions) {
58
- const listWithSelectChecked = [];
59
- const listWithNotSelectChecked = [];
60
- let emptyElement;
61
- filteredOptions.forEach(item => {
62
- if (item.value == undefined || item.label === "") {
63
- emptyElement = Object.assign(Object.assign({}, item), { label: "(Vazio)" });
64
- }
65
- else {
66
- (item.check ? listWithSelectChecked.push(item) : listWithNotSelectChecked.push(item));
67
- }
68
- });
69
- return (emptyElement == undefined ? [] : [emptyElement])
70
- .concat(this.dataSource == undefined ? ArrayUtils.sortAlphabetically(listWithSelectChecked) : this.dataSource.sortItems(this.columnName, listWithSelectChecked))
71
- .concat(this.dataSource == undefined ? ArrayUtils.sortAlphabetically(listWithNotSelectChecked) : this.dataSource.sortItems(this.columnName, listWithNotSelectChecked));
72
- }
73
- changeCheckAllValeuFromFilteredOptions() {
74
- var _a, _b, _c, _d;
75
- const selectAll = (_a = this.filteredOptions) === null || _a === void 0 ? void 0 : _a.every(item => item.check === true);
76
- const notSelectAll = (_b = this.filteredOptions) === null || _b === void 0 ? void 0 : _b.every(item => item.check === false);
77
- const selectIndeterminated = ((_c = this.filteredOptions) === null || _c === void 0 ? void 0 : _c.some(item => item.check === false)) && ((_d = this.filteredOptions) === null || _d === void 0 ? void 0 : _d.some(item => item.check === true)) && (!selectAll || !notSelectAll);
78
- if (this.checkInput && selectAll) {
79
- this.checkInput.indeterminate = false;
80
- this.checkInput.value = true;
81
- return;
82
- }
83
- if (this.checkInput && selectIndeterminated) {
84
- this.checkInput.indeterminate = true;
85
- this.checkInput.value = false;
86
- return;
87
- }
88
- if (this.checkInput && notSelectAll) {
89
- this.checkInput.indeterminate = false;
90
- this.checkInput.value = false;
91
- return;
92
- }
93
- }
94
- setInitialScenario() {
95
- if (this.useOptions) {
96
- this.viewScenario = ViewScenarios.OPTIONS;
97
- this.changeCheckAllValeuFromFilteredOptions();
98
- return;
99
- }
100
- this.viewScenario = this.options && this.options.length > 0 ? ViewScenarios.DATASOURCE_RESULTS : ViewScenarios.DATASOURCE_INIT;
101
- }
102
- async searchWithDataSource(searchArgument, fieldName) {
103
- const { argument, mode } = searchArgument;
104
- if (mode !== 'PRELOAD' && fieldName) {
105
- return this.dataSource.fetchData(argument, fieldName);
106
- }
107
- }
108
- handleSearchOnDataSource(event) {
109
- var _a;
110
- const optionsToSort = (_a = this.filteredOptions) !== null && _a !== void 0 ? _a : [];
111
- if (event.detail && !optionsToSort.some(item => item.value == event.detail.value)) {
112
- this.filteredOptions = this.ordenationByCheckStateAndAlphabetically([...optionsToSort, event.detail]);
113
- }
114
- this.viewScenario = ViewScenarios.DATASOURCE_RESULTS;
115
- this.searchInput.value = "";
116
- }
117
- handleRemoveItemFromOptions(item) {
118
- this.filteredOptions = this.ordenationByCheckStateAndAlphabetically(this.filteredOptions.filter(i => i.value !== item.value));
119
- if (this.filteredOptions.length === 0) {
120
- this.viewScenario = ViewScenarios.DATASOURCE_INIT;
121
- }
122
- if (this.searchInput) {
123
- this.searchInput.value = '';
124
- }
125
- }
126
- handleSearchOnOption(event) {
127
- if (event.detail) {
128
- this.displayOptions = ArrayUtils.applyStringFilter(event.detail, this.filteredOptions, true);
129
- this.viewScenario = this.displayOptions.length === 0 ? ViewScenarios.OPTIONS_EMPTY : ViewScenarios.OPTIONS;
130
- return;
131
- }
132
- this.displayOptions = this.filteredOptions;
133
- this.viewScenario = ViewScenarios.OPTIONS;
134
- }
135
- handleChangeSelectAllItems(event) {
136
- this.filteredOptions = this.ordenationByCheckStateAndAlphabetically([
137
- ...this.filteredOptions.map(item => {
138
- item.check = !!event.detail;
139
- return item;
140
- }),
141
- ]);
142
- }
143
- handleChangeSelectedItem(event) {
144
- const { detail: itemCheckSelected } = event;
145
- const itemSelected = this.filteredOptions.find(item => item.label === itemCheckSelected.label);
146
- itemSelected.check = itemCheckSelected.check;
147
- }
148
- buildViewList(hasDelete) {
149
- return (h(Fragment, null, this.displayOptionToCheckAllItems && (h("ez-check", { ref: (element) => (this.checkInput = element), label: "Selecionar todos", class: "multi-selection__select-all", onEzChange: this.handleChangeSelectAllItems.bind(this) })), h("ez-list", { class: "multi-selection__list", dataSource: this.displayOptions, listMode: "check", hoverFeedback: true, onEzCheckChange: this.handleChangeSelectedItem.bind(this), itemSlotBuilder: hasDelete ? this.buildDeleteIconSlot.bind(this) : null })));
150
- }
151
- buildDeleteIconSlot(item) {
152
- return h("ez-icon", { style: { cursor: 'pointer' }, iconName: "delete", onClick: () => this.handleRemoveItemFromOptions(item) });
153
- }
154
- buildInitViewWithDataSource() {
155
- return h("multi-selection-box-message", { message: "Selecione os valores a serem filtrados atrav\u00E9s do campo de busca." });
156
- }
157
- buildViewEmptyResults() {
158
- return h("multi-selection-box-message", { message: "Nenhum resultado encontrado." });
159
- }
160
- scenarioToDisplay(view) {
161
- const scenarios = {
162
- [ViewScenarios.DATASOURCE_INIT]: () => this.buildInitViewWithDataSource(),
163
- [ViewScenarios.DATASOURCE_RESULTS]: () => this.buildViewList(true),
164
- [ViewScenarios.DATASOURCE_RESULTS_EMPTY]: () => this.buildViewEmptyResults(),
165
- [ViewScenarios.OPTIONS_EMPTY]: () => this.buildViewEmptyResults(),
166
- [ViewScenarios.OPTIONS]: () => this.buildViewList(false),
167
- };
168
- const scenarioBuilder = scenarios[view];
169
- return scenarioBuilder ? scenarioBuilder() : undefined;
170
- }
171
- render() {
172
- return (h(Host, null, h("div", { class: "multi-selection" }, this.useOptions ? (h("ez-filter-input", { ref: (element) => (this.filterInput = element), label: `Buscar..`, onEzChange: this.handleSearchOnOption.bind(this) })) : (h("ez-search", { class: "multi-selection__input", label: `Buscar...`, ref: (element) => (this.searchInput = element), suppressEmptyOption: true, showOptionValue: false, showSelectedValue: false, optionLoader: (search) => this.searchWithDataSource(search, this.columnName), onEzChange: this.handleSearchOnDataSource.bind(this), isTextSearch: this.isTextSearch })), h("ez-scroll", { class: "multi-selection__content-options" }, this.scenarioToDisplay(this.viewScenario)))));
173
- }
174
- static get watchers() { return {
175
- "useOptions": ["onChangeUseOptions"],
176
- "options": ["onChangeOptions"],
177
- "filteredOptions": ["onChangeFilteredOptions"]
178
- }; }
179
- };
180
- EzMuiltiSelectionList.style = ezMultiSelectionListCss;
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
181
2
 
182
3
  /**
183
4
  * Custom positioning reference element.
@@ -1394,9 +1215,9 @@ const computePosition = (reference, floating, options) => {
1394
1215
  });
1395
1216
  };
1396
1217
 
1397
- const ezPopoverPlusCss = ":host{--ez-popover__box--border-radius:var(--border--radius-medium, 12px);--ez-popover__box--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-popover__box--background-color:var(--background--xlight, #fff);--ez-popover__box--z-index:var(--most-visible, 4);position:relative;display:flex;user-select:none}.popover__overlay{display:none;position:fixed;padding:0;top:0px;left:0px;width:100%;height:100vh;box-sizing:border-box;z-index:var(--more-visible--2x, 3)}.popover__overlay--light{background-color:rgba(var(--rgb-background--overlay), var(--opacity--bright))}.popover__overlay--medium{background-color:rgba(var(--rgb-background--overlay), var(--opacity--soft));backdrop-filter:blur(var(--background-blur--medium))}.popover__box{display:none;position:fixed;top:0;left:0;z-index:var(--ez-popover__box--z-index);flex-direction:column;height:fit-content;background-color:var(--ez-popover__box--background-color);border-radius:var(--ez-popover__box--border-radius);box-shadow:var(--ez-popover__box--box-shadow)}.popover__box--fit-content{width:fit-content}.popover__box--full-width{width:calc(100% - 10px)}";
1218
+ const ezPopoverCoreCss = ":host{--ez-popover__box--border-radius:var(--border--radius-medium, 12px);--ez-popover__box--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-popover__box--background-color:var(--background--xlight, #fff);--ez-popover__box--z-index:var(--most-visible, 4);position:relative;display:flex;user-select:none}.popover__overlay{display:none;position:fixed;padding:0;top:0px;left:0px;width:100%;height:100vh;box-sizing:border-box;z-index:var(--more-visible--2x, 3)}.popover__overlay--light{background-color:rgba(var(--rgb-background--overlay), var(--opacity--bright))}.popover__overlay--medium{background-color:rgba(var(--rgb-background--overlay), var(--opacity--soft));backdrop-filter:blur(var(--background-blur--medium))}.popover__box{display:none;position:fixed;top:0;left:0;z-index:var(--ez-popover__box--z-index);flex-direction:column;height:fit-content;background-color:var(--ez-popover__box--background-color);border-radius:var(--ez-popover__box--border-radius);box-shadow:var(--ez-popover__box--box-shadow)}.popover__box--fit-content{width:fit-content}.popover__box--full-width{width:calc(100% - 10px)}";
1398
1219
 
1399
- const EzPopoverPlus = class {
1220
+ const EzPopoverCore = class {
1400
1221
  constructor(hostRef) {
1401
1222
  registerInstance(this, hostRef);
1402
1223
  this.ezVisibilityChange = createEvent(this, "ezVisibilityChange", 7);
@@ -1409,16 +1230,16 @@ const EzPopoverPlus = class {
1409
1230
  this.options = { horizontalGap: 0, verticalGap: 0, fromRight: false };
1410
1231
  }
1411
1232
  async observeOpened(newValue, oldValue) {
1412
- if (newValue !== oldValue) {
1413
- if (newValue) {
1414
- this.openPopover();
1415
- }
1416
- else {
1417
- this.hidePopover();
1418
- }
1419
- this.ezVisibilityChange.emit(newValue);
1233
+ if (newValue === oldValue)
1420
1234
  return;
1235
+ if (newValue) {
1236
+ this.openPopover();
1421
1237
  }
1238
+ else {
1239
+ this.hidePopover();
1240
+ }
1241
+ this.ezVisibilityChange.emit(newValue);
1242
+ return;
1422
1243
  }
1423
1244
  /**
1424
1245
  * Atualiza a posição do popover.
@@ -1512,12 +1333,14 @@ const EzPopoverPlus = class {
1512
1333
  if (!this._box) {
1513
1334
  return;
1514
1335
  }
1515
- this._box.style.display = 'flex';
1516
- this._box.style.visibility = 'hidden';
1517
- await this.updatePositionPopover();
1518
- this.openOverlay();
1519
- this.ezVisibilityChange.emit(true);
1520
- this._box.style.visibility = 'visible';
1336
+ if (this.opened) {
1337
+ this._box.style.display = 'flex';
1338
+ this._box.style.visibility = 'hidden';
1339
+ await this.updatePositionPopover();
1340
+ this.openOverlay();
1341
+ this.ezVisibilityChange.emit(true);
1342
+ this._box.style.visibility = 'visible';
1343
+ }
1521
1344
  }
1522
1345
  openOverlay() {
1523
1346
  if (!this._overlay || !this._overlayIsActive) {
@@ -1557,6 +1380,7 @@ const EzPopoverPlus = class {
1557
1380
  this._overlayIsActive = this.checkStatusOverlay();
1558
1381
  this._resizeObserver = new ResizeObserver(this.updatePositionPopover.bind(this));
1559
1382
  this._resizeObserver.observe(this._box);
1383
+ this.openPopover();
1560
1384
  }
1561
1385
  disconnectedCallback() {
1562
1386
  window.removeEventListener('scroll', this.updatePositionDebounce.bind(this), true);
@@ -1575,6 +1399,101 @@ const EzPopoverPlus = class {
1575
1399
  "opened": ["observeOpened"]
1576
1400
  }; }
1577
1401
  };
1402
+ EzPopoverCore.style = ezPopoverCoreCss;
1403
+
1404
+ const ezPopoverPlusCss = ":host{display:none}";
1405
+
1406
+ const EzPopoverPlus = class {
1407
+ constructor(hostRef) {
1408
+ registerInstance(this, hostRef);
1409
+ this.ezVisibilityChange = createEvent(this, "ezVisibilityChange", 7);
1410
+ this.autoClose = true;
1411
+ this.boxWidth = "fit-content";
1412
+ this.opened = false;
1413
+ this.overlayType = "light";
1414
+ this.anchorElement = undefined;
1415
+ this.options = { horizontalGap: 0, verticalGap: 0, fromRight: false };
1416
+ }
1417
+ listenerEzVisibilityChange({ detail }) {
1418
+ this.ezVisibilityChange.emit(detail);
1419
+ }
1420
+ async observeOpened(newValue) {
1421
+ if (newValue && !this._popOverCore) {
1422
+ this.renderPopoverCore();
1423
+ }
1424
+ this._popOverCore.opened = newValue;
1425
+ }
1426
+ /**
1427
+ * Atualiza a posição do popover.
1428
+ */
1429
+ async updatePosition(top, left) {
1430
+ var _a;
1431
+ await ((_a = this._popOverCore) === null || _a === void 0 ? void 0 : _a.updatePosition(top, left));
1432
+ }
1433
+ /**
1434
+ * Exibe o ez-popover.
1435
+ */
1436
+ async show(top, left) {
1437
+ if (!this._popOverCore) {
1438
+ this.renderPopoverCore();
1439
+ }
1440
+ await this._popOverCore.show(top, left);
1441
+ }
1442
+ /**
1443
+ * Ancora a exibição do popOver a um elemento HTML.
1444
+ */
1445
+ async showUnder(element, options) {
1446
+ if (!this._popOverCore) {
1447
+ this.renderPopoverCore();
1448
+ }
1449
+ await this._popOverCore.showUnder(element, options);
1450
+ }
1451
+ /**
1452
+ * Oculta o ez-popover.
1453
+ */
1454
+ async hide() {
1455
+ var _a;
1456
+ await ((_a = this._popOverCore) === null || _a === void 0 ? void 0 : _a.hide());
1457
+ }
1458
+ /**
1459
+ * Altera as opções.
1460
+ */
1461
+ async setOptions(options) {
1462
+ var _a;
1463
+ await ((_a = this._popOverCore) === null || _a === void 0 ? void 0 : _a.setOptions(options));
1464
+ }
1465
+ /**
1466
+ * Altera o elemento de ancoragem.
1467
+ */
1468
+ async setAnchorElement(anchor) {
1469
+ var _a;
1470
+ await ((_a = this._popOverCore) === null || _a === void 0 ? void 0 : _a.setAnchorElement(anchor));
1471
+ }
1472
+ renderPopoverCore() {
1473
+ this._popOverCore = document.createElement('ez-popover-core');
1474
+ this._popOverCore.opened = this.opened;
1475
+ this._popOverCore.anchorElement = this.anchorElement;
1476
+ this._popOverCore.autoClose = this.autoClose;
1477
+ this._popOverCore.boxWidth = this.boxWidth;
1478
+ this._popOverCore.overlayType = this.overlayType;
1479
+ this._popOverCore.options = this.options;
1480
+ const firstChild = this._host.children.item(0);
1481
+ if (firstChild) {
1482
+ this._popOverCore.appendChild(firstChild);
1483
+ }
1484
+ else {
1485
+ console.warn('O slot do popover está vazio. Adicione conteúdo ao slot para exibição correta.');
1486
+ }
1487
+ document.body.appendChild(this._popOverCore);
1488
+ }
1489
+ render() {
1490
+ return (h(Host, null, h("slot", null)));
1491
+ }
1492
+ get _host() { return getElement(this); }
1493
+ static get watchers() { return {
1494
+ "opened": ["observeOpened"]
1495
+ }; }
1496
+ };
1578
1497
  EzPopoverPlus.style = ezPopoverPlusCss;
1579
1498
 
1580
- export { EzMuiltiSelectionList as ez_multi_selection_list, EzPopoverPlus as ez_popover_plus };
1499
+ export { EzPopoverCore as ez_popover_core, EzPopoverPlus as ez_popover_plus };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
2
2
  import { FloatingManager } from '@sankhyalabs/core';
3
3
 
4
4
  const ezPopoverCss = ":host{--ez-popover__box--border-radius:var(--border--radius-medium, 12px);--ez-popover__box--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-popover__box--background-color:var(--background--xlight, #fff);--ez-popover__box--z-index:var(--most-visible, 3);position:relative;display:flex;user-select:none}.popover__box{z-index:var(--ez-popover__box--z-index);display:flex;flex-direction:column;height:fit-content;background-color:var(--ez-popover__box--background-color);border-radius:var(--ez-popover__box--border-radius);box-shadow:var(--ez-popover__box--box-shadow)}.popover__box--fit-content{width:fit-content}.popover__box--full-width{width:100%}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, g as getElement } from './index-baa5e267.js';
2
2
  import { KeyboardManager, FloatingManager } from '@sankhyalabs/core';
3
3
 
4
4
  const ezPopupCss = ":host{display:flex;width:auto;--ez-popup-z-index:var(--elevation--24, 24);--ez-popup__container--color:var(--title--primary, #2b3a54);--ez-popup__container--padding:var(--space--md, 20px);--ez-popup__header--padding-bottom:var(--space--medium, 12px);--ez-popup__title--font-family:var(--font-pattern, \"Roboto\");--ez-popup__title--font-size:var(--title--large, 20px);--ez-popup__title--color:var(--title--primary, #2b3a54);--ez-popup__title--font-weight:var(--text-weight--large, 600);--ez-popup__btn__close--icon-color:var(--title--primary, #2b3a54);--ez-popup__btn__close--icon:url('data:image/svg+xml;utf8,<svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 8.2421753,6.9944578 13.743748,1.4930784 C 13.907781,1.3290628 14,1.1065946 14,0.87462511 14,0.64266712 13.907782,0.42019873 13.743748,0.25617155 13.579712,0.09215597 13.35727,6.48e-8 13.125266,6.48e-8 12.89338,6.48e-8 12.670821,0.09215634 12.506787,0.25617155 L 7.005215,5.7575508 1.5035972,0.25617155 C 1.3395631,0.09215597 1.1170968,6.48e-8 0.88511716,6.48e-8 0.65314917,6.48e-8 0.4306712,0.09215597 0.26663695,0.25617155 0.10260271,0.42019873 0.01045441,0.64266712 0.01045441,0.87462511 c 0,0.23196949 0.0921483,0.45443769 0.25618254,0.61845329 L 5.7682546,6.9944578 0.26663695,12.497027 c -0.0834745,0.08067 -0.15003245,0.1772 -0.19581514,0.283871 C 0.02505077,12.887561 9.831648e-4,13.002399 2.950369e-5,13.118395 -9.2415746e-4,13.234504 0.02125019,13.349689 0.06527245,13.457057 c 0.04401053,0.107479 0.10898307,0.205064 0.1911168,0.287137 0.0821454,0.08208 0.17979645,0.146888 0.28727561,0.190839 0.10747906,0.04395 0.22262954,0.06598 0.33872417,0.06493 0.116095,-10e-4 0.23082547,-0.0253 0.33747687,-0.07112 0.1066637,-0.04593 0.2031133,-0.112615 0.2837313,-0.196086 L 7.005215,8.2313646 12.506787,13.732768 c 0.164034,0.164027 0.386593,0.256125 0.618479,0.256125 0.232004,0 0.454446,-0.09209 0.618482,-0.256125 C 13.907781,13.568741 14,13.346308 14,13.114315 14,12.882323 13.90779,12.659888 13.743748,12.495861 Z\"/></svg>')}.overlay{position:fixed;display:flex;top:0px;z-index:var(--ez-popup-z-index, 24);left:0px;width:100%;align-items:center;justify-content:center;box-sizing:border-box;height:100vh;backdrop-filter:blur(4px);background:rgba(0, 4, 12, 0.4)}.popup{display:flex;height:100%;align-items:center;justify-content:center;box-sizing:border-box}.popup__container{width:100%;max-height:90%;height:100%;display:flex;flex-wrap:wrap;overflow:hidden;outline:none;background:#FFFF;color:var(--ez-popup__container--color);border-radius:12px;box-shadow:0px 0px 16px rgba(0, 38, 111, 0.122);box-sizing:border-box;padding:var(--ez-popup__container--padding)}.popup__container--auto{height:auto}.popup__overflow-y--auto{overflow-y:auto}.popup__content{box-sizing:border-box;height:100%;width:100%}.popup__expandable-content{box-sizing:border-box;width:100%;height:calc(100% - 44px)}.popup__header{width:100%;display:flex}.popup__header--padding{padding-bottom:var(--ez-popup__header--padding-bottom)}.popup__title{display:flex;margin:0;width:100%;font-family:var(--ez-popup__title--font-family);font-size:var(--ez-popup__title--font-size);font-weight:var(--ez-popup__title--font-weight);color:var(--ez-popup__title--color);line-height:1.3}.btn-close{justify-content:flex-end;align-self:flex-start;align-items:flex-start;display:flex;outline:none;border:none;background-color:unset;cursor:pointer}.btn-close::after{content:'';display:flex;background-color:var(--ez-popup__btn__close--icon-color);width:14px;height:14px;-webkit-mask-image:var(--ez-popup__btn__close--icon);mask-image:var(--ez-popup__btn__close--icon)}.btn-close--solo{width:100%}.row{width:100%;display:flex;flex-wrap:wrap}.col{display:flex;flex-wrap:wrap;align-self:flex-start;box-sizing:border-box}.col--stretch{align-self:stretch}.col--undefined{width:unset}.col--nowrap{flex-wrap:nowrap}.ez-popup__size-limit--x-small{min-width:350px;max-width:560px}@media screen and (min-width: 320px){.col--sd-1{width:8.33333%}.col--sd-2{width:16.66667%}.col--sd-3{width:25%}.col--sd-4{width:33.33333%}.col--sd-5{width:41.66667%}.col--sd-6{width:50%}.col--sd-7{width:58.33333%}.col--sd-8{width:66.66667%}.col--sd-9{width:75%}.col--sd-10{width:83.33333%}.col--sd-11{width:91.66667%}.col--sd-12{width:100%}}@media screen and (min-width: 480px){.col--pn-1{width:8.33333%}.col--pn-2{width:16.66667%}.col--pn-3{width:25%}.col--pn-4{width:33.33333%}.col--pn-5{width:41.66667%}.col--pn-6{width:50%}.col--pn-7{width:58.33333%}.col--pn-8{width:66.66667%}.col--pn-9{width:75%}.col--pn-10{width:83.33333%}.col--pn-11{width:91.66667%}.col--pn-12{width:100%}}@media screen and (min-width: 768px){.col--tb-1{width:8.33333%}.col--tb-2{width:16.66667%}.col--tb-3{width:25%}.col--tb-4{width:33.33333%}.col--tb-5{width:41.66667%}.col--tb-6{width:50%}.col--tb-7{width:58.33333%}.col--tb-8{width:66.66667%}.col--tb-9{width:75%}.col--tb-10{width:83.33333%}.col--tb-11{width:91.66667%}.col--tb-12{width:100%}}@media screen and (min-width: 992px){.col--md-1{width:8.33333%}.col--md-2{width:16.66667%}.col--md-3{width:25%}.col--md-4{width:33.33333%}.col--md-5{width:41.66667%}.col--md-6{width:50%}.col--md-7{width:58.33333%}.col--md-8{width:66.66667%}.col--md-9{width:75%}.col--md-10{width:83.33333%}.col--md-11{width:91.66667%}.col--md-12{width:100%}}@media screen and (min-width: 1200px){.col--ld-1{width:8.33333%}.col--ld-2{width:16.66667%}.col--ld-3{width:25%}.col--ld-4{width:33.33333%}.col--ld-5{width:41.66667%}.col--ld-6{width:50%}.col--ld-7{width:58.33333%}.col--ld-8{width:66.66667%}.col--ld-9{width:75%}.col--ld-10{width:83.33333%}.col--ld-11{width:91.66667%}.col--ld-12{width:100%}}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezRadioButtonCss = ":host{--ez-radio-button--font-family:var(--font-pattern, Arial);--ez-radio-button--font-size:var(--text--medium, 14px);--ez-radio-button--font-weight:var(--text-weight--large);--ez-radio-button--font-color:var(--title--primary, #2B3A54);--ez-radio-button--padding-vertical:var(--space--medium, 12px);--ez-radio-button--padding-horizontal:var(--space--small, 6px);--ez-radio-button__form-label--font-family:var(--font-pattern, Arial);--ez-radio-button__form-label--font-weight:var(--text-weight--medium, 400);--ez-radio-button__form-label--title-primary:var(--title--primary, #2B3A54);--ez-radio-button__form-label--font-size:var(--text--medium, 14px);--ez-radio-button__form-label--padding-horizontal:var(--space--medium, 12px);--ez-radio-button__form-radio--border-color:var(--title--primary, #2B3A54);--ez-radio-button__form-radio--checked--color:var(--color--primary, #008561);--ez-radio-button__form-radio--disabled--border-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--disabled--background-color:var(--background--medium, #f0f3f7);--ez-radio-button__form-radio--disabled--color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--disabled--before--background-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--focus--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--box-shadow-color:var(--background--strong, #e4eaf1);--ez-radio-button__form-radio--checked--focus--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--focus--box-shadow-color:var(--color--primary-300, #e2f4ef);--ez-radio-button__form-radio--checked--hover--background-color:var(--color--inverted, #fff);--ez-radio-button__form-radio--checked--hover--box-shadow-color:#daece7;--ez-radio-button__form-radio--hover--box-shadow-color:var(--color--strokes, #dce0e8);--ez-radio-button__form-radio--checked--disabled--hover--background-color:var(--background--medium, #f0f3f7);display:flex;width:100%;flex-direction:column;align-items:flex-start;box-sizing:border-box}.form{padding:var(--ez-radio-button--padding-vertical) var(--ez-radio-button--padding-horizontal);gap:var(--ez-radio-button__form-label--padding-horizontal)}.form--vertical{display:flex;flex-direction:column}.form--horizontal{display:flex;flex-direction:row}.form__group{display:grid;grid-template-columns:20px auto;align-items:center}.label{font-family:var(--ez-radio-button--font-family);font-size:var(--ez-radio-button--font-size);font-weight:var(--ez-radio-button--font-weight);color:var(--ez-radio-button--font-color)}.form__label{cursor:pointer;font-weight:var(--ez-radio-button__form-label--font-weight);color:var(--ez-radio-button__form-label--title-primary);font-family:var(--ez-radio-button__form-label--font-family);font-size:var(--ez-radio-button__form-label--font-size);padding-left:var(--ez-radio-button__form-label--padding-horizontal);padding-right:var(--ez-radio-button__form-label--padding-horizontal)}.form__radio{cursor:pointer;appearance:none;outline:none;position:relative;display:flex;align-items:center;justify-content:center;margin:0;padding:0;width:20px;height:20px;border-radius:50%;border:2px solid var(--ez-radio-button__form-radio--border-color)}.form__radio::before{content:'';display:block;position:absolute;opacity:0;transition:all 300ms ease-in-out;height:100%;width:100%;border-radius:50%;transform:scale(0.5);background:var(--ez-radio-button__form-radio--checked--color)}.form__radio:checked:before{opacity:1}.form__radio:checked{border:2px solid var(--ez-radio-button__form-radio--checked--color)}.form__radio:disabled{cursor:default;border:2px solid var(--ez-radio-button__form-radio--disabled--border-color);background-color:var(--ez-radio-button__form-radio--disabled--background-color)}.form__radio:disabled:hover{box-shadow:inherit}input[type=radio]:disabled~label{cursor:default;color:var(--ez-radio-button__form-radio--disabled--color)}.form__radio:disabled:before{background:var(--ez-radio-button__form-radio--disabled--before--background-color)}.form__radio:focus{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--focus--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--box-shadow-color)}.form__radio:checked:focus{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--checked--focus--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--focus--box-shadow-color)}.form__radio:checked:hover{transition:0.25s linear;background-color:var(--ez-radio-button__form-radio--checked--hover--background-color);box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--checked--hover--box-shadow-color)}.form__radio:hover{transition:0.25s linear;box-shadow:0px 0px 0px 6px var(--ez-radio-button__form-radio--hover--box-shadow-color)}.form__radio:checked:disabled:hover{box-shadow:none;background-color:var(--ez-radio-button__form-radio--checked--disabled--hover--background-color)}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, c as createEvent, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, h, H as Host, c as createEvent, g as getElement } from './index-baa5e267.js';
2
2
  import { JSUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { E as EzScrollDirection } from './EzScrollDirection-2df26c93.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
2
2
  import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.js';
3
3
  import { ObjectUtils, StringUtils, FloatingManager, ElementIDUtils } from '@sankhyalabs/core';
4
4
  import { A as ApplicationUtils } from './ApplicationUtils-eaf91331.js';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { E as EzScrollDirection } from './EzScrollDirection-2df26c93.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-baa5e267.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezSplitButtonCss = ":host{--ez-split-button--min-width:24;--ez-split-button--width:'auto';--ez-split-button__medium--height:32px;--ez-split-button__large--height:42px;--ez-split-button__medium-icon--width:40px;--ez-split-button__large-icon--width:44px;--ez-split-button__inline__icon--gap:6px;--ez-split-button__label--padding-top:0px;--ez-split-button__label--padding-bottom:0px;--ez-split-button__right-button--padding-left:8px;--ez-split-button--color:var(--title--primary, #2B3A54);--ez-split-button--font-size:var(--text--small, 12px);--ez-split-button--font-family:var(--font-pattern, Arial);--ez-split-button--font-weight:var(--text-weight--large);--ez-split-button--background-color:var(--background--light, #ffffff);--ez-split-button--border-radius:var(--border--radius-large, 24px);--ez-split-button--border:1px solid var(--color--strokes);--ez-split-button--justify-content:center;--ez-split-button--hover-color:var(--color--primary-600, #007a5a);--ez-split-button--hover--background-color:var(--background--light, #ffffff);--ez-split-button--disabled-color:var(--text--primary);--ez-split-button--disabled--background-color:var(--background--medium);--ez-split-button--focus--border:var(--border--medium, 2px) var(--color--primary-300);--ez-split-button--focus--box-shadow:none;--ez-split-button--active-color:var(--color--primary-700);--ez-split-button--active--background-color:var(--background--strong)}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-split-button--min-width);width:var(--ez-split-button--width);height:var(--ez-split-button__medium--height);font-family:var(--ez-split-button--font-family);font-size:var(--ez-split-button--font-size);font-weight:var(--ez-split-button--font-weight);padding:var(--ez-split-button__label--padding-top) 0 var(--ez-split-button__label--padding-bottom) 0;border-top-left-radius:var(--ez-split-button--border-radius);border-bottom-left-radius:var(--ez-split-button--border-radius);background-color:var(--ez-split-button--background-color);color:var(--ez-split-button--color);fill:var(--ez-split-button--color);border:none;justify-content:var(--ez-split-button--justify-content)}label{cursor:pointer}button:active{outline:none;box-shadow:none;background-color:var(--ez-split-button--active--background-color);color:var(--ez-split-button--active-color);fill:var(--ez-split-button--active-color);--ez-icon--color:var(--ez-split-button--active-color)}.ez-split-button__left-button{border:var(--ez-split-button--border);border-right:none;outline:none}.ez-split-button__right-button{border:var(--ez-split-button--border);border-left:none;outline:none}.ez-split-button__left-button:focus{box-shadow:0 0 0 2px var(--color--primary-300), \n 0 2px 0 0 var(--color--primary-300), \n 0 -2px 0 0 var(--color--primary-300);}.ez-split-button__right-button:focus{box-shadow:2px 0 0 0 var(--color--primary-300), \n 0 2px 0 0 var(--color--primary-300), \n 0 -2px 0 0 var(--color--primary-300);}.ez-split-button__left-button:hover,.ez-split-button__right-button:hover{outline:none;background-color:var(--ez-split-button--hover--background-color);color:var(--ez-split-button--hover-color);fill:var(--ez-split-button--hover-color);--ez-icon--color:var(--ez-split-button--hover-color)}.ez-split-button__left-button:active,.ez-split-button__right-button:active{outline:none;box-shadow:none;background-color:var(--ez-split-button--active--background-color);color:var(--ez-split-button--active-color);fill:var(--ez-split-button--active-color);--ez-icon--color:var(--ez-split-button--active-color)}.ez-split-button__left-button:disabled,.ez-split-button__left-button:disabled label,.ez-split-button__right-button:disabled{background-color:var(--ez-split-button--disabled--background-color);color:var(--ez-split-button--disabled-color);fill:var(--ez-split-button--disabled-color);border:none;--ez-icon--color:var(--ez-split-button--disabled-color);cursor:not-allowed}.ez-split-button__left-button:disabled{border:var(--ez-split-button--disabled-border);border-right:none}.ez-split-button__right-button:disabled{border:var(--ez-split-button--disabled-border);border-left:none}button.large{height:var(--ez-split-button__large--height)}button.medium{height:var(--ez-split-button__medium--height)}.default label{padding:var(--ez-split-button__label--padding-top) 12px var(--ez-split-button__label--padding-bottom) 20px}.icon-left{gap:var(--ez-split-button__inline__icon--gap)}.icon-left label{padding-right:12px}.icon-left ez-icon{padding-left:20px}.icon-only{padding-left:12px;padding-right:12px}.ez-split-button__right-button{border-top-right-radius:var(--ez-split-button--border-radius);border-bottom-right-radius:var(--ez-split-button--border-radius);border-top-left-radius:0;border-bottom-left-radius:0;border-right:var(--ez-split-button--border)}.ez-split-button__right-button--medium{min-width:var(--ez-split-button__medium-icon--width)}.ez-split-button__right-button--large{min-width:var(--ez-split-button__large-icon--width)}.ez-split-button__right-button--divider{top:10%;bottom:10%}.ez-split-button__right-button--divider:before{content:\"\";position:absolute;left:0;border-left:1px solid rgba(0, 0, 0, 20%);border-radius:2px;height:75%}.btn-icon--medium{min-width:--ez-split-button__medium-icon--width}.btn-icon--large{min-width:--ez-split-button__large-icon--width}.ez-split-button__right-button-container{position:absolute;left:0;padding-left:var(--ez-split-button__right-button--padding-left)}.label-icon{display:flex;flex-direction:row;align-items:center;color:var(--ez-split-button--color)}.label-icon:active{color:var(--ez-split-button--active-color);fill:var(--ez-split-button--active-color);--ez-icon--color:var(--ez-split-button--active-color)}.dropdown{display:flex}.dropdown-content{display:block;position:absolute;background-color:#f1f1f1;min-width:160px;z-index:--ez-elevation--8;border-radius:var(--ez-split-button--border-radius)}.dropdown-content>ez-dropdown{position:relative}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-5a720e56.js';
1
+ import { r as registerInstance, h, H as Host } from './index-baa5e267.js';
2
2
  import './ApplicationUtils-eaf91331.js';
3
3
  import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.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-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
2
2
  import { StringUtils } from '@sankhyalabs/core';
3
3
 
4
4
  var numeric = function (value, unit) { return Number(value.slice(0, -1 * unit.length)); };