@sankhyalabs/sankhyablocks 8.16.0-dev.9 → 8.16.0-dev.91

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 (385) hide show
  1. package/dist/cjs/{IExporterProvider-597949f9.js → ClientSideExporterProvider-2f5f350c.js} +136 -24
  2. package/dist/cjs/{ConfigStorage-a343e418.js → ConfigStorage-d024aec8.js} +2 -2
  3. package/dist/cjs/{DataFetcher-313debd8.js → DataFetcher-65879b2c.js} +216 -76
  4. package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
  5. package/dist/cjs/IFetchDataExporterParams-e78ec415.js +8 -0
  6. package/dist/cjs/{SnkFormConfigManager-166cbd1f.js → SnkFormConfigManager-c11d8468.js} +75 -17
  7. package/dist/cjs/{SnkMessageBuilder-897ffd08.js → SnkMessageBuilder-bae64d0d.js} +6 -2
  8. package/dist/cjs/{auth-fetcher-54f5ff9d.js → auth-fetcher-8480751c.js} +1 -1
  9. package/dist/cjs/{constants-35ddd366.js → constants-241934b3.js} +9 -0
  10. package/dist/cjs/{dataunit-fetcher-688d3f05.js → dataunit-fetcher-449d51a3.js} +214 -168
  11. package/dist/cjs/{field-search-f56aa7d6.js → field-search-68e34bf4.js} +5 -1
  12. package/dist/cjs/{form-config-fetcher-2dd00e5b.js → form-config-fetcher-90126e4c.js} +42 -2
  13. package/dist/cjs/{index-1dfc7a6e.js → index-e3e39724.js} +5 -0
  14. package/dist/cjs/index-f9e81701.js +16 -32
  15. package/dist/cjs/loader.cjs.js +1 -1
  16. package/dist/cjs/pesquisa-fetcher-5c583c93.js +365 -0
  17. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +156 -0
  18. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  19. package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_5.cjs.entry.js} +139 -43
  20. package/dist/cjs/snk-application.cjs.entry.js +301 -70
  21. package/dist/cjs/snk-attach.cjs.entry.js +49 -36
  22. package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +399 -13
  23. package/dist/cjs/snk-configurator.cjs.entry.js +2 -2
  24. package/dist/cjs/snk-crud.cjs.entry.js +26 -22
  25. package/dist/cjs/snk-data-exporter.cjs.entry.js +38 -29
  26. package/dist/cjs/{snk-data-unit-8fa7917a.js → snk-data-unit-bbd384bf.js} +55 -31
  27. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
  28. package/dist/cjs/snk-detail-view.cjs.entry.js +15 -15
  29. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  30. package/dist/cjs/snk-field-config.cjs.entry.js +1 -1
  31. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1437 -0
  32. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  33. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  34. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  35. package/dist/cjs/snk-filter-number.cjs.entry.js +1 -1
  36. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -1
  37. package/dist/cjs/snk-grid.cjs.entry.js +96 -27
  38. package/dist/cjs/{snk-guides-viewer-bdc41281.js → snk-guides-viewer-5396062f.js} +32 -16
  39. package/dist/cjs/snk-guides-viewer.cjs.entry.js +11 -11
  40. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +4 -4
  41. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  42. package/dist/cjs/snk-pesquisa.cjs.entry.js +111 -31
  43. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  44. package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
  45. package/dist/cjs/snk-simple-crud.cjs.entry.js +115 -112
  46. package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
  47. package/dist/cjs/snk-taskbar.cjs.entry.js +72 -40
  48. package/dist/cjs/{taskbar-elements-9ad1f9c0.js → taskbar-elements-7e19882d.js} +1 -1
  49. package/dist/collection/collection-manifest.json +14 -31
  50. package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
  51. package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
  52. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
  53. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
  54. package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
  55. package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
  56. package/dist/collection/components/snk-application/snk-application.css +36 -0
  57. package/dist/collection/components/snk-application/snk-application.js +323 -65
  58. package/dist/collection/components/snk-attach/snk-attach.js +25 -16
  59. package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
  60. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +2 -5
  61. package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
  62. package/dist/collection/components/snk-crud/snk-crud.js +147 -14
  63. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +3 -3
  64. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
  65. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +72 -6
  66. package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
  67. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -8
  68. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
  69. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +1 -1
  70. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +18 -6
  71. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
  72. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +10 -9
  73. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
  74. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
  75. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  76. package/dist/collection/components/snk-data-unit/snk-data-unit.js +53 -29
  77. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +3 -3
  78. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
  79. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
  80. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
  81. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
  82. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
  83. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
  84. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
  85. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +9 -4
  86. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
  87. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +3 -1
  88. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +2 -6
  89. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +119 -29
  90. package/dist/collection/components/snk-form/snk-form.js +2 -2
  91. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +73 -15
  92. package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
  93. package/dist/collection/components/snk-form-config/snk-form-config.js +49 -8
  94. package/dist/collection/components/snk-grid/snk-grid.css +8 -0
  95. package/dist/collection/components/snk-grid/snk-grid.js +199 -13
  96. package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
  97. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
  98. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
  99. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
  100. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
  101. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
  102. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
  103. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +174 -32
  104. package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
  105. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
  106. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
  107. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +180 -34
  108. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
  109. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
  110. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
  111. package/dist/collection/components/snk-taskbar/snk-taskbar.js +112 -38
  112. package/dist/collection/lib/@types/index.js +5 -0
  113. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +3 -3
  114. package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -103
  115. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -32
  116. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +29 -21
  117. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  118. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  119. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  120. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  121. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +17 -9
  122. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
  123. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +45 -5
  124. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  125. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +107 -7
  126. package/dist/collection/lib/index.js +1 -0
  127. package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
  128. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  129. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  130. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  131. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  132. package/dist/collection/lib/utils/constants.js +9 -0
  133. package/dist/collection/sw.js +46 -0
  134. package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +136 -24
  135. package/dist/components/DataFetcher.js +217 -77
  136. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  137. package/dist/components/ISave.js +367 -1
  138. package/dist/components/SnkFormConfigManager.js +73 -15
  139. package/dist/components/SnkMessageBuilder.js +6 -2
  140. package/dist/components/constants.js +10 -1
  141. package/dist/components/dataunit-fetcher.js +232 -183
  142. package/dist/components/form-config-fetcher.js +41 -1
  143. package/dist/components/index.d.ts +3 -0
  144. package/dist/components/index.js +3 -0
  145. package/dist/components/pesquisa-grid.d.ts +11 -0
  146. package/dist/components/pesquisa-grid.js +6 -0
  147. package/dist/components/pesquisa-grid2.js +102 -0
  148. package/dist/components/pesquisa-tree.d.ts +11 -0
  149. package/dist/components/pesquisa-tree.js +6 -0
  150. package/dist/components/pesquisa-tree2.js +91 -0
  151. package/dist/components/snk-actions-button2.js +44 -40
  152. package/dist/components/snk-application2.js +320 -69
  153. package/dist/components/snk-attach2.js +55 -61
  154. package/dist/components/snk-config-options2.js +1 -1
  155. package/dist/components/snk-configurator2.js +1 -1
  156. package/dist/components/snk-crud.js +86 -71
  157. package/dist/components/snk-data-exporter2.js +37 -23
  158. package/dist/components/snk-data-unit2.js +56 -69
  159. package/dist/components/snk-detail-view2.js +115 -106
  160. package/dist/components/snk-exporter-email-sender2.js +1 -1
  161. package/dist/components/snk-filter-bar2.js +68 -34
  162. package/dist/components/snk-filter-binary-select.js +1 -1
  163. package/dist/components/snk-filter-checkbox-list.js +1 -1
  164. package/dist/components/snk-filter-item2.js +9 -4
  165. package/dist/components/snk-filter-modal.js +4 -2
  166. package/dist/components/snk-filter-number.js +1 -1
  167. package/dist/components/snk-filter-text.js +2 -1
  168. package/dist/components/snk-form-config2.js +35 -10
  169. package/dist/components/snk-form.js +2 -2
  170. package/dist/components/snk-grid-config2.js +1 -1
  171. package/dist/components/snk-grid2.js +92 -18
  172. package/dist/components/snk-personalized-filter-editor.js +4 -4
  173. package/dist/components/snk-pesquisa2.js +125 -33
  174. package/dist/components/snk-print-selector.js +1 -1
  175. package/dist/components/snk-simple-bar2.js +1 -1
  176. package/dist/components/snk-simple-crud2.js +107 -120
  177. package/dist/components/snk-simple-form-config.d.ts +11 -0
  178. package/dist/components/snk-simple-form-config.js +6 -0
  179. package/dist/components/snk-simple-form-config2.js +121 -0
  180. package/dist/components/snk-tab-config2.js +1 -1
  181. package/dist/components/snk-taskbar2.js +72 -40
  182. package/dist/components/teste-pesquisa.js +13 -1
  183. package/dist/esm/{IExporterProvider-63a188b6.js → ClientSideExporterProvider-3537805a.js} +136 -26
  184. package/dist/esm/{ConfigStorage-3806514e.js → ConfigStorage-373bb440.js} +2 -2
  185. package/dist/esm/{DataFetcher-c1baf61d.js → DataFetcher-5221b992.js} +217 -77
  186. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  187. package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
  188. package/dist/esm/{SnkFormConfigManager-31b24066.js → SnkFormConfigManager-5022f87f.js} +75 -17
  189. package/dist/esm/{SnkMessageBuilder-571462fb.js → SnkMessageBuilder-6fff4a4c.js} +6 -2
  190. package/dist/esm/{auth-fetcher-039abba3.js → auth-fetcher-e32fe8a4.js} +1 -1
  191. package/dist/esm/{constants-8457af36.js → constants-75abb876.js} +10 -1
  192. package/dist/esm/{dataunit-fetcher-264191b2.js → dataunit-fetcher-91b094f2.js} +216 -167
  193. package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
  194. package/dist/esm/{form-config-fetcher-30fb808f.js → form-config-fetcher-126e2471.js} +42 -2
  195. package/dist/esm/index-a7d3d3f1.js +16 -32
  196. package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
  197. package/dist/esm/loader.js +1 -1
  198. package/dist/esm/pesquisa-fetcher-4284f2a3.js +362 -0
  199. package/dist/esm/pesquisa-grid_2.entry.js +151 -0
  200. package/dist/esm/sankhyablocks.js +1 -1
  201. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_5.entry.js} +140 -45
  202. package/dist/esm/snk-application.entry.js +303 -72
  203. package/dist/esm/snk-attach.entry.js +50 -37
  204. package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +399 -15
  205. package/dist/esm/snk-configurator.entry.js +2 -2
  206. package/dist/esm/snk-crud.entry.js +26 -22
  207. package/dist/esm/snk-data-exporter.entry.js +38 -29
  208. package/dist/esm/{snk-data-unit-f5cbe64b.js → snk-data-unit-b03bb5cf.js} +55 -31
  209. package/dist/esm/snk-data-unit.entry.js +5 -5
  210. package/dist/esm/snk-detail-view.entry.js +15 -15
  211. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  212. package/dist/esm/snk-field-config.entry.js +1 -1
  213. package/dist/esm/snk-filter-bar_4.entry.js +1430 -0
  214. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  215. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  216. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  217. package/dist/esm/snk-filter-number.entry.js +1 -1
  218. package/dist/esm/snk-filter-text.entry.js +2 -1
  219. package/dist/esm/snk-grid.entry.js +91 -22
  220. package/dist/esm/{snk-guides-viewer-dda0fede.js → snk-guides-viewer-749d027c.js} +32 -16
  221. package/dist/esm/snk-guides-viewer.entry.js +11 -11
  222. package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
  223. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  224. package/dist/esm/snk-pesquisa.entry.js +111 -31
  225. package/dist/esm/snk-print-selector.entry.js +1 -1
  226. package/dist/esm/snk-simple-bar.entry.js +1 -1
  227. package/dist/esm/snk-simple-crud.entry.js +101 -98
  228. package/dist/esm/snk-tab-config.entry.js +1 -1
  229. package/dist/esm/snk-taskbar.entry.js +73 -41
  230. package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-d2353c64.js} +1 -1
  231. package/dist/sankhyablocks/p-0ce56d43.entry.js +1 -0
  232. package/dist/sankhyablocks/p-0f3698af.js +1 -0
  233. package/dist/sankhyablocks/p-13391b3d.entry.js +1 -0
  234. package/dist/sankhyablocks/p-1435701f.js +26 -0
  235. package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
  236. package/dist/sankhyablocks/p-17425c72.js +1 -0
  237. package/dist/sankhyablocks/{p-52920496.js → p-19dc71e9.js} +1 -1
  238. package/dist/sankhyablocks/{p-47db7e88.entry.js → p-1cf39cfd.entry.js} +1 -1
  239. package/dist/sankhyablocks/{p-b0ef4383.js → p-1d19a5b0.js} +1 -1
  240. package/dist/sankhyablocks/p-23736d75.js +1 -0
  241. package/dist/sankhyablocks/p-23b47a92.js +1 -0
  242. package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-23cd6abf.entry.js} +1 -1
  243. package/dist/sankhyablocks/{p-95df461f.entry.js → p-2953c481.entry.js} +1 -1
  244. package/dist/sankhyablocks/p-3653374d.js +60 -0
  245. package/dist/sankhyablocks/p-389ba782.entry.js +1 -0
  246. package/dist/sankhyablocks/p-3ba431c9.js +1 -0
  247. package/dist/sankhyablocks/{p-7e7a7473.js → p-3fc82614.js} +1 -1
  248. package/dist/sankhyablocks/p-41c3bee5.js +6 -0
  249. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
  250. package/dist/sankhyablocks/p-44efbeed.entry.js +1 -0
  251. package/dist/sankhyablocks/p-47178038.entry.js +1 -0
  252. package/dist/sankhyablocks/p-4be6e0e7.entry.js +1 -0
  253. package/dist/sankhyablocks/{p-7663f597.entry.js → p-4c9adf1c.entry.js} +1 -1
  254. package/dist/sankhyablocks/p-4d87cd45.entry.js +1 -0
  255. package/dist/sankhyablocks/p-4fa79d68.entry.js +1 -0
  256. package/dist/sankhyablocks/p-5dd7f4c7.js +1 -0
  257. package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
  258. package/dist/sankhyablocks/p-6234bda8.entry.js +1 -0
  259. package/dist/sankhyablocks/p-647f9830.entry.js +11 -0
  260. package/dist/sankhyablocks/p-79f823f3.entry.js +1 -0
  261. package/dist/sankhyablocks/p-7b87d1a8.js +1 -0
  262. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  263. package/dist/sankhyablocks/{p-2c68b3ae.entry.js → p-82ee6dc3.entry.js} +1 -1
  264. package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
  265. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
  266. package/dist/sankhyablocks/p-8f3f2306.js +1 -0
  267. package/dist/sankhyablocks/p-a962a3e4.entry.js +1 -0
  268. package/dist/sankhyablocks/p-ad5e4f9d.entry.js +1 -0
  269. package/dist/sankhyablocks/p-b2de1bcc.entry.js +1 -0
  270. package/dist/sankhyablocks/p-c021a3a9.entry.js +1 -0
  271. package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
  272. package/dist/sankhyablocks/p-ca316523.entry.js +1 -0
  273. package/dist/sankhyablocks/p-d62228fb.js +1 -0
  274. package/dist/sankhyablocks/p-ee53b000.entry.js +1 -0
  275. package/dist/sankhyablocks/{p-913a9979.js → p-f0b9303b.js} +1 -1
  276. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  277. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  278. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  279. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  280. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  281. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  282. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  283. package/dist/types/components/snk-application/snk-application.d.ts +38 -14
  284. package/dist/types/components/snk-attach/snk-attach.d.ts +1 -0
  285. package/dist/types/components/snk-crud/snk-crud.d.ts +26 -0
  286. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +15 -0
  287. package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
  288. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  289. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +2 -1
  290. package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
  291. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
  292. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  293. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  294. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +2 -0
  295. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  296. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  297. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
  298. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +7 -2
  299. package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
  300. package/dist/types/components/snk-grid/snk-grid.d.ts +33 -0
  301. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  302. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  303. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  304. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +35 -1
  305. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +27 -3
  306. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  307. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  308. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +11 -0
  309. package/dist/types/components.d.ts +407 -15
  310. package/dist/types/lib/@types/index.d.ts +4 -0
  311. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
  312. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
  313. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  314. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  315. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  316. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  317. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  318. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  319. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  320. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  321. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
  322. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +8 -2
  323. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  324. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +17 -1
  325. package/dist/types/lib/index.d.ts +1 -0
  326. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  327. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  328. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  329. package/dist/types/lib/utils/constants.d.ts +7 -0
  330. package/package.json +4 -3
  331. package/react/components.d.ts +3 -0
  332. package/react/components.js +3 -0
  333. package/react/components.js.map +1 -1
  334. package/dist/cjs/pesquisa-fetcher-680e198f.js +0 -166
  335. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  336. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  337. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  338. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  339. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  340. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  341. package/dist/components/pesquisa-fetcher.js +0 -164
  342. package/dist/esm/pesquisa-fetcher-03c8f919.js +0 -164
  343. package/dist/esm/snk-config-options.entry.js +0 -235
  344. package/dist/esm/snk-filter-bar.entry.js +0 -710
  345. package/dist/esm/snk-filter-item.entry.js +0 -308
  346. package/dist/esm/snk-filter-list.entry.js +0 -148
  347. package/dist/esm/snk-filter-modal.entry.js +0 -245
  348. package/dist/esm/snk-form.entry.js +0 -139
  349. package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
  350. package/dist/sankhyablocks/p-17def7cd.js +0 -1
  351. package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
  352. package/dist/sankhyablocks/p-2a408684.js +0 -1
  353. package/dist/sankhyablocks/p-30cf616e.js +0 -1
  354. package/dist/sankhyablocks/p-3a212712.js +0 -1
  355. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  356. package/dist/sankhyablocks/p-450c60e4.entry.js +0 -1
  357. package/dist/sankhyablocks/p-4e5e1313.entry.js +0 -1
  358. package/dist/sankhyablocks/p-62ba211a.entry.js +0 -1
  359. package/dist/sankhyablocks/p-6bb2f3e9.entry.js +0 -1
  360. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  361. package/dist/sankhyablocks/p-7505da04.entry.js +0 -1
  362. package/dist/sankhyablocks/p-75e674ed.entry.js +0 -1
  363. package/dist/sankhyablocks/p-7619bdb1.entry.js +0 -11
  364. package/dist/sankhyablocks/p-7a85fd49.entry.js +0 -1
  365. package/dist/sankhyablocks/p-7ef9c55c.js +0 -1
  366. package/dist/sankhyablocks/p-80042dc6.entry.js +0 -1
  367. package/dist/sankhyablocks/p-871aa14e.entry.js +0 -1
  368. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  369. package/dist/sankhyablocks/p-8c59edd7.entry.js +0 -1
  370. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  371. package/dist/sankhyablocks/p-9863d682.js +0 -1
  372. package/dist/sankhyablocks/p-af8efd95.js +0 -6
  373. package/dist/sankhyablocks/p-b05d8893.entry.js +0 -1
  374. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  375. package/dist/sankhyablocks/p-c2495304.js +0 -1
  376. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  377. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  378. package/dist/sankhyablocks/p-d6e26ea8.entry.js +0 -1
  379. package/dist/sankhyablocks/p-dc7c9047.js +0 -1
  380. package/dist/sankhyablocks/p-df5451c7.js +0 -26
  381. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  382. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  383. package/dist/sankhyablocks/p-fa4d8cb4.js +0 -1
  384. package/dist/sankhyablocks/p-fe79f83a.js +0 -60
  385. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const core = require('@sankhyalabs/core');
4
- const DataFetcher = require('./DataFetcher-313debd8.js');
4
+ const DataFetcher = require('./DataFetcher-65879b2c.js');
5
5
  const constants = require('@sankhyalabs/ezui/dist/collection/utils/constants');
6
6
  const UnitMetadata = require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
7
7
  const utils = require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils');
@@ -15,6 +15,9 @@ const SortingUtils__default = /*#__PURE__*/_interopDefaultLegacy(SortingUtils);
15
15
  class ArrayRepository {
16
16
  constructor(equalsFunction) {
17
17
  this._list = [];
18
+ this._listCopy = [];
19
+ this._listLastUpdate = 0;
20
+ this._listCopyLastUpdate = 0;
18
21
  this._equalsFunction = equalsFunction;
19
22
  }
20
23
  async load(filterFunction, sortingFunction, offset, limit) {
@@ -53,13 +56,13 @@ class ArrayRepository {
53
56
  return Promise.resolve(new Map(processedItems.map(item => [item.key, item.value])));
54
57
  }
55
58
  async push(items) {
56
- this._list.push(...items);
59
+ this.updateList([...this._list, ...items]);
57
60
  }
58
61
  async clear() {
59
- this._list = [];
62
+ this.updateList([]);
60
63
  }
61
64
  async delete(items) {
62
- this._list = this._list.filter(item => {
65
+ const list = this._list.filter(item => {
63
66
  for (const removed of items) {
64
67
  if (this._equalsFunction(item, removed)) {
65
68
  return false;
@@ -67,20 +70,23 @@ class ArrayRepository {
67
70
  }
68
71
  return true;
69
72
  });
73
+ this.updateList(list);
70
74
  }
71
75
  async update(items) {
72
- this._list = this._list.map(existingItem => {
76
+ const list = this._list.map(existingItem => {
73
77
  const newItem = items.find(newItem => this._equalsFunction(existingItem, newItem));
74
78
  return newItem == undefined ? existingItem : newItem;
75
79
  });
80
+ this.updateList(list);
76
81
  }
77
82
  async insert(itemReference, items) {
78
83
  const itemPosition = this._list.indexOf(itemReference);
79
84
  if (itemPosition == -1) {
80
- this._list.push(...items);
85
+ this.push(items);
81
86
  return;
82
87
  }
83
- this._list = this._list.slice(0, itemPosition).concat(items).concat(this._list.slice(itemPosition));
88
+ const list = this._list.slice(0, itemPosition).concat(items).concat(this._list.slice(itemPosition));
89
+ this.updateList(list);
84
90
  }
85
91
  isOperating() {
86
92
  return true;
@@ -92,7 +98,15 @@ class ArrayRepository {
92
98
  return Promise.resolve(this._list.length);
93
99
  }
94
100
  getFromCache() {
95
- return core.ObjectUtils.copy(this._list);
101
+ if (this._listLastUpdate > this._listCopyLastUpdate) {
102
+ this._listCopyLastUpdate = this._listLastUpdate;
103
+ this._listCopy = core.ObjectUtils.copy(this._list);
104
+ }
105
+ return this._listCopy;
106
+ }
107
+ updateList(newList) {
108
+ this._list = newList;
109
+ this._listLastUpdate = Date.now();
96
110
  }
97
111
  }
98
112
 
@@ -230,159 +244,33 @@ class PreloadManager {
230
244
  PreloadManager._repositories = new Map();
231
245
  PreloadManager._loadingStatus = new Map();
232
246
 
233
- function applyFilter(records, dataUnit, filters) {
234
- const columnFilters = utils.ColumnFilterManager.getColumnFilters(filters, "");
235
- if (!(columnFilters === null || columnFilters === void 0 ? void 0 : columnFilters.size)) {
236
- return records;
237
- }
238
- const filterFunction = utils.ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values()));
239
- if (filterFunction == undefined) {
240
- return records;
241
- }
242
- return records.filter(filterFunction);
243
- }
244
- function applySorting(records, dataUnit, sorting) {
245
- if (sorting == undefined || sorting.length == 0) {
246
- return records;
247
- }
248
- const sortingFunction = PreloadManager.getSortingFunction(dataUnit, sorting);
249
- if (sortingFunction == undefined) {
250
- return records;
251
- }
252
- return records.sort(sortingFunction);
253
- }
254
- function buildPaginationInfo(records, offset = 0, limit = 0) {
255
- if (records === undefined) {
256
- return undefined;
257
- }
258
- const total = (records === null || records === void 0 ? void 0 : records.length) || 0;
259
- const lastRecord = Math.min(offset + limit, total);
260
- return {
261
- currentPage: limit === 0 ? 0 : Math.ceil(offset / limit),
262
- firstRecord: offset,
263
- lastRecord: lastRecord,
264
- total: total,
265
- hasMore: !!(total - lastRecord),
266
- };
267
- }
268
-
269
247
  class InMemoryLoader {
270
248
  constructor(metadata, records, config) {
271
- this.metadata = metadata;
272
- this.records = records;
273
- this._dataUnit = new core.DataUnit(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME);
274
- this._dataUnit.pageSize = 150;
275
- this._dataUnit.metadataLoader = () => this.metadaLoader();
276
- this._dataUnit.dataLoader = (dataUnit, request) => this.inMemoryLoader(dataUnit, request, this.getRecordsToLoad());
277
- this._dataUnit.saveLoader = (_dataUnit, changes) => this.saveLoader(_dataUnit, changes);
278
- this._dataUnit.removeLoader = (_dataUnit, recordIds) => this.removeLoader(_dataUnit, recordIds);
279
- this.dataUnit.loadMetadata().then(() => {
280
- if ((config === null || config === void 0 ? void 0 : config.autoLoad) !== false) {
281
- this.dataUnit.loadData();
282
- }
283
- });
284
- }
285
- getRecordsToLoad() {
286
- if (this._initialRecords == undefined && this.dataUnit.records.length > 0) {
287
- this._initialRecords = this.dataUnit.records;
288
- }
289
- const addedRecords = this.dataUnit.getAddedRecords();
290
- if (addedRecords) {
291
- return [...this._initialRecords, ...addedRecords];
292
- }
293
- return this._initialRecords;
249
+ this._dataUnitInMemoryLoader = new core.DataUnitInMemoryLoader(metadata, records, config);
294
250
  }
295
251
  get dataUnit() {
296
- return this._dataUnit;
252
+ return this._dataUnitInMemoryLoader.dataUnit;
297
253
  }
298
254
  get records() {
299
- return this.dataUnit.records;
300
- }
301
- static getConvertedValue(descriptor, strValue) {
302
- if (descriptor.dataType === core.DataType.BOOLEAN) {
303
- return strValue === "S";
304
- }
305
- if (descriptor.dataType === core.DataType.NUMBER) {
306
- return Number(strValue);
307
- }
308
- if (descriptor.dataType === core.DataType.DATE) {
309
- return core.DateUtils.strToDate(strValue, true);
310
- }
311
- if (descriptor.dataType === core.DataType.OBJECT) {
312
- return JSON.parse(strValue);
313
- }
314
- return strValue;
255
+ return this._dataUnitInMemoryLoader.records;
315
256
  }
316
257
  set records(records) {
317
- const columns = this._metadata ? new Map(this._metadata.fields.map(descriptor => [descriptor.name, descriptor])) : undefined;
318
- const newRecords = records === null || records === void 0 ? void 0 : records.map(record => {
319
- if (!record["__record__id__"]) {
320
- record["__record__id__"] = this.generateUniqueId();
321
- }
322
- if (columns != undefined) {
323
- for (const name in record) {
324
- const value = record[name];
325
- if (typeof value === "string" && columns.has(name)) {
326
- record[name] = InMemoryLoader.getConvertedValue(columns.get(name), value);
327
- }
328
- }
329
- }
330
- return record;
331
- });
332
- this._initialRecords = newRecords;
333
- if (this._dataUnit) {
334
- //Isso força o refresh internamente no datunit
335
- this._dataUnit.loadData();
336
- }
258
+ this._dataUnitInMemoryLoader.records = records;
337
259
  }
338
260
  get metadata() {
339
- return this._metadata;
261
+ return this._dataUnitInMemoryLoader.metadata;
340
262
  }
341
263
  set metadata(metadata) {
342
- this._metadata = metadata;
343
- if (this._dataUnit) {
344
- this._dataUnit.metadata = this._metadata;
345
- }
346
- }
347
- generateUniqueId() {
348
- return core.StringUtils.generateUUID();
349
- }
350
- inMemoryLoader(dataUnit, request, recordsIn) {
351
- let records = applyFilter(recordsIn, dataUnit, request.filters);
352
- records = applySorting(records, dataUnit, request.sort);
353
- return Promise.resolve({ records, paginationInfo: buildPaginationInfo(records, request.offset, request.limit) });
354
- }
355
- metadaLoader() {
356
- return Promise.resolve(this._metadata);
357
- }
358
- saveLoader(_dataUnit, changes) {
359
- return new Promise((resolve) => {
360
- let dataUnitRecords = [];
361
- changes.forEach(change => {
362
- let { record, updatingFields, operation } = change;
363
- const changedRecord = Object.assign(Object.assign({}, record), updatingFields);
364
- if (operation === core.ChangeOperation.INSERT ||
365
- operation === core.ChangeOperation.COPY) {
366
- changedRecord["__old__id__"] = record["__record__id__"];
367
- changedRecord["__record__id__"] = this.generateUniqueId();
368
- this.records.push(changedRecord);
369
- }
370
- else {
371
- const recordIndex = this.records.findIndex(r => r["__record__id__"] == changedRecord["__record__id__"]);
372
- this.records[recordIndex] = changedRecord;
373
- }
374
- dataUnitRecords.push(changedRecord);
375
- });
376
- resolve(dataUnitRecords);
377
- });
264
+ this._dataUnitInMemoryLoader.metadata = metadata;
378
265
  }
379
266
  removeLoader(_dataUnit, recordIds) {
380
- return new Promise((resolve) => {
381
- resolve(recordIds);
382
- });
267
+ return this._dataUnitInMemoryLoader.removeLoader(_dataUnit, recordIds);
268
+ }
269
+ static getConvertedValue(descriptor, strValue, dateFormat) {
270
+ return core.DataUnitInMemoryLoader.getConvertedValue(descriptor, strValue, dateFormat);
383
271
  }
384
272
  }
385
- InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = "InMemoryDataUnit";
273
+ InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = core.DataUnitInMemoryLoader.IN_MEMORY_DATA_UNIT_NAME;
386
274
 
387
275
  function getRecordValue(record, fieldName) {
388
276
  var _a, _b;
@@ -426,16 +314,25 @@ class DatasetStrategy {
426
314
  const serviceName = "DatasetSP.loadRecords";
427
315
  const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting, serverSideFilters);
428
316
  const params = loadingInfo.quiet ? { urlParams: { quietMode: "true" } } : undefined;
429
- const { result: responseRecords, pagerID: pagerId } = await DataFetcher.DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
317
+ const { result: responseRecords, pagerID: pagerId, askRowsLimit } = await DataFetcher.DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
430
318
  const records = this.processRecords(dataUnit, fields, responseRecords);
431
319
  const loadingInProgress = pagerId != undefined;
432
320
  const count = loadingInfo.count + records.length;
433
- const needReload = !loadingInProgress && localSorting.length > 0;
321
+ const isInsertingNewRecord = dataUnit.hasNewRecord();
322
+ const hasLocalSorting = localSorting.length > 0;
323
+ const needReload = !loadingInProgress && hasLocalSorting;
324
+ /**
325
+ * Caso precise recarregar dados, porém está no meio de uma inserção, os dados não devem recarregados instantaneamente,
326
+ * Mas sim, sinalizar que o dataUnit está aguardando para der recarregado.
327
+ */
328
+ if (needReload && isInsertingNewRecord) {
329
+ dataUnit.setWaitingToReload(true);
330
+ }
434
331
  return Promise.resolve({
435
332
  records,
436
333
  loadingInfo: Object.assign(Object.assign({}, loadingInfo), { pagerId,
437
- loadingInProgress, total: loadingInProgress ? undefined : count, count,
438
- needReload })
334
+ loadingInProgress, total: loadingInProgress ? undefined : count, count, needReload: needReload && !isInsertingNewRecord, askRowsLimit,
335
+ hasLocalSorting })
439
336
  });
440
337
  }
441
338
  catch (error) {
@@ -487,8 +384,7 @@ class DatasetStrategy {
487
384
  },
488
385
  }
489
386
  };
490
- const parsedRequestBody = JSON.stringify(requestBody);
491
- return parsedRequestBody;
387
+ return JSON.stringify(requestBody);
492
388
  }
493
389
  getFieldsList(dataUnit) {
494
390
  let fields = ["__record__id__", "__record__label__"];
@@ -615,7 +511,117 @@ class DatasetStrategy {
615
511
  }
616
512
  }
617
513
 
514
+ async function showAskCancelPaginationPopup() {
515
+ return new Promise((resolve) => {
516
+ const { checkboxContainer, checkbox } = buildCheckboxContainer();
517
+ const popup = builPopup(resolve, checkbox);
518
+ const contentContainer = buildContentContainer();
519
+ contentContainer.appendChild(buildMessage());
520
+ contentContainer.appendChild(checkboxContainer);
521
+ const actionsContainer = buildActionsContainer();
522
+ actionsContainer.appendChild(buildContinuePaginationBtn(popup, checkbox, resolve));
523
+ actionsContainer.appendChild(buildCancelPaginationBtn(popup, resolve));
524
+ contentContainer.appendChild(actionsContainer);
525
+ popup.appendChild(contentContainer);
526
+ document.body.appendChild(popup);
527
+ });
528
+ }
529
+ function buildCheckboxContainer() {
530
+ const checkboxContainer = document.createElement('div');
531
+ checkboxContainer.style.marginBottom = '14px';
532
+ checkboxContainer.style.display = 'flex';
533
+ checkboxContainer.style.alignItems = 'center';
534
+ const { checkbox, checkboxLabel } = buildCheckbox();
535
+ checkboxContainer.appendChild(checkbox);
536
+ checkboxContainer.appendChild(checkboxLabel);
537
+ return { checkboxContainer, checkbox };
538
+ }
539
+ function buildCheckbox() {
540
+ const checkbox = document.createElement('input');
541
+ checkbox.type = 'checkbox';
542
+ checkbox.id = 'loadAll';
543
+ const checkboxLabel = document.createElement('label');
544
+ checkboxLabel.htmlFor = 'loadAll';
545
+ checkboxLabel.textContent = 'Carregar tudo';
546
+ checkboxLabel.style.marginLeft = '5px';
547
+ return { checkbox, checkboxLabel };
548
+ }
549
+ function buildActionsContainer() {
550
+ const actionsContainer = document.createElement('div');
551
+ actionsContainer.style.display = 'flex';
552
+ actionsContainer.style.flexDirection = 'row';
553
+ actionsContainer.style.justifyContent = 'end';
554
+ actionsContainer.style.gap = '5px';
555
+ return actionsContainer;
556
+ }
557
+ function buildContentContainer() {
558
+ const contentContainer = document.createElement('div');
559
+ contentContainer.style.display = 'flex';
560
+ contentContainer.style.flexDirection = 'column';
561
+ contentContainer.style.fontFamily = 'var(--font-pattern, Roboto)';
562
+ contentContainer.style.fontSize = 'var(--text--medium)';
563
+ return contentContainer;
564
+ }
565
+ function buildMessage() {
566
+ const message = document.createElement('div');
567
+ const line1 = document.createElement('p');
568
+ const line2 = document.createElement('p');
569
+ const line3 = document.createElement('p');
570
+ line3.style.fontWeight = 'var(--text-weight--large, 600)';
571
+ line1.textContent = 'Uma quantidade de registros muito grande está sendo carregada.';
572
+ line2.textContent = 'Recomendamos que a paginação seja cancelada e que seja criado um filtro para os registros.';
573
+ line3.textContent = 'Deseja cancelar o carregamento?';
574
+ message.appendChild(line1);
575
+ message.appendChild(line2);
576
+ message.appendChild(line3);
577
+ return message;
578
+ }
579
+ function buildCancelPaginationBtn(popup, resolve) {
580
+ const cancelPaginationBtn = document.createElement('ez-button');
581
+ cancelPaginationBtn.label = 'Cancelar paginação';
582
+ cancelPaginationBtn.size = 'medium';
583
+ cancelPaginationBtn.classList.add('ez-button--primary');
584
+ cancelPaginationBtn.onclick = () => {
585
+ document.body.removeChild(popup);
586
+ resolve(CancelPaginationResponse.CANCEL);
587
+ };
588
+ return cancelPaginationBtn;
589
+ }
590
+ function buildContinuePaginationBtn(popup, checkBox, resolve) {
591
+ const continuePaginationBtn = document.createElement('ez-button');
592
+ continuePaginationBtn.label = 'Continuar';
593
+ continuePaginationBtn.size = 'medium';
594
+ continuePaginationBtn.onclick = () => {
595
+ document.body.removeChild(popup);
596
+ resolve(checkBox.checked ? CancelPaginationResponse.LOAD_ALL : CancelPaginationResponse.CONTINUE);
597
+ };
598
+ return continuePaginationBtn;
599
+ }
600
+ function builPopup(resolve, checkBox) {
601
+ const popup = document.createElement('ez-popup');
602
+ popup.opened = true;
603
+ popup.size = 'x-small';
604
+ popup.ezTitle = 'Aviso';
605
+ popup.heightMode = "auto";
606
+ popup.addEventListener('ezClosePopup', () => {
607
+ document.body.removeChild(popup);
608
+ resolve(checkBox.checked ? CancelPaginationResponse.LOAD_ALL : CancelPaginationResponse.CONTINUE);
609
+ }, { once: true });
610
+ popup.addEventListener('ezPopupAction', () => {
611
+ document.body.removeChild(popup);
612
+ resolve(CancelPaginationResponse.CANCEL);
613
+ }, { once: true });
614
+ return popup;
615
+ }
616
+ var CancelPaginationResponse;
617
+ (function (CancelPaginationResponse) {
618
+ CancelPaginationResponse["CANCEL"] = "CANCEL";
619
+ CancelPaginationResponse["CONTINUE"] = "CONTINUE";
620
+ CancelPaginationResponse["LOAD_ALL"] = "LOAD_ALL";
621
+ })(CancelPaginationResponse || (CancelPaginationResponse = {}));
622
+
618
623
  class DataUnitDataLoader {
624
+ constructor() { }
619
625
  static async debounce(dataUnit, callBack) {
620
626
  const duName = dataUnit.name;
621
627
  if (DataUnitDataLoader._debouncingTimeouts[duName]) {
@@ -661,25 +667,67 @@ class DataUnitDataLoader {
661
667
  }
662
668
  static async callLoader(dataUnit, request, requestLoadingInfo, dataLoader) {
663
669
  if (dataLoader == undefined) {
664
- //dataLoader = new DataUnitStrategy();
665
670
  dataLoader = new DatasetStrategy();
666
671
  }
667
672
  const result = await dataLoader.load(dataUnit, request, requestLoadingInfo);
668
- const { records, loadingInfo: responseLoadingInfo } = result;
669
- if (DataUnitDataLoader.isOldRequest(dataUnit, responseLoadingInfo)) {
673
+ const responseLoadingInfo = result.loadingInfo;
674
+ if (DataUnitDataLoader.isOldRequest(dataUnit, responseLoadingInfo))
670
675
  return Promise.resolve(undefined);
676
+ this.handleCache(dataLoader, responseLoadingInfo, dataUnit, result.records);
677
+ if (dataUnit.cancelPagination)
678
+ return this.handlePaginationCanceled(dataUnit, result);
679
+ //Não existem mais páginas a serem carregadas
680
+ if (this.canFinishPagination(dataUnit, responseLoadingInfo))
681
+ return Promise.resolve(result);
682
+ const newRequest = Object.assign(Object.assign({}, request), { offset: responseLoadingInfo.count });
683
+ let newLoadingInfo = this.buildNewLoadingInfo(responseLoadingInfo);
684
+ if (this.canProceedPagination(responseLoadingInfo))
685
+ return this.recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result);
686
+ const confirm = await showAskCancelPaginationPopup();
687
+ if (confirm === CancelPaginationResponse.CANCEL)
688
+ return this.handlePaginationCanceled(dataUnit, result);
689
+ if (confirm === CancelPaginationResponse.LOAD_ALL) {
690
+ newLoadingInfo = Object.assign(Object.assign({}, newLoadingInfo), { loadAllRecords: true });
671
691
  }
692
+ newLoadingInfo = Object.assign(Object.assign({}, newLoadingInfo), { lastRowLimitAsked: newLoadingInfo.count });
693
+ return this.recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result);
694
+ }
695
+ static buildNewLoadingInfo(responseLoadingInfo) {
696
+ let newLoadingInfo = Object.assign(Object.assign({}, responseLoadingInfo), { pageNumber: (responseLoadingInfo.pageNumber || 0) + 1, quiet: true });
697
+ return newLoadingInfo;
698
+ }
699
+ static handleCache(dataLoader, responseLoadingInfo, dataUnit, records) {
672
700
  const recreateCache = !dataLoader.canSlice() || responseLoadingInfo.count === 0;
673
701
  PreloadManager.cacheRecords(dataUnit, records, recreateCache, responseLoadingInfo.loadingInProgress);
674
- if (PreloadManager.isCacheEnabled(dataUnit) && responseLoadingInfo.loadingInProgress) {
675
- const newRequest = Object.assign(Object.assign({}, request), { offset: responseLoadingInfo.count });
676
- const newLoadingInfo = Object.assign(Object.assign({}, responseLoadingInfo), { pageNumber: (responseLoadingInfo.pageNumber || 0) + 1, quiet: true });
677
- this.callLoader(dataUnit, newRequest, newLoadingInfo, dataLoader)
678
- .then(result => DataUnitDataLoader.afterLoadingPage(dataUnit, result.loadingInfo))
679
- .catch(reason => console.error(reason));
680
- }
702
+ }
703
+ static recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result) {
704
+ this.callLoader(dataUnit, newRequest, newLoadingInfo, dataLoader)
705
+ .then(result => DataUnitDataLoader.afterLoadingPage(dataUnit, result.loadingInfo))
706
+ .catch(reason => console.error(reason));
681
707
  return Promise.resolve(result);
682
708
  }
709
+ static canFinishPagination(dataUnit, responseLoadingInfo) {
710
+ return !PreloadManager.isCacheEnabled(dataUnit) || !responseLoadingInfo.loadingInProgress;
711
+ }
712
+ static canProceedPagination(info) {
713
+ const { count, askRowsLimit, loadAllRecords, lastRowLimitAsked } = info;
714
+ if (loadAllRecords)
715
+ return true;
716
+ if (!count || !askRowsLimit)
717
+ return true;
718
+ const askRowLimitNumber = Number(askRowsLimit);
719
+ if (count < askRowLimitNumber)
720
+ return true;
721
+ const nextLimitToAsk = askRowLimitNumber + (lastRowLimitAsked ? lastRowLimitAsked : 0);
722
+ return count < nextLimitToAsk;
723
+ }
724
+ static handlePaginationCanceled(dataUnit, result) {
725
+ dataUnit.cancelPagination = false;
726
+ let loadingInfo = result.loadingInfo;
727
+ loadingInfo = Object.assign(Object.assign({}, loadingInfo), { total: loadingInfo.count, loadingInProgress: false, pagerId: undefined, needReload: loadingInfo.hasLocalSorting });
728
+ const loadDataResult = { records: result.records, loadingInfo };
729
+ return Promise.resolve(loadDataResult);
730
+ }
683
731
  static afterLoadingPage(dataUnit, loadingInfo) {
684
732
  PreloadManager.setLoadingStatus(dataUnit, loadingInfo.loadingInProgress);
685
733
  const dataUnitPagination = dataUnit.getPaginationInfo();
@@ -688,7 +736,7 @@ class DataUnitDataLoader {
688
736
  }
689
737
  const count = loadingInfo.count;
690
738
  if (loadingInfo.loadingInProgress) {
691
- dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count }));
739
+ dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count, loadingInProgress: true }));
692
740
  return;
693
741
  }
694
742
  if (loadingInfo.needReload) {
@@ -696,7 +744,7 @@ class DataUnitDataLoader {
696
744
  dataUnit.gotoPage(0);
697
745
  return;
698
746
  }
699
- dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count }));
747
+ dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count, loadingInProgress: false }));
700
748
  }
701
749
  static registryLoading(dataUnit, loadingInfo) {
702
750
  if (loadingInfo == undefined) {
@@ -719,7 +767,7 @@ class DataUnitDataLoader {
719
767
  // controle de paginação voltar pra primeira página.
720
768
  offset = 0;
721
769
  }
722
- const { total, count, loadingInProgress } = loadingInfo;
770
+ const { total, count, loadingInProgress, askRowsLimit } = loadingInfo;
723
771
  const firstRecord = (count === 0 || pageSize === 0) ? 0 : offset + 1;
724
772
  const lastRecord = offset + Math.min(pageSize, limit);
725
773
  return {
@@ -728,7 +776,8 @@ class DataUnitDataLoader {
728
776
  lastRecord,
729
777
  firstRecord,
730
778
  currentPage: offset / limit,
731
- hasMore: lastRecord < count || loadingInProgress
779
+ hasMore: lastRecord < count || loadingInProgress,
780
+ askRowsLimit
732
781
  };
733
782
  }
734
783
  }
@@ -1062,7 +1111,4 @@ exports.DataUnitFetcher = DataUnitFetcher;
1062
1111
  exports.DatasetStrategy = DatasetStrategy;
1063
1112
  exports.InMemoryLoader = InMemoryLoader;
1064
1113
  exports.PreloadManager = PreloadManager;
1065
- exports.applyFilter = applyFilter;
1066
- exports.applySorting = applySorting;
1067
- exports.buildPaginationInfo = buildPaginationInfo;
1068
1114
  exports.getRecordValue = getRecordValue;
@@ -33,12 +33,16 @@ class TaskbarProcessor {
33
33
  });
34
34
  }
35
35
  getButtonsArray(taskbarId, taskbarManager, dataState) {
36
- const defaults = this._defaultButtons[taskbarId];
36
+ const defaults = this.getButtonsFromKey(taskbarId);
37
37
  if (taskbarManager) {
38
38
  return taskbarManager.getButtons(taskbarId, dataState, [...defaults]);
39
39
  }
40
40
  return defaults;
41
41
  }
42
+ getButtonsFromKey(taskbarId) {
43
+ const btnsValue = this._defaultButtons[taskbarId];
44
+ return typeof btnsValue === 'function' ? btnsValue() : btnsValue;
45
+ }
42
46
  isEnabled(taskbarId, taskbarManager, buttonName, dataState, disabled) {
43
47
  const originalValue = disabled.includes(buttonName) ? false : true;
44
48
  if (taskbarManager && taskbarManager.isEnabled) {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const DataFetcher = require('./DataFetcher-313debd8.js');
3
+ const DataFetcher = require('./DataFetcher-65879b2c.js');
4
4
  const core = require('@sankhyalabs/core');
5
5
 
6
6
  class ResourceFetcher {
@@ -219,7 +219,10 @@ class FormConfigFetcher extends ResourceFetcher {
219
219
  query: this.queryConfig.get("fetchDefaultConfig"),
220
220
  })
221
221
  .then((result) => {
222
- resolve(core.ObjectUtils.stringToObject((result === null || result === void 0 ? void 0 : result.resource) || ''));
222
+ if (!(result === null || result === void 0 ? void 0 : result.resource)) {
223
+ resolve(null);
224
+ }
225
+ resolve(core.ObjectUtils.stringToObject(result === null || result === void 0 ? void 0 : result.resource));
223
226
  })
224
227
  .catch((error) => {
225
228
  reject(error);
@@ -239,6 +242,43 @@ class FormConfigFetcher extends ResourceFetcher {
239
242
  return undefined;
240
243
  return this.buildLegacyConfigurableForm(response);
241
244
  }
245
+ async fetchSimpleFormConfig(configName) {
246
+ const payload = { 'requestBody': { 'formConfig': { 'configName': configName } } };
247
+ const response = await DataFetcher.DataFetcher.get().callServiceBroker('FormConfig.getFormConfig', JSON.stringify(payload));
248
+ return this.processConfig(response);
249
+ }
250
+ async saveSimpleFormConfig(configName, fieldList) {
251
+ const payload = this.buildSaveSimpleFormConfigPayload(configName, fieldList);
252
+ const response = await DataFetcher.DataFetcher.get().callServiceBroker('FormConfig.saveFormConfig', JSON.stringify(payload));
253
+ this.processConfig(response);
254
+ }
255
+ processConfig(response) {
256
+ if (core.ObjectUtils.isEmpty(response))
257
+ return [];
258
+ const fields = this.getResponseAsArray(response);
259
+ return fields.map(field => field.name);
260
+ }
261
+ getResponseAsArray(response) {
262
+ var _a, _b, _c;
263
+ const rawFields = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.formConfig) === null || _a === void 0 ? void 0 : _a.layout) === null || _b === void 0 ? void 0 : _b.field) !== null && _c !== void 0 ? _c : [];
264
+ return Array.isArray(rawFields) ? rawFields : [rawFields];
265
+ }
266
+ buildSaveSimpleFormConfigPayload(configName, fieldNameList) {
267
+ const fieldList = fieldNameList.map(fieldName => { return { name: fieldName }; });
268
+ return {
269
+ formConfig: {
270
+ configName,
271
+ layout: {
272
+ field: fieldList,
273
+ },
274
+ metadata: { field: [] },
275
+ }
276
+ };
277
+ }
278
+ async restoreFormConfig(configName) {
279
+ const payload = { 'requestBody': { 'formConfig': { 'configName': configName } } };
280
+ await DataFetcher.DataFetcher.get().callServiceBroker('FormConfig.restoreFormConfig', JSON.stringify(payload));
281
+ }
242
282
  buildLegacyConfigurableForm(config) {
243
283
  var _a, _b, _c;
244
284
  const rawFields = (_c = (_b = (_a = config === null || config === void 0 ? void 0 : config.formConfig) === null || _a === void 0 ? void 0 : _a.layout) === null || _b === void 0 ? void 0 : _b.field) !== null && _c !== void 0 ? _c : [];
@@ -37,3 +37,8 @@ exports.DataExporterType = void 0;
37
37
  DataExporterType["EXPORT_PDF_TO_EMAIL"] = "PDF";
38
38
  DataExporterType["EXPORT_XLS_TO_EMAIL"] = "XLS";
39
39
  })(exports.DataExporterType || (exports.DataExporterType = {}));
40
+ exports.ExporterStrategy = void 0;
41
+ (function (ExporterStrategy) {
42
+ ExporterStrategy["SERVER_SIDE"] = "ServerSideExporterStrategy";
43
+ ExporterStrategy["CLIENT_SIDE"] = "ClientSideExporterStrategy";
44
+ })(exports.ExporterStrategy || (exports.ExporterStrategy = {}));