@sankhyalabs/sankhyablocks 8.15.0-dev.8 → 8.15.0-dev.81

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 (397) hide show
  1. package/dist/cjs/{ConfigStorage-302bbbd4.js → ConfigStorage-942ce74b.js} +70 -7
  2. package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-313debd8.js} +18 -8
  3. package/dist/cjs/IExporterProvider-0c814e9a.js +230 -0
  4. package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
  5. package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
  6. package/dist/cjs/{SnkFormConfigManager-71c4768e.js → SnkFormConfigManager-52f99b4d.js} +23 -15
  7. package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-4a95fe86.js} +25 -13
  8. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-54f5ff9d.js} +1 -1
  9. package/dist/cjs/{dataunit-fetcher-14108bec.js → dataunit-fetcher-620b29a1.js} +409 -77
  10. package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-2dd00e5b.js} +13 -1
  11. package/dist/cjs/index-f9e81701.js +2 -10
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/{pesquisa-fetcher-ef050a47.js → pesquisa-fetcher-680e198f.js} +12 -13
  14. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  15. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +526 -8
  16. package/dist/cjs/snk-application.cjs.entry.js +88 -26
  17. package/dist/cjs/snk-attach.cjs.entry.js +441 -65
  18. package/dist/cjs/snk-configurator.cjs.entry.js +1 -1
  19. package/dist/cjs/snk-crud.cjs.entry.js +125 -28
  20. package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +6 -2
  21. package/dist/cjs/snk-data-exporter.cjs.entry.js +207 -83
  22. package/dist/cjs/snk-data-unit-eca53cfc.js +671 -0
  23. package/dist/cjs/snk-data-unit.cjs.entry.js +11 -2
  24. package/dist/cjs/snk-detail-view.cjs.entry.js +52 -13
  25. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  26. package/dist/cjs/snk-filter-bar.cjs.entry.js +65 -8
  27. package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -1
  28. package/dist/cjs/snk-filter-item.cjs.entry.js +13 -6
  29. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  30. package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -1
  31. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
  32. package/dist/cjs/snk-form-config.cjs.entry.js +47 -27
  33. package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
  34. package/dist/cjs/snk-form.cjs.entry.js +60 -8
  35. package/dist/cjs/snk-grid.cjs.entry.js +200 -122
  36. package/dist/cjs/{snk-guides-viewer-c8b9374f.js → snk-guides-viewer-5d5f0f25.js} +56 -20
  37. package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -10
  38. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  39. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  40. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  41. package/dist/cjs/snk-simple-crud.cjs.entry.js +512 -40
  42. package/dist/cjs/snk-taskbar.cjs.entry.js +164 -21
  43. package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-d9392685.js} +11 -11
  44. package/dist/collection/collection-manifest.json +8 -8
  45. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  46. package/dist/collection/components/snk-application/snk-application.js +148 -24
  47. package/dist/collection/components/snk-attach/snk-attach.js +231 -44
  48. package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
  49. package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
  50. package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
  51. package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
  52. package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
  53. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +118 -0
  54. package/dist/collection/components/snk-attach/structure/index.js +6 -3
  55. package/dist/collection/components/snk-configurator/snk-configurator.js +1 -1
  56. package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
  57. package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
  58. package/dist/collection/components/snk-crud/snk-crud.js +359 -19
  59. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +137 -2
  60. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
  61. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  62. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +163 -13
  63. package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.css +1 -1
  64. package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.js +22 -1
  65. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
  66. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
  67. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
  68. package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
  69. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
  70. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
  71. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +44 -50
  72. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
  73. package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
  74. package/dist/collection/components/snk-data-unit/snk-data-unit.js +501 -216
  75. package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
  76. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  77. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
  78. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  79. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +22 -1
  80. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +31 -6
  81. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +19 -1
  82. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +24 -1
  83. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +175 -3
  84. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
  85. package/dist/collection/components/snk-form/snk-form.js +126 -5
  86. package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +22 -14
  87. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
  88. package/dist/collection/components/snk-grid/snk-grid.js +360 -115
  89. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  90. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  91. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
  92. package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
  93. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +10 -2
  94. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +847 -23
  95. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +4 -2
  96. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -11
  97. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  98. package/dist/collection/components/snk-taskbar/snk-taskbar.js +218 -20
  99. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
  100. package/dist/collection/lib/configs/ConfigStorage.js +63 -3
  101. package/dist/collection/lib/dataUnit/InMemoryLoader.js +15 -42
  102. package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
  103. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +33 -0
  104. package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
  105. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +18 -8
  106. package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
  107. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
  108. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
  109. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
  110. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
  111. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
  112. package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
  113. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
  114. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
  115. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
  116. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +30 -2
  117. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
  118. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
  119. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +87 -24
  120. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
  121. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +12 -0
  122. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  123. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  124. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +12 -13
  125. package/dist/collection/lib/index.js +1 -1
  126. package/dist/collection/lib/message/SnkMessageBuilder.js +25 -32
  127. package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
  128. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
  129. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -0
  130. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +4 -0
  131. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  132. package/dist/components/ConfigStorage.js +68 -5
  133. package/dist/components/DataFetcher.js +18 -8
  134. package/dist/components/IExporterProvider.js +298 -0
  135. package/dist/components/ISave.js +42 -0
  136. package/dist/components/SnkFormConfigManager.js +21 -13
  137. package/dist/components/SnkMessageBuilder.js +25 -13
  138. package/dist/components/dataunit-fetcher.js +185 -241
  139. package/dist/components/form-config-fetcher.js +12 -0
  140. package/dist/components/index.d.ts +6 -6
  141. package/dist/components/index2.js +198 -33
  142. package/dist/{esm/pesquisa-fetcher-dd3ca0a5.js → components/pesquisa-fetcher.js} +13 -14
  143. package/dist/components/snk-actions-button2.js +4 -10
  144. package/dist/components/snk-application2.js +86 -20
  145. package/dist/components/snk-attach2.js +496 -72
  146. package/dist/components/snk-configurator2.js +1 -1
  147. package/dist/components/snk-crud.js +133 -23
  148. package/dist/components/snk-custom-slot-elements.js +7 -3
  149. package/dist/components/snk-data-exporter2.js +202 -83
  150. package/dist/components/snk-data-unit2.js +464 -214
  151. package/dist/components/snk-detail-view2.js +137 -23
  152. package/dist/components/snk-entity-list.js +5 -3
  153. package/dist/components/snk-expression-item2.js +1 -1
  154. package/dist/components/snk-filter-bar2.js +69 -6
  155. package/dist/components/snk-filter-detail2.js +5 -1
  156. package/dist/components/snk-filter-item2.js +14 -6
  157. package/dist/components/snk-filter-modal.js +4 -2
  158. package/dist/components/snk-filter-multi-select.js +2 -1
  159. package/dist/components/snk-form-config2.js +46 -26
  160. package/dist/components/snk-form-view2.js +72 -1
  161. package/dist/components/snk-form.js +60 -5
  162. package/dist/components/snk-grid-config2.js +128 -102
  163. package/dist/components/snk-grid2.js +209 -119
  164. package/dist/components/snk-personalized-filter-editor.js +3 -1
  165. package/dist/components/snk-personalized-filter2.js +1 -1
  166. package/dist/components/snk-pesquisa2.js +1 -1
  167. package/dist/components/snk-simple-crud2.js +574 -36
  168. package/dist/components/snk-taskbar2.js +186 -36
  169. package/dist/components/taskbar-actions-button2.js +4 -2
  170. package/dist/esm/{ConfigStorage-4151acc8.js → ConfigStorage-86187da3.js} +70 -7
  171. package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-c1baf61d.js} +18 -8
  172. package/dist/esm/IExporterProvider-c0194569.js +221 -0
  173. package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
  174. package/dist/esm/RecordIDUtils-87d02110.js +41 -0
  175. package/dist/esm/{SnkFormConfigManager-5c7d3771.js → SnkFormConfigManager-5b0d69cd.js} +23 -15
  176. package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-3a767111.js} +25 -13
  177. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-039abba3.js} +1 -1
  178. package/dist/esm/{dataunit-fetcher-cbec1594.js → dataunit-fetcher-3fbf9d12.js} +392 -70
  179. package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-30fb808f.js} +13 -1
  180. package/dist/esm/index-a7d3d3f1.js +2 -10
  181. package/dist/esm/loader.js +1 -1
  182. package/dist/esm/pesquisa-fetcher-03c8f919.js +164 -0
  183. package/dist/esm/sankhyablocks.js +1 -1
  184. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +525 -9
  185. package/dist/esm/snk-application.entry.js +88 -26
  186. package/dist/esm/snk-attach.entry.js +441 -65
  187. package/dist/esm/snk-configurator.entry.js +1 -1
  188. package/dist/esm/snk-crud.entry.js +125 -28
  189. package/dist/esm/snk-custom-slot-elements.entry.js +7 -3
  190. package/dist/esm/snk-data-exporter.entry.js +208 -84
  191. package/dist/esm/snk-data-unit-49b898f7.js +669 -0
  192. package/dist/esm/snk-data-unit.entry.js +11 -2
  193. package/dist/esm/snk-detail-view.entry.js +52 -13
  194. package/dist/esm/snk-entity-list.entry.js +5 -3
  195. package/dist/esm/snk-filter-bar.entry.js +65 -8
  196. package/dist/esm/snk-filter-detail.entry.js +4 -1
  197. package/dist/esm/snk-filter-item.entry.js +13 -6
  198. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  199. package/dist/esm/snk-filter-modal.entry.js +2 -1
  200. package/dist/esm/snk-filter-multi-select.entry.js +2 -1
  201. package/dist/esm/snk-form-config.entry.js +48 -28
  202. package/dist/esm/snk-form-view.entry.js +67 -0
  203. package/dist/esm/snk-form.entry.js +60 -8
  204. package/dist/esm/snk-grid.entry.js +200 -122
  205. package/dist/esm/{snk-guides-viewer-8da24475.js → snk-guides-viewer-ef8c4eec.js} +56 -20
  206. package/dist/esm/snk-guides-viewer.entry.js +10 -10
  207. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  208. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  209. package/dist/esm/snk-pesquisa.entry.js +1 -1
  210. package/dist/esm/snk-simple-crud.entry.js +505 -33
  211. package/dist/esm/snk-taskbar.entry.js +165 -22
  212. package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-ad766858.js} +11 -11
  213. package/dist/sankhyablocks/p-039c7148.entry.js +1 -0
  214. package/dist/sankhyablocks/p-04821c60.entry.js +1 -0
  215. package/dist/sankhyablocks/p-060fdb6c.js +1 -0
  216. package/dist/sankhyablocks/p-14a08904.entry.js +1 -0
  217. package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
  218. package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
  219. package/dist/sankhyablocks/p-21a81901.entry.js +1 -0
  220. package/dist/sankhyablocks/p-294df368.entry.js +1 -0
  221. package/dist/sankhyablocks/p-2ac8bd11.entry.js +1 -0
  222. package/dist/sankhyablocks/p-32062be4.entry.js +1 -0
  223. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  224. package/dist/sankhyablocks/p-3f1efb97.entry.js +1 -0
  225. package/dist/sankhyablocks/p-47b60deb.entry.js +1 -0
  226. package/dist/sankhyablocks/p-4ce73e88.js +1 -0
  227. package/dist/sankhyablocks/p-54a5d52a.entry.js +1 -0
  228. package/dist/sankhyablocks/p-58687027.entry.js +1 -0
  229. package/dist/sankhyablocks/p-5fa1576b.entry.js +11 -0
  230. package/dist/sankhyablocks/p-61dd89eb.js +1 -0
  231. package/dist/sankhyablocks/p-672302c3.js +60 -0
  232. package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
  233. package/dist/sankhyablocks/p-7663f597.entry.js +1 -0
  234. package/dist/sankhyablocks/p-8322ccdb.entry.js +1 -0
  235. package/dist/sankhyablocks/p-913a9979.js +1 -0
  236. package/dist/sankhyablocks/p-9863d682.js +1 -0
  237. package/dist/sankhyablocks/{p-e0fd9555.entry.js → p-a1d72395.entry.js} +1 -1
  238. package/dist/sankhyablocks/p-a64baa0f.entry.js +1 -0
  239. package/dist/sankhyablocks/p-af8efd95.js +6 -0
  240. package/dist/sankhyablocks/p-aff76a53.js +56 -0
  241. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  242. package/dist/sankhyablocks/p-ba05fdb8.entry.js +1 -0
  243. package/dist/sankhyablocks/p-babe7665.js +1 -0
  244. package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
  245. package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
  246. package/dist/sankhyablocks/p-d26365ad.js +1 -0
  247. package/dist/sankhyablocks/{p-9695f78b.js → p-dc7c9047.js} +1 -1
  248. package/dist/sankhyablocks/p-df5451c7.js +26 -0
  249. package/dist/sankhyablocks/p-e5c25e0b.entry.js +1 -0
  250. package/dist/sankhyablocks/p-e8763234.entry.js +1 -0
  251. package/dist/sankhyablocks/{p-7f3c7b09.entry.js → p-eae7a817.entry.js} +1 -1
  252. package/dist/sankhyablocks/p-f88cfc3c.js +1 -0
  253. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  254. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  255. package/dist/types/components/snk-application/snk-application.d.ts +27 -5
  256. package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
  257. package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
  258. package/dist/types/components/snk-attach/snk-attach.d.ts +34 -10
  259. package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
  260. package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +40 -0
  261. package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
  262. package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
  263. package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
  264. package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +16 -0
  265. package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
  266. package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
  267. package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
  268. package/dist/types/components/snk-crud/snk-crud.d.ts +57 -1
  269. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +24 -1
  270. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
  271. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +30 -1
  272. package/dist/types/components/snk-custom-slot-elements/snk-custom-slot-elements.d.ts +6 -0
  273. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
  274. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
  275. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
  276. package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
  277. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
  278. package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
  279. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
  280. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
  281. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
  282. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +61 -2
  283. package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
  284. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +4 -0
  285. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +7 -3
  286. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +5 -0
  287. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +31 -1
  288. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
  289. package/dist/types/components/snk-form/snk-form.d.ts +20 -1
  290. package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +2 -1
  291. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
  292. package/dist/types/components/snk-grid/snk-grid.d.ts +69 -7
  293. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  294. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  295. package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
  296. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +142 -6
  297. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
  298. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +38 -1
  299. package/dist/types/components.d.ts +536 -18
  300. package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
  301. package/dist/types/lib/configs/ConfigStorage.d.ts +21 -1
  302. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -3
  303. package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
  304. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +4 -0
  305. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
  306. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  307. package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
  308. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
  309. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
  310. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
  311. package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
  312. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
  313. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
  314. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  315. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
  316. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
  317. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
  318. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +7 -0
  319. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
  320. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
  321. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +2 -0
  322. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  323. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  324. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
  325. package/dist/types/lib/index.d.ts +1 -1
  326. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  327. package/package.json +15 -6
  328. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  329. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  330. package/dist/cjs/snk-data-unit-1bc69073.js +0 -462
  331. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  332. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  333. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
  334. package/dist/components/field-search.js +0 -121
  335. package/dist/components/index3.js +0 -199
  336. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  337. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  338. package/dist/esm/snk-data-unit-6208ebf0.js +0 -460
  339. package/dist/esm/snk-grid-config.entry.js +0 -479
  340. package/dist/esm/snk-select-box.entry.js +0 -21
  341. package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
  342. package/dist/sankhyablocks/p-0874adb5.entry.js +0 -1
  343. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  344. package/dist/sankhyablocks/p-0d7863ed.js +0 -26
  345. package/dist/sankhyablocks/p-1d75d9f9.entry.js +0 -1
  346. package/dist/sankhyablocks/p-20726710.entry.js +0 -1
  347. package/dist/sankhyablocks/p-25927311.entry.js +0 -1
  348. package/dist/sankhyablocks/p-32f0935f.js +0 -1
  349. package/dist/sankhyablocks/p-374d03f6.js +0 -1
  350. package/dist/sankhyablocks/p-3891ae6f.js +0 -60
  351. package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
  352. package/dist/sankhyablocks/p-573a07c5.js +0 -1
  353. package/dist/sankhyablocks/p-5f74c859.entry.js +0 -1
  354. package/dist/sankhyablocks/p-69754d94.entry.js +0 -1
  355. package/dist/sankhyablocks/p-6977a26c.entry.js +0 -1
  356. package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
  357. package/dist/sankhyablocks/p-761ed32f.entry.js +0 -1
  358. package/dist/sankhyablocks/p-7d8d7fe9.entry.js +0 -1
  359. package/dist/sankhyablocks/p-8d70b5d5.entry.js +0 -1
  360. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  361. package/dist/sankhyablocks/p-a9e4bb55.entry.js +0 -1
  362. package/dist/sankhyablocks/p-a9e5b094.entry.js +0 -1
  363. package/dist/sankhyablocks/p-aa0ae6bc.entry.js +0 -1
  364. package/dist/sankhyablocks/p-aa95fb2c.js +0 -56
  365. package/dist/sankhyablocks/p-b05ab13d.entry.js +0 -1
  366. package/dist/sankhyablocks/p-ba3d3fa9.entry.js +0 -11
  367. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  368. package/dist/sankhyablocks/p-c4d19840.entry.js +0 -1
  369. package/dist/sankhyablocks/p-c6e477ff.js +0 -1
  370. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  371. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  372. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  373. package/dist/sankhyablocks/p-d6317851.entry.js +0 -1
  374. package/dist/sankhyablocks/p-d81f20c4.entry.js +0 -1
  375. package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
  376. package/dist/sankhyablocks/p-e6380c60.js +0 -1
  377. package/dist/sankhyablocks/p-ff6064e7.js +0 -1
  378. package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
  379. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
  380. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
  381. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
  382. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  383. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  384. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  385. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  386. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  387. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  388. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  389. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  390. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  391. /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
  392. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  393. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  394. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
  395. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
  396. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
  397. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -1,15 +1,269 @@
