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

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 (438) 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-aecd7c18.js} +37 -26
  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/{field-search-f56aa7d6.js → field-search-68e34bf4.js} +5 -1
  13. package/dist/cjs/{form-config-fetcher-feb08214.js → form-config-fetcher-40d3f752.js} +56 -2
  14. package/dist/cjs/{index-1dfc7a6e.js → index-e3e39724.js} +5 -0
  15. package/dist/cjs/index-f9e81701.js +16 -32
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +155 -0
  18. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  19. package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_7.cjs.entry.js} +203 -46
  20. package/dist/cjs/snk-application.cjs.entry.js +471 -79
  21. package/dist/cjs/snk-attach.cjs.entry.js +91 -50
  22. package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +401 -13
  23. package/dist/cjs/snk-configurator.cjs.entry.js +10 -3
  24. package/dist/cjs/snk-crud.cjs.entry.js +57 -60
  25. package/dist/cjs/snk-data-exporter.cjs.entry.js +38 -30
  26. package/dist/cjs/{snk-data-unit-ece44c4a.js → snk-data-unit-ebfdb9ba.js} +275 -37
  27. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
  28. package/dist/cjs/snk-detail-view.cjs.entry.js +17 -17
  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 +1438 -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-search.cjs.entry.js +18 -5
  37. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -1
  38. package/dist/cjs/snk-grid.cjs.entry.js +115 -33
  39. package/dist/cjs/{snk-guides-viewer-aafc3073.js → snk-guides-viewer-fd39f437.js} +120 -55
  40. package/dist/cjs/snk-guides-viewer.cjs.entry.js +11 -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 +179 -130
  47. package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
  48. package/dist/cjs/snk-taskbar.cjs.entry.js +73 -40
  49. package/dist/cjs/{taskbar-elements-9ad1f9c0.js → taskbar-elements-02379452.js} +4 -1
  50. package/dist/collection/collection-manifest.json +16 -31
  51. package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
  52. package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
  53. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
  54. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +5 -2
  55. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
  56. package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
  57. package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
  58. package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-plus.js +107 -0
  59. package/dist/collection/components/snk-application/snk-application.css +36 -0
  60. package/dist/collection/components/snk-application/snk-application.js +450 -72
  61. package/dist/collection/components/snk-attach/snk-attach.js +51 -16
  62. package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
  63. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +19 -18
  64. package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
  65. package/dist/collection/components/snk-configurator/snk-configurator.js +26 -1
  66. package/dist/collection/components/snk-crud/snk-crud.js +181 -52
  67. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +10 -1
  68. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +27 -3
  69. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
  70. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +165 -45
  71. package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
  72. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -8
  73. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
  74. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +41 -10
  75. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +18 -6
  76. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
  77. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +10 -9
  78. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
  79. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
  80. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  81. package/dist/collection/components/snk-data-unit/MultipleUpdateHelper.js +128 -0
  82. package/dist/collection/components/snk-data-unit/snk-data-unit.js +156 -37
  83. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +3 -3
  84. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
  85. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
  86. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
  87. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +18 -5
  88. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
  89. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
  90. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
  91. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
  92. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +10 -4
  93. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
  94. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +3 -1
  95. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +2 -6
  96. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +119 -29
  97. package/dist/collection/components/snk-form/snk-form.js +2 -2
  98. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +73 -15
  99. package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
  100. package/dist/collection/components/snk-form-config/snk-form-config.js +49 -8
  101. package/dist/collection/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.js +5 -3
  102. package/dist/collection/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.js +2 -2
  103. package/dist/collection/components/snk-grid/snk-grid.css +8 -0
  104. package/dist/collection/components/snk-grid/snk-grid.js +236 -18
  105. package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
  106. package/dist/collection/components/snk-grid-config/snk-grid-config.js +2 -0
  107. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.css +3 -0
  108. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +73 -0
  109. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.css +78 -0
  110. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +57 -0
  111. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
  112. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
  113. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
  114. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
  115. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
  116. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
  117. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +181 -32
  118. package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
  119. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
  120. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
  121. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +280 -51
  122. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
  123. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
  124. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +13 -0
  125. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +1 -1
  126. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +3 -0
  127. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
  128. package/dist/collection/components/snk-taskbar/snk-taskbar.js +113 -39
  129. package/dist/collection/lib/@types/index.js +5 -0
  130. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +11 -5
  131. package/dist/collection/lib/configs/LayoutFormConfig.js +25 -0
  132. package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -103
  133. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -32
  134. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +44 -29
  135. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  136. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  137. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  138. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +5 -2
  139. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  140. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +23 -14
  141. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
  142. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +59 -5
  143. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  144. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +133 -9
  145. package/dist/collection/lib/index.js +1 -0
  146. package/dist/collection/lib/message/SnkMessageBuilder.js +1 -0
  147. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +28 -23
  148. package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
  149. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  150. package/dist/collection/lib/message/resources/snk-taskbar.msg.js +1 -0
  151. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  152. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  153. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  154. package/dist/collection/lib/utils/constants.js +10 -0
  155. package/dist/collection/sw.js +46 -0
  156. package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +186 -37
  157. package/dist/components/DataFetcher.js +231 -84
  158. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  159. package/dist/components/ISave.js +391 -1
  160. package/dist/components/SnkFormConfigManager.js +73 -15
  161. package/dist/components/SnkMessageBuilder.js +37 -26
  162. package/dist/components/constants.js +11 -1
  163. package/dist/components/dataunit-fetcher.js +243 -190
  164. package/dist/components/form-config-fetcher.js +55 -1
  165. package/dist/components/index.d.ts +5 -0
  166. package/dist/components/index.js +5 -0
  167. package/dist/components/pesquisa-grid.d.ts +11 -0
  168. package/dist/components/pesquisa-grid.js +6 -0
  169. package/dist/components/pesquisa-grid2.js +102 -0
  170. package/dist/components/pesquisa-tree.d.ts +11 -0
  171. package/dist/components/pesquisa-tree.js +6 -0
  172. package/dist/components/pesquisa-tree2.js +91 -0
  173. package/dist/components/snk-actions-button2.js +44 -40
  174. package/dist/components/snk-application2.js +494 -77
  175. package/dist/components/snk-attach2.js +103 -68
  176. package/dist/components/snk-config-options2.js +6 -4
  177. package/dist/components/snk-configurator2.js +23 -3
  178. package/dist/components/snk-crud.js +135 -113
  179. package/dist/components/snk-data-exporter2.js +37 -23
  180. package/dist/components/snk-data-unit2.js +275 -74
  181. package/dist/components/snk-detail-view2.js +230 -148
  182. package/dist/components/snk-exporter-email-sender2.js +1 -1
  183. package/dist/components/snk-filter-bar2.js +68 -34
  184. package/dist/components/snk-filter-binary-select.js +1 -1
  185. package/dist/components/snk-filter-checkbox-list.js +1 -1
  186. package/dist/components/snk-filter-item2.js +10 -4
  187. package/dist/components/snk-filter-modal.js +4 -2
  188. package/dist/components/snk-filter-number.js +1 -1
  189. package/dist/components/snk-filter-search.js +18 -5
  190. package/dist/components/snk-filter-text.js +2 -1
  191. package/dist/components/snk-form-config2.js +35 -10
  192. package/dist/components/snk-form.js +2 -2
  193. package/dist/components/snk-grid-config2.js +3 -1
  194. package/dist/components/snk-grid2.js +112 -23
  195. package/dist/components/snk-layout-form-config.d.ts +11 -0
  196. package/dist/components/snk-layout-form-config.js +6 -0
  197. package/dist/components/snk-layout-form-config2.js +73 -0
  198. package/dist/components/snk-personalized-filter-editor.js +4 -4
  199. package/dist/components/snk-pesquisa2.js +132 -33
  200. package/dist/components/snk-print-selector.js +1 -1
  201. package/dist/components/snk-simple-bar2.js +1 -1
  202. package/dist/components/snk-simple-crud2.js +176 -128
  203. package/dist/components/snk-simple-form-config.d.ts +11 -0
  204. package/dist/components/snk-simple-form-config.js +6 -0
  205. package/dist/components/snk-simple-form-config2.js +121 -0
  206. package/dist/components/snk-tab-config2.js +1 -1
  207. package/dist/components/snk-taskbar2.js +76 -40
  208. package/dist/components/snk-view-representation.d.ts +11 -0
  209. package/dist/components/snk-view-representation.js +6 -0
  210. package/dist/components/snk-view-representation2.js +41 -0
  211. package/dist/components/taskbar-actions-button2.js +2 -2
  212. package/dist/components/teste-pesquisa.js +13 -1
  213. package/dist/esm/ClientSideExporterProvider-b3871edb.js +367 -0
  214. package/dist/esm/{ConfigStorage-e476378d.js → ConfigStorage-71e6766f.js} +2 -2
  215. package/dist/esm/{DataFetcher-773a3e4b.js → DataFetcher-88e56266.js} +231 -84
  216. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  217. package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
  218. package/dist/esm/ISave-5efafc97.js +394 -0
  219. package/dist/esm/{SnkFormConfigManager-298cd647.js → SnkFormConfigManager-be490a33.js} +75 -17
  220. package/dist/esm/{SnkMessageBuilder-571462fb.js → SnkMessageBuilder-12f5fe1a.js} +37 -26
  221. package/dist/esm/{auth-fetcher-a411f73c.js → auth-fetcher-3510520e.js} +1 -1
  222. package/dist/esm/{constants-8457af36.js → constants-7db1128a.js} +11 -1
  223. package/dist/esm/{dataunit-fetcher-3d2ec959.js → dataunit-fetcher-0e025732.js} +227 -174
  224. package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
  225. package/dist/esm/{form-config-fetcher-e0382e5a.js → form-config-fetcher-fa208a6c.js} +56 -2
  226. package/dist/esm/index-a7d3d3f1.js +16 -32
  227. package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
  228. package/dist/esm/loader.js +1 -1
  229. package/dist/esm/pesquisa-grid_2.entry.js +150 -0
  230. package/dist/esm/sankhyablocks.js +1 -1
  231. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_7.entry.js} +203 -49
  232. package/dist/esm/snk-application.entry.js +472 -80
  233. package/dist/esm/snk-attach.entry.js +92 -51
  234. package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +401 -15
  235. package/dist/esm/snk-configurator.entry.js +10 -3
  236. package/dist/esm/snk-crud.entry.js +58 -61
  237. package/dist/esm/snk-data-exporter.entry.js +38 -30
  238. package/dist/esm/{snk-data-unit-2a1d5d09.js → snk-data-unit-03654813.js} +275 -37
  239. package/dist/esm/snk-data-unit.entry.js +5 -5
  240. package/dist/esm/snk-detail-view.entry.js +17 -17
  241. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  242. package/dist/esm/snk-field-config.entry.js +1 -1
  243. package/dist/esm/snk-filter-bar_4.entry.js +1431 -0
  244. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  245. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  246. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  247. package/dist/esm/snk-filter-number.entry.js +1 -1
  248. package/dist/esm/snk-filter-search.entry.js +18 -5
  249. package/dist/esm/snk-filter-text.entry.js +2 -1
  250. package/dist/esm/snk-grid.entry.js +110 -28
  251. package/dist/esm/{snk-guides-viewer-62124f3d.js → snk-guides-viewer-75e06feb.js} +121 -56
  252. package/dist/esm/snk-guides-viewer.entry.js +11 -12
  253. package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
  254. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  255. package/dist/esm/snk-pesquisa.entry.js +116 -31
  256. package/dist/esm/snk-print-selector.entry.js +1 -1
  257. package/dist/esm/snk-simple-bar.entry.js +1 -1
  258. package/dist/esm/snk-simple-crud.entry.js +165 -116
  259. package/dist/esm/snk-tab-config.entry.js +1 -1
  260. package/dist/esm/snk-taskbar.entry.js +74 -41
  261. package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-c62b6c66.js} +4 -1
  262. package/dist/sankhyablocks/{p-3287a6cc.js → p-03b68a74.js} +1 -1
  263. package/dist/sankhyablocks/p-0f3698af.js +1 -0
  264. package/dist/sankhyablocks/{p-9dfda04a.entry.js → p-165cde3b.entry.js} +1 -1
  265. package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
  266. package/dist/sankhyablocks/p-1a51dfde.entry.js +1 -0
  267. package/dist/sankhyablocks/p-23736d75.js +1 -0
  268. package/dist/sankhyablocks/p-271c86d3.entry.js +1 -0
  269. package/dist/sankhyablocks/p-2c08fa3e.entry.js +11 -0
  270. package/dist/sankhyablocks/p-2d6df7e7.entry.js +1 -0
  271. package/dist/sankhyablocks/{p-95df461f.entry.js → p-3749dffb.entry.js} +1 -1
  272. package/dist/sankhyablocks/p-41da5310.js +1 -0
  273. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
  274. package/dist/sankhyablocks/p-47178038.entry.js +1 -0
  275. package/dist/sankhyablocks/{p-bd008859.entry.js → p-490b75b5.entry.js} +1 -1
  276. package/dist/sankhyablocks/p-4a93daef.entry.js +1 -0
  277. package/dist/sankhyablocks/p-4e861843.entry.js +1 -0
  278. package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
  279. package/dist/sankhyablocks/p-5ffa0493.entry.js +1 -0
  280. package/dist/sankhyablocks/p-60137b7a.entry.js +1 -0
  281. package/dist/sankhyablocks/p-601b252b.js +26 -0
  282. package/dist/sankhyablocks/p-65be98c5.entry.js +1 -0
  283. package/dist/sankhyablocks/p-6a0c8ce0.entry.js +1 -0
  284. package/dist/sankhyablocks/p-6dd38d7b.js +6 -0
  285. package/dist/sankhyablocks/{p-0cd3c0a9.js → p-73285a8a.js} +1 -1
  286. package/dist/sankhyablocks/p-7993b2e3.js +60 -0
  287. package/dist/sankhyablocks/p-79f823f3.entry.js +1 -0
  288. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  289. package/dist/sankhyablocks/p-80f8c22c.js +1 -0
  290. package/dist/sankhyablocks/p-885802c3.js +1 -0
  291. package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
  292. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
  293. package/dist/sankhyablocks/p-8f3f2306.js +1 -0
  294. package/dist/sankhyablocks/p-90684a75.entry.js +1 -0
  295. package/dist/sankhyablocks/{p-b0ef4383.js → p-9261d8a0.js} +1 -1
  296. package/dist/sankhyablocks/p-a14a09c3.entry.js +1 -0
  297. package/dist/sankhyablocks/p-ad07f0c5.entry.js +1 -0
  298. package/dist/sankhyablocks/p-b0ab5066.entry.js +1 -0
  299. package/dist/sankhyablocks/p-b6200d32.entry.js +1 -0
  300. package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-c0eb761b.entry.js} +1 -1
  301. package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
  302. package/dist/sankhyablocks/p-cc8c3bca.entry.js +1 -0
  303. package/dist/sankhyablocks/p-cf1f25ed.entry.js +1 -0
  304. package/dist/sankhyablocks/p-ebdb9d89.js +1 -0
  305. package/dist/sankhyablocks/p-f4d5bb7f.js +1 -0
  306. package/dist/sankhyablocks/p-fb0f0087.js +1 -0
  307. package/dist/sankhyablocks/p-fbba7e3d.js +1 -0
  308. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  309. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  310. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  311. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  312. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  313. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  314. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  315. package/dist/types/components/snk-application/search-strategy/exec-prepared-search-plus.d.ts +5 -0
  316. package/dist/types/components/snk-application/snk-application.d.ts +55 -16
  317. package/dist/types/components/snk-attach/snk-attach.d.ts +2 -0
  318. package/dist/types/components/snk-configurator/snk-configurator.d.ts +6 -0
  319. package/dist/types/components/snk-crud/snk-crud.d.ts +30 -0
  320. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +5 -0
  321. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +20 -1
  322. package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
  323. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  324. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +9 -1
  325. package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
  326. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
  327. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  328. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  329. package/dist/types/components/snk-data-unit/MultipleUpdateHelper.d.ts +9 -0
  330. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +19 -0
  331. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +5 -3
  332. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  333. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  334. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
  335. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +7 -2
  336. package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
  337. package/dist/types/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.d.ts +2 -1
  338. package/dist/types/components/snk-grid/snk-grid.d.ts +38 -0
  339. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +1 -0
  340. package/dist/types/components/snk-layout-form-config/snk-layout-form-config.d.ts +15 -0
  341. package/dist/types/components/snk-layout-form-config/snk-view-representation/snk-view-representation.d.ts +10 -0
  342. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  343. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  344. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  345. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +36 -1
  346. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +41 -5
  347. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  348. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
  349. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  350. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +12 -0
  351. package/dist/types/components.d.ts +501 -16
  352. package/dist/types/lib/@types/index.d.ts +4 -0
  353. package/dist/types/lib/configs/LayoutFormConfig.d.ts +11 -0
  354. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
  355. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
  356. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  357. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  358. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  359. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  360. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  361. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -1
  362. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  363. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  364. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  365. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
  366. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +14 -2
  367. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  368. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +21 -2
  369. package/dist/types/lib/index.d.ts +1 -0
  370. package/dist/types/lib/message/SnkMessageBuilder.d.ts +2 -1
  371. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  372. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  373. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  374. package/dist/types/lib/utils/constants.d.ts +8 -0
  375. package/package.json +4 -3
  376. package/react/components.d.ts +5 -0
  377. package/react/components.js +5 -0
  378. package/react/components.js.map +1 -1
  379. package/dist/cjs/IExporterProvider-10b7fed5.js +0 -230
  380. package/dist/cjs/ISave-e91b70a7.js +0 -9
  381. package/dist/cjs/pesquisa-fetcher-a1d0353f.js +0 -166
  382. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  383. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  384. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  385. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  386. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  387. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  388. package/dist/components/pesquisa-fetcher.js +0 -164
  389. package/dist/esm/IExporterProvider-d597f27d.js +0 -221
  390. package/dist/esm/ISave-d8c8bc59.js +0 -9
  391. package/dist/esm/pesquisa-fetcher-a87445a0.js +0 -164
  392. package/dist/esm/snk-config-options.entry.js +0 -235
  393. package/dist/esm/snk-filter-bar.entry.js +0 -710
  394. package/dist/esm/snk-filter-item.entry.js +0 -308
  395. package/dist/esm/snk-filter-list.entry.js +0 -148
  396. package/dist/esm/snk-filter-modal.entry.js +0 -245
  397. package/dist/esm/snk-form.entry.js +0 -139
  398. package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
  399. package/dist/sankhyablocks/p-091ce761.js +0 -60
  400. package/dist/sankhyablocks/p-14b8b656.entry.js +0 -1
  401. package/dist/sankhyablocks/p-181975f1.js +0 -26
  402. package/dist/sankhyablocks/p-1e971cb0.entry.js +0 -1
  403. package/dist/sankhyablocks/p-21749402.js +0 -1
  404. package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
  405. package/dist/sankhyablocks/p-25f1fc39.js +0 -6
  406. package/dist/sankhyablocks/p-2e9c764c.entry.js +0 -1
  407. package/dist/sankhyablocks/p-30cf616e.js +0 -1
  408. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  409. package/dist/sankhyablocks/p-421bec84.entry.js +0 -1
  410. package/dist/sankhyablocks/p-42f7b05d.entry.js +0 -1
  411. package/dist/sankhyablocks/p-51999ab5.entry.js +0 -1
  412. package/dist/sankhyablocks/p-594bc21d.js +0 -1
  413. package/dist/sankhyablocks/p-5f016aed.js +0 -1
  414. package/dist/sankhyablocks/p-62f34e6f.entry.js +0 -1
  415. package/dist/sankhyablocks/p-631954eb.entry.js +0 -1
  416. package/dist/sankhyablocks/p-65f8c11c.entry.js +0 -1
  417. package/dist/sankhyablocks/p-684a2590.entry.js +0 -1
  418. package/dist/sankhyablocks/p-70001ac1.js +0 -1
  419. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  420. package/dist/sankhyablocks/p-7663f597.entry.js +0 -1
  421. package/dist/sankhyablocks/p-76a65660.js +0 -1
  422. package/dist/sankhyablocks/p-7e7a7473.js +0 -1
  423. package/dist/sankhyablocks/p-7ef9c55c.js +0 -1
  424. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  425. package/dist/sankhyablocks/p-939e15d3.entry.js +0 -1
  426. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  427. package/dist/sankhyablocks/p-9863d682.js +0 -1
  428. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  429. package/dist/sankhyablocks/p-c2495304.js +0 -1
  430. package/dist/sankhyablocks/p-c8622597.entry.js +0 -1
  431. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  432. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  433. package/dist/sankhyablocks/p-d65d98ed.entry.js +0 -1
  434. package/dist/sankhyablocks/p-d6610d11.entry.js +0 -11
  435. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  436. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  437. package/dist/sankhyablocks/p-ffa5e4ff.js +0 -1
  438. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
@@ -1,119 +1,28 @@
1
- import { ChangeOperation, DataType, DataUnit, DateUtils, StringUtils, } from '@sankhyalabs/core';
2
- import { applyFilter, applySorting, buildPaginationInfo } from './dataUnitInMemoryUtils';
1
+ import { DataUnitInMemoryLoader } from '@sankhyalabs/core';
3
2
  export default class InMemoryLoader {
4
3
  constructor(metadata, records, config) {
5
- this.metadata = metadata;
6
- this.records = records;
7
- this._dataUnit = new DataUnit(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME);
8
- this._dataUnit.pageSize = 150;
9
- this._dataUnit.metadataLoader = () => this.metadaLoader();
10
- this._dataUnit.dataLoader = (dataUnit, request) => this.inMemoryLoader(dataUnit, request, this.getRecordsToLoad());
11
- this._dataUnit.saveLoader = (_dataUnit, changes) => this.saveLoader(_dataUnit, changes);
12
- this._dataUnit.removeLoader = (_dataUnit, recordIds) => this.removeLoader(_dataUnit, recordIds);
13
- this.dataUnit.loadMetadata().then(() => {
14
- if ((config === null || config === void 0 ? void 0 : config.autoLoad) !== false) {
15
- this.dataUnit.loadData();
16
- }
17
- });
18
- }
19
- getRecordsToLoad() {
20
- if (this._initialRecords == undefined && this.dataUnit.records.length > 0) {
21
- this._initialRecords = this.dataUnit.records;
22
- }
23
- const addedRecords = this.dataUnit.getAddedRecords();
24
- if (addedRecords) {
25
- return [...this._initialRecords, ...addedRecords];
26
- }
27
- return this._initialRecords;
4
+ this._dataUnitInMemoryLoader = new DataUnitInMemoryLoader(metadata, records, config);
28
5
  }
29
6
  get dataUnit() {
30
- return this._dataUnit;
7
+ return this._dataUnitInMemoryLoader.dataUnit;
31
8
  }
32
9
  get records() {
33
- return this.dataUnit.records;
34
- }
35
- static getConvertedValue(descriptor, strValue) {
36
- if (descriptor.dataType === DataType.BOOLEAN) {
37
- return strValue === "S";
38
- }
39
- if (descriptor.dataType === DataType.NUMBER) {
40
- return Number(strValue);
41
- }
42
- if (descriptor.dataType === DataType.DATE) {
43
- return DateUtils.strToDate(strValue, true);
44
- }
45
- if (descriptor.dataType === DataType.OBJECT) {
46
- return JSON.parse(strValue);
47
- }
48
- return strValue;
10
+ return this._dataUnitInMemoryLoader.records;
49
11
  }
50
12
  set records(records) {
51
- const columns = this._metadata ? new Map(this._metadata.fields.map(descriptor => [descriptor.name, descriptor])) : undefined;
52
- const newRecords = records === null || records === void 0 ? void 0 : records.map(record => {
53
- if (!record["__record__id__"]) {
54
- record["__record__id__"] = this.generateUniqueId();
55
- }
56
- if (columns != undefined) {
57
- for (const name in record) {
58
- const value = record[name];
59
- if (typeof value === "string" && columns.has(name)) {
60
- record[name] = InMemoryLoader.getConvertedValue(columns.get(name), value);
61
- }
62
- }
63
- }
64
- return record;
65
- });
66
- this._initialRecords = newRecords;
67
- if (this._dataUnit) {
68
- //Isso força o refresh internamente no datunit
69
- this._dataUnit.loadData();
70
- }
13
+ this._dataUnitInMemoryLoader.records = records;
71
14
  }
72
15
  get metadata() {
73
- return this._metadata;
16
+ return this._dataUnitInMemoryLoader.metadata;
74
17
  }
75
18
  set metadata(metadata) {
76
- this._metadata = metadata;
77
- if (this._dataUnit) {
78
- this._dataUnit.metadata = this._metadata;
79
- }
80
- }
81
- generateUniqueId() {
82
- return StringUtils.generateUUID();
83
- }
84
- inMemoryLoader(dataUnit, request, recordsIn) {
85
- let records = applyFilter(recordsIn, dataUnit, request.filters);
86
- records = applySorting(records, dataUnit, request.sort);
87
- return Promise.resolve({ records, paginationInfo: buildPaginationInfo(records, request.offset, request.limit) });
88
- }
89
- metadaLoader() {
90
- return Promise.resolve(this._metadata);
91
- }
92
- saveLoader(_dataUnit, changes) {
93
- return new Promise((resolve) => {
94
- let dataUnitRecords = [];
95
- changes.forEach(change => {
96
- let { record, updatingFields, operation } = change;
97
- const changedRecord = Object.assign(Object.assign({}, record), updatingFields);
98
- if (operation === ChangeOperation.INSERT ||
99
- operation === ChangeOperation.COPY) {
100
- changedRecord["__old__id__"] = record["__record__id__"];
101
- changedRecord["__record__id__"] = this.generateUniqueId();
102
- this.records.push(changedRecord);
103
- }
104
- else {
105
- const recordIndex = this.records.findIndex(r => r["__record__id__"] == changedRecord["__record__id__"]);
106
- this.records[recordIndex] = changedRecord;
107
- }
108
- dataUnitRecords.push(changedRecord);
109
- });
110
- resolve(dataUnitRecords);
111
- });
19
+ this._dataUnitInMemoryLoader.metadata = metadata;
112
20
  }
113
21
  removeLoader(_dataUnit, recordIds) {
114
- return new Promise((resolve) => {
115
- resolve(recordIds);
116
- });
22
+ return this._dataUnitInMemoryLoader.removeLoader(_dataUnit, recordIds);
23
+ }
24
+ static getConvertedValue(descriptor, strValue, dateFormat) {
25
+ return DataUnitInMemoryLoader.getConvertedValue(descriptor, strValue, dateFormat);
117
26
  }
118
27
  }
119
- InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = "InMemoryDataUnit";
28
+ InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = DataUnitInMemoryLoader.IN_MEMORY_DATA_UNIT_NAME;
@@ -1,37 +1,16 @@
1
- import { ColumnFilterManager } from '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
2
- import PreloadManager from '../http/data-fetcher/fetchers/data-unit/cache/PreloadManager';
1
+ import { DataUnitLoaderUtils, } from '@sankhyalabs/core';
3
2
  export function applyFilter(records, dataUnit, filters) {
4
- const columnFilters = ColumnFilterManager.getColumnFilters(filters, "");
5
- if (!(columnFilters === null || columnFilters === void 0 ? void 0 : columnFilters.size)) {
6
- return records;
7
- }
8
- const filterFunction = ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values()));
9
- if (filterFunction == undefined) {
10
- return records;
11
- }
12
- return records.filter(filterFunction);
3
+ return DataUnitLoaderUtils.applyFilter(records, dataUnit, filters);
4
+ }
5
+ export function buildLoadDataResponse(recordsIn, dataUnit, request) {
6
+ return DataUnitLoaderUtils.buildLoadDataResponse(recordsIn, dataUnit, request);
13
7
  }
14
8
  export function applySorting(records, dataUnit, sorting) {
15
- if (sorting == undefined || sorting.length == 0) {
16
- return records;
17
- }
18
- const sortingFunction = PreloadManager.getSortingFunction(dataUnit, sorting);
19
- if (sortingFunction == undefined) {
20
- return records;
21
- }
22
- return records.sort(sortingFunction);
9
+ return DataUnitLoaderUtils.applySorting(records, dataUnit, sorting);
10
+ }
11
+ export function getPagesByRecords(records, offset = 0, limit = 0) {
12
+ return DataUnitLoaderUtils.getPagesByRecords(records, offset, limit);
23
13
  }
24
- export function buildPaginationInfo(records, offset = 0, limit = 0) {
25
- if (records === undefined) {
26
- return undefined;
27
- }
28
- const total = (records === null || records === void 0 ? void 0 : records.length) || 0;
29
- const lastRecord = Math.min(offset + limit, total);
30
- return {
31
- currentPage: limit === 0 ? 0 : Math.ceil(offset / limit),
32
- firstRecord: offset,
33
- lastRecord: lastRecord,
34
- total: total,
35
- hasMore: !!(total - lastRecord),
36
- };
14
+ export function buildPaginationInfo({ recordsLength = 0, offset = 0, recordsPerPage = 0, }) {
15
+ return DataUnitLoaderUtils.buildPaginationInfo({ recordsLength, offset, recordsPerPage });
37
16
  }
@@ -6,7 +6,7 @@ var __asyncValues = (this && this.__asyncValues) || function (o) {
6
6
  function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
7
7
  function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
8
8
  };
9
- import { ApplicationContext, ErrorException, ServiceCanceledException, ObjectUtils, StringUtils, WarningException } from '@sankhyalabs/core';
9
+ import { ApplicationContext, ErrorException, ObjectUtils, ServiceCanceledException, StringUtils, WarningException } from '@sankhyalabs/core';
10
10
  import { batchRequests } from 'graphql-request';
11
11
  import UrlUtils from "../../../lib/utils/urlutils";
12
12
  import { PrintUtils } from '../../utils/PrintUtils';
@@ -61,7 +61,13 @@ export class DataFetcher {
61
61
  if (error.length > 0) { //As informações do erro vem no primeiro indice de um array
62
62
  const errorInfo = error[POSITION_ERROR_INFO];
63
63
  const errorMessage = (errorInfo === null || errorInfo === void 0 ? void 0 : errorInfo.message) ? errorInfo === null || errorInfo === void 0 ? void 0 : errorInfo.message : "Não há mensagem de erro";
64
- const errorLevel = ((_a = errorInfo === null || errorInfo === void 0 ? void 0 : errorInfo.extensions) === null || _a === void 0 ? void 0 : _a.level) ? errorInfo.extensions.level : "ERROR";
64
+ /*
65
+ No HTML5, todos os erros de Troubleshooting são considerados alerta,
66
+ pois a comparação errorLevel == ServiceProxyConstants.LEVEL.ERROR sempre é falsa
67
+ Motivo: - errorLevel é uma string "ERROR" por exemplo
68
+ - ServiceProxyConstants.LEVEL.ERROR é um numero 1, por exemplo
69
+ */
70
+ const errorLevel = ((_a = errorInfo === null || errorInfo === void 0 ? void 0 : errorInfo.extensions) === null || _a === void 0 ? void 0 : _a.level) ? "WARNING" : "ERROR";
65
71
  const errorCode = ((_b = errorInfo === null || errorInfo === void 0 ? void 0 : errorInfo.extensions) === null || _b === void 0 ? void 0 : _b.code) ? errorInfo.extensions.code : "";
66
72
  switch (errorLevel) {
67
73
  case "WARNING":
@@ -83,7 +89,13 @@ export class DataFetcher {
83
89
  let tsErrorCode, tsErrorLevel;
84
90
  if (tsError) {
85
91
  tsErrorCode = tsError.tsErrorCode;
86
- tsErrorLevel = tsError.tsErrorLevel;
92
+ /*
93
+ No HTML5, todos os erros de Troubleshooting são considerados alerta,
94
+ pois a comparação errorLevel == ServiceProxyConstants.LEVEL.ERROR sempre é falsa
95
+ Motivo: - errorLevel é uma string "ERROR" por exemplo
96
+ - ServiceProxyConstants.LEVEL.ERROR é um numero 1, por exemplo
97
+ */
98
+ tsErrorLevel = "WARNING";
87
99
  }
88
100
  if (tsErrorLevel === "WARNING") {
89
101
  return new WarningException(title, statusMessage, tsErrorCode);
@@ -266,7 +278,8 @@ export class DataFetcher {
266
278
  }
267
279
  payloadJson['requestBody']['clientEventList'].clientEvent.push({ $: key });
268
280
  }
269
- DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url: url, requestBody: payload }));
281
+ const requestId = StringUtils.generateUUID();
282
+ DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url: url, requestBody: payload, requestId }));
270
283
  http.open("POST", url, true);
271
284
  http.withCredentials = true;
272
285
  http.send(ObjectUtils.objectToString(payloadJson));
@@ -306,7 +319,7 @@ export class DataFetcher {
306
319
  else if (http.readyState == 4 && http.status != 200) {
307
320
  reject(new ErrorException(`Erro ao executar serviço: ${serviceName}`, http.responseText));
308
321
  }
309
- DataFetcher.requestListener.forEach(listener => listener.onRequestEnd({ url: url, requestBody: payload }));
322
+ DataFetcher.requestListener.forEach(listener => listener.onRequestEnd({ url: url, requestBody: payload, requestId }));
310
323
  };
311
324
  });
312
325
  }
@@ -352,6 +365,7 @@ export class DataFetcher {
352
365
  }
353
366
  }
354
367
  async executePendingRequest(watingRequestsById) {
368
+ var _a, _b;
355
369
  const requestsBatch = [];
356
370
  let quietMode = true;
357
371
  watingRequestsById.forEach((waitingReq) => {
@@ -362,36 +376,36 @@ export class DataFetcher {
362
376
  const response = await this.fecthGraphQL(requestsBatch, quietMode);
363
377
  const { data: dataResponse, errors: errorsResponse, extensions } = response;
364
378
  //Reject promises with errors from query
365
- errorsResponse.forEach((errorResponse) => {
366
- Object.entries(errorResponse).forEach(async ([key, val]) => {
367
- const waitingRequest = watingRequestsById.get(val.request.variables[val.index].queryID);
379
+ for (const errorResponse of errorsResponse) {
380
+ const values = Object.values(errorResponse);
381
+ for (const value of values) {
382
+ const waitingRequest = watingRequestsById.get(value.request.variables[value.index].queryID);
368
383
  const hasClientEvent = await this.proccesGraphQLClientEvents(extensions, waitingRequest.request, waitingRequest.resolve, waitingRequest.reject);
369
- Promise.race([
384
+ const data = await Promise.race([
370
385
  waitingRequest.promise,
371
386
  new Promise((resolve) => {
372
387
  resolve(false);
373
388
  })
374
- ]).then((data) => {
375
- var _a, _b;
376
- if (!hasClientEvent || data === false) {
377
- if (Object.keys(errorResponse[0].extensions).includes("SERVICE_CANCELED") || Object.keys(extensions).includes("isServiceCancelled")) {
378
- (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ServiceCanceledException("Service canceled", val.message));
379
- }
380
- else {
381
- (((_b = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _b === void 0 ? void 0 : _b.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
382
- }
389
+ ]);
390
+ if (!hasClientEvent || data === false) {
391
+ if (Object.keys(errorResponse[0].extensions).includes("SERVICE_CANCELED") || Object.keys(extensions).includes("isServiceCancelled")) {
392
+ (((_a = watingRequestsById.get(value.request.variables[value.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ServiceCanceledException("Service canceled", value.message));
383
393
  }
384
- });
385
- });
386
- });
394
+ else {
395
+ (((_b = watingRequestsById.get(value.request.variables[value.index].queryID)) === null || _b === void 0 ? void 0 : _b.reject) || Promise.reject)(new ErrorException("Falha detectada", value.message));
396
+ }
397
+ }
398
+ }
399
+ }
387
400
  //Resolve promises with data from query
388
- dataResponse.forEach((data) => {
389
- Object.entries(data).forEach(async ([key, val]) => {
401
+ for (const data of dataResponse) {
402
+ const entries = Object.entries(data);
403
+ for (const [key, val] of entries) {
390
404
  const waitingRequest = watingRequestsById.get(key);
391
405
  await this.proccesGraphQLClientEvents(extensions, waitingRequest.request, waitingRequest.resolve, waitingRequest.reject);
392
406
  ((waitingRequest === null || waitingRequest === void 0 ? void 0 : waitingRequest.resolve) || Promise.resolve)(val);
393
- });
394
- });
407
+ }
408
+ }
395
409
  }
396
410
  buildGraphQlURL(quietMode) {
397
411
  const urlParams = UrlUtils.getQueryParams(location.search);
@@ -410,9 +424,10 @@ export class DataFetcher {
410
424
  const errorsResponse = [];
411
425
  const responseExtensions = [];
412
426
  const url = this.buildGraphQlURL(quietMode);
413
- DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url, requestBody: request }));
427
+ const requestId = StringUtils.generateUUID();
428
+ DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url, requestBody: request, requestId }));
414
429
  try {
415
- const response = await batchRequests(url, request, { 'Content-Type': `application/json; charset=${window['SERVER_ENCODING'] || 'UTF-8'}` });
430
+ const response = await batchRequests(url, request, { 'Content-Type': `application/json; charset=UTF-8` });
416
431
  response.forEach((resItem, index) => {
417
432
  var _a;
418
433
  if (((_a = resItem === null || resItem === void 0 ? void 0 : resItem.errors) === null || _a === void 0 ? void 0 : _a.length) > 0) {
@@ -444,11 +459,11 @@ export class DataFetcher {
444
459
  });
445
460
  }
446
461
  else {
447
- DataFetcher.requestListener.forEach(listener => listener.onRequestEnd({ url, requestBody: request }));
462
+ DataFetcher.requestListener.forEach(listener => listener.onRequestEnd({ url, requestBody: request, requestId }));
448
463
  throw new ErrorException("Falha de comunicação", err.message);
449
464
  }
450
465
  }
451
- DataFetcher.requestListener.forEach(listener => listener.onRequestEnd({ url, requestBody: request }));
466
+ DataFetcher.requestListener.forEach(listener => listener.onRequestEnd({ url, requestBody: request, requestId }));
452
467
  return { data: dataResponse, errors: errorsResponse, extensions: responseExtensions };
453
468
  }
454
469
  isHttpError(err) {
@@ -6,21 +6,23 @@ const SERVICE = {
6
6
  download: "AnexoSistemaSP.baixar",
7
7
  };
8
8
  export class AnexoSistemaFetcher {
9
- constructor(entityName, registerKey, dataUnitName) {
9
+ constructor(entityName, dataUnitName) {
10
10
  var _a;
11
11
  this.entityName = entityName;
12
- this.registerKey = registerKey;
13
12
  this.dataUnitName = dataUnitName;
14
13
  this.validateFields = (fields) => {
15
14
  if (!!fields.LINK && !!fields.NOMEARQUIVO)
16
15
  throw new Error(SaveErrorsEnum.LINK_AND_FILE_AT_THE_SAME_TIME);
17
16
  if (!fields.LINK && !fields.NOMEARQUIVO)
18
17
  throw new Error(SaveErrorsEnum.ANY_LINK_OR_FILE_FILLED);
19
- if (!this.registerKey)
18
+ if (!this._registerKey)
20
19
  throw new Error('Register key can not be null');
21
20
  };
22
21
  this.resourceID = (window["resourceID"] || ((_a = window["workspace"]) === null || _a === void 0 ? void 0 : _a.resourceID));
23
22
  }
23
+ set registerKey(registerKey) {
24
+ this._registerKey = registerKey;
25
+ }
24
26
  async save(change) {
25
27
  var _a, _b;
26
28
  let { updatingFields: fields } = change;
@@ -39,7 +41,7 @@ export class AnexoSistemaFetcher {
39
41
  nameAttach: fileInfo === null || fileInfo === void 0 ? void 0 : fileInfo.name,
40
42
  link: fields.LINK,
41
43
  nameEntity: this.entityName,
42
- pkEntity: this.registerKey,
44
+ pkEntity: this._registerKey,
43
45
  typeAcess: fields.TIPOACESSO,
44
46
  typeApres: fields.TIPOAPRES,
45
47
  }
@@ -79,7 +81,7 @@ export class AnexoSistemaFetcher {
79
81
  nameAttach: fileInfo === null || fileInfo === void 0 ? void 0 : fileInfo.name,
80
82
  link: fields.LINK,
81
83
  nameEntity: this.entityName,
82
- pkEntity: this.registerKey,
84
+ pkEntity: this._registerKey,
83
85
  typeAcess: fields.TIPOACESSO,
84
86
  typeApres: fields.TIPOAPRES,
85
87
  }
@@ -1,6 +1,8 @@
1
1
  import PreloadManager from "./cache/PreloadManager";
2
2
  import { DatasetStrategy } from "./loadstrategy/DatasetStrategy";
3
+ import { CancelPaginationResponse, showAskCancelPaginationPopup } from './helpers/DataUnitDataLoaderHelper';
3
4
  export default class DataUnitDataLoader {
5
+ constructor() { }
4
6
  static async debounce(dataUnit, callBack) {
5
7
  const duName = dataUnit.name;
6
8
  if (DataUnitDataLoader._debouncingTimeouts[duName]) {
@@ -46,25 +48,67 @@ export default class DataUnitDataLoader {
46
48
  }
47
49
  static async callLoader(dataUnit, request, requestLoadingInfo, dataLoader) {
48
50
  if (dataLoader == undefined) {
49
- //dataLoader = new DataUnitStrategy();
50
51
  dataLoader = new DatasetStrategy();
51
52
  }
52
53
  const result = await dataLoader.load(dataUnit, request, requestLoadingInfo);
53
- const { records, loadingInfo: responseLoadingInfo } = result;
54
- if (DataUnitDataLoader.isOldRequest(dataUnit, responseLoadingInfo)) {
54
+ const responseLoadingInfo = result.loadingInfo;
55
+ if (DataUnitDataLoader.isOldRequest(dataUnit, responseLoadingInfo))
55
56
  return Promise.resolve(undefined);
57
+ this.handleCache(dataLoader, responseLoadingInfo, dataUnit, result.records);
58
+ if (dataUnit.cancelPagination)
59
+ return this.handlePaginationCanceled(dataUnit, result);
60
+ //Não existem mais páginas a serem carregadas
61
+ if (this.canFinishPagination(dataUnit, responseLoadingInfo))
62
+ return Promise.resolve(result);
63
+ const newRequest = Object.assign(Object.assign({}, request), { offset: responseLoadingInfo.count });
64
+ let newLoadingInfo = this.buildNewLoadingInfo(responseLoadingInfo);
65
+ if (this.canProceedPagination(responseLoadingInfo))
66
+ return this.recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result);
67
+ const confirm = await showAskCancelPaginationPopup();
68
+ if (confirm === CancelPaginationResponse.CANCEL)
69
+ return this.handlePaginationCanceled(dataUnit, result);
70
+ if (confirm === CancelPaginationResponse.LOAD_ALL) {
71
+ newLoadingInfo = Object.assign(Object.assign({}, newLoadingInfo), { loadAllRecords: true });
56
72
  }
73
+ newLoadingInfo = Object.assign(Object.assign({}, newLoadingInfo), { lastRowLimitAsked: newLoadingInfo.count });
74
+ return this.recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result);
75
+ }
76
+ static buildNewLoadingInfo(responseLoadingInfo) {
77
+ let newLoadingInfo = Object.assign(Object.assign({}, responseLoadingInfo), { pageNumber: (responseLoadingInfo.pageNumber || 0) + 1, quiet: true });
78
+ return newLoadingInfo;
79
+ }
80
+ static handleCache(dataLoader, responseLoadingInfo, dataUnit, records) {
57
81
  const recreateCache = !dataLoader.canSlice() || responseLoadingInfo.count === 0;
58
82
  PreloadManager.cacheRecords(dataUnit, records, recreateCache, responseLoadingInfo.loadingInProgress);
59
- if (PreloadManager.isCacheEnabled(dataUnit) && responseLoadingInfo.loadingInProgress) {
60
- const newRequest = Object.assign(Object.assign({}, request), { offset: responseLoadingInfo.count });
61
- const newLoadingInfo = Object.assign(Object.assign({}, responseLoadingInfo), { pageNumber: (responseLoadingInfo.pageNumber || 0) + 1, quiet: true });
62
- this.callLoader(dataUnit, newRequest, newLoadingInfo, dataLoader)
63
- .then(result => DataUnitDataLoader.afterLoadingPage(dataUnit, result.loadingInfo))
64
- .catch(reason => console.error(reason));
65
- }
83
+ }
84
+ static recallLoader(dataUnit, newRequest, newLoadingInfo, dataLoader, result) {
85
+ this.callLoader(dataUnit, newRequest, newLoadingInfo, dataLoader)
86
+ .then(result => DataUnitDataLoader.afterLoadingPage(dataUnit, result.loadingInfo))
87
+ .catch(reason => console.error(reason));
66
88
  return Promise.resolve(result);
67
89
  }
90
+ static canFinishPagination(dataUnit, responseLoadingInfo) {
91
+ return !PreloadManager.isCacheEnabled(dataUnit) || !responseLoadingInfo.loadingInProgress;
92
+ }
93
+ static canProceedPagination(info) {
94
+ const { count, askRowsLimit, loadAllRecords, lastRowLimitAsked } = info;
95
+ if (loadAllRecords)
96
+ return true;
97
+ if (!count || !askRowsLimit)
98
+ return true;
99
+ const askRowLimitNumber = Number(askRowsLimit);
100
+ if (count < askRowLimitNumber)
101
+ return true;
102
+ const nextLimitToAsk = askRowLimitNumber + (lastRowLimitAsked ? lastRowLimitAsked : 0);
103
+ return count < nextLimitToAsk;
104
+ }
105
+ static handlePaginationCanceled(dataUnit, result) {
106
+ dataUnit.cancelPagination = false;
107
+ let loadingInfo = result.loadingInfo;
108
+ loadingInfo = Object.assign(Object.assign({}, loadingInfo), { total: loadingInfo.count, loadingInProgress: false, pagerId: undefined, needReload: loadingInfo.hasLocalSorting });
109
+ const loadDataResult = { records: result.records, loadingInfo };
110
+ return Promise.resolve(loadDataResult);
111
+ }
68
112
  static afterLoadingPage(dataUnit, loadingInfo) {
69
113
  PreloadManager.setLoadingStatus(dataUnit, loadingInfo.loadingInProgress);
70
114
  const dataUnitPagination = dataUnit.getPaginationInfo();
@@ -73,7 +117,7 @@ export default class DataUnitDataLoader {
73
117
  }
74
118
  const count = loadingInfo.count;
75
119
  if (loadingInfo.loadingInProgress) {
76
- dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count }));
120
+ dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { count, loadingInProgress: true }));
77
121
  return;
78
122
  }
79
123
  if (loadingInfo.needReload) {
@@ -81,7 +125,7 @@ export default class DataUnitDataLoader {
81
125
  dataUnit.gotoPage(0);
82
126
  return;
83
127
  }
84
- dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count }));
128
+ dataUnit.updatePagination(Object.assign(Object.assign({}, dataUnitPagination), { total: count, count, loadingInProgress: false }));
85
129
  }
86
130
  static registryLoading(dataUnit, loadingInfo) {
87
131
  if (loadingInfo == undefined) {
@@ -104,7 +148,7 @@ export default class DataUnitDataLoader {
104
148
  // controle de paginação voltar pra primeira página.
105
149
  offset = 0;
106
150
  }
107
- const { total, count, loadingInProgress } = loadingInfo;
151
+ const { total, count, loadingInProgress, askRowsLimit } = loadingInfo;
108
152
  const firstRecord = (count === 0 || pageSize === 0) ? 0 : offset + 1;
109
153
  const lastRecord = offset + Math.min(pageSize, limit);
110
154
  return {
@@ -113,7 +157,8 @@ export default class DataUnitDataLoader {
113
157
  lastRecord,
114
158
  firstRecord,
115
159
  currentPage: offset / limit,
116
- hasMore: lastRecord < count || loadingInProgress
160
+ hasMore: lastRecord < count || loadingInProgress,
161
+ askRowsLimit
117
162
  };
118
163
  }
119
164
  }
@@ -2,6 +2,9 @@ import { ObjectUtils } from "@sankhyalabs/core";
2
2
  export class ArrayRepository {
3
3
  constructor(equalsFunction) {
4
4
  this._list = [];
5
+ this._listCopy = [];
6
+ this._listLastUpdate = 0;
7
+ this._listCopyLastUpdate = 0;
5
8
  this._equalsFunction = equalsFunction;
6
9
  }
7
10
  async load(filterFunction, sortingFunction, offset, limit) {
@@ -40,13 +43,13 @@ export class ArrayRepository {
40
43
  return Promise.resolve(new Map(processedItems.map(item => [item.key, item.value])));
41
44
  }
42
45
  async push(items) {
43
- this._list.push(...items);
46
+ this.updateList([...this._list, ...items]);
44
47
  }
45
48
  async clear() {
46
- this._list = [];
49
+ this.updateList([]);
47
50
  }
48
51
  async delete(items) {
49
- this._list = this._list.filter(item => {
52
+ const list = this._list.filter(item => {
50
53
  for (const removed of items) {
51
54
  if (this._equalsFunction(item, removed)) {
52
55
  return false;
@@ -54,20 +57,23 @@ export class ArrayRepository {
54
57
  }
55
58
  return true;
56
59
  });
60
+ this.updateList(list);
57
61
  }
58
62
  async update(items) {
59
- this._list = this._list.map(existingItem => {
63
+ const list = this._list.map(existingItem => {
60
64
  const newItem = items.find(newItem => this._equalsFunction(existingItem, newItem));
61
65
  return newItem == undefined ? existingItem : newItem;
62
66
  });
67
+ this.updateList(list);
63
68
  }
64
69
  async insert(itemReference, items) {
65
70
  const itemPosition = this._list.indexOf(itemReference);
66
71
  if (itemPosition == -1) {
67
- this._list.push(...items);
72
+ this.push(items);
68
73
  return;
69
74
  }
70
- this._list = this._list.slice(0, itemPosition).concat(items).concat(this._list.slice(itemPosition));
75
+ const list = this._list.slice(0, itemPosition).concat(items).concat(this._list.slice(itemPosition));
76
+ this.updateList(list);
71
77
  }
72
78
  isOperating() {
73
79
  return true;
@@ -79,6 +85,14 @@ export class ArrayRepository {
79
85
  return Promise.resolve(this._list.length);
80
86
  }
81
87
  getFromCache() {
82
- return ObjectUtils.copy(this._list);
88
+ if (this._listLastUpdate > this._listCopyLastUpdate) {
89
+ this._listCopyLastUpdate = this._listLastUpdate;
90
+ this._listCopy = ObjectUtils.copy(this._list);
91
+ }
92
+ return this._listCopy;
93
+ }
94
+ updateList(newList) {
95
+ this._list = newList;
96
+ this._listLastUpdate = Date.now();
83
97
  }
84
98
  }
@@ -23,7 +23,7 @@ export default class PreloadManager {
23
23
  static getSortingFunction(dataUnit, sorting) {
24
24
  return SortingUtils.getSortingFunction(dataUnit, sorting);
25
25
  }
26
- static async getDistinct(dataUnit, fieldName) {
26
+ static async getDistinct(dataUnit, fieldName, onlyLabel = false) {
27
27
  if (!PreloadManager.isCacheEnabled(dataUnit)) {
28
28
  return Promise.resolve(ColumnFilterManager.compileDistinct(fieldName, dataUnit));
29
29
  }
@@ -42,7 +42,10 @@ export default class PreloadManager {
42
42
  if (fieldValue == undefined) {
43
43
  return { key: null, value: null };
44
44
  }
45
- const value = fieldValue.value != undefined ? fieldValue.value : fieldValue;
45
+ let value = fieldValue.value != undefined ? fieldValue.value : fieldValue;
46
+ if ((fieldValue === null || fieldValue === void 0 ? void 0 : fieldValue.label) && onlyLabel) {
47
+ return { key: fieldValue === null || fieldValue === void 0 ? void 0 : fieldValue.label, value: dataUnit.getFormattedValue(fieldName, value) };
48
+ }
46
49
  return { key: dataUnit.getFormattedValue(fieldName, fieldValue), value };
47
50
  })
48
51
  .then(result => {