@sankhyalabs/ezui 5.22.0-dev.14 → 5.22.0-dev.141

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 (443) hide show
  1. package/dist/cjs/{CSSVarsUtils-10c9d5b4.js → CSSVarsUtils-f20973d1.js} +1 -0
  2. package/dist/cjs/FocusResolver-885f2173.js +35 -0
  3. package/dist/cjs/FormLayout-18853e70.js +27 -0
  4. package/dist/cjs/{constants-2714478b.js → constants-569271bc.js} +4 -0
  5. package/dist/cjs/ez-actions-button.cjs.entry.js +6 -5
  6. package/dist/cjs/ez-avatar.cjs.entry.js +50 -0
  7. package/dist/cjs/ez-badge.cjs.entry.js +14 -2
  8. package/dist/cjs/ez-button.cjs.entry.js +11 -5
  9. package/dist/cjs/ez-card-item_2.cjs.entry.js +267 -0
  10. package/dist/cjs/ez-chart.cjs.entry.js +3 -3
  11. package/dist/cjs/ez-check.cjs.entry.js +18 -10
  12. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  13. package/dist/cjs/ez-collapsible-box.cjs.entry.js +2 -2
  14. package/dist/cjs/ez-combo-box-list_3.cjs.entry.js +387 -0
  15. package/dist/cjs/ez-combo-box.cjs.entry.js +80 -158
  16. package/dist/cjs/ez-date-input.cjs.entry.js +16 -19
  17. package/dist/cjs/ez-date-time-input.cjs.entry.js +15 -20
  18. package/dist/cjs/ez-dialog.cjs.entry.js +18 -8
  19. package/dist/cjs/ez-double-list.cjs.entry.js +287 -0
  20. package/dist/cjs/ez-dropdown.cjs.entry.js +14 -8
  21. package/dist/cjs/ez-filter-input.cjs.entry.js +129 -0
  22. package/dist/cjs/ez-form-view.cjs.entry.js +41 -27
  23. package/dist/cjs/ez-form.cjs.entry.js +89 -327
  24. package/dist/cjs/ez-grid.cjs.entry.js +15290 -69794
  25. package/dist/cjs/ez-icon.cjs.entry.js +12 -6
  26. package/dist/cjs/ez-list.cjs.entry.js +258 -211
  27. package/dist/cjs/ez-modal-container.cjs.entry.js +7 -3
  28. package/dist/cjs/ez-modal.cjs.entry.js +17 -4
  29. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +2 -2
  30. package/dist/cjs/ez-number-input.cjs.entry.js +16 -3
  31. package/dist/cjs/ez-popover-plus_3.cjs.entry.js +238 -0
  32. package/dist/cjs/ez-popup.cjs.entry.js +29 -3
  33. package/dist/cjs/ez-scroller_2.cjs.entry.js +3 -3
  34. package/dist/cjs/ez-search-plus.cjs.entry.js +397 -0
  35. package/dist/cjs/ez-search-result-list.cjs.entry.js +97 -0
  36. package/dist/cjs/ez-search.cjs.entry.js +134 -191
  37. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-skeleton.cjs.entry.js +118 -36
  39. package/dist/cjs/ez-split-button.cjs.entry.js +16 -7
  40. package/dist/cjs/ez-split-item.cjs.entry.js +7 -4
  41. package/dist/cjs/ez-split-panel.cjs.entry.js +68 -6
  42. package/dist/cjs/ez-text-area.cjs.entry.js +91 -8
  43. package/dist/cjs/ez-text-input.cjs.entry.js +150 -31
  44. package/dist/cjs/ez-time-input.cjs.entry.js +9 -2
  45. package/dist/cjs/ez-tooltip.cjs.entry.js +135 -0
  46. package/dist/cjs/ez-tree.cjs.entry.js +5 -4
  47. package/dist/cjs/ezListHelper-0d3970b4.js +90 -0
  48. package/dist/cjs/ezui.cjs.js +1 -1
  49. package/dist/cjs/filter-column.cjs.entry.js +24 -52
  50. package/dist/cjs/floating-ui.dom.esm-017acce4.js +1404 -0
  51. package/dist/cjs/index-a7b0c73d.js +36 -8
  52. package/dist/cjs/loader.cjs.js +1 -1
  53. package/dist/cjs/search-column-27d1f72f.js +505 -0
  54. package/dist/cjs/searchFormatters-b7e1ed1e.js +23 -0
  55. package/dist/collection/collection-manifest.json +21 -2
  56. package/dist/collection/components/ez-actions-button/ez-actions-button.css +2 -0
  57. package/dist/collection/components/ez-actions-button/ez-actions-button.js +3 -2
  58. package/dist/collection/components/ez-avatar/ez-avatar.css +139 -0
  59. package/dist/collection/components/ez-avatar/ez-avatar.js +143 -0
  60. package/dist/collection/components/ez-badge/ez-badge.css +12 -1
  61. package/dist/collection/components/ez-badge/ez-badge.js +31 -1
  62. package/dist/collection/components/ez-button/ez-button.css +24 -14
  63. package/dist/collection/components/ez-button/ez-button.js +12 -6
  64. package/dist/collection/components/ez-card-item/ez-card-item.css +58 -10
  65. package/dist/collection/components/ez-card-item/ez-card-item.js +30 -3
  66. package/dist/collection/components/ez-chart/ez-chart.js +2 -2
  67. package/dist/collection/components/ez-chart/interfaces/ChartTypeValue.js +1 -0
  68. package/dist/collection/components/ez-chart/types/BaseHighChartsRender.js +3 -3
  69. package/dist/collection/components/ez-check/ez-check.css +10 -6
  70. package/dist/collection/components/ez-check/ez-check.js +34 -9
  71. package/dist/collection/components/ez-chip/ez-chip.css +5 -1
  72. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +1 -1
  73. package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.css +205 -0
  74. package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.js +426 -0
  75. package/dist/collection/components/ez-combo-box/ez-combo-box.css +8 -246
  76. package/dist/collection/components/ez-combo-box/ez-combo-box.js +141 -167
  77. package/dist/collection/components/ez-date-input/ez-date-input.css +1 -1
  78. package/dist/collection/components/ez-date-input/ez-date-input.js +58 -19
  79. package/dist/collection/components/ez-date-time-input/ez-date-time-input.css +1 -1
  80. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +57 -20
  81. package/dist/collection/components/ez-dialog/ez-dialog.css +27 -24
  82. package/dist/collection/components/ez-dialog/ez-dialog.js +18 -17
  83. package/dist/collection/components/ez-double-list/doubleListHelper.js +82 -0
  84. package/dist/collection/components/ez-double-list/ez-double-list.css +62 -0
  85. package/dist/collection/components/ez-double-list/ez-double-list.js +440 -0
  86. package/dist/collection/components/ez-dropdown/ez-dropdown.js +33 -8
  87. package/dist/collection/components/ez-filter-input/ez-filter-input.css +1 -1
  88. package/dist/collection/components/ez-filter-input/ez-filter-input.js +35 -4
  89. package/dist/collection/components/ez-form/ez-form.js +125 -4
  90. package/dist/collection/components/ez-form-view/custom-input/ez-custom-form-input.js +49 -6
  91. package/dist/collection/components/ez-form-view/ez-form-view.css +13 -2
  92. package/dist/collection/components/ez-form-view/ez-form-view.js +21 -2
  93. package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +5 -2
  94. package/dist/collection/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.js +1 -1
  95. package/dist/collection/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.js +1 -1
  96. package/dist/collection/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.js +8 -4
  97. package/dist/collection/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.js +1 -1
  98. package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js +1 -1
  99. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +1 -1
  100. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInputPlus.tpl.js +6 -0
  101. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextArea.tpl.js +1 -1
  102. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +2 -2
  103. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +443 -76
  104. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +172 -33
  105. package/dist/collection/components/ez-grid/controller/ag-grid/DataSourceInterceptor.js +2 -1
  106. package/dist/collection/components/ez-grid/controller/ag-grid/GridEditionManager.js +248 -43
  107. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.js +16 -0
  108. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.js +1 -1
  109. package/dist/collection/components/ez-grid/controller/ag-grid/editor/EzCellEditor.js +10 -0
  110. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/ComboBox.tpl.js +2 -0
  111. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/DateInput.tpl.js +1 -0
  112. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.js +1 -0
  113. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/Search.tpl.js +8 -1
  114. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/SearchPlus.tpl.js +15 -0
  115. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/TextInput.tpl.js +4 -1
  116. package/dist/collection/components/ez-grid/controller/ag-grid/test/constants/GridEditionMock.js +2 -0
  117. package/dist/collection/components/ez-grid/ez-grid.css +107 -10
  118. package/dist/collection/components/ez-grid/ez-grid.js +518 -23
  119. package/dist/collection/components/ez-grid/interfaces/IGridMode.js +1 -0
  120. package/dist/collection/components/ez-grid/interfaces/index.js +1 -0
  121. package/dist/collection/components/ez-grid/subcomponents/filter-column.css +4 -0
  122. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +23 -51
  123. package/dist/collection/components/ez-grid/utils/ColumnFilterManager.js +7 -54
  124. package/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource.js +20 -4
  125. package/dist/collection/components/ez-icon/ez-icon.css +156 -149
  126. package/dist/collection/components/ez-icon/ez-icon.js +28 -5
  127. package/dist/collection/components/ez-list/ez-list.css +6 -4
  128. package/dist/collection/components/ez-list/ez-list.js +301 -212
  129. package/dist/collection/components/ez-list/ezListHelper.js +85 -0
  130. package/dist/collection/components/ez-modal/ez-modal.css +7 -2
  131. package/dist/collection/components/ez-modal/ez-modal.js +18 -5
  132. package/dist/collection/components/ez-modal-container/ez-modal-container.css +3 -1
  133. package/dist/collection/components/ez-modal-container/ez-modal-container.js +6 -2
  134. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.css +3 -3
  135. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.js +1 -1
  136. package/dist/collection/components/ez-multi-selection-list/interfaces/IStaticOptionsFetchConfig.js +1 -0
  137. package/dist/collection/components/ez-number-input/ez-number-input.css +8 -0
  138. package/dist/collection/components/ez-number-input/ez-number-input.js +67 -1
  139. package/dist/collection/components/ez-popover-plus/ez-popover-plus.css +3 -0
  140. package/dist/collection/components/ez-popover-plus/ez-popover-plus.js +434 -0
  141. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.css +67 -0
  142. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +524 -0
  143. package/dist/collection/components/ez-popup/ez-popup.css +8 -3
  144. package/dist/collection/components/ez-popup/ez-popup.js +48 -4
  145. package/dist/collection/components/ez-scroller/ez-scroller.css +4 -0
  146. package/dist/collection/components/ez-search/ez-search.css +2 -210
  147. package/dist/collection/components/ez-search/ez-search.js +234 -204
  148. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.css +227 -0
  149. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.js +318 -0
  150. package/dist/collection/components/ez-search/utils/searchFormatters.js +18 -0
  151. package/dist/collection/components/ez-search-plus/ez-search-plus.css +373 -0
  152. package/dist/collection/components/ez-search-plus/ez-search-plus.js +960 -0
  153. package/dist/collection/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.css +221 -0
  154. package/dist/collection/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.js +278 -0
  155. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.css +3 -0
  156. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.js +1 -1
  157. package/dist/collection/components/ez-sidebar-navigator/ez-sidebar-navigator.css +4 -1
  158. package/dist/collection/components/ez-skeleton/ez-skeleton.constants.js +25 -1
  159. package/dist/collection/components/ez-skeleton/ez-skeleton.css +140 -78
  160. package/dist/collection/components/ez-skeleton/ez-skeleton.js +210 -46
  161. package/dist/collection/components/ez-split-button/ez-split-button.css +53 -15
  162. package/dist/collection/components/ez-split-button/ez-split-button.js +90 -13
  163. package/dist/collection/components/ez-split-panel/ez-split-panel.css +15 -0
  164. package/dist/collection/components/ez-split-panel/ez-split-panel.js +106 -5
  165. package/dist/collection/components/ez-split-panel/interfaces/IPanelSizeInfo.js +1 -0
  166. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.css +14 -2
  167. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.js +22 -1
  168. package/dist/collection/components/ez-text-area/ez-text-area.css +78 -29
  169. package/dist/collection/components/ez-text-area/ez-text-area.js +151 -6
  170. package/dist/collection/components/ez-text-input/ez-text-input.css +133 -93
  171. package/dist/collection/components/ez-text-input/ez-text-input.js +231 -29
  172. package/dist/collection/components/ez-time-input/ez-time-input.js +43 -1
  173. package/dist/collection/components/ez-tooltip/ez-tooltip.css +62 -0
  174. package/dist/collection/components/ez-tooltip/ez-tooltip.js +310 -0
  175. package/dist/collection/components/ez-tree/ez-tree.js +21 -1
  176. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +3 -3
  177. package/dist/collection/sw.js +46 -0
  178. package/dist/collection/utils/CSSVarsUtils.js +1 -0
  179. package/dist/collection/utils/FocusResolver.js +31 -0
  180. package/dist/collection/utils/constants.js +2 -0
  181. package/dist/collection/utils/form/DataBinder.js +65 -21
  182. package/dist/collection/utils/form/FormMetadata.js +2 -1
  183. package/dist/collection/utils/form/interfaces/FormLayout.js +5 -0
  184. package/dist/collection/utils/form/interfaces/index.js +1 -1
  185. package/dist/collection/utils/form/test/DataBinder.test.js +14 -0
  186. package/dist/collection/utils/index.js +3 -0
  187. package/dist/collection/utils/interfaces/AbstractFieldMetadata.js +1 -1
  188. package/dist/collection/utils/search/types.js +7 -0
  189. package/dist/collection/utils/searchColumn/search-column.js +35 -0
  190. package/dist/collection/utils/validators/recordvalidator/IInvalidCells.js +1 -0
  191. package/dist/collection/utils/validators/recordvalidator/RecordValidationProcessor.js +7 -1
  192. package/dist/custom-elements/index.d.ts +54 -0
  193. package/dist/custom-elements/index.js +20072 -70949
  194. package/dist/esm/{CSSVarsUtils-71ce76be.js → CSSVarsUtils-acba92d7.js} +1 -0
  195. package/dist/esm/FocusResolver-1ccbf850.js +33 -0
  196. package/dist/esm/FormLayout-071d324c.js +27 -0
  197. package/dist/esm/constants-b036528f.js +7 -0
  198. package/dist/esm/ez-actions-button.entry.js +6 -5
  199. package/dist/esm/ez-avatar.entry.js +46 -0
  200. package/dist/esm/ez-badge.entry.js +14 -2
  201. package/dist/esm/ez-button.entry.js +11 -5
  202. package/dist/esm/ez-card-item_2.entry.js +262 -0
  203. package/dist/esm/ez-chart.entry.js +3 -3
  204. package/dist/esm/ez-check.entry.js +18 -10
  205. package/dist/esm/ez-chip.entry.js +1 -1
  206. package/dist/esm/ez-collapsible-box.entry.js +2 -2
  207. package/dist/esm/ez-combo-box-list_3.entry.js +381 -0
  208. package/dist/esm/ez-combo-box.entry.js +81 -159
  209. package/dist/esm/ez-date-input.entry.js +16 -19
  210. package/dist/esm/ez-date-time-input.entry.js +15 -20
  211. package/dist/esm/ez-dialog.entry.js +19 -9
  212. package/dist/esm/ez-double-list.entry.js +283 -0
  213. package/dist/esm/ez-dropdown.entry.js +14 -8
  214. package/dist/esm/ez-filter-input.entry.js +125 -0
  215. package/dist/esm/ez-form-view.entry.js +42 -28
  216. package/dist/esm/ez-form.entry.js +88 -326
  217. package/dist/esm/ez-grid.entry.js +15289 -69793
  218. package/dist/esm/ez-icon.entry.js +12 -6
  219. package/dist/esm/ez-list.entry.js +258 -211
  220. package/dist/esm/ez-modal-container.entry.js +7 -3
  221. package/dist/esm/ez-modal.entry.js +17 -4
  222. package/dist/esm/ez-multi-selection-list.entry.js +2 -2
  223. package/dist/esm/ez-number-input.entry.js +16 -3
  224. package/dist/esm/ez-popover-plus_3.entry.js +232 -0
  225. package/dist/esm/ez-popup.entry.js +29 -3
  226. package/dist/esm/ez-scroller_2.entry.js +3 -3
  227. package/dist/esm/ez-search-plus.entry.js +393 -0
  228. package/dist/esm/ez-search-result-list.entry.js +93 -0
  229. package/dist/esm/ez-search.entry.js +135 -192
  230. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  231. package/dist/esm/ez-skeleton.entry.js +118 -36
  232. package/dist/esm/ez-split-button.entry.js +16 -7
  233. package/dist/esm/ez-split-item.entry.js +7 -4
  234. package/dist/esm/ez-split-panel.entry.js +69 -7
  235. package/dist/esm/ez-text-area.entry.js +91 -8
  236. package/dist/esm/ez-text-input.entry.js +150 -31
  237. package/dist/esm/ez-time-input.entry.js +9 -2
  238. package/dist/esm/ez-tooltip.entry.js +131 -0
  239. package/dist/esm/ez-tree.entry.js +5 -4
  240. package/dist/esm/ezListHelper-00fb9b8d.js +87 -0
  241. package/dist/esm/ezui.js +1 -1
  242. package/dist/esm/filter-column.entry.js +24 -52
  243. package/dist/esm/floating-ui.dom.esm-5d3da819.js +1398 -0
  244. package/dist/esm/index-baa5e267.js +36 -8
  245. package/dist/esm/loader.js +1 -1
  246. package/dist/esm/search-column-e609d513.js +495 -0
  247. package/dist/esm/searchFormatters-8229207e.js +20 -0
  248. package/dist/ezui/ezui.esm.js +1 -1
  249. package/dist/ezui/p-07894c4a.entry.js +1 -0
  250. package/dist/ezui/p-0d9856a4.entry.js +1 -0
  251. package/dist/ezui/p-1bcfd88c.entry.js +1 -0
  252. package/dist/ezui/p-1eb34cad.entry.js +1 -0
  253. package/dist/ezui/p-20c024f7.entry.js +1 -0
  254. package/dist/ezui/p-26685c50.entry.js +1 -0
  255. package/dist/ezui/p-288631d1.entry.js +1 -0
  256. package/dist/ezui/p-2b42abbb.entry.js +1 -0
  257. package/dist/ezui/p-2b4df33d.entry.js +1 -0
  258. package/dist/ezui/p-30ffb9ed.js +1 -0
  259. package/dist/ezui/p-33326ac5.entry.js +1 -0
  260. package/dist/ezui/p-341da682.entry.js +1 -0
  261. package/dist/ezui/p-35115d5d.entry.js +1 -0
  262. package/dist/ezui/p-3ba9565c.entry.js +1 -0
  263. package/dist/ezui/p-40a60148.js +1 -0
  264. package/dist/ezui/p-496f7832.entry.js +1 -0
  265. package/dist/ezui/p-4b67138e.entry.js +1 -0
  266. package/dist/ezui/p-4bd6dd6a.entry.js +1 -0
  267. package/dist/ezui/p-4d30b703.entry.js +1 -0
  268. package/dist/ezui/p-57363cfd.entry.js +1 -0
  269. package/dist/ezui/p-58f69d24.entry.js +1 -0
  270. package/dist/ezui/{p-84e439b9.entry.js → p-5dde9df3.entry.js} +1 -1
  271. package/dist/ezui/p-5eea9886.js +1 -0
  272. package/dist/ezui/p-69937816.entry.js +1 -0
  273. package/dist/ezui/p-7019f782.entry.js +1 -0
  274. package/dist/ezui/p-79044c3e.entry.js +1 -0
  275. package/dist/ezui/p-7e677b7b.entry.js +1 -0
  276. package/dist/ezui/p-7eae6986.entry.js +1 -0
  277. package/dist/ezui/p-80dfc50b.js +1 -0
  278. package/dist/ezui/p-9478b13b.entry.js +1 -0
  279. package/dist/ezui/p-9567b31a.entry.js +1 -0
  280. package/dist/ezui/p-97c7cf51.entry.js +1 -0
  281. package/dist/ezui/p-998afb6a.entry.js +1 -0
  282. package/dist/ezui/p-9c5cd3b2.entry.js +1 -0
  283. package/dist/ezui/p-a148e994.entry.js +1 -0
  284. package/dist/ezui/p-a3bf8cf1.entry.js +1 -0
  285. package/dist/ezui/p-b38411b4.entry.js +309 -0
  286. package/dist/ezui/p-b81881ac.entry.js +1 -0
  287. package/dist/ezui/p-bac0f920.entry.js +1 -0
  288. package/dist/ezui/p-bff24a7b.js +1 -0
  289. package/dist/ezui/p-cb75eb46.entry.js +1 -0
  290. package/dist/ezui/{p-5b205c80.entry.js → p-d47dabdf.entry.js} +1 -1
  291. package/dist/ezui/p-da1b4a38.entry.js +1 -0
  292. package/dist/ezui/p-dc628ed3.js +1 -0
  293. package/dist/ezui/p-dc73e1fe.entry.js +1 -0
  294. package/dist/ezui/{p-17be134a.entry.js → p-e06a9886.entry.js} +1 -1
  295. package/dist/ezui/p-e07e4671.js +1 -0
  296. package/dist/ezui/p-e6a9041d.entry.js +1 -0
  297. package/dist/ezui/p-e75c7a23.entry.js +1 -0
  298. package/dist/ezui/p-ec7db713.js +1 -0
  299. package/dist/ezui/p-fa6732f2.entry.js +1 -0
  300. package/dist/types/components/ez-avatar/ez-avatar.d.ts +24 -0
  301. package/dist/types/components/ez-badge/ez-badge.d.ts +5 -0
  302. package/dist/types/components/ez-button/ez-button.d.ts +2 -1
  303. package/dist/types/components/ez-calendar/ez-calendar.d.ts +3 -3
  304. package/dist/types/components/ez-card-item/ez-card-item.d.ts +5 -0
  305. package/dist/types/components/ez-chart/interfaces/ChartAxis.d.ts +2 -0
  306. package/dist/types/components/ez-chart/interfaces/ChartTypeValue.d.ts +1 -0
  307. package/dist/types/components/ez-check/ez-check.d.ts +7 -2
  308. package/dist/types/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.d.ts +104 -0
  309. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +19 -15
  310. package/dist/types/components/ez-date-input/ez-date-input.d.ts +12 -3
  311. package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +12 -3
  312. package/dist/types/components/ez-dialog/ez-dialog.d.ts +3 -1
  313. package/dist/types/components/ez-double-list/doubleListHelper.d.ts +10 -0
  314. package/dist/types/components/ez-double-list/ez-double-list.d.ts +87 -0
  315. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +4 -0
  316. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +4 -4
  317. package/dist/types/components/ez-filter-input/ez-filter-input.d.ts +6 -1
  318. package/dist/types/components/ez-form/ez-form.d.ts +23 -1
  319. package/dist/types/components/ez-form-view/custom-input/ez-custom-form-input.d.ts +7 -1
  320. package/dist/types/components/ez-form-view/ez-form-view.d.ts +4 -0
  321. package/dist/types/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.d.ts +2 -1
  322. package/dist/types/components/ez-form-view/fieldbuilder/templates/SearchInputPlus.tpl.d.ts +2 -0
  323. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +1 -1
  324. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +84 -5
  325. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +47 -7
  326. package/dist/types/components/ez-grid/controller/ag-grid/DataSource.d.ts +26 -2
  327. package/dist/types/components/ez-grid/controller/ag-grid/GridEditionManager.d.ts +34 -7
  328. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.d.ts +4 -1
  329. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.d.ts +1 -1
  330. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  331. package/dist/types/components/ez-grid/controller/ag-grid/components/cellRendererStatus.d.ts +1 -1
  332. package/dist/types/components/ez-grid/controller/ag-grid/components/selectionHeader.d.ts +1 -1
  333. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellEditor.d.ts +2 -1
  334. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellRender.d.ts +1 -1
  335. package/dist/types/components/ez-grid/controller/ag-grid/editor/IUICellEditor.d.ts +1 -0
  336. package/dist/types/components/ez-grid/controller/ag-grid/editor/templates/SearchPlus.tpl.d.ts +3 -0
  337. package/dist/types/components/ez-grid/controller/ag-grid/mock/Server.d.ts +1 -1
  338. package/dist/types/components/ez-grid/ez-grid.d.ts +80 -2
  339. package/dist/types/components/ez-grid/interfaces/IGridMode.d.ts +1 -0
  340. package/dist/types/components/ez-grid/interfaces/index.d.ts +1 -0
  341. package/dist/types/components/ez-grid/subcomponents/filter-column.d.ts +1 -11
  342. package/dist/types/components/ez-grid/utils/ColumnFilterManager.d.ts +1 -1
  343. package/dist/types/components/ez-grid/utils/InMemoryFilterColumnDataSource.d.ts +3 -0
  344. package/dist/types/components/ez-icon/ez-icon.d.ts +5 -0
  345. package/dist/types/components/ez-list/ez-list.d.ts +23 -2
  346. package/dist/types/components/ez-list/ezListHelper.d.ts +20 -0
  347. package/dist/types/components/ez-modal/ez-modal.d.ts +4 -1
  348. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +2 -0
  349. package/dist/types/components/ez-multi-selection-list/interfaces/IMultiSelectionListDataSource.d.ts +2 -1
  350. package/dist/types/components/ez-multi-selection-list/interfaces/IStaticOptionsFetchConfig.d.ts +3 -0
  351. package/dist/types/components/ez-number-input/ez-number-input.d.ts +12 -0
  352. package/dist/types/components/ez-popover-plus/ez-popover-plus.d.ts +74 -0
  353. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +89 -0
  354. package/dist/types/components/ez-popup/ez-popup.d.ts +10 -1
  355. package/dist/types/components/ez-search/ez-search.d.ts +37 -18
  356. package/dist/types/components/ez-search/subcomponent/search-list/search-list.d.ts +29 -0
  357. package/dist/types/components/ez-search/utils/searchFormatters.d.ts +2 -0
  358. package/dist/types/components/ez-search-plus/ez-search-plus.d.ts +186 -0
  359. package/dist/types/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.d.ts +26 -0
  360. package/dist/types/components/ez-skeleton/ez-skeleton.constants.d.ts +55 -1
  361. package/dist/types/components/ez-skeleton/ez-skeleton.d.ts +50 -22
  362. package/dist/types/components/ez-split-button/ez-split-button.d.ts +15 -3
  363. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +11 -0
  364. package/dist/types/components/ez-split-panel/interfaces/IPanelSizeInfo.d.ts +9 -0
  365. package/dist/types/components/ez-split-panel/structure/item/ez-split-item.d.ts +5 -0
  366. package/dist/types/components/ez-text-area/ez-text-area.d.ts +25 -0
  367. package/dist/types/components/ez-text-input/ez-text-input.d.ts +37 -3
  368. package/dist/types/components/ez-time-input/ez-time-input.d.ts +8 -0
  369. package/dist/types/components/ez-tooltip/ez-tooltip.d.ts +57 -0
  370. package/dist/types/components/ez-tree/ez-tree.d.ts +4 -0
  371. package/dist/types/components/ez-tree/interfaces/ITreeItem.d.ts +1 -0
  372. package/dist/types/components/ez-tree/subcomponents/TreeItem.d.ts +1 -0
  373. package/dist/types/components.d.ts +1390 -54
  374. package/dist/types/utils/FocusResolver.d.ts +5 -0
  375. package/dist/types/utils/constants.d.ts +2 -0
  376. package/dist/types/utils/customEditor/interfaces/ICustomEditor.d.ts +2 -0
  377. package/dist/types/utils/form/DataBinder.d.ts +7 -2
  378. package/dist/types/utils/form/interfaces/FormLayout.d.ts +4 -0
  379. package/dist/types/utils/form/interfaces/index.d.ts +1 -0
  380. package/dist/types/utils/index.d.ts +3 -0
  381. package/dist/types/utils/search/types.d.ts +12 -0
  382. package/dist/types/utils/searchColumn/search-column.d.ts +9 -0
  383. package/dist/types/utils/validators/recordvalidator/IInvalidCells.d.ts +5 -0
  384. package/dist/types/utils/validators/recordvalidator/RecordValidationProcessor.d.ts +1 -1
  385. package/package.json +16 -7
  386. package/react/components.d.ts +63 -54
  387. package/react/components.js +9 -0
  388. package/react/components.js.map +1 -1
  389. package/react/react-component-lib/createComponent.d.ts +1 -1
  390. package/react/react-component-lib/createComponent.js.map +1 -1
  391. package/react/react-component-lib/createOverlayComponent.js.map +1 -1
  392. package/react/react-component-lib/interfaces.js +1 -0
  393. package/react/react-component-lib/utils/attachProps.d.ts +1 -1
  394. package/react/react-component-lib/utils/attachProps.js.map +1 -1
  395. package/react/react-component-lib/utils/dev.js.map +1 -1
  396. package/react/react-component-lib/utils/index.d.ts +2 -2
  397. package/react/react-component-lib/utils/index.js.map +1 -1
  398. package/dist/cjs/ICustomRender-6fafffce.js +0 -13
  399. package/dist/cjs/RecordValidationProcessor-4c893e04.js +0 -102
  400. package/dist/cjs/ez-card-item_3.cjs.entry.js +0 -183
  401. package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +0 -206
  402. package/dist/esm/ICustomRender-875b5a40.js +0 -13
  403. package/dist/esm/RecordValidationProcessor-b00b8b77.js +0 -99
  404. package/dist/esm/constants-4e0d35b7.js +0 -5
  405. package/dist/esm/ez-card-item_3.entry.js +0 -177
  406. package/dist/esm/ez-custom-form-input_2.entry.js +0 -201
  407. package/dist/ezui/p-04f24913.js +0 -1
  408. package/dist/ezui/p-05e1f4e7.js +0 -1
  409. package/dist/ezui/p-072e6347.entry.js +0 -1
  410. package/dist/ezui/p-1285c902.entry.js +0 -1
  411. package/dist/ezui/p-13d2fe2d.entry.js +0 -1
  412. package/dist/ezui/p-2097d0cf.entry.js +0 -1
  413. package/dist/ezui/p-32e553e5.entry.js +0 -304
  414. package/dist/ezui/p-34b6916c.entry.js +0 -1
  415. package/dist/ezui/p-3b4eeeb6.entry.js +0 -1
  416. package/dist/ezui/p-3faa2b46.entry.js +0 -1
  417. package/dist/ezui/p-42533ea4.entry.js +0 -1
  418. package/dist/ezui/p-4607fb89.js +0 -1
  419. package/dist/ezui/p-49456b34.entry.js +0 -1
  420. package/dist/ezui/p-4d5235f1.entry.js +0 -1
  421. package/dist/ezui/p-5bd5e68f.entry.js +0 -1
  422. package/dist/ezui/p-650e4b6d.entry.js +0 -1
  423. package/dist/ezui/p-784fe207.entry.js +0 -1
  424. package/dist/ezui/p-7922142b.entry.js +0 -1
  425. package/dist/ezui/p-7af81663.entry.js +0 -1
  426. package/dist/ezui/p-7bc07c31.entry.js +0 -1
  427. package/dist/ezui/p-85c8baae.entry.js +0 -1
  428. package/dist/ezui/p-8888d9ed.entry.js +0 -1
  429. package/dist/ezui/p-9050d2cd.entry.js +0 -1
  430. package/dist/ezui/p-922ac38b.entry.js +0 -1
  431. package/dist/ezui/p-9e11fc7b.js +0 -1
  432. package/dist/ezui/p-a31b9c90.entry.js +0 -1
  433. package/dist/ezui/p-aba3da00.entry.js +0 -1
  434. package/dist/ezui/p-af95cd16.entry.js +0 -1
  435. package/dist/ezui/p-bae4e180.entry.js +0 -1
  436. package/dist/ezui/p-baf80b13.entry.js +0 -1
  437. package/dist/ezui/p-bcb53f27.entry.js +0 -1
  438. package/dist/ezui/p-bf79aaa1.entry.js +0 -1
  439. package/dist/ezui/p-cdc472cc.entry.js +0 -1
  440. package/dist/ezui/p-d9401ea0.entry.js +0 -1
  441. package/dist/ezui/p-e85c48d7.entry.js +0 -1
  442. package/dist/ezui/p-ecc2c1ec.entry.js +0 -1
  443. package/dist/ezui/p-fcf0acce.entry.js +0 -1
