@sankhyalabs/sankhyablocks 8.16.0-dev.11 → 8.16.0-dev.111

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 (456) hide show
  1. package/dist/cjs/ClientSideExporterProvider-a2753c93.js +378 -0
  2. package/dist/cjs/{ConfigStorage-e49214c6.js → ConfigStorage-df09fb78.js} +2 -2
  3. package/dist/cjs/{DataFetcher-77729a93.js → DataFetcher-1afdb18e.js} +231 -84
  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/ISave-c76e2c51.js +397 -0
  7. package/dist/cjs/{SnkFormConfigManager-beebf47a.js → SnkFormConfigManager-45a8d7b7.js} +75 -17
  8. package/dist/cjs/{SnkMessageBuilder-897ffd08.js → SnkMessageBuilder-9deeae08.js} +40 -28
  9. package/dist/cjs/{auth-fetcher-29bb791c.js → auth-fetcher-1687ac0a.js} +1 -1
  10. package/dist/cjs/{constants-35ddd366.js → constants-77c1b8bd.js} +10 -0
  11. package/dist/cjs/{dataunit-fetcher-d4873076.js → dataunit-fetcher-a723f0dc.js} +225 -175
  12. package/dist/cjs/{form-config-fetcher-feb08214.js → form-config-fetcher-40d3f752.js} +56 -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-grid_2.cjs.entry.js +155 -0
  17. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  18. package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_8.cjs.entry.js} +264 -46
  19. package/dist/cjs/snk-application.cjs.entry.js +471 -79
  20. package/dist/cjs/snk-attach.cjs.entry.js +91 -50
  21. package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +401 -13
  22. package/dist/cjs/snk-configurator.cjs.entry.js +10 -3
  23. package/dist/cjs/snk-crud.cjs.entry.js +57 -84
  24. package/dist/cjs/snk-data-exporter.cjs.entry.js +38 -30
  25. package/dist/cjs/{snk-data-unit-ece44c4a.js → snk-data-unit-57916de4.js} +275 -37
  26. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
  27. package/dist/cjs/snk-detail-view.cjs.entry.js +69 -17
  28. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  29. package/dist/cjs/snk-field-config.cjs.entry.js +1 -1
  30. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1438 -0
  31. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  32. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  33. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  34. package/dist/cjs/snk-filter-number.cjs.entry.js +1 -1
  35. package/dist/cjs/snk-filter-search.cjs.entry.js +18 -5
  36. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -1
  37. package/dist/cjs/snk-form-view.cjs.entry.js +19 -7
  38. package/dist/cjs/snk-grid.cjs.entry.js +132 -51
  39. package/dist/cjs/{snk-guides-viewer-aafc3073.js → snk-guides-viewer-d33379cd.js} +151 -74
  40. package/dist/cjs/snk-guides-viewer.cjs.entry.js +12 -12
  41. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +4 -4
  42. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  43. package/dist/cjs/snk-pesquisa.cjs.entry.js +116 -31
  44. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  45. package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
  46. package/dist/cjs/snk-simple-crud.cjs.entry.js +237 -200
  47. package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
  48. package/dist/cjs/snk-taskbar.cjs.entry.js +79 -42
  49. package/dist/cjs/{taskbar-elements-9ad1f9c0.js → taskbar-elements-6f4e06af.js} +12 -1
  50. package/dist/cjs/{field-search-f56aa7d6.js → taskbar-processor-2fba34a8.js} +5 -36
  51. package/dist/collection/collection-manifest.json +17 -31
  52. package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
  53. package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
  54. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
  55. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +5 -2
  56. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
  57. package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
  58. package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
  59. package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-plus.js +107 -0
  60. package/dist/collection/components/snk-application/snk-application.css +36 -0
  61. package/dist/collection/components/snk-application/snk-application.js +450 -72
  62. package/dist/collection/components/snk-attach/snk-attach.js +51 -16
  63. package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
  64. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +19 -18
  65. package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
  66. package/dist/collection/components/snk-configurator/snk-configurator.js +26 -1
  67. package/dist/collection/components/snk-crud/snk-crud.js +181 -76
  68. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +10 -1
  69. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +84 -6
  70. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +54 -7
  71. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
  72. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +198 -82
  73. package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
  74. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -8
  75. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
  76. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +41 -10
  77. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +18 -6
  78. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
  79. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +10 -9
  80. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
  81. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
  82. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  83. package/dist/collection/components/snk-data-unit/MultipleUpdateHelper.js +128 -0
  84. package/dist/collection/components/snk-data-unit/snk-data-unit.js +156 -37
  85. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +3 -3
  86. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
  87. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
  88. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
  89. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +18 -5
  90. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
  91. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
  92. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
  93. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
  94. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +10 -4
  95. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
  96. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +3 -1
  97. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +2 -6
  98. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +119 -29
  99. package/dist/collection/components/snk-form/snk-form.js +2 -2
  100. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +73 -15
  101. package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
  102. package/dist/collection/components/snk-form-config/snk-form-config.js +49 -8
  103. package/dist/collection/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.js +5 -3
  104. package/dist/collection/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.js +2 -2
  105. package/dist/collection/components/snk-grid/snk-grid.css +8 -0
  106. package/dist/collection/components/snk-grid/snk-grid.js +269 -51
  107. package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
  108. package/dist/collection/components/snk-grid-config/snk-grid-config.js +2 -0
  109. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.css +3 -0
  110. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +73 -0
  111. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.css +78 -0
  112. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +57 -0
  113. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
  114. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
  115. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
  116. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
  117. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
  118. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
  119. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +181 -32
  120. package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
  121. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
  122. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
  123. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +342 -123
  124. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
  125. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
  126. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +13 -0
  127. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +1 -1
  128. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -0
  129. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.css +0 -0
  130. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +220 -0
  131. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
  132. package/dist/collection/components/snk-taskbar/snk-taskbar.js +141 -41
  133. package/dist/collection/lib/@types/index.js +5 -0
  134. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +11 -5
  135. package/dist/collection/lib/configs/LayoutFormConfig.js +25 -0
  136. package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -103
  137. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -32
  138. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +44 -29
  139. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  140. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  141. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  142. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +5 -2
  143. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  144. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +23 -14
  145. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
  146. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +59 -5
  147. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  148. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +133 -9
  149. package/dist/collection/lib/index.js +1 -0
  150. package/dist/collection/lib/message/SnkMessageBuilder.js +1 -0
  151. package/dist/collection/lib/message/resources/snk-crud.msg.js +1 -1
  152. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +28 -23
  153. package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
  154. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  155. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +2 -1
  156. package/dist/collection/lib/message/resources/snk-taskbar.msg.js +1 -0
  157. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  158. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  159. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  160. package/dist/collection/lib/utils/constants.js +10 -0
  161. package/dist/collection/sw.js +46 -0
  162. package/dist/components/ContinuousInsertUtils.js +416 -0
  163. package/dist/components/DataFetcher.js +231 -84
  164. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  165. package/dist/components/ISave.js +391 -1
  166. package/dist/components/SnkFormConfigManager.js +73 -15
  167. package/dist/components/SnkMessageBuilder.js +40 -28
  168. package/dist/components/constants.js +11 -1
  169. package/dist/components/dataunit-fetcher.js +243 -190
  170. package/dist/components/form-config-fetcher.js +55 -1
  171. package/dist/components/index.d.ts +6 -0
  172. package/dist/components/index.js +6 -0
  173. package/dist/components/pesquisa-grid.d.ts +11 -0
  174. package/dist/components/pesquisa-grid.js +6 -0
  175. package/dist/components/pesquisa-grid2.js +102 -0
  176. package/dist/components/pesquisa-tree.d.ts +11 -0
  177. package/dist/components/pesquisa-tree.js +6 -0
  178. package/dist/components/pesquisa-tree2.js +91 -0
  179. package/dist/components/snk-actions-button2.js +44 -40
  180. package/dist/components/snk-application2.js +494 -77
  181. package/dist/components/snk-attach2.js +114 -73
  182. package/dist/components/snk-config-options2.js +6 -4
  183. package/dist/components/snk-configurator2.js +23 -3
  184. package/dist/components/snk-crud.js +143 -139
  185. package/dist/components/snk-data-exporter2.js +37 -23
  186. package/dist/components/snk-data-unit2.js +275 -74
  187. package/dist/components/snk-detail-view2.js +329 -171
  188. package/dist/components/snk-exporter-email-sender2.js +1 -1
  189. package/dist/components/snk-filter-bar2.js +68 -34
  190. package/dist/components/snk-filter-binary-select.js +1 -1
  191. package/dist/components/snk-filter-checkbox-list.js +1 -1
  192. package/dist/components/snk-filter-item2.js +10 -4
  193. package/dist/components/snk-filter-modal.js +4 -2
  194. package/dist/components/snk-filter-number.js +1 -1
  195. package/dist/components/snk-filter-search.js +18 -5
  196. package/dist/components/snk-filter-text.js +2 -1
  197. package/dist/components/snk-form-config2.js +35 -10
  198. package/dist/components/snk-form-view2.js +22 -8
  199. package/dist/components/snk-form.js +2 -2
  200. package/dist/components/snk-grid-config2.js +3 -1
  201. package/dist/components/snk-grid2.js +169 -75
  202. package/dist/components/snk-layout-form-config.d.ts +11 -0
  203. package/dist/components/snk-layout-form-config.js +6 -0
  204. package/dist/components/snk-layout-form-config2.js +73 -0
  205. package/dist/components/snk-personalized-filter-editor.js +4 -4
  206. package/dist/components/snk-pesquisa2.js +132 -33
  207. package/dist/components/snk-print-selector.js +1 -1
  208. package/dist/components/snk-simple-bar2.js +1 -1
  209. package/dist/components/snk-simple-crud2.js +246 -203
  210. package/dist/components/snk-simple-form-config.d.ts +11 -0
  211. package/dist/components/snk-simple-form-config.js +6 -0
  212. package/dist/components/snk-simple-form-config2.js +121 -0
  213. package/dist/components/snk-tab-config2.js +1 -1
  214. package/dist/components/snk-taskbar2.js +105 -50
  215. package/dist/components/snk-view-representation.d.ts +11 -0
  216. package/dist/components/snk-view-representation.js +6 -0
  217. package/dist/components/snk-view-representation2.js +41 -0
  218. package/dist/components/taskbar-actions-button2.js +2 -2
  219. package/dist/components/taskbar-split-button.d.ts +11 -0
  220. package/dist/components/taskbar-split-button.js +6 -0
  221. package/dist/components/taskbar-split-button2.js +87 -0
  222. package/dist/components/teste-pesquisa.js +13 -1
  223. package/dist/esm/ClientSideExporterProvider-b3871edb.js +367 -0
  224. package/dist/esm/{ConfigStorage-e476378d.js → ConfigStorage-71e6766f.js} +2 -2
  225. package/dist/esm/{DataFetcher-773a3e4b.js → DataFetcher-88e56266.js} +231 -84
  226. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  227. package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
  228. package/dist/esm/ISave-5efafc97.js +394 -0
  229. package/dist/esm/{SnkFormConfigManager-298cd647.js → SnkFormConfigManager-be490a33.js} +75 -17
  230. package/dist/esm/{SnkMessageBuilder-571462fb.js → SnkMessageBuilder-2dbd8fa2.js} +40 -28
  231. package/dist/esm/{auth-fetcher-a411f73c.js → auth-fetcher-3510520e.js} +1 -1
  232. package/dist/esm/{constants-8457af36.js → constants-7db1128a.js} +11 -1
  233. package/dist/esm/{dataunit-fetcher-3d2ec959.js → dataunit-fetcher-0e025732.js} +227 -174
  234. package/dist/esm/{form-config-fetcher-e0382e5a.js → form-config-fetcher-fa208a6c.js} +56 -2
  235. package/dist/esm/index-a7d3d3f1.js +16 -32
  236. package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
  237. package/dist/esm/loader.js +1 -1
  238. package/dist/esm/pesquisa-grid_2.entry.js +150 -0
  239. package/dist/esm/sankhyablocks.js +1 -1
  240. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_8.entry.js} +263 -49
  241. package/dist/esm/snk-application.entry.js +472 -80
  242. package/dist/esm/snk-attach.entry.js +92 -51
  243. package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +401 -15
  244. package/dist/esm/snk-configurator.entry.js +10 -3
  245. package/dist/esm/snk-crud.entry.js +58 -85
  246. package/dist/esm/snk-data-exporter.entry.js +38 -30
  247. package/dist/esm/{snk-data-unit-2a1d5d09.js → snk-data-unit-65c9dd1a.js} +275 -37
  248. package/dist/esm/snk-data-unit.entry.js +5 -5
  249. package/dist/esm/snk-detail-view.entry.js +71 -19
  250. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  251. package/dist/esm/snk-field-config.entry.js +1 -1
  252. package/dist/esm/snk-filter-bar_4.entry.js +1431 -0
  253. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  254. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  255. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  256. package/dist/esm/snk-filter-number.entry.js +1 -1
  257. package/dist/esm/snk-filter-search.entry.js +18 -5
  258. package/dist/esm/snk-filter-text.entry.js +2 -1
  259. package/dist/esm/snk-form-view.entry.js +19 -7
  260. package/dist/esm/snk-grid.entry.js +125 -44
  261. package/dist/esm/{snk-guides-viewer-62124f3d.js → snk-guides-viewer-72953334.js} +153 -76
  262. package/dist/esm/snk-guides-viewer.entry.js +12 -12
  263. package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
  264. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  265. package/dist/esm/snk-pesquisa.entry.js +116 -31
  266. package/dist/esm/snk-print-selector.entry.js +1 -1
  267. package/dist/esm/snk-simple-bar.entry.js +1 -1
  268. package/dist/esm/snk-simple-crud.entry.js +224 -187
  269. package/dist/esm/snk-tab-config.entry.js +1 -1
  270. package/dist/esm/snk-taskbar.entry.js +80 -43
  271. package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-f2cb4922.js} +12 -1
  272. package/dist/esm/{field-search-efbe307f.js → taskbar-processor-3436124c.js} +6 -35
  273. package/dist/sankhyablocks/{p-3287a6cc.js → p-03b68a74.js} +1 -1
  274. package/dist/sankhyablocks/p-0f3698af.js +1 -0
  275. package/dist/sankhyablocks/p-0fadb620.js +1 -0
  276. package/dist/sankhyablocks/{p-9dfda04a.entry.js → p-165cde3b.entry.js} +1 -1
  277. package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
  278. package/dist/sankhyablocks/p-1a0caadb.js +1 -0
  279. package/dist/sankhyablocks/p-1bdffb17.entry.js +11 -0
  280. package/dist/sankhyablocks/p-1f80174b.entry.js +1 -0
  281. package/dist/sankhyablocks/p-24a0dbd2.entry.js +1 -0
  282. package/dist/sankhyablocks/p-2f7e2251.entry.js +1 -0
  283. package/dist/sankhyablocks/p-3372178e.entry.js +1 -0
  284. package/dist/sankhyablocks/{p-95df461f.entry.js → p-3749dffb.entry.js} +1 -1
  285. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
  286. package/dist/sankhyablocks/p-4689c2e6.js +1 -0
  287. package/dist/sankhyablocks/p-47178038.entry.js +1 -0
  288. package/dist/sankhyablocks/{p-bd008859.entry.js → p-490b75b5.entry.js} +1 -1
  289. package/dist/sankhyablocks/p-52d10014.entry.js +1 -0
  290. package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
  291. package/dist/sankhyablocks/p-5ffa0493.entry.js +1 -0
  292. package/dist/sankhyablocks/p-60137b7a.entry.js +1 -0
  293. package/dist/sankhyablocks/p-601b252b.js +26 -0
  294. package/dist/sankhyablocks/p-6a03b190.entry.js +1 -0
  295. package/dist/sankhyablocks/p-6dd38d7b.js +6 -0
  296. package/dist/sankhyablocks/{p-0cd3c0a9.js → p-73285a8a.js} +1 -1
  297. package/dist/sankhyablocks/p-7993b2e3.js +60 -0
  298. package/dist/sankhyablocks/p-79f823f3.entry.js +1 -0
  299. package/dist/sankhyablocks/p-7beeabc1.entry.js +1 -0
  300. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  301. package/dist/sankhyablocks/p-885802c3.js +1 -0
  302. package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
  303. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
  304. package/dist/sankhyablocks/p-8f3f2306.js +1 -0
  305. package/dist/sankhyablocks/p-90684a75.entry.js +1 -0
  306. package/dist/sankhyablocks/{p-b0ef4383.js → p-9261d8a0.js} +1 -1
  307. package/dist/sankhyablocks/p-a14a09c3.entry.js +1 -0
  308. package/dist/sankhyablocks/p-a4ebeec4.entry.js +1 -0
  309. package/dist/sankhyablocks/p-b0ab5066.entry.js +1 -0
  310. package/dist/sankhyablocks/p-b6200d32.entry.js +1 -0
  311. package/dist/sankhyablocks/p-bc101064.entry.js +1 -0
  312. package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-c0eb761b.entry.js} +1 -1
  313. package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
  314. package/dist/sankhyablocks/p-c9675d64.js +1 -0
  315. package/dist/sankhyablocks/p-ce94e6c4.entry.js +1 -0
  316. package/dist/sankhyablocks/p-d07b18a4.js +1 -0
  317. package/dist/sankhyablocks/p-ddf93f36.entry.js +1 -0
  318. package/dist/sankhyablocks/p-ebdb9d89.js +1 -0
  319. package/dist/sankhyablocks/p-fbba7e3d.js +1 -0
  320. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  321. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  322. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  323. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  324. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  325. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  326. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  327. package/dist/types/components/snk-application/search-strategy/exec-prepared-search-plus.d.ts +5 -0
  328. package/dist/types/components/snk-application/snk-application.d.ts +55 -16
  329. package/dist/types/components/snk-attach/snk-attach.d.ts +2 -0
  330. package/dist/types/components/snk-configurator/snk-configurator.d.ts +6 -0
  331. package/dist/types/components/snk-crud/snk-crud.d.ts +30 -3
  332. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +17 -0
  333. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +11 -1
  334. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +26 -7
  335. package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
  336. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  337. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +9 -1
  338. package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
  339. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
  340. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  341. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  342. package/dist/types/components/snk-data-unit/MultipleUpdateHelper.d.ts +9 -0
  343. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +19 -0
  344. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +5 -3
  345. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  346. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  347. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
  348. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +7 -2
  349. package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
  350. package/dist/types/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.d.ts +2 -1
  351. package/dist/types/components/snk-grid/snk-grid.d.ts +45 -5
  352. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +1 -0
  353. package/dist/types/components/snk-layout-form-config/snk-layout-form-config.d.ts +15 -0
  354. package/dist/types/components/snk-layout-form-config/snk-view-representation/snk-view-representation.d.ts +10 -0
  355. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  356. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  357. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  358. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +36 -1
  359. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +51 -15
  360. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  361. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
  362. package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +44 -0
  363. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  364. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +17 -0
  365. package/dist/types/components.d.ts +608 -24
  366. package/dist/types/lib/@types/index.d.ts +4 -0
  367. package/dist/types/lib/configs/LayoutFormConfig.d.ts +11 -0
  368. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
  369. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
  370. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  371. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  372. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  373. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  374. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  375. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -1
  376. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  377. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  378. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  379. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
  380. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +14 -2
  381. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  382. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +21 -2
  383. package/dist/types/lib/index.d.ts +1 -0
  384. package/dist/types/lib/message/SnkMessageBuilder.d.ts +2 -1
  385. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  386. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  387. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  388. package/dist/types/lib/utils/constants.d.ts +8 -0
  389. package/package.json +4 -3
  390. package/react/components.d.ts +6 -0
  391. package/react/components.js +6 -0
  392. package/react/components.js.map +1 -1
  393. package/dist/cjs/IExporterProvider-10b7fed5.js +0 -230
  394. package/dist/cjs/ISave-e91b70a7.js +0 -9
  395. package/dist/cjs/pesquisa-fetcher-a1d0353f.js +0 -166
  396. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  397. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  398. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  399. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  400. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  401. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  402. package/dist/collection/components/snk-taskbar/subcomponents/field-search.js +0 -31
  403. package/dist/components/IExporterProvider.js +0 -298
  404. package/dist/components/pesquisa-fetcher.js +0 -164
  405. package/dist/esm/IExporterProvider-d597f27d.js +0 -221
  406. package/dist/esm/ISave-d8c8bc59.js +0 -9
  407. package/dist/esm/pesquisa-fetcher-a87445a0.js +0 -164
  408. package/dist/esm/snk-config-options.entry.js +0 -235
  409. package/dist/esm/snk-filter-bar.entry.js +0 -710
  410. package/dist/esm/snk-filter-item.entry.js +0 -308
  411. package/dist/esm/snk-filter-list.entry.js +0 -148
  412. package/dist/esm/snk-filter-modal.entry.js +0 -245
  413. package/dist/esm/snk-form.entry.js +0 -139
  414. package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
  415. package/dist/sankhyablocks/p-091ce761.js +0 -60
  416. package/dist/sankhyablocks/p-14b8b656.entry.js +0 -1
  417. package/dist/sankhyablocks/p-181975f1.js +0 -26
  418. package/dist/sankhyablocks/p-1db45d26.entry.js +0 -1
  419. package/dist/sankhyablocks/p-1e971cb0.entry.js +0 -1
  420. package/dist/sankhyablocks/p-21749402.js +0 -1
  421. package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
  422. package/dist/sankhyablocks/p-25f1fc39.js +0 -6
  423. package/dist/sankhyablocks/p-2e9c764c.entry.js +0 -1
  424. package/dist/sankhyablocks/p-30cf616e.js +0 -1
  425. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  426. package/dist/sankhyablocks/p-421bec84.entry.js +0 -1
  427. package/dist/sankhyablocks/p-42f7b05d.entry.js +0 -1
  428. package/dist/sankhyablocks/p-51999ab5.entry.js +0 -1
  429. package/dist/sankhyablocks/p-594bc21d.js +0 -1
  430. package/dist/sankhyablocks/p-5f016aed.js +0 -1
  431. package/dist/sankhyablocks/p-62f34e6f.entry.js +0 -1
  432. package/dist/sankhyablocks/p-631954eb.entry.js +0 -1
  433. package/dist/sankhyablocks/p-65f8c11c.entry.js +0 -1
  434. package/dist/sankhyablocks/p-684a2590.entry.js +0 -1
  435. package/dist/sankhyablocks/p-70001ac1.js +0 -1
  436. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  437. package/dist/sankhyablocks/p-7663f597.entry.js +0 -1
  438. package/dist/sankhyablocks/p-76a65660.js +0 -1
  439. package/dist/sankhyablocks/p-7e7a7473.js +0 -1
  440. package/dist/sankhyablocks/p-7ef9c55c.js +0 -1
  441. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  442. package/dist/sankhyablocks/p-939e15d3.entry.js +0 -1
  443. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  444. package/dist/sankhyablocks/p-9863d682.js +0 -1
  445. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  446. package/dist/sankhyablocks/p-c2495304.js +0 -1
  447. package/dist/sankhyablocks/p-c8622597.entry.js +0 -1
  448. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  449. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  450. package/dist/sankhyablocks/p-d65d98ed.entry.js +0 -1
  451. package/dist/sankhyablocks/p-d6610d11.entry.js +0 -11
  452. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  453. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  454. package/dist/sankhyablocks/p-ffa5e4ff.js +0 -1
  455. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
  456. package/dist/types/components/snk-taskbar/subcomponents/field-search.d.ts +0 -4
