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

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 (439) 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 +15312 -69830
  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 +478 -22
  119. package/dist/collection/components/ez-grid/subcomponents/filter-column.css +4 -0
  120. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +23 -51
  121. package/dist/collection/components/ez-grid/utils/ColumnFilterManager.js +7 -54
  122. package/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource.js +20 -4
  123. package/dist/collection/components/ez-icon/ez-icon.css +156 -149
  124. package/dist/collection/components/ez-icon/ez-icon.js +28 -5
  125. package/dist/collection/components/ez-list/ez-list.css +6 -4
  126. package/dist/collection/components/ez-list/ez-list.js +301 -212
  127. package/dist/collection/components/ez-list/ezListHelper.js +85 -0
  128. package/dist/collection/components/ez-modal/ez-modal.css +7 -2
  129. package/dist/collection/components/ez-modal/ez-modal.js +18 -5
  130. package/dist/collection/components/ez-modal-container/ez-modal-container.css +3 -1
  131. package/dist/collection/components/ez-modal-container/ez-modal-container.js +6 -2
  132. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.css +3 -3
  133. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.js +1 -1
  134. package/dist/collection/components/ez-multi-selection-list/interfaces/IStaticOptionsFetchConfig.js +1 -0
  135. package/dist/collection/components/ez-number-input/ez-number-input.css +8 -0
  136. package/dist/collection/components/ez-number-input/ez-number-input.js +67 -1
  137. package/dist/collection/components/ez-popover-plus/ez-popover-plus.css +3 -0
  138. package/dist/collection/components/ez-popover-plus/ez-popover-plus.js +434 -0
  139. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.css +67 -0
  140. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +524 -0
  141. package/dist/collection/components/ez-popup/ez-popup.css +8 -3
  142. package/dist/collection/components/ez-popup/ez-popup.js +48 -4
  143. package/dist/collection/components/ez-scroller/ez-scroller.css +4 -0
  144. package/dist/collection/components/ez-search/ez-search.css +2 -210
  145. package/dist/collection/components/ez-search/ez-search.js +234 -204
  146. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.css +227 -0
  147. package/dist/collection/components/ez-search/subcomponent/search-list/search-list.js +318 -0
  148. package/dist/collection/components/ez-search/utils/searchFormatters.js +18 -0
  149. package/dist/collection/components/ez-search-plus/ez-search-plus.css +373 -0
  150. package/dist/collection/components/ez-search-plus/ez-search-plus.js +960 -0
  151. package/dist/collection/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.css +221 -0
  152. package/dist/collection/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.js +278 -0
  153. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.css +3 -0
  154. package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.js +1 -1
  155. package/dist/collection/components/ez-sidebar-navigator/ez-sidebar-navigator.css +4 -1
  156. package/dist/collection/components/ez-skeleton/ez-skeleton.constants.js +25 -1
  157. package/dist/collection/components/ez-skeleton/ez-skeleton.css +140 -78
  158. package/dist/collection/components/ez-skeleton/ez-skeleton.js +210 -46
  159. package/dist/collection/components/ez-split-button/ez-split-button.css +53 -15
  160. package/dist/collection/components/ez-split-button/ez-split-button.js +90 -13
  161. package/dist/collection/components/ez-split-panel/ez-split-panel.css +15 -0
  162. package/dist/collection/components/ez-split-panel/ez-split-panel.js +106 -5
  163. package/dist/collection/components/ez-split-panel/interfaces/IPanelSizeInfo.js +1 -0
  164. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.css +14 -2
  165. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.js +22 -1
  166. package/dist/collection/components/ez-text-area/ez-text-area.css +78 -29
  167. package/dist/collection/components/ez-text-area/ez-text-area.js +151 -6
  168. package/dist/collection/components/ez-text-input/ez-text-input.css +133 -93
  169. package/dist/collection/components/ez-text-input/ez-text-input.js +231 -29
  170. package/dist/collection/components/ez-time-input/ez-time-input.js +43 -1
  171. package/dist/collection/components/ez-tooltip/ez-tooltip.css +62 -0
  172. package/dist/collection/components/ez-tooltip/ez-tooltip.js +310 -0
  173. package/dist/collection/components/ez-tree/ez-tree.js +21 -1
  174. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +3 -3
  175. package/dist/collection/sw.js +46 -0
  176. package/dist/collection/utils/CSSVarsUtils.js +1 -0
  177. package/dist/collection/utils/FocusResolver.js +31 -0
  178. package/dist/collection/utils/constants.js +2 -0
  179. package/dist/collection/utils/form/DataBinder.js +65 -21
  180. package/dist/collection/utils/form/FormMetadata.js +2 -1
  181. package/dist/collection/utils/form/interfaces/FormLayout.js +5 -0
  182. package/dist/collection/utils/form/interfaces/index.js +1 -1
  183. package/dist/collection/utils/form/test/DataBinder.test.js +14 -0
  184. package/dist/collection/utils/index.js +3 -0
  185. package/dist/collection/utils/interfaces/AbstractFieldMetadata.js +1 -1
  186. package/dist/collection/utils/search/types.js +7 -0
  187. package/dist/collection/utils/searchColumn/search-column.js +35 -0
  188. package/dist/collection/utils/validators/recordvalidator/IInvalidCells.js +1 -0
  189. package/dist/collection/utils/validators/recordvalidator/RecordValidationProcessor.js +7 -1
  190. package/dist/custom-elements/index.d.ts +54 -0
  191. package/dist/custom-elements/index.js +20058 -70949
  192. package/dist/esm/{CSSVarsUtils-71ce76be.js → CSSVarsUtils-acba92d7.js} +1 -0
  193. package/dist/esm/FocusResolver-1ccbf850.js +33 -0
  194. package/dist/esm/FormLayout-071d324c.js +27 -0
  195. package/dist/esm/constants-b036528f.js +7 -0
  196. package/dist/esm/ez-actions-button.entry.js +6 -5
  197. package/dist/esm/ez-avatar.entry.js +46 -0
  198. package/dist/esm/ez-badge.entry.js +14 -2
  199. package/dist/esm/ez-button.entry.js +11 -5
  200. package/dist/esm/ez-card-item_2.entry.js +262 -0
  201. package/dist/esm/ez-chart.entry.js +3 -3
  202. package/dist/esm/ez-check.entry.js +18 -10
  203. package/dist/esm/ez-chip.entry.js +1 -1
  204. package/dist/esm/ez-collapsible-box.entry.js +2 -2
  205. package/dist/esm/ez-combo-box-list_3.entry.js +381 -0
  206. package/dist/esm/ez-combo-box.entry.js +81 -159
  207. package/dist/esm/ez-date-input.entry.js +16 -19
  208. package/dist/esm/ez-date-time-input.entry.js +15 -20
  209. package/dist/esm/ez-dialog.entry.js +19 -9
  210. package/dist/esm/ez-double-list.entry.js +283 -0
  211. package/dist/esm/ez-dropdown.entry.js +14 -8
  212. package/dist/esm/ez-filter-input.entry.js +125 -0
  213. package/dist/esm/ez-form-view.entry.js +42 -28
  214. package/dist/esm/ez-form.entry.js +88 -326
  215. package/dist/esm/ez-grid.entry.js +15275 -69793
  216. package/dist/esm/ez-icon.entry.js +12 -6
  217. package/dist/esm/ez-list.entry.js +258 -211
  218. package/dist/esm/ez-modal-container.entry.js +7 -3
  219. package/dist/esm/ez-modal.entry.js +17 -4
  220. package/dist/esm/ez-multi-selection-list.entry.js +2 -2
  221. package/dist/esm/ez-number-input.entry.js +16 -3
  222. package/dist/esm/ez-popover-plus_3.entry.js +232 -0
  223. package/dist/esm/ez-popup.entry.js +29 -3
  224. package/dist/esm/ez-scroller_2.entry.js +3 -3
  225. package/dist/esm/ez-search-plus.entry.js +393 -0
  226. package/dist/esm/ez-search-result-list.entry.js +93 -0
  227. package/dist/esm/ez-search.entry.js +135 -192
  228. package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
  229. package/dist/esm/ez-skeleton.entry.js +118 -36
  230. package/dist/esm/ez-split-button.entry.js +16 -7
  231. package/dist/esm/ez-split-item.entry.js +7 -4
  232. package/dist/esm/ez-split-panel.entry.js +69 -7
  233. package/dist/esm/ez-text-area.entry.js +91 -8
  234. package/dist/esm/ez-text-input.entry.js +150 -31
  235. package/dist/esm/ez-time-input.entry.js +9 -2
  236. package/dist/esm/ez-tooltip.entry.js +131 -0
  237. package/dist/esm/ez-tree.entry.js +5 -4
  238. package/dist/esm/ezListHelper-00fb9b8d.js +87 -0
  239. package/dist/esm/ezui.js +1 -1
  240. package/dist/esm/filter-column.entry.js +24 -52
  241. package/dist/esm/floating-ui.dom.esm-5d3da819.js +1398 -0
  242. package/dist/esm/index-baa5e267.js +36 -8
  243. package/dist/esm/loader.js +1 -1
  244. package/dist/esm/search-column-e609d513.js +495 -0
  245. package/dist/esm/searchFormatters-8229207e.js +20 -0
  246. package/dist/ezui/ezui.esm.js +1 -1
  247. package/dist/ezui/p-07894c4a.entry.js +1 -0
  248. package/dist/ezui/p-0d9856a4.entry.js +1 -0
  249. package/dist/ezui/p-1bcfd88c.entry.js +1 -0
  250. package/dist/ezui/p-1eb34cad.entry.js +1 -0
  251. package/dist/ezui/p-20c024f7.entry.js +1 -0
  252. package/dist/ezui/p-26685c50.entry.js +1 -0
  253. package/dist/ezui/p-288631d1.entry.js +1 -0
  254. package/dist/ezui/p-2b42abbb.entry.js +1 -0
  255. package/dist/ezui/p-2b4df33d.entry.js +1 -0
  256. package/dist/ezui/p-30ffb9ed.js +1 -0
  257. package/dist/ezui/p-33326ac5.entry.js +1 -0
  258. package/dist/ezui/p-341da682.entry.js +1 -0
  259. package/dist/ezui/p-35115d5d.entry.js +1 -0
  260. package/dist/ezui/p-3ba9565c.entry.js +1 -0
  261. package/dist/ezui/p-40a60148.js +1 -0
  262. package/dist/ezui/p-496f7832.entry.js +1 -0
  263. package/dist/ezui/p-4b67138e.entry.js +1 -0
  264. package/dist/ezui/p-4bd6dd6a.entry.js +1 -0
  265. package/dist/ezui/p-4d30b703.entry.js +1 -0
  266. package/dist/ezui/p-57363cfd.entry.js +1 -0
  267. package/dist/ezui/p-58f69d24.entry.js +1 -0
  268. package/dist/ezui/{p-84e439b9.entry.js → p-5dde9df3.entry.js} +1 -1
  269. package/dist/ezui/p-5eea9886.js +1 -0
  270. package/dist/ezui/p-69937816.entry.js +1 -0
  271. package/dist/ezui/p-7019f782.entry.js +1 -0
  272. package/dist/ezui/p-79044c3e.entry.js +1 -0
  273. package/dist/ezui/p-7e677b7b.entry.js +1 -0
  274. package/dist/ezui/p-7eae6986.entry.js +1 -0
  275. package/dist/ezui/p-80dfc50b.js +1 -0
  276. package/dist/ezui/p-9478b13b.entry.js +1 -0
  277. package/dist/ezui/p-9567b31a.entry.js +1 -0
  278. package/dist/ezui/p-97c7cf51.entry.js +1 -0
  279. package/dist/ezui/p-998afb6a.entry.js +1 -0
  280. package/dist/ezui/p-9c5cd3b2.entry.js +1 -0
  281. package/dist/ezui/p-a148e994.entry.js +1 -0
  282. package/dist/ezui/p-a3bf8cf1.entry.js +1 -0
  283. package/dist/ezui/p-b81881ac.entry.js +1 -0
  284. package/dist/ezui/p-bac0f920.entry.js +1 -0
  285. package/dist/ezui/p-bff24a7b.js +1 -0
  286. package/dist/ezui/p-cb75eb46.entry.js +1 -0
  287. package/dist/ezui/{p-5b205c80.entry.js → p-d47dabdf.entry.js} +1 -1
  288. package/dist/ezui/p-da1b4a38.entry.js +1 -0
  289. package/dist/ezui/p-dc628ed3.js +1 -0
  290. package/dist/ezui/p-dc73e1fe.entry.js +1 -0
  291. package/dist/ezui/{p-17be134a.entry.js → p-e06a9886.entry.js} +1 -1
  292. package/dist/ezui/p-e07e4671.js +1 -0
  293. package/dist/ezui/p-e09514b6.entry.js +309 -0
  294. package/dist/ezui/p-e6a9041d.entry.js +1 -0
  295. package/dist/ezui/p-e75c7a23.entry.js +1 -0
  296. package/dist/ezui/p-ec7db713.js +1 -0
  297. package/dist/ezui/p-fa6732f2.entry.js +1 -0
  298. package/dist/types/components/ez-avatar/ez-avatar.d.ts +24 -0
  299. package/dist/types/components/ez-badge/ez-badge.d.ts +5 -0
  300. package/dist/types/components/ez-button/ez-button.d.ts +2 -1
  301. package/dist/types/components/ez-calendar/ez-calendar.d.ts +3 -3
  302. package/dist/types/components/ez-card-item/ez-card-item.d.ts +5 -0
  303. package/dist/types/components/ez-chart/interfaces/ChartAxis.d.ts +2 -0
  304. package/dist/types/components/ez-chart/interfaces/ChartTypeValue.d.ts +1 -0
  305. package/dist/types/components/ez-check/ez-check.d.ts +7 -2
  306. package/dist/types/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.d.ts +104 -0
  307. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +19 -15
  308. package/dist/types/components/ez-date-input/ez-date-input.d.ts +12 -3
  309. package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +12 -3
  310. package/dist/types/components/ez-dialog/ez-dialog.d.ts +3 -1
  311. package/dist/types/components/ez-double-list/doubleListHelper.d.ts +10 -0
  312. package/dist/types/components/ez-double-list/ez-double-list.d.ts +87 -0
  313. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +4 -0
  314. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +4 -4
  315. package/dist/types/components/ez-filter-input/ez-filter-input.d.ts +6 -1
  316. package/dist/types/components/ez-form/ez-form.d.ts +23 -1
  317. package/dist/types/components/ez-form-view/custom-input/ez-custom-form-input.d.ts +7 -1
  318. package/dist/types/components/ez-form-view/ez-form-view.d.ts +4 -0
  319. package/dist/types/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.d.ts +2 -1
  320. package/dist/types/components/ez-form-view/fieldbuilder/templates/SearchInputPlus.tpl.d.ts +2 -0
  321. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +1 -1
  322. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +84 -5
  323. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +47 -7
  324. package/dist/types/components/ez-grid/controller/ag-grid/DataSource.d.ts +26 -2
  325. package/dist/types/components/ez-grid/controller/ag-grid/GridEditionManager.d.ts +34 -7
  326. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.d.ts +4 -1
  327. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.d.ts +1 -1
  328. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  329. package/dist/types/components/ez-grid/controller/ag-grid/components/cellRendererStatus.d.ts +1 -1
  330. package/dist/types/components/ez-grid/controller/ag-grid/components/selectionHeader.d.ts +1 -1
  331. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellEditor.d.ts +2 -1
  332. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellRender.d.ts +1 -1
  333. package/dist/types/components/ez-grid/controller/ag-grid/editor/IUICellEditor.d.ts +1 -0
  334. package/dist/types/components/ez-grid/controller/ag-grid/editor/templates/SearchPlus.tpl.d.ts +3 -0
  335. package/dist/types/components/ez-grid/controller/ag-grid/mock/Server.d.ts +1 -1
  336. package/dist/types/components/ez-grid/ez-grid.d.ts +74 -1
  337. package/dist/types/components/ez-grid/subcomponents/filter-column.d.ts +1 -11
  338. package/dist/types/components/ez-grid/utils/ColumnFilterManager.d.ts +1 -1
  339. package/dist/types/components/ez-grid/utils/InMemoryFilterColumnDataSource.d.ts +3 -0
  340. package/dist/types/components/ez-icon/ez-icon.d.ts +5 -0
  341. package/dist/types/components/ez-list/ez-list.d.ts +23 -2
  342. package/dist/types/components/ez-list/ezListHelper.d.ts +20 -0
  343. package/dist/types/components/ez-modal/ez-modal.d.ts +4 -1
  344. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +2 -0
  345. package/dist/types/components/ez-multi-selection-list/interfaces/IMultiSelectionListDataSource.d.ts +2 -1
  346. package/dist/types/components/ez-multi-selection-list/interfaces/IStaticOptionsFetchConfig.d.ts +3 -0
  347. package/dist/types/components/ez-number-input/ez-number-input.d.ts +12 -0
  348. package/dist/types/components/ez-popover-plus/ez-popover-plus.d.ts +74 -0
  349. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +89 -0
  350. package/dist/types/components/ez-popup/ez-popup.d.ts +10 -1
  351. package/dist/types/components/ez-search/ez-search.d.ts +37 -18
  352. package/dist/types/components/ez-search/subcomponent/search-list/search-list.d.ts +29 -0
  353. package/dist/types/components/ez-search/utils/searchFormatters.d.ts +2 -0
  354. package/dist/types/components/ez-search-plus/ez-search-plus.d.ts +186 -0
  355. package/dist/types/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.d.ts +26 -0
  356. package/dist/types/components/ez-skeleton/ez-skeleton.constants.d.ts +55 -1
  357. package/dist/types/components/ez-skeleton/ez-skeleton.d.ts +50 -22
  358. package/dist/types/components/ez-split-button/ez-split-button.d.ts +15 -3
  359. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +11 -0
  360. package/dist/types/components/ez-split-panel/interfaces/IPanelSizeInfo.d.ts +9 -0
  361. package/dist/types/components/ez-split-panel/structure/item/ez-split-item.d.ts +5 -0
  362. package/dist/types/components/ez-text-area/ez-text-area.d.ts +25 -0
  363. package/dist/types/components/ez-text-input/ez-text-input.d.ts +37 -3
  364. package/dist/types/components/ez-time-input/ez-time-input.d.ts +8 -0
  365. package/dist/types/components/ez-tooltip/ez-tooltip.d.ts +57 -0
  366. package/dist/types/components/ez-tree/ez-tree.d.ts +4 -0
  367. package/dist/types/components/ez-tree/interfaces/ITreeItem.d.ts +1 -0
  368. package/dist/types/components/ez-tree/subcomponents/TreeItem.d.ts +1 -0
  369. package/dist/types/components.d.ts +1386 -58
  370. package/dist/types/utils/FocusResolver.d.ts +5 -0
  371. package/dist/types/utils/constants.d.ts +2 -0
  372. package/dist/types/utils/customEditor/interfaces/ICustomEditor.d.ts +2 -0
  373. package/dist/types/utils/form/DataBinder.d.ts +7 -2
  374. package/dist/types/utils/form/interfaces/FormLayout.d.ts +4 -0
  375. package/dist/types/utils/form/interfaces/index.d.ts +1 -0
  376. package/dist/types/utils/index.d.ts +3 -0
  377. package/dist/types/utils/search/types.d.ts +12 -0
  378. package/dist/types/utils/searchColumn/search-column.d.ts +9 -0
  379. package/dist/types/utils/validators/recordvalidator/IInvalidCells.d.ts +5 -0
  380. package/dist/types/utils/validators/recordvalidator/RecordValidationProcessor.d.ts +1 -1
  381. package/package.json +16 -7
  382. package/react/components.d.ts +63 -54
  383. package/react/components.js +9 -0
  384. package/react/components.js.map +1 -1
  385. package/react/react-component-lib/createComponent.d.ts +1 -1
  386. package/react/react-component-lib/createComponent.js.map +1 -1
  387. package/react/react-component-lib/createOverlayComponent.js.map +1 -1
  388. package/react/react-component-lib/interfaces.js +1 -0
  389. package/react/react-component-lib/utils/attachProps.d.ts +1 -1
  390. package/react/react-component-lib/utils/attachProps.js.map +1 -1
  391. package/react/react-component-lib/utils/dev.js.map +1 -1
  392. package/react/react-component-lib/utils/index.d.ts +2 -2
  393. package/react/react-component-lib/utils/index.js.map +1 -1
  394. package/dist/cjs/ICustomRender-6fafffce.js +0 -13
  395. package/dist/cjs/RecordValidationProcessor-4c893e04.js +0 -102
  396. package/dist/cjs/ez-card-item_3.cjs.entry.js +0 -183
  397. package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +0 -206
  398. package/dist/esm/ICustomRender-875b5a40.js +0 -13
  399. package/dist/esm/RecordValidationProcessor-b00b8b77.js +0 -99
  400. package/dist/esm/constants-4e0d35b7.js +0 -5
  401. package/dist/esm/ez-card-item_3.entry.js +0 -177
  402. package/dist/esm/ez-custom-form-input_2.entry.js +0 -201
  403. package/dist/ezui/p-04f24913.js +0 -1
  404. package/dist/ezui/p-05e1f4e7.js +0 -1
  405. package/dist/ezui/p-072e6347.entry.js +0 -1
  406. package/dist/ezui/p-1285c902.entry.js +0 -1
  407. package/dist/ezui/p-13d2fe2d.entry.js +0 -1
  408. package/dist/ezui/p-2097d0cf.entry.js +0 -1
  409. package/dist/ezui/p-32e553e5.entry.js +0 -304
  410. package/dist/ezui/p-34b6916c.entry.js +0 -1
  411. package/dist/ezui/p-3b4eeeb6.entry.js +0 -1
  412. package/dist/ezui/p-3faa2b46.entry.js +0 -1
  413. package/dist/ezui/p-42533ea4.entry.js +0 -1
  414. package/dist/ezui/p-4607fb89.js +0 -1
  415. package/dist/ezui/p-49456b34.entry.js +0 -1
  416. package/dist/ezui/p-4d5235f1.entry.js +0 -1
  417. package/dist/ezui/p-5bd5e68f.entry.js +0 -1
  418. package/dist/ezui/p-650e4b6d.entry.js +0 -1
  419. package/dist/ezui/p-784fe207.entry.js +0 -1
  420. package/dist/ezui/p-7922142b.entry.js +0 -1
  421. package/dist/ezui/p-7af81663.entry.js +0 -1
  422. package/dist/ezui/p-7bc07c31.entry.js +0 -1
  423. package/dist/ezui/p-85c8baae.entry.js +0 -1
  424. package/dist/ezui/p-8888d9ed.entry.js +0 -1
  425. package/dist/ezui/p-9050d2cd.entry.js +0 -1
  426. package/dist/ezui/p-922ac38b.entry.js +0 -1
  427. package/dist/ezui/p-9e11fc7b.js +0 -1
  428. package/dist/ezui/p-a31b9c90.entry.js +0 -1
  429. package/dist/ezui/p-aba3da00.entry.js +0 -1
  430. package/dist/ezui/p-af95cd16.entry.js +0 -1
  431. package/dist/ezui/p-bae4e180.entry.js +0 -1
  432. package/dist/ezui/p-baf80b13.entry.js +0 -1
  433. package/dist/ezui/p-bcb53f27.entry.js +0 -1
  434. package/dist/ezui/p-bf79aaa1.entry.js +0 -1
  435. package/dist/ezui/p-cdc472cc.entry.js +0 -1
  436. package/dist/ezui/p-d9401ea0.entry.js +0 -1
  437. package/dist/ezui/p-e85c48d7.entry.js +0 -1
  438. package/dist/ezui/p-ecc2c1ec.entry.js +0 -1
  439. package/dist/ezui/p-fcf0acce.entry.js +0 -1
@@ -1,61 +1,143 @@
1
1
  import { r as registerInstance, h } from './index-baa5e267.js';
2
2
 
3
- const ALLOWED_ANIMATIONS = ['progress', 'progress-dark', 'pulse', 'false'];
3
+ const ALLOWED_ANIMATIONS = ['progress', 'pulse', 'false'];
4
+ const ALLOWED_VARIANTS = ['circle', 'rect', 'text'];
5
+ const DEFAULT_VALUES = {
6
+ COUNT: 1,
7
+ VARIANT: 'text',
8
+ ANIMATION: 'progress'
9
+ };
10
+ const SKELETON_ARIA = {
11
+ DATA_BUSY: 'true',
12
+ DATA_VALUEMIN: '0',
13
+ DATA_VALUEMAX: '100',
14
+ DATA_VALUETEXT: 'Loading...',
15
+ ROLE: 'progressbar',
16
+ TABINDEX: '0'
17
+ };
18
+ const VARIANT_TYPES = {
19
+ CIRCLE: 'circle',
20
+ RECT: 'rect',
21
+ TEXT: 'text'
22
+ };
23
+ const ANIMATION_TYPES = {
24
+ PROGRESS: 'progress',
25
+ PULSE: 'pulse',
26
+ FALSE: 'false'
27
+ };
4
28
 
5
- const ezSkeletonCss = ".skeleton {\n\tbox-sizing: border-box;\n\toutline: none;\n\toverflow: hidden;\n\tposition: relative;\n\n\tbackground:var(--skeleton-background, #eff1f6) no-repeat;\n\n\tborder-radius: var(--skeleton-border-radius, 4px);\n\twidth: var(--skeleton-width, 100%);\n\theight: var(--skeleton-height, 20px);\n\tdisplay: inline-block;\n\tmargin-bottom: var(--skeleton-margin-bottom, 0px);\n\twill-change: transform;\n\n\t&:after,\n\t&:before {\n\t\tbox-sizing: border-box;\n\t}\n\n\t&.circle {\n\t\twidth: var(--skeleton-width, 40px);\n\t\theight: var(--skeleton-height, 40px);\n\t\tmargin-bottom: var(--skeleton-margin-bottom, 5px);\n\t\tborder-radius: var(--skeleton-border-radius, 50%);\n\t}\n\n\t&.rect {\n\t\tborder-radius: var(--skeleton-border-radius, 0px);\n\t}\n\n\t&.progress,\n\t&.progress-dark {\n\t\tanimation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n\t\tbackground-size: 200px 100%;\n\t}\n\n\t&.progress {\n\t\tbackground-image: linear-gradient(\n\t\t\t90deg,\n\t\t\trgba(255, 255, 255, 0),\n\t\t\trgba(255, 255, 255, 0.6),\n\t\t\trgba(255, 255, 255, 0)\n\t\t);\n\t}\n\n\t&.progress-dark {\n\t\tbackground-image: linear-gradient(\n\t\t\t90deg,\n\t\t\ttransparent,\n\t\t\trgba(0, 0, 0, 0.2),\n\t\t\ttransparent\n\t\t);\n\t}\n\n\t&.pulse {\n\t\tanimation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n\t\tanimation-delay: 0.5s;\n\t}\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\t&.pulse,\n\t\t&.progress-dark,\n\t\t&.progress {\n\t\t\tanimation: none;\n\t\t}\n\n\t\t&.progress,\n\t\t&.progress-dark {\n\t\t\tbackground-image: none;\n\t\t}\n\t}\n}\n\n@keyframes progress {\n\t0% {\n\t\tbackground-position: -200px 0;\n\t}\n\t100% {\n\t\tbackground-position: calc(200px + 100%) 0;\n\t}\n}\n\n@keyframes pulse {\n\t0% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0.4;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}";
29
+ const ezSkeletonCss = ".skeleton {\n background: var(--skeleton-background, #f0f3f7) no-repeat;\n border-radius: var(--skeleton-border-radius, 12px);\n width: var(--skeleton-width, 100%);\n height: var(--skeleton-height, 20px);\n display: inline-block;\n margin-bottom: var(--skeleton-margin-bottom, 0px);\n\tmargin-top: var(--skeleton-margin-top, 0px);\n\tmargin-right: var(--skeleton-margin-right, 0px);\n\tmargin-left: var(--skeleton-margin-left, 0px);\n box-sizing: border-box;\n outline: none;\n overflow: hidden;\n position: relative;\n -webkit-will-change: transform;\n -moz-will-change: transform;\n will-change: transform;\n\n &:after,\n &:before {\n box-sizing: border-box;\n }\n\n &.circle {\n width: var(--skeleton-width, 40px);\n height: var(--skeleton-height, 40px);\n margin-bottom: var(--skeleton-margin-bottom, 0px);\n border-radius: var(--skeleton-border-radius, 50%);\n }\n\n &.rect {\n border-radius: var(--skeleton-border-radius, 0px);\n }\n\n &.progress,\n &.progress-dark {\n -webkit-animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n -moz-animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n -ms-animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n animation: progress 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n background-size: 200px 100%;\n }\n\n &.progress {\n background-image: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));\n background-image: -moz-linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));\n background-image: -ms-linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));\n background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), var(--skeleton-background-image, #e4eaf1), rgba(255, 255, 255, 0));\n }\n\n &.progress-dark {\n background-image: -webkit-linear-gradient(90deg, transparent, hsla(0, 0%, 0%, 0.2), transparent);\n background-image: -moz-linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);\n background-image: -ms-linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);\n background-image: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.2), transparent);\n }\n\n &.pulse {\n -webkit-animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n -moz-animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n -ms-animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n animation: pulse 1.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n animation-delay: 0.5s;\n }\n\n @media (prefers-reduced-motion: reduce) {\n &.pulse,\n &.progress-dark,\n &.progress {\n animation: none;\n }\n\n &.progress,\n &.progress-dark {\n background-image: none;\n }\n }\n}\n\n@-webkit-keyframes progress {\n 0% {\n background-position: -200px 0;\n }\n 100% {\n background-position: calc(200px + 100%) 0;\n }\n}\n@-moz-keyframes progress {\n 0% {\n background-position: -200px 0;\n }\n 100% {\n background-position: calc(200px + 100%) 0;\n }\n}\n@-ms-keyframes progress {\n 0% {\n background-position: -200px 0;\n }\n 100% {\n background-position: calc(200px + 100%) 0;\n }\n}\n@keyframes progress {\n 0% {\n background-position: -200px 0;\n }\n 100% {\n background-position: calc(200px + 100%) 0;\n }\n}\n\n@-webkit-keyframes pulse {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.4;\n }\n 100% {\n opacity: 1;\n }\n}\n@-moz-keyframes pulse {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.4;\n }\n 100% {\n opacity: 1;\n }\n}\n@-ms-keyframes pulse {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.4;\n }\n 100% {\n opacity: 1;\n }\n}\n@keyframes pulse {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.4;\n }\n 100% {\n opacity: 1;\n }\n}\n";
6
30
 
7
31
  const EzSkeleton = class {
8
32
  constructor(hostRef) {
9
33
  registerInstance(this, hostRef);
10
34
  this.items = [];
11
- this.count = 1;
12
- this.variant = 'text';
35
+ this.template = undefined;
36
+ this.count = DEFAULT_VALUES.COUNT;
37
+ this.variant = DEFAULT_VALUES.VARIANT;
13
38
  this.width = null;
14
39
  this.height = null;
40
+ this.marginTop = null;
41
+ this.marginRight = null;
15
42
  this.marginBottom = null;
16
- this.animation = 'progress';
43
+ this.marginLeft = null;
44
+ this.animation = DEFAULT_VALUES.ANIMATION;
17
45
  }
18
46
  componentWillLoad() {
19
- this.init();
47
+ this.initializeItems();
20
48
  }
21
49
  componentWillUpdate() {
22
- this.init();
50
+ this.initializeItems();
23
51
  }
24
- init() {
25
- this.items.length = this.count;
26
- this.items.fill(1);
27
- if (!ALLOWED_ANIMATIONS.includes(this.animation)) {
28
- this.animation = 'progress';
29
- }
52
+ initializeItems() {
53
+ this.items = Array(this.count).fill(1);
30
54
  }
31
- get style() {
32
- let dimenssionsStyles = {
33
- width: null,
34
- height: null,
35
- marginBottom: null
36
- };
37
- if (this.width) {
38
- dimenssionsStyles.width = this.width;
55
+ getSkeletonConfig(props) {
56
+ if (!props)
57
+ return;
58
+ if ((props === null || props === void 0 ? void 0 : props.variant) == VARIANT_TYPES.CIRCLE) {
59
+ props.width = props.width || 'var(--skeleton-width, 40px)';
60
+ props.height = props.height || 'var(--skeleton-height, 40px)';
39
61
  }
40
- if (this.height) {
41
- dimenssionsStyles.height = this.height;
62
+ else {
63
+ props.width = props.width || 'var(--skeleton-width, 100%)';
42
64
  }
43
- if (this.marginBottom) {
44
- dimenssionsStyles.marginBottom = this.marginBottom;
65
+ const width = (props.marginRight || props.marginLeft) && props.width && props.variant != VARIANT_TYPES.CIRCLE
66
+ ? `calc(${props.width} ${props.marginRight ? `- ${props.marginRight}` : ''} ${props.marginLeft ? `- ${props.marginLeft}` : ''})`
67
+ : props.width;
68
+ return {
69
+ skeletonClasses: {
70
+ skeleton: true,
71
+ circle: props.variant === VARIANT_TYPES.CIRCLE,
72
+ rect: props.variant === VARIANT_TYPES.RECT,
73
+ progress: props.animation === ANIMATION_TYPES.PROGRESS,
74
+ pulse: props.animation === ANIMATION_TYPES.PULSE,
75
+ },
76
+ styles: {
77
+ width,
78
+ height: props.height,
79
+ marginTop: props.marginTop,
80
+ marginRight: props.marginRight,
81
+ marginBottom: props.marginBottom,
82
+ marginLeft: props.marginLeft,
83
+ },
84
+ };
85
+ }
86
+ validateVariant(variant) {
87
+ return ALLOWED_VARIANTS.includes(variant) ? variant : DEFAULT_VALUES.VARIANT;
88
+ }
89
+ validateAnimation(animation) {
90
+ return ALLOWED_ANIMATIONS.includes(animation) ? animation : DEFAULT_VALUES.ANIMATION;
91
+ }
92
+ renderSkeletonTemplate(templateContent) {
93
+ var _a;
94
+ const innerHTMLTemp = ((_a = templateContent['$attrs']) === null || _a === void 0 ? void 0 : _a.innerHTML) || templateContent;
95
+ if (typeof innerHTMLTemp === 'string') {
96
+ const tempDiv = document.createElement('div');
97
+ tempDiv.innerHTML = innerHTMLTemp;
98
+ const elements = (tempDiv === null || tempDiv === void 0 ? void 0 : tempDiv.querySelectorAll(':not(.skeleton) > *')) || [];
99
+ return Array.from(elements).map(element => {
100
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
101
+ if ((_a = element === null || element === void 0 ? void 0 : element.classList) === null || _a === void 0 ? void 0 : _a.contains('skeleton')) {
102
+ const skeletonConfig = this.getSkeletonConfig({
103
+ variant: this.validateVariant(((_b = element.getAttribute('variant')) === null || _b === void 0 ? void 0 : _b.replace(/[{}]/g, '')) || this.variant),
104
+ width: ((_c = element.getAttribute('width')) === null || _c === void 0 ? void 0 : _c.replace(/[{}]/g, '')) || this.width,
105
+ height: ((_d = element.getAttribute('height')) === null || _d === void 0 ? void 0 : _d.replace(/[{}]/g, '')) || this.height,
106
+ marginTop: ((_e = element.getAttribute('marginTop')) === null || _e === void 0 ? void 0 : _e.replace(/[{}]/g, '')) || this.marginTop,
107
+ marginLeft: ((_f = element.getAttribute('marginLeft')) === null || _f === void 0 ? void 0 : _f.replace(/[{}]/g, '')) || this.marginLeft,
108
+ marginRight: ((_g = element.getAttribute('marginRight')) === null || _g === void 0 ? void 0 : _g.replace(/[{}]/g, '')) || this.marginRight,
109
+ marginBottom: ((_h = element.getAttribute('marginBottom')) === null || _h === void 0 ? void 0 : _h.replace(/[{}]/g, '')) || this.marginBottom,
110
+ animation: this.validateAnimation(((_j = element.getAttribute('animation')) === null || _j === void 0 ? void 0 : _j.replace(/[{}]/g, '')) || this.animation),
111
+ });
112
+ const count = Number((_k = element.getAttribute('count')) === null || _k === void 0 ? void 0 : _k.replace(/[{}]/g, '')) || 1;
113
+ return Array(count)
114
+ .fill(1)
115
+ .map((_, index) => this.renderSkeletonItem(index, skeletonConfig));
116
+ }
117
+ return h("div", { innerHTML: element.outerHTML });
118
+ });
45
119
  }
46
- return dimenssionsStyles;
120
+ return templateContent;
121
+ }
122
+ renderSkeletonItem(index, skeletonConfig) {
123
+ const config = skeletonConfig ||
124
+ this.getSkeletonConfig({
125
+ variant: this.validateVariant(this.variant),
126
+ animation: this.validateAnimation(this.animation),
127
+ width: this.width,
128
+ height: this.height,
129
+ marginTop: this.marginTop,
130
+ marginRight: this.marginRight,
131
+ marginBottom: this.marginBottom,
132
+ marginLeft: this.marginLeft,
133
+ });
134
+ return this.renderSkeletonSpan(index, config);
135
+ }
136
+ renderSkeletonSpan(index, config) {
137
+ return (h("span", { key: index, class: config === null || config === void 0 ? void 0 : config.skeletonClasses, style: config === null || config === void 0 ? void 0 : config.styles, "data-busy": SKELETON_ARIA.DATA_BUSY, "data-valuemin": SKELETON_ARIA.DATA_VALUEMIN, "data-valuemax": SKELETON_ARIA.DATA_VALUEMAX, "data-valuetext": SKELETON_ARIA.DATA_VALUETEXT, role: SKELETON_ARIA.ROLE, tabindex: SKELETON_ARIA.TABINDEX }));
47
138
  }
48
139
  render() {
49
- return this.items.map((_, index) => {
50
- return (h("span", { key: index, class: {
51
- circle: this.variant === 'circle',
52
- rect: this.variant === 'rect',
53
- progress: this.animation === 'progress',
54
- 'progress-dark': this.animation === 'progress-dark',
55
- pulse: this.animation === 'pulse',
56
- skeleton: true
57
- }, "data-busy": "true", "data-valuemin": "0", "data-valuemax": "100", "data-valuetext": "Loading...", role: "progressbar", tabindex: "0", style: this.style }));
58
- });
140
+ return !this.template ? this.items.map((_, index) => this.renderSkeletonItem(index)) : this.renderSkeletonTemplate(this.template);
59
141
  }
60
142
  };
61
143
  EzSkeleton.style = ezSkeletonCss;
@@ -1,7 +1,7 @@
1
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
- 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, #FFF);--ez-split-button--font-size:var(--text--medium, 14px);--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--medium, #008561);--ez-split-button--border-radius:var(--border--radius-large, 12px);--ez-split-button--border:none;--ez-split-button--justify-content:center;--ez-split-button--hover-color:var(--color--primary-600);--ez-split-button--hover--background-color:var(--background--medium, var(--ez-split-button--background-color));--ez-split-button--disabled-color:var(--text--disable);--ez-split-button--disabled--background-color:var(--color--disable-secondary);--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:var(--ez-split-button--border);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:focus,.ez-split-button__right-button:focus{outline:var(--ez-split-button--focus--border);box-shadow:var(--ez-split-button--focus--box-shadow)}.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: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}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}.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}";
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:var(--ez-elevation--8);border-radius:var(--ez-split-button--border-radius)}.dropdown-content>ez-dropdown{position:relative}";
5
5
 
6
6
  const EzSplitButton = class {
7
7
  constructor(hostRef) {
@@ -20,6 +20,7 @@ const EzSplitButton = class {
20
20
  this.rightTitle = 'Mais opções';
21
21
  this.mode = 'default';
22
22
  this.size = 'medium';
23
+ this.itemBuilder = undefined;
23
24
  }
24
25
  /**
25
26
  * Remove o foco de ambos os botões.
@@ -40,6 +41,18 @@ const EzSplitButton = class {
40
41
  async setRightButtonFocus() {
41
42
  this.rightButton.focus();
42
43
  }
44
+ /**
45
+ * Abre ou Fecha o dropdown do Split Button.
46
+ */
47
+ async toggleDropdown() {
48
+ this.show = !this.show;
49
+ }
50
+ /**
51
+ * Informa se a lista de ações está aberta.
52
+ */
53
+ async isOpenedDropdown() {
54
+ return this.show;
55
+ }
43
56
  clickListener(evt) {
44
57
  if (!this.enabled) {
45
58
  evt.preventDefault();
@@ -49,23 +62,19 @@ const EzSplitButton = class {
49
62
  }
50
63
  getIconSize(sizeParam = 'medium') {
51
64
  var _a;
52
- const sizeList = ['medium', 'large'];
65
+ const sizeList = ['small', 'medium', 'large'];
53
66
  const sizeLowerCase = (_a = this.size) === null || _a === void 0 ? void 0 : _a.toLowerCase();
54
67
  return sizeList.includes(sizeLowerCase) ? sizeLowerCase : sizeParam;
55
68
  }
56
69
  closeDropdown() {
57
70
  this.show = false;
58
71
  }
59
- toggleDropdown() {
60
- this.show = !this.show;
61
- }
62
72
  handleButtonClick() {
63
73
  this.buttonClick.emit();
64
74
  }
65
75
  handleDropdownItemClick(evt) {
66
76
  this.dropdownItemClick.emit(evt.detail);
67
77
  evt.stopPropagation();
68
- this.closeDropdown();
69
78
  }
70
79
  handleDropdownSubActionClick(evt) {
71
80
  this.dropdownSubActionClick.emit(evt.detail);
@@ -147,7 +156,7 @@ const EzSplitButton = class {
147
156
  const hasIconButton = this.shouldShowIconOnLeftButton();
148
157
  const hasLabelButton = this.shouldShowLabelOnLeftButton();
149
158
  const iconSize = this.getIconSize();
150
- return (h("div", { class: "label-icon" }, h("button", { class: `ez-split-button__left-button ${iconSize} ${this.mode}`, title: this.leftTitle || this.label, type: "button", disabled: !this.enabled, onClick: () => { this.handleButtonClick(); }, ref: el => (this.leftButton = el) }, hasIconButton && h("ez-icon", { href: this.image, iconName: this.iconName, size: iconSize }), hasLabelButton && h("label", { title: this.leftTitle || this.label }, this.label)), h("div", { class: "dropdown" }, h("button", { class: `ez-split-button__right-button ${iconSize} ez-split-button__right-button--${iconSize} ez-split-button__right-button--divider`, title: this.rightTitle || this.rightDefaultTitle, type: "button", disabled: !this.enabled, onClick: () => { this.toggleDropdown(); }, ref: el => (this.rightButton = el) }, h("ez-icon", { class: `ez-split-button__right-button-container ` + (iconSize ? `btn-icon--${iconSize}` : ''), iconName: 'chevron-down', size: iconSize })), h("div", { class: `dropdown-content dropdown-content--${this.size}`, ref: (ref) => (this.dropdownParent = ref) }, this.show && (h("ez-dropdown", { items: this.items, onClick: evt => { evt.stopPropagation(); }, onEzOutsideClick: () => { this.closeDropdown(); }, onEzClick: evt => { this.handleDropdownItemClick(evt); }, onEzSubActionClick: evt => { this.handleDropdownSubActionClick(evt); } }))))));
159
+ return (h("div", { class: "label-icon" }, h("button", { class: `ez-split-button__left-button ${iconSize} ${this.mode}`, title: this.leftTitle || this.label, type: "button", disabled: !this.enabled, onClick: () => { this.handleButtonClick(); }, ref: el => (this.leftButton = el) }, hasIconButton && h("ez-icon", { href: this.image, iconName: this.iconName, size: iconSize }), hasLabelButton && h("label", { title: this.leftTitle || this.label }, this.label)), h("div", { class: "dropdown" }, h("button", { class: `ez-split-button__right-button ${iconSize} ez-split-button__right-button--${iconSize} ez-split-button__right-button--divider`, title: this.rightTitle || this.rightDefaultTitle, type: "button", disabled: !this.enabled, onClick: () => { this.toggleDropdown(); }, ref: el => (this.rightButton = el) }, h("ez-icon", { class: `ez-split-button__right-button-container ` + (iconSize ? `btn-icon--${iconSize}` : ''), iconName: 'chevron-down', size: iconSize })), h("div", { class: `dropdown-content dropdown-content--${this.size}`, ref: (ref) => (this.dropdownParent = ref) }, this.show && (h("ez-dropdown", { items: this.items, onClick: evt => { evt.stopPropagation(); }, onEzOutsideClick: () => { this.closeDropdown(); }, onEzClick: evt => { this.handleDropdownItemClick(evt); }, onEzSubActionClick: evt => { this.handleDropdownSubActionClick(evt); }, itemBuilder: this.itemBuilder }))))));
151
160
  }
152
161
  shouldShowLabelOnLeftButton() {
153
162
  return ['icon-left', 'default'].includes(this.mode);
@@ -1,12 +1,12 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-baa5e267.js';
2
2
  import './ApplicationUtils-eaf91331.js';
3
- import { C as CSSVarsUtils } from './CSSVarsUtils-71ce76be.js';
3
+ import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.js';
4
4
  import './DialogType-54a62731.js';
5
5
  import './CheckMode-bdb2ec19.js';
6
6
  import '@sankhyalabs/core';
7
- import './ICustomRender-875b5a40.js';
7
+ import './FormLayout-071d324c.js';
8
8
 
9
- const ezSplitItemCss = ".box_split-item{background-color:var(--background--xlight);width:100%;height:100%;border-radius:var(--border--radius-medium);box-shadow:var(--shadow);flex-direction:column;overflow:hidden;display:flex;padding:var(--space--nano)}.box_split-item>.ez-split-item--content{overflow:auto}.expanded__item{position:absolute;z-index:var(--more-visible);top:0;left:0;width:100%;height:100%}.ez-split-item--header{display:flex;align-items:center;justify-content:space-between}.ez-split-item--header-title{flex:1;white-space:nowrap;overflow:hidden}.ez-split-item--header-title h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.ez-split-item--header-buttons{display:flex;align-items:center}.ez-split-item--content{display:block;height:100%}h3.ez-margin--small{margin-left:var(--space--small)}";
9
+ const ezSplitItemCss = ".box_split-item{background-color:var(--background--xlight);width:100%;height:100%;border-radius:var(--border--radius-medium);box-shadow:var(--shadow--xsmall);flex-direction:column;overflow:hidden;display:flex;padding:var(--space--nano)}.box_split-item>.ez-split-item--content{overflow:auto}.expanded__item{position:absolute;z-index:var(--more-visible);top:0;left:0;width:100%;height:100%}.ez-split-item--header{display:flex;align-items:center;justify-content:space-between}.ez-split-item--header-title{flex:1;white-space:nowrap;overflow:hidden}.ez-split-item--header-title h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.ez-split-item--header-buttons{display:flex;align-items:center;max-height:20px}.ez-split-item--content{display:block;height:100%}h3.ez-margin--small{margin-left:var(--space--small)}.structural__item{background:none;box-shadow:none;padding:0;margin:0;border:0}.content__item{margin:var(--space--extra-small);width:calc(100% - 2*(var(--space--extra-small)));height:calc(100% - 2*(var(--space--extra-small)))}";
10
10
 
11
11
  const SplitItem = class {
12
12
  constructor(hostRef) {
@@ -15,18 +15,21 @@ const SplitItem = class {
15
15
  this.enableExpand = true;
16
16
  this._expanded = false;
17
17
  this.size = undefined;
18
+ this.structural = false;
18
19
  }
19
20
  /**
20
21
  * Alterna a visibilidade do painel.
21
22
  */
22
23
  toggleExpandItem() {
24
+ var _a, _b;
23
25
  this._expanded = !this._expanded;
26
+ (_b = (_a = this.expandButtonRef.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('button')) === null || _b === void 0 ? void 0 : _b.blur();
24
27
  }
25
28
  componentDidLoad() {
26
29
  CSSVarsUtils.applyVarsGrid(this._element, this._slot.children[0]);
27
30
  }
28
31
  render() {
29
- return (h(Host, { class: `box_split-item ${this._expanded ? 'expanded__item' : ''}`, ref: el => (this._element = el) }, h("div", { class: "ez-split-item--header" }, h("slot", { name: "leftButtons" }), h("div", { class: "ez-split-item--header-title" }, this.label && (h("h3", { class: "ez-text ez-text--primary ez-title ez-title--small ez-margin--small", title: this.label }, this.label))), h("div", { class: "ez-split-item--header-buttons" }, h("slot", { name: "rightButtons" }), this.enableExpand && (h("ez-button", { size: "small", mode: "icon", iconName: "expand", class: 'ez-button--tertiary', onClick: () => this.toggleExpandItem(), title: this._expanded ? 'Resumir' : 'Expandir' })))), h("div", { class: "ez-split-item--content grid_height-0", ref: el => (this._slot = el) }, h("slot", null))));
32
+ return (h(Host, { class: `box_split-item ${this._expanded ? 'expanded__item' : ''} ${this.structural ? 'structural__item' : 'content__item'}`, ref: el => (this._element = el) }, h("div", { class: "ez-split-item--header" }, h("slot", { name: "leftButtons" }), h("div", { class: "ez-split-item--header-title" }, this.label && (h("h3", { class: "ez-text ez-text--primary ez-title ez-title--medium ez-margin--small", title: this.label }, this.label))), h("div", { class: "ez-split-item--header-buttons" }, h("slot", { name: "rightButtons" }), this.enableExpand && (h("ez-button", { ref: el => this.expandButtonRef = el, size: "small", mode: "icon", iconName: "expand", class: 'ez-button--tertiary', onClick: () => this.toggleExpandItem(), title: this._expanded ? 'Resumir' : 'Expandir' })))), h("div", { class: "ez-split-item--content grid_height-0", ref: el => (this._slot = el) }, h("slot", null))));
30
33
  }
31
34
  };
32
35
  SplitItem.style = ezSplitItemCss;
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, 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)); };
@@ -678,15 +678,17 @@ Grid.prototype.destroy = function destroy (immediate) {
678
678
 
679
679
  function index (options) { return new Grid(options); }
680
680
 
681
- const ezSplitPanelCss = ".ez-split-gutter{cursor:grab;background-color:transparent;max-width:100%}";
681
+ const ezSplitPanelCss = ".ez-split-gutter{cursor:grab;background-color:transparent;max-width:100%}.ez-split-gutter__row{cursor:ns-resize}.ez-split-gutter__column{cursor:ew-resize}.structural__panel{background:none;box-shadow:none;outline:none;padding:0;margin:0;border:0}";
682
682
 
683
683
  const SplitPanel = class {
684
684
  constructor(hostRef) {
685
685
  registerInstance(this, hostRef);
686
+ this.resizeEnd = createEvent(this, "resizeEnd", 7);
686
687
  this._items = [];
687
688
  this._buildInProgress = false;
688
689
  this.direction = 'column';
689
690
  this.anchorToExpand = false;
691
+ this.structural = false;
690
692
  }
691
693
  rebuildLayout() {
692
694
  Array.from(this._element.querySelectorAll(".ez-split-gutter")).reverse().forEach(el => {
@@ -718,7 +720,7 @@ const SplitPanel = class {
718
720
  this.initSplit();
719
721
  this._mutationObserver = new MutationObserver((mutationsList) => {
720
722
  for (const mutation of mutationsList) {
721
- if (mutation.type === 'childList' && this._buildInProgress === false) {
723
+ if (mutation.type === 'childList' && !this._buildInProgress) {
722
724
  this._buildInProgress = true;
723
725
  window.requestAnimationFrame(() => {
724
726
  this.rebuildLayout();
@@ -741,20 +743,30 @@ const SplitPanel = class {
741
743
  if (!this._items.length) {
742
744
  return;
743
745
  }
744
- this._element.style[this.direction == 'row' ? 'grid-template-rows' : 'grid-template-columns'] = this.getGridTemplate();
746
+ this._element.style[this.direction === 'row' ? 'grid-template-rows' : 'grid-template-columns'] = this.getGridTemplate();
747
+ this.removeGuttersMargin();
745
748
  index(this.getGutters());
746
749
  }
750
+ handlePanelDragEnd() {
751
+ const items = this._items.map(item => ({
752
+ id: item.id,
753
+ height: item.clientHeight,
754
+ width: item.clientWidth,
755
+ }));
756
+ this.resizeEnd.emit({ panelId: this._element.id, items });
757
+ }
747
758
  getGutters() {
748
759
  const gutters = {
749
760
  columnGutters: [],
750
761
  rowGutters: [],
762
+ onDragEnd: () => this.handlePanelDragEnd()
751
763
  };
752
764
  if (!this._items.length) {
753
765
  return gutters;
754
766
  }
755
- const proToChange = this.direction == 'row' ? 'rowGutters' : 'columnGutters';
767
+ const proToChange = this.direction === 'row' ? 'rowGutters' : 'columnGutters';
756
768
  this._items.forEach((item, index) => {
757
- if (index == this._items.length - 1)
769
+ if (index === this._items.length - 1)
758
770
  return;
759
771
  let gutterTrack = item.dataset.trackNumber;
760
772
  if (index === this._items.length - 1) {
@@ -771,6 +783,12 @@ const SplitPanel = class {
771
783
  const gutter = document.createElement('div');
772
784
  gutter.classList.add('ez-split-gutter');
773
785
  gutter.classList.add(this.direction);
786
+ if (this.direction === 'row') {
787
+ gutter.classList.add('ez-split-gutter__row');
788
+ }
789
+ else {
790
+ gutter.classList.add('ez-split-gutter__column');
791
+ }
774
792
  gutter.dataset.itemTrack = `${item.dataset.trackNumber}`;
775
793
  gutter.dataset.trackNumber = (Number(item.dataset.trackNumber) + 1).toString();
776
794
  item.parentNode.insertBefore(gutter, item.nextSibling);
@@ -816,8 +834,52 @@ const SplitPanel = class {
816
834
  });
817
835
  return template;
818
836
  }
837
+ removeGuttersMargin() {
838
+ if (this._items.length <= 1)
839
+ return;
840
+ if (this.direction == "column") {
841
+ this.removeGuttersMarginColumn();
842
+ return;
843
+ }
844
+ if (this.direction == "row") {
845
+ this.removeGuttersMarginRow();
846
+ return;
847
+ }
848
+ }
849
+ removeGuttersMarginColumn() {
850
+ this._items.forEach((item, index) => {
851
+ if (index == 0) {
852
+ item.style.marginRight = "0";
853
+ return;
854
+ }
855
+ if (index === this._items.length - 1) {
856
+ item.style.marginLeft = "0";
857
+ return;
858
+ }
859
+ item.style.marginRight = "0";
860
+ item.style.marginLeft = "0";
861
+ return;
862
+ });
863
+ }
864
+ removeGuttersMarginRow() {
865
+ if (this._items.length <= 1)
866
+ return;
867
+ this._items.forEach((item, index) => {
868
+ if (index == 0) {
869
+ item.style.marginBottom = "0";
870
+ return;
871
+ }
872
+ if (index === this._items.length - 1) {
873
+ item.style.marginTop = "0";
874
+ return;
875
+ }
876
+ item.style.marginBottom = "0";
877
+ item.style.marginTop = "0";
878
+ return;
879
+ });
880
+ }
819
881
  render() {
820
- return h(Host, { style: this.getElementStyle() });
882
+ return h(Host, { class: `${this.structural ? 'structural__panel' : 'content__panel'}`, style: this.getElementStyle() });
821
883
  }
822
884
  get _element() { return getElement(this); }
823
885
  };