@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-132280.3 → 0.0.0-bugfix-dev-KB-157120.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (401) hide show
  1. package/dist/cjs/{ApplicationUtils-006ca96f.js → ApplicationUtils-88dfe345.js} +1 -1
  2. package/dist/cjs/{app-globals-5cb12916.js → app-globals-c1d07d68.js} +1 -1
  3. package/dist/cjs/{classic-search-list_7.cjs.entry.js → classic-search-list_8.cjs.entry.js} +204 -6
  4. package/dist/cjs/ez-actions-button.cjs.entry.js +3 -3
  5. package/dist/cjs/ez-alert-list.cjs.entry.js +2 -2
  6. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-avatar.cjs.entry.js +2 -2
  9. package/dist/cjs/ez-badge.cjs.entry.js +1 -1
  10. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-button.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-calendar.cjs.entry.js +2 -2
  13. package/dist/cjs/ez-card-item.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-chart.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  16. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  17. package/dist/cjs/ez-classic-combo-box.cjs.entry.js +5 -3
  18. package/dist/cjs/ez-classic-date-input.cjs.entry.js +3 -3
  19. package/dist/cjs/ez-classic-date-time-input.cjs.entry.js +2 -2
  20. package/dist/cjs/ez-classic-input.cjs.entry.js +50 -4
  21. package/dist/cjs/ez-classic-number-input.cjs.entry.js +2 -2
  22. package/dist/cjs/ez-classic-search-plus.cjs.entry.js +27 -14
  23. package/dist/cjs/ez-classic-search.cjs.entry.js +3 -3
  24. package/dist/cjs/ez-classic-text-area.cjs.entry.js +13 -2
  25. package/dist/cjs/ez-classic-time-input.cjs.entry.js +5 -4
  26. package/dist/cjs/ez-collapsible-box.cjs.entry.js +3 -3
  27. package/dist/cjs/ez-combo-box.cjs.entry.js +8 -3
  28. package/dist/cjs/ez-date-input.cjs.entry.js +2 -2
  29. package/dist/cjs/ez-date-time-input.cjs.entry.js +2 -2
  30. package/dist/cjs/ez-dialog.cjs.entry.js +2 -2
  31. package/dist/cjs/ez-double-list.cjs.entry.js +2 -2
  32. package/dist/cjs/ez-dropdown.cjs.entry.js +2 -2
  33. package/dist/cjs/ez-empty-card.cjs.entry.js +2 -2
  34. package/dist/cjs/ez-file-item.cjs.entry.js +2 -2
  35. package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-form-view.cjs.entry.js +23 -4
  37. package/dist/cjs/ez-form.cjs.entry.js +66 -44
  38. package/dist/cjs/ez-grid-pagination.cjs.entry.js +227 -0
  39. package/dist/cjs/ez-grid-view.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-grid.cjs.entry.js +236 -173
  41. package/dist/cjs/ez-guide-navigator.cjs.entry.js +2 -2
  42. package/dist/cjs/ez-icon.cjs.entry.js +2 -2
  43. package/dist/cjs/ez-link-builder_6.cjs.entry.js +2 -2
  44. package/dist/cjs/ez-list-item.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-list.cjs.entry.js +2 -2
  46. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  47. package/dist/cjs/ez-modal-container.cjs.entry.js +2 -2
  48. package/dist/cjs/ez-modal.cjs.entry.js +2 -2
  49. package/dist/cjs/ez-multi-selection-list_5.cjs.entry.js +675 -0
  50. package/dist/cjs/ez-number-input.cjs.entry.js +2 -2
  51. package/dist/cjs/ez-pagination.cjs.entry.js +2 -2
  52. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  53. package/dist/cjs/ez-popup.cjs.entry.js +5 -6
  54. package/dist/cjs/ez-progress-bar.cjs.entry.js +1 -1
  55. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  56. package/dist/cjs/ez-record-navigation.cjs.entry.js +121 -0
  57. package/dist/cjs/ez-rich-toolbar-item.cjs.entry.js +1 -1
  58. package/dist/cjs/ez-scroller_2.cjs.entry.js +82 -15
  59. package/dist/cjs/ez-search-plus.cjs.entry.js +26 -12
  60. package/dist/cjs/ez-search-result-list.cjs.entry.js +2 -2
  61. package/dist/cjs/ez-search.cjs.entry.js +12 -5
  62. package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +2 -2
  63. package/dist/cjs/ez-skeleton.cjs.entry.js +2 -2
  64. package/dist/cjs/ez-sortable-list.cjs.entry.js +100 -115
  65. package/dist/cjs/ez-spinner.cjs.entry.js +2 -2
  66. package/dist/cjs/ez-split-button.cjs.entry.js +5 -5
  67. package/dist/cjs/ez-split-item.cjs.entry.js +3 -3
  68. package/dist/cjs/ez-split-panel.cjs.entry.js +1 -1
  69. package/dist/cjs/ez-tabselector.cjs.entry.js +210 -62
  70. package/dist/cjs/ez-tag-input.cjs.entry.js +1 -1
  71. package/dist/cjs/ez-tag.cjs.entry.js +1 -1
  72. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  73. package/dist/cjs/ez-text-input.cjs.entry.js +22 -16
  74. package/dist/cjs/ez-tile-medium.cjs.entry.js +1 -1
  75. package/dist/cjs/ez-tile.cjs.entry.js +1 -1
  76. package/dist/cjs/ez-time-input.cjs.entry.js +2 -2
  77. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  78. package/dist/cjs/ez-tooltip.cjs.entry.js +47 -9
  79. package/dist/cjs/ez-tree.cjs.entry.js +2 -2
  80. package/dist/cjs/ez-underface.cjs.entry.js +1 -1
  81. package/dist/cjs/ez-upload.cjs.entry.js +3 -3
  82. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  83. package/dist/cjs/ezui.cjs.js +4 -4
  84. package/dist/cjs/filter-column.cjs.entry.js +10 -4
  85. package/dist/cjs/{floating-ui.dom.esm-f4d87617.js → floating-ui.dom.esm-9c8bfebb.js} +258 -119
  86. package/dist/cjs/{index-350d0fa0.js → index-9739c242.js} +91 -30
  87. package/dist/cjs/{index-9e5554cb.js → index-a7b0c73d.js} +16 -19
  88. package/dist/cjs/loader.cjs.js +4 -4
  89. package/dist/cjs/{search-column-46d02656.js → search-column-6e90fb19.js} +19 -10
  90. package/dist/collection/collection-manifest.json +8 -0
  91. package/dist/collection/components/ez-classic-combo-box/ez-classic-combo-box.js +21 -2
  92. package/dist/collection/components/ez-classic-date-input/ez-classic-date-input.js +1 -1
  93. package/dist/collection/components/ez-classic-input/ez-classic-input.js +47 -2
  94. package/dist/collection/components/ez-classic-input/utils/maskFormatter.js +2 -1
  95. package/dist/collection/components/ez-classic-search-plus/ez-classic-search-plus.css +22 -0
  96. package/dist/collection/components/ez-classic-search-plus/ez-classic-search-plus.js +26 -11
  97. package/dist/collection/components/ez-classic-text-area/ez-classic-text-area.js +32 -1
  98. package/dist/collection/components/ez-classic-time-input/ez-classic-time-input.js +3 -2
  99. package/dist/collection/components/ez-combo-box/ez-combo-box.js +5 -0
  100. package/dist/collection/components/ez-dropdown/ez-dropdown.css +2 -2
  101. package/dist/collection/components/ez-empty-card/ez-empty-card.js +7 -7
  102. package/dist/collection/components/ez-form-view/ez-form-view.css +19 -5
  103. package/dist/collection/components/ez-form-view/ez-form-view.js +1 -1
  104. package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +2 -0
  105. package/dist/collection/components/ez-form-view/fieldbuilder/templates/MultiSelectInput.tpl.js +17 -0
  106. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +163 -27
  107. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +8 -1
  108. package/dist/collection/components/ez-grid/controller/ag-grid/gridColumnDefaultWidths.js +23 -0
  109. package/dist/collection/components/ez-grid/controller/ag-grid/utils/AggFunctionResolver.js +24 -0
  110. package/dist/collection/components/ez-grid/ez-grid.css +5 -60
  111. package/dist/collection/components/ez-grid/ez-grid.js +52 -150
  112. package/dist/collection/components/ez-grid/interfaces/IAggegationFunc.js +1 -0
  113. package/dist/collection/components/ez-grid/subcomponents/filter-column.css +10 -0
  114. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +7 -1
  115. package/dist/collection/components/ez-grid/subcomponents/selection-counter.js +1 -1
  116. package/dist/collection/components/ez-grid/utils/index.js +1 -0
  117. package/dist/collection/components/ez-grid-pagination/ez-grid-pagination.css +111 -0
  118. package/dist/collection/components/ez-grid-pagination/ez-grid-pagination.js +410 -0
  119. package/dist/collection/components/ez-icon/ez-icon.css +1153 -1146
  120. package/dist/collection/components/ez-image-input/ez-image-input.css +24 -8
  121. package/dist/collection/components/ez-image-input/ez-image-input.js +6 -1
  122. package/dist/collection/components/ez-multi-select-input/ez-multi-select-input.css +221 -0
  123. package/dist/collection/components/ez-multi-select-input/ez-multi-select-input.js +555 -0
  124. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.css +27 -6
  125. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.js +66 -10
  126. package/dist/collection/components/ez-popover-plus/ez-popover-plus.js +20 -0
  127. package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js +36 -2
  128. package/dist/collection/components/ez-popup/ez-popup.js +3 -4
  129. package/dist/collection/components/ez-record-navigation/ez-record-navigation.css +51 -0
  130. package/dist/collection/components/ez-record-navigation/ez-record-navigation.js +246 -0
  131. package/dist/collection/components/ez-scroller/EzScrollNavigationMode.js +5 -0
  132. package/dist/collection/components/ez-scroller/ez-scroller.css +117 -11
  133. package/dist/collection/components/ez-scroller/ez-scroller.js +118 -13
  134. package/dist/collection/components/ez-search/ez-search.css +4 -0
  135. package/dist/collection/components/ez-search/ez-search.js +22 -1
  136. package/dist/collection/components/ez-search-plus/ez-search-plus.js +38 -10
  137. package/dist/collection/components/ez-sortable-list/ez-sortable-list.css +1 -1
  138. package/dist/collection/components/ez-split-button/ez-split-button.css +1 -1
  139. package/dist/collection/components/ez-split-button/ez-split-button.js +2 -2
  140. package/dist/collection/components/ez-tabselector/ez-tabselector.css +29 -1
  141. package/dist/collection/components/ez-tabselector/ez-tabselector.js +254 -62
  142. package/dist/collection/components/ez-text-input/ez-text-input.js +21 -15
  143. package/dist/collection/components/ez-tooltip/ez-tooltip.js +45 -7
  144. package/dist/collection/utils/form/FormMetadata.js +62 -40
  145. package/dist/collection/utils/i18n/locales/en-us.js +27 -4
  146. package/dist/collection/utils/i18n/locales/es-es.js +27 -4
  147. package/dist/collection/utils/i18n/locales/pt-br.js +27 -4
  148. package/dist/collection/utils/interfaces/AbstractFieldMetadata.js +14 -2
  149. package/dist/collection/utils/searchColumn/search-column.js +2 -5
  150. package/dist/custom-elements/index.d.ts +18 -0
  151. package/dist/custom-elements/index.js +1872 -634
  152. package/dist/esm/{ApplicationUtils-0c5cb207.js → ApplicationUtils-f7721533.js} +1 -1
  153. package/dist/esm/{app-globals-1db10325.js → app-globals-6e258867.js} +1 -1
  154. package/dist/esm/{classic-search-list_7.entry.js → classic-search-list_8.entry.js} +204 -7
  155. package/dist/esm/ez-actions-button.entry.js +3 -3
  156. package/dist/esm/ez-alert-list.entry.js +2 -2
  157. package/dist/esm/ez-alert.entry.js +1 -1
  158. package/dist/esm/ez-application.entry.js +1 -1
  159. package/dist/esm/ez-avatar.entry.js +2 -2
  160. package/dist/esm/ez-badge.entry.js +1 -1
  161. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  162. package/dist/esm/ez-button.entry.js +1 -1
  163. package/dist/esm/ez-calendar.entry.js +2 -2
  164. package/dist/esm/ez-card-item.entry.js +1 -1
  165. package/dist/esm/ez-chart.entry.js +1 -1
  166. package/dist/esm/ez-check.entry.js +1 -1
  167. package/dist/esm/ez-chip.entry.js +1 -1
  168. package/dist/esm/ez-classic-combo-box.entry.js +5 -3
  169. package/dist/esm/ez-classic-date-input.entry.js +3 -3
  170. package/dist/esm/ez-classic-date-time-input.entry.js +2 -2
  171. package/dist/esm/ez-classic-input.entry.js +50 -4
  172. package/dist/esm/ez-classic-number-input.entry.js +2 -2
  173. package/dist/esm/ez-classic-search-plus.entry.js +27 -14
  174. package/dist/esm/ez-classic-search.entry.js +3 -3
  175. package/dist/esm/ez-classic-text-area.entry.js +13 -2
  176. package/dist/esm/ez-classic-time-input.entry.js +5 -4
  177. package/dist/esm/ez-collapsible-box.entry.js +3 -3
  178. package/dist/esm/ez-combo-box.entry.js +8 -3
  179. package/dist/esm/ez-date-input.entry.js +2 -2
  180. package/dist/esm/ez-date-time-input.entry.js +2 -2
  181. package/dist/esm/ez-dialog.entry.js +2 -2
  182. package/dist/esm/ez-double-list.entry.js +2 -2
  183. package/dist/esm/ez-dropdown.entry.js +2 -2
  184. package/dist/esm/ez-empty-card.entry.js +2 -2
  185. package/dist/esm/ez-file-item.entry.js +2 -2
  186. package/dist/esm/ez-filter-input.entry.js +1 -1
  187. package/dist/esm/ez-form-view.entry.js +23 -4
  188. package/dist/esm/ez-form.entry.js +66 -44
  189. package/dist/esm/ez-grid-pagination.entry.js +223 -0
  190. package/dist/esm/ez-grid-view.entry.js +1 -1
  191. package/dist/esm/ez-grid.entry.js +237 -174
  192. package/dist/esm/ez-guide-navigator.entry.js +2 -2
  193. package/dist/esm/ez-icon.entry.js +2 -2
  194. package/dist/esm/ez-link-builder_6.entry.js +2 -2
  195. package/dist/esm/ez-list-item.entry.js +1 -1
  196. package/dist/esm/ez-list.entry.js +2 -2
  197. package/dist/esm/ez-loading-bar.entry.js +1 -1
  198. package/dist/esm/ez-modal-container.entry.js +2 -2
  199. package/dist/esm/ez-modal.entry.js +2 -2
  200. package/dist/esm/ez-multi-selection-list_5.entry.js +667 -0
  201. package/dist/esm/ez-number-input.entry.js +2 -2
  202. package/dist/esm/ez-pagination.entry.js +2 -2
  203. package/dist/esm/ez-popover.entry.js +1 -1
  204. package/dist/esm/ez-popup.entry.js +5 -6
  205. package/dist/esm/ez-progress-bar.entry.js +1 -1
  206. package/dist/esm/ez-radio-button.entry.js +1 -1
  207. package/dist/esm/ez-record-navigation.entry.js +117 -0
  208. package/dist/esm/ez-rich-toolbar-item.entry.js +1 -1
  209. package/dist/esm/ez-scroller_2.entry.js +82 -15
  210. package/dist/esm/ez-search-plus.entry.js +26 -12
  211. package/dist/esm/ez-search-result-list.entry.js +2 -2
  212. package/dist/esm/ez-search.entry.js +12 -5
  213. package/dist/esm/ez-sidebar-navigator.entry.js +2 -2
  214. package/dist/esm/ez-skeleton.entry.js +2 -2
  215. package/dist/esm/ez-sortable-list.entry.js +100 -115
  216. package/dist/esm/ez-spinner.entry.js +2 -2
  217. package/dist/esm/ez-split-button.entry.js +5 -5
  218. package/dist/esm/ez-split-item.entry.js +3 -3
  219. package/dist/esm/ez-split-panel.entry.js +1 -1
  220. package/dist/esm/ez-tabselector.entry.js +210 -62
  221. package/dist/esm/ez-tag-input.entry.js +1 -1
  222. package/dist/esm/ez-tag.entry.js +1 -1
  223. package/dist/esm/ez-text-area.entry.js +1 -1
  224. package/dist/esm/ez-text-input.entry.js +22 -16
  225. package/dist/esm/ez-tile-medium.entry.js +1 -1
  226. package/dist/esm/ez-tile.entry.js +1 -1
  227. package/dist/esm/ez-time-input.entry.js +2 -2
  228. package/dist/esm/ez-toast.entry.js +1 -1
  229. package/dist/esm/ez-tooltip.entry.js +47 -9
  230. package/dist/esm/ez-tree.entry.js +2 -2
  231. package/dist/esm/ez-underface.entry.js +1 -1
  232. package/dist/esm/ez-upload.entry.js +3 -3
  233. package/dist/esm/ez-view-stack.entry.js +1 -1
  234. package/dist/esm/ezui.js +5 -5
  235. package/dist/esm/filter-column.entry.js +10 -4
  236. package/dist/esm/{floating-ui.dom.esm-ad30f2f0.js → floating-ui.dom.esm-0c464cef.js} +258 -120
  237. package/dist/esm/{index-225aa0c3.js → index-9e6dab5b.js} +91 -30
  238. package/dist/esm/{index-5a720e56.js → index-baa5e267.js} +17 -19
  239. package/dist/esm/loader.js +5 -5
  240. package/dist/esm/{search-column-2da15ef5.js → search-column-7d7f0331.js} +19 -10
  241. package/dist/ezui/ezui.esm.js +1 -1
  242. package/dist/ezui/p-01e652c6.entry.js +1 -0
  243. package/dist/ezui/p-0592535f.entry.js +1 -0
  244. package/dist/ezui/{p-3453dad5.entry.js → p-063bb342.entry.js} +1 -1
  245. package/dist/ezui/{p-75e650ff.entry.js → p-0ac8bd66.entry.js} +1 -1
  246. package/dist/ezui/p-0d80e3ec.entry.js +1 -0
  247. package/dist/ezui/{p-e039e049.entry.js → p-108503ed.entry.js} +1 -1
  248. package/dist/ezui/{p-29f0de90.entry.js → p-1166b2d5.entry.js} +1 -1
  249. package/dist/ezui/p-1222e1b6.entry.js +1 -0
  250. package/dist/ezui/p-15873627.js +1 -0
  251. package/dist/ezui/p-178cb9df.entry.js +1 -0
  252. package/dist/ezui/p-1b1b0af3.entry.js +1 -0
  253. package/dist/ezui/{p-81461d2f.entry.js → p-1e7a8633.entry.js} +1 -1
  254. package/dist/ezui/{p-6b51c9cc.entry.js → p-1f50fa05.entry.js} +1 -1
  255. package/dist/ezui/{p-cf33bc48.entry.js → p-20c024f7.entry.js} +1 -1
  256. package/dist/ezui/{p-e4c7eb39.js → p-23a36bb6.js} +2 -2
  257. package/dist/ezui/p-2856c545.entry.js +1 -0
  258. package/dist/ezui/{p-9d515e5b.entry.js → p-2ae127bc.entry.js} +1 -1
  259. package/dist/ezui/{p-05bcbe61.entry.js → p-2ebd7383.entry.js} +1 -1
  260. package/dist/ezui/p-3e84df1c.entry.js +1 -0
  261. package/dist/ezui/p-3fae7072.entry.js +1 -0
  262. package/dist/ezui/{p-f7ca8634.entry.js → p-411c0222.entry.js} +1 -1
  263. package/dist/ezui/p-42e1e733.js +1 -0
  264. package/dist/ezui/{p-2fa490f1.entry.js → p-45245c32.entry.js} +1 -1
  265. package/dist/ezui/{p-534209bf.entry.js → p-46b1b2ac.entry.js} +1 -1
  266. package/dist/ezui/{p-12cc95dc.entry.js → p-54af1af0.entry.js} +1 -1
  267. package/dist/ezui/p-55434123.entry.js +1 -0
  268. package/dist/ezui/{p-6fc26622.entry.js → p-5ed81457.entry.js} +1 -1
  269. package/dist/ezui/{p-51e34317.entry.js → p-6369a0cd.entry.js} +1 -1
  270. package/dist/ezui/p-6791d05f.entry.js +1 -0
  271. package/dist/ezui/{p-7fe5a9eb.entry.js → p-6d46f862.entry.js} +46 -46
  272. package/dist/ezui/{p-0b531233.entry.js → p-6d596a5a.entry.js} +1 -1
  273. package/dist/ezui/p-6da0dc70.entry.js +1 -0
  274. package/dist/ezui/{p-1723f728.entry.js → p-6f77a359.entry.js} +1 -1
  275. package/dist/ezui/p-72e77b45.entry.js +1 -0
  276. package/dist/ezui/{p-636ea910.entry.js → p-73461028.entry.js} +1 -1
  277. package/dist/ezui/{p-a6ea8da3.entry.js → p-7424d520.entry.js} +1 -1
  278. package/dist/ezui/{p-9fb7131e.entry.js → p-7a07c50f.entry.js} +1 -1
  279. package/dist/ezui/p-7b078125.entry.js +1 -0
  280. package/dist/ezui/p-7df45688.entry.js +1 -0
  281. package/dist/ezui/{p-e195eaad.entry.js → p-7f792043.entry.js} +1 -1
  282. package/dist/ezui/{p-e963cb3f.entry.js → p-881abc22.entry.js} +1 -1
  283. package/dist/ezui/{p-82fa4b09.entry.js → p-8df1ca33.entry.js} +1 -1
  284. package/dist/ezui/{p-78e975b4.entry.js → p-91c9d50e.entry.js} +1 -1
  285. package/dist/ezui/{p-05e68ab3.entry.js → p-93e1c917.entry.js} +1 -1
  286. package/dist/ezui/{p-82e1d7fc.entry.js → p-99556756.entry.js} +1 -1
  287. package/dist/ezui/{p-0ba284cd.entry.js → p-9bd78d39.entry.js} +1 -1
  288. package/dist/ezui/{p-c2b20f78.entry.js → p-9f5fa3f9.entry.js} +1 -1
  289. package/dist/ezui/{p-bc693db6.entry.js → p-a0bf1fc7.entry.js} +1 -1
  290. package/dist/ezui/p-a11e4e8e.entry.js +1 -0
  291. package/dist/ezui/{p-9bcfa689.entry.js → p-a3075f52.entry.js} +1 -1
  292. package/dist/ezui/{p-f26b97e9.entry.js → p-a3ada561.entry.js} +1 -1
  293. package/dist/ezui/{p-dfca5946.entry.js → p-a80b1287.entry.js} +1 -1
  294. package/dist/ezui/p-a9ab6cb9.entry.js +1 -0
  295. package/dist/ezui/{p-9825c1d2.js → p-ad5e263d.js} +1 -1
  296. package/dist/ezui/{p-d57ea090.entry.js → p-b06294c9.entry.js} +1 -1
  297. package/dist/ezui/{p-4a876b8b.entry.js → p-b50289bb.entry.js} +1 -1
  298. package/dist/ezui/p-b66ae5c5.entry.js +1 -0
  299. package/dist/ezui/{p-e0380234.entry.js → p-b8cd501a.entry.js} +1 -1
  300. package/dist/ezui/p-b986da95.entry.js +7 -0
  301. package/dist/ezui/p-bc2f844e.entry.js +1 -0
  302. package/dist/ezui/{p-0820f8c3.entry.js → p-c25a4d30.entry.js} +1 -1
  303. package/dist/ezui/{p-55a9e4ba.entry.js → p-c37fb359.entry.js} +1 -1
  304. package/dist/ezui/{p-e0fd2ce5.entry.js → p-cb00863d.entry.js} +1 -1
  305. package/dist/ezui/{p-181cb82f.entry.js → p-d5684cdc.entry.js} +1 -1
  306. package/dist/ezui/{p-a9432878.entry.js → p-d6742c1e.entry.js} +1 -1
  307. package/dist/ezui/{p-770cf2b8.entry.js → p-d6f50207.entry.js} +1 -1
  308. package/dist/ezui/{p-458027b5.entry.js → p-d70805e4.entry.js} +1 -1
  309. package/dist/ezui/p-d81a15fc.entry.js +1 -0
  310. package/dist/ezui/p-d8b69419.entry.js +1 -0
  311. package/dist/ezui/p-d8cc640d.entry.js +1 -0
  312. package/dist/ezui/p-de14fe07.js +1 -0
  313. package/dist/ezui/p-df6173c8.entry.js +1 -0
  314. package/dist/ezui/{p-be2e39c5.entry.js → p-dfced8c7.entry.js} +1 -1
  315. package/dist/ezui/{p-e275353b.entry.js → p-e3d6b544.entry.js} +1 -1
  316. package/dist/ezui/p-e63a0479.js +1 -0
  317. package/dist/ezui/{p-fe0bca65.entry.js → p-e692c2a7.entry.js} +1 -1
  318. package/dist/ezui/{p-000159dc.entry.js → p-e75c7a23.entry.js} +1 -1
  319. package/dist/ezui/{p-e9b409c1.entry.js → p-e7a7c594.entry.js} +1 -1
  320. package/dist/ezui/{p-b21efe83.entry.js → p-e8c57463.entry.js} +1 -1
  321. package/dist/ezui/{p-75443a91.entry.js → p-e8cd003b.entry.js} +1 -1
  322. package/dist/ezui/p-ed790867.entry.js +1 -0
  323. package/dist/ezui/p-f2e0acf5.entry.js +1 -0
  324. package/dist/ezui/{p-980f1f18.entry.js → p-f34ec732.entry.js} +1 -1
  325. package/dist/ezui/{p-f32d5a82.entry.js → p-f498f6b5.entry.js} +1 -1
  326. package/dist/ezui/{p-44b39e81.entry.js → p-fa6732f2.entry.js} +1 -1
  327. package/dist/ezui/{p-2c123fdf.entry.js → p-fb27b98d.entry.js} +1 -1
  328. package/dist/ezui/{p-d3aca6aa.entry.js → p-fc11f5b9.entry.js} +1 -1
  329. package/dist/types/components/ez-classic-combo-box/ez-classic-combo-box.d.ts +2 -0
  330. package/dist/types/components/ez-classic-input/ez-classic-input.d.ts +6 -0
  331. package/dist/types/components/ez-classic-search-plus/ez-classic-search-plus.d.ts +3 -0
  332. package/dist/types/components/ez-classic-text-area/ez-classic-text-area.d.ts +3 -0
  333. package/dist/types/components/ez-empty-card/ez-empty-card.d.ts +2 -2
  334. package/dist/types/components/ez-form-view/fieldbuilder/templates/MultiSelectInput.tpl.d.ts +2 -0
  335. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +2 -0
  336. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +16 -0
  337. package/dist/types/components/ez-grid/controller/ag-grid/gridColumnDefaultWidths.d.ts +4 -0
  338. package/dist/types/components/ez-grid/controller/ag-grid/utils/AggFunctionResolver.d.ts +2 -0
  339. package/dist/types/components/ez-grid/ez-grid.d.ts +10 -27
  340. package/dist/types/components/ez-grid/interfaces/IAggegationFunc.d.ts +3 -0
  341. package/dist/types/components/ez-grid/utils/index.d.ts +1 -0
  342. package/dist/types/components/ez-grid-pagination/ez-grid-pagination.d.ts +75 -0
  343. package/dist/types/components/ez-image-input/ez-image-input.d.ts +1 -0
  344. package/dist/types/components/ez-multi-select-input/ez-multi-select-input.d.ts +119 -0
  345. package/dist/types/components/ez-multi-selection-list/ez-multi-selection-list.d.ts +8 -0
  346. package/dist/types/components/ez-popover-plus/ez-popover-plus.d.ts +7 -0
  347. package/dist/types/components/ez-popover-plus/subcomponent/ez-popover-core.d.ts +9 -0
  348. package/dist/types/components/ez-popup/ez-popup.d.ts +1 -0
  349. package/dist/types/components/ez-record-navigation/ez-record-navigation.d.ts +43 -0
  350. package/dist/types/components/ez-scroller/EzScrollNavigationMode.d.ts +4 -0
  351. package/dist/types/components/ez-scroller/ez-scroller.d.ts +16 -2
  352. package/dist/types/components/ez-search/ez-search.d.ts +4 -0
  353. package/dist/types/components/ez-search-plus/ez-search-plus.d.ts +6 -1
  354. package/dist/types/components/ez-tabselector/ez-tabselector.d.ts +41 -20
  355. package/dist/types/components/ez-text-input/ez-text-input.d.ts +1 -0
  356. package/dist/types/components/ez-tooltip/ez-tooltip.d.ts +2 -0
  357. package/dist/types/components.d.ts +407 -9
  358. package/dist/types/utils/i18n/locales/en-us.d.ts +26 -3
  359. package/dist/types/utils/i18n/locales/es-es.d.ts +26 -3
  360. package/dist/types/utils/i18n/locales/pt-br.d.ts +26 -3
  361. package/dist/types/utils/i18n/translations.d.ts +78 -9
  362. package/package.json +5 -6
  363. package/react/components.d.ts +3 -0
  364. package/react/components.js +3 -0
  365. package/react/components.js.map +1 -1
  366. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +0 -194
  367. package/dist/cjs/ez-popover-core.cjs.entry.js +0 -211
  368. package/dist/cjs/ez-popover-plus_3.cjs.entry.js +0 -243
  369. package/dist/esm/ez-multi-selection-list.entry.js +0 -190
  370. package/dist/esm/ez-popover-core.entry.js +0 -207
  371. package/dist/esm/ez-popover-plus_3.entry.js +0 -237
  372. package/dist/ezui/p-06f1b8e4.entry.js +0 -1
  373. package/dist/ezui/p-0d393a5d.entry.js +0 -1
  374. package/dist/ezui/p-14d6aeb8.entry.js +0 -1
  375. package/dist/ezui/p-169d460d.entry.js +0 -1
  376. package/dist/ezui/p-24993171.entry.js +0 -7
  377. package/dist/ezui/p-27421015.entry.js +0 -1
  378. package/dist/ezui/p-27c8a9b7.entry.js +0 -1
  379. package/dist/ezui/p-2a806303.js +0 -1
  380. package/dist/ezui/p-34d596a3.entry.js +0 -1
  381. package/dist/ezui/p-35e3715c.entry.js +0 -1
  382. package/dist/ezui/p-4d909730.entry.js +0 -1
  383. package/dist/ezui/p-4df2edb5.entry.js +0 -1
  384. package/dist/ezui/p-61c10e02.js +0 -1
  385. package/dist/ezui/p-6ec40dec.entry.js +0 -1
  386. package/dist/ezui/p-71b341cc.entry.js +0 -1
  387. package/dist/ezui/p-75e8862c.entry.js +0 -1
  388. package/dist/ezui/p-81a98a7c.entry.js +0 -1
  389. package/dist/ezui/p-87739608.entry.js +0 -1
  390. package/dist/ezui/p-892e7326.entry.js +0 -1
  391. package/dist/ezui/p-8f7373ab.entry.js +0 -1
  392. package/dist/ezui/p-986044d1.entry.js +0 -1
  393. package/dist/ezui/p-c178730b.js +0 -1
  394. package/dist/ezui/p-c754774e.entry.js +0 -1
  395. package/dist/ezui/p-c96e536d.entry.js +0 -1
  396. package/dist/ezui/p-ce2614fc.entry.js +0 -1
  397. package/dist/ezui/p-dc9781b3.entry.js +0 -1
  398. package/dist/ezui/p-e94d3af5.entry.js +0 -1
  399. package/dist/ezui/p-f0425f87.entry.js +0 -1
  400. package/dist/ezui/p-f1b54699.entry.js +0 -1
  401. package/dist/ezui/p-ff4312d5.js +0 -1
@@ -1,8 +1,8 @@
1
- import { h, r as registerInstance, c as createEvent, g as getElement, H as Host } from './index-5a720e56.js';
1
+ import { h, r as registerInstance, c as createEvent, g as getElement, H as Host } from './index-baa5e267.js';
2
2
  import { ObjectUtils, StringUtils, UserInterface, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { F as FormLayout } from './FormLayout-bda67973.js';
4
4
  import { C as CheckMode } from './CheckMode-bdb2ec19.js';
5
- import { g as getI18n } from './index-225aa0c3.js';
5
+ import { g as getI18n } from './index-9e6dab5b.js';
6
6
 
7
7
  const buildSwitch = (field, context) => {
8
8
  return buildField(field.name, field.label, field.readOnly, field.contextName, true, context);
@@ -176,6 +176,24 @@ const buildImage = ({ name, label, readOnly, contextName, props }) => {
176
176
  h("ez-image-input", Object.assign({ enabled: !readOnly, label: label, "data-field-name": name, "data-context-name": contextName, key: name, maxFileSize: Infinity }, props))));
177
177
  };
178
178
 
179
+ const buildMultiSelectInput = ({ name, label, readOnly, contextName, canShowError, props }) => {
180
+ var _a, _b, _c, _d;
181
+ const rawOptions = props === null || props === void 0 ? void 0 : props.options;
182
+ let options;
183
+ if (typeof rawOptions === "string") {
184
+ const parsed = JSON.parse(rawOptions);
185
+ options = Object.keys(parsed).map(key => ({ value: key, label: parsed[key], check: false }));
186
+ }
187
+ else {
188
+ options = rawOptions;
189
+ }
190
+ // Quando o metadata não informa explicitamente, usamos a lista estática (options)
191
+ // caso não haja um datasource configurado.
192
+ const useOptions = (_a = props === null || props === void 0 ? void 0 : props.useOptions) !== null && _a !== void 0 ? _a : (options != undefined && (props === null || props === void 0 ? void 0 : props.dataSource) == undefined);
193
+ return (h("div", { class: "ez-col ez-col--sd-12" },
194
+ h("ez-multi-select-input", { class: "ez-input__no-margin", label: label, "data-field-name": name, "data-context-name": contextName, key: name, enabled: !readOnly, canShowError: canShowError, options: options, dataSource: props === null || props === void 0 ? void 0 : props.dataSource, columnName: (_b = props === null || props === void 0 ? void 0 : props.columnName) !== null && _b !== void 0 ? _b : name, useOptions: useOptions, isTextSearch: (_c = props === null || props === void 0 ? void 0 : props.isTextSearch) !== null && _c !== void 0 ? _c : false, orderSelectedFirst: (_d = props === null || props === void 0 ? void 0 : props.orderSelectedFirst) !== null && _d !== void 0 ? _d : false })));
195
+ };
196
+
179
197
  const uiBuilders = new Map();
180
198
  uiBuilders.set(UserInterface.CHECKBOX, buildCheckBox);
181
199
  uiBuilders.set(UserInterface.SWITCH, buildSwitch);
@@ -192,6 +210,7 @@ uiBuilders.set(UserInterface.SEARCHPLUS, buildSearchPlus);
192
210
  uiBuilders.set(UserInterface.LONGTEXT, buildTextArea);
193
211
  uiBuilders.set(UserInterface.HTML, buildRichText);
194
212
  uiBuilders.set(UserInterface.IMAGE, buildImage);
213
+ uiBuilders.set(UserInterface.MULTISELECTOR, buildMultiSelectInput);
195
214
  const fieldBuilder = (field, customUiBuilders = new Map(), context) => {
196
215
  const i18n = getI18n();
197
216
  const shouldUseClassic = (context === null || context === void 0 ? void 0 : context.formLayout) === FormLayout.CLASSIC_CASCADE ||
@@ -239,7 +258,7 @@ class FormItems {
239
258
  }
240
259
  }
241
260
 
242
- const ezFormViewCss = ".sc-ez-form-view-h{display:flex;flex-wrap:wrap;width:100%;--ez-form-view__item--min-width:220px;--ez-form-view__item--max-width:440px;--ez-form-view__item--gap:var(--space--14, 14px);--ez-form-view__item--padding:var(--space--small)}.form-view__content.sc-ez-form-view{display:grid;grid-template-columns:repeat(auto-fill, minmax(var(--ez-form-view__item--min-width), 1fr));gap:var(--ez-form-view__item--gap);padding-inline:var(--ez-form-view__item--padding);width:100%}.form-view__content--single-column.sc-ez-form-view{grid-template-columns:repeat(1, minmax(var(--ez-form-view__item--min-width), var(--ez-form-view__item--max-width)))}.input-full_width.sc-ez-form-view{grid-column:1 / -1;width:100%}*.sc-ez-form-view:has(*)+ez-collapsible-box.sc-ez-form-view{margin-top:var(--space--16, 16px)}";
261
+ const ezFormViewCss = ".sc-ez-form-view-h{display:flex;flex-wrap:wrap;width:100%;--ez-form-view__item--min-width:250px;--ez-form-view__long-item--min-width:530px;--ez-form-view__item--max-width:512px;--ez-form-view__long-item--max-width:100%;--ez-form-view__item--gap:var(--space--14, 14px);--ez-form-view__item--padding:var(--space--small)}.form-view__content.sc-ez-form-view{display:grid;grid-template-columns:repeat(auto-fill, minmax(var(--ez-form-view__item--min-width), 1fr));gap:var(--ez-form-view__item--gap);padding-inline:var(--ez-form-view__item--padding);width:100%}.form-view__content--single-column.sc-ez-form-view{grid-template-columns:1fr}.form-view__content--single-column.sc-ez-form-view>div.sc-ez-form-view:not(.input-full_width){width:clamp(var(--ez-form-view__item--min-width), 70%, var(--ez-form-view__item--max-width))}.input-full_width.sc-ez-form-view{grid-column:1/-1;width:clamp(var(--ez-form-view__long-item--min-width), 100%, var(--ez-form-view__long-item--max-width))}.single-column.sc-ez-form-view{--ez-form-view__long-item--max-width:1024px}*.sc-ez-form-view:has(*)+ez-collapsible-box.sc-ez-form-view{margin-top:var(--space--16, 16px)}";
243
262
 
244
263
  const EzFormView = class {
245
264
  constructor(hostRef) {
@@ -322,7 +341,7 @@ const EzFormView = class {
322
341
  buildFormItemElement(item, classItem = "") {
323
342
  var _a;
324
343
  if (this.isItemFullWidth(item.userInterface)) {
325
- classItem += " input-full_width";
344
+ classItem += ` input-full_width ${this.singleColumn && `single-column`}`;
326
345
  }
327
346
  const context = {
328
347
  formLayout: this.formLayout,
@@ -1,9 +1,9 @@
1
- import { r as registerInstance, c as createEvent, h, f as forceUpdate, H as Host, g as getElement } from './index-5a720e56.js';
1
+ import { r as registerInstance, c as createEvent, h, f as forceUpdate, H as Host, g as getElement } from './index-baa5e267.js';
2
2
  import { DateUtils, ApplicationContext, Action, StringUtils, KeyboardManager, DataUnit, ElementIDUtils } from '@sankhyalabs/core';
3
- import { b as buildFieldMetadata, a as buildFieldSearch, S as SHORTCUT_SEARCH_FIELD, f as focusOnFieldSerch, c as SEARCH_FIELD_FULL_WIDTH, D as DataBinder } from './search-column-2da15ef5.js';
4
- import { g as getI18n, i as initI18n } from './index-225aa0c3.js';
3
+ import { b as buildFieldMetadata, a as buildFieldSearch, S as SHORTCUT_SEARCH_FIELD, f as focusOnFieldSerch, c as SEARCH_FIELD_FULL_WIDTH, D as DataBinder } from './search-column-7d7f0331.js';
4
+ import { g as getI18n, i as initI18n } from './index-9e6dab5b.js';
5
5
  import { F as FormLayout } from './FormLayout-bda67973.js';
6
- import './ApplicationUtils-0c5cb207.js';
6
+ import './ApplicationUtils-f7721533.js';
7
7
  import './DialogType-54a62731.js';
8
8
  import './CheckMode-bdb2ec19.js';
9
9
  import './types-6f6b2650.js';
@@ -129,54 +129,75 @@ function parseTabToFormSheet(key, fields) {
129
129
  function handleFields(config, sheets, hiddenTabs, dataUnit, requiredFields, cleanOnCopyFields, defaultValues) {
130
130
  var _a;
131
131
  (_a = config === null || config === void 0 ? void 0 : config.fields) === null || _a === void 0 ? void 0 : _a.forEach((field) => {
132
- var _a, _b, _c;
133
- if (field.visible !== false) {
134
- const tabConfig = getTabConfig(field.tab || "__main", sheets, config);
135
- if (hiddenTabs.has(tabConfig.label)) {
136
- return;
132
+ var _a, _b, _c, _d, _e, _f;
133
+ if (field.visible === false) {
134
+ return;
135
+ }
136
+ if (!field.tab && ((_b = (_a = dataUnit.getField(field.name)) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.isPrimaryKey)) {
137
+ field.tab = "__main";
138
+ }
139
+ const tabConfig = getTabConfig(field.tab || "Geral", sheets, config);
140
+ if (hiddenTabs.has(tabConfig.label)) {
141
+ return;
142
+ }
143
+ const descriptor = dataUnit.getField(field.name);
144
+ const fieldVisible = (descriptor === null || descriptor === void 0 ? void 0 : descriptor.visible) == undefined || (descriptor === null || descriptor === void 0 ? void 0 : descriptor.visible) === true;
145
+ if (descriptor && fieldVisible && tabConfig.visible) {
146
+ if (!sheets.has(tabConfig)) {
147
+ sheets.set(tabConfig, []);
137
148
  }
138
- const descriptor = dataUnit.getField(field.name);
139
- const fieldVisible = (descriptor === null || descriptor === void 0 ? void 0 : descriptor.visible) == undefined || (descriptor === null || descriptor === void 0 ? void 0 : descriptor.visible) === true;
140
- if (descriptor && fieldVisible && tabConfig.visible) {
141
- if (!sheets.has(tabConfig)) {
142
- sheets.set(tabConfig, []);
143
- }
144
- const formField = buildFieldMetadata(descriptor, field);
145
- sheets.get(tabConfig).push(formField);
146
- if (formField.required) {
147
- requiredFields.push(field.name);
148
- }
149
- const cleanOnCopy = field.cleanOnCopy == undefined ? (_a = descriptor.properties) === null || _a === void 0 ? void 0 : _a.cleanOnCopy : field.cleanOnCopy;
150
- if (cleanOnCopy || ((_b = descriptor.properties) === null || _b === void 0 ? void 0 : _b.cleanOnCopy)) {
151
- cleanOnCopyFields.push(field.name);
152
- }
153
- let defaultValue = field.defaultValue == undefined ? (_c = descriptor.properties) === null || _c === void 0 ? void 0 : _c.defaultValue : field.defaultValue;
154
- if (defaultValue && defaultValue.value != undefined) {
155
- const { type, value } = defaultValue;
156
- if (type) {
157
- if (type === "V") {
158
- defaultValue = value;
159
- }
160
- else {
161
- try {
162
- const parsed = JSON.parse(value);
163
- if (parsed && "value" in parsed) {
164
- defaultValue = parsed;
165
- }
166
- else {
167
- defaultValue = value;
168
- }
149
+ const formField = buildFieldMetadata(descriptor, field);
150
+ (_c = sheets.get(tabConfig)) === null || _c === void 0 ? void 0 : _c.push(formField);
151
+ if (formField.required) {
152
+ requiredFields.push(field.name);
153
+ }
154
+ const cleanOnCopy = field.cleanOnCopy == undefined ? (_d = descriptor.properties) === null || _d === void 0 ? void 0 : _d.cleanOnCopy : field.cleanOnCopy;
155
+ if (cleanOnCopy || ((_e = descriptor.properties) === null || _e === void 0 ? void 0 : _e.cleanOnCopy)) {
156
+ cleanOnCopyFields.push(field.name);
157
+ }
158
+ let defaultValue = field.defaultValue == undefined ? (_f = descriptor.properties) === null || _f === void 0 ? void 0 : _f.defaultValue : field.defaultValue;
159
+ if (defaultValue && defaultValue.value != undefined) {
160
+ const { type, value } = defaultValue;
161
+ if (type) {
162
+ if (type === "V") {
163
+ defaultValue = value;
164
+ }
165
+ else {
166
+ try {
167
+ const parsed = JSON.parse(value);
168
+ if (parsed && "value" in parsed) {
169
+ defaultValue = parsed;
169
170
  }
170
- catch (_d) {
171
+ else {
172
+ defaultValue = value;
171
173
  }
172
174
  }
175
+ catch (_g) {
176
+ }
173
177
  }
174
- defaultValues[field.name] = defaultValue;
175
178
  }
179
+ defaultValues[field.name] = defaultValue;
176
180
  }
177
181
  }
178
182
  });
179
183
  }
184
+ function getDistinctTabs(config) {
185
+ var _a, _b;
186
+ const fieldTabs = (_b = (_a = config.fields) === null || _a === void 0 ? void 0 : _a.map((field, index) => ({
187
+ label: field.tab,
188
+ name: field.tab,
189
+ order: index,
190
+ visible: true,
191
+ isDetail: false,
192
+ isCustom: false,
193
+ }))) !== null && _b !== void 0 ? _b : [];
194
+ return fieldTabs.reduce((total, item) => {
195
+ if (!total.some((tab) => tab.name === item.name)) {
196
+ return [...total, item];
197
+ }
198
+ return total;
199
+ }, []);
200
+ }
180
201
  const buildFormMetadata = (config, dataUnit, includeDetails = false, customGuides) => {
181
202
  var _a;
182
203
  if (config == undefined || (config === null || config === void 0 ? void 0 : config.emptyConfig) === true) {
@@ -187,7 +208,7 @@ const buildFormMetadata = (config, dataUnit, includeDetails = false, customGuide
187
208
  const requiredFields = [];
188
209
  const cleanOnCopyFields = [];
189
210
  const defaultValues = {};
190
- const tabs = (_a = config === null || config === void 0 ? void 0 : config.tabs) !== null && _a !== void 0 ? _a : [];
211
+ const tabs = (_a = config === null || config === void 0 ? void 0 : config.tabs) !== null && _a !== void 0 ? _a : getDistinctTabs(config);
191
212
  tabs.forEach((tab) => {
192
213
  if (!hiddenTabs.has(tab.label) && tab.visible === false) {
193
214
  hiddenTabs.set(tab.label, tab);
@@ -219,7 +240,8 @@ const getTabFromConfig = (tab, config) => {
219
240
  if (!config) {
220
241
  return;
221
242
  }
222
- return (_a = config.tabs) === null || _a === void 0 ? void 0 : _a.find(t => t.label === tab);
243
+ const tabs = (_a = config === null || config === void 0 ? void 0 : config.tabs) !== null && _a !== void 0 ? _a : getDistinctTabs(config);
244
+ return tabs === null || tabs === void 0 ? void 0 : tabs.find(t => t.label === tab);
223
245
  };
224
246
  const getTabConfig = (tab, sheets, config) => {
225
247
  if (typeof tab !== "string") {
@@ -0,0 +1,223 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
2
+ import { i as initI18n } from './index-9e6dab5b.js';
3
+ import { Action, ElementIDUtils } from '@sankhyalabs/core';
4
+
5
+ const ezGridPaginationCss = ":host{display:block}.pagination__container{display:flex;align-items:center;flex-grow:1;flex-shrink:1;flex-wrap:nowrap;justify-content:flex-end}.pagination__buttons-container{display:flex;border-radius:50%;background-color:var(--color--ocean-green-90, #E1E2E5);cursor:pointer}.pagination__buttons-container ez-icon{--ez-icon--color:var(--color--ocean-green-600, #008561)}.pagination__buttons-container.disabled{background-color:#DEDEDE;cursor:not-allowed;pointer-events:auto}.pagination__buttons-container.disabled ez-icon{--ez-icon--color:var(--color--petroleum-300, #848D9C);pointer-events:none}.pagination__page-navigator{display:flex;align-items:center}.pagination__row-summary-panel{font-size:var(--font-size--default, 14px);font-family:var(--font--pattern, 'Roboto');color:var(--color--petroleum-300, #848D9C);font-weight:var(--font-weight--regular, 400);padding:var(--space--8, 8px) var(--space--16, 16px)}.pagination__page-summary-panel{display:flex;align-items:center;padding:var(--space--8, 8px) var(--space--16, 16px);gap:var(--space--4, 4px)}.pagination__container-label{margin:0 var(--space--8, 8px)}.pagination-contracted{width:100px}.pagination-expanded{min-width:150px}.pagination__label{font-family:var(--font--pattern, 'Roboto');color:var(--color--petroleum-300, #848D9C);font-weight:var(--font-weight--regular, 400);width:100%;white-space:nowrap}.cancel-pagination{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space--4, 4px);padding:var(--space--8, 8px)}.spin{animation-name:spin;animation-duration:5000ms;animation-iteration-count:infinite;animation-timing-function:linear}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.cancel-pagination-btn{color:var(--color--red-600, #BD0025);font-size:var(--font-size--medium, 16px);font-weight:var(--font-weight--semi-bold, 600);font-family:var(--font--pattern, 'Roboto');text-wrap:nowrap;cursor:pointer}.pagination-text-right{flex-direction:row-reverse}";
6
+
7
+ const EzGridPagination = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.pageChange = createEvent(this, "pageChange", 7);
11
+ this._dataUnitInitialized = false;
12
+ this.paginationInfo = undefined;
13
+ this.leftButtonDisabled = undefined;
14
+ this.rightButtonDisabled = undefined;
15
+ this.paginationCounterMode = 'auto';
16
+ this.dataUnit = undefined;
17
+ this.paginationTextPosition = 'left';
18
+ this.buttonsSize = 'large';
19
+ }
20
+ /**
21
+ * Navega para a página anterior.
22
+ */
23
+ async previousPage() {
24
+ if (!this.dataUnit) {
25
+ return;
26
+ }
27
+ await this.dataUnit.previousPage();
28
+ this.handlePageChange('previous');
29
+ }
30
+ /**
31
+ * Navega para a próxima página.
32
+ */
33
+ async nextPage() {
34
+ if (!this.dataUnit) {
35
+ return;
36
+ }
37
+ await this.dataUnit.nextPage();
38
+ this.handlePageChange('next');
39
+ }
40
+ /**
41
+ * Navega para a primeira página.
42
+ */
43
+ async firstPage() {
44
+ if (!this.dataUnit) {
45
+ return;
46
+ }
47
+ await this.dataUnit.gotoPage(0);
48
+ this.handlePageChange('previous');
49
+ }
50
+ /**
51
+ * Navega para a primeira página.
52
+ */
53
+ async lastPage() {
54
+ if (!this.dataUnit) {
55
+ return;
56
+ }
57
+ await this.dataUnit.gotoPage(this.getTotalPages() - 1);
58
+ this.handlePageChange('next');
59
+ }
60
+ onDataUnitChange() {
61
+ this.initializeDataUnit();
62
+ }
63
+ shouldPresentPaginationLabel() {
64
+ return this.paginationCounterMode !== 'hidden';
65
+ }
66
+ getRemainingPageLabel() {
67
+ var _a;
68
+ if (!this.paginationInfo)
69
+ return '';
70
+ return `${this.paginationInfo.total == undefined
71
+ ? this.i18n('ez-grid-pagination.remainingPageLabel', { count: ((_a = this.paginationInfo.count) !== null && _a !== void 0 ? _a : 0) + 1 })
72
+ : this.i18n('ez-grid-pagination.remainingTotalLabel', { total: this.paginationInfo.total, count: this.paginationInfo.count })}`;
73
+ }
74
+ getActualPageLabel() {
75
+ var _a, _b;
76
+ if (!this.paginationInfo)
77
+ return '0-0';
78
+ return `${(_a = this.paginationInfo.firstRecord) !== null && _a !== void 0 ? _a : 0} - ${(_b = this.paginationInfo.lastRecord) !== null && _b !== void 0 ? _b : 0}`;
79
+ }
80
+ getPaginationCount() {
81
+ var _a;
82
+ if (!this.paginationInfo || !this.dataUnit)
83
+ return '0-0';
84
+ const currentPage = ((_a = this.paginationInfo.currentPage) !== null && _a !== void 0 ? _a : 0) + 1;
85
+ let totalPages = this.getTotalPages();
86
+ return this.i18n('ez-grid-pagination.pageCounter', { currentPage, totalPages });
87
+ }
88
+ getTotalPages() {
89
+ var _a;
90
+ if (this.paginationInfo.total !== undefined) {
91
+ return Math.ceil(this.paginationInfo.total / this.dataUnit.pageSize);
92
+ }
93
+ else {
94
+ return Math.ceil(((_a = this.paginationInfo.count) !== null && _a !== void 0 ? _a : 0) / this.dataUnit.pageSize);
95
+ }
96
+ }
97
+ handlePageChange(direction) {
98
+ this.setPaginationInfo();
99
+ this.setStatusButtonPagination();
100
+ this.pageChange.emit(direction);
101
+ }
102
+ async handleCancelPagination() {
103
+ var _a;
104
+ if (!this.dataUnit)
105
+ return;
106
+ this.dataUnit.cancelPagination = true;
107
+ await ((_a = this._cancelPaginationPopoverElement) === null || _a === void 0 ? void 0 : _a.hide());
108
+ }
109
+ handleShowCancelPagination() {
110
+ var _a, _b, _c;
111
+ if (!this.hasToShowCancelPagination()) {
112
+ (_a = this._cancelPaginationPopoverElement) === null || _a === void 0 ? void 0 : _a.hide();
113
+ return;
114
+ }
115
+ if ((_b = this._cancelPaginationPopoverElement) === null || _b === void 0 ? void 0 : _b.opened)
116
+ return;
117
+ (_c = this._cancelPaginationPopoverElement) === null || _c === void 0 ? void 0 : _c.show('15px');
118
+ }
119
+ hasToShowCancelPagination() {
120
+ if (!this.dataUnit || !this.paginationInfo)
121
+ return false;
122
+ const hasMore = this.paginationInfo.total === undefined;
123
+ return !this.dataUnit.cancelPagination && hasMore && this.paginationInfo.count > this.dataUnit.pageSize;
124
+ }
125
+ setPaginationInfo() {
126
+ if (!this.dataUnit) {
127
+ this.paginationInfo = null;
128
+ return;
129
+ }
130
+ this.paginationInfo = this.dataUnit.getPaginationInfo() || null;
131
+ }
132
+ dataUnitObserver(action) {
133
+ switch (action.type) {
134
+ case Action.PAGINATION_UPDATED:
135
+ this.setPaginationInfo();
136
+ this.setStatusButtonPagination();
137
+ this.handleShowCancelPagination();
138
+ break;
139
+ case Action.DATA_LOADED:
140
+ this.setPaginationInfo();
141
+ break;
142
+ }
143
+ }
144
+ getLeftButtonDisabledStatus() {
145
+ var _a, _b;
146
+ if (!this.dataUnit)
147
+ return true;
148
+ return ((_b = (_a = this.paginationInfo) === null || _a === void 0 ? void 0 : _a.currentPage) !== null && _b !== void 0 ? _b : 0) <= 0;
149
+ }
150
+ getRightButtonDisabledStatus() {
151
+ var _a;
152
+ if (!this.dataUnit)
153
+ return true;
154
+ return !((_a = this.paginationInfo) === null || _a === void 0 ? void 0 : _a.hasMore);
155
+ }
156
+ setStatusButtonPagination() {
157
+ this.leftButtonDisabled = this.getLeftButtonDisabledStatus();
158
+ this.rightButtonDisabled = this.getRightButtonDisabledStatus();
159
+ }
160
+ initializeDataUnit() {
161
+ if (!this.dataUnit || this._dataUnitInitialized) {
162
+ return;
163
+ }
164
+ this.setPaginationInfo();
165
+ this.setStatusButtonPagination();
166
+ this._dataUnitObserverBound = this.dataUnitObserver.bind(this);
167
+ this.dataUnit.subscribe(this._dataUnitObserverBound);
168
+ this._dataUnitInitialized = true;
169
+ }
170
+ addInfoId() {
171
+ if (this._element) {
172
+ ElementIDUtils.addIDInfo(this._element);
173
+ }
174
+ }
175
+ renderCancelPagination() {
176
+ return (h("ez-popover", { ref: (element) => (this._cancelPaginationPopoverElement = element), "overlay-type": "none", autoClose: false }, h("div", { class: 'cancel-pagination' }, h("ez-icon", { iconName: "sync", size: "x-large", class: "spin" }), h("span", { onClick: () => this.handleCancelPagination(), class: 'cancel-pagination-btn' }, this.i18n('ez-grid-pagination.cancelPagination')))));
177
+ }
178
+ async connectedCallback() {
179
+ this.i18n = await initI18n();
180
+ this.initializeDataUnit();
181
+ }
182
+ componentDidLoad() {
183
+ this.addInfoId();
184
+ }
185
+ disconnectedCallback() {
186
+ if (this.dataUnit && this._dataUnitInitialized && this._dataUnitObserverBound) {
187
+ this.dataUnit.unsubscribe(this._dataUnitObserverBound);
188
+ }
189
+ }
190
+ render() {
191
+ return (h(Host, null, h("div", { id: 'grid-pagination--container', class: {
192
+ 'pagination__container': true,
193
+ 'pagination-expanded': this.paginationCounterMode !== 'hidden',
194
+ 'pagination-contracted': this.paginationCounterMode === 'hidden',
195
+ 'pagination-text-right': this.paginationTextPosition === 'right',
196
+ } }, h("div", { id: "grid-pagination--page-navigator", class: "pagination__page-navigator" }, h("div", { id: 'grid-pagination--row-summary-panel', class: "pagination__row-summary-panel" }, h("span", { class: "pagination__label", "aria-live": "polite", "aria-atomic": "true", title: `${this.getActualPageLabel()} ${this.getRemainingPageLabel()}` }, this.shouldPresentPaginationLabel() && this.getActualPageLabel(), this.shouldPresentPaginationLabel() && this.getRemainingPageLabel())), this.renderCancelPagination(), h("div", { id: 'grid-pagination--page-summary-panel', class: {
197
+ 'pagination__page-summary-panel': true,
198
+ 'pagination__container': true,
199
+ 'pagination-expanded': this.paginationCounterMode !== 'hidden',
200
+ 'pagination-contracted': this.paginationCounterMode === 'hidden',
201
+ 'pagination-text-right': this.paginationTextPosition === 'right',
202
+ } }, h("div", { id: 'grid-pagination--first-tooltip', class: {
203
+ 'pagination__buttons-container': true,
204
+ 'disabled': this.leftButtonDisabled
205
+ } }, h("ez-tooltip", { message: this.i18n('ez-grid-pagination.firstPage') }, h("ez-icon", { size: this.buttonsSize, iconName: "dual-chevron-left", onClick: () => !this.leftButtonDisabled && this.firstPage() }))), h("div", { id: 'grid-pagination--previous-tooltip', class: {
206
+ 'pagination__buttons-container': true,
207
+ 'disabled': this.leftButtonDisabled
208
+ } }, h("ez-tooltip", { message: this.i18n('ez-grid-pagination.previousPage') }, h("ez-icon", { size: this.buttonsSize, iconName: "chevron-left", onClick: () => !this.leftButtonDisabled && this.previousPage() }))), h("div", { class: "pagination__container-label" }, h("span", { class: "pagination__label", "aria-live": "polite", "aria-atomic": "true", title: `${this.getActualPageLabel()} ${this.getRemainingPageLabel()}` }, this.shouldPresentPaginationLabel() && this.getPaginationCount())), h("div", { id: 'grid-pagination--next-tooltip', class: {
209
+ 'pagination__buttons-container': true,
210
+ 'disabled': this.rightButtonDisabled
211
+ } }, h("ez-tooltip", { message: this.i18n('ez-grid-pagination.nextPage') }, h("ez-icon", { size: this.buttonsSize, iconName: "chevron-right", onClick: () => !this.rightButtonDisabled && this.nextPage() }))), h("div", { id: 'grid-pagination--last-tooltip', class: {
212
+ 'pagination__buttons-container': true,
213
+ 'disabled': this.rightButtonDisabled
214
+ } }, h("ez-tooltip", { message: this.i18n('ez-grid-pagination.lastPage') }, h("ez-icon", { size: this.buttonsSize, iconName: "dual-chevron-right", onClick: () => !this.rightButtonDisabled && this.lastPage() }))))))));
215
+ }
216
+ get _element() { return getElement(this); }
217
+ static get watchers() { return {
218
+ "dataUnit": ["onDataUnitChange"]
219
+ }; }
220
+ };
221
+ EzGridPagination.style = ezGridPaginationCss;
222
+
223
+ export { EzGridPagination as ez_grid_pagination };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-5a720e56.js';
1
+ import { r as registerInstance, h } from './index-baa5e267.js';
2
2
  import { RECORD_DATE_FORMAT, DataUnitInMemoryLoader } from '@sankhyalabs/core';
3
3
 
4
4
  const ezGridViewCss = "";