1
1
  'use strict';
2
2
 
3
3
  const core = require('@sankhyalabs/core');
4
- const DataFetcher = require('./DataFetcher-ba94ed5b.js');
4
+ const DataFetcher = require('./DataFetcher-313debd8.js');
5
5
  const constants = require('@sankhyalabs/ezui/dist/collection/utils/constants');
6
6
  const UnitMetadata = require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
7
- const PreloadManager = require('./PreloadManager-84466da6.js');
8
- const ResourceIDUtils = require('./ResourceIDUtils-5ff86aa7.js');
9
7
  const utils = require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils');
8
+ const SortingUtils = require('@sankhyalabs/core/dist/utils/SortingUtils');
9
+ const ResourceIDUtils = require('./ResourceIDUtils-5ff86aa7.js');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ const SortingUtils__default = /*#__PURE__*/_interopDefaultLegacy(SortingUtils);
14
+
15
+ class ArrayRepository {
16
+ constructor(equalsFunction) {
17
+ this._list = [];
18
+ this._equalsFunction = equalsFunction;
19
+ }
20
+ async load(filterFunction, sortingFunction, offset, limit) {
21
+ let result = [].concat(this._list);
22
+ if (filterFunction != undefined) {
23
+ result = this._list.filter(item => filterFunction(item));
24
+ }
25
+ if (sortingFunction != undefined) {
26
+ result = result.sort(sortingFunction);
27
+ }
28
+ const count = result.length;
29
+ if (limit != undefined) {
30
+ const start = offset || 0;
31
+ const end = limit ? start + limit : result.length;
32
+ result = result.slice(start, end);
33
+ }
34
+ return Promise.resolve({ result, count });
35
+ }
36
+ async distict(itemProcessor) {
37
+ const processedItems = [];
38
+ let hasEmpty = false;
39
+ for (const item of this._list) {
40
+ const processedItem = itemProcessor(item);
41
+ if (processedItem == undefined) {
42
+ continue;
43
+ }
44
+ if (processedItem.value == undefined) {
45
+ hasEmpty = true;
46
+ continue;
47
+ }
48
+ processedItems.push(processedItem);
49
+ }
50
+ if (hasEmpty) {
51
+ processedItems.push({ key: "", value: null });
52
+ }
53
+ return Promise.resolve(new Map(processedItems.map(item => [item.key, item.value])));
54
+ }
55
+ async push(items) {
56
+ this._list.push(...items);
57
+ }
58
+ async clear() {
59
+ this._list = [];
60
+ }
61
+ async delete(items) {
62
+ this._list = this._list.filter(item => {
63
+ for (const removed of items) {
64
+ if (this._equalsFunction(item, removed)) {
65
+ return false;
66
+ }
67
+ }
68
+ return true;
69
+ });
70
+ }
71
+ async update(items) {
72
+ this._list = this._list.map(existingItem => {
73
+ const newItem = items.find(newItem => this._equalsFunction(existingItem, newItem));
74
+ return newItem == undefined ? existingItem : newItem;
75
+ });
76
+ }
77
+ async insert(itemReference, items) {
78
+ const itemPosition = this._list.indexOf(itemReference);
79
+ if (itemPosition == -1) {
80
+ this._list.push(...items);
81
+ return;
82
+ }
83
+ this._list = this._list.slice(0, itemPosition).concat(items).concat(this._list.slice(itemPosition));
84
+ }
85
+ isOperating() {
86
+ return true;
87
+ }
88
+ async isEmpty() {
89
+ return Promise.resolve(this._list.length === 0);
90
+ }
91
+ async count() {
92
+ return Promise.resolve(this._list.length);
93
+ }
94
+ getFromCache() {
95
+ return core.ObjectUtils.copy(this._list);
96
+ }
97
+ }
98
+
99
+ class PreloadManager {
100
+ static setLoadingStatus(dataUnit, loadingInProgress) {
101
+ this._loadingStatus.set(dataUnit.name, loadingInProgress);
102
+ }
103
+ static isCacheEnabled(_dataUnit) {
104
+ return true;
105
+ }
106
+ static cacheRecords(dataUnit, records, resetDatabase, loadingInProgress) {
107
+ PreloadManager.setLoadingStatus(dataUnit, loadingInProgress);
108
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
109
+ this.getRepository(dataUnit).push(records);
110
+ }
111
+ else {
112
+ if (resetDatabase) {
113
+ this._repositories.delete(dataUnit.name);
114
+ }
115
+ }
116
+ }
117
+ static getSortingFunction(dataUnit, sorting) {
118
+ return SortingUtils__default['default'].getSortingFunction(dataUnit, sorting);
119
+ }
120
+ static async getDistinct(dataUnit, fieldName) {
121
+ if (!PreloadManager.isCacheEnabled(dataUnit)) {
122
+ return Promise.resolve(utils.ColumnFilterManager.compileDistinct(fieldName, dataUnit));
123
+ }
124
+ let filterFunction;
125
+ const request = dataUnit.getLastLoadRequest();
126
+ if (request != undefined) {
127
+ const columnFilters = utils.ColumnFilterManager.getColumnFilters(request.filters, fieldName);
128
+ filterFunction = utils.ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values()));
129
+ }
130
+ return new Promise((accept, reject) => {
131
+ PreloadManager.getRepository(dataUnit).distict(record => {
132
+ if (filterFunction != undefined && !filterFunction(record)) {
133
+ return undefined;
134
+ }
135
+ const fieldValue = record[fieldName];
136
+ if (fieldValue == undefined) {
137
+ return { key: null, value: null };
138
+ }
139
+ const value = fieldValue.value != undefined ? fieldValue.value : fieldValue;
140
+ return { key: dataUnit.getFormattedValue(fieldName, fieldValue), value };
141
+ })
142
+ .then(result => {
143
+ if (result == undefined) {
144
+ accept(undefined);
145
+ return;
146
+ }
147
+ accept(Array.from(result.entries()).map(([label, value]) => ({ label, value, check: true })));
148
+ })
149
+ .catch(reason => reject(reason));
150
+ });
151
+ }
152
+ static async loadData(dataUnit, request, loadFromServer) {
153
+ try {
154
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
155
+ const useCache = [
156
+ "EZ_GRID_LOADING_SOURCE",
157
+ core.DataUnit.CHANGING_PAGE_LOADING_SOURCE,
158
+ core.DataUnit.ALL_RECORDS_SELECTION_SOURCE
159
+ ].includes(request.source);
160
+ if (useCache) {
161
+ const isCacheEmpty = await PreloadManager.getRepository(dataUnit).isEmpty();
162
+ if (!isCacheEmpty) {
163
+ return PreloadManager.loadFromCache(dataUnit, request);
164
+ }
165
+ }
166
+ //Como não vamos aproveitar o cache, ele precisa ser limpo.
167
+ PreloadManager.getRepository(dataUnit).clear().catch(() => { });
168
+ }
169
+ return loadFromServer(dataUnit, request);
170
+ }
171
+ catch (error) {
172
+ console.error(error);
173
+ return Promise.reject(error);
174
+ }
175
+ }
176
+ static insertRecords(dataUnit, reference, records) {
177
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
178
+ PreloadManager.getRepository(dataUnit).insert(reference, records);
179
+ }
180
+ }
181
+ static updateRecords(dataUnit, records) {
182
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
183
+ PreloadManager.getRepository(dataUnit).update(records);
184
+ }
185
+ }
186
+ static removeRecords(dataUnit, records) {
187
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
188
+ PreloadManager.getRepository(dataUnit).delete(records);
189
+ }
190
+ }
191
+ static async countRecords(dataUnit) {
192
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
193
+ return PreloadManager.getRepository(dataUnit).count();
194
+ }
195
+ return Promise.resolve(0);
196
+ }
197
+ static getRepository(dataUnit) {
198
+ const name = dataUnit.name;
199
+ if (!PreloadManager._repositories.has(name)) {
200
+ PreloadManager._repositories.set(name, new ArrayRepository((recordA, recordB) => recordA.__record__id__ === recordB.__record__id__));
201
+ }
202
+ return PreloadManager._repositories.get(name);
203
+ }
204
+ static async loadFromCache(dataUnit, request) {
205
+ return new Promise((accept, reject) => {
206
+ const columnFilters = utils.ColumnFilterManager.getColumnFilters(request.filters, "");
207
+ const { limit, offset, sort } = request;
208
+ PreloadManager.getRepository(dataUnit)
209
+ .load(utils.ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values())), PreloadManager.getSortingFunction(dataUnit, sort), offset, limit)
210
+ .then(loadResult => {
211
+ const stillLoading = PreloadManager._loadingStatus.get(dataUnit.name);
212
+ const { count, result: records } = loadResult;
213
+ const firstRecord = count == 0 ? 0 : offset + 1;
214
+ const lastRecord = offset + Math.min(records.length, limit);
215
+ const currentPage = offset / limit;
216
+ const paginationInfo = {
217
+ count, currentPage, firstRecord, lastRecord,
218
+ hasMore: stillLoading || (lastRecord < count),
219
+ total: stillLoading ? undefined : count
220
+ };
221
+ accept({ records, paginationInfo });
222
+ })
223
+ .catch(reason => reject(reason));
224
+ });
225
+ }
226
+ static getCachedRecords(dataUnit) {
227
+ return PreloadManager.getRepository(dataUnit).getFromCache();
228
+ }
229
+ }
230
+ PreloadManager._repositories = new Map();
231
+ PreloadManager._loadingStatus = new Map();
232
+
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
+ const lastRecord = Math.min(offset + limit, records === null || records === void 0 ? void 0 : records.length);
256
+ return {
257
+ currentPage: limit === 0 ? 0 : Math.ceil(offset / limit),
258
+ firstRecord: offset,
259
+ lastRecord: lastRecord,
260
+ total: records === null || records === void 0 ? void 0 : records.length,
261
+ hasMore: !!((records === null || records === void 0 ? void 0 : records.length) - lastRecord),
262
+ };
263
+ }
10
264
 