@@ -69,6 +69,7 @@ const TAGS_BY_TYPE = {
69
69
  CHECKBOX: "ez-check",
70
70
  OPTIONSELECTOR: "ez-combo-box",
71
71
  SEARCH: "ez-search",
72
+ SEARCHPLUS: "ez-search-plus",
72
73
  INTEGERNUMBER: "ez-number-input",
73
74
  DECIMALNUMBER: "ez-number-input"
74
75
  };
@@ -91,6 +92,15 @@ exports.SIMPLE_CRUD_MODE = void 0;
91
92
  SIMPLE_CRUD_MODE[SIMPLE_CRUD_MODE["SERVER"] = 0] = "SERVER";
92
93
  SIMPLE_CRUD_MODE[SIMPLE_CRUD_MODE["IN_MEMORY"] = 1] = "IN_MEMORY";
93
94
  })(exports.SIMPLE_CRUD_MODE || (exports.SIMPLE_CRUD_MODE = {}));
95
+ // TODO: validar forma de compartilhar os templates com outros projetos
96
+ exports.TEMPLATES_SKELETON = void 0;
97
+ (function (TEMPLATES_SKELETON) {
98
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["CUSTOM_TEMPLATE"] = 0] = "CUSTOM_TEMPLATE";
99
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID"] = 1] = "GRID";
100
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID_WITH_SIDEBAR"] = 2] = "GRID_WITH_SIDEBAR";
101
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID_WITH_PANEL"] = 3] = "GRID_WITH_PANEL";
102
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["FORM_WITH_SIDEBAR"] = 4] = "FORM_WITH_SIDEBAR";
103
+ })(exports.TEMPLATES_SKELETON || (exports.TEMPLATES_SKELETON = {}));
94
104
 
