@sankhyalabs/sankhyablocks 8.15.0-dev.7 → 8.15.0-dev.70

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 (382) hide show
  1. package/dist/cjs/{ConfigStorage-8009ecb2.js → ConfigStorage-9a53a42c.js} +94 -21
  2. package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-515bda03.js} +7 -4
  3. package/dist/cjs/IExporterProvider-90690372.js +230 -0
  4. package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
  5. package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
  6. package/dist/cjs/{SnkFormConfigManager-7d850fbc.js → SnkFormConfigManager-7b222c78.js} +23 -15
  7. package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-4a95fe86.js} +25 -13
  8. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-5acb0335.js} +1 -1
  9. package/dist/cjs/{dataunit-fetcher-14108bec.js → dataunit-fetcher-7a08e4dd.js} +409 -77
  10. package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-3f430aee.js} +13 -1
  11. package/dist/cjs/index-f9e81701.js +2 -10
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/{pesquisa-fetcher-ef050a47.js → pesquisa-fetcher-916a935c.js} +12 -13
  14. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  15. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +526 -8
  16. package/dist/cjs/snk-application.cjs.entry.js +68 -24
  17. package/dist/cjs/snk-attach.cjs.entry.js +430 -71
  18. package/dist/cjs/snk-crud.cjs.entry.js +124 -28
  19. package/dist/cjs/snk-data-exporter.cjs.entry.js +207 -83
  20. package/dist/cjs/snk-data-unit-3718477f.js +670 -0
  21. package/dist/cjs/snk-data-unit.cjs.entry.js +11 -2
  22. package/dist/cjs/snk-detail-view.cjs.entry.js +52 -13
  23. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  24. package/dist/cjs/snk-filter-bar.cjs.entry.js +70 -10
  25. package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -1
  26. package/dist/cjs/snk-filter-item.cjs.entry.js +13 -6
  27. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  28. package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -1
  29. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
  30. package/dist/cjs/snk-form-config.cjs.entry.js +47 -27
  31. package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
  32. package/dist/cjs/snk-form.cjs.entry.js +60 -8
  33. package/dist/cjs/snk-grid.cjs.entry.js +199 -122
  34. package/dist/cjs/{snk-guides-viewer-e7f76399.js → snk-guides-viewer-7fb9e5a1.js} +56 -20
  35. package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -10
  36. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  37. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  38. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  39. package/dist/cjs/snk-simple-crud.cjs.entry.js +507 -39
  40. package/dist/cjs/snk-taskbar.cjs.entry.js +124 -15
  41. package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-d9392685.js} +11 -11
  42. package/dist/collection/collection-manifest.json +8 -8
  43. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  44. package/dist/collection/components/snk-application/snk-application.js +122 -19
  45. package/dist/collection/components/snk-attach/snk-attach.js +220 -53
  46. package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
  47. package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
  48. package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
  49. package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
  50. package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
  51. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +118 -0
  52. package/dist/collection/components/snk-attach/structure/index.js +6 -3
  53. package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
  54. package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
  55. package/dist/collection/components/snk-crud/snk-crud.js +340 -19
  56. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +137 -2
  57. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
  58. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  59. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +163 -13
  60. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
  61. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
  62. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
  63. package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
  64. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
  65. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
  66. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +44 -50
  67. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
  68. package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
  69. package/dist/collection/components/snk-data-unit/snk-data-unit.js +500 -216
  70. package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
  71. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  72. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
  73. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  74. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +22 -1
  75. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +31 -6
  76. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +19 -1
  77. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +24 -1
  78. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +180 -5
  79. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
  80. package/dist/collection/components/snk-form/snk-form.js +126 -5
  81. package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +22 -14
  82. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
  83. package/dist/collection/components/snk-grid/snk-grid.js +341 -115
  84. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  85. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  86. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
  87. package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
  88. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +10 -2
  89. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +824 -22
  90. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +4 -2
  91. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -11
  92. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  93. package/dist/collection/components/snk-taskbar/snk-taskbar.js +167 -14
  94. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
  95. package/dist/collection/lib/configs/ConfigStorage.js +86 -16
  96. package/dist/collection/lib/dataUnit/InMemoryLoader.js +15 -42
  97. package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
  98. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +33 -0
  99. package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
  100. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +7 -4
  101. package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
  102. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
  103. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
  104. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
  105. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
  106. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
  107. package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
  108. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
  109. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
  110. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
  111. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +30 -2
  112. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
  113. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
  114. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +87 -24
  115. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
  116. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +12 -0
  117. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  118. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  119. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +12 -13
  120. package/dist/collection/lib/index.js +1 -1
  121. package/dist/collection/lib/message/SnkMessageBuilder.js +25 -32
  122. package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
  123. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
  124. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -0
  125. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +4 -0
  126. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  127. package/dist/components/ConfigStorage.js +92 -19
  128. package/dist/components/DataFetcher.js +7 -4
  129. package/dist/components/IExporterProvider.js +298 -0
  130. package/dist/components/ISave.js +42 -0
  131. package/dist/components/SnkFormConfigManager.js +21 -13
  132. package/dist/components/SnkMessageBuilder.js +25 -13
  133. package/dist/components/dataunit-fetcher.js +185 -241
  134. package/dist/components/form-config-fetcher.js +12 -0
  135. package/dist/components/index.d.ts +6 -6
  136. package/dist/components/index2.js +198 -33
  137. package/dist/{esm/pesquisa-fetcher-dd3ca0a5.js → components/pesquisa-fetcher.js} +13 -14
  138. package/dist/components/snk-actions-button2.js +4 -10
  139. package/dist/components/snk-application2.js +66 -18
  140. package/dist/components/snk-attach2.js +485 -78
  141. package/dist/components/snk-crud.js +131 -23
  142. package/dist/components/snk-data-exporter2.js +202 -83
  143. package/dist/components/snk-data-unit2.js +463 -214
  144. package/dist/components/snk-detail-view2.js +137 -23
  145. package/dist/components/snk-entity-list.js +5 -3
  146. package/dist/components/snk-expression-item2.js +1 -1
  147. package/dist/components/snk-filter-bar2.js +74 -8
  148. package/dist/components/snk-filter-detail2.js +5 -1
  149. package/dist/components/snk-filter-item2.js +14 -6
  150. package/dist/components/snk-filter-modal.js +4 -2
  151. package/dist/components/snk-filter-multi-select.js +2 -1
  152. package/dist/components/snk-form-config2.js +46 -26
  153. package/dist/components/snk-form-view2.js +72 -1
  154. package/dist/components/snk-form.js +60 -5
  155. package/dist/components/snk-grid-config2.js +128 -102
  156. package/dist/components/snk-grid2.js +207 -119
  157. package/dist/components/snk-personalized-filter-editor.js +3 -1
  158. package/dist/components/snk-personalized-filter2.js +1 -1
  159. package/dist/components/snk-pesquisa2.js +1 -1
  160. package/dist/components/snk-simple-crud2.js +568 -35
  161. package/dist/components/snk-taskbar2.js +144 -29
  162. package/dist/components/taskbar-actions-button2.js +4 -2
  163. package/dist/esm/{ConfigStorage-1244b8b0.js → ConfigStorage-174101b9.js} +94 -21
  164. package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-4b4b7beb.js} +7 -4
  165. package/dist/esm/IExporterProvider-ce2ca127.js +221 -0
  166. package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
  167. package/dist/esm/RecordIDUtils-87d02110.js +41 -0
  168. package/dist/esm/{SnkFormConfigManager-9be0e7d4.js → SnkFormConfigManager-3bdb3e1f.js} +23 -15
  169. package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-3a767111.js} +25 -13
  170. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-9f86c346.js} +1 -1
  171. package/dist/esm/{dataunit-fetcher-cbec1594.js → dataunit-fetcher-f3fa35b9.js} +392 -70
  172. package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-5d72aaf1.js} +13 -1
  173. package/dist/esm/index-a7d3d3f1.js +2 -10
  174. package/dist/esm/loader.js +1 -1
  175. package/dist/esm/pesquisa-fetcher-9cfab836.js +164 -0
  176. package/dist/esm/sankhyablocks.js +1 -1
  177. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +525 -9
  178. package/dist/esm/snk-application.entry.js +68 -24
  179. package/dist/esm/snk-attach.entry.js +430 -71
  180. package/dist/esm/snk-crud.entry.js +124 -28
  181. package/dist/esm/snk-data-exporter.entry.js +208 -84
  182. package/dist/esm/snk-data-unit-8d6afa43.js +668 -0
  183. package/dist/esm/snk-data-unit.entry.js +11 -2
  184. package/dist/esm/snk-detail-view.entry.js +52 -13
  185. package/dist/esm/snk-entity-list.entry.js +5 -3
  186. package/dist/esm/snk-filter-bar.entry.js +70 -10
  187. package/dist/esm/snk-filter-detail.entry.js +4 -1
  188. package/dist/esm/snk-filter-item.entry.js +13 -6
  189. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  190. package/dist/esm/snk-filter-modal.entry.js +2 -1
  191. package/dist/esm/snk-filter-multi-select.entry.js +2 -1
  192. package/dist/esm/snk-form-config.entry.js +48 -28
  193. package/dist/esm/snk-form-view.entry.js +67 -0
  194. package/dist/esm/snk-form.entry.js +60 -8
  195. package/dist/esm/snk-grid.entry.js +199 -122
  196. package/dist/esm/{snk-guides-viewer-c7aaf02a.js → snk-guides-viewer-dabd574c.js} +56 -20
  197. package/dist/esm/snk-guides-viewer.entry.js +10 -10
  198. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  199. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  200. package/dist/esm/snk-pesquisa.entry.js +1 -1
  201. package/dist/esm/snk-simple-crud.entry.js +500 -32
  202. package/dist/esm/snk-taskbar.entry.js +125 -16
  203. package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-ad766858.js} +11 -11
  204. package/dist/sankhyablocks/{p-9695f78b.js → p-010d475f.js} +1 -1
  205. package/dist/sankhyablocks/p-109e0551.js +1 -0
  206. package/dist/sankhyablocks/p-1918789e.js +1 -0
  207. package/dist/sankhyablocks/p-19ba2e08.entry.js +1 -0
  208. package/dist/sankhyablocks/p-1c628fb2.entry.js +1 -0
  209. package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
  210. package/dist/sankhyablocks/p-1e9c3f95.entry.js +1 -0
  211. package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
  212. package/dist/sankhyablocks/p-2a84e45b.entry.js +1 -0
  213. package/dist/sankhyablocks/p-2acc8816.entry.js +1 -0
  214. package/dist/sankhyablocks/p-2c9ea7b6.entry.js +1 -0
  215. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  216. package/dist/sankhyablocks/p-3e4c2cfe.entry.js +11 -0
  217. package/dist/sankhyablocks/p-4a8a149d.entry.js +1 -0
  218. package/dist/sankhyablocks/p-4ce73e88.js +1 -0
  219. package/dist/sankhyablocks/p-52df8935.entry.js +1 -0
  220. package/dist/sankhyablocks/p-54a5d52a.entry.js +1 -0
  221. package/dist/sankhyablocks/p-566f5f50.js +56 -0
  222. package/dist/sankhyablocks/{p-3520c088.entry.js → p-59dccb7a.entry.js} +1 -1
  223. package/dist/sankhyablocks/p-5bd78e4c.entry.js +1 -0
  224. package/dist/sankhyablocks/p-61dd89eb.js +1 -0
  225. package/dist/sankhyablocks/p-6b2be902.js +6 -0
  226. package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
  227. package/dist/sankhyablocks/p-9863d682.js +1 -0
  228. package/dist/sankhyablocks/{p-e6380c60.js → p-a6dfa396.js} +1 -1
  229. package/dist/sankhyablocks/{p-f514913b.entry.js → p-aa854fa8.entry.js} +1 -1
  230. package/dist/sankhyablocks/p-aa9c4099.entry.js +1 -0
  231. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  232. package/dist/sankhyablocks/p-b27114c4.js +1 -0
  233. package/dist/sankhyablocks/p-b643f746.entry.js +1 -0
  234. package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
  235. package/dist/sankhyablocks/p-cfb98f51.entry.js +1 -0
  236. package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
  237. package/dist/sankhyablocks/p-e0c27486.js +26 -0
  238. package/dist/sankhyablocks/p-e238279a.entry.js +1 -0
  239. package/dist/sankhyablocks/p-e8763234.entry.js +1 -0
  240. package/dist/sankhyablocks/p-eae66367.js +1 -0
  241. package/dist/sankhyablocks/p-fde91811.js +60 -0
  242. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  243. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  244. package/dist/types/components/snk-application/snk-application.d.ts +21 -2
  245. package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
  246. package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
  247. package/dist/types/components/snk-attach/snk-attach.d.ts +33 -10
  248. package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
  249. package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +40 -0
  250. package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
  251. package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
  252. package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
  253. package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +16 -0
  254. package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
  255. package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
  256. package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
  257. package/dist/types/components/snk-crud/snk-crud.d.ts +53 -1
  258. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +24 -1
  259. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
  260. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +30 -1
  261. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
  262. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
  263. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
  264. package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
  265. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
  266. package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
  267. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
  268. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
  269. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
  270. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +61 -2
  271. package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
  272. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +4 -0
  273. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +7 -3
  274. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +5 -0
  275. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +31 -1
  276. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
  277. package/dist/types/components/snk-form/snk-form.d.ts +20 -1
  278. package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +2 -1
  279. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
  280. package/dist/types/components/snk-grid/snk-grid.d.ts +65 -7
  281. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  282. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  283. package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
  284. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +138 -6
  285. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
  286. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +34 -1
  287. package/dist/types/components.d.ts +502 -16
  288. package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
  289. package/dist/types/lib/configs/ConfigStorage.d.ts +25 -1
  290. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -3
  291. package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
  292. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +4 -0
  293. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
  294. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  295. package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
  296. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
  297. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
  298. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
  299. package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
  300. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
  301. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
  302. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  303. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
  304. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
  305. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
  306. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +7 -0
  307. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
  308. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
  309. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +2 -0
  310. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  311. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  312. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
  313. package/dist/types/lib/index.d.ts +1 -1
  314. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  315. package/package.json +15 -6
  316. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  317. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  318. package/dist/cjs/snk-data-unit-1bc69073.js +0 -462
  319. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  320. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  321. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
  322. package/dist/components/field-search.js +0 -121
  323. package/dist/components/index3.js +0 -199
  324. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  325. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  326. package/dist/esm/snk-data-unit-6208ebf0.js +0 -460
  327. package/dist/esm/snk-grid-config.entry.js +0 -479
  328. package/dist/esm/snk-select-box.entry.js +0 -21
  329. package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
  330. package/dist/sankhyablocks/p-0874adb5.entry.js +0 -1
  331. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  332. package/dist/sankhyablocks/p-0d7863ed.js +0 -26
  333. package/dist/sankhyablocks/p-11081798.entry.js +0 -1
  334. package/dist/sankhyablocks/p-20726710.entry.js +0 -1
  335. package/dist/sankhyablocks/p-25927311.entry.js +0 -1
  336. package/dist/sankhyablocks/p-32f0935f.js +0 -1
  337. package/dist/sankhyablocks/p-374d03f6.js +0 -1
  338. package/dist/sankhyablocks/p-3891ae6f.js +0 -60
  339. package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
  340. package/dist/sankhyablocks/p-585294ee.js +0 -56
  341. package/dist/sankhyablocks/p-6977a26c.entry.js +0 -1
  342. package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
  343. package/dist/sankhyablocks/p-776ee8e3.js +0 -1
  344. package/dist/sankhyablocks/p-809f367d.entry.js +0 -1
  345. package/dist/sankhyablocks/p-8c243e7e.entry.js +0 -11
  346. package/dist/sankhyablocks/p-8d16f9ce.js +0 -1
  347. package/dist/sankhyablocks/p-8d70b5d5.entry.js +0 -1
  348. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  349. package/dist/sankhyablocks/p-a9e5b094.entry.js +0 -1
  350. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  351. package/dist/sankhyablocks/p-c4d19840.entry.js +0 -1
  352. package/dist/sankhyablocks/p-c627ba91.entry.js +0 -1
  353. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  354. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  355. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  356. package/dist/sankhyablocks/p-d6317851.entry.js +0 -1
  357. package/dist/sankhyablocks/p-d81f20c4.entry.js +0 -1
  358. package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
  359. package/dist/sankhyablocks/p-dc8b6418.entry.js +0 -1
  360. package/dist/sankhyablocks/p-f2056f66.entry.js +0 -1
  361. package/dist/sankhyablocks/p-fd8814b9.entry.js +0 -1
  362. package/dist/sankhyablocks/p-ff6064e7.js +0 -1
  363. package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
  364. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
  365. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
  366. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
  367. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  368. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  369. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  370. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  371. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  372. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  373. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  374. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  375. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  376. /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
  377. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  378. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  379. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
  380. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
  381. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
  382. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -1,22 +1,22 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { StringUtils, ElementIDUtils, ApplicationContext, JSUtils, FloatingManager } from '@sankhyalabs/core';