11
265
  class InMemoryLoader {
12
- constructor(metadata, records) {
266
+ constructor(metadata, records, config) {
13
267
  this.metadata = metadata;
14
268
  this.records = records;
15
269
  this._dataUnit = new core.DataUnit(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME);
@@ -17,12 +271,20 @@ class InMemoryLoader {
17
271
  this._dataUnit.dataLoader = (dataUnit, request) => this.inMemoryLoader(dataUnit, request, this.getRecordsToLoad());
18
272
  this._dataUnit.saveLoader = (_dataUnit, changes) => this.saveLoader(_dataUnit, changes);
19
273
  this._dataUnit.removeLoader = (_dataUnit, recordIds) => this.removeLoader(_dataUnit, recordIds);
20
- this.dataUnit.loadMetadata().then(() => this.dataUnit.loadData());
274
+ this.dataUnit.loadMetadata().then(() => {
275
+ if ((config === null || config === void 0 ? void 0 : config.autoLoad) !== false) {
276
+ this.dataUnit.loadData();
277
+ }
278
+ });
21
279
  }
22
280
  getRecordsToLoad() {
23
281
  if (this._initialRecords == undefined && this.dataUnit.records.length > 0) {
24
282
  this._initialRecords = this.dataUnit.records;
25
283
  }
284
+ const addedRecords = this.dataUnit.getAddedRecords();
285
+ if (addedRecords) {
286
+ return [...this._initialRecords, ...addedRecords];
287
+ }
26
288
  return this._initialRecords;
27
289
  }
28
290
  get dataUnit() {
@@ -65,7 +327,7 @@ class InMemoryLoader {
65
327
  this._initialRecords = newRecords;
66
328
  if (this._dataUnit) {
67
329
  //Isso força o refresh internamente no datunit
68
- this._dataUnit.gotoPage(0);
330
+ this._dataUnit.loadData();
69
331
  }
70
332
  }
71
333
  get metadata() {
@@ -81,30 +343,9 @@ class InMemoryLoader {
81
343
  return core.StringUtils.generateUUID();
82
344
  }
83
345
  inMemoryLoader(dataUnit, request, recordsIn) {
84
- let records = this.applyFilter(recordsIn, dataUnit, request.filters);
85
- records = this.applySorting(records, dataUnit, request.sort);
86
- return Promise.resolve({ records, paginationInfo: buildPaginationInfo(request, records) });
87
- }
88
- applyFilter(records, dataUnit, filters) {
89
- const columnFilters = utils.ColumnFilterManager.getColumnFilters(filters, "");
90
- if (columnFilters == undefined || columnFilters.size == 0) {
91
- return records;
92
- }
93
- const filterFunciton = utils.ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values()));
94
- if (filterFunciton == undefined) {
95
- return records;
96
- }
97
- return records.filter(filterFunciton);
98
- }
99
- applySorting(records, dataUnit, sorting) {
100
- if (sorting == undefined || sorting.length == 0) {
101
- return records;
102
- }
103
- const sortingFunction = PreloadManager.PreloadManager.getSortingFunction(dataUnit, sorting);
104
- if (sortingFunction == undefined) {
105
- return records;
106
- }
107
- return records.sort(sortingFunction);
346
+ let records = applyFilter(recordsIn, dataUnit, request.filters);
347
+ records = applySorting(records, dataUnit, request.sort);
348
+ return Promise.resolve({ records, paginationInfo: buildPaginationInfo(records, request.offset, request.limit) });
108
349
  }
109
350
  metadaLoader() {
110
351
  return Promise.resolve(this._metadata);
@@ -137,48 +378,48 @@ class InMemoryLoader {
137
378
  }
138
379
  }
139
380
  InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = "InMemoryDataUnit";
140
- function buildPaginationInfo({ offset, limit }, records) {
141
- if (offset === undefined || limit === undefined) {
142
- return undefined;
143
- }
144
- const lastRecord = Math.min(offset + limit, records.length);
145
- return {
146
- currentPage: Math.ceil(offset / limit),
147
- firstRecord: offset,
148
- lastRecord: lastRecord,
149
- total: records.length,
150
- hasMore: !!(records.length - lastRecord),
151
- };
381
+
382
+ function getRecordValue(record, fieldName) {
383
+ var _a, _b;
384
+ return ((_a = record[fieldName]) === null || _a === void 0 ? void 0 : _a.value) !== undefined ? (_b = record[fieldName]) === null || _b === void 0 ? void 0 : _b.value : record[fieldName];
152
385
  }
153
386
 
154
387
  class DatasetStrategy {
155
388
  canSlice() {
156
389
  return false;
157
390
  }
391
+ processSortingSide(request, dataUnit, serverSideFilters) {
392
+ var _a;
393
+ const localSorting = [];
394
+ const serverSorting = [];
395
+ if (request.sort != undefined) {
396
+ if (serverSideFilters.length === 0) {
397
+ return { localSorting: request.sort, serverSorting: [] };
398
+ }
399
+ for (const sort of request.sort) {
400
+ const descriptor = dataUnit.getField(sort.field);
401
+ const local = ((_a = descriptor === null || descriptor === void 0 ? void 0 : descriptor.properties) === null || _a === void 0 ? void 0 : _a.calculated) === "true" || (descriptor === null || descriptor === void 0 ? void 0 : descriptor.userInterface) === core.UserInterface.LONGTEXT;
402
+ if (local) {
403
+ localSorting.push(sort);
404
+ }
405
+ else {
406
+ serverSorting.push(sort);
407
+ }
408
+ }
409
+ }
410
+ return { localSorting, serverSorting };
411
+ }
158
412
  async load(dataUnit, request, loadingInfo) {
413
+ var _a, _b;
159
414
  if (dataUnit.metadata == undefined) {
160
415
  return Promise.resolve({ records: [], loadingInfo });
161
416
  }
162
417
  try {
163
- const localSorting = [];
164
- const serverSorting = [];
165
- if (request.sort != undefined) {
166
- for (const sort of request.sort) {
167
- const descriptor = dataUnit.getField(sort.field);
168
- const local = descriptor != undefined
169
- && descriptor.properties != undefined
170
- && descriptor.properties.calculated === "true";
171
- if (local) {
172
- localSorting.push(sort);
173
- }
174
- else {
175
- serverSorting.push(sort);
176
- }
177
- }
178
- }
418
+ const serverSideFilters = (_b = (_a = request.filters) === null || _a === void 0 ? void 0 : _a.filter(filter => !filter.name.startsWith("FILTRO_COLUNA_"))) !== null && _b !== void 0 ? _b : [];
419
+ const { localSorting, serverSorting } = this.processSortingSide(request, dataUnit, serverSideFilters);
179
420
  const fields = this.getFieldsList(dataUnit);
180
421
  const serviceName = "DatasetSP.loadRecords";
181
- const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting);
422
+ const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting, serverSideFilters);
182
423
  const params = loadingInfo.quiet ? { urlParams: { quietMode: "true" } } : undefined;
183
424
  const { result: responseRecords, pagerID: pagerId } = await DataFetcher.DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
184
425
  const records = this.processRecords(dataUnit, fields, responseRecords);
@@ -197,6 +438,53 @@ class DatasetStrategy {
197
438
  return Promise.reject(error);
198
439
  }
199
440
  }
441
+ async loadRowMetadata(snkDataUnit, fieldName, metadataName, updatedFields = {}) {
442
+ try {
443
+ const serviceName = "DatasetSP.loadRowMetadata";
444
+ const parsedRequestBody = await this.buildRequestBodyLoadRowMetadata({ snkDataUnit, fieldName, metadataName, serviceName, updatedFields });
445
+ const response = await DataFetcher.DataFetcher.get().callServiceBroker(serviceName, parsedRequestBody);
446
+ return response;
447
+ }
448
+ catch (error) {
449
+ console.error(error);
450
+ return Promise.reject(error);
451
+ }
452
+ }
453
+ async buildRequestBodyLoadRowMetadata({ snkDataUnit, serviceName, fieldName, metadataName, updatedFields, }) {
454
+ const dataUnit = snkDataUnit.dataUnit;
455
+ const entityName = DataUnitFetcher.parseDataUnitName(dataUnit.name).entityName;
456
+ const recordIdInfo = await snkDataUnit.getSelectedRecordsIDsInfo();
457
+ const pk = recordIdInfo.reduce((accumulator, currentValue) => {
458
+ accumulator[currentValue.name] = currentValue.value;
459
+ return accumulator;
460
+ }, {});
461
+ const record = dataUnit.getSelectedRecord();
462
+ const fields = dataUnit.metadata.fields.filter(({ standAlone, name }) => !standAlone && !name.includes(".")).map(({ name }) => name);
463
+ const values = fields.reduce((accumulator, currentValue, currentIndex) => {
464
+ const recordValue = getRecordValue(record, currentValue);
465
+ const updatedFieldValue = getRecordValue(updatedFields, currentValue);
466
+ accumulator[currentIndex] = updatedFieldValue !== undefined ? updatedFieldValue : recordValue;
467
+ return accumulator;
468
+ }, {});
469
+ const requestBody = {
470
+ serviceName,
471
+ requestBody: {
472
+ dataSetID: dataUnit.dataUnitId,
473
+ entityName,
474
+ standAlone: false,
475
+ metadataName,
476
+ fieldName,
477
+ fields,
478
+ record: {
479
+ pk,
480
+ oldPk: pk,
481
+ values,
482
+ },
483
+ }
484
+ };
485
+ const parsedRequestBody = JSON.stringify(requestBody);
486
+ return parsedRequestBody;
487
+ }
200
488
  getFieldsList(dataUnit) {
201
489
  let fields = ["__record__id__", "__record__label__"];
202
490
  dataUnit.metadata.fields.forEach((descriptor) => {
@@ -222,7 +510,7 @@ class DatasetStrategy {
222
510
  }
223
511
  return [descriptor.name, descriptionField];
224
512
  }
225
- buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting) {
513
+ buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting, serverSideFilters) {
226
514
  const dataSetID = dataUnit.dataUnitId;
227
515
  const dataUnitName = dataUnit.name;
228
516
  const entityName = DataUnitFetcher.parseDataUnitName(dataUnitName).entityName;
@@ -241,7 +529,7 @@ class DatasetStrategy {
241
529
  tryJoinedFields: true,
242
530
  parallelLoader: useParallelLoader,
243
531
  crudListener: `br.com.sankhya.bff.${this.getModuleName()}.BFFDataUnitDatasetAdapter`,
244
- txProperties: this.getTxProperties(dataUnitName, request, sorting),
532
+ txProperties: this.getTxProperties(dataUnit, request, sorting, serverSideFilters),
245
533
  useDefaultRowsLimit: false
246
534
  }
247
535
  };
@@ -252,12 +540,10 @@ class DatasetStrategy {
252
540
  const moduleName = app.getModuleName();
253
541
  return moduleName.replace("-bff", "");
254
542
  }
255
- getTxProperties(dataUnitName, request, sorting) {
256
- var _a, _b;
543
+ getTxProperties(dataUnit, request, sorting, serverSideFilters) {
257
544
  const txProperties = {
258
- "__DATA_UNIT_ADAPTER__[dataUnitName]": dataUnitName
545
+ "__DATA_UNIT_ADAPTER__[dataUnitName]": dataUnit.name
259
546
  };
260
- const serverSideFilters = (_b = (_a = request.filters) === null || _a === void 0 ? void 0 : _a.filter(filter => !filter.name.startsWith("FILTRO_COLUNA_"))) !== null && _b !== void 0 ? _b : [];
261
547
  if (serverSideFilters.length !== 0) {
262
548
  txProperties["__DATA_UNIT_ADAPTER__[criteria]"] = JSON.stringify(serverSideFilters);
263
549
  }
@@ -267,13 +553,22 @@ class DatasetStrategy {
267
553
  if (request.parentRecordId != undefined) {
268
554
  txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
269
555
  }
556
+ const loaderProps = dataUnit.getGlobalLoaderProps();
557
+ if (loaderProps == undefined || loaderProps.size === 0) {
558
+ return txProperties;
559
+ }
560
+ Array.from(loaderProps.entries()).forEach(([name, value]) => {
561
+ txProperties[name] = value;
562
+ });
270
563
  return txProperties;
271
564
  }
272
565
  processRecords(dataUnit, fields, responseRecords) {
273
566
  return responseRecords.map((dataFrame) => {
567
+ const lastElement = dataFrame[dataFrame.length - 1];
274
568
  const duRecord = {
275
569
  __record__id__: dataFrame[0],
276
- __record__label__: dataFrame[1]
570
+ __record__label__: dataFrame[1],
571
+ __record__metadata__: lastElement['_rmd'],
277
572
  };
278
573
  dataUnit.metadata.fields.forEach(fieldDescriptor => {
279
574
  duRecord[fieldDescriptor.name] = this.buildFieldValue(fieldDescriptor, fields, dataFrame);
@@ -330,12 +625,15 @@ class DataUnitDataLoader {
330
625
  static async loadData(dataUnit, request) {
331
626
  return new Promise((resolve, reject) => {
332
627
  DataUnitDataLoader.debounce(dataUnit, () => {
333
- PreloadManager.PreloadManager.loadData(dataUnit, request, this.loadFromServer)
628
+ PreloadManager.loadData(dataUnit, request, this.loadFromServer)
334
629
  .then(resp => resolve(resp))
335
630
  .catch(reason => reject(reason));
336
631
  });
337
632
  });
338
633
  }
634
+ static getCachedRecords(dataUnit) {
635
+ return PreloadManager.getCachedRecords(dataUnit);
636
+ }
339
637
  static async loadFromServer(dataUnit, request, loadingInfo) {
340
638
  try {
341
639
  //Registramos a request com as informações de carga para determinarmos a última.
@@ -367,8 +665,8 @@ class DataUnitDataLoader {
367
665
  return Promise.resolve(undefined);
368
666
  }
369
667
  const recreateCache = !dataLoader.canSlice() || responseLoadingInfo.count === 0;
370
- PreloadManager.PreloadManager.cacheRecords(dataUnit, records, recreateCache, responseLoadingInfo.loadingInProgress);
371
- if (PreloadManager.PreloadManager.isCacheEnabled(dataUnit) && responseLoadingInfo.loadingInProgress) {
668
+ PreloadManager.cacheRecords(dataUnit, records, recreateCache, responseLoadingInfo.loadingInProgress);
669
+ if (PreloadManager.isCacheEnabled(dataUnit) && responseLoadingInfo.loadingInProgress) {
372
670
  const newRequest = Object.assign(Object.assign({}, request), { offset: responseLoadingInfo.count });
373
671
  const newLoadingInfo = Object.assign(Object.assign({}, responseLoadingInfo), { pageNumber: (responseLoadingInfo.pageNumber || 0) + 1, quiet: true });
374
672
  this.callLoader(dataUnit, newRequest, newLoadingInfo, dataLoader)
@@ -378,7 +676,7 @@ class DataUnitDataLoader {
378
676
  return Promise.resolve(result);
379
677
  }
380
678
  static afterLoadingPage(dataUnit, loadingInfo) {
381
- PreloadManager.PreloadManager.setLoadingStatus(dataUnit, loadingInfo.loadingInProgress);
679
+ PreloadManager.setLoadingStatus(dataUnit, loadingInfo.loadingInProgress);
382
680
  const dataUnitPagination = dataUnit.getPaginationInfo();
383
681
  if (dataUnitPagination == undefined) {
384
682
  return;
@@ -525,9 +823,9 @@ class DataUnitFetcher {
525
823
  return { entityName: parts[1], resourceID: parts[2] };
526
824
  }
527
825
  getDataUnit(entityName, resourceID, parentDataUnit, configName) {
528
- if (PreloadManager.PreloadManager.applicationResourceID == undefined) {
826
+ if (PreloadManager.applicationResourceID == undefined) {
529
827
  //Por falta de um lugar melhor pra iniciar essa variável, fazemos isso aqui.
530
- ResourceIDUtils.ResourceIDUtils.getResourceID().then(resourceID => PreloadManager.PreloadManager.applicationResourceID = resourceID);
828
+ ResourceIDUtils.ResourceIDUtils.getResourceID().then(resourceID => PreloadManager.applicationResourceID = resourceID);
531
829
  }
532
830
  const duName = `dd://${entityName}/${resourceID}${configName ? "/" + configName : ""}`;
533
831
  const dataUnit = parentDataUnit != undefined ? parentDataUnit.getChildDataunit(duName) : new core.DataUnit(duName);
@@ -536,6 +834,7 @@ class DataUnitFetcher {
536
834
  dataUnit.saveLoader = (_dataUnit, changes) => this.saveData(dataUnit, changes);
537
835
  dataUnit.removeLoader = (dataUnit, recordIds) => this.removeRecords(dataUnit, recordIds);
538
836
  dataUnit.recordLoader = (dataUnit, recordIds) => this.loadRecord(dataUnit, recordIds);
837
+ dataUnit.allRecordsLoader = (dataUnit) => DataUnitDataLoader.getCachedRecords(dataUnit);
539
838
  return dataUnit;
540
839
  }
541
840
  loadMetadata(dataUnit) {
@@ -596,14 +895,41 @@ class DataUnitFetcher {
596
895
  });
597
896
  });
598
897
  }
898
+ addTransientProperties(dataUnit, updatingFields) {
899
+ const loaderProps = dataUnit.getGlobalLoaderProps();
900
+ if (loaderProps == undefined || loaderProps.size === 0) {
901
+ return updatingFields;
902
+ }
903
+ if (updatingFields == undefined) {
904
+ updatingFields = {};
905
+ }
906
+ Array.from(loaderProps.entries()).forEach(([name, value]) => {
907
+ updatingFields[`transient.${name}`] = value;
908
+ });
909
+ return updatingFields;
910
+ }
911
+ getUpdatingFields(dataUnit, originalUpdatingFields) {
912
+ if (originalUpdatingFields == undefined) {
913
+ return;
914
+ }
915
+ const updatingFields = Object.assign({}, originalUpdatingFields);
916
+ Object.keys(updatingFields).forEach(key => {
917
+ const descriptor = dataUnit.getField(key);
918
+ if (descriptor != undefined && descriptor.standAlone) {
919
+ delete updatingFields[key];
920
+ }
921
+ });
922
+ return this.addTransientProperties(dataUnit, updatingFields);
923
+ }
599
924
  saveData(dataUnit, duChanges) {
600
925
  const updatedRecordsIds = [];
601
926
  const addedRecordsIds = [];
602
927
  const changes = duChanges.map((change) => {
603
- const { dataUnit: changeDU, record, updatingFields, operation } = change;
928
+ const { dataUnit: changeDU, record, operation } = change;
604
929
  const dataUnitInstance = core.DataUnitStorage.get(changeDU);
930
+ const updatingFields = this.getUpdatingFields(dataUnitInstance, change.updatingFields);
605
931
  let parsedUpdatingFields;
606
- if (updatingFields) {
932
+ if (updatingFields != undefined) {
607
933
  parsedUpdatingFields = Object.entries(updatingFields).map(([fieldName, value]) => {
608
934
  const descriptor = dataUnitInstance.getField(fieldName);
609
935
  const dataType = descriptor ? descriptor.dataType : core.DataType.TEXT;
@@ -673,10 +999,10 @@ class DataUnitFetcher {
673
999
  });
674
1000
  if (addedRecords.length > 0) {
675
1001
  const firstRecord = dataUnit.records[0];
676
- PreloadManager.PreloadManager.insertRecords(dataUnit, firstRecord, addedRecords);
1002
+ PreloadManager.insertRecords(dataUnit, firstRecord, addedRecords);
677
1003
  }
678
1004
  const updatedRecords = toUpdate.map(recordId => (Object.assign({}, recordsById.get(recordId))));
679
- PreloadManager.PreloadManager.updateRecords(dataUnit, updatedRecords);
1005
+ PreloadManager.updateRecords(dataUnit, updatedRecords);
680
1006
  }
681
1007
  getTransientInfo(dataUnit, recordID) {
682
1008
  const { records } = dataUnit.getSelectionInfo();
@@ -693,7 +1019,7 @@ class DataUnitFetcher {
693
1019
  query: this.templateByQuery.get("saveData"),
694
1020
  })
695
1021
  .then((_resp) => {
696
- PreloadManager.PreloadManager.removeRecords(dataUnit, dataUnit.records.filter(record => recordIds.includes(record.__record__id__)));
1022
+ PreloadManager.removeRecords(dataUnit, dataUnit.records.filter(record => recordIds.includes(record.__record__id__)));
697
1023
  resolve(recordIds);
698
1024
  })
699
1025
  .catch((error) => {
@@ -728,4 +1054,10 @@ class DataUnitFetcher {
728
1054
  }
729
1055
 
730
1056
  exports.DataUnitFetcher = DataUnitFetcher;
1057
+ exports.DatasetStrategy = DatasetStrategy;
731
1058
  exports.InMemoryLoader = InMemoryLoader;
1059
+ exports.PreloadManager = PreloadManager;
1060
+ exports.applyFilter = applyFilter;
1061
+ exports.applySorting = applySorting;
1062
+ exports.buildPaginationInfo = buildPaginationInfo;
1063
+ exports.getRecordValue = getRecordValue;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const DataFetcher = require('./DataFetcher-ba94ed5b.js');
3
+ const DataFetcher = require('./DataFetcher-313debd8.js');
4
4
  const core = require('@sankhyalabs/core');
5
5
 
6
6
  class ResourceFetcher {
@@ -232,6 +232,18 @@ class FormConfigFetcher extends ResourceFetcher {
232
232
  }
233
233
  return `cfg://${authority}/${resourceID}`;
234
234
  }
235
+ async fetchLegacyConfigurableForm(configName) {
236
+ const payload = { 'requestBody': { 'config': { 'chave': configName, 'tipo': 'T' } } };
237
+ const response = await DataFetcher.DataFetcher.get().callServiceBroker('SystemUtilsSP.getConf', JSON.stringify(payload));
238
+ if (core.ObjectUtils.isEmpty(response))
239
+ return undefined;
240
+ return this.buildLegacyConfigurableForm(response);
241
+ }
242
+ buildLegacyConfigurableForm(config) {
243
+ var _a, _b, _c;
244
+ 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
+ return { emptyConfig: false, fields: Array.isArray(rawFields) ? rawFields : [rawFields] };
246
+ }
235
247
  }
236
248
  exports.UserConfigType = void 0;
237
249
  (function (UserConfigType) {