95
105
  exports.ACTION_CONFIG = ACTION_CONFIG;
96
106
  exports.CONFIG_EVENTS = CONFIG_EVENTS;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const core = require('@sankhyalabs/core');
4
- const DataFetcher = require('./DataFetcher-77729a93.js');
4
+ const DataFetcher = require('./DataFetcher-1afdb18e.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
 
@@ -117,7 +131,7 @@ class PreloadManager {
117
131
  static getSortingFunction(dataUnit, sorting) {
118
132
  return SortingUtils__default['default'].getSortingFunction(dataUnit, sorting);
119
133
  }
120
- static async getDistinct(dataUnit, fieldName) {
134
+ static async getDistinct(dataUnit, fieldName, onlyLabel = false) {
121
135
  if (!PreloadManager.isCacheEnabled(dataUnit)) {
122
136
  return Promise.resolve(utils.ColumnFilterManager.compileDistinct(fieldName, dataUnit));
123
137
  }
@@ -136,7 +150,10 @@ class PreloadManager {
136
150
  if (fieldValue == undefined) {
137
151
  return { key: null, value: null };
138
152
  }
139
- const value = fieldValue.value != undefined ? fieldValue.value : fieldValue;
153
+ let value = fieldValue.value != undefined ? fieldValue.value : fieldValue;
154
+ if ((fieldValue === null || fieldValue === void 0 ? void 0 : fieldValue.label) && onlyLabel) {
155
+ return { key: fieldValue === null || fieldValue === void 0 ? void 0 : fieldValue.label, value: dataUnit.getFormattedValue(fieldName, value) };
156
+ }
140
157
  return { key: dataUnit.getFormattedValue(fieldName, fieldValue), value };
141
158
  })
142
159
  .then(result => {
@@ -230,159 +247,33 @@ class PreloadManager {
230
247
  PreloadManager._repositories = new Map();
231
248
  PreloadManager._loadingStatus = new Map();
232
249
 
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
250
  class InMemoryLoader {
270
251
  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;
252
+ this._dataUnitInMemoryLoader = new core.DataUnitInMemoryLoader(metadata, records, config);
294
253
  }
295
254
  get dataUnit() {
296
- return this._dataUnit;
255
+ return this._dataUnitInMemoryLoader.dataUnit;
297
256
  }
298
257
  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;
258
+ return this._dataUnitInMemoryLoader.records;
315
259
  }
316
260
  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
- }
261
+ this._dataUnitInMemoryLoader.records = records;
337
262
  }
338
263
  get metadata() {
339
- return this._metadata;
264
+ return this._dataUnitInMemoryLoader.metadata;
340
265
  }
341
266
  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
- });
267
+ this._dataUnitInMemoryLoader.metadata = metadata;
378
268
  }
379
269
  removeLoader(_dataUnit, recordIds) {
380
- return new Promise((resolve) => {
381
- resolve(recordIds);
382
- });
270
+ return this._dataUnitInMemoryLoader.removeLoader(_dataUnit, recordIds);
271
+ }
272
+ static getConvertedValue(descriptor, strValue, dateFormat) {
273
+ return core.DataUnitInMemoryLoader.getConvertedValue(descriptor, strValue, dateFormat);
383
274
  }
384
275
  }
385
- InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = "InMemoryDataUnit";
276
+ InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = core.DataUnitInMemoryLoader.IN_MEMORY_DATA_UNIT_NAME;
386
277
 
387
278
  function getRecordValue(record, fieldName) {
388
279
  var _a, _b;
@@ -426,16 +317,25 @@ class DatasetStrategy {
426
317
  const serviceName = "DatasetSP.loadRecords";
427
318
  const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting, serverSideFilters);
428
319
  const params = loadingInfo.quiet ? { urlParams: { quietMode: "true" } } : undefined;
429
- const { result: responseRecords, pagerID: pagerId } = await DataFetcher.DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
320
+ const { result: responseRecords, pagerID: pagerId, askRowsLimit } = await DataFetcher.DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
430
321
  const records = this.processRecords(dataUnit, fields, responseRecords);
431
322
  const loadingInProgress = pagerId != undefined;
432
323
  const count = loadingInfo.count + records.length;
433
- const needReload = !loadingInProgress && localSorting.length > 0;
324
+ const isInsertingNewRecord = dataUnit.hasNewRecord();
325
+ const hasLocalSorting = localSorting.length > 0;
326
+ const needReload = !loadingInProgress && hasLocalSorting;
327
+ /**
328
+ * Caso precise recarregar dados, porém está no meio de uma inserção, os dados não devem recarregados instantaneamente,
329
+ * Mas sim, sinalizar que o dataUnit está aguardando para der recarregado.
330
+ */
331
+ if (needReload && isInsertingNewRecord) {
332
+ dataUnit.setWaitingToReload(true);
333
+ }
434
334
  return Promise.resolve({
435
335
  records,
436
336
  loadingInfo: Object.assign(Object.assign({}, loadingInfo), { pagerId,
437
- loadingInProgress, total: loadingInProgress ? undefined : count, count,
438
- needReload })
337
+ loadingInProgress, total: loadingInProgress ? undefined : count, count, needReload: needReload && !isInsertingNewRecord, askRowsLimit,
338
+ hasLocalSorting })
439
339
  });
440
340
  }
441
341
  catch (error) {
@@ -487,8 +387,7 @@ class DatasetStrategy {
487
387
  },
488
388
  }
489
389
  };
490
- const parsedRequestBody = JSON.stringify(requestBody);
491
- return parsedRequestBody;
390
+ return JSON.stringify(requestBody);
492
391
  }
493
392
  getFieldsList(dataUnit) {
494
393
  let fields = ["__record__id__", "__record__label__"];
@@ -605,17 +504,128 @@ class DatasetStrategy {
605
504
  return InMemoryLoader.getConvertedValue(descriptor, strValue);
606
505
  }
607
506
  getSearchDescriptionField(descriptor) {
608
- if (descriptor.userInterface === core.UserInterface.SEARCH) {
609
- const { ENTITYNAME, mergedFrom, DESCRIPTIONFIELD } = descriptor.properties;
610
- if (!core.StringUtils.isEmpty(DESCRIPTIONFIELD)) {
611
- return mergedFrom != undefined ? `${mergedFrom}.${ENTITYNAME}.${DESCRIPTIONFIELD}` : `${ENTITYNAME}.${DESCRIPTIONFIELD}`;
612
- }
507
+ if (![core.UserInterface.SEARCH, core.UserInterface.SEARCHPLUS].includes(descriptor.userInterface)) {
508
+ return undefined;
509
+ }
510
+ const { ENTITYNAME, mergedFrom, DESCRIPTIONFIELD } = descriptor.properties;
511
+ if (!core.StringUtils.isEmpty(DESCRIPTIONFIELD)) {
512
+ return mergedFrom != undefined ? `${mergedFrom}.${ENTITYNAME}.${DESCRIPTIONFIELD}` : `${ENTITYNAME}.${DESCRIPTIONFIELD}`;
613
513
  }
614
514
  return undefined;
615
515
  }
616
516
  }
617
517
 
518
+ async function showAskCancelPaginationPopup() {
519
+ return new Promise((resolve) => {
520
+ const { checkboxContainer, checkbox } = buildCheckboxContainer();
521
+ const popup = builPopup(resolve, checkbox);
522
+ const contentContainer = buildContentContainer();
523
+ contentContainer.appendChild(buildMessage());
524
+ contentContainer.appendChild(checkboxContainer);
525
+ const actionsContainer = buildActionsContainer();
526
+ actionsContainer.appendChild(buildContinuePaginationBtn(popup, checkbox, resolve));
527
+ actionsContainer.appendChild(buildCancelPaginationBtn(popup, resolve));
528
+ contentContainer.appendChild(actionsContainer);
529
+ popup.appendChild(contentContainer);
530
+ document.body.appendChild(popup);
531
+ });
532
+ }
533
+ function buildCheckboxContainer() {
534
+ const checkboxContainer = document.createElement('div');
535
+ checkboxContainer.style.marginBottom = '14px';
536
+ checkboxContainer.style.display = 'flex';
537
+ checkboxContainer.style.alignItems = 'center';
538
+ const { checkbox, checkboxLabel } = buildCheckbox();
539
+ checkboxContainer.appendChild(checkbox);
540
+ checkboxContainer.appendChild(checkboxLabel);
541
+ return { checkboxContainer, checkbox };
542
+ }
543
+ function buildCheckbox() {
544
+ const checkbox = document.createElement('input');
545
+ checkbox.type = 'checkbox';
546
+ checkbox.id = 'loadAll';
547
+ const checkboxLabel = document.createElement('label');
548
+ checkboxLabel.htmlFor = 'loadAll';
549
+ checkboxLabel.textContent = 'Carregar tudo';
550
+ checkboxLabel.style.marginLeft = '5px';
551
+ return { checkbox, checkboxLabel };
552
+ }
553
+ function buildActionsContainer() {
554
+ const actionsContainer = document.createElement('div');
555
+ actionsContainer.style.display = 'flex';
556
+ actionsContainer.style.flexDirection = 'row';
557
+ actionsContainer.style.justifyContent = 'end';
558
+ actionsContainer.style.gap = '5px';
559
+ return actionsContainer;
560
+ }
561
+ function buildContentContainer() {
562
+ const contentContainer = document.createElement('div');
563
+ contentContainer.style.display = 'flex';
564
+ contentContainer.style.flexDirection = 'column';
565
+ contentContainer.style.fontFamily = 'var(--font-pattern, Roboto)';
566
+ contentContainer.style.fontSize = 'var(--text--medium)';
567
+ return contentContainer;
568
+ }
569
+ function buildMessage() {
570
+ const message = document.createElement('div');
571
+ const line1 = document.createElement('p');
572
+ const line2 = document.createElement('p');
573
+ const line3 = document.createElement('p');
574
+ line3.style.fontWeight = 'var(--text-weight--large, 600)';
575
+ line1.textContent = 'Uma quantidade de registros muito grande está sendo carregada.';
576
+ line2.textContent = 'Recomendamos que a paginação seja cancelada e que seja criado um filtro para os registros.';
577
+ line3.textContent = 'Deseja cancelar o carregamento?';
578
+ message.appendChild(line1);
579
+ message.appendChild(line2);
580
+ message.appendChild(line3);
581
+ return message;
582
+ }
583
+ function buildCancelPaginationBtn(popup, resolve) {
584
+ const cancelPaginationBtn = document.createElement('ez-button');
585
+ cancelPaginationBtn.label = 'Cancelar paginação';
586
+ cancelPaginationBtn.size = 'medium';
587
+ cancelPaginationBtn.classList.add('ez-button--primary');
588
+ cancelPaginationBtn.onclick = () => {
589
+ document.body.removeChild(popup);
590
+ resolve(CancelPaginationResponse.CANCEL);
591
+ };
592
+ return cancelPaginationBtn;
593
+ }
594
+ function buildContinuePaginationBtn(popup, checkBox, resolve) {
595
+ const continuePaginationBtn = document.createElement('ez-button');
596
+ continuePaginationBtn.label = 'Continuar';
597
+ continuePaginationBtn.size = 'medium';
598
+ continuePaginationBtn.onclick = () => {
599
+ document.body.removeChild(popup);
600
+ resolve(checkBox.checked ? CancelPaginationResponse.LOAD_ALL : CancelPaginationResponse.CONTINUE);
601
+ };
602
+ return continuePaginationBtn;
603
+ }
604
+ function builPopup(resolve, checkBox) {
605
+ const popup = document.createElement('ez-popup');
606
+ popup.opened = true;
607
+ popup.size = 'x-small';
608
+ popup.ezTitle = 'Aviso';
609
+ popup.heightMode = "auto";
610
+ popup.addEventListener('ezClosePopup', () => {
611
+ document.body.removeChild(popup);
612
+ resolve(checkBox.checked ? CancelPaginationResponse.LOAD_ALL : CancelPaginationResponse.CONTINUE);
613
+ }, { once: true });
614
+ popup.addEventListener('ezPopupAction', () => {
615
+ document.body.removeChild(popup);
616
+ resolve(CancelPaginationResponse.CANCEL);
617
+ }, { once: true });
618
+ return popup;
619
+ }
620
+ var CancelPaginationResponse;
621
+ (function (CancelPaginationResponse) {
622
+ CancelPaginationResponse["CANCEL"] = "CANCEL";
623
+ CancelPaginationResponse["CONTINUE"] = "CONTINUE";
624
+ CancelPaginationResponse["LOAD_ALL"] = "LOAD_ALL";
625
+ })(CancelPaginationResponse || (CancelPaginationResponse = {}));
626
+
618
627
  class DataUnitDataLoader {
628
+ constructor() { }
619
629
  static async debounce(dataUnit, callBack) {
620
630
  const duName = dataUnit.name;
621
631
  if (DataUnitDataLoader._debouncingTimeouts[duName]) {
@@ -661,25 +671,67 @@ class DataUnitDataLoader {
661
671
  }
662
672
  static async callLoader(dataUnit, request, requestLoadingInfo, dataLoader) {
663
673
  if (dataLoader == undefined) {
664
- //dataLoader = new DataUnitStrategy();
665
674
  dataLoader = new DatasetStrategy();
666
675
  }
667
676
  const result = await dataLoader.load(dataUnit, request, requestLoadingInfo);
668
- const { records, loadingInfo: responseLoadingInfo } = result;
669
- if (DataUnitDataLoader.isOldRequest(dataUnit, responseLoadingInfo)) {
677
+ const responseLoadingInfo = result.loadingInfo;
678
+ if (DataUnitDataLoader.isOldRequest(dataUnit, responseLoadingInfo))
670
679
  return Promise.resolve(undefined);
680
+ this.handleCache(dataLoader, responseLoadingInfo, dataUnit, result.records);
681
+ if (dataUnit.cancelPagination)
682
+ return this.handlePaginationCanceled(dataUnit, result);
683
+ //Não existem mais páginas a serem carregadas
684
+ if (this.canFinishPagination(dataUnit, responseLoadingInfo))
685
+ return Promise.resolve(result);
686
+ const newRequest = Object.assign(Object.assign({}, request), { offset: responseLoadingInfo.count });
687
+ let newLoadingInfo = this.buildNewLoadingInfo(responseLoadingInfo);
688
+ if (this.canProceedPagination(responseLoadingInfo))
689
+ return this.recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result);
690
+ const confirm = await showAskCancelPaginationPopup();
691
+ if (confirm === CancelPaginationResponse.CANCEL)
692
+ return this.handlePaginationCanceled(dataUnit, result);
693
+ if (confirm === CancelPaginationResponse.LOAD_ALL) {
694
+ newLoadingInfo = Object.assign(Object.assign({}, newLoadingInfo), { loadAllRecords: true });
671
695
  }
696
+ newLoadingInfo = Object.assign(Object.assign({}, newLoadingInfo), { lastRowLimitAsked: newLoadingInfo.count });
697
+ return this.recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result);
698
+ }
699
+ static buildNewLoadingInfo(responseLoadingInfo) {
700
+ let newLoadingInfo = Object.assign(Object.assign({}, responseLoadingInfo), { pageNumber: (responseLoadingInfo.pageNumber || 0) + 1, quiet: true });
701
+ return newLoadingInfo;
702
+ }
703
+ static handleCache(dataLoader, responseLoadingInfo, dataUnit, records) {
672
704
  const recreateCache = !dataLoader.canSlice() || responseLoadingInfo.count === 0;
673
705
  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
- }
706
+ }
707
+ static recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result) {
708
+ this.callLoader(dataUnit, newRequest, newLoadingInfo, dataLoader)
709
+ .then(result => DataUnitDataLoader.afterLoadingPage(dataUnit, result.loadingInfo))
710
+ .catch(reason => console.error(reason));
681
711
  return Promise.resolve(result);
682
712
  }
713
+ static canFinishPagination(dataUnit, responseLoadingInfo) {
714
+ return !PreloadManager.isCacheEnabled(dataUnit) || !responseLoadingInfo.loadingInProgress;
715
+ }
716
+ static canProceedPagination(info) {
717
+ const { count, askRowsLimit, loadAllRecords, lastRowLimitAsked } = info;
718
+ if (loadAllRecords)
719
+ return true;
720
+ if (!count || !askRowsLimit)
721
+ return true;
722
+ const askRowLimitNumber = Number(askRowsLimit);
723
+ if (count < askRowLimitNumber)
724
+ return true;
725
+ const nextLimitToAsk = askRowLimitNumber + (lastRowLimitAsked ? lastRowLimitAsked : 0);
726
+ return count < nextLimitToAsk;
727
+ }
728
+ static handlePaginationCanceled(dataUnit, result) {
729
+ dataUnit.cancelPagination = false;
730
+ let loadingInfo = result.loadingInfo;
731
+ loadingInfo = Object.assign(Object.assign({}, loadingInfo), { total: loadingInfo.count, loadingInProgress: false, pagerId: undefined, needReload: loadingInfo.hasLocalSorting });
732
+ const loadDataResult = { records: result.records, loadingInfo };
733
+ return Promise.resolve(loadDataResult);
734
+ }
683
735
  static afterLoadingPage(dataUnit, loadingInfo) {
684
736
  PreloadManager.setLoadingStatus(dataUnit, loadingInfo.loadingInProgress);
685
737
  const dataUnitPagination = dataUnit.getPaginationInfo();
@@ -688,7 +740,7 @@ class DataUnitDataLoader {
688
740
  }
689
741
  const count = loadingInfo.count;
690
742
  if (loadingInfo.loadingInProgress) {
691
- dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count }));
743
+ dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count, loadingInProgress: true }));
692
744
  return;
693
745
  }
694
746
  if (loadingInfo.needReload) {
@@ -696,7 +748,7 @@ class DataUnitDataLoader {
696
748
  dataUnit.gotoPage(0);
697
749
  return;
698
750
  }
699
- dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count }));
751
+ dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count, loadingInProgress: false }));
700
752
  }
701
753
  static registryLoading(dataUnit, loadingInfo) {
702
754
  if (loadingInfo == undefined) {
@@ -719,7 +771,7 @@ class DataUnitDataLoader {
719
771
  // controle de paginação voltar pra primeira página.
720
772
  offset = 0;
721
773
  }
722
- const { total, count, loadingInProgress } = loadingInfo;
774
+ const { total, count, loadingInProgress, askRowsLimit } = loadingInfo;
723
775
  const firstRecord = (count === 0 || pageSize === 0) ? 0 : offset + 1;
724
776
  const lastRecord = offset + Math.min(pageSize, limit);
725
777
  return {
@@ -728,7 +780,8 @@ class DataUnitDataLoader {
728
780
  lastRecord,
729
781
  firstRecord,
730
782
  currentPage: offset / limit,
731
- hasMore: lastRecord < count || loadingInProgress
783
+ hasMore: lastRecord < count || loadingInProgress,
784
+ askRowsLimit
732
785
  };
733
786
  }
734
787
  }
@@ -1062,7 +1115,4 @@ exports.DataUnitFetcher = DataUnitFetcher;
1062
1115
  exports.DatasetStrategy = DatasetStrategy;
1063
1116
  exports.InMemoryLoader = InMemoryLoader;
1064
1117
  exports.PreloadManager = PreloadManager;
1065
- exports.applyFilter = applyFilter;
1066
- exports.applySorting = applySorting;
1067
- exports.buildPaginationInfo = buildPaginationInfo;
1068
1118
  exports.getRecordValue = getRecordValue;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const DataFetcher = require('./DataFetcher-77729a93.js');
3
+ const DataFetcher = require('./DataFetcher-1afdb18e.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,11 +242,62 @@ 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 : [];
245
285
  return { emptyConfig: false, fields: Array.isArray(rawFields) ? rawFields : [rawFields] };
246
286
  }
287
+ async fetchLayoutFormConfig(configName) {
288
+ const payload = { 'requestBody': { 'config': { 'chave': configName, 'tipo': 'T' } } };
289
+ const response = await DataFetcher.DataFetcher.get().callServiceBroker('SystemUtilsSP.getConf', JSON.stringify(payload));
290
+ if (core.ObjectUtils.isEmpty(response))
291
+ return undefined;
292
+ return response.config;
293
+ }
294
+ async saveLayoutFormConfig(configName, config) {
295
+ const payload = { 'requestBody': { 'config': Object.assign(Object.assign({}, config), { 'chave': configName, 'tipo': 'T' }) } };
296
+ const response = await DataFetcher.DataFetcher.get().callServiceBroker('SystemUtilsSP.saveConf', JSON.stringify(payload));
297
+ if (core.ObjectUtils.isEmpty(response))
298
+ return undefined;
299
+ return response;
300
+ }
247
301
  }
248
302
  exports.UserConfigType = void 0;
249
303
  (function (UserConfigType) {
@@ -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 = {}));