3
- import { T as TaskbarElement } from './taskbar-elements-d4d0b424.js';
4
- import './DataFetcher-aa159c5a.js';
5
- import './pesquisa-fetcher-dd3ca0a5.js';
3
+ import { T as TaskbarElement } from './taskbar-elements-ad766858.js';
4
+ import './DataFetcher-4b4b7beb.js';
5
+ import './pesquisa-fetcher-9cfab836.js';
6
6
  import { P as PresentationMode } from './index-0ece87a6.js';
7
- import './ISave-4412b20c.js';
7
+ import './ISave-d8c8bc59.js';
8
8
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './dataunit-fetcher-cbec1594.js';
11
- import './PreloadManager-c1c2f2b4.js';
10
+ import './dataunit-fetcher-f3fa35b9.js';
12
11
  import './filter-item-type.enum-d45e026f.js';
13
- import './form-config-fetcher-36219cd3.js';
12
+ import './form-config-fetcher-5d72aaf1.js';
14
13
  import { d as VIEW_MODE } from './constants-8457af36.js';
15
- import { A as AutorizationType } from './auth-fetcher-c05dc474.js';
14
+ import { A as AutorizationType } from './auth-fetcher-9f86c346.js';
16
15
  import './index-bdf75557.js';
17
16
  import './PrintUtils-3e4ff0f5.js';
18
- import './ResourceIDUtils-a114189a.js';
19
17
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
18
+ import '@sankhyalabs/core/dist/utils/SortingUtils';
19
+ import './ResourceIDUtils-a114189a.js';
20
20
 
21
21
  const snkCrudCss = ".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";
22
22
 
@@ -29,6 +29,8 @@ const SnkCrud = class {
29
29
  this.formItemsReady = createEvent(this, "formItemsReady", 7);
30
30
  this._keyDownHandler = async (event) => this.keyDownListener(event);
31
31
  this._viewHistory = [];
32
+ this._customEditors = new Map();
33
+ this._customRenders = new Map();
32
34
  this._dataUnit = undefined;
33
35
  this._dataState = undefined;
34
36
  this.attachmentRegisterKey = undefined;
@@ -36,6 +38,7 @@ const SnkCrud = class {
36
38
  this._canEdit = undefined;
37
39
  this._resourceID = undefined;
38
40
  this.configName = undefined;
41
+ this.filterBarTitle = undefined;
39
42
  this.selectionToastConfig = undefined;
40
43
  this.showActionButtons = false;
41
44
  this.actionsList = undefined;
@@ -46,6 +49,11 @@ const SnkCrud = class {
46
49
  this.presentationMode = PresentationMode.PRIMARY;
47
50
  this.messagesBuilder = undefined;
48
51
  this.useEnterLikeTab = false;
52
+ this.gridLegacyConfigName = undefined;
53
+ this.filterBarLegacyConfigName = undefined;
54
+ this.formLegacyConfigName = undefined;
55
+ this.disablePersonalizedFilter = undefined;
56
+ this.autoLoad = undefined;
49
57
  this.customContainerId = `SNK-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
50
58
  }
51
59
  /**
@@ -81,6 +89,49 @@ const SnkCrud = class {
81
89
  async getFilterBar() {
82
90
  return await this._snkGrid.getFilterBar();
83
91
  }
92
+ /**
93
+ * Registra um editor customizado para campos da grade e formulário.
94
+ */
95
+ async addCustomEditor(fieldName, customEditor) {
96
+ if (this._guidesViewer && this._snkGrid) {
97
+ this._guidesViewer.addCustomEditor(fieldName, customEditor);
98
+ this._snkGrid.addCustomEditor(fieldName, customEditor);
99
+ return;
100
+ }
101
+ const newCustomEditors = new Map(this._customEditors);
102
+ newCustomEditors.set(fieldName, customEditor);
103
+ this._customEditors = newCustomEditors;
104
+ }
105
+ /**
106
+ * Registra um render customizado para colunas da grid.
107
+ */
108
+ async addGridCustomRender(fieldName, customRender) {
109
+ if (this._snkGrid) {
110
+ this._snkGrid.addGridCustomRender(fieldName, customRender);
111
+ return;
112
+ }
113
+ const newCustomRenders = new Map(this._customRenders);
114
+ newCustomRenders.set(fieldName, customRender);
115
+ this._customRenders = newCustomRenders;
116
+ }
117
+ /**
118
+ * Registra um formatador de valores para uma coluna da grid.
119
+ */
120
+ async addCustomValueFormatter(columnName, customFormatter) {
121
+ this._snkGrid.addCustomValueFormatter(columnName, customFormatter);
122
+ }
123
+ /**
124
+ * Remove o formatador de valores de uma coluna da grid.
125
+ */
126
+ async removeCustomValueFormatter(columnName) {
127
+ this._snkGrid.removeCustomValueFormatter(columnName);
128
+ }
129
+ /**
130
+ * Altera/adiciona uma propriedade nos metadados do campo.
131
+ */
132
+ async setFieldProp(fieldName, propName, value) {
133
+ await this._guidesViewer.setFieldProp(fieldName, propName, value);
134
+ }
84
135
  currentViewModeWatcher(currentView) {
85
136
  this._viewHistory = [...this._viewHistory.slice(-1), currentView];
86
137
  }
@@ -105,6 +156,12 @@ const SnkCrud = class {
105
156
  setViewMode(viewMode) {
106
157
  this._viewStack.show(viewMode);
107
158
  this._currentViewMode = viewMode;
159
+ if (viewMode === VIEW_MODE.GRID) {
160
+ this._snkGrid.setFocus();
161
+ }
162
+ else if (viewMode === VIEW_MODE.FORM) {
163
+ this._guidesViewer.setFocus();
164
+ }
108
165
  }
109
166
  openConfig(viewMode) {
110
167
  this._snkConfigurator.close();
@@ -134,6 +191,29 @@ const SnkCrud = class {
134
191
  const joinedPrimaryKeys = recordCriteria.map(({ value }) => value).join('_');
135
192
  return joinedPrimaryKeys;
136
193
  }
194
+ setCustomRenders() {
195
+ if (!this._snkGrid) {
196
+ return;
197
+ }
198
+ for (const [fieldName, customRender] of this._customRenders) {
199
+ this._snkGrid.addGridCustomRender(fieldName, customRender);
200
+ this._customRenders.delete(fieldName);
201
+ }
202
+ }
203
+ setCustomEditors() {
204
+ if (!this._snkGrid || !this._guidesViewer) {
205
+ return;
206
+ }
207
+ for (const [fieldName, customEditor] of this._customEditors) {
208
+ this._guidesViewer.addCustomEditor(fieldName, customEditor);
209
+ this._snkGrid.addCustomEditor(fieldName, customEditor);
210
+ this._customEditors.delete(fieldName);
211
+ }
212
+ }
213
+ componentDidRender() {
214
+ this.setCustomRenders();
215
+ this.setCustomEditors();
216
+ }
137
217
  componentWillLoad() {
138
218
  this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
139
219
  let parent = this._element.parentElement;
@@ -156,12 +236,7 @@ const SnkCrud = class {
156
236
  else {
157
237
  this.initDataUnit();
158
238
  }
159
- this._snkDataUnit.addEventListener("dataStateChange", async ({ detail: dataState }) => {
160
- this._dataState = dataState;
161
- if (dataState.selectedRecord !== undefined) {
162
- this.attachmentRegisterKey = await this.getAttachmentRegisterKey();
163
- }
164
- });
239
+ this._snkDataUnit.addEventListener("dataStateChange", this.handleDataStateChange.bind(this));
165
240
  break;
166
241
  }
167
242
  parent = parent.parentElement;
@@ -177,8 +252,28 @@ const SnkCrud = class {
177
252
  this.removeShortcuts();
178
253
  window.removeEventListener("keydown", this._keyDownHandler);
179
254
  }
255
+ async handleDataStateChange(evt) {
256
+ var _a;
257
+ this._dataState = evt.detail;
258
+ if (this._dataState.selectedRecord !== undefined) {
259
+ this.attachmentRegisterKey = await this.getAttachmentRegisterKey();
260
+ }
261
+ const fieldsWithRmPrecision = await this._snkDataUnit.getFieldsWithRmPrecision();
262
+ for (const field of fieldsWithRmPrecision || []) {
263
+ if (!field) {
264
+ continue;
265
+ }
266
+ const rmPrecision = (_a = this._dataState.rowMetadata) === null || _a === void 0 ? void 0 : _a.getProp('rm_precision', field);
267
+ if (!rmPrecision) {
268
+ continue;
269
+ }
270
+ await this.setFieldProp(field, 'precision', rmPrecision);
271
+ await this.setFieldProp(field, 'prettyPrecision', rmPrecision);
272
+ }
273
+ }
180
274
  async initKeyboardManager() {
181
- const keyboardManager = await this._application.getKeyboardManager();
275
+ var _a;
276
+ const keyboardManager = await ((_a = this._application) === null || _a === void 0 ? void 0 : _a.getKeyboardManager());
182
277
  if (keyboardManager) {
183
278
  const dataUnit = this._dataUnit || await this._snkDataUnit.getDataUnit();
184
279
  async function saveDataUnitHandlingFocus() {
@@ -195,39 +290,40 @@ const SnkCrud = class {
195
290
  element.focus();
196
291
  }
197
292
  keyboardManager
198
- .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade." })
199
- .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados." })
200
- .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados." })
201
- .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro." })
202
- .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado." })
203
- .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado." })
293
+ .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade.", element: this._element })
294
+ .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
295
+ .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
296
+ .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro.", element: this._element })
297
+ .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
298
+ .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
204
299
  .bind("ctrl + .", () => {
205
300
  if (dataUnit.getSelectionInfo().records.length === 0) {
206
301
  return dataUnit.selectFirst();
207
302
  }
208
303
  return dataUnit.nextRecord();
209
304
  }, {
210
- description: "Avança para o próximo registro."
305
+ description: "Avança para o próximo registro.", element: this._element
211
306
  })
212
- .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior." })
307
+ .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior.", element: this._element })
213
308
  .bind("F5", async () => {
214
309
  const currentView = await this._viewStack.getSelectedIndex();
215
310
  if (VIEW_MODE.GRID === currentView) {
216
311
  dataUnit.loadData();
217
312
  }
218
- }, { description: "Atualiza os dados." })
313
+ }, { description: "Atualiza os dados.", element: this._element })
219
314
  .bind("Escape", () => {
220
315
  if (dataUnit.isDirty()) {
221
316
  dataUnit.cancelEdition();
222
317
  }
223
318
  }, {
224
319
  debounceTime: 1000,
225
- description: "Cancela uma ação."
320
+ description: "Cancela uma ação.", element: this._element
226
321
  });
227
322
  }
228
323
  }
229
324
  async removeShortcuts() {
230
- const keyboardManager = await this._application.getKeyboardManager();
325
+ var _a;
326
+ const keyboardManager = await ((_a = this._application) === null || _a === void 0 ? void 0 : _a.getKeyboardManager());
231
327
  if (keyboardManager) {
232
328
  keyboardManager
233
329
  .unbind("F6")
@@ -294,7 +390,7 @@ const SnkCrud = class {
294
390
  return;
295
391
  }
296
392
  this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
297
- return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
393
+ return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
298
394
  }
299
395
  get _element() { return getElement(this); }
300
396
  static get watchers() { return {
@@ -1,13 +1,23 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
- import { ApplicationContext, ObjectUtils, DataType, ElementIDUtils } from '@sankhyalabs/core';
2
+ import { ApplicationContext, ObjectUtils, UserInterface, DataType, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { D as DataExporterOption, a as DataExporterFormat, b as DataExporterType } from './index-0ece87a6.js';
5
5
  import { R as REPORT_LAUNCHER_RESOURCE_ID } from './constants-8457af36.js';
6
- import { D as DataFetcher } from './DataFetcher-aa159c5a.js';
7
- import { S as SnkDataUnit } from './snk-data-unit-6208ebf0.js';
8
- import './PrintUtils-3e4ff0f5.js';
6
+ import { D as DataFetcher } from './DataFetcher-4b4b7beb.js';
7
+ import { S as SnkDataUnit } from './snk-data-unit-8d6afa43.js';
8
+ import './pesquisa-fetcher-9cfab836.js';
9
+ import './ISave-d8c8bc59.js';
10
+ import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
11
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './SnkMessageBuilder-ca843d1b.js';
12
+ import './dataunit-fetcher-f3fa35b9.js';
13
+ import './filter-item-type.enum-d45e026f.js';
14
+ import './form-config-fetcher-5d72aaf1.js';
15
+ import './PrintUtils-3e4ff0f5.js';
16
+ import './SnkMessageBuilder-3a767111.js';
17
+ import './RecordIDUtils-87d02110.js';
18
+ import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
19
+ import '@sankhyalabs/core/dist/utils/SortingUtils';
20
+ import './ResourceIDUtils-a114189a.js';
11
21
 
12
22
  class ItemBuilder {
13
23
  constructor(getMessage, selectedNumber) {
@@ -149,38 +159,6 @@ class ItemBuilder {
149
159
  }
150
160
  }
151
161
 
152
- var __rest = (undefined && undefined.__rest) || function (s, e) {
153
- var t = {};
154
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
155
- t[p] = s[p];
156
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
157
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
158
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
159
- t[p[i]] = s[p[i]];
160
- }
161
- return t;
162
- };
163
- function fetchDataExporter(_a) {
164
- var { methodName } = _a, requestBody = __rest(_a, ["methodName"]);
165
- const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
166
- const serviceName = `${application.getModuleName()}@DataExporterSPBean.${methodName}`;
167
- const payload = { serviceName, requestBody };
168
- return new Promise((resolve, reject) => {
169
- DataFetcher.get()
170
- .callServiceBroker(serviceName, ObjectUtils.objectToString(payload))
171
- .then(result => resolve(getFormatResponse$1(result)))
172
- .catch(error => reject(error));
173
- });
174
- }
175
- function getFormatResponse$1(result) {
176
- var _a;
177
- const response = (_a = result === null || result === void 0 ? void 0 : result.json) === null || _a === void 0 ? void 0 : _a.$;
178
- if (response == undefined) {
179
- return;
180
- }
181
- return ObjectUtils.stringToObject(response);
182
- }
183
-
184
162
  function getMessage(application, key, params) {
185
163
  var _a;
186
164
  return (_a = application === null || application === void 0 ? void 0 : application.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage(key, params);
@@ -209,16 +187,165 @@ function getFormatResponse(result) {
209
187
  return ObjectUtils.stringToObject(response);
210
188
  }
211
189
 
190
+ var __rest = (undefined && undefined.__rest) || function (s, e) {
191
+ var t = {};
192
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
193
+ t[p] = s[p];
194
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
195
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
196
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
197
+ t[p[i]] = s[p[i]];
198
+ }
199
+ return t;
200
+ };
201
+ class ServerSideExporterStrategy {
202
+ constructor(provider) {
203
+ this._provider = provider;
204
+ }
205
+ async getParams(resolveProps) {
206
+ var _a, _b, _c, _d, _e, _f;
207
+ const filters = (_b = (_a = this._provider).getFilters) === null || _b === void 0 ? void 0 : _b.call(_a);
208
+ const columns = await this._provider.getColumnsMetadata();
209
+ const sort = (_d = (_c = this._provider).getOrders) === null || _d === void 0 ? void 0 : _d.call(_c);
210
+ const resourceURI = (_f = (_e = this._provider).getResourceURI) === null || _f === void 0 ? void 0 : _f.call(_e);
211
+ const selectedIDs = this._provider.getSelectedIDs();
212
+ const option = resolveProps.exportOption;
213
+ const currentPageOptions = [
214
+ DataExporterOption.EXPORT_PAGE_TO_PDF,
215
+ DataExporterOption.EXPORT_PAGE_TO_XLS
216
+ ];
217
+ delete resolveProps.exportOption;
218
+ let params = Object.assign({ filters,
219
+ columns,
220
+ sort,
221
+ resourceURI, selectedIDs: selectedIDs.slice(0, this._provider.getExportLimit()) }, resolveProps);
222
+ if (currentPageOptions.includes(option) || resolveProps.type == "page") {
223
+ const offset = this._provider.getOffset();
224
+ const limit = this._provider.getPageSize();
225
+ params = Object.assign(Object.assign({}, params), { offset,
226
+ limit, selectedIDs: [] });
227
+ }
228
+ else if (resolveProps.type == "all") {
229
+ params = Object.assign(Object.assign({}, params), { offset: 0, limit: this._provider.getExportLimit(), selectedIDs: [] });
230
+ }
231
+ return Promise.resolve(params);
232
+ }
233
+ async executeExport(resolveProps) {
234
+ const _a = await this.getParams(resolveProps), { methodName } = _a, requestBody = __rest(_a, ["methodName"]);
235
+ const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
236
+ const serviceName = `${application.getModuleName()}@DataExporterSPBean.${methodName}`;
237
+ const payload = { serviceName, requestBody };
238
+ return new Promise((resolve, reject) => {
239
+ DataFetcher.get()
240
+ .callServiceBroker(serviceName, ObjectUtils.objectToString(payload))
241
+ .then(result => resolve(this.getFormatResponse(result)))
242
+ .catch(error => reject(error));
243
+ });
244
+ }
245
+ getFormatResponse(result) {
246
+ var _a;
247
+ const response = (_a = result === null || result === void 0 ? void 0 : result.json) === null || _a === void 0 ? void 0 : _a.$;
248
+ if (response == undefined) {
249
+ return;
250
+ }
251
+ return ObjectUtils.stringToObject(response);
252
+ }
253
+ }
254
+
255
+ class ClientSideExporterStrategy {
256
+ constructor(provider) {
257
+ this._provider = provider;
258
+ }
259
+ async executeExport(resolveProps) {
260
+ const { methodName, titleGrid } = resolveProps;
261
+ const records = await this._provider.getRecords();
262
+ const columns = await this._provider.getColumnsMetadata();
263
+ const [serviceName, processor] = this.getExecutor(methodName);
264
+ const payload = {
265
+ serviceName,
266
+ requestBody: {
267
+ grid: {
268
+ titleGrid,
269
+ columns: this.buildColumnsObject(columns),
270
+ rows: this.buildRowsObject(columns, records),
271
+ customOptions: { xlsxExtension: false }
272
+ }
273
+ }
274
+ };
275
+ return new Promise((resolve, reject) => {
276
+ DataFetcher.get()
277
+ .callServiceBroker(serviceName, payload)
278
+ .then(result => resolve(processor(result)))
279
+ .catch(error => reject(error));
280
+ });
281
+ }
282
+ getExecutor(methodName) {
283
+ if (methodName === "exportToPDF") {
284
+ return [
285
+ "GridPDFBuilderSP.buildPDFFromJson",
286
+ responseBody => ({
287
+ fileSessionKey: responseBody.chavePDF.valor,
288
+ canPrint: responseBody.permiteImprimir.valor === "S",
289
+ canExport: responseBody.permiteExportar.valor === "S",
290
+ canSendEmail: responseBody.canSendEmail.valor === "S",
291
+ useAppPrint: true
292
+ })
293
+ ];
294
+ }
295
+ return [
296
+ "GridXLSBuilderSP.buildXLSFromJson",
297
+ responseBody => ({
298
+ fileSessionKey: responseBody.chaveXLS.valor,
299
+ canPrint: false,
300
+ canExport: false,
301
+ useAppPrint: false,
302
+ canSendEmail: false
303
+ })
304
+ ];
305
+ }
306
+ buildColumnsObject(columns) {
307
+ return {
308
+ column: columns.map((column, index) => {
309
+ const { label, id, width, userInterface } = column;
310
+ return Object.assign({ index: index + 1, id,
311
+ label,
312
+ width, presentationType: "P" }, (TYPE_MAP[userInterface] || { type: "S", align: "left" }));
313
+ })
314
+ };
315
+ }
316
+ buildRowsObject(columns, records) {
317
+ return {
318
+ row: records.map(rawRecord => {
319
+ const record = {};
320
+ columns.forEach((column, index) => record["c" + (index + 1)] = { $: this.formatValue(rawRecord, column) });
321
+ return record;
322
+ })
323
+ };
324
+ }
325
+ formatValue(record, column) {
326
+ if (this._provider.formatValue != undefined) {
327
+ return this._provider.formatValue(record, column);
328
+ }
329
+ return record[column.id] || "";
330
+ }
331
+ }
332
+ const TYPE_MAP = {
333
+ [UserInterface.DATE]: { type: "D", align: "center" },
334
+ [UserInterface.DATETIME]: { type: "H", align: "center" },
335
+ [UserInterface.TIME]: { type: "I", align: "right" },
336
+ [UserInterface.ELAPSEDTIME]: { type: "I", align: "right" },
337
+ [UserInterface.DECIMALNUMBER]: { type: "F", align: "right" },
338
+ [UserInterface.INTEGERNUMBER]: { type: "I", align: "right" },
339
+ [UserInterface.SEARCH]: { type: "S", align: "right" }
340
+ };
341
+
212
342
  const snkDataExporterCss = ".sc-snk-data-exporter-h{display:flex;width:fit-content;height:fit-content}.snk-data-exporter.sc-snk-data-exporter{display:flex;width:fit-content;height:fit-content}.snk-data-exporter__dropdown.sc-snk-data-exporter{display:none}.snk-data-exporter__dropdown--show.sc-snk-data-exporter{display:flex;flex-direction:column;position:fixed}.snk-data-exporter__dropdown.sc-snk-data-exporter>ez-dropdown.sc-snk-data-exporter{position:relative}";
213
343
 
214
- const LIMIT_PER_EXPORT = 5000;
215
344
  const SnkDataExporter = class {
216
345
  constructor(hostRef) {
217
346
  registerInstance(this, hostRef);
218
347
  this._selectedNumber = 0;
219
348
  this._customPrefix = "$custom$";
220
- this._items = [];
221
- this._showDropdown = false;
222
349
  this._releasedToExport = [
223
350
  DataExporterOption.EXPORT_TO_PDF,
224
351
  DataExporterOption.EXPORT_TO_XLS,
@@ -228,6 +355,8 @@ const SnkDataExporter = class {
228
355
  DataExporterOption.EXPORT_PAGE_TO_PDF,
229
356
  DataExporterOption.EXPORT_PAGE_TO_XLS
230
357
  ];
358
+ this._items = [];
359
+ this._showDropdown = false;
231
360
  this.provider = null;
232
361
  this.messagesBuilder = undefined;
233
362
  }
@@ -298,33 +427,16 @@ const SnkDataExporter = class {
298
427
  if (this.provider == undefined || resolveProps == undefined || callbackResolver == undefined) {
299
428
  return;
300
429
  }
301
- const filters = this.provider.getFilters();
302
- const columns = await this.provider.getColumnsMetadata();
303
- const sort = this.provider.getOrders();
304
- const resourceURI = this.provider.getResourceURI();
305
- const selectedIDs = this.provider.getSelectedIDs();
306
- const option = resolveProps.exportOption;
307
- const currentPageOptions = [
308
- DataExporterOption.EXPORT_PAGE_TO_PDF,
309
- DataExporterOption.EXPORT_PAGE_TO_XLS
310
- ];
311
- delete resolveProps.exportOption;
312
- let params = Object.assign({ filters,
313
- columns,
314
- sort,
315
- resourceURI, selectedIDs: selectedIDs.slice(0, LIMIT_PER_EXPORT) }, resolveProps);
316
- if (currentPageOptions.includes(option) || resolveProps.type == "page") {
317
- const offset = this.provider.getOffset();
318
- const limit = this.provider.getLimit();
319
- params = Object.assign(Object.assign({}, params), { offset,
320
- limit, selectedIDs: [] });
321
- }
322
- else if (resolveProps.type == "all") {
323
- params = Object.assign(Object.assign({}, params), { offset: 0, limit: LIMIT_PER_EXPORT, selectedIDs: [] });
324
- }
325
- fetchDataExporter(params)
430
+ this.getExporterStrategy().executeExport(resolveProps)
326
431
  .then((result) => callbackResolver(result))
327
- .catch((exception) => ApplicationUtils.error(this.getMessage("snkDataExporter.message.exportError"), exception ? exception.statusMessage : this.getMessage("snkDataExporter.message.exportError")));
432
+ .catch((exception) => {
433
+ console.error(exception);
434
+ let { title, message, statusMessage } = exception || {};
435
+ ApplicationUtils.error(title || this.getMessage("snkDataExporter.message.exportError"), statusMessage || message || this.getMessage("snkDataExporter.message.unknownFailure"));
436
+ });
437
+ }
438
+ getExporterStrategy() {
439
+ return this.provider.getRecords == undefined ? new ServerSideExporterStrategy(this.provider) : new ClientSideExporterStrategy(this.provider);
328
440
  }
329
441
  getOptionKey(option) {
330
442
  return Object.keys(DataExporterOption)
@@ -333,7 +445,7 @@ const SnkDataExporter = class {
333
445
  });
334
446
  }
335
447
  dispatchExporter(option) {
336
- var _a;
448
+ var _a, _b, _c;
337
449
  const optionKey = this.getOptionKey(option);
338
450
  const fileType = (_a = DataExporterType[optionKey]) !== null && _a !== void 0 ? _a : DataExporterType.EXPORT_TO_PDF;
339
451
  const isDownload = DataExporterType[optionKey] === DataExporterType.EXPORT_TO_XLS;
@@ -342,7 +454,7 @@ const SnkDataExporter = class {
342
454
  fileName: this._appLabel,
343
455
  titleGrid: this._appLabel,
344
456
  exportOption: option,
345
- limit: LIMIT_PER_EXPORT
457
+ limit: (_c = (_b = this.provider) === null || _b === void 0 ? void 0 : _b.getExportLimit) === null || _c === void 0 ? void 0 : _c.call(_b)
346
458
  };
347
459
  this.resolveExporter(params, (response) => {
348
460
  fileViewer(Object.assign(Object.assign({}, response), { fileType,
@@ -350,7 +462,7 @@ const SnkDataExporter = class {
350
462
  });
351
463
  }
352
464
  async processExporter(evt) {
353
- var _a, _b, _c, _d;
465
+ var _a, _b, _c, _d, _e, _f, _g;
354
466
  const item = evt === null || evt === void 0 ? void 0 : evt.detail;
355
467
  const exportCurrentPageOptions = [DataExporterOption.EXPORT_PAGE_TO_PDF, DataExporterOption.EXPORT_PAGE_TO_XLS];
356
468
  const isCustomReport = (_a = item === null || item === void 0 ? void 0 : item.id) === null || _a === void 0 ? void 0 : _a.includes(this._customPrefix);
@@ -358,18 +470,19 @@ const SnkDataExporter = class {
358
470
  return;
359
471
  const selectedRecords = (_b = this.provider) === null || _b === void 0 ? void 0 : _b.getSelectedIDs();
360
472
  const totalRecords = (_c = this.provider) === null || _c === void 0 ? void 0 : _c.getTotalRecords();
361
- const totalPerPage = (_d = this.provider) === null || _d === void 0 ? void 0 : _d.getLimit();
473
+ const totalPerPage = (_e = (_d = this.provider) === null || _d === void 0 ? void 0 : _d.getPageSize) === null || _e === void 0 ? void 0 : _e.call(_d);
474
+ const exportLimit = (_g = (_f = this.provider) === null || _f === void 0 ? void 0 : _f.getExportLimit) === null || _g === void 0 ? void 0 : _g.call(_f);
362
475
  let limitExceeded = false;
363
- if ((exportCurrentPageOptions.includes(item === null || item === void 0 ? void 0 : item.id) && totalPerPage <= LIMIT_PER_EXPORT) || isCustomReport) {
476
+ if ((exportCurrentPageOptions.includes(item === null || item === void 0 ? void 0 : item.id) && totalPerPage <= exportLimit) || isCustomReport) {
364
477
  limitExceeded = false;
365
478
  }
366
479
  else if (selectedRecords === null || selectedRecords === void 0 ? void 0 : selectedRecords.length) {
367
- limitExceeded = selectedRecords.length > LIMIT_PER_EXPORT;
480
+ limitExceeded = selectedRecords.length > exportLimit;
368
481
  }
369
- else if (totalRecords > LIMIT_PER_EXPORT)
482
+ else if (totalRecords > exportLimit)
370
483
  limitExceeded = true;
371
484
  if (limitExceeded) {
372
- const formattedLimit = LIMIT_PER_EXPORT.toLocaleString('pt-BR', { minimumFractionDigits: 0 });
485
+ const formattedLimit = exportLimit.toLocaleString('pt-BR', { minimumFractionDigits: 0 });
373
486
  const limitModalMessages = {
374
487
  title: this.getMessage("snkDataExporter.limitExceeded.title"),
375
488
  description: `
@@ -394,7 +507,7 @@ const SnkDataExporter = class {
394
507
  this._showDropdown = false;
395
508
  return;
396
509
  }
397
- if (!this._releasedToExport.includes(item === null || item === void 0 ? void 0 : item.id)) {
510
+ if (!this.getFilteredReleasedToExport().includes(item === null || item === void 0 ? void 0 : item.id)) {
398
511
  return;
399
512
  }
400
513
  if (item.id === DataExporterOption.EXPORT_BY_EMAIL) {
@@ -405,9 +518,20 @@ const SnkDataExporter = class {
405
518
  }
406
519
  this._showDropdown = false;
407
520
  }
521
+ getFilteredReleasedToExport() {
522
+ var _a, _b;
523
+ if (this.provider == undefined) {
524
+ return this._releasedToExport;
525
+ }
526
+ const hiddenOptions = (_b = (_a = this.provider).getHiddenOptions) === null || _b === void 0 ? void 0 : _b.call(_a);
527
+ if (hiddenOptions == undefined) {
528
+ return this._releasedToExport;
529
+ }
530
+ return this._releasedToExport.filter(option => !hiddenOptions.includes(option));
531
+ }
408
532
  loadItems() {
409
533
  const items = [];
410
- this._releasedToExport
534
+ this.getFilteredReleasedToExport()
411
535
  .forEach((option) => {
412
536
  var _a;
413
537
  (_a = this._itemBuilder) === null || _a === void 0 ? void 0 : _a.setExportOption(option, items);
@@ -415,8 +539,8 @@ const SnkDataExporter = class {
415
539
  this.loadPersonalizedItems(items);
416
540
  }
417
541
  async loadPersonalizedItems(items) {
418
- var _a;
419
- const recordID = (_a = this.provider) === null || _a === void 0 ? void 0 : _a.getRecordID();
542
+ var _a, _b;
543
+ const recordID = (_b = (_a = this.provider) === null || _a === void 0 ? void 0 : _a.getRecordID) === null || _b === void 0 ? void 0 : _b.call(_a);
420
544
  if (recordID == undefined) {
421
545
  this._items = items;
422
546
  return;
@@ -432,18 +556,18 @@ const SnkDataExporter = class {
432
556
  this._items = items;
433
557
  }
434
558
  openPersonalizedReports(option) {
435
- var _a;
559
+ var _a, _b;
436
560
  const pkObject = [];
437
561
  const appId = (option === null || option === void 0 ? void 0 : option.replace(this._customPrefix, "")) || "";
438
- (_a = this.provider) === null || _a === void 0 ? void 0 : _a.getSelectedIDs().forEach(({ name, type, value }, index) => {
439
- const fields = [];
562
+ (_b = (_a = this.provider) === null || _a === void 0 ? void 0 : _a.getSelectedIDs) === null || _b === void 0 ? void 0 : _b.call(_a).forEach(({ name, type, value }, index) => {
563
+ const fields = {};
440
564
  fields['fields'] = [];
441
565
  // Se for o primeiro elemento, adiciona essa primeira PK
442
566
  if (index === 0) {
443
567
  pkObject[`PK_${name}`] = { type: this.parseDataType(type), value };
444
568
  pkObject['pks'] = [];
445
569
  }
446
- const dataFields = { nome: name, tipo: type, valor: value };
570
+ const dataFields = { nome: `PK_${name}`, tipo: this.parseDataType(type), valor: value };
447
571
  fields['fields'].push(dataFields);
448
572
  pkObject['pks'].push(fields);
449
573
  });
@@ -460,8 +584,8 @@ const SnkDataExporter = class {
460
584
  }
461
585
  }
462
586
  loadDropdown() {
463
- var _a, _b;
464
- this._selectedNumber = ((_b = (_a = this.provider) === null || _a === void 0 ? void 0 : _a.getSelectedIDs()) === null || _b === void 0 ? void 0 : _b.length) || 0;
587
+ var _a;
588
+ this._selectedNumber = ((_a = this.provider) === null || _a === void 0 ? void 0 : _a.getSelectedNumber()) || 0;
465
589
  this._itemBuilder = new ItemBuilder(this.getMessage.bind(this), this._selectedNumber);
466
590
  this.loadItems();
467
591
  }