@sankhyalabs/sankhyablocks 9.2.0-dev.2 → 9.2.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 (236) hide show
  1. package/dist/cjs/{ConfigStorage-1931defc.js → ConfigStorage-8b6def32.js} +2 -2
  2. package/dist/cjs/{DataFetcher-ad9fb3bb.js → DataFetcher-2c37b6a1.js} +52 -1
  3. package/dist/cjs/{ISave-18ffb73e.js → ISave-b22b3cf0.js} +1 -1
  4. package/dist/cjs/{SnkFormConfigManager-65e5288e.js → SnkFormConfigManager-477a27de.js} +2 -2
  5. package/dist/cjs/{ClientSideExporterProvider-994f6e26.js → SnkMultiSelectionListDataSource-b7ab26ba.js} +82 -79
  6. package/dist/cjs/{auth-fetcher-afbe69ab.js → auth-fetcher-78a90b36.js} +1 -1
  7. package/dist/cjs/{dataunit-fetcher-c7253b02.js → dataunit-fetcher-877944a9.js} +1 -1
  8. package/dist/cjs/filter-validate-6993f6f2.js +30 -0
  9. package/dist/cjs/{form-config-fetcher-f6e66d64.js → form-config-fetcher-dee08eb4.js} +1 -1
  10. package/dist/cjs/{index-0ad2baeb.js → index-13d05f03.js} +21 -5
  11. package/dist/cjs/index-1cf293c1.js +8 -8
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +4 -4
  14. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  15. package/dist/cjs/snk-actions-button_8.cjs.entry.js +5 -5
  16. package/dist/cjs/snk-application.cjs.entry.js +6 -9
  17. package/dist/cjs/snk-attach.cjs.entry.js +7 -7
  18. package/dist/cjs/snk-crud.cjs.entry.js +7 -7
  19. package/dist/cjs/snk-data-exporter.cjs.entry.js +5 -5
  20. package/dist/cjs/{snk-data-unit-448fce74.js → snk-data-unit-0cfa7622.js} +14 -4
  21. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -3
  22. package/dist/cjs/snk-detail-view.cjs.entry.js +9 -9
  23. package/dist/cjs/snk-entity-list.cjs.entry.js +10 -3
  24. package/dist/cjs/snk-expression-group_2.cjs.entry.js +1 -1
  25. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +189 -115
  26. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +23 -2
  27. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +20 -2
  28. package/dist/cjs/snk-filter-detail.cjs.entry.js +25 -8
  29. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +9 -14
  30. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +16 -3
  31. package/dist/cjs/snk-filter-number.cjs.entry.js +34 -3
  32. package/dist/cjs/snk-filter-period.cjs.entry.js +59 -14
  33. package/dist/cjs/snk-filter-search.cjs.entry.js +14 -3
  34. package/dist/cjs/snk-filter-text.cjs.entry.js +18 -1
  35. package/dist/cjs/snk-form_2.cjs.entry.js +31 -5
  36. package/dist/cjs/snk-grid.cjs.entry.js +158 -66
  37. package/dist/cjs/{snk-guides-viewer-c23ed218.js → snk-guides-viewer-38277265.js} +6 -6
  38. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
  39. package/dist/cjs/snk-personalized-filter.cjs.entry.js +14 -6
  40. package/dist/cjs/snk-pesquisa.cjs.entry.js +4 -4
  41. package/dist/cjs/snk-simple-bar.cjs.entry.js +5 -5
  42. package/dist/cjs/snk-simple-crud.cjs.entry.js +60 -23
  43. package/dist/cjs/snk-taskbar.cjs.entry.js +2 -2
  44. package/dist/cjs/{taskbar-elements-3b74cd21.js → taskbar-elements-fb5d1e08.js} +1 -1
  45. package/dist/collection/components/snk-application/snk-application.js +0 -2
  46. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +4 -1
  47. package/dist/collection/components/snk-data-unit/snk-data-unit.js +174 -29
  48. package/dist/collection/components/snk-entity-list/snk-entity-list.js +28 -4
  49. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +72 -2
  50. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +73 -2
  51. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +51 -5
  52. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +83 -3
  53. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +118 -27
  54. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +49 -5
  55. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +71 -1
  56. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +62 -11
  57. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +70 -8
  58. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +0 -4
  59. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +112 -16
  60. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +8 -16
  61. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +315 -114
  62. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
  63. package/dist/collection/components/snk-filter-bar/utils/filter-validate.js +24 -0
  64. package/dist/collection/components/snk-form/snk-form.js +133 -22
  65. package/dist/collection/components/snk-grid/snk-grid.js +488 -133
  66. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +83 -21
  67. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +80 -14
  68. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +9 -9
  69. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +414 -119
  70. package/dist/collection/components/snk-taskbar/snk-taskbar.js +102 -36
  71. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +1 -0
  72. package/dist/collection/lib/http/data-fetcher/custom-xhr-override.js +39 -0
  73. package/dist/collection/lib/message/resources/en-us/snk-filter-bar.msg.js +1 -0
  74. package/dist/collection/lib/message/resources/en-us/snk-grid.msg.js +4 -0
  75. package/dist/collection/lib/message/resources/es-es/snk-filter-bar.msg.js +1 -0
  76. package/dist/collection/lib/message/resources/es-es/snk-grid.msg.js +4 -0
  77. package/dist/collection/lib/message/resources/pt-br/snk-filter-bar.msg.js +1 -0
  78. package/dist/collection/lib/message/resources/pt-br/snk-grid.msg.js +4 -0
  79. package/dist/components/ContinuousInsertUtils.js +4 -1
  80. package/dist/components/DataFetcher.js +52 -1
  81. package/dist/components/index2.js +21 -5
  82. package/dist/components/snk-application2.js +0 -3
  83. package/dist/components/snk-crud.js +62 -44
  84. package/dist/components/snk-data-unit2.js +12 -2
  85. package/dist/components/snk-detail-view2.js +89 -56
  86. package/dist/components/snk-entity-list.js +11 -3
  87. package/dist/components/snk-filter-bar2.js +103 -108
  88. package/dist/components/snk-filter-binary-select.js +27 -3
  89. package/dist/components/snk-filter-checkbox-list.js +24 -3
  90. package/dist/components/snk-filter-detail2.js +28 -9
  91. package/dist/components/snk-filter-item2.js +70 -8
  92. package/dist/components/snk-filter-modal-item2.js +7 -12
  93. package/dist/components/snk-filter-modal.js +1 -325
  94. package/dist/components/snk-filter-modal2.js +391 -0
  95. package/dist/components/snk-filter-multi-select.js +19 -4
  96. package/dist/components/snk-filter-number.js +38 -4
  97. package/dist/components/snk-filter-period.js +64 -16
  98. package/dist/components/snk-filter-search.js +17 -4
  99. package/dist/components/snk-filter-text.js +22 -2
  100. package/dist/components/snk-form.js +29 -2
  101. package/dist/components/snk-grid2.js +188 -75
  102. package/dist/components/snk-personalized-filter2.js +10 -2
  103. package/dist/components/snk-simple-bar2.js +5 -5
  104. package/dist/components/snk-simple-crud2.js +45 -8
  105. package/dist/esm/{ConfigStorage-b5a1dba3.js → ConfigStorage-22eace3a.js} +2 -2
  106. package/dist/esm/{DataFetcher-6f6de657.js → DataFetcher-f6b2961a.js} +52 -1
  107. package/dist/esm/{ISave-7ecdca20.js → ISave-6b7b0423.js} +1 -1
  108. package/dist/esm/{SnkFormConfigManager-34fc1dc7.js → SnkFormConfigManager-968b97e7.js} +2 -2
  109. package/dist/esm/{ClientSideExporterProvider-7c2781f4.js → SnkMultiSelectionListDataSource-1136c4e7.js} +87 -84
  110. package/dist/esm/{auth-fetcher-7332a9a9.js → auth-fetcher-cf39e42b.js} +1 -1
  111. package/dist/esm/{dataunit-fetcher-f21cbad0.js → dataunit-fetcher-6314b19d.js} +1 -1
  112. package/dist/esm/filter-validate-d765d450.js +27 -0
  113. package/dist/esm/{form-config-fetcher-6ab4e805.js → form-config-fetcher-bc6f0f1f.js} +1 -1
  114. package/dist/esm/{index-b72af127.js → index-446f9341.js} +21 -5
  115. package/dist/esm/index-479e1293.js +8 -8
  116. package/dist/esm/loader.js +1 -1
  117. package/dist/esm/pesquisa-grid_2.entry.js +4 -4
  118. package/dist/esm/sankhyablocks.js +1 -1
  119. package/dist/esm/snk-actions-button_8.entry.js +5 -5
  120. package/dist/esm/snk-application.entry.js +6 -9
  121. package/dist/esm/snk-attach.entry.js +7 -7
  122. package/dist/esm/snk-crud.entry.js +7 -7
  123. package/dist/esm/snk-data-exporter.entry.js +5 -5
  124. package/dist/esm/{snk-data-unit-b7e6e7a6.js → snk-data-unit-4acf4781.js} +14 -4
  125. package/dist/esm/snk-data-unit.entry.js +3 -3
  126. package/dist/esm/snk-detail-view.entry.js +9 -9
  127. package/dist/esm/snk-entity-list.entry.js +10 -3
  128. package/dist/esm/snk-expression-group_2.entry.js +1 -1
  129. package/dist/esm/snk-filter-bar_4.entry.js +190 -116
  130. package/dist/esm/snk-filter-binary-select.entry.js +23 -2
  131. package/dist/esm/snk-filter-checkbox-list.entry.js +20 -2
  132. package/dist/esm/snk-filter-detail.entry.js +25 -8
  133. package/dist/esm/snk-filter-modal-item.entry.js +9 -14
  134. package/dist/esm/snk-filter-multi-select.entry.js +16 -3
  135. package/dist/esm/snk-filter-number.entry.js +34 -3
  136. package/dist/esm/snk-filter-period.entry.js +59 -14
  137. package/dist/esm/snk-filter-search.entry.js +14 -3
  138. package/dist/esm/snk-filter-text.entry.js +18 -1
  139. package/dist/esm/snk-form_2.entry.js +31 -5
  140. package/dist/esm/snk-grid.entry.js +152 -60
  141. package/dist/esm/{snk-guides-viewer-fbfece85.js → snk-guides-viewer-19cb7f1f.js} +6 -6
  142. package/dist/esm/snk-guides-viewer.entry.js +9 -9
  143. package/dist/esm/snk-personalized-filter.entry.js +14 -6
  144. package/dist/esm/snk-pesquisa.entry.js +4 -4
  145. package/dist/esm/snk-simple-bar.entry.js +5 -5
  146. package/dist/esm/snk-simple-crud.entry.js +55 -18
  147. package/dist/esm/snk-taskbar.entry.js +2 -2
  148. package/dist/esm/{taskbar-elements-171476d4.js → taskbar-elements-faaf5d8f.js} +1 -1
  149. package/dist/sankhyablocks/p-093f58fa.entry.js +1 -0
  150. package/dist/sankhyablocks/{p-0e495575.js → p-0a317e81.js} +1 -1
  151. package/dist/sankhyablocks/{p-ad2ae575.entry.js → p-0e1f0344.entry.js} +1 -1
  152. package/dist/sankhyablocks/{p-8d1508aa.entry.js → p-16c1c209.entry.js} +1 -1
  153. package/dist/sankhyablocks/p-29cacaf3.entry.js +1 -0
  154. package/dist/sankhyablocks/{p-eb0616d3.entry.js → p-32450ea2.entry.js} +1 -1
  155. package/dist/sankhyablocks/{p-b49281be.entry.js → p-3c29939c.entry.js} +1 -1
  156. package/dist/sankhyablocks/p-3ed04f0d.entry.js +1 -0
  157. package/dist/sankhyablocks/{p-4872dc3a.entry.js → p-44c5ec49.entry.js} +1 -1
  158. package/dist/sankhyablocks/p-49ddc27a.entry.js +1 -0
  159. package/dist/sankhyablocks/p-4c763b10.entry.js +1 -0
  160. package/dist/sankhyablocks/p-4eeb06fc.js +1 -0
  161. package/dist/sankhyablocks/p-505172c8.entry.js +1 -0
  162. package/dist/sankhyablocks/p-55798617.js +1 -0
  163. package/dist/sankhyablocks/p-658f67a5.js +1 -0
  164. package/dist/sankhyablocks/{p-158adf33.entry.js → p-701b024c.entry.js} +1 -1
  165. package/dist/sankhyablocks/p-72a9285d.entry.js +1 -0
  166. package/dist/sankhyablocks/p-7f7fe6c4.entry.js +1 -0
  167. package/dist/sankhyablocks/p-88b7bc09.js +1 -0
  168. package/dist/sankhyablocks/{p-c6331595.js → p-8d256def.js} +1 -1
  169. package/dist/sankhyablocks/p-8f37b75b.entry.js +1 -0
  170. package/dist/sankhyablocks/{p-b35574b5.js → p-9062d640.js} +1 -1
  171. package/dist/sankhyablocks/{p-72c8c847.entry.js → p-95c71f5e.entry.js} +1 -1
  172. package/dist/sankhyablocks/p-96d45943.entry.js +1 -0
  173. package/dist/sankhyablocks/{p-eacff4b7.entry.js → p-b2d7f4cd.entry.js} +1 -1
  174. package/dist/sankhyablocks/{p-6a015ba2.js → p-b7f5caf6.js} +1 -1
  175. package/dist/sankhyablocks/p-b9200e77.entry.js +11 -0
  176. package/dist/sankhyablocks/{p-7de79adf.js → p-b987e15d.js} +1 -1
  177. package/dist/sankhyablocks/{p-ba4979b4.js → p-bf017a1f.js} +1 -1
  178. package/dist/sankhyablocks/{p-735a1175.entry.js → p-c3dbf441.entry.js} +1 -1
  179. package/dist/sankhyablocks/{p-3dba3468.js → p-c71dcb2d.js} +1 -1
  180. package/dist/sankhyablocks/{p-5e282b33.entry.js → p-c95f20d9.entry.js} +1 -1
  181. package/dist/sankhyablocks/p-c98e2085.js +1 -0
  182. package/dist/sankhyablocks/p-cb4343c4.entry.js +1 -0
  183. package/dist/sankhyablocks/p-d03ae54e.entry.js +1 -0
  184. package/dist/sankhyablocks/p-d235314c.entry.js +1 -0
  185. package/dist/sankhyablocks/p-d75a732c.js +1 -0
  186. package/dist/sankhyablocks/{p-f39b0ebe.entry.js → p-df7979fd.entry.js} +1 -1
  187. package/dist/sankhyablocks/p-e258de96.entry.js +1 -0
  188. package/dist/sankhyablocks/{p-d377aa7a.entry.js → p-f8e87cf1.entry.js} +1 -1
  189. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  190. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +46 -3
  191. package/dist/types/components/snk-entity-list/snk-entity-list.d.ts +8 -4
  192. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.d.ts +12 -0
  193. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.d.ts +12 -0
  194. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.d.ts +12 -4
  195. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-number.d.ts +16 -4
  196. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-period.d.ts +17 -3
  197. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +10 -2
  198. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-text.d.ts +12 -0
  199. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +8 -3
  200. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +27 -4
  201. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +17 -3
  202. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.d.ts +2 -3
  203. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +60 -30
  204. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +4 -2
  205. package/dist/types/components/snk-filter-bar/utils/filter-validate.d.ts +11 -0
  206. package/dist/types/components/snk-form/snk-form.d.ts +29 -4
  207. package/dist/types/components/snk-grid/snk-grid.d.ts +132 -58
  208. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +53 -5
  209. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +44 -6
  210. package/dist/types/components/snk-simple-bar/snk-simple-bar.d.ts +15 -15
  211. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +100 -43
  212. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +23 -21
  213. package/dist/types/components.d.ts +771 -255
  214. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  215. package/package.json +4 -3
  216. package/dist/collection/lib/licenses/sankhyalicense.module.js +0 -1
  217. package/dist/sankhyablocks/p-012208e0.entry.js +0 -1
  218. package/dist/sankhyablocks/p-07b14811.entry.js +0 -1
  219. package/dist/sankhyablocks/p-0dac8fef.js +0 -1
  220. package/dist/sankhyablocks/p-1210500e.js +0 -1
  221. package/dist/sankhyablocks/p-16fc4acd.js +0 -1
  222. package/dist/sankhyablocks/p-25209340.entry.js +0 -1
  223. package/dist/sankhyablocks/p-295b83ae.entry.js +0 -1
  224. package/dist/sankhyablocks/p-398cdd67.entry.js +0 -1
  225. package/dist/sankhyablocks/p-4e63ffed.entry.js +0 -1
  226. package/dist/sankhyablocks/p-5bab470d.entry.js +0 -1
  227. package/dist/sankhyablocks/p-5c7af8a9.entry.js +0 -1
  228. package/dist/sankhyablocks/p-81769310.entry.js +0 -11
  229. package/dist/sankhyablocks/p-9fd87bfd.entry.js +0 -1
  230. package/dist/sankhyablocks/p-a349689a.js +0 -1
  231. package/dist/sankhyablocks/p-a76e6d51.entry.js +0 -1
  232. package/dist/sankhyablocks/p-a86eee47.entry.js +0 -1
  233. package/dist/sankhyablocks/p-c6a8a8bc.entry.js +0 -1
  234. package/dist/sankhyablocks/p-c9e6d720.js +0 -1
  235. package/dist/sankhyablocks/p-dff65083.entry.js +0 -1
  236. package/dist/sankhyablocks/p-fa18530e.entry.js +0 -1
@@ -1,25 +1,26 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement } from './index-479e1293.js';
2
2
  import { KeyboardManager, Action, ElementIDUtils, ApplicationContext, StringUtils } from '@sankhyalabs/core';
3
- import { T as TaskbarElement } from './taskbar-elements-171476d4.js';
4
- import { C as ConfigStorage } from './ConfigStorage-b5a1dba3.js';
5
- import { P as PresentationMode, E as ExporterStrategy } from './index-b40568ff.js';
6
- import { T as TaskbarProcessor } from './taskbar-processor-3436124c.js';
7
- import { s as store } from './index-b72af127.js';
8
- import { C as CommonsExporter, S as SnkMultiSelectionListDataSource, a as CrudUtils, R as RmPrecisionCustomValueFormatter, b as ContinuousInsertUtils, c as ClientSideExporterProvider } from './ClientSideExporterProvider-7c2781f4.js';
9
3
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
10
- import './DataFetcher-6f6de657.js';
11
- import './ISave-7ecdca20.js';
4
+ import { buildFieldSearch } from '@sankhyalabs/ezui/dist/collection/utils';
5
+ import './DataFetcher-f6b2961a.js';
6
+ import './ISave-6b7b0423.js';
7
+ import { C as CommonsExporter, S as SnkMultiSelectionListDataSource, a as CrudUtils, R as RmPrecisionCustomValueFormatter, b as ContinuousInsertUtils, c as ClientSideExporterProvider } from './SnkMultiSelectionListDataSource-1136c4e7.js';
8
+ import { P as PresentationMode, E as ExporterStrategy } from './index-b40568ff.js';
12
9
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
13
10
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
14
- import './dataunit-fetcher-f21cbad0.js';
11
+ import './dataunit-fetcher-6314b19d.js';
15
12
  import './filter-item-type.enum-d45e026f.js';
16
- import './form-config-fetcher-6ab4e805.js';
13
+ import './form-config-fetcher-bc6f0f1f.js';
17
14
  import './constants-7b422de0.js';
15
+ import { C as ConfigStorage } from './ConfigStorage-22eace3a.js';
16
+ import { s as store } from './index-446f9341.js';
18
17
  import { g as getSelectedRecordsIDsInfo } from './GetSelectedRecordsIDsInfo-9fa41508.js';
19
- import { buildFieldSearch } from '@sankhyalabs/ezui/dist/collection/utils';
20
- import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource';
21
- import './IFetchDataExporterParams-d73bed3d.js';
18
+ import { v as validateFilters } from './filter-validate-d765d450.js';
19
+ import { T as TaskbarElement } from './taskbar-elements-faaf5d8f.js';
20
+ import { T as TaskbarProcessor } from './taskbar-processor-3436124c.js';
22
21
  import './PrintUtils-3e4ff0f5.js';
22
+ import './IFetchDataExporterParams-d73bed3d.js';
23
+ import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource';
23
24
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
24
25
  import '@sankhyalabs/core/dist/utils/SortingUtils';
25
26
  import './ResourceIDUtils-a114189a.js';
@@ -90,31 +91,34 @@ const SnkGrid = class {
90
91
  this._customRenders = new Map();
91
92
  this._keyboardManager = new KeyboardManager();
92
93
  this._topTaskbarProcessor = new TaskbarProcessor({
93
- "snkGridTopTaskbar.regular": ["FORM_MODE", "CONFIGURATOR", "INSERT"],
94
- "snkGridTopTaskbar.regular.secondary": ["FORM_MODE", "CONFIGURATOR", "INSERT"],
95
- "snkGridTopTaskbar.regular.singleTaskbar": [],
96
- "snkGridTopTaskbar.finish_edition": ["CANCEL", "SAVE", this.handleAddFormMode()],
97
- "snkGridTopTaskbar.finish_edition.secondary": [],
98
- "snkGridTopTaskbar.finish_edition.singleTaskbar": [],
94
+ 'snkGridTopTaskbar.regular': ['FORM_MODE', 'CONFIGURATOR', 'INSERT'],
95
+ 'snkGridTopTaskbar.regular.secondary': ['FORM_MODE', 'CONFIGURATOR', 'INSERT'],
96
+ 'snkGridTopTaskbar.regular.singleTaskbar': [],
97
+ 'snkGridTopTaskbar.finish_edition': ['CANCEL', 'SAVE', this.handleAddFormMode()],
98
+ 'snkGridTopTaskbar.finish_edition.secondary': [],
99
+ 'snkGridTopTaskbar.finish_edition.singleTaskbar': [],
99
100
  });
100
101
  this._headerTaskbarProcessor = new TaskbarProcessor({
101
- "snkGridHeaderTaskbar.unselected": ["REFRESH", "DATA_EXPORTER", "ACTIONS_BUTTON", "MORE_OPTIONS"],
102
- "snkGridHeaderTaskbar.selected": this.getGridHeaderSelectedBtns(),
103
- "snkGridHeaderTaskbar.detail.unselected": ["REFRESH", "MORE_OPTIONS"],
104
- "snkGridHeaderTaskbar.detail.selected": ["UPDATE", "ATTACH", "CLONE", "REMOVE", "MORE_OPTIONS", "DIVIDER", "REFRESH"],
105
- "snkGridHeaderTaskbar.singleTaskbar.unselected": ["INSERT", "FORM_MODE", "CONFIGURATOR", "REFRESH", "DATA_EXPORTER", "ACTIONS_BUTTON", "MORE_OPTIONS"],
106
- "snkGridHeaderTaskbar.singleTaskbar.selected": ["UPDATE", "CLONE", "REMOVE", "MORE_OPTIONS", "DIVIDER", "ATTACH", "FORM_MODE", "CONFIGURATOR", "REFRESH", "DATA_EXPORTER", "ACTIONS_BUTTON"],
107
- "snkGridHeaderTaskbar.singleTaskbar.detail.unselected": ["INSERT", "FORM_MODE", "CONFIGURATOR", "REFRESH", "MORE_OPTIONS"],
108
- "snkGridHeaderTaskbar.singleTaskbar.detail.selected": ["UPDATE", "ATTACH", "CLONE", "REMOVE", "MORE_OPTIONS", "DIVIDER", "FORM_MODE", "CONFIGURATOR", "REFRESH"],
109
- "snkGridHeaderTaskbar.singleTaskbar.finish_edition": ["CANCEL", "SAVE", this.handleAddFormMode()]
102
+ 'snkGridHeaderTaskbar.unselected': ['REFRESH', 'DATA_EXPORTER', 'ACTIONS_BUTTON', 'MORE_OPTIONS'],
103
+ 'snkGridHeaderTaskbar.selected': this.getGridHeaderSelectedBtns(),
104
+ 'snkGridHeaderTaskbar.detail.unselected': ['REFRESH', 'MORE_OPTIONS'],
105
+ 'snkGridHeaderTaskbar.detail.selected': ['UPDATE', 'ATTACH', 'CLONE', 'REMOVE', 'MORE_OPTIONS', 'DIVIDER', 'REFRESH'],
106
+ 'snkGridHeaderTaskbar.singleTaskbar.unselected': ['INSERT', 'FORM_MODE', 'CONFIGURATOR', 'REFRESH', 'DATA_EXPORTER', 'ACTIONS_BUTTON', 'MORE_OPTIONS'],
107
+ 'snkGridHeaderTaskbar.singleTaskbar.selected': ['UPDATE', 'CLONE', 'REMOVE', 'MORE_OPTIONS', 'DIVIDER', 'ATTACH', 'FORM_MODE', 'CONFIGURATOR', 'REFRESH', 'DATA_EXPORTER', 'ACTIONS_BUTTON'],
108
+ 'snkGridHeaderTaskbar.singleTaskbar.detail.unselected': ['INSERT', 'FORM_MODE', 'CONFIGURATOR', 'REFRESH', 'MORE_OPTIONS'],
109
+ 'snkGridHeaderTaskbar.singleTaskbar.detail.selected': ['UPDATE', 'ATTACH', 'CLONE', 'REMOVE', 'MORE_OPTIONS', 'DIVIDER', 'FORM_MODE', 'CONFIGURATOR', 'REFRESH'],
110
+ 'snkGridHeaderTaskbar.singleTaskbar.finish_edition': ['CANCEL', 'SAVE', this.handleAddFormMode()],
110
111
  });
111
112
  this.dataUnitInterceptor = {
112
113
  interceptAction: async (action) => {
113
114
  if (action.type === Action.METADATA_LOADED) {
114
115
  return await this.interceptMetadataLoaded(action);
115
116
  }
117
+ if (action.type === Action.LOADING_DATA) {
118
+ return await this.interceptLoadData(action);
119
+ }
116
120
  return action;
117
- }
121
+ },
118
122
  };
119
123
  this._dataUnit = undefined;
120
124
  this._dataState = undefined;
@@ -155,23 +159,36 @@ const SnkGrid = class {
155
159
  this.multipleEditionEnabled = true;
156
160
  this.paginationCounterMode = 'auto';
157
161
  this.suppressCheckboxColumn = undefined;
162
+ this.suppressFilterColumn = false;
158
163
  this.compact = undefined;
164
+ this.filterCustomConfig = undefined;
165
+ this.filterCustomConfigInterceptor = undefined;
159
166
  }
160
167
  getGridHeaderSelectedBtns() {
161
168
  const btns = [
162
169
  TaskbarElement.UPDATE, TaskbarElement.CLONE, TaskbarElement.REMOVE,
163
170
  TaskbarElement.MORE_OPTIONS, TaskbarElement.DIVIDER, TaskbarElement.ATTACH, TaskbarElement.FORM_MODE,
164
- TaskbarElement.CONFIGURATOR, TaskbarElement.REFRESH, TaskbarElement.DATA_EXPORTER, TaskbarElement.ACTIONS_BUTTON
171
+ TaskbarElement.CONFIGURATOR, TaskbarElement.REFRESH, TaskbarElement.DATA_EXPORTER, TaskbarElement.ACTIONS_BUTTON,
165
172
  ];
166
173
  if (this.multipleEditionEnabled)
167
174
  btns.unshift(TaskbarElement.UPDATE_MULTIPLE);
168
175
  return btns;
169
176
  }
177
+ async refreshColumnFilterDataSource() {
178
+ await this._grid.refreshColumnFilterDataSource();
179
+ }
180
+ /**
181
+ * Recarrega a configuração da grade.
182
+ * @description Este método força o recarregamento da configuração da grade a partir do `ConfigStorage`. A operação é assíncrona, mas o método não aguarda sua conclusão.
183
+ */
170
184
  reloadConfig() {
171
185
  this.loadConfig();
172
186
  }
173
187
  /**
174
188
  * Exibe a janela de configurações da grade.
189
+ * @async
190
+ * @description Este método abre o pop-up de configuração de colunas da grade, permitindo ao usuário ajustar a visibilidade, ordem e largura das colunas.
191
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a janela de configuração é exibida.
175
192
  */
176
193
  async showConfig() {
177
194
  if (this._grid == undefined) {
@@ -181,6 +198,9 @@ const SnkGrid = class {
181
198
  }
182
199
  /**
183
200
  * Fecha a janela de configurações da grade.
201
+ * @async
202
+ * @description Este método fecha o pop-up de configuração de colunas da grade.
203
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a janela de configuração é fechada.
184
204
  */
185
205
  async hideConfig() {
186
206
  if (this._grid == undefined) {
@@ -189,26 +209,42 @@ const SnkGrid = class {
189
209
  this.closeGridConfig();
190
210
  }
191
211
  /**
192
- * Atribui o valor da configuração da grade.
212
+ * Define a configuração da grade.
213
+ * @async
214
+ * @description Aplica uma nova configuração de colunas e ordenação à grade.
215
+ * @param {IGridConfig} config O objeto de configuração a ser aplicado na grade.
216
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a configuração é aplicada.
193
217
  */
194
218
  async setConfig(config) {
195
219
  this.setGridConfig(config);
196
220
  }
197
221
  /**
198
- * Faz o recarregamento da filter-bar da grade buscando o state no servidor.
222
+ * Recarrega a barra de filtros da grade, buscando o estado do servidor.
223
+ * @async
224
+ * @description Força o recarregamento da barra de filtros, atualizando suas configurações e filtros a partir do servidor.
225
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a barra de filtros é recarregada.
199
226
  */
200
227
  async reloadFilterBar() {
201
228
  var _a;
202
229
  (_a = this._snkFilterBar) === null || _a === void 0 ? void 0 : _a.reload();
203
230
  }
204
231
  /**
205
- * Retorna o elemento da filter-bar da grade.
232
+ * Retorna o elemento da barra de filtros da grade.
233
+ * @async
234
+ * @description Este método permite acessar o elemento da barra de filtros, que pode ser útil para manipulações adicionais ou para obter o estado atual dos filtros aplicados.
235
+ * @returns {Promise<HTMLSnkFilterBarElement>} O elemento da barra de filtros.
206
236
  */
207
237
  async getFilterBar() {
208
238
  return this._snkFilterBar;
209
239
  }
210
240
  /**
211
- * Registra um editor customizado para campos da grade e formulário
241
+ * Registra um editor customizado para um campo da grade ou formulário.
242
+ * @async
243
+ * @description Adiciona um componente de edição personalizado para um campo específico. Este editor será usado tanto na edição em linha na grade quanto em formulários de detalhe.
244
+ * @param {string} fieldName O nome do campo que receberá o editor customizado.
245
+ * @param {ICustomEditor} customEditor A instância do editor customizado.
246
+ * @param {string} [detailContext] O contexto de detalhe onde o editor será aplicado (opcional).
247
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o editor é registrado.
212
248
  */
213
249
  async addCustomEditor(fieldName, customEditor, detailContext) {
214
250
  if (this._grid) {
@@ -220,7 +256,13 @@ const SnkGrid = class {
220
256
  this._customEditors = newCustomEditors;
221
257
  }
222
258
  /**
223
- * Registra um render customizado para colunas da grid.
259
+ * Registra um renderizador customizado para uma coluna da grade.
260
+ * @async
261
+ * @description Adiciona um componente de renderização personalizado para uma coluna específica, permitindo a exibição de conteúdo customizado nas células.
262
+ * @param {string} fieldName O nome do campo (coluna) que receberá o renderizador customizado.
263
+ * @param {ICustomRender} customRender A instância do renderizador customizado.
264
+ * @param {string} [detailContext] O contexto de detalhe onde o renderizador será aplicado (opcional).
265
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o renderizador é registrado.
224
266
  */
225
267
  async addGridCustomRender(fieldName, customRender, detailContext) {
226
268
  if (this._grid) {
@@ -232,19 +274,31 @@ const SnkGrid = class {
232
274
  this._customRenders = newCustomRenders;
233
275
  }
234
276
  /**
235
- * Registra um formatador de valores para uma coluna da grid.
277
+ * Registra um formatador de valor customizado para uma coluna da grade.
278
+ * @async
279
+ * @description Adiciona uma função de formatação personalizada para os valores de uma coluna específica, afetando como os dados são exibidos.
280
+ * @param {string} columnName O nome da coluna que receberá o formatador.
281
+ * @param {ICustomFormatter} customFormatter A instância do formatador de valor.
282
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o formatador é registrado.
236
283
  */
237
284
  async addCustomValueFormatter(columnName, customFormatter) {
238
285
  this._grid.addCustomValueFormatter(columnName, customFormatter);
239
286
  }
240
287
  /**
241
- * Remove o formatador de valores de uma coluna da grid.
288
+ * Remove um formatador de valor customizado de uma coluna da grade.
289
+ * @async
290
+ * @description Remove uma função de formatação personalizada previamente registrada para uma coluna.
291
+ * @param {string} columnName O nome da coluna da qual o formatador será removido.
292
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o formatador é removido.
242
293
  */
243
294
  async removeCustomValueFormatter(columnName) {
244
295
  this._grid.removeCustomValueFormatter(columnName);
245
296
  }
246
297
  /**
247
298
  * Atribui o foco para a grade.
299
+ * @async
300
+ * @description Move o foco do navegador para o componente da grade, permitindo a navegação por teclado.
301
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o foco é atribuído.
248
302
  */
249
303
  async setFocus() {
250
304
  this._grid.setFocus();
@@ -278,7 +332,7 @@ const SnkGrid = class {
278
332
  this.loadConfig();
279
333
  }
280
334
  handleAddFormMode() {
281
- return this.enableGridInsert ? TaskbarElement.FORM_MODE : "";
335
+ return this.enableGridInsert ? TaskbarElement.FORM_MODE : '';
282
336
  }
283
337
  openGridConfig() {
284
338
  this._grid.getColumnsState()
@@ -322,6 +376,17 @@ const SnkGrid = class {
322
376
  ConfigStorage.addGridLegacyConfig(this.configName, this.gridLegacyConfigName);
323
377
  }
324
378
  }
379
+ hasCalculatedFields(columnNames) {
380
+ let hasCalculatedFields = false;
381
+ columnNames.forEach(name => {
382
+ var _a;
383
+ const field = this._dataUnit.getField(name);
384
+ if (((_a = field.properties) === null || _a === void 0 ? void 0 : _a.calculated) === 'true') {
385
+ hasCalculatedFields = true;
386
+ }
387
+ });
388
+ return hasCalculatedFields;
389
+ }
325
390
  gridConfigChangeHandler(evt) {
326
391
  const config = this.normalizeGridConfig(evt.detail);
327
392
  ConfigStorage.saveGridConfig(config, this.configName, this.resourceID);
@@ -337,11 +402,25 @@ const SnkGrid = class {
337
402
  });
338
403
  evt.stopPropagation();
339
404
  }
405
+ async hasToForceClientSideExporter() {
406
+ if (!this._grid) {
407
+ return false;
408
+ }
409
+ const filters = await this._grid.getAppliedColumnFilters();
410
+ const columnNames = filters.map(filter => filter.name.replace('FILTRO_COLUNA_', ''));
411
+ return this.hasCalculatedFields(columnNames);
412
+ }
340
413
  async dataExporterProviderStore() {
341
- const dataExporterProvider = this.strategyExporter === ExporterStrategy.SERVER_SIDE
342
- ? new ServerSideExporterProvider(this._dataUnit, this._grid)
343
- : new ClientSideExporterProvider(this._dataUnit, this._grid);
344
- store.set("exporterProviders", Object.assign(Object.assign({}, store.get("exporterProviders")), { [this.configName]: dataExporterProvider }));
414
+ /**
415
+ * O ServerSideExporterProvider do SankhyaOm não suporta a filtragem de campos calculados.
416
+ * Por esse motivo, precisamos verificar os filtros aplicados no momento e recriar o dataExporterProvider conforme necessário.
417
+ * Se houver campos calculados, forçamos o uso do clientSide, caso contrário é seguido o fluxo padrão.
418
+ */
419
+ const forceClientSide = await this.hasToForceClientSideExporter();
420
+ const dataExporterProvider = (forceClientSide || this.strategyExporter === ExporterStrategy.CLIENT_SIDE)
421
+ ? new ClientSideExporterProvider(this._dataUnit, this._grid)
422
+ : new ServerSideExporterProvider(this._dataUnit, this._grid);
423
+ store.set('exporterProviders', Object.assign(Object.assign({}, store.get('exporterProviders')), { [this.configName]: dataExporterProvider }));
345
424
  }
346
425
  addElementID() {
347
426
  const dataInfo = { dataUnit: this._dataUnit };
@@ -362,6 +441,17 @@ const SnkGrid = class {
362
441
  this.loadGridCustomFormatters(action.payload.fields);
363
442
  return action;
364
443
  }
444
+ async interceptLoadData(action) {
445
+ var _a;
446
+ const hasInvalidFilters = !validateFilters((_a = this._snkFilterBar) === null || _a === void 0 ? void 0 : _a.filterConfig);
447
+ if (hasInvalidFilters) {
448
+ const errorTitle = this.messagesBuilder.getMessage("snkGrid.requiredFiltersNotFilled.title", {});
449
+ const errorMessage = this.messagesBuilder.getMessage("snkGrid.requiredFiltersNotFilled.message", {});
450
+ await this._application.error(errorTitle, errorMessage);
451
+ return;
452
+ }
453
+ return action;
454
+ }
365
455
  finishLoading() {
366
456
  this._dataUnit.addInterceptor(this.dataUnitInterceptor);
367
457
  CrudUtils.assertDefaultSorting(this._gridConfig, this._dataUnit);
@@ -390,15 +480,15 @@ const SnkGrid = class {
390
480
  }
391
481
  }
392
482
  componentWillLoad() {
393
- this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
483
+ this._application = ApplicationContext.getContextValue('__SNK__APPLICATION__');
394
484
  //TODO: substituir pelo metodo nativo closest
395
485
  let parent = this._element.parentElement;
396
486
  while (parent) {
397
- if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
487
+ if (parent.tagName.toUpperCase() === 'SNK-DATA-UNIT') {
398
488
  this._snkDataUnit = parent;
399
489
  this._dataUnit = this._snkDataUnit.dataUnit;
400
490
  if (!this._dataUnit) {
401
- this._snkDataUnit.addEventListener("dataUnitReady", (evt) => {
491
+ this._snkDataUnit.addEventListener('dataUnitReady', (evt) => {
402
492
  this._dataUnit = evt.detail;
403
493
  this.finishLoading();
404
494
  });
@@ -408,8 +498,8 @@ const SnkGrid = class {
408
498
  }
409
499
  if (!this.messagesBuilder)
410
500
  this.messagesBuilder = this._snkDataUnit.messagesBuilder;
411
- this._snkDataUnit.addEventListener("dataStateChange", this.handleDataStateChange.bind(this));
412
- this._snkDataUnit.addEventListener("cancelEdition", () => {
501
+ this._snkDataUnit.addEventListener('dataStateChange', this.handleDataStateChange.bind(this));
502
+ this._snkDataUnit.addEventListener('cancelEdition', () => {
413
503
  var _a;
414
504
  if ((_a = this._dataState) === null || _a === void 0 ? void 0 : _a.recordsIsEmpty) {
415
505
  this._dataUnit.clearSelection();
@@ -472,23 +562,23 @@ const SnkGrid = class {
472
562
  var _a, _b;
473
563
  const hasSelectedRecord = this._dataState && !!((_a = this._dataState.selectionInfo) === null || _a === void 0 ? void 0 : _a.length);
474
564
  const taskbarIdPrefixLookup = {
475
- primary: this.isDetail ? "snkGridHeaderTaskbar.detail" : "snkGridHeaderTaskbar",
476
- secondary: this.isDetail ? "snkGridHeaderTaskbar.detail" : "snkGridHeaderTaskbar",
477
- singleTaskbar: this.isDetail ? "snkGridHeaderTaskbar.singleTaskbar.detail" : "snkGridHeaderTaskbar.singleTaskbar"
565
+ primary: this.isDetail ? 'snkGridHeaderTaskbar.detail' : 'snkGridHeaderTaskbar',
566
+ secondary: this.isDetail ? 'snkGridHeaderTaskbar.detail' : 'snkGridHeaderTaskbar',
567
+ singleTaskbar: this.isDetail ? 'snkGridHeaderTaskbar.singleTaskbar.detail' : 'snkGridHeaderTaskbar.singleTaskbar',
478
568
  };
479
569
  const taskbarIdPrefix = taskbarIdPrefixLookup[this.presentationMode];
480
570
  let headerTaskbarId = hasSelectedRecord ? `${taskbarIdPrefix}.selected` : `${taskbarIdPrefix}.unselected`;
481
571
  if (((_b = this._dataState) === null || _b === void 0 ? void 0 : _b.isDirty) && this.presentationMode === PresentationMode.SINGLE_TASKBAR) {
482
- headerTaskbarId = "snkGridHeaderTaskbar.singleTaskbar.finish_edition";
572
+ headerTaskbarId = 'snkGridHeaderTaskbar.singleTaskbar.finish_edition';
483
573
  }
484
574
  return headerTaskbarId;
485
575
  }
486
576
  getTopTaskBarId() {
487
577
  var _a;
488
578
  const suffixLookup = {
489
- primary: "",
490
- secondary: ".secondary",
491
- singleTaskbar: ".singleTaskbar"
579
+ primary: '',
580
+ secondary: '.secondary',
581
+ singleTaskbar: '.singleTaskbar',
492
582
  };
493
583
  const sufix = suffixLookup[this.presentationMode];
494
584
  if ((_a = this._dataState) === null || _a === void 0 ? void 0 : _a.isDirty) {
@@ -498,9 +588,9 @@ const SnkGrid = class {
498
588
  }
499
589
  getPrimaryButton() {
500
590
  const primaryButtonLookup = {
501
- primary: "INSERT",
502
- secondary: "",
503
- singleTaskbar: "INSERT"
591
+ primary: 'INSERT',
592
+ secondary: '',
593
+ singleTaskbar: 'INSERT',
504
594
  };
505
595
  return primaryButtonLookup[this.presentationMode];
506
596
  }
@@ -540,10 +630,10 @@ const SnkGrid = class {
540
630
  getActionsSettingsList() {
541
631
  const hardList = [{
542
632
  value: StringUtils.generateUUID(),
543
- label: this.messagesBuilder.getMessage("snkGrid.findColumn", {}),
633
+ label: this.messagesBuilder.getMessage('snkGrid.findColumn', {}),
544
634
  disableCloseOnSelect: true,
545
635
  eagerInitialize: true,
546
- itemBuilder: (_, item) => this.getColumnSearch(item)
636
+ itemBuilder: (_, item) => this.getColumnSearch(item),
547
637
  }];
548
638
  return hardList;
549
639
  }
@@ -571,7 +661,9 @@ const SnkGrid = class {
571
661
  return undefined;
572
662
  }
573
663
  return (h("div", { class: "snk-grid__container ez-flex ez-flex--column ez-flex-item--auto ez-padding--large ez-box--no-outline", tabindex: "0" }, h("div", { class: "snk-grid__header ez-margin-bottom--extra-small" }, this._showSnkFilterBar &&
574
- h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, title: this.filterBarTitle, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail), disablePersonalizedFilter: this.disablePersonalizedFilter, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium ez-padding-top--extra-small", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId, overflowStrategy: 'none', actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? "snk-grid-container__without-shadow " : "") + "snk-grid__table", "data-element-id": "embedded", dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => { this.gridConfigChangeHandler(evt); }, onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableContinuousInsert: this._enableContinuousInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, outlineMode: this.outlineMode, useSearchColumn: this.useSearchColumn, suppressHorizontalScroll: this.suppressHorizontalScroll, paginationCounterMode: this.paginationCounterMode, suppressCheckboxColumn: this.suppressCheckboxColumn, compact: this.compact }, h("snk-taskbar", { id: 'teste', dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this.getGridHeaderButtons(), presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId, actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.gridHeaderCustomSlotId }))), h("div", { class: "ez-col ez-col--sd-12 snk-grid-container__footer" }, h("slot", { name: "SnkGridFooter" })), h("ez-popup", { size: "medium", heightMode: "auto", useHeader: false, opened: this._popUpGridConfig, onEzClosePopup: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this._gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig(), resourceID: this.resourceID }))));
664
+ h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, title: this.filterBarTitle, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail), disablePersonalizedFilter: this.disablePersonalizedFilter, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, filterCustomConfig: this.filterCustomConfig, filterCustomConfigInterceptor: this.filterCustomConfigInterceptor }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium ez-padding-top--extra-small", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId, overflowStrategy: 'none', actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? 'snk-grid-container__without-shadow ' : '') + 'snk-grid__table', "data-element-id": "embedded", dataUnit: this._dataUnit, key: 'grid-' + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => {
665
+ this.gridConfigChangeHandler(evt);
666
+ }, onEzColumnFilterChanged: async () => await this.dataExporterProviderStore(), onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableContinuousInsert: this._enableContinuousInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, outlineMode: this.outlineMode, useSearchColumn: this.useSearchColumn, suppressHorizontalScroll: this.suppressHorizontalScroll, paginationCounterMode: this.paginationCounterMode, suppressCheckboxColumn: this.suppressCheckboxColumn, suppressFilterColumn: this.suppressFilterColumn, compact: this.compact }, h("snk-taskbar", { id: 'teste', dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this.getGridHeaderButtons(), presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId, actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.gridHeaderCustomSlotId }))), h("div", { class: "ez-col ez-col--sd-12 snk-grid-container__footer" }, h("slot", { name: "SnkGridFooter" })), h("ez-popup", { size: "medium", heightMode: "auto", useHeader: false, opened: this._popUpGridConfig, onEzClosePopup: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this._gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig(), resourceID: this.resourceID }))));
575
667
  }
576
668
  get _element() { return getElement(this); }
577
669
  static get watchers() { return {
@@ -1,18 +1,18 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement } from './index-479e1293.js';
2
2
  import { ObjectUtils, StringUtils, Action, KeyboardManager, ElementIDUtils } from '@sankhyalabs/core';
3
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-34fc1dc7.js';
3
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-968b97e7.js';
4
4
  import { buildFormMetadata, FormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
5
5
  import { T as TaskbarProcessor } from './taskbar-processor-3436124c.js';
6
- import { T as TaskbarElement } from './taskbar-elements-171476d4.js';
6
+ import { T as TaskbarElement } from './taskbar-elements-faaf5d8f.js';
7
7
  import { V as VIEW_MODE } from './constants-7b422de0.js';
8
- import './DataFetcher-6f6de657.js';
9
- import './ISave-7ecdca20.js';
8
+ import './DataFetcher-f6b2961a.js';
9
+ import './ISave-6b7b0423.js';
10
10
  import { P as PresentationMode } from './index-b40568ff.js';
11
11
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
12
12
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
13
- import './dataunit-fetcher-f21cbad0.js';
13
+ import './dataunit-fetcher-6314b19d.js';
14
14
  import './filter-item-type.enum-d45e026f.js';
15
- import './form-config-fetcher-6ab4e805.js';
15
+ import './form-config-fetcher-bc6f0f1f.js';
16
16
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
17
17
  import { buildFieldSearch, SHORTCUT_SEARCH_FIELD } from '@sankhyalabs/ezui/dist/collection/utils';
18
18
 
@@ -1,22 +1,22 @@
1
- export { S as snk_guides_viewer } from './snk-guides-viewer-fbfece85.js';
1
+ export { S as snk_guides_viewer } from './snk-guides-viewer-19cb7f1f.js';
2
2
  import './index-479e1293.js';
3
3
  import '@sankhyalabs/core';
4
- import './SnkFormConfigManager-34fc1dc7.js';
5
- import './ConfigStorage-b5a1dba3.js';
6
- import './form-config-fetcher-6ab4e805.js';
7
- import './DataFetcher-6f6de657.js';
4
+ import './SnkFormConfigManager-968b97e7.js';
5
+ import './ConfigStorage-22eace3a.js';
6
+ import './form-config-fetcher-bc6f0f1f.js';
7
+ import './DataFetcher-f6b2961a.js';
8
8
  import './PrintUtils-3e4ff0f5.js';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
10
  import './filter-item-type.enum-d45e026f.js';
11
11
  import './constants-7b422de0.js';
12
12
  import '@sankhyalabs/ezui/dist/collection/utils/form';
13
13
  import './taskbar-processor-3436124c.js';
14
- import './taskbar-elements-171476d4.js';
14
+ import './taskbar-elements-faaf5d8f.js';
15
15
  import './index-b40568ff.js';
16
- import './index-b72af127.js';
17
- import './ISave-7ecdca20.js';
16
+ import './index-446f9341.js';
17
+ import './ISave-6b7b0423.js';
18
18
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
19
- import './dataunit-fetcher-f21cbad0.js';
19
+ import './dataunit-fetcher-6314b19d.js';
20
20
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
21
21
  import '@sankhyalabs/core/dist/utils/SortingUtils';
22
22
  import './ResourceIDUtils-a114189a.js';
@@ -1,13 +1,13 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host } from './index-479e1293.js';
2
2
  import { StringUtils, ObjectUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-2db38ff2.js';
4
- import { P as PersonalizedFilterFetcher, C as ConfigStorage } from './ConfigStorage-b5a1dba3.js';
4
+ import { P as PersonalizedFilterFetcher, C as ConfigStorage } from './ConfigStorage-22eace3a.js';
5
5
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
6
6
  import { a as FilterGroupCondition, D as DefaultFilter } from './index-8acbae97.js';
7
- import { s as store } from './index-b72af127.js';
7
+ import { s as store } from './index-446f9341.js';
8
8
  import './filter-item-type.enum-d45e026f.js';
9
- import './form-config-fetcher-6ab4e805.js';
10
- import './DataFetcher-6f6de657.js';
9
+ import './form-config-fetcher-bc6f0f1f.js';
10
+ import './DataFetcher-f6b2961a.js';
11
11
  import './PrintUtils-3e4ff0f5.js';
12
12
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
13
13
 
@@ -43,8 +43,10 @@ const SnkPersonalizedFilter = class {
43
43
  this.resourceID = undefined;
44
44
  this.isDefaultFilter = false;
45
45
  }
46
- /*
47
- * Cria um novo filtro se não houver nenhum filtro existente
46
+ /**
47
+ * Cria um novo filtro personalizado caso não exista nenhum.
48
+ * @method
49
+ * @returns {Promise<void>}
48
50
  */
49
51
  async createPersonalizedFilter() {
50
52
  const newPersonalizedFilter = {
@@ -80,6 +82,12 @@ const SnkPersonalizedFilter = class {
80
82
  this._originalFilterAssistent = ObjectUtils.copy(newPersonalizedFilter);
81
83
  this._filterAssistent = ObjectUtils.copy(newPersonalizedFilter);
82
84
  }
85
+ /**
86
+ * Carrega o filtro personalizado com base no identificador informado.
87
+ * @watch filterId
88
+ * @param newValue Novo valor do filtroId.
89
+ * @param oldValue Valor anterior do filtroId.
90
+ */
83
91
  loadFilter(newValue, oldValue) {
84
92
  if (newValue == null || oldValue == newValue || this.resourceID == undefined) {
85
93
  return;
@@ -1,13 +1,13 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-479e1293.js';
2
2
  import { ObjectUtils, StringUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
3
- import { P as PesquisaFetcher, b as buildGridMetadata, a as PESQUISA_VIEW_MODE } from './ISave-7ecdca20.js';
4
- import './DataFetcher-6f6de657.js';
3
+ import { P as PesquisaFetcher, b as buildGridMetadata, a as PESQUISA_VIEW_MODE } from './ISave-6b7b0423.js';
4
+ import './DataFetcher-f6b2961a.js';
5
5
  import './index-b40568ff.js';
6
6
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
7
7
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
8
- import './dataunit-fetcher-f21cbad0.js';
8
+ import './dataunit-fetcher-6314b19d.js';
9
9
  import './filter-item-type.enum-d45e026f.js';
10
- import './form-config-fetcher-6ab4e805.js';
10
+ import './form-config-fetcher-bc6f0f1f.js';
11
11
  import './constants-7b422de0.js';
12
12
  import './PrintUtils-3e4ff0f5.js';
13
13
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
@@ -13,11 +13,11 @@ const SnkSimpleBar = class {
13
13
  this.messagesBuilder = undefined;
14
14
  }
15
15
  /**
16
- * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
17
- * através de um pequeno modulo na estrutura da aplicação:
18
- * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
19
- * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-simple-bar.msg.ts"
20
- */
16
+ * Permite customizar as mensagens dos blocos de construção
17
+ * através de um pequeno módulo na estrutura da aplicação:
18
+ * - Crie um arquivo no seguinte caminho: /messages/appmessages.msg.js.
19
+ * Para conhecer os detalhes do módulo, veja o arquivo neste projeto: "/src/lib/message/resources/snk-simple-bar.msg.ts"
20
+ */
21
21
  getMessage(key, params) {
22
22
  var _a;
23
23
  if (this.messagesBuilder)