@@ -3,15 +3,16 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-a7b0c73d.js');
6
- const CSSVarsUtils = require('./CSSVarsUtils-10c9d5b4.js');
6
+ const CSSVarsUtils = require('./CSSVarsUtils-f20973d1.js');
7
7
  const core = require('@sankhyalabs/core');
8
8
  const ApplicationUtils = require('./ApplicationUtils-c9d1205c.js');
9
9
  require('./DialogType-2114c337.js');
10
10
  require('./CheckMode-ecb90b87.js');
11
- require('./ICustomRender-6fafffce.js');
12
- const constants = require('./constants-2714478b.js');
11
+ require('./FormLayout-18853e70.js');
12
+ const constants = require('./constants-569271bc.js');
13
+ const searchFormatters = require('./searchFormatters-b7e1ed1e.js');
13
14
 
14
- const ezSearchCss = ":host{--ez-search--height:42px;--ez-search--width:100%;--ez-search__icon--width:48px;--ez-search--border-radius:var(--border--radius-medium, 12px);--ez-search--border-radius-small:var(--border--radius-small, 6px);--ez-search--font-size:var(--text--medium, 14px);--ez-search--font-family:var(--font-pattern, Arial);--ez-search--font-weight--large:var(--text-weight--large, 500);--ez-search--font-weight--medium:var(--text-weight--medium, 400);--ez-search--background-color--xlight:var(--background--xlight, #fff);--ez-search--background-medium:var(--background--medium, #f0f3f7);--ez-search--line-height:calc(var(--text--medium, 14px) + 4px);--ez-search__input--background-color:var(--background--medium, #e0e0e0);--ez-search__input--border:var(--border--medium, 2px solid);--ez-search__input--border-color:var(--ez-search__input--background-color);--ez-search__input--focus--border-color:var(--color--primary, #008561);--ez-search__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-search__input--disabled--color:var(--text--disable, #AFB6C0);--ez-search__input--error--border-color:#CC2936;--ez-search__btn--color:var(--title--primary, #2B3A54);--ez-search__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-search__btn-hover--color:var(--color--primary, #4e4e4e);--ez-search__label--color:var(--title--primary, #2B3A54);--ez-search__list-title--primary:var(--title--primary, #2B3A54);--ez-search__list-text--primary:var(--text--primary, #626e82);--ez-search__list-height:calc(var(--ez-search--font-size) + var(--ez-search--space--medium) + 4px);--ez-search__list-min-width:64px;--ez-search--space--medium:var(--space--medium, 12px);--ez-search--space--small:var(--space--small, 6px);--ez-search__scrollbar--color-default:var(--scrollbar--default, #626e82);--ez-search__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--ez-search__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--ez-search__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--ez-search__scrollbar--border-radius:var(--border--radius-small, 6px);--ez-search__scrollbar--width:var(--space--medium, 12px);display:flex;flex-wrap:wrap;position:relative;width:var(--ez-search--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-search__list-min-width);overflow:auto;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:350px;min-width:150px;background-color:var(--ez-search--background-color--xlight);border-radius:var(--ez-search--border-radius);box-shadow:var(--shadow, 0px 0px 16px 0px #000);padding:var(--ez-search--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-search__scrollbar--color-clicked) var(--ez-search__scrollbar--color-background)}.list-options::-webkit-scrollbar{background-color:var(--ez-search__scrollbar--color-background);width:var(--ez-search__scrollbar--width);max-width:var(--ez-search__scrollbar--width);min-width:var(--ez-search__scrollbar--width)}.list-options::-webkit-scrollbar-track{background-color:var(--ez-search__scrollbar--color-background);border-radius:var(--ez-search__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb{background-color:var(--ez-search__scrollbar--color-default);border-radius:var(--ez-search__scrollbar--border-radius)}.list-options::-webkit-scrollbar-thumb:vertical:hover,.list-options::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--ez-search__scrollbar--color-hover)}.list-options::-webkit-scrollbar-thumb:vertical:active,.list-options::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--ez-search__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-search--border-radius-small);padding:var(--ez-search--space--small);gap:var(--space--small, 6px)}.item__value,.item__label{flex-basis:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ez-search__list-title--primary);font-family:var(--ez-search--font-family);font-size:var(--ez-search--font-size);line-height:var(--ez-search--line-height)}.item__label{font-weight:var(--ez-search--font-weight--medium)}.item__label--bold{font-weight:var(--ez-search--font-weight--large)}.item__value{text-align:center;color:var(--ez-search__list-text--primary);font-weight:var(--ez-search--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-search__list-height)}.message__no-result{color:var(--ez-search__list-title--primary);font-family:var(--ez-search--font-family);font-size:var(--ez-search--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-search__list-title--primary);border-top:3px solid transparent}.item__list>li:hover{background-color:var(--ez-search--background-medium)}.preselected{background-color:var(--background--medium)}.btn{outline:none;border:none;background:none;cursor:pointer;color:var(--ez-search__btn--color)}.btn:disabled{cursor:unset;color:var(--ez-search__btn-disabled--color)}.btn:disabled:hover{cursor:unset;color:var(--ez-search__btn-disabled--color)}.btn:hover{color:var(--ez-search__btn-hover--color)}.btn__close{visibility:hidden}ez-text-input:hover .btn__close,ez-text-input:focus .btn__close{visibility:visible}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";
15
+ const ezSearchCss = ":host{--ez-search--height:42px;--ez-search--width:100%;--ez-search__icon--width:48px;--ez-search--border-radius:var(--border--radius-medium, 12px);--ez-search--border-radius-small:var(--border--radius-small, 6px);--ez-search--font-size:var(--text--medium, 14px);--ez-search--font-family:var(--font-pattern, Arial);--ez-search--font-weight--large:var(--text-weight--large, 500);--ez-search--font-weight--medium:var(--text-weight--medium, 400);--ez-search--background-color--xlight:var(--background--xlight, #fff);--ez-search--background-medium:var(--background--medium, #f0f3f7);--ez-search--line-height:calc(var(--text--medium, 14px) + 4px);--ez-search__input--background-color:var(--background--medium, #e0e0e0);--ez-search__input--border:var(--border--medium, 2px solid);--ez-search__input--border-color:var(--ez-search__input--background-color);--ez-search__input--focus--border-color:var(--color--primary, #008561);--ez-search__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-search__input--disabled--color:var(--text--disable, #AFB6C0);--ez-search__input--error--border-color:#CC2936;--ez-search__btn--color:var(--title--primary, #2B3A54);--ez-search__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-search__btn-hover--color:var(--color--primary, #4e4e4e);--ez-search__label--color:var(--title--primary, #2B3A54);--ez-search--space--medium:var(--space--medium, 12px);--ez-search--space--small:var(--space--small, 6px);display:flex;flex-wrap:wrap;position:relative;width:var(--ez-search--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;color:var(--ez-search__btn--color)}.btn:disabled{cursor:not-allowed;color:var(--ez-search__btn-disabled--color)}.btn:disabled:hover{cursor:not-allowed;color:var(--ez-search__btn-disabled--color)}.btn:hover{color:var(--ez-search__btn-hover--color)}.btn__close{visibility:hidden}ez-text-input:hover .btn__close,ez-text-input:focus .btn__close{visibility:visible}";
15
16
 
16
17
  const EzSearch = class {
17
18
  constructor(hostRef) {
@@ -30,15 +31,18 @@ const EzSearch = class {
30
31
  this._visibleOptions = undefined;
31
32
  this._startLoading = false;
32
33
  this._showLoading = true;
34
+ this._showLoadingDescription = false;
33
35
  this._criteria = undefined;
34
36
  this.value = undefined;
35
37
  this.label = undefined;
36
38
  this.enabled = true;
37
39
  this.errorMessage = undefined;
38
40
  this.optionLoader = undefined;
41
+ this.contextProperties = undefined;
39
42
  this.showSelectedValue = true;
40
43
  this.showOptionValue = true;
41
44
  this.suppressEmptyOption = false;
45
+ this.stopPropagateEnterKeyEvent = false;
42
46
  this.mode = "regular";
43
47
  this.canShowError = true;
44
48
  this.hideErrorOnFocusOut = true;
@@ -47,7 +51,10 @@ const EzSearch = class {
47
51
  this.ignoreLimitCharsToSearch = false;
48
52
  this.options = undefined;
49
53
  this.suppressSearch = false;
50
- this.fromGrid = false;
54
+ this.ensureClearButtonVisible = false;
55
+ this.suppressPreLoad = true;
56
+ this.autoFocus = false;
57
+ this.alternativePlaceholder = undefined;
51
58
  }
52
59
  observeErrorMessage() {
53
60
  var _a;
@@ -58,12 +65,21 @@ const EzSearch = class {
58
65
  }
59
66
  }
60
67
  }
68
+ getValue(val) {
69
+ return typeof val === 'object' ? val === null || val === void 0 ? void 0 : val.value : val;
70
+ }
61
71
  validateNewValue(newValue, oldValue) {
62
- const getValue = (val) => typeof val === 'object' ? val === null || val === void 0 ? void 0 : val.value : val;
63
- return (getValue(newValue) !== getValue(oldValue));
72
+ const parsedNewValue = this.getValue(newValue);
73
+ const parsedOldValue = this.getValue(oldValue);
74
+ const newValueIsValid = parsedNewValue !== "[object Object]";
75
+ const valuesIsDifferent = parsedNewValue !== parsedOldValue;
76
+ if (newValueIsValid && valuesIsDifferent) {
77
+ return true;
78
+ }
79
+ return false;
64
80
  }
65
81
  async observeValue(newValue, oldValue) {
66
- if (this._textInput && newValue !== oldValue && this.validateNewValue(newValue, oldValue)) {
82
+ if (this._textInput && this.validateNewValue(newValue, oldValue)) {
67
83
  if (typeof newValue === "string") {
68
84
  await this.handleValueAsString(newValue);
69
85
  return;
@@ -80,7 +96,7 @@ const EzSearch = class {
80
96
  }
81
97
  }
82
98
  observeOptions(newOptions, oldOptions) {
83
- if (!newOptions.length && this.fromGrid)
99
+ if (!newOptions.length && this.suppressPreLoad)
84
100
  return;
85
101
  if ((newOptions === null || newOptions === void 0 ? void 0 : newOptions.join('')) === (oldOptions === null || oldOptions === void 0 ? void 0 : oldOptions.join('')))
86
102
  return;
@@ -106,9 +122,9 @@ const EzSearch = class {
106
122
  /**
107
123
  * Aplica o foco no campo.
108
124
  */
109
- async setFocus() {
125
+ async setFocus(options) {
110
126
  if (this._textInput) {
111
- this._textInput.setFocus();
127
+ this._textInput.setFocus(options);
112
128
  }
113
129
  }
114
130
  /**
@@ -131,73 +147,19 @@ const EzSearch = class {
131
147
  async clearValue() {
132
148
  this.clearSearch();
133
149
  }
134
- scrollListener() {
135
- var _a;
136
- if (this._floatingID == undefined) {
137
- return;
138
- }
139
- if ((_a = this.listOptionsPosition) === null || _a === void 0 ? void 0 : _a.hardPosition) {
140
- this.hideOptions();
141
- }
142
- else {
143
- window.requestAnimationFrame(() => {
144
- this.updateListPosition();
145
- });
146
- }
147
- }
148
150
  async handleValueAsString(value) {
149
151
  if (this.getSelectedOption(value)) {
150
152
  this.setInputValue();
151
153
  return;
152
154
  }
153
155
  await this.loadDescriptionValue(value);
156
+ if (!this._currentValue) {
157
+ return;
158
+ }
154
159
  this.setInputValue();
155
160
  this.ezChange.emit(this.value);
156
161
  this._currentValue = this.value;
157
162
  }
158
- updateListPosition() {
159
- let { verticalPosition, horizontalPosition, fromBottom, fromRight, bottomLimit, hardPosition } = this.getListPosition();
160
- const elementRect = this._listWrapper.getBoundingClientRect();
161
- const containerRect = this._listContainer.getBoundingClientRect();
162
- const textInputRect = this._textInput.getBoundingClientRect();
163
- const limitHeight = bottomLimit || window.innerHeight;
164
- const neededHeight = containerRect.bottom + elementRect.height;
165
- if (!fromBottom && (elementRect.top < 0 || neededHeight > limitHeight)) {
166
- fromBottom = true;
167
- }
168
- if (!hardPosition) {
169
- verticalPosition = verticalPosition || 0;
170
- horizontalPosition = horizontalPosition || 0;
171
- if (fromBottom) {
172
- verticalPosition = window.innerHeight - textInputRect.top + verticalPosition;
173
- }
174
- else {
175
- verticalPosition += containerRect.top;
176
- }
177
- if (fromRight) {
178
- horizontalPosition = window.innerWidth - textInputRect.right + horizontalPosition;
179
- }
180
- else {
181
- horizontalPosition += containerRect.left;
182
- }
183
- }
184
- if (verticalPosition != undefined) {
185
- this._listWrapper.style[fromBottom ? "bottom" : "top"] = `${verticalPosition}px`;
186
- this._listWrapper.style[fromBottom ? "top" : "bottom"] = "";
187
- }
188
- if (horizontalPosition != undefined) {
189
- this._listWrapper.style[fromRight ? "right" : "left"] = `${horizontalPosition}px`;
190
- this._listWrapper.style[fromRight ? "left" : "right"] = "";
191
- }
192
- }
193
- getListPosition() {
194
- if (this.listOptionsPosition) {
195
- return this.listOptionsPosition;
196
- }
197
- return {
198
- verticalPosition: (this.errorMessage || !this.canShowError || this.mode === "slim") ? 6 : -13
199
- };
200
- }
201
163
  isDifferentValues(firstValue, secondValue) {
202
164
  return core.ObjectUtils.objectToString(firstValue || {}) !== core.ObjectUtils.objectToString(secondValue || {});
203
165
  }
@@ -205,28 +167,21 @@ const EzSearch = class {
205
167
  if (currentValue == undefined) {
206
168
  return;
207
169
  }
208
- let text = (!this.showSelectedValue || currentValue.value == undefined) ? currentValue.label : `${currentValue.value} - ${currentValue.label}`;
209
- text = text.replace(new RegExp(this._startHighlightTag, 'g'), '').replace(new RegExp(this._endHighlightTag, 'g'), '');
170
+ let text = (!this.showSelectedValue || currentValue.value == undefined) ? currentValue.label : currentValue.label ? `${currentValue.value} - ${currentValue.label}` : currentValue.value;
171
+ text = text === null || text === void 0 ? void 0 : text.replace(new RegExp(this._startHighlightTag, 'g'), '').replace(new RegExp(this._endHighlightTag, 'g'), '');
210
172
  return text;
211
173
  }
212
174
  getText() {
213
175
  const currentValue = this.getSelectedOption(this._currentValue);
214
176
  const text = this.getFormattedText(currentValue);
215
- if (text == undefined) {
216
- return;
217
- }
218
- return String(text)
219
- .replace(/&amp;/g, '&')
220
- .replace(/&lt;/g, '<')
221
- .replace(/&gt;/g, '>')
222
- .replace(/&quot;/g, '"');
177
+ return searchFormatters.replaceQuotes(text);
223
178
  }
224
179
  getSelectedOption(value) {
225
180
  if (typeof value === "string" || value instanceof String) {
226
181
  return this._visibleOptions.find(o => o.value === value);
227
182
  }
228
183
  if (value) {
229
- return Object.assign(Object.assign({}, value), { value: this.replaceHighlight(value === null || value === void 0 ? void 0 : value.value), label: this.replaceHighlight(value === null || value === void 0 ? void 0 : value.label) });
184
+ return Object.assign(Object.assign({}, value), { value: searchFormatters.replaceHighlight(value === null || value === void 0 ? void 0 : value.value), label: searchFormatters.replaceHighlight(value === null || value === void 0 ? void 0 : value.label) });
230
185
  }
231
186
  return value;
232
187
  }
@@ -264,75 +219,19 @@ const EzSearch = class {
264
219
  }
265
220
  return 0;
266
221
  }
267
- createOption(detail) {
268
- let { key, title } = detail;
269
- const startHighlight = new RegExp(this._startHighlightTag, 'g');
270
- const endHighlight = new RegExp(this._endHighlightTag, 'g');
271
- title = core.StringUtils.decodeHtmlEntities(title);
272
- const option = {
273
- value: key === null || key === void 0 ? void 0 : key.replace(startHighlight, '').replace(endHighlight, ''),
274
- label: title === null || title === void 0 ? void 0 : title.replace(startHighlight, '').replace(endHighlight, '')
275
- };
276
- this.selectOption(option);
277
- }
278
- buildItem(opt, index$1) {
279
- opt.label = opt.label || opt.value;
280
- const card = {
281
- key: opt.value,
282
- title: opt.label,
283
- details: opt.details
284
- };
285
- return index.h("div", { style: { "height": "100%" }, class: index$1 === this._preSelection ? "item preselected" : "item", id: `item_${opt.value}`, onMouseDown: () => this.createOption(card), onMouseOver: () => this._preSelection = index$1 }, index.h("ez-card-item", { item: card }));
286
- }
287
222
  showOptions() {
288
223
  if (!this.enabled)
289
224
  return;
290
225
  if (this.isOptionsVisible()) {
291
226
  return;
292
227
  }
293
- if (!!this._resizeObserver)
294
- this._resizeObserver.observe(this._textInput);
295
- this._floatingID = core.FloatingManager.float(this._listWrapper, this._listContainer, { autoClose: false, isFixed: true, backClickListener: () => this.hideOptions() });
296
- this.setFocus();
297
- window.requestAnimationFrame(() => {
298
- this.updateListPosition();
299
- if (!this.listOptionsPosition) {
300
- this._listWrapper.scrollIntoView({ behavior: "smooth", block: "nearest", inline: "nearest" });
301
- }
302
- });
228
+ this._ezPopOverPlusElement.showUnder(this._textInput);
303
229
  }
304
230
  hideOptions() {
305
- if (this._floatingID !== undefined) {
306
- core.FloatingManager.close(this._floatingID);
307
- }
308
- this._floatingID = undefined;
309
- if (!!this._resizeObserver)
310
- this._resizeObserver.unobserve(this._textInput);
231
+ this._ezPopOverPlusElement.hide();
311
232
  }
312
233
  isOptionsVisible() {
313
- return this._floatingID !== undefined && core.FloatingManager.isFloating(this._floatingID);
314
- }
315
- nextOption() {
316
- if (!this.isOptionsVisible()) {
317
- return;
318
- }
319
- this.showOptions();
320
- this._preSelection = this._preSelection === undefined ? 0 : Math.min(this._preSelection + 1, this._visibleOptions.length - 1);
321
- this.scrollToOption(this._visibleOptions[this._preSelection]);
322
- }
323
- previousOption() {
324
- this._preSelection = this._preSelection === undefined ? 0 : Math.max(this._preSelection - 1, 0);
325
- this.scrollToOption(this._visibleOptions[this._preSelection]);
326
- }
327
- scrollToOption(opt) {
328
- window.requestAnimationFrame(() => {
329
- const liElem = (opt === null || opt === void 0 ? void 0 : opt.value)
330
- ? this._optionsList.querySelector(`div#item_${opt.value.replace(/([ #;&,.+*~':"!^$[\]()=<>|/\\])/g, '\\$1')}`)
331
- : undefined;
332
- if (liElem) {
333
- liElem.scrollIntoView({ behavior: "smooth", block: "nearest" });
334
- }
335
- });
234
+ return this._ezPopOverPlusElement.opened;
336
235
  }
337
236
  selectCurrentOption() {
338
237
  if (this._preSelection !== undefined) {
@@ -347,10 +246,13 @@ const EzSearch = class {
347
246
  this._startLoading = false;
348
247
  if (source instanceof Promise) {
349
248
  this._showLoading = true;
249
+ this._showLoadingDescription = true;
350
250
  source.then(result => {
351
- this._showLoading = false;
352
251
  this.updateSource(result);
353
- }).catch(() => this._showLoading = false);
252
+ }).finally(() => {
253
+ this._showLoading = false;
254
+ this._showLoadingDescription = false;
255
+ });
354
256
  this.updateVisibleOptions();
355
257
  }
356
258
  else {
@@ -360,7 +262,7 @@ const EzSearch = class {
360
262
  this.updateVisibleOptions();
361
263
  if (this._tabPressed) {
362
264
  this._tabPressed = false;
363
- this.controlEmptySearch();
265
+ this.controlEmptySearch(false);
364
266
  }
365
267
  }
366
268
  else {
@@ -372,18 +274,14 @@ const EzSearch = class {
372
274
  this._source = [];
373
275
  this.updateVisibleOptions();
374
276
  }
375
- replaceHighlight(value) {
376
- const startHighlight = new RegExp(this._startHighlightTag, 'g');
377
- const endHighlight = new RegExp(this._endHighlightTag, 'g');
378
- return (value !== null && value !== void 0 ? value : "").replace(startHighlight, '').replace(endHighlight, '');
379
- }
380
- selectOption(newOption) {
277
+ selectOption(newOption, focusOnInput = true) {
381
278
  var _a, _b;
382
279
  const currentValue = this.getSelectedOption(this.value);
383
- const newOptionsReplaced = Object.assign(Object.assign({}, newOption), { value: this.replaceHighlight(newOption === null || newOption === void 0 ? void 0 : newOption.value), label: this.replaceHighlight(newOption === null || newOption === void 0 ? void 0 : newOption.label) });
384
- if ((((_a = currentValue === null || currentValue === void 0 ? void 0 : currentValue.value) === null || _a === void 0 ? void 0 : _a.toString()) !== ((_b = newOptionsReplaced === null || newOptionsReplaced === void 0 ? void 0 : newOptionsReplaced.value) === null || _b === void 0 ? void 0 : _b.toString()))
385
- || (currentValue == undefined && newOptionsReplaced != undefined && "value" in newOptionsReplaced)) {
386
- const adjustedOpt = !(newOptionsReplaced === null || newOptionsReplaced === void 0 ? void 0 : newOptionsReplaced.value) ? undefined : newOptionsReplaced;
280
+ const newOptionsReplaced = Object.assign(Object.assign({}, newOption), { value: searchFormatters.replaceHighlight(newOption === null || newOption === void 0 ? void 0 : newOption.value), label: searchFormatters.replaceHighlight(newOption === null || newOption === void 0 ? void 0 : newOption.label) });
281
+ const newOptionsFormatted = Object.assign(Object.assign({}, newOptionsReplaced), { value: searchFormatters.replaceQuotes(newOptionsReplaced === null || newOptionsReplaced === void 0 ? void 0 : newOptionsReplaced.value), label: searchFormatters.replaceQuotes(newOptionsReplaced === null || newOptionsReplaced === void 0 ? void 0 : newOptionsReplaced.label) });
282
+ if ((((_a = currentValue === null || currentValue === void 0 ? void 0 : currentValue.value) === null || _a === void 0 ? void 0 : _a.toString()) !== ((_b = newOptionsFormatted === null || newOptionsFormatted === void 0 ? void 0 : newOptionsFormatted.value) === null || _b === void 0 ? void 0 : _b.toString()))
283
+ || (currentValue == undefined && newOptionsFormatted != undefined && "value" in newOptionsFormatted)) {
284
+ const adjustedOpt = !(newOptionsFormatted === null || newOptionsFormatted === void 0 ? void 0 : newOptionsFormatted.value) ? undefined : newOptionsFormatted;
387
285
  this.value = adjustedOpt;
388
286
  this._currentValue = adjustedOpt;
389
287
  }
@@ -393,20 +291,25 @@ const EzSearch = class {
393
291
  }
394
292
  this._visibleOptions = [];
395
293
  this.clearSource();
294
+ if (focusOnInput) {
295
+ setTimeout(() => {
296
+ this.setFocus();
297
+ }, 0);
298
+ }
396
299
  }
397
300
  loadOptions(mode, argument = "") {
398
301
  this._criteria = argument;
399
302
  this._startLoading = true;
400
303
  if (this.optionLoader) {
401
304
  const searchArgument = { mode, argument };
402
- this.updateSource(this.optionLoader(searchArgument));
305
+ this.updateSource(this.optionLoader(searchArgument, this.contextProperties));
403
306
  }
404
307
  else {
405
308
  this.updateSource(this.options);
406
309
  }
407
310
  }
408
311
  cancelPreselection() {
409
- if (!this._textInput.value && this._currentValue) {
312
+ if (!this._textInput.value && this._currentValue && this._source.length > 0) {
410
313
  this.selectOption(undefined);
411
314
  }
412
315
  else {
@@ -429,7 +332,7 @@ const EzSearch = class {
429
332
  this.value = null;
430
333
  this._currentValue = null;
431
334
  }
432
- controlListWithOnlyOne() {
335
+ controlListWithOnlyOne(focusOnInput = true) {
433
336
  var _a, _b;
434
337
  const source = (_a = this._visibleOptions) === null || _a === void 0 ? void 0 : _a.filter((opt) => opt.label !== "" && opt.value != undefined);
435
338
  if ((source === null || source === void 0 ? void 0 : source.length) > 0) {
@@ -440,31 +343,18 @@ const EzSearch = class {
440
343
  value: (_b = source[0].value) === null || _b === void 0 ? void 0 : _b.replace(startHighlight, '').replace(endHighlight, ''),
441
344
  label: title === null || title === void 0 ? void 0 : title.replace(startHighlight, '').replace(endHighlight, '')
442
345
  };
443
- this.selectOption(option);
346
+ this.selectOption(option, focusOnInput);
444
347
  }
445
348
  }
446
- controlEmptySearch() {
349
+ controlEmptySearch(focusOnInput = true) {
447
350
  var _a;
448
351
  if (!((_a = this._visibleOptions) === null || _a === void 0 ? void 0 : _a.length)) {
449
352
  this.clearSearch();
450
353
  ApplicationUtils.ApplicationUtils.info(this._textEmptyList);
451
354
  }
452
355
  else {
453
- this.controlListWithOnlyOne();
454
- }
455
- }
456
- validateDescriptionValue() {
457
- if (core.StringUtils.isEmpty(this.value)) {
458
- return;
356
+ this.controlListWithOnlyOne(focusOnInput);
459
357
  }
460
- if (!this.validateNewValue(this.value, this._currentValue)) {
461
- return;
462
- }
463
- let value = this.value;
464
- if (typeof value === "object") {
465
- return;
466
- }
467
- this.loadDescriptionValue(value);
468
358
  }
469
359
  async loadDescriptionValue(argument) {
470
360
  var _a, _b;
@@ -479,7 +369,7 @@ const EzSearch = class {
479
369
  mode: SearchMode.PREDICTIVE,
480
370
  argument
481
371
  };
482
- const source = await ((_b = this.optionLoader) === null || _b === void 0 ? void 0 : _b.call(this, searchArgument));
372
+ const source = await ((_b = this.optionLoader) === null || _b === void 0 ? void 0 : _b.call(this, searchArgument, this.contextProperties));
483
373
  if (source == undefined) {
484
374
  return;
485
375
  }
@@ -498,8 +388,17 @@ const EzSearch = class {
498
388
  this.showNoResultMessage();
499
389
  return;
500
390
  }
501
- this._currentValue = value ? Object.assign(Object.assign({}, value), { value: this.replaceHighlight(value.value), label: this.replaceHighlight(value.label) }) : value;
391
+ this._currentValue = value ? Object.assign(Object.assign({}, value), { value: searchFormatters.replaceHighlight(value.value), label: searchFormatters.replaceHighlight(value.label) }) : value;
502
392
  this.value = this._currentValue;
393
+ this.setTextInputValue();
394
+ }
395
+ setTextInputValue() {
396
+ if (this._textInput && (this._textInput.value === null || this._textInput.value === undefined)) {
397
+ if (this.value === undefined || this.value === null)
398
+ return;
399
+ const textValue = (typeof this.value === 'string') ? this.value : this.getFormattedText(this.value);
400
+ this._textInput.value = searchFormatters.replaceQuotes(textValue);
401
+ }
503
402
  }
504
403
  loadOptionValue(argument) {
505
404
  var _a;
@@ -525,6 +424,19 @@ const EzSearch = class {
525
424
  this._preSelection = undefined;
526
425
  this.updateVisibleOptions();
527
426
  }
427
+ async handleInitialValue() {
428
+ const valueIsValid = !!this.getValue(this.value);
429
+ if (!valueIsValid) {
430
+ return;
431
+ }
432
+ if (typeof this.value === "string") {
433
+ await this.handleValueAsString(this.value);
434
+ return;
435
+ }
436
+ let text = this.getFormattedText(this.value);
437
+ text = searchFormatters.replaceQuotes(text);
438
+ this._textInput.value = text;
439
+ }
528
440
  //---------------------------------------------
529
441
  // Lifecycle web component
530
442
  //---------------------------------------------
@@ -549,28 +461,40 @@ const EzSearch = class {
549
461
  }
550
462
  componentDidRender() {
551
463
  var _a;
552
- if (this._floatingID === undefined) {
553
- this._listWrapper.remove();
554
- }
555
464
  (_a = this._optionsList) === null || _a === void 0 ? void 0 : _a.querySelectorAll(".item").forEach((elem) => {
556
465
  core.ElementIDUtils.addIDInfoIfNotExists(elem, "itemSearch");
557
466
  });
558
- this.validateDescriptionValue();
559
467
  }
560
- componentDidLoad() {
468
+ async componentDidLoad() {
561
469
  this._currentValue = this.value;
562
470
  CSSVarsUtils.CSSVarsUtils.applyVarsTextInput(this.el, this._textInput);
563
- this.setInputValue(false);
564
471
  this._resizeObserver = new ResizeObserver((entries) => {
565
472
  window.requestAnimationFrame(() => {
566
473
  if (!Array.isArray(entries) || !entries.length)
567
474
  return;
568
- const { clientWidth } = this._listContainer;
569
- if (clientWidth > 0 && !!this._listWrapper) {
570
- this._listWrapper.style.width = `${clientWidth}px`;
571
- }
572
475
  });
573
476
  });
477
+ this._intersectionObserver = new IntersectionObserver((entries) => {
478
+ entries.forEach(entry => {
479
+ if (!entry.isIntersecting && this._ezPopOverPlusElement) {
480
+ this._ezPopOverPlusElement.hide();
481
+ }
482
+ });
483
+ }, { threshold: 0.1 });
484
+ if (this._textInput) {
485
+ this._intersectionObserver.observe(this._textInput);
486
+ }
487
+ await this.handleInitialValue();
488
+ if (this.autoFocus) {
489
+ requestAnimationFrame(() => {
490
+ this.setFocus({ selectText: true });
491
+ });
492
+ }
493
+ }
494
+ disconnectedCallback() {
495
+ var _a, _b;
496
+ (_a = this._resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
497
+ (_b = this._intersectionObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
574
498
  }
575
499
  //---------------------------------------------
576
500
  // Event handlers
@@ -625,7 +549,7 @@ const EzSearch = class {
625
549
  this._changeDeboucingTimeout = null;
626
550
  }
627
551
  }
628
- keyDownHandler(event) {
552
+ async keyDownHandler(event) {
629
553
  this._tabPressed = false;
630
554
  if (event.ctrlKey) {
631
555
  if (event.key === "f" || event.key === "F") {
@@ -640,14 +564,24 @@ const EzSearch = class {
640
564
  }
641
565
  switch (event.key) {
642
566
  case "ArrowDown":
643
- this.nextOption();
644
567
  event.stopPropagation();
568
+ if (this.canShowListOptions()) {
569
+ event.preventDefault();
570
+ }
571
+ if (!this.isOptionsVisible()) {
572
+ this.showOptions();
573
+ }
574
+ await this._searchList.nextOption();
645
575
  break;
646
576
  case "ArrowUp":
647
- this.previousOption();
648
577
  event.stopPropagation();
578
+ if (this.canShowListOptions()) {
579
+ event.preventDefault();
580
+ }
581
+ await this._searchList.previousOption();
649
582
  break;
650
583
  case "Enter":
584
+ this.handleEventPropagation(event);
651
585
  this.selectCurrentOption();
652
586
  break;
653
587
  case "Escape":
@@ -655,7 +589,7 @@ const EzSearch = class {
655
589
  break;
656
590
  case "Tab":
657
591
  this._tabPressed = true;
658
- this.controlListWithOnlyOne();
592
+ this.controlListWithOnlyOne(false);
659
593
  break;
660
594
  }
661
595
  //ATENÇÃO: Existe a necessidade de propagar o evento de teclado.
@@ -664,6 +598,12 @@ const EzSearch = class {
664
598
  //e o contexto pode reagir (fechar um popup por exemplo).
665
599
  //event.stopPropagation();
666
600
  }
601
+ //O evento deve ter sua propagação interrompida, apenas se a lista de opções estiver sendo exibida.
602
+ handleEventPropagation(event) {
603
+ if (this._ezPopOverPlusElement.opened && this.stopPropagateEnterKeyEvent) {
604
+ event.stopPropagation();
605
+ }
606
+ }
667
607
  onTextInputFocusOutHandler() {
668
608
  if (this.hideErrorOnFocusOut)
669
609
  this.cancelPreselection();
@@ -671,15 +611,18 @@ const EzSearch = class {
671
611
  canShowListOptions() {
672
612
  return !this._showLoading && this._visibleOptions.length > 0;
673
613
  }
614
+ canShowLoadSpinDescription() {
615
+ return this._showLoadingDescription && !this._ezPopOverPlusElement.opened;
616
+ }
617
+ onChangePreSelection(value) {
618
+ this._preSelection = value;
619
+ }
674
620
  render() {
675
621
  var _a;
676
622
  core.ElementIDUtils.addIDInfoIfNotExists(this.el, 'input');
677
- return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), class: this.suppressSearch ? "suppressed-search-input" : "", ref: elem => this._textInput = elem, "data-slave-mode": "true", enabled: this.enabled && !this.suppressSearch, onInput: event => this.onTextInputChangeHandler(event), onFocusout: () => this.onTextInputFocusOutHandler(), onKeyDown: event => this.keyDownHandler(event), label: this.label, canShowError: this.canShowError, errorMessage: this.errorMessage, mode: this.mode }, index.h("button", { class: "btn", slot: "leftIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, index.h("ez-icon", { iconName: "search" })), (((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value) && (this._criteria || this.value) || this.fromGrid)
623
+ return (index.h(index.Host, null, index.h("ez-text-input", { "data-element-id": core.ElementIDUtils.getInternalIDInfo("textInput"), class: this.suppressSearch ? "suppressed-search-input" : "", ref: elem => this._textInput = elem, "data-slave-mode": "true", enabled: this.enabled && !this.suppressSearch, onInput: event => this.onTextInputChangeHandler(event), onFocusout: () => this.onTextInputFocusOutHandler(), onKeyDown: event => this.keyDownHandler(event), label: this.label, canShowError: this.canShowError, errorMessage: this.errorMessage, mode: this.mode, alternativePlaceholder: this.alternativePlaceholder }, index.h("button", { class: "btn", slot: "leftIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.handlerIconClick() }, this.canShowLoadSpinDescription() ? index.h("div", { class: "message__loading" }) : index.h("ez-icon", { iconName: "search" })), (((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value) && (this._criteria || this.value) || this.ensureClearButtonVisible)
678
624
  ? index.h("button", { class: "btn btn__close", slot: "rightIcon", disabled: !this.enabled, tabindex: -1, onClick: () => this.clearSearch() }, index.h("ez-icon", { iconName: "close" }))
679
- : undefined), index.h("section", { class: "list-container", ref: elem => this._listContainer = elem }, index.h("div", { class: "list-wrapper", ref: elem => this._listWrapper = elem }, index.h("ul", { class: "list-options", ref: elem => this._optionsList = elem }, !this._showLoading
680
- && this._visibleOptions.length === 0
681
- && index.h("div", { class: "message" }, index.h("span", { class: "message__no-result" }, this._textEmptyList)), this._showLoading
682
- && index.h("div", { class: "message" }, index.h("div", { class: "message__loading" })), index.h("span", { class: "item__value item__value--hidden", ref: elem => this._itemValueBasis = elem }), this.canShowListOptions() && this._visibleOptions.map((opt, index) => this.buildItem(opt, index)))))));
625
+ : undefined), index.h("ez-popover-plus", { ref: elem => this._ezPopOverPlusElement = elem, autoClose: false, overlayType: "none", useAnchorSize: true, anchorElement: [this._textInput, this.el] }, index.h("search-list", { ref: (ref) => this._searchList = ref, showLoading: this._showLoading, visibleOptions: this._visibleOptions, textEmptyList: this._textEmptyList, canShowListOptions: this.canShowListOptions(), value: this.value, showOptionValue: this.showOptionValue, preSelection: this._preSelection, onChangeValue: ({ detail }) => this.selectOption(detail), onChangePreSelection: ({ detail }) => this.onChangePreSelection(detail) }))));
683
626
  }
684
627
  get el() { return index.getElement(this); }
685
628
  static get watchers() { return {
@@ -32,7 +32,7 @@ const MESSAGES = {
32
32
  PUSH_PIN_MENU: 'Fixar menu',
33
33
  };
34
34
 
35
- const ezSidebarNavigatorCss = ":host{--ez-sidebar-navigator--padding-left:var(--space--xs, 12px);--ez-sidebar-navigator--padding-right:var(--space--xs, 12px);--ez-sidebar-navigator--gap:var(--space--xs, 12px);--ez-sidebar-navigator--box-shadow:var(--shadow, 0px 0px 24px 0px #000);--ez-sidebar-navigator--background-color:var(--color--inverted);--ez-sidebar-navigator--border-radius:0px var(--border--radius-medium) var(--border--radius-medium) 0px;--ez-sidebar-navigator--height:calc(100vh - var(--space--lg, 24px));--ez-sidebar-navigator--header-gap:var(--space--xs, 12px);--ez-sidebar-navigator--footer-gap:var(--space--xs, 12px);--ez-ez-sidebar-navigator__title--font-family:var(--font-pattern, \"Roboto\");--ez-ez-sidebar-navigator__title--font-size:var(--title--medium, 16px);--ez-ez-sidebar-navigator__title--color:var(--title--primary, #2b3a54);--ez-ez-sidebar-navigator__title--font-weight:var(--text-weight--extra-large, 700)}.inverted{transform:rotate(180deg)}.ez-sidebar-navigator{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:var(--ez-sidebar-navigator--height);padding-top:var(--space--xs, 12px);padding-bottom:var(--space--xs, 12px);gap:var(--ez-sidebar-navigator--gap);padding-left:var(--ez-sidebar-navigator--padding-left);padding-right:var(--ez-sidebar-navigator--padding-right);background-color:var(--ez-sidebar-navigator--background-color);-webkit-box-shadow:var(--ez-sidebar-navigator--box-shadow);box-shadow:var(--ez-sidebar-navigator--box-shadow);border-radius:var(--ez-sidebar-navigator--border-radius)}.ez-sidebar-navigator__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;justify-content:space-between;gap:var(--ez-sidebar-navigator--header-gap)}.ez-sidebar-navigator__content{height:100%}.ez-sidebar-navigator__footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--ez-sidebar-navigator--footer-gap)}.ez-sidebar-navigator__title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-family:var(--ez-ez-sidebar-navigator__title--font-family);font-size:var(--ez-ez-sidebar-navigator__title--font-size);font-weight:var(--ez-ez-sidebar-navigator__title--font-weight);color:var(--ez-ez-sidebar-navigator__title--color)}.ez-sidebar-navigator__end{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-left:auto;gap:var(--ez-sidebar-navigator--gap)}.dynamic{position:absolute;z-index:var(--most-visible\t, 4)}.fixed{position:relative}.hidden{display:none}.show{animation:fadeIn .1s ease-in-out 1}@keyframes fadeIn{from{transform:translate(-100%)}}.sm{width:240px}.md{width:280px}.lg{width:320px}@media screen and (max-width: 991px){.responsive{width:240px}}@media screen and (min-width: 992px){.responsive{width:280px}}@media screen and (min-width: 1200px){.responsive{width:320px}}";
35
+ const ezSidebarNavigatorCss = ":host{--ez-sidebar-navigator--padding-left:var(--space--xs, 12px);--ez-sidebar-navigator--padding-right:var(--space--xs, 12px);--ez-sidebar-navigator--gap:var(--space--xs, 12px);--ez-sidebar-navigator--box-shadow:var(--shadow, 0px 0px 24px 0px #000);--ez-sidebar-navigator--background-color:var(--color--inverted);--ez-sidebar-navigator--border-radius:0px var(--border--radius-medium) var(--border--radius-medium) 0px;--ez-sidebar-navigator--height:calc(100vh - var(--space--lg, 24px));--ez-sidebar-navigator--z-index:var(--elevation--20, 20);--ez-sidebar-navigator--header-gap:var(--space--xs, 12px);--ez-sidebar-navigator--footer-gap:var(--space--xs, 12px);--ez-ez-sidebar-navigator__title--font-family:var(--font-pattern, \"Roboto\");--ez-ez-sidebar-navigator__title--font-size:var(--title--medium, 16px);--ez-ez-sidebar-navigator__title--color:var(--title--primary, #2b3a54);--ez-ez-sidebar-navigator__title--font-weight:var(--text-weight--extra-large, 700)}.inverted{transform:rotate(180deg)}.ez-sidebar-navigator{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:var(--ez-sidebar-navigator--height);padding-top:var(--space--xs, 12px);padding-bottom:var(--space--xs, 12px);outline:none;gap:var(--ez-sidebar-navigator--gap);padding-left:var(--ez-sidebar-navigator--padding-left);padding-right:var(--ez-sidebar-navigator--padding-right);background-color:var(--ez-sidebar-navigator--background-color);-webkit-box-shadow:var(--ez-sidebar-navigator--box-shadow);box-shadow:var(--ez-sidebar-navigator--box-shadow);border-radius:var(--ez-sidebar-navigator--border-radius)}.ez-sidebar-navigator__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;justify-content:space-between;gap:var(--ez-sidebar-navigator--header-gap)}.ez-sidebar-navigator__content{height:100%}.ez-sidebar-navigator__footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--ez-sidebar-navigator--footer-gap)}.ez-sidebar-navigator__title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-family:var(--ez-ez-sidebar-navigator__title--font-family);font-size:var(--ez-ez-sidebar-navigator__title--font-size);font-weight:var(--ez-ez-sidebar-navigator__title--font-weight);color:var(--ez-ez-sidebar-navigator__title--color)}.ez-sidebar-navigator__end{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-left:auto;gap:var(--ez-sidebar-navigator--gap)}.dynamic{position:absolute;z-index:var(--ez-sidebar-navigator--z-index)}.fixed{position:relative}.hidden{display:none}.show{animation:fadeIn .1s ease-in-out 1}@keyframes fadeIn{from{transform:translate(-100%)}}.sm{width:240px}.md{width:280px}.lg{width:320px}@media screen and (max-width: 991px){.responsive{width:240px}}@media screen and (min-width: 992px){.responsive{width:280px}}@media screen and (min-width: 1200px){.responsive{width:320px}}";
36
36
 
37
37
  const EzSidebarNavigator = class {
38
38
  constructor(hostRef) {