@sankhyalabs/ezui 5.21.0-dev.2 → 5.21.0-dev.21

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 (283) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/ICustomRender-6fafffce.js +13 -0
  3. package/dist/cjs/ez-actions-button.cjs.entry.js +2 -1
  4. package/dist/cjs/ez-alert-list.cjs.entry.js +7 -5
  5. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-button.cjs.entry.js +3 -3
  10. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-card-item_3.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-chart.cjs.entry.js +433 -0
  13. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-collapsible-box.cjs.entry.js +2 -1
  16. package/dist/cjs/ez-combo-box.cjs.entry.js +2 -1
  17. package/dist/cjs/{ez-text-edit.cjs.entry.js → ez-custom-form-input_2.cjs.entry.js} +95 -1
  18. package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
  19. package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
  20. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-dropdown.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-form-view.cjs.entry.js +34 -4
  24. package/dist/cjs/ez-form.cjs.entry.js +78 -3
  25. package/dist/cjs/ez-grid.cjs.entry.js +333 -33
  26. package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  28. package/dist/cjs/ez-list.cjs.entry.js +2 -2
  29. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ez-modal-container.cjs.entry.js +16 -5
  31. package/dist/cjs/ez-modal.cjs.entry.js +8 -9
  32. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-number-input.cjs.entry.js +35 -29
  34. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-popup.cjs.entry.js +15 -9
  36. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-scroller_3.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-search.cjs.entry.js +18 -6
  39. package/dist/cjs/ez-skeleton.cjs.entry.js +1 -1
  40. package/dist/cjs/ez-split-button.cjs.entry.js +1 -1
  41. package/dist/cjs/ez-split-item.cjs.entry.js +2 -1
  42. package/dist/cjs/ez-split-panel.cjs.entry.js +2 -2
  43. package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
  44. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  45. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  46. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  47. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  48. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  49. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  50. package/dist/cjs/ezui.cjs.js +2 -2
  51. package/dist/cjs/filter-column.cjs.entry.js +1 -1
  52. package/dist/cjs/{index-a7b0c73d.js → index-9e5554cb.js} +11 -4
  53. package/dist/cjs/loader.cjs.js +2 -2
  54. package/dist/collection/collection-manifest.json +2 -0
  55. package/dist/collection/components/ez-alert-list/ez-alert-list.js +6 -4
  56. package/dist/collection/components/ez-button/ez-button.css +7 -0
  57. package/dist/collection/components/ez-button/ez-button.js +1 -1
  58. package/dist/collection/components/ez-chart/components/BarChart.js +27 -0
  59. package/dist/collection/components/ez-chart/components/ColumnChart.js +27 -0
  60. package/dist/collection/components/ez-chart/components/DonutChart.js +42 -0
  61. package/dist/collection/components/ez-chart/components/LineChart.js +27 -0
  62. package/dist/collection/components/ez-chart/components/PieChart.js +45 -0
  63. package/dist/collection/components/ez-chart/components/index.js +5 -0
  64. package/dist/collection/components/ez-chart/ez-chart.css +5 -0
  65. package/dist/collection/components/ez-chart/ez-chart.js +284 -0
  66. package/dist/collection/components/ez-chart/interfaces/ChartAxis.js +1 -0
  67. package/dist/collection/components/ez-chart/interfaces/ChartContext.js +14 -0
  68. package/dist/collection/components/ez-chart/interfaces/ChartOptions.js +1 -0
  69. package/dist/collection/components/ez-chart/interfaces/ChartSerie.js +1 -0
  70. package/dist/collection/components/ez-chart/interfaces/ChartStrategies.js +1 -0
  71. package/dist/collection/components/ez-chart/interfaces/ChartType.js +8 -0
  72. package/dist/collection/components/ez-chart/interfaces/index.js +5 -0
  73. package/dist/collection/components/ez-chart/test/mock-chart.js +137 -0
  74. package/dist/collection/components/ez-chart/types/BaseHighChartsRender.js +146 -0
  75. package/dist/collection/components/ez-form/ez-form.js +130 -4
  76. package/dist/collection/components/ez-form-view/custom-input/ez-custom-form-input.js +253 -0
  77. package/dist/collection/components/ez-form-view/ez-form-view.js +89 -1
  78. package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js +3 -2
  79. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +56 -5
  80. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +1 -0
  81. package/dist/collection/components/ez-grid/controller/ag-grid/GridEditionManager.js +35 -1
  82. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.js +58 -0
  83. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.js +40 -0
  84. package/dist/collection/components/ez-grid/controller/ag-grid/components/test/constants/EzGridCustomCellEditorConstants.js +11 -0
  85. package/dist/collection/components/ez-grid/controller/ag-grid/components/test/constants/EzGridCustomCellRenderConstants.js +11 -0
  86. package/dist/collection/components/ez-grid/controller/ag-grid/editor/EzCellEditor.js +6 -3
  87. package/dist/collection/components/ez-grid/controller/ag-grid/editor/EzCellRender.js +40 -0
  88. package/dist/collection/components/ez-grid/controller/ag-grid/editor/IUICellRender.js +1 -0
  89. package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.js +3 -2
  90. package/dist/collection/components/ez-grid/ez-grid.css +1 -0
  91. package/dist/collection/components/ez-grid/ez-grid.js +233 -11
  92. package/dist/collection/components/ez-grid/interfaces/ICustomFormatter.js +1 -0
  93. package/dist/collection/components/ez-grid/interfaces/index.js +1 -0
  94. package/dist/collection/components/ez-grid/subcomponents/selection-counter.js +3 -11
  95. package/dist/collection/components/ez-grid/subcomponents/utils/selectionCounterUtils.js +22 -0
  96. package/dist/collection/components/ez-grid/test/resources/gridDataUnit.js +19 -0
  97. package/dist/collection/components/ez-list/ez-list.css +6 -2
  98. package/dist/collection/components/ez-modal/ez-modal.js +22 -9
  99. package/dist/collection/components/ez-modal-container/ez-modal-container.css +4 -0
  100. package/dist/collection/components/ez-modal-container/ez-modal-container.js +23 -3
  101. package/dist/collection/components/ez-number-input/ez-number-input.js +42 -27
  102. package/dist/collection/components/ez-popup/ez-popup.js +14 -8
  103. package/dist/collection/components/ez-search/ez-search.js +16 -5
  104. package/dist/collection/components/ez-split-panel/ez-split-panel.css +1 -0
  105. package/dist/collection/utils/customEditor/interfaces/ICustomEditor.js +5 -0
  106. package/dist/collection/utils/customEditor/interfaces/ICustomEditorInfo.js +1 -0
  107. package/dist/collection/utils/customRender/interfaces/ICustomRender.js +5 -0
  108. package/dist/collection/utils/customRender/interfaces/ICustomRenderInfo.js +1 -0
  109. package/dist/collection/utils/form/DataBinder.js +26 -0
  110. package/dist/collection/utils/form/test/DataBinder.test.js +41 -4
  111. package/dist/collection/utils/form/test/resources/metadataTest.js +15 -0
  112. package/dist/collection/utils/index.js +2 -0
  113. package/dist/custom-elements/index.d.ts +12 -0
  114. package/dist/custom-elements/index.js +1081 -105
  115. package/dist/esm/ICustomRender-875b5a40.js +13 -0
  116. package/dist/esm/ez-actions-button.entry.js +2 -1
  117. package/dist/esm/ez-alert-list.entry.js +7 -5
  118. package/dist/esm/ez-alert.entry.js +1 -1
  119. package/dist/esm/ez-application.entry.js +1 -1
  120. package/dist/esm/ez-badge.entry.js +1 -1
  121. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  122. package/dist/esm/ez-button.entry.js +3 -3
  123. package/dist/esm/ez-calendar.entry.js +1 -1
  124. package/dist/esm/ez-card-item_3.entry.js +1 -1
  125. package/dist/esm/ez-chart.entry.js +429 -0
  126. package/dist/esm/ez-check.entry.js +1 -1
  127. package/dist/esm/ez-chip.entry.js +1 -1
  128. package/dist/esm/ez-collapsible-box.entry.js +2 -1
  129. package/dist/esm/ez-combo-box.entry.js +2 -1
  130. package/dist/esm/{ez-text-edit.entry.js → ez-custom-form-input_2.entry.js} +96 -3
  131. package/dist/esm/ez-date-input.entry.js +1 -1
  132. package/dist/esm/ez-date-time-input.entry.js +1 -1
  133. package/dist/esm/ez-dialog.entry.js +1 -1
  134. package/dist/esm/ez-dropdown.entry.js +1 -1
  135. package/dist/esm/ez-file-item.entry.js +1 -1
  136. package/dist/esm/ez-form-view.entry.js +34 -4
  137. package/dist/esm/ez-form.entry.js +79 -4
  138. package/dist/esm/ez-grid.entry.js +333 -33
  139. package/dist/esm/ez-guide-navigator.entry.js +1 -1
  140. package/dist/esm/ez-icon.entry.js +1 -1
  141. package/dist/esm/ez-list.entry.js +2 -2
  142. package/dist/esm/ez-loading-bar.entry.js +1 -1
  143. package/dist/esm/ez-modal-container.entry.js +16 -5
  144. package/dist/esm/ez-modal.entry.js +9 -10
  145. package/dist/esm/ez-multi-selection-list.entry.js +1 -1
  146. package/dist/esm/ez-number-input.entry.js +35 -29
  147. package/dist/esm/ez-popover.entry.js +1 -1
  148. package/dist/esm/ez-popup.entry.js +15 -9
  149. package/dist/esm/ez-radio-button.entry.js +1 -1
  150. package/dist/esm/ez-scroller_3.entry.js +1 -1
  151. package/dist/esm/ez-search.entry.js +18 -6
  152. package/dist/esm/ez-skeleton.entry.js +1 -1
  153. package/dist/esm/ez-split-button.entry.js +1 -1
  154. package/dist/esm/ez-split-item.entry.js +2 -1
  155. package/dist/esm/ez-split-panel.entry.js +2 -2
  156. package/dist/esm/ez-tabselector.entry.js +1 -1
  157. package/dist/esm/ez-text-area.entry.js +1 -1
  158. package/dist/esm/ez-text-input.entry.js +1 -1
  159. package/dist/esm/ez-time-input.entry.js +1 -1
  160. package/dist/esm/ez-toast.entry.js +1 -1
  161. package/dist/esm/ez-upload.entry.js +1 -1
  162. package/dist/esm/ez-view-stack.entry.js +1 -1
  163. package/dist/esm/ezui.js +3 -3
  164. package/dist/esm/filter-column.entry.js +1 -1
  165. package/dist/esm/{index-baa5e267.js → index-5a720e56.js} +11 -5
  166. package/dist/esm/loader.js +3 -3
  167. package/dist/ezui/ezui.esm.js +1 -1
  168. package/dist/ezui/{p-44caad9a.entry.js → p-0378416a.entry.js} +1 -1
  169. package/dist/ezui/p-085babb4.entry.js +1 -0
  170. package/dist/ezui/{p-91f626d3.entry.js → p-0e551dd4.entry.js} +1 -1
  171. package/dist/ezui/{p-af2ecb1b.entry.js → p-11b09aa1.entry.js} +1 -1
  172. package/dist/ezui/{p-77a4bd35.entry.js → p-11bfeca3.entry.js} +1 -1
  173. package/dist/ezui/p-23a796cc.entry.js +1 -0
  174. package/dist/ezui/{p-af95cd16.entry.js → p-24ca32a3.entry.js} +1 -1
  175. package/dist/ezui/{p-cc2dc4f4.entry.js → p-2a6e44a0.entry.js} +1 -1
  176. package/dist/ezui/p-2af4e2de.entry.js +1 -0
  177. package/dist/ezui/{p-baf80b13.entry.js → p-30951bd7.entry.js} +1 -1
  178. package/dist/ezui/p-31674f8e.entry.js +1 -0
  179. package/dist/ezui/{p-bf79aaa1.entry.js → p-33792b2b.entry.js} +1 -1
  180. package/dist/ezui/{p-b44741b0.entry.js → p-355c20f5.entry.js} +2 -2
  181. package/dist/ezui/{p-e85c48d7.entry.js → p-36180f4d.entry.js} +1 -1
  182. package/dist/ezui/{p-7bc07c31.entry.js → p-3f8c33e0.entry.js} +1 -1
  183. package/dist/ezui/p-4559c266.entry.js +1 -0
  184. package/dist/ezui/p-4607fb89.js +1 -0
  185. package/dist/ezui/p-507ec8ed.entry.js +1 -0
  186. package/dist/ezui/{p-8defa6d3.entry.js → p-51e4c040.entry.js} +1 -1
  187. package/dist/ezui/p-569a0b9a.entry.js +1 -0
  188. package/dist/ezui/{p-1f50fa05.entry.js → p-6b51c9cc.entry.js} +1 -1
  189. package/dist/ezui/p-6ec40dec.entry.js +1 -0
  190. package/dist/ezui/{p-5ed81457.entry.js → p-6fc26622.entry.js} +1 -1
  191. package/dist/ezui/{p-555c9018.entry.js → p-7567ccdd.entry.js} +1 -1
  192. package/dist/ezui/{p-1e7a8633.entry.js → p-81461d2f.entry.js} +1 -1
  193. package/dist/ezui/{p-072e6347.entry.js → p-82ac8b06.entry.js} +1 -1
  194. package/dist/ezui/{p-8df1ca33.entry.js → p-82fa4b09.entry.js} +1 -1
  195. package/dist/ezui/p-868b56f7.entry.js +1 -0
  196. package/dist/ezui/{p-85c8baae.entry.js → p-8eef0f70.entry.js} +1 -1
  197. package/dist/ezui/p-91ccae0c.entry.js +1 -0
  198. package/dist/ezui/{p-3faa2b46.entry.js → p-9634631d.entry.js} +1 -1
  199. package/dist/ezui/p-9a11e223.entry.js +1 -0
  200. package/dist/ezui/{p-7af81663.entry.js → p-9a23d513.entry.js} +1 -1
  201. package/dist/ezui/p-9aa27e69.entry.js +1 -0
  202. package/dist/ezui/{p-784fe207.entry.js → p-9c2e2d68.entry.js} +1 -1
  203. package/dist/ezui/{p-9050d2cd.entry.js → p-b0e71d23.entry.js} +1 -1
  204. package/dist/ezui/{p-17be134a.entry.js → p-b2f6bc0a.entry.js} +1 -1
  205. package/dist/ezui/{p-9f5fa3f9.entry.js → p-c2b20f78.entry.js} +1 -1
  206. package/dist/ezui/{p-5bd5e68f.entry.js → p-c3b7a23e.entry.js} +1 -1
  207. package/dist/ezui/p-cd1a2e6b.entry.js +1 -0
  208. package/dist/ezui/p-d62ff380.entry.js +1 -0
  209. package/dist/ezui/{p-bae4e180.entry.js → p-dbeee5aa.entry.js} +1 -1
  210. package/dist/ezui/{p-a80b1287.entry.js → p-dfca5946.entry.js} +1 -1
  211. package/dist/ezui/p-e151e795.entry.js +1 -0
  212. package/dist/ezui/{p-23a36bb6.js → p-e4c7eb39.js} +2 -2
  213. package/dist/ezui/{p-0306dff7.entry.js → p-e6b38ade.entry.js} +1 -1
  214. package/dist/ezui/{p-650e4b6d.entry.js → p-f1c2c19e.entry.js} +1 -1
  215. package/dist/ezui/p-f1c3f85d.entry.js +1 -0
  216. package/dist/ezui/{p-49456b34.entry.js → p-f291db18.entry.js} +1 -1
  217. package/dist/ezui/{p-6e429cff.entry.js → p-fc194825.entry.js} +1 -1
  218. package/dist/types/components/ez-alert-list/ez-alert-list.d.ts +2 -2
  219. package/dist/types/components/ez-chart/components/BarChart.d.ts +9 -0
  220. package/dist/types/components/ez-chart/components/ColumnChart.d.ts +9 -0
  221. package/dist/types/components/ez-chart/components/DonutChart.d.ts +9 -0
  222. package/dist/types/components/ez-chart/components/LineChart.d.ts +9 -0
  223. package/dist/types/components/ez-chart/components/PieChart.d.ts +9 -0
  224. package/dist/types/components/ez-chart/components/index.d.ts +5 -0
  225. package/dist/types/components/ez-chart/ez-chart.d.ts +58 -0
  226. package/dist/types/components/ez-chart/interfaces/ChartAxis.d.ts +7 -0
  227. package/dist/types/components/ez-chart/interfaces/ChartContext.d.ts +11 -0
  228. package/dist/types/components/ez-chart/interfaces/ChartOptions.d.ts +10 -0
  229. package/dist/types/components/ez-chart/interfaces/ChartSerie.d.ts +20 -0
  230. package/dist/types/components/ez-chart/interfaces/ChartStrategies.d.ts +7 -0
  231. package/dist/types/components/ez-chart/interfaces/ChartType.d.ts +7 -0
  232. package/dist/types/components/ez-chart/interfaces/index.d.ts +5 -0
  233. package/dist/types/components/ez-chart/types/BaseHighChartsRender.d.ts +15 -0
  234. package/dist/types/components/ez-form/ez-form.d.ts +20 -1
  235. package/dist/types/components/ez-form-view/custom-input/ez-custom-form-input.d.ts +43 -0
  236. package/dist/types/components/ez-form-view/ez-form-view.d.ts +11 -0
  237. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +30 -0
  238. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +13 -0
  239. package/dist/types/components/ez-grid/controller/ag-grid/GridEditionManager.d.ts +7 -1
  240. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.d.ts +19 -0
  241. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.d.ts +14 -0
  242. package/dist/types/components/ez-grid/controller/ag-grid/components/test/constants/EzGridCustomCellEditorConstants.d.ts +11 -0
  243. package/dist/types/components/ez-grid/controller/ag-grid/components/test/constants/EzGridCustomCellRenderConstants.d.ts +11 -0
  244. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellEditor.d.ts +3 -0
  245. package/dist/types/components/ez-grid/controller/ag-grid/editor/EzCellRender.d.ts +15 -0
  246. package/dist/types/components/ez-grid/controller/ag-grid/editor/IUICellRender.d.ts +10 -0
  247. package/dist/types/components/ez-grid/ez-grid.d.ts +34 -1
  248. package/dist/types/components/ez-grid/interfaces/ICustomFormatter.d.ts +5 -0
  249. package/dist/types/components/ez-grid/interfaces/index.d.ts +1 -0
  250. package/dist/types/components/ez-grid/subcomponents/utils/selectionCounterUtils.d.ts +4 -0
  251. package/dist/types/components/ez-grid/test/resources/gridDataUnit.d.ts +2 -0
  252. package/dist/types/components/ez-modal/ez-modal.d.ts +9 -1
  253. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +3 -0
  254. package/dist/types/components/ez-number-input/ez-number-input.d.ts +3 -0
  255. package/dist/types/components/ez-popup/ez-popup.d.ts +3 -3
  256. package/dist/types/components/ez-search/ez-search.d.ts +2 -1
  257. package/dist/types/components.d.ts +223 -4
  258. package/dist/types/utils/customEditor/interfaces/ICustomEditor.d.ts +29 -0
  259. package/dist/types/utils/customEditor/interfaces/ICustomEditorInfo.d.ts +5 -0
  260. package/dist/types/utils/customRender/interfaces/ICustomRender.d.ts +29 -0
  261. package/dist/types/utils/customRender/interfaces/ICustomRenderInfo.d.ts +5 -0
  262. package/dist/types/utils/form/DataBinder.d.ts +3 -0
  263. package/dist/types/utils/form/test/resources/metadataTest.d.ts +2 -0
  264. package/dist/types/utils/index.d.ts +2 -0
  265. package/package.json +2 -1
  266. package/react/components.d.ts +2 -0
  267. package/react/components.js +2 -0
  268. package/react/components.js.map +1 -1
  269. package/dist/ezui/p-0447d17c.entry.js +0 -1
  270. package/dist/ezui/p-20ec22c0.entry.js +0 -1
  271. package/dist/ezui/p-2a1a0e04.entry.js +0 -1
  272. package/dist/ezui/p-5e1d036e.entry.js +0 -1
  273. package/dist/ezui/p-5ef056ce.entry.js +0 -1
  274. package/dist/ezui/p-637f69f2.entry.js +0 -1
  275. package/dist/ezui/p-701231f0.entry.js +0 -1
  276. package/dist/ezui/p-99ead599.entry.js +0 -1
  277. package/dist/ezui/p-9aefaa52.entry.js +0 -1
  278. package/dist/ezui/p-a1ec32ef.entry.js +0 -1
  279. package/dist/ezui/p-b041333c.entry.js +0 -1
  280. package/dist/ezui/p-b567fa8c.entry.js +0 -1
  281. package/dist/ezui/p-bae3d0aa.entry.js +0 -1
  282. package/dist/ezui/p-bc2f844e.entry.js +0 -1
  283. package/dist/ezui/p-db77a984.entry.js +0 -1
@@ -1,9 +1,10 @@
1
- import { h, r as registerInstance, c as createEvent, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { h, r as registerInstance, c as createEvent, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { Action, ObjectUtils as ObjectUtils$1, HTMLBuilder, ApplicationContext, UserInterface, StringUtils as StringUtils$1, NumberUtils as NumberUtils$1, MaskFormatter, DataType, SortMode, ElementIDUtils, FieldComparator, DateUtils as DateUtils$1, ArrayUtils as ArrayUtils$1, JSUtils, OverflowWatcher, OVERFLOWED_CLASS_NAME } from '@sankhyalabs/core';
3
3
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
4
4
  import { A as ApplicationUtils } from './ApplicationUtils-eaf91331.js';
5
5
  import './DialogType-54a62731.js';
6
6
  import './CheckMode-bdb2ec19.js';
7
+ import { C as CustomEditorSource, a as CustomRenderSource } from './ICustomRender-875b5a40.js';
7
8
  import { D as DISTINCT_FILTER_NAME_PREFIX, E as EZ_GRID_LOADING_SOURCE } from './constants-4e0d35b7.js';
8
9
  import { b as buildFieldMetadata, R as RecordValidationProcessor } from './RecordValidationProcessor-b00b8b77.js';
9
10
 
@@ -118928,6 +118929,7 @@ class DataSource {
118928
118929
  else {
118929
118930
  this._controller.selectRows(selectionInfo.recordIds, true);
118930
118931
  }
118932
+ this._controller.setFocusFirstRow();
118931
118933
  }
118932
118934
  getRows(params) {
118933
118935
  if (this.needReload(params)) {
@@ -119314,8 +119316,9 @@ const buildDateTime = ({ readOnly }) => {
119314
119316
  };
119315
119317
 
119316
119318
  const buildDecimal = ({ readOnly, props }) => {
119317
- const precision = Number((props === null || props === void 0 ? void 0 : props.precision) || 2);
119318
- const prettyPrecision = Number((props === null || props === void 0 ? void 0 : props.prettyPrecision) || precision);
119319
+ var _a, _b;
119320
+ const precision = Number((_a = props === null || props === void 0 ? void 0 : props.precision) !== null && _a !== void 0 ? _a : 2);
119321
+ const prettyPrecision = Number((_b = props === null || props === void 0 ? void 0 : props.prettyPrecision) !== null && _b !== void 0 ? _b : precision);
119319
119322
  return buildNumeric(readOnly, precision, prettyPrecision);
119320
119323
  };
119321
119324
  const buildInteger = ({ readOnly }) => {
@@ -119410,9 +119413,9 @@ class EzCellEditor {
119410
119413
  init(params) {
119411
119414
  const fieldName = params.column.getColId();
119412
119415
  const dataUnit = params.context.dataUnit;
119413
- const fieldMetadata = buildEditorMetadata(dataUnit.getField(fieldName), params.eGridCell, dataUnit, params.context.editionManager);
119414
- const builder = uiBuilders.get(fieldMetadata.userInterface) || buildTextInput;
119415
- this._gui = builder(fieldMetadata);
119416
+ this._fieldMetadata = buildEditorMetadata(dataUnit.getField(fieldName), params.eGridCell, dataUnit, params.context.editionManager);
119417
+ const builder = uiBuilders.get(this._fieldMetadata.userInterface) || buildTextInput;
119418
+ this._gui = builder(this._fieldMetadata);
119416
119419
  if (this._gui.valueSetter != undefined) {
119417
119420
  this._gui.valueSetter(params.value);
119418
119421
  }
@@ -119436,10 +119439,147 @@ class EzCellEditor {
119436
119439
  isPopup() {
119437
119440
  return this._gui.isPopUp;
119438
119441
  }
119442
+ getFieldMetadata() {
119443
+ return this._fieldMetadata;
119444
+ }
119445
+ }
119446
+
119447
+ class EzGridCustomCellEditor extends EzCellEditor {
119448
+ init(params) {
119449
+ var _a, _b;
119450
+ this._value = params.value;
119451
+ this._fieldName = params.column.getColId();
119452
+ this._customEditorInstance = params.customEditorsInfo.customEditor;
119453
+ super.init(params);
119454
+ this._defaultGui = this.getDefaultGui();
119455
+ const fieldMetadata = super.getFieldMetadata();
119456
+ this._params = {
119457
+ value: params.value,
119458
+ charPress: params.charPress,
119459
+ currentEditor: this._defaultGui,
119460
+ name: this._fieldName,
119461
+ source: CustomEditorSource.GRID,
119462
+ detailContext: params.customEditorsInfo.detailContext,
119463
+ setValue: (value) => this.setValue(value),
119464
+ getValue: () => this.getValue(),
119465
+ editorMetadata: {
119466
+ hidden: ((_a = fieldMetadata.props) === null || _a === void 0 ? void 0 : _a.visible) === false,
119467
+ label: fieldMetadata.label,
119468
+ userInterface: fieldMetadata.userInterface,
119469
+ props: fieldMetadata.props,
119470
+ optionLoader: fieldMetadata.optionLoader,
119471
+ options: ((_b = fieldMetadata.props) === null || _b === void 0 ? void 0 : _b.options) || {},
119472
+ }
119473
+ };
119474
+ }
119475
+ getDefaultGui() {
119476
+ const gui = super.getGui();
119477
+ gui.value = this._value;
119478
+ gui.onkeyup = (event) => {
119479
+ const value = event.target.value;
119480
+ this.setValue(value);
119481
+ };
119482
+ return gui;
119483
+ }
119484
+ getGui() {
119485
+ const editorElement = this._customEditorInstance.getEditorElement(this._params);
119486
+ if (!editorElement) {
119487
+ return this._defaultGui;
119488
+ }
119489
+ if (typeof editorElement === 'string') {
119490
+ const element = HTMLBuilder.parseElement(editorElement);
119491
+ return element;
119492
+ }
119493
+ return editorElement;
119494
+ }
119495
+ setValue(value) {
119496
+ this._value = value;
119497
+ }
119498
+ getValue() {
119499
+ return this._value;
119500
+ }
119501
+ }
119502
+
119503
+ class EzCellRender {
119504
+ init(params) {
119505
+ const span = document.createElement('span');
119506
+ this._currentParams = params;
119507
+ span.textContent = params.value;
119508
+ const fieldName = params.column.getColId();
119509
+ const dataUnit = params.context.dataUnit;
119510
+ this._fieldMetadata = buildEditorMetadata(dataUnit.getField(fieldName), params.eGridCell, dataUnit, params.context.editionManager);
119511
+ this._gui = span;
119512
+ }
119513
+ refresh() {
119514
+ try {
119515
+ this._currentParams.refreshCell();
119516
+ return true;
119517
+ }
119518
+ catch (_a) {
119519
+ return false;
119520
+ }
119521
+ }
119522
+ getGui() {
119523
+ return this._gui;
119524
+ }
119525
+ afterGuiAttached() {
119526
+ this.focusIn();
119527
+ }
119528
+ focusIn() {
119529
+ this._gui.focus();
119530
+ this._gui.setFocus({ selectText: true });
119531
+ }
119532
+ getValue() {
119533
+ return this._currentParams.getValue();
119534
+ }
119535
+ isPopup() {
119536
+ return this._gui.isPopUp;
119537
+ }
119538
+ getFieldMetadata() {
119539
+ return this._fieldMetadata;
119540
+ }
119541
+ }
119542
+
119543
+ class EzGridCustomCellRender extends EzCellRender {
119544
+ init(params) {
119545
+ var _a, _b;
119546
+ this._fieldName = params.column.getColId();
119547
+ this._customRenderInstance = params.customRendersInfo.customRender;
119548
+ super.init(params);
119549
+ const fieldMetadata = super.getFieldMetadata();
119550
+ this._params = {
119551
+ value: params.value,
119552
+ charPress: '',
119553
+ currentRender: super.getGui(),
119554
+ name: this._fieldName,
119555
+ source: CustomRenderSource.GRID,
119556
+ getValue: () => params.getValue(),
119557
+ detailContext: params.customRendersInfo.detailContext,
119558
+ renderMetadata: {
119559
+ hidden: ((_a = fieldMetadata.props) === null || _a === void 0 ? void 0 : _a.visible) === false,
119560
+ label: fieldMetadata.label,
119561
+ userInterface: fieldMetadata.userInterface,
119562
+ props: fieldMetadata.props,
119563
+ optionLoader: fieldMetadata.optionLoader,
119564
+ options: ((_b = fieldMetadata.props) === null || _b === void 0 ? void 0 : _b.options) || {},
119565
+ }
119566
+ };
119567
+ }
119568
+ getGui() {
119569
+ const editorElement = this._customRenderInstance.getRenderElement(this._params);
119570
+ if (!editorElement) {
119571
+ return super.getGui();
119572
+ }
119573
+ if (typeof editorElement === 'string') {
119574
+ const element = HTMLBuilder.parseElement(editorElement);
119575
+ return element;
119576
+ }
119577
+ return editorElement;
119578
+ }
119439
119579
  }
119440
119580
 
119441
119581
  class GridEditionManager {
119442
- constructor(dataUnit, useEnterLikeTab, recordsValidator, editionIsDisabled) {
119582
+ constructor(dataUnit, useEnterLikeTab, recordsValidator, editionIsDisabled, customEditors, customRenders) {
119443
119583
  this._dataUnit = dataUnit;
119444
119584
  this._recordValidationProcessor = new RecordValidationProcessor(this._dataUnit, {
119445
119585
  getRequiredFields: () => this.getRequiredFields(),
@@ -119448,6 +119588,8 @@ class GridEditionManager {
119448
119588
  }, recordsValidator);
119449
119589
  this._useEnterLikeTab = useEnterLikeTab;
119450
119590
  this._editionIsDisabled = editionIsDisabled;
119591
+ this._customEditors = customEditors;
119592
+ this._customRenders = customRenders;
119451
119593
  }
119452
119594
  configureGrid(options) {
119453
119595
  this._gridOptions = options;
@@ -119514,6 +119656,30 @@ class GridEditionManager {
119514
119656
  col.suppressKeyboardEvent = (params) => {
119515
119657
  return params.event.key === KeyCode.ENTER;
119516
119658
  };
119659
+ col.cellEditorSelector = (params) => {
119660
+ var _a;
119661
+ if ((_a = this._customEditors) === null || _a === void 0 ? void 0 : _a.has(params.colDef.field)) {
119662
+ const customEditor = this._customEditors.get(params.colDef.field);
119663
+ return {
119664
+ component: EzGridCustomCellEditor,
119665
+ params: {
119666
+ customEditorsInfo: customEditor,
119667
+ }
119668
+ };
119669
+ }
119670
+ };
119671
+ col.cellRendererSelector = (params) => {
119672
+ var _a;
119673
+ if ((_a = this._customRenders) === null || _a === void 0 ? void 0 : _a.has(params.colDef.field)) {
119674
+ const customRender = this._customRenders.get(params.colDef.field);
119675
+ return {
119676
+ component: EzGridCustomCellRender,
119677
+ params: {
119678
+ customRendersInfo: customRender,
119679
+ }
119680
+ };
119681
+ }
119682
+ };
119517
119683
  return col;
119518
119684
  }
119519
119685
  getRequiredFields() {
@@ -119655,6 +119821,12 @@ class GridEditionManager {
119655
119821
  this._lastCellEdited = { rowIndex: event.rowIndex, column: event.column, rowPinned: undefined };
119656
119822
  }
119657
119823
  }
119824
+ setCellEditors(customEditors) {
119825
+ this._customEditors = customEditors;
119826
+ }
119827
+ setCellRenders(customRenders) {
119828
+ this._customRenders = customRenders;
119829
+ }
119658
119830
  }
119659
119831
  class TargetEdition {
119660
119832
  constructor(rowIndex, column, backwards) {
@@ -119699,6 +119871,7 @@ class AgGridController {
119699
119871
  this._gridConfig = [];
119700
119872
  this._filteredColumns = new Map();
119701
119873
  this._filterColumnleftPosition = 0;
119874
+ this._customFormatters = new Map();
119702
119875
  this._enterprise = enterprise;
119703
119876
  }
119704
119877
  getGridConfig() {
@@ -119775,6 +119948,7 @@ class AgGridController {
119775
119948
  }
119776
119949
  initDatagrid(container, options) {
119777
119950
  var _a;
119951
+ this._container = container;
119778
119952
  if (this._grid === undefined) {
119779
119953
  LicenseManager.setLicenseKey(ApplicationContext.getContextValue('__EZUI__GRID_LICENSE__'));
119780
119954
  this._columnStateChangeCallback = options.onColumnStateChange;
@@ -119782,7 +119956,7 @@ class AgGridController {
119782
119956
  this._doubleClickCallBack = options.onDoubleClick;
119783
119957
  this._multipleSelection = options.allowMultipleSelection;
119784
119958
  this._dataUnit = options.dataUnit;
119785
- this._editionManager = new GridEditionManager(this._dataUnit, options.useEnterLikeTab, options.recordsValidator, options.editionIsDisabled);
119959
+ this._editionManager = new GridEditionManager(this._dataUnit, options.useEnterLikeTab, options.recordsValidator, options.editionIsDisabled, options.customEditors || this._customEditors, options.customRenders || this._customRenders);
119786
119960
  this._statusResolver = options.statusResolver;
119787
119961
  if (this._dataUnit) {
119788
119962
  this._dataUnit.sortingProvider = this;
@@ -119844,6 +120018,7 @@ class AgGridController {
119844
120018
  this.selectRows((selection === null || selection === void 0 ? void 0 : selection.recordIds) || [], true);
119845
120019
  }
119846
120020
  this._gridOptions.api.setHeaderHeight(this.getHeaderRowHeight());
120021
+ this._customFormatters = options.customFormatters;
119847
120022
  }
119848
120023
  }
119849
120024
  processFormatterCellCallback(params) {
@@ -120128,11 +120303,27 @@ class AgGridController {
120128
120303
  }
120129
120304
  this._gridOptions.api.refreshServerSide({ purge: true });
120130
120305
  }
120306
+ focusOnGridContainer() {
120307
+ this._container.setAttribute('tabindex', '-1');
120308
+ this._container.focus();
120309
+ }
120310
+ setFocus() {
120311
+ var _a, _b;
120312
+ if ((_b = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.records) === null || _b === void 0 ? void 0 : _b.length) {
120313
+ this.setFocusFirstRow();
120314
+ }
120315
+ else {
120316
+ this.focusOnGridContainer();
120317
+ }
120318
+ }
120131
120319
  setFocusFirstRow() {
120132
120320
  const firstRow = this._gridOptions.api.getDisplayedRowAtIndex(0);
120133
120321
  if (firstRow) {
120134
120322
  this.setFocusOnRow(firstRow.rowIndex);
120135
120323
  }
120324
+ else {
120325
+ this.focusOnGridContainer();
120326
+ }
120136
120327
  }
120137
120328
  setFocusLastRow() {
120138
120329
  const lastRow = this._gridOptions.api.getDisplayedRowAtIndex(this._gridOptions.api.getLastDisplayedRow());
@@ -120211,7 +120402,7 @@ class AgGridController {
120211
120402
  //Como vamos reordenar, precisamos considerar o deslocamento provocado por elas.
120212
120403
  const columnsOffset = colDef.length - columns.length;
120213
120404
  let sort = [];
120214
- state.forEach((cfgColumn, index) => {
120405
+ state === null || state === void 0 ? void 0 : state.forEach((cfgColumn, index) => {
120215
120406
  const colWidth = this.getColumnWidth(cfgColumn);
120216
120407
  this._gridOptions.columnApi.moveColumn(cfgColumn.name, index + columnsOffset);
120217
120408
  this._gridOptions.columnApi.setColumnWidth(cfgColumn.name, colWidth);
@@ -120308,12 +120499,19 @@ class AgGridController {
120308
120499
  showColumnFilter: (leftPosition) => this.showFilterColumn({ columnName: source.name, columnLabel: source.label, leftPosition, filteredOptions: this._filteredColumns.get(source.name), fromIcon: true }),
120309
120500
  },
120310
120501
  valueFormatter: params => {
120311
- if (params.value === undefined) {
120502
+ if (params.value === undefined || params.value === null) {
120312
120503
  return "";
120313
120504
  }
120314
120505
  if (params.value instanceof Promise) {
120315
120506
  return "Carregando...";
120316
120507
  }
120508
+ const customFormatter = this._customFormatters.get(source.name);
120509
+ if (customFormatter) {
120510
+ const formattedValue = customFormatter.format(params.value, source, params.data.__record__id__);
120511
+ if (formattedValue) {
120512
+ return formattedValue;
120513
+ }
120514
+ }
120317
120515
  if (this._dataUnit) {
120318
120516
  return this._dataUnit.getFormattedValue(source.name, params.value);
120319
120517
  }
@@ -120322,6 +120520,13 @@ class AgGridController {
120322
120520
  cellStyle: this.getStyleByColumn(source),
120323
120521
  });
120324
120522
  }
120523
+ setCustomFormatters(customFormatters) {
120524
+ this._customFormatters = customFormatters;
120525
+ }
120526
+ refreshSelectedRows() {
120527
+ const selectedNodes = this._gridOptions.api.getSelectedNodes();
120528
+ this._gridOptions.api.redrawRows({ rowNodes: selectedNodes });
120529
+ }
120325
120530
  getInitCellStyle() {
120326
120531
  return {
120327
120532
  'line-height': this.getRowHeight() - 1 + 'px',
@@ -120497,11 +120702,52 @@ class AgGridController {
120497
120702
  const labelSize = (((_b = field === null || field === void 0 ? void 0 : field.label) === null || _b === void 0 ? void 0 : _b.length) || 0) * this.DEFAULT_FONT_SIZE + this.DEFAULT_ICON_SIZE;
120498
120703
  return labelSize > this.DEFAULT_MAX_SIZE ? this.DEFAULT_MAX_SIZE : labelSize;
120499
120704
  }
120705
+ setCellEditors(customEditors) {
120706
+ var _a;
120707
+ if (!this._editionManager) {
120708
+ this._customEditors = customEditors;
120709
+ return;
120710
+ }
120711
+ this._editionManager.setCellEditors(customEditors);
120712
+ (_a = this._gridOptions) === null || _a === void 0 ? void 0 : _a.api.redrawRows();
120713
+ }
120714
+ setCellRenders(customRenders) {
120715
+ var _a;
120716
+ if (!this._editionManager) {
120717
+ this._customRenders = customRenders;
120718
+ return;
120719
+ }
120720
+ this._editionManager.setCellRenders(customRenders);
120721
+ (_a = this._gridOptions) === null || _a === void 0 ? void 0 : _a.api.redrawRows();
120722
+ }
120723
+ }
120724
+
120725
+ function enableSelectAll(total) {
120726
+ return total !== undefined;
120727
+ }
120728
+ function buildSelectAllLabel(allRecordSelected, count, total) {
120729
+ if (allRecordSelected)
120730
+ return 'Selecionar apenas a página atual';
120731
+ if (total === undefined)
120732
+ return `Carregando todos os ${count} registros`;
120733
+ return `Selecionar todos os ${total} registros`;
120734
+ }
120735
+ function buildSelectAllTitle(total) {
120736
+ if (enableSelectAll(total))
120737
+ return '';
120738
+ return 'Aguarde o carregamento para selecionar o registro de todas as páginas';
120739
+ }
120740
+ function getText(selectionCount, allSelectedRecords) {
120741
+ if (allSelectedRecords) {
120742
+ return `Todos os <strong>${selectionCount} registros</strong> da grade estão selecionados.`;
120743
+ }
120744
+ const pluralCharacter = selectionCount > 1 ? "s" : "";
120745
+ return `Há <strong>${selectionCount} registro${pluralCharacter}</strong> selecionado${pluralCharacter} na grade.`;
120500
120746
  }
120501
120747
 
120502
120748
  const SelectionCounter = (props) => {
120503
120749
  const { selectionCount, currentPageSelected, allRecordSelected, paginationInfo, canSelectAll, onSelectAll, onSelectPage, onClearAll, onClose } = props;
120504
- const { total, hasMore } = paginationInfo || {};
120750
+ const { total, hasMore, count } = paginationInfo || {};
120505
120751
  const shouldRenderSelectionButton = () => {
120506
120752
  if ((!allRecordSelected && selectionCount === total) || (allRecordSelected && !hasMore))
120507
120753
  return false;
@@ -120515,20 +120761,11 @@ const SelectionCounter = (props) => {
120515
120761
  h("label", Object.assign({ innerHTML: getText(selectionCount, allRecordSelected), class: "ez-text ez-text--primary ez-text--medium ez-margin-right--medium ez-margin-top--medium" }, getElementID("ezGridSelectionCounter_label"))),
120516
120762
  h("div", { class: "ez-flex ez-margin-right--medium" },
120517
120763
  shouldRenderSelectionButton() &&
120518
- h("ez-button", Object.assign({ class: "ez-margin-right--medium", label: `Selecionar ${allRecordSelected ? "apenas a página atual" : `todos os ${total} registros`}`, mode: "link", onClick: allRecordSelected ? onSelectPage : onSelectAll }, getElementID(`ezGridSelectionCounter_select${allRecordSelected ? "Page" : "All"}`))),
120519
- h("ez-button", Object.assign({ class: "grid__btn-clear", label: "Limpar", mode: "link", onClick: onClearAll }, getElementID("ezGridSelectionCounter_clearAll"))))),
120764
+ h("ez-button", Object.assign({ title: buildSelectAllTitle(total), enabled: enableSelectAll(total), class: "ez-margin-right--medium", label: buildSelectAllLabel(allRecordSelected, count, total), mode: "link", onClick: allRecordSelected ? onSelectPage : onSelectAll }, getElementID(`ezGridSelectionCounter_select${allRecordSelected ? "Page" : "All"}`))),
120765
+ h("ez-button", Object.assign({ class: "grid__btn-clear", label: "Limpar Sele\u00E7\u00E3o", mode: "link", onClick: onClearAll }, getElementID("ezGridSelectionCounter_clearAll"))))),
120520
120766
  h("button", Object.assign({ class: "grid__btn-close", title: "Fechar", onClick: onClose }, getElementID("ezGridSelectionCounter_close")),
120521
120767
  h("ez-icon", { iconName: "close" })))));
120522
120768
  };
120523
- function getText(selectionCount, allSelectedRecords) {
120524
- if (allSelectedRecords) {
120525
- return `Todos os <strong>${selectionCount} registros</strong> da grade estão selecionados.`;
120526
- }
120527
- else {
120528
- const pluralChar = selectionCount > 1 ? "s" : "";
120529
- return `Há <strong>${selectionCount} registro${pluralChar}</strong> selecionado${pluralChar}.`;
120530
- }
120531
- }
120532
120769
  function getElementID(sufix) {
120533
120770
  return {
120534
120771
  [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(sufix)
@@ -120690,7 +120927,7 @@ class InMemoryFilterColumnDataSource {
120690
120927
  }
120691
120928
  }
120692
120929
 
120693
- const ezGridCss = ".sc-ez-grid-h{display:grid;grid-template-rows:auto 1fr auto;height:100%;width:100%;--ez-grid__header--background-color:var(--background--xlight, #FFF);--ez-grid__selection-counter--z-index:var(--visible, 1);--ez-grid__container--shadow:0 0 16px 0 rgb(0 38 111 / 12%);--ez-grid--min-height:300px;min-height:var(--ez-grid--min-height)}.grid-header.sc-ez-grid{display:grid;justify-content:space-between;align-items:center;grid-row-start:1;grid-template-columns:1fr;background-color:var(--ez-grid__header--background-color, #FFF)}.grid__container.sc-ez-grid{padding-top:15px;margin-top:-12px;box-shadow:var(--ez-grid__container--shadow);background-color:var(--ez-grid__header--background-color)}.grid-header__popover.sc-ez-grid{position:relative;top:var(--space--sm, 16px)}.grid-header__container.sc-ez-grid{display:flex;align-items:center}.grid-header__position.sc-ez-grid{display:flex;align-items:center;justify-content:space-between}.grid__selection-counter.sc-ez-grid{position:fixed;white-space:nowrap;transform:translate(-50%, 0px);left:50%;opacity:0;bottom:-100%;transition:opacity 0.1s, bottom 0.5s}.grid__selection-counter--opened.sc-ez-grid{opacity:1;bottom:0px}.grid__btn-close.sc-ez-grid{display:flex;align-items:center;justify-content:center;padding:0;outline:none;width:20px;height:20px;border:none;background-color:unset;cursor:pointer}.grid__btn-clear.sc-ez-grid{--ez-button--link-color:var(--color--alert-warning-900, #8C6B00);--ez-button--link--hover-color:var(--color--alert-warning-900, #8C6B00)}[no-header].sc-ez-grid-h .grid-header.sc-ez-grid{height:0;padding:0}.grid-header__pagination.sc-ez-grid{width:30%;min-width:100px;justify-content:flex-end;flex-wrap:wrap}.grid-header__left-container.sc-ez-grid{width:70%}.grid-header__pagination-label.sc-ez-grid{width:100%;white-space:nowrap}.overflowed.sc-ez-grid{display:none}";
120930
+ const ezGridCss = ".sc-ez-grid-h{display:grid;grid-template-rows:auto 1fr auto;height:100%;width:100%;--ez-grid__header--background-color:var(--background--xlight, #FFF);--ez-grid__selection-counter--z-index:var(--visible, 1);--ez-grid__container--shadow:0 0 16px 0 rgb(0 38 111 / 12%);--ez-grid--min-height:300px;min-height:var(--ez-grid--min-height)}.grid-header.sc-ez-grid{display:grid;justify-content:space-between;align-items:center;grid-row-start:1;grid-template-columns:1fr;background-color:var(--ez-grid__header--background-color, #FFF)}.grid__container.sc-ez-grid{padding-top:15px;margin-top:-12px;outline:none;box-shadow:var(--ez-grid__container--shadow);background-color:var(--ez-grid__header--background-color)}.grid-header__popover.sc-ez-grid{position:relative;top:var(--space--sm, 16px)}.grid-header__container.sc-ez-grid{display:flex;align-items:center}.grid-header__position.sc-ez-grid{display:flex;align-items:center;justify-content:space-between}.grid__selection-counter.sc-ez-grid{position:fixed;white-space:nowrap;transform:translate(-50%, 0px);left:50%;opacity:0;bottom:-100%;transition:opacity 0.1s, bottom 0.5s}.grid__selection-counter--opened.sc-ez-grid{opacity:1;bottom:0px}.grid__btn-close.sc-ez-grid{display:flex;align-items:center;justify-content:center;padding:0;outline:none;width:20px;height:20px;border:none;background-color:unset;cursor:pointer}.grid__btn-clear.sc-ez-grid{--ez-button--link-color:var(--color--alert-warning-900, #8C6B00);--ez-button--link--hover-color:var(--color--alert-warning-900, #8C6B00)}[no-header].sc-ez-grid-h .grid-header.sc-ez-grid{height:0;padding:0}.grid-header__pagination.sc-ez-grid{width:30%;min-width:100px;justify-content:flex-end;flex-wrap:wrap}.grid-header__left-container.sc-ez-grid{width:70%}.grid-header__pagination-label.sc-ez-grid{width:100%;white-space:nowrap}.overflowed.sc-ez-grid{display:none}";
120694
120931
 
120695
120932
  const windowInstace = window;
120696
120933
  const matches = (text, filter) => {
@@ -120708,6 +120945,8 @@ const EzGrid = class {
120708
120945
  this.componentReady = createEvent(this, "componentReady", 7);
120709
120946
  this._gridController = new AgGridController(false);
120710
120947
  this._messageFilterAppliedSuccess = 'Filtro de coluna aplicado com sucesso!';
120948
+ this._customEditor = new Map();
120949
+ this._customRenders = new Map();
120711
120950
  this._paginationInfo = undefined;
120712
120951
  this._paginationChangedByKeyboard = true;
120713
120952
  this._showSelectionCounter = false;
@@ -120715,6 +120954,7 @@ const EzGrid = class {
120715
120954
  this._currentPageSelected = undefined;
120716
120955
  this._selectionCount = undefined;
120717
120956
  this._hasLeftButtons = false;
120957
+ this._customFormatters = new Map();
120718
120958
  this.multipleSelection = undefined;
120719
120959
  this.config = undefined;
120720
120960
  this.selectionToastConfig = undefined;
@@ -120786,6 +121026,69 @@ const EzGrid = class {
120786
121026
  async filterColumns(search) {
120787
121027
  return Promise.resolve(this._gridController.getColumnsState().filter(col => matches(col.label, search)));
120788
121028
  }
121029
+ /**
121030
+ * Registra um editor customizado para campos da grade e formulário.
121031
+ */
121032
+ async addCustomEditor(fieldName, customEditor, detailContext) {
121033
+ const newCustomEditor = new Map(this._customEditor);
121034
+ newCustomEditor.set(fieldName, {
121035
+ customEditor,
121036
+ detailContext,
121037
+ });
121038
+ this._customEditor = newCustomEditor;
121039
+ this._gridController.setCellEditors(newCustomEditor);
121040
+ }
121041
+ /**
121042
+ * Registra um render customizado para colunas da grid.
121043
+ */
121044
+ async addGridCustomRender(fieldName, customRender, detailContext) {
121045
+ const newCustomRenders = new Map(this._customRenders);
121046
+ newCustomRenders.set(fieldName, { customRender, detailContext });
121047
+ this._customRenders = newCustomRenders;
121048
+ this._gridController.setCellRenders(newCustomRenders);
121049
+ }
121050
+ /**
121051
+ * Registra um formatador de valores para uma coluna da grid.
121052
+ */
121053
+ async addCustomValueFormatter(columnName, customFormatter) {
121054
+ if (!columnName || !customFormatter) {
121055
+ return;
121056
+ }
121057
+ const newCustomFormatters = new Map(this._customFormatters);
121058
+ newCustomFormatters.set(columnName, customFormatter);
121059
+ this._customFormatters = newCustomFormatters;
121060
+ this._gridController.setCustomFormatters(newCustomFormatters);
121061
+ }
121062
+ /**
121063
+ * Remove o formatador de valores de uma coluna da grid.
121064
+ */
121065
+ async removeCustomValueFormatter(columnName) {
121066
+ if (!columnName) {
121067
+ return;
121068
+ }
121069
+ const newCustomFormatters = new Map(this._customFormatters);
121070
+ newCustomFormatters.delete(columnName);
121071
+ this._customFormatters = newCustomFormatters;
121072
+ this._gridController.setCustomFormatters(newCustomFormatters);
121073
+ }
121074
+ /**
121075
+ * Atualiza linhas da grade.
121076
+ */
121077
+ async refreshSelectedRows() {
121078
+ this._gridController.refreshSelectedRows();
121079
+ }
121080
+ /**
121081
+ * Retorna o formatador customizado da coluna caso exista.
121082
+ */
121083
+ async getCustomValueFormatter(columnName) {
121084
+ return this._customFormatters.get(columnName);
121085
+ }
121086
+ /**
121087
+ * Atribui o foco para a grade.
121088
+ */
121089
+ async setFocus() {
121090
+ this._gridController.setFocus();
121091
+ }
120789
121092
  observeConfig(config) {
120790
121093
  this._gridController.setColumnsState(config === null || config === void 0 ? void 0 : config.columns);
120791
121094
  }
@@ -120959,14 +121262,10 @@ const EzGrid = class {
120959
121262
  (_a = this._gridApi) === null || _a === void 0 ? void 0 : _a.clearRangeSelection();
120960
121263
  }
120961
121264
  getPaginationControl() {
120962
- if (this._paginationInfo) {
120963
- const { currentPage, hasMore } = this._paginationInfo;
120964
- return [
120965
- h("div", { class: "ez-text ez-text--primary ez-text--medium ez-margin-right--medium", ref: (element) => (this._refPaginationLabel = element) }, h("span", { class: "grid-header__pagination-label" }, h("strong", { class: "ez-text ez-text--primary ez-text--medium" }, this._getActualPageLabel()), this._getRemainingPageLabel())),
120966
- h("div", { id: "grid-pagination-tooltip", ref: (element) => (this._refPaginationLabelTooltip = element), class: "ez-flex ez-margin-right--medium" }, h("ez-button", { size: "small", class: "ez-margin-right--medium", iconName: "chevron-left", mode: "icon", enabled: currentPage > 0, onClick: () => this.previousPage(), label: "P\u00E1gina anterior" }), h("ez-button", { size: "small", iconName: "chevron-right", mode: "icon", enabled: hasMore, onClick: () => this.nextPage(), label: "Pr\u00F3xima P\u00E1gina" })),
120967
- ];
120968
- }
120969
- return null;
121265
+ if (!this._paginationInfo)
121266
+ return null;
121267
+ const { currentPage, hasMore } = this._paginationInfo;
121268
+ return (h("div", { class: "grid-header__container grid-header__pagination", ref: ref => (this._refPaginationControl = ref) }, h("div", { class: "ez-text ez-text--primary ez-text--medium ez-margin-right--medium", ref: (element) => (this._refPaginationLabel = element) }, h("span", { class: "grid-header__pagination-label" }, h("strong", { class: "ez-text ez-text--primary ez-text--medium" }, this._getActualPageLabel()), this._getRemainingPageLabel())), h("div", { id: "grid-pagination-tooltip", ref: (element) => (this._refPaginationLabelTooltip = element), class: "ez-flex ez-margin-right--medium" }, h("ez-button", { size: "small", class: "ez-margin-right--medium", iconName: "chevron-left", mode: "icon", enabled: currentPage > 0, onClick: () => this.previousPage(), label: "P\u00E1gina anterior" }), h("ez-button", { size: "small", iconName: "chevron-right", mode: "icon", enabled: hasMore, onClick: () => this.nextPage(), label: "Pr\u00F3xima P\u00E1gina" }))));
120970
121269
  }
120971
121270
  componentDidLoad() {
120972
121271
  this._gridController.initDatagrid(this._container, {
@@ -120987,7 +121286,8 @@ const EzGrid = class {
120987
121286
  statusResolver: this.statusResolver,
120988
121287
  useEnterLikeTab: this.useEnterLikeTab,
120989
121288
  recordsValidator: this.recordsValidator,
120990
- editionIsDisabled: () => !this.canEdit
121289
+ editionIsDisabled: () => !this.canEdit,
121290
+ customFormatters: this._customFormatters
120991
121291
  });
120992
121292
  if (this.config) {
120993
121293
  this.observeConfig(this.config);
@@ -121082,7 +121382,7 @@ const EzGrid = class {
121082
121382
  }
121083
121383
  render() {
121084
121384
  var _a;
121085
- return (h(Host, { "no-header": this.hideHeader() }, h("div", { class: "grid__container ez-grid", ref: elem => (this._container = elem) }), h("div", { class: "ez-box ez-box--shadow ez-padding--medium grid-header" }, h("filter-column", { class: "grid-header__popover", noHeaderTaskBar: !this._hasLeftButtons, dataSource: this.getDataSource(), dataUnit: this.dataUnit, gridHeaderHidden: this.hideHeader(), ref: (element) => (this._filterColumn = element) }), h("div", { class: "grid-header__position" }, h("div", { class: "grid-header__container grid-header__left-container" }, h("slot", { name: "leftButtons" })), h("div", { class: "grid-header__container grid-header__pagination", ref: ref => (this._refPaginationControl = ref) }, this.getPaginationControl()))), h("div", { ref: (ref) => (this._gridSelectionCounter = ref), class: `grid__selection-counter ez-elevation--4
121385
+ return (h(Host, { "no-header": this.hideHeader() }, h("div", { class: "grid__container ez-grid", ref: elem => (this._container = elem) }), h("div", { class: "ez-box ez-box--shadow ez-padding--medium grid-header" }, h("filter-column", { class: "grid-header__popover", noHeaderTaskBar: !this._hasLeftButtons, dataSource: this.getDataSource(), dataUnit: this.dataUnit, gridHeaderHidden: this.hideHeader(), ref: (element) => (this._filterColumn = element) }), h("div", { class: "grid-header__position" }, h("div", { class: "grid-header__container grid-header__left-container" }, h("slot", { name: "leftButtons" })), this.getPaginationControl())), h("div", { ref: (ref) => (this._gridSelectionCounter = ref), class: `grid__selection-counter ez-elevation--4
121086
121386
  ${this._showSelectionCounter ? 'grid__selection-counter--opened' : ''}
121087
121387
  ` }, h(SelectionCounter, { selectionCount: this._selectionCount, currentPageSelected: this._currentPageSelected, paginationInfo: this._paginationInfo, canSelectAll: (_a = this.selectionToastConfig) === null || _a === void 0 ? void 0 : _a.canSelectAll, allRecordSelected: this._isAllSelection, onSelectAll: () => this.onSelectAllRecords(), onSelectPage: () => this.onSelectPageRecords(), onClearAll: () => this.onClearSelectedRecords(), onClose: () => (this._showSelectionCounter = false) })), h("div", { class: "grid__footer" }, h("slot", { name: "footer" }))));
121088
121388
  }
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { E as EzScrollDirection } from './EzScrollDirection-2df26c93.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-baa5e267.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-5a720e56.js';
2
2
  import { StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
 
4
4
  const ezIconCss = ":host{display:flex;overflow:hidden;position:relative;--ez-icon--color:var(--icon--color, #ffffff)}svg{display:flex;justify-content:center;align-items:center;fill:var(--ez-icon--color)}.x-small{width:12px;height:12px}.small{width:16px;height:16px}.medium{width:20px;height:20px}.large{width:24px;height:24px}.x-large{width:30px;height:30px}[class^=\"ez-icon-\"],[class*=\" ez-icon-\"]{color:var(--ez-icon--color)}[class^=\"ez-icon-\"],[class*=\" ez-icon-\"]{font-family:'ez-icons' !important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ez-icon-2chevron-down:before{content:\"\\ea01\"}.ez-icon-2chevron-up:before{content:\"\\ea02\"}.ez-icon-acao:before{content:\"\\ea03\"}.ez-icon-account-outline:before{content:\"\\ea04\"}.ez-icon-account:before{content:\"\\ea05\"}.ez-icon-alert-circle-inverted:before{content:\"\\ea06\"}.ez-icon-alert-circle:before{content:\"\\ea07\"}.ez-icon-alert-mail:before{content:\"\\ea08\"}.ez-icon-alert-popup:before{content:\"\\ea09\"}.ez-icon-anexo:before{content:\"\\ea0a\"}.ez-icon-antecipacao:before{content:\"\\ea0b\"}.ez-icon-apps:before{content:\"\\ea0c\"}.ez-icon-arrow-forward:before{content:\"\\ea0d\"}.ez-icon-arrow-upward:before{content:\"\\ea0e\"}.ez-icon-arrow_back:before{content:\"\\ea0f\"}.ez-icon-arrow_downward:before{content:\"\\ea10\"}.ez-icon-baixa:before{content:\"\\ea11\"}.ez-icon-balance:before{content:\"\\ea12\"}.ez-icon-bell-inverted:before{content:\"\\ea13\"}.ez-icon-bell:before{content:\"\\ea14\"}.ez-icon-boleto:before{content:\"\\ea15\"}.ez-icon-boolean:before{content:\"\\ea16\"}.ez-icon-business-center:before{content:\"\\ea17\"}.ez-icon-calendar-clock:before{content:\"\\ea18\"}.ez-icon-calendar:before{content:\"\\ea19\"}.ez-icon-cash-remove:before{content:\"\\ea1a\"}.ez-icon-check-circle-inverted:before{content:\"\\ea1b\"}.ez-icon-check-circle:before{content:\"\\ea1c\"}.ez-icon-check:before{content:\"\\ea1d\"}.ez-icon-chevron-down:before{content:\"\\ea1e\"}.ez-icon-chevron-left:before{content:\"\\ea1f\"}.ez-icon-chevron-right:before{content:\"\\ea20\"}.ez-icon-chevron-up:before{content:\"\\ea21\"}.ez-icon-circle--medium:before{content:\"\\ea22\"}.ez-icon-circle:before{content:\"\\ea23\"}.ez-icon-cleaning:before{content:\"\\ea24\"}.ez-icon-clipboard:before{content:\"\\ea25\"}.ez-icon-clock-rotate-left:before{content:\"\\ea26\"}.ez-icon-close:before{content:\"\\ea27\"}.ez-icon-cobrar:before{content:\"\\ea28\"}.ez-icon-code:before{content:\"\\ea29\"}.ez-icon-configuration:before{content:\"\\ea2a\"}.ez-icon-content-cut:before{content:\"\\ea2b\"}.ez-icon-copy:before{content:\"\\ea2c\"}.ez-icon-credit_card:before{content:\"\\ea2d\"}.ez-icon-crop:before{content:\"\\ea2e\"}.ez-icon-custom:before{content:\"\\ea2f\"}.ez-icon-delete-file:before{content:\"\\ea30\"}.ez-icon-delete:before{content:\"\\ea31\"}.ez-icon-description:before{content:\"\\ea32\"}.ez-icon-dividir:before{content:\"\\ea33\"}.ez-icon-docx:before{content:\"\\ea34\"}.ez-icon-dot-notification:before{content:\"\\ea35\"}.ez-icon-dots-horizontal:before{content:\"\\ea36\"}.ez-icon-dots-vertical:before{content:\"\\ea37\"}.ez-icon-drag-indicator:before{content:\"\\ea38\"}.ez-icon-dual-chevron-down:before{content:\"\\ea39\"}.ez-icon-dual-chevron-left:before{content:\"\\ea3a\"}.ez-icon-dual-chevron-right:before{content:\"\\ea3b\"}.ez-icon-dual-chevron-up:before{content:\"\\ea3c\"}.ez-icon-edit-file:before{content:\"\\ea3d\"}.ez-icon-edit-table:before{content:\"\\ea3e\"}.ez-icon-edit-time:before{content:\"\\ea3f\"}.ez-icon-edit-value:before{content:\"\\ea40\"}.ez-icon-edit:before{content:\"\\ea41\"}.ez-icon-email:before{content:\"\\ea42\"}.ez-icon-estorno:before{content:\"\\ea43\"}.ez-icon-exe:before{content:\"\\ea44\"}.ez-icon-expand:before{content:\"\\ea45\"}.ez-icon-expandir_card:before{content:\"\\ea46\"}.ez-icon-extrato:before{content:\"\\ea47\"}.ez-icon-eye-off:before{content:\"\\ea48\"}.ez-icon-eye:before{content:\"\\ea49\"}.ez-icon-favorite:before{content:\"\\ea4a\"}.ez-icon-figma:before{content:\"\\ea4b\"}.ez-icon-file-download:before{content:\"\\ea4c\"}.ez-icon-file-upload:before{content:\"\\ea4d\"}.ez-icon-filter:before{content:\"\\ea4e\"}.ez-icon-find-file:before{content:\"\\ea4f\"}.ez-icon-find-page:before{content:\"\\ea50\"}.ez-icon-format-color-fill:before{content:\"\\ea51\"}.ez-icon-generic:before{content:\"\\ea52\"}.ez-icon-gif:before{content:\"\\ea53\"}.ez-icon-graph_bar:before{content:\"\\ea54\"}.ez-icon-handshake:before{content:\"\\ea55\"}.ez-icon-help-inverted:before{content:\"\\ea56\"}.ez-icon-help:before{content:\"\\ea57\"}.ez-icon-hide_menu:before{content:\"\\ea58\"}.ez-icon-home:before{content:\"\\ea59\"}.ez-icon-icons104:before{content:\"\\ea5a\"}.ez-icon-language:before{content:\"\\ea5b\"}.ez-icon-launch:before{content:\"\\ea5c\"}.ez-icon-lightbulb:before{content:\"\\ea5d\"}.ez-icon-list:before{content:\"\\ea5e\"}.ez-icon-location:before{content:\"\\ea5f\"}.ez-icon-lock-outline:before{content:\"\\ea60\"}.ez-icon-lock:before{content:\"\\ea61\"}.ez-icon-menu:before{content:\"\\ea62\"}.ez-icon-mid:before{content:\"\\ea63\"}.ez-icon-minus:before{content:\"\\ea64\"}.ez-icon-money-off:before{content:\"\\ea65\"}.ez-icon-money:before{content:\"\\ea66\"}.ez-icon-more:before{content:\"\\ea67\"}.ez-icon-mp3:before{content:\"\\ea68\"}.ez-icon-mp4:before{content:\"\\ea69\"}.ez-icon-multiple-files:before{content:\"\\ea6a\"}.ez-icon-north-west:before{content:\"\\ea6b\"}.ez-icon-number:before{content:\"\\ea6c\"}.ez-icon-ordem-ascendente:before{content:\"\\ea6d\"}.ez-icon-ordem-descendente:before{content:\"\\ea6e\"}.ez-icon-parcelar:before{content:\"\\ea6f\"}.ez-icon-pause:before{content:\"\\ea70\"}.ez-icon-payments:before{content:\"\\ea71\"}.ez-icon-pdf:before{content:\"\\ea72\"}.ez-icon-play:before{content:\"\\ea73\"}.ez-icon-plus:before{content:\"\\ea74\"}.ez-icon-png:before{content:\"\\ea75\"}.ez-icon-power:before{content:\"\\ea76\"}.ez-icon-pptx:before{content:\"\\ea77\"}.ez-icon-preview:before{content:\"\\ea78\"}.ez-icon-print:before{content:\"\\ea79\"}.ez-icon-push-pin:before{content:\"\\ea7a\"}.ez-icon-rateio:before{content:\"\\ea7b\"}.ez-icon-receipt:before{content:\"\\ea7c\"}.ez-icon-recolher_card:before{content:\"\\ea7d\"}.ez-icon-restore:before{content:\"\\ea7e\"}.ez-icon-return:before{content:\"\\ea7f\"}.ez-icon-sankhya-place:before{content:\"\\ea80\"}.ez-icon-save:before{content:\"\\ea81\"}.ez-icon-search:before{content:\"\\ea82\"}.ez-icon-settings-inverted:before{content:\"\\ea83\"}.ez-icon-settings:before{content:\"\\ea84\"}.ez-icon-share:before{content:\"\\ea85\"}.ez-icon-shield:before{content:\"\\ea86\"}.ez-icon-show_menu:before{content:\"\\ea87\"}.ez-icon-south-east:before{content:\"\\ea88\"}.ez-icon-sync:before{content:\"\\ea89\"}.ez-icon-table:before{content:\"\\ea8a\"}.ez-icon-tag_code:before{content:\"\\ea8b\"}.ez-icon-text:before{content:\"\\ea8c\"}.ez-icon-timeline:before{content:\"\\ea8d\"}.ez-icon-timer-outline:before{content:\"\\ea8e\"}.ez-icon-trending-up:before{content:\"\\ea8f\"}.ez-icon-tune:before{content:\"\\ea90\"}.ez-icon-txt:before{content:\"\\ea91\"}.ez-icon-un-pin:before{content:\"\\ea92\"}.ez-icon-unfold_less:before{content:\"\\ea93\"}.ez-icon-unfold_more:before{content:\"\\ea94\"}.ez-icon-user-circle:before{content:\"\\ea95\"}.ez-icon-warning-outline:before{content:\"\\ea96\"}.ez-icon-warning_triangle:before{content:\"\\ea97\"}.ez-icon-whatshot:before{content:\"\\ea98\"}.ez-icon-xlsx:before{content:\"\\ea99\"}.ez-icon-zip:before{content:\"\\ea9a\"}.x-small--font{font-size:12px}.small--font{font-size:16px}.medium--font{font-size:20px}.large--font{font-size:24px}.x-large--font{font-size:30px}";