@sankhyalabs/sankhyablocks 8.15.0-dev.3 → 8.15.0-dev.31

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 (301) hide show
  1. package/dist/cjs/{ConfigStorage-0d507a8f.js → ConfigStorage-d4c99a5e.js} +27 -17
  2. package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-99f0f6ed.js} +5 -3
  3. package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
  4. package/dist/cjs/{SnkFormConfigManager-467907f6.js → SnkFormConfigManager-0ffd098d.js} +2 -2
  5. package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-e7dcf408.js} +13 -0
  6. package/dist/cjs/SnkMultiSelectionListDataSource-5213120b.js +140 -0
  7. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-5161d082.js} +1 -1
  8. package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-9f1a13ca.js} +1 -1
  9. package/dist/cjs/{index-0e663819.js → index-0922807b.js} +1 -0
  10. package/dist/cjs/index-f9e81701.js +2 -10
  11. package/dist/cjs/loader.cjs.js +1 -1
  12. package/dist/cjs/{dataunit-fetcher-de65b9fc.js → pesquisa-fetcher-94f6b316.js} +472 -46
  13. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  14. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +539 -9
  15. package/dist/cjs/snk-application.cjs.entry.js +98 -10
  16. package/dist/cjs/snk-attach.cjs.entry.js +398 -61
  17. package/dist/cjs/snk-crud.cjs.entry.js +15 -13
  18. package/dist/cjs/snk-data-exporter.cjs.entry.js +5 -5
  19. package/dist/cjs/{snk-data-unit-1bc69073.js → snk-data-unit-82c08a8c.js} +1 -1
  20. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
  21. package/dist/cjs/snk-detail-view.cjs.entry.js +11 -13
  22. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  23. package/dist/cjs/snk-filter-bar.cjs.entry.js +68 -11
  24. package/dist/cjs/snk-filter-item.cjs.entry.js +3 -0
  25. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -4
  26. package/dist/cjs/snk-filter-modal.cjs.entry.js +16 -1
  27. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
  28. package/dist/cjs/snk-form-config.cjs.entry.js +8 -2
  29. package/dist/cjs/snk-form.cjs.entry.js +4 -4
  30. package/dist/cjs/snk-grid.cjs.entry.js +53 -37
  31. package/dist/cjs/{snk-guides-viewer-7e87ffce.js → snk-guides-viewer-c7293cfa.js} +11 -13
  32. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -11
  33. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  34. package/dist/cjs/snk-personalized-filter.cjs.entry.js +4 -4
  35. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  36. package/dist/cjs/snk-simple-crud.cjs.entry.js +166 -24
  37. package/dist/cjs/snk-taskbar.cjs.entry.js +91 -7
  38. package/dist/cjs/{taskbar-elements-b8c428a9.js → taskbar-elements-1e4fb2e0.js} +9 -9
  39. package/dist/collection/collection-manifest.json +7 -7
  40. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  41. package/dist/collection/components/snk-application/snk-application.js +111 -5
  42. package/dist/collection/components/snk-attach/snk-attach.js +194 -38
  43. package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
  44. package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
  45. package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
  46. package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
  47. package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
  48. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +111 -0
  49. package/dist/collection/components/snk-attach/structure/index.js +6 -3
  50. package/dist/collection/components/snk-crud/snk-crud.js +42 -4
  51. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +2 -2
  52. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  53. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +5 -5
  54. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +1 -1
  55. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  56. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
  57. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  58. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +3 -0
  59. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +84 -2
  60. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +0 -1
  61. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +23 -1
  62. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +175 -6
  63. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +5 -1
  64. package/dist/collection/components/snk-form/snk-form.js +1 -1
  65. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +11 -5
  66. package/dist/collection/components/snk-grid/snk-grid.js +79 -31
  67. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  68. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  69. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +1 -1
  70. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
  71. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +5 -0
  72. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +279 -15
  73. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +18 -2
  74. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +8 -8
  75. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  76. package/dist/collection/components/snk-taskbar/snk-taskbar.js +129 -7
  77. package/dist/collection/lib/@types/index.js +1 -0
  78. package/dist/collection/lib/configs/ConfigStorage.js +24 -14
  79. package/dist/collection/lib/dataUnit/InMemoryLoader.js +1 -1
  80. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +5 -3
  81. package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
  82. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
  83. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
  84. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
  85. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
  86. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
  87. package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
  88. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +31 -3
  89. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +48 -29
  90. package/dist/collection/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.js +1 -1
  91. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  92. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +11 -12
  93. package/dist/collection/lib/index.js +1 -1
  94. package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
  95. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  96. package/dist/components/ConfigStorage.js +25 -15
  97. package/dist/components/DataFetcher.js +5 -3
  98. package/dist/components/SnkMessageBuilder.js +13 -0
  99. package/dist/components/dataunit-fetcher.js +91 -45
  100. package/dist/components/field-search.js +93 -3
  101. package/dist/components/index.d.ts +6 -6
  102. package/dist/components/index2.js +1 -0
  103. package/dist/components/snk-actions-button2.js +1 -0
  104. package/dist/components/snk-application2.js +94 -3
  105. package/dist/components/snk-attach2.js +454 -68
  106. package/dist/components/snk-crud.js +9 -3
  107. package/dist/components/snk-data-exporter2.js +1 -1
  108. package/dist/components/snk-detail-view2.js +33 -8
  109. package/dist/components/snk-entity-list.js +5 -3
  110. package/dist/components/snk-filter-bar2.js +71 -9
  111. package/dist/components/snk-filter-item2.js +3 -0
  112. package/dist/components/snk-filter-modal-item2.js +0 -1
  113. package/dist/components/snk-filter-modal.js +21 -3
  114. package/dist/components/snk-filter-multi-select.js +2 -1
  115. package/dist/components/snk-form-config2.js +7 -1
  116. package/dist/components/snk-grid-config2.js +128 -102
  117. package/dist/components/snk-grid2.js +51 -31
  118. package/dist/components/snk-personalized-filter-editor.js +3 -1
  119. package/dist/components/snk-personalized-filter2.js +1 -1
  120. package/dist/components/snk-pesquisa2.js +1 -1
  121. package/dist/components/snk-simple-crud2.js +219 -25
  122. package/dist/components/snk-taskbar2.js +103 -15
  123. package/dist/components/taskbar-actions-button2.js +18 -2
  124. package/dist/esm/{ConfigStorage-379a9cba.js → ConfigStorage-39ed8aeb.js} +27 -17
  125. package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-a650ae58.js} +5 -3
  126. package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
  127. package/dist/esm/{SnkFormConfigManager-587e9030.js → SnkFormConfigManager-dd450734.js} +2 -2
  128. package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-0fb796b9.js} +13 -0
  129. package/dist/esm/SnkMultiSelectionListDataSource-7e7eada5.js +133 -0
  130. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-17dc5b5e.js} +1 -1
  131. package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-f121f880.js} +1 -1
  132. package/dist/esm/{index-1564817d.js → index-0ece87a6.js} +1 -0
  133. package/dist/esm/index-a7d3d3f1.js +2 -10
  134. package/dist/esm/loader.js +1 -1
  135. package/dist/esm/{dataunit-fetcher-e218c6d2.js → pesquisa-fetcher-f05a12ca.js} +462 -38
  136. package/dist/esm/sankhyablocks.js +1 -1
  137. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +538 -10
  138. package/dist/esm/snk-application.entry.js +98 -10
  139. package/dist/esm/snk-attach.entry.js +398 -61
  140. package/dist/esm/snk-crud.entry.js +15 -13
  141. package/dist/esm/snk-data-exporter.entry.js +5 -5
  142. package/dist/esm/{snk-data-unit-6208ebf0.js → snk-data-unit-5d201fb3.js} +1 -1
  143. package/dist/esm/snk-data-unit.entry.js +2 -2
  144. package/dist/esm/snk-detail-view.entry.js +11 -13
  145. package/dist/esm/snk-entity-list.entry.js +5 -3
  146. package/dist/esm/snk-filter-bar.entry.js +68 -11
  147. package/dist/esm/snk-filter-item.entry.js +3 -0
  148. package/dist/esm/snk-filter-modal-item.entry.js +3 -4
  149. package/dist/esm/snk-filter-modal.entry.js +16 -1
  150. package/dist/esm/snk-filter-multi-select.entry.js +2 -1
  151. package/dist/esm/snk-form-config.entry.js +9 -3
  152. package/dist/esm/snk-form.entry.js +4 -4
  153. package/dist/esm/snk-grid.entry.js +54 -38
  154. package/dist/esm/{snk-guides-viewer-2134aba2.js → snk-guides-viewer-47443f7c.js} +11 -13
  155. package/dist/esm/snk-guides-viewer.entry.js +9 -11
  156. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  157. package/dist/esm/snk-personalized-filter.entry.js +4 -4
  158. package/dist/esm/snk-pesquisa.entry.js +1 -1
  159. package/dist/esm/snk-simple-crud.entry.js +166 -24
  160. package/dist/esm/snk-taskbar.entry.js +92 -8
  161. package/dist/esm/{taskbar-elements-26c981af.js → taskbar-elements-846c027c.js} +9 -9
  162. package/dist/sankhyablocks/{p-ff6064e7.js → p-05243555.js} +1 -1
  163. package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
  164. package/dist/sankhyablocks/p-2897fb8c.js +1 -0
  165. package/dist/sankhyablocks/p-30735d1e.entry.js +1 -0
  166. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  167. package/dist/sankhyablocks/p-38289a55.js +1 -0
  168. package/dist/sankhyablocks/p-3c5b7cfc.entry.js +1 -0
  169. package/dist/sankhyablocks/p-3e2e2424.entry.js +1 -0
  170. package/dist/sankhyablocks/p-50783a8b.js +1 -0
  171. package/dist/sankhyablocks/p-67aedbe0.js +56 -0
  172. package/dist/sankhyablocks/p-6ae58da0.js +1 -0
  173. package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
  174. package/dist/sankhyablocks/{p-729f5f5b.entry.js → p-746fc99e.entry.js} +1 -1
  175. package/dist/sankhyablocks/p-827e4b01.entry.js +1 -0
  176. package/dist/sankhyablocks/{p-6977a26c.entry.js → p-86801b08.entry.js} +1 -1
  177. package/dist/sankhyablocks/p-8c13d8d6.entry.js +1 -0
  178. package/dist/sankhyablocks/p-8c49760e.js +1 -0
  179. package/dist/sankhyablocks/p-99b1926b.entry.js +1 -0
  180. package/dist/sankhyablocks/p-9d608b62.entry.js +1 -0
  181. package/dist/sankhyablocks/{p-2028633c.js → p-9ea14b61.js} +1 -1
  182. package/dist/sankhyablocks/p-9fb97691.entry.js +1 -0
  183. package/dist/sankhyablocks/{p-0d7863ed.js → p-a13ccb86.js} +1 -1
  184. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  185. package/dist/sankhyablocks/p-b281e9e9.entry.js +1 -0
  186. package/dist/sankhyablocks/{p-9695f78b.js → p-be75153c.js} +1 -1
  187. package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
  188. package/dist/sankhyablocks/p-c4874327.entry.js +1 -0
  189. package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
  190. package/dist/sankhyablocks/p-d78d4062.js +65 -0
  191. package/dist/sankhyablocks/p-ec18c04e.entry.js +11 -0
  192. package/dist/sankhyablocks/p-eefe9954.entry.js +1 -0
  193. package/dist/sankhyablocks/{p-32f0935f.js → p-f3d1c48e.js} +1 -1
  194. package/dist/sankhyablocks/p-fca66dda.entry.js +1 -0
  195. package/dist/sankhyablocks/{p-35fe6e61.entry.js → p-fdc4cb9b.entry.js} +1 -1
  196. package/dist/sankhyablocks/p-fe741404.entry.js +1 -0
  197. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  198. package/dist/types/components/snk-actions-button/subcomponents/snk-actions-form.d.ts +1 -1
  199. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  200. package/dist/types/components/snk-application/snk-application.d.ts +12 -2
  201. package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
  202. package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
  203. package/dist/types/components/snk-attach/snk-attach.d.ts +28 -6
  204. package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
  205. package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +31 -0
  206. package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
  207. package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
  208. package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
  209. package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +15 -0
  210. package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
  211. package/dist/types/components/snk-crud/snk-crud.d.ts +9 -0
  212. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +1 -1
  213. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +1 -1
  214. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +1 -1
  215. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +19 -1
  216. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +30 -1
  217. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +7 -1
  218. package/dist/types/components/snk-form/snk-form.d.ts +1 -1
  219. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +4 -3
  220. package/dist/types/components/snk-grid/snk-grid.d.ts +10 -1
  221. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  222. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  223. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +56 -2
  224. package/dist/types/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.d.ts +1 -0
  225. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +27 -1
  226. package/dist/types/components/snk-taskbar/subcomponents/field-search.d.ts +1 -0
  227. package/dist/types/components.d.ts +203 -23
  228. package/dist/types/lib/@types/index.d.ts +2 -1
  229. package/dist/types/lib/configs/ConfigStorage.d.ts +4 -0
  230. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  231. package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
  232. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
  233. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
  234. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
  235. package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
  236. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
  237. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +2 -0
  238. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  239. package/dist/types/lib/index.d.ts +1 -1
  240. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  241. package/package.json +15 -6
  242. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  243. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  244. package/dist/cjs/pesquisa-fetcher-ef050a47.js +0 -167
  245. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  246. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  247. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  248. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  249. package/dist/esm/pesquisa-fetcher-dd3ca0a5.js +0 -165
  250. package/dist/esm/snk-grid-config.entry.js +0 -479
  251. package/dist/esm/snk-select-box.entry.js +0 -21
  252. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  253. package/dist/sankhyablocks/p-0cd2e986.entry.js +0 -1
  254. package/dist/sankhyablocks/p-145c4434.js +0 -1
  255. package/dist/sankhyablocks/p-20726710.entry.js +0 -1
  256. package/dist/sankhyablocks/p-4396d1a6.js +0 -56
  257. package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
  258. package/dist/sankhyablocks/p-4b0ea83f.entry.js +0 -1
  259. package/dist/sankhyablocks/p-5534e08c.js +0 -1
  260. package/dist/sankhyablocks/p-58218eb7.entry.js +0 -1
  261. package/dist/sankhyablocks/p-78777ae0.entry.js +0 -1
  262. package/dist/sankhyablocks/p-7915c452.entry.js +0 -1
  263. package/dist/sankhyablocks/p-953346b9.entry.js +0 -1
  264. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  265. package/dist/sankhyablocks/p-a037f5b4.entry.js +0 -1
  266. package/dist/sankhyablocks/p-a49b1019.entry.js +0 -1
  267. package/dist/sankhyablocks/p-a7923832.entry.js +0 -1
  268. package/dist/sankhyablocks/p-aaa1438e.entry.js +0 -1
  269. package/dist/sankhyablocks/p-b52c2175.js +0 -1
  270. package/dist/sankhyablocks/p-ba627e85.js +0 -60
  271. package/dist/sankhyablocks/p-bf9b7149.entry.js +0 -11
  272. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  273. package/dist/sankhyablocks/p-c259545b.entry.js +0 -1
  274. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  275. package/dist/sankhyablocks/p-ca8e7da0.entry.js +0 -1
  276. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  277. package/dist/sankhyablocks/p-d1677df0.entry.js +0 -1
  278. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  279. package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
  280. package/dist/sankhyablocks/p-e6380c60.js +0 -1
  281. package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
  282. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
  283. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
  284. /package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +0 -0
  285. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  286. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  287. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  288. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  289. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  290. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  291. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  292. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  293. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  294. /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
  295. /package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +0 -0
  296. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  297. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  298. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
  299. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
  300. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
  301. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -1,10 +1,227 @@
1
- import { DataUnit, DataType, DateUtils, StringUtils, ChangeOperation, ApplicationContext, UserInterface, DataUnitStorage } from '@sankhyalabs/core';
2
- import { D as DataFetcher, d as dist } from './DataFetcher-aa159c5a.js';
1
+ import { FieldComparator, SortMode, DataUnit, DataType, DateUtils, StringUtils, ChangeOperation, ApplicationContext, UserInterface, DataUnitStorage } from '@sankhyalabs/core';
2
+ import { D as DataFetcher, d as dist } from './DataFetcher-a650ae58.js';
3
3
  import { DISTINCT_FILTER_NAME_PREFIX } from '@sankhyalabs/ezui/dist/collection/utils/constants';
4
4
  import { DataUnitTransient } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
5
- import { P as PreloadManager } from './PreloadManager-c1c2f2b4.js';
6
- import { R as ResourceIDUtils } from './ResourceIDUtils-a114189a.js';
7
5
  import { ColumnFilterManager } from '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
6
+ import { R as ResourceIDUtils } from './ResourceIDUtils-a114189a.js';
7
+
8
+ class ArrayRepository {
9
+ constructor(equalsFunction) {
10
+ this._list = [];
11
+ this._equalsFunction = equalsFunction;
12
+ }
13
+ async load(filterFunction, sortingFunction, offset, limit) {
14
+ let result = [].concat(this._list);
15
+ if (filterFunction != undefined) {
16
+ result = this._list.filter(item => filterFunction(item));
17
+ }
18
+ if (sortingFunction != undefined) {
19
+ result = result.sort(sortingFunction);
20
+ }
21
+ const count = result.length;
22
+ if (limit != undefined) {
23
+ const start = offset || 0;
24
+ const end = limit ? start + limit : result.length;
25
+ result = result.slice(start, end);
26
+ }
27
+ return Promise.resolve({ result, count });
28
+ }
29
+ async distict(itemProcessor) {
30
+ const processedItems = [];
31
+ let hasEmpty = false;
32
+ for (const item of this._list) {
33
+ const processedItem = itemProcessor(item);
34
+ if (processedItem == undefined) {
35
+ continue;
36
+ }
37
+ if (processedItem.value == undefined) {
38
+ hasEmpty = true;
39
+ continue;
40
+ }
41
+ processedItems.push(processedItem);
42
+ }
43
+ if (hasEmpty) {
44
+ processedItems.push({ key: "", value: null });
45
+ }
46
+ return Promise.resolve(new Map(processedItems.map(item => [item.key, item.value])));
47
+ }
48
+ async push(items) {
49
+ this._list.push(...items);
50
+ }
51
+ async clear() {
52
+ this._list = [];
53
+ }
54
+ async delete(items) {
55
+ this._list = this._list.filter(item => {
56
+ for (const removed of items) {
57
+ if (this._equalsFunction(item, removed)) {
58
+ return false;
59
+ }
60
+ }
61
+ return true;
62
+ });
63
+ }
64
+ async update(items) {
65
+ this._list = this._list.map(existingItem => {
66
+ const newItem = items.find(newItem => this._equalsFunction(existingItem, newItem));
67
+ return newItem == undefined ? existingItem : newItem;
68
+ });
69
+ }
70
+ async insert(itemReference, items) {
71
+ const itemPosition = this._list.indexOf(itemReference);
72
+ if (itemPosition == -1) {
73
+ this._list.push(...items);
74
+ return;
75
+ }
76
+ this._list = this._list.slice(0, itemPosition).concat(items).concat(this._list.slice(itemPosition));
77
+ }
78
+ isOperating() {
79
+ return true;
80
+ }
81
+ async isEmpty() {
82
+ return Promise.resolve(this._list.length === 0);
83
+ }
84
+ async count() {
85
+ return Promise.resolve(this._list.length);
86
+ }
87
+ }
88
+
89
+ class PreloadManager {
90
+ static setLoadingStatus(dataUnit, loadingInProgress) {
91
+ this._loadingStatus.set(dataUnit.name, loadingInProgress);
92
+ }
93
+ static isCacheEnabled(_dataUnit) {
94
+ return true;
95
+ }
96
+ static cacheRecords(dataUnit, records, resetDatabase, loadingInProgress) {
97
+ PreloadManager.setLoadingStatus(dataUnit, loadingInProgress);
98
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
99
+ this.getRepository(dataUnit).push(records);
100
+ }
101
+ else {
102
+ if (resetDatabase) {
103
+ this._repositories.delete(dataUnit.name);
104
+ }
105
+ }
106
+ }
107
+ static getSortingFunction(dataUnit, sorting) {
108
+ if (sorting == undefined || sorting.length == 0) {
109
+ return undefined;
110
+ }
111
+ return (recordA, recordB) => {
112
+ for (const sort of sorting) {
113
+ const result = FieldComparator.compare(dataUnit.getField(sort.field), recordA, recordB, sort.mode === SortMode.ASC);
114
+ if (result != 0) {
115
+ return result;
116
+ }
117
+ }
118
+ };
119
+ }
120
+ static async getDistinct(dataUnit, fieldName) {
121
+ if (!PreloadManager.isCacheEnabled(dataUnit)) {
122
+ return Promise.resolve(ColumnFilterManager.compileDistinct(fieldName, dataUnit));
123
+ }
124
+ let filterFunction;
125
+ const request = dataUnit.getLastLoadRequest();
126
+ if (request != undefined) {
127
+ const columnFilters = ColumnFilterManager.getColumnFilters(request.filters, fieldName);
128
+ filterFunction = 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
+ let useCache = request.source === "EZ_GRID_LOADING_SOURCE" || request.source === DataUnit.CHANGING_PAGE_LOADING_SOURCE;
156
+ if (useCache) {
157
+ const isCacheEmpty = await PreloadManager.getRepository(dataUnit).isEmpty();
158
+ if (!isCacheEmpty) {
159
+ return PreloadManager.loadFromCache(dataUnit, request);
160
+ }
161
+ }
162
+ //Como não vamos aproveitar o cache, ele precisa ser limpo.
163
+ PreloadManager.getRepository(dataUnit).clear().catch(() => { });
164
+ }
165
+ return loadFromServer(dataUnit, request);
166
+ }
167
+ catch (error) {
168
+ console.error(error);
169
+ return Promise.reject(error);
170
+ }
171
+ }
172
+ static insertRecords(dataUnit, reference, records) {
173
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
174
+ PreloadManager.getRepository(dataUnit).insert(reference, records);
175
+ }
176
+ }
177
+ static updateRecords(dataUnit, records) {
178
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
179
+ PreloadManager.getRepository(dataUnit).update(records);
180
+ }
181
+ }
182
+ static removeRecords(dataUnit, records) {
183
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
184
+ PreloadManager.getRepository(dataUnit).delete(records);
185
+ }
186
+ }
187
+ static async countRecords(dataUnit) {
188
+ if (PreloadManager.isCacheEnabled(dataUnit)) {
189
+ return PreloadManager.getRepository(dataUnit).count();
190
+ }
191
+ return Promise.resolve(0);
192
+ }
193
+ static getRepository(dataUnit) {
194
+ const name = dataUnit.name;
195
+ if (!PreloadManager._repositories.has(name)) {
196
+ PreloadManager._repositories.set(name, new ArrayRepository((recordA, recordB) => recordA.__record__id__ === recordB.__record__id__));
197
+ }
198
+ return PreloadManager._repositories.get(name);
199
+ }
200
+ static async loadFromCache(dataUnit, request) {
201
+ return new Promise((accept, reject) => {
202
+ const columnFilters = ColumnFilterManager.getColumnFilters(request.filters, "");
203
+ const { limit, offset, sort } = request;
204
+ PreloadManager.getRepository(dataUnit)
205
+ .load(ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values())), PreloadManager.getSortingFunction(dataUnit, sort), offset, limit)
206
+ .then(loadResult => {
207
+ const stillLoading = PreloadManager._loadingStatus.get(dataUnit.name);
208
+ const { count, result: records } = loadResult;
209
+ const firstRecord = count == 0 ? 0 : offset + 1;
210
+ const lastRecord = offset + Math.min(records.length, limit);
211
+ const currentPage = offset / limit;
212
+ const paginationInfo = {
213
+ count, currentPage, firstRecord, lastRecord,
214
+ hasMore: stillLoading || (lastRecord < count),
215
+ total: stillLoading ? undefined : count
216
+ };
217
+ accept({ records, paginationInfo });
218
+ })
219
+ .catch(reason => reject(reason));
220
+ });
221
+ }
222
+ }
223
+ PreloadManager._repositories = new Map();
224
+ PreloadManager._loadingStatus = new Map();
8
225
 
9
226
  class InMemoryLoader {
10
227
  constructor(metadata, records) {
@@ -18,7 +235,7 @@ class InMemoryLoader {
18
235
  this.dataUnit.loadMetadata().then(() => this.dataUnit.loadData());
19
236
  }
20
237
  getRecordsToLoad() {
21
- if (this._initialRecords == undefined && this.dataUnit.records.length > 0) {
238
+ if (this._initialRecords == undefined || this.dataUnit.records.length > 0) {
22
239
  this._initialRecords = this.dataUnit.records;
23
240
  }
24
241
  return this._initialRecords;
@@ -153,30 +370,39 @@ class DatasetStrategy {
153
370
  canSlice() {
154
371
  return false;
155
372
  }
373
+ processSortingSide(request, dataUnit, serverSideFilters) {
374
+ const localSorting = [];
375
+ const serverSorting = [];
376
+ if (request.sort != undefined) {
377
+ if (serverSideFilters.length === 0) {
378
+ return { localSorting: request.sort, serverSorting: [] };
379
+ }
380
+ for (const sort of request.sort) {
381
+ const descriptor = dataUnit.getField(sort.field);
382
+ const local = descriptor != undefined
383
+ && descriptor.properties != undefined
384
+ && descriptor.properties.calculated === "true";
385
+ if (local) {
386
+ localSorting.push(sort);
387
+ }
388
+ else {
389
+ serverSorting.push(sort);
390
+ }
391
+ }
392
+ }
393
+ return { localSorting, serverSorting };
394
+ }
156
395
  async load(dataUnit, request, loadingInfo) {
396
+ var _a, _b;
157
397
  if (dataUnit.metadata == undefined) {
158
398
  return Promise.resolve({ records: [], loadingInfo });
159
399
  }
160
400
  try {
161
- const localSorting = [];
162
- const serverSorting = [];
163
- if (request.sort != undefined) {
164
- for (const sort of request.sort) {
165
- const descriptor = dataUnit.getField(sort.field);
166
- const local = descriptor != undefined
167
- && descriptor.properties != undefined
168
- && descriptor.properties.calculated === "true";
169
- if (local) {
170
- localSorting.push(sort);
171
- }
172
- else {
173
- serverSorting.push(sort);
174
- }
175
- }
176
- }
401
+ 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 : [];
402
+ const { localSorting, serverSorting } = this.processSortingSide(request, dataUnit, serverSideFilters);
177
403
  const fields = this.getFieldsList(dataUnit);
178
404
  const serviceName = "DatasetSP.loadRecords";
179
- const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting);
405
+ const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting, serverSideFilters);
180
406
  const params = loadingInfo.quiet ? { urlParams: { quietMode: "true" } } : undefined;
181
407
  const { result: responseRecords, pagerID: pagerId } = await DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
182
408
  const records = this.processRecords(dataUnit, fields, responseRecords);
@@ -198,13 +424,21 @@ class DatasetStrategy {
198
424
  getFieldsList(dataUnit) {
199
425
  let fields = ["__record__id__", "__record__label__"];
200
426
  dataUnit.metadata.fields.forEach((descriptor) => {
201
- if (descriptor.standAlone) {
427
+ if (descriptor.standAlone)
202
428
  return;
203
- }
204
429
  fields = fields.concat(this.getFieldNames(descriptor));
205
430
  });
206
431
  return fields;
207
432
  }
433
+ getStandAloneFieldsList(dataUnit) {
434
+ let fields = {};
435
+ dataUnit.metadata.fields.forEach((currentField) => {
436
+ if (!currentField.standAlone)
437
+ return;
438
+ fields = Object.assign(Object.assign({}, fields), { [currentField.name]: { fieldType: currentField.dataType, userType: currentField.userInterface } });
439
+ });
440
+ return fields;
441
+ }
208
442
  getFieldNames(descriptor) {
209
443
  const descriptionField = this.getSearchDescriptionField(descriptor);
210
444
  if (descriptionField == undefined) {
@@ -212,7 +446,7 @@ class DatasetStrategy {
212
446
  }
213
447
  return [descriptor.name, descriptionField];
214
448
  }
215
- buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting) {
449
+ buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting, serverSideFilters) {
216
450
  const dataSetID = dataUnit.dataUnitId;
217
451
  const dataUnitName = dataUnit.name;
218
452
  const entityName = DataUnitFetcher.parseDataUnitName(dataUnitName).entityName;
@@ -227,14 +461,11 @@ class DatasetStrategy {
227
461
  totalRecordsCount: loadingInfo.count,
228
462
  pagerID: loadingInfo.pagerId,
229
463
  standAlone: false,
230
- standAloneFieldsMD: {
231
- __record__id__: { "fieldType": "S", "userType": "P" },
232
- __record__label__: { "fieldType": "S", "userType": "P" }
233
- },
464
+ standAloneFieldsMD: Object.assign({ __record__id__: { "fieldType": "S", "userType": "P" }, __record__label__: { "fieldType": "S", "userType": "P" } }, this.getStandAloneFieldsList(dataUnit)),
234
465
  tryJoinedFields: true,
235
466
  parallelLoader: useParallelLoader,
236
467
  crudListener: `br.com.sankhya.bff.${this.getModuleName()}.BFFDataUnitDatasetAdapter`,
237
- txProperties: this.getTxProperties(dataUnitName, request, sorting),
468
+ txProperties: this.getTxProperties(dataUnit, request, sorting, serverSideFilters),
238
469
  useDefaultRowsLimit: false
239
470
  }
240
471
  };
@@ -245,12 +476,10 @@ class DatasetStrategy {
245
476
  const moduleName = app.getModuleName();
246
477
  return moduleName.replace("-bff", "");
247
478
  }
248
- getTxProperties(dataUnitName, request, sorting) {
249
- var _a, _b;
479
+ getTxProperties(dataUnit, request, sorting, serverSideFilters) {
250
480
  const txProperties = {
251
- "__DATA_UNIT_ADAPTER__[dataUnitName]": dataUnitName
481
+ "__DATA_UNIT_ADAPTER__[dataUnitName]": dataUnit.name
252
482
  };
253
- 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 : [];
254
483
  if (serverSideFilters.length !== 0) {
255
484
  txProperties["__DATA_UNIT_ADAPTER__[criteria]"] = JSON.stringify(serverSideFilters);
256
485
  }
@@ -260,6 +489,13 @@ class DatasetStrategy {
260
489
  if (request.parentRecordId != undefined) {
261
490
  txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
262
491
  }
492
+ const loaderProps = dataUnit.getGlobalLoaderProps();
493
+ if (loaderProps == undefined || loaderProps.size === 0) {
494
+ return txProperties;
495
+ }
496
+ Array.from(loaderProps.entries()).forEach(([name, value]) => {
497
+ txProperties[name] = value;
498
+ });
263
499
  return txProperties;
264
500
  }
265
501
  processRecords(dataUnit, fields, responseRecords) {
@@ -589,14 +825,41 @@ class DataUnitFetcher {
589
825
  });
590
826
  });
591
827
  }
828
+ addTransientProperties(dataUnit, updatingFields) {
829
+ const loaderProps = dataUnit.getGlobalLoaderProps();
830
+ if (loaderProps == undefined || loaderProps.size === 0) {
831
+ return updatingFields;
832
+ }
833
+ if (updatingFields == undefined) {
834
+ updatingFields = {};
835
+ }
836
+ Array.from(loaderProps.entries()).forEach(([name, value]) => {
837
+ updatingFields[`transient.${name}`] = value;
838
+ });
839
+ return updatingFields;
840
+ }
841
+ getUpdatingFields(dataUnit, originalUpdatingFields) {
842
+ if (originalUpdatingFields == undefined) {
843
+ return;
844
+ }
845
+ const updatingFields = Object.assign({}, originalUpdatingFields);
846
+ Object.keys(updatingFields).forEach(key => {
847
+ const descriptor = dataUnit.getField(key);
848
+ if (descriptor != undefined && descriptor.standAlone) {
849
+ delete updatingFields[key];
850
+ }
851
+ });
852
+ return this.addTransientProperties(dataUnit, updatingFields);
853
+ }
592
854
  saveData(dataUnit, duChanges) {
593
855
  const updatedRecordsIds = [];
594
856
  const addedRecordsIds = [];
595
857
  const changes = duChanges.map((change) => {
596
- const { dataUnit: changeDU, record, updatingFields, operation } = change;
858
+ const { dataUnit: changeDU, record, operation } = change;
597
859
  const dataUnitInstance = DataUnitStorage.get(changeDU);
860
+ const updatingFields = this.getUpdatingFields(dataUnitInstance, change.updatingFields);
598
861
  let parsedUpdatingFields;
599
- if (updatingFields) {
862
+ if (updatingFields != undefined) {
600
863
  parsedUpdatingFields = Object.entries(updatingFields).map(([fieldName, value]) => {
601
864
  const descriptor = dataUnitInstance.getField(fieldName);
602
865
  const dataType = descriptor ? descriptor.dataType : DataType.TEXT;
@@ -644,7 +907,8 @@ class DataUnitFetcher {
644
907
  }
645
908
  responseRecord.fields.forEach(({ name, value }) => {
646
909
  var _a;
647
- duRecord[name] = ((_a = dataUnitInstance === null || dataUnitInstance === void 0 ? void 0 : dataUnitInstance.valueFromString) === null || _a === void 0 ? void 0 : _a.call(dataUnitInstance, name, value)) || value;
910
+ const valueFromString = (_a = dataUnitInstance === null || dataUnitInstance === void 0 ? void 0 : dataUnitInstance.valueFromString) === null || _a === void 0 ? void 0 : _a.call(dataUnitInstance, name, value);
911
+ duRecord[name] = (valueFromString !== undefined) ? valueFromString : value;
648
912
  });
649
913
  dataUnitRecords.push(duRecord);
650
914
  });
@@ -719,4 +983,164 @@ class DataUnitFetcher {
719
983
  }
720
984
  }
721
985
 
722
- export { DataUnitFetcher as D, InMemoryLoader as I };
986
+ class PesquisaFetcher {
987
+ constructor() {
988
+ this._defaultPageSize = 100;
989
+ this._templateByQuery = new Map();
990
+ this._searchListenersByDataUnit = new Map();
991
+ this.buldTemplates();
992
+ }
993
+ buldTemplates() {
994
+ this._templateByQuery.set("search", dist.gql `query($entityName: String! $argument: String $criteria: InputSearchCriteria $options: InputSearchOptions) {
995
+ $queryAlias$: search(entityName: $entityName argument: $argument criteria: $criteria options: $options){
996
+ value
997
+ label
998
+ }
999
+ }`);
1000
+ }
1001
+ loadSearchOptions(entityName, argument, criteria, options) {
1002
+ var _a;
1003
+ const cleanText = (argument === null || argument === void 0 ? void 0 : argument.toString().trim()) || undefined;
1004
+ argument = isNaN(Number(cleanText)) && cleanText ? `%${cleanText}` : cleanText;
1005
+ criteria === null || criteria === void 0 ? void 0 : criteria.params.forEach(param => {
1006
+ if (param.dataType === DataType.OBJECT) {
1007
+ param.value = JSON.stringify(param.value);
1008
+ }
1009
+ });
1010
+ const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, options);
1011
+ const values = {
1012
+ argument: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.argument) || argument,
1013
+ entityName,
1014
+ criteria: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) || criteria,
1015
+ options: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions) || options,
1016
+ };
1017
+ if (values.options) {
1018
+ (_a = values.options) === null || _a === void 0 ? true : delete _a.dataUnitId;
1019
+ }
1020
+ return new Promise((resolve, reject) => {
1021
+ DataFetcher.get()
1022
+ .callGraphQL({
1023
+ values,
1024
+ query: this._templateByQuery.get("search"),
1025
+ })
1026
+ .then((result) => {
1027
+ resolve(result);
1028
+ })
1029
+ .catch((error) => {
1030
+ reject(error);
1031
+ });
1032
+ });
1033
+ }
1034
+ loadAdvancedSearch(entityName, argument, criteria, searchOptions) {
1035
+ var _a, _b, _c, _d;
1036
+ const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, searchOptions);
1037
+ const values = {
1038
+ argument: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.argument) || argument,
1039
+ criteria: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) || criteria,
1040
+ searchOptions: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions) || searchOptions,
1041
+ };
1042
+ const serviceName = "PesquisaSP.getSuggestion";
1043
+ const externalCriteria = {
1044
+ query: {
1045
+ $: (_a = values.criteria) === null || _a === void 0 ? void 0 : _a.expression
1046
+ }
1047
+ };
1048
+ if (((_c = (_b = values.criteria) === null || _b === void 0 ? void 0 : _b.params) === null || _c === void 0 ? void 0 : _c.length) > 0) {
1049
+ externalCriteria.params = {
1050
+ param: values.criteria.params.map(param => {
1051
+ let value = param.value;
1052
+ if (typeof value === "string") {
1053
+ const match = /CTX\{([^}]+)\}/.exec(value);
1054
+ if (match) {
1055
+ value = ApplicationContext.getContextValue(`__SNK__APPLICATION__FILTER__CONTEXT(${match[1]})__`);
1056
+ }
1057
+ }
1058
+ let type = param.dataType;
1059
+ if (type === DataType.OBJECT) {
1060
+ value = value.value;
1061
+ type = "S";
1062
+ }
1063
+ else {
1064
+ type = convertParamType(param.dataType);
1065
+ }
1066
+ return { $: value, type };
1067
+ })
1068
+ };
1069
+ }
1070
+ const options = searchOptions != undefined
1071
+ ? Object.assign(Object.assign({}, searchOptions), { "pkFieldName": searchOptions.codeFieldName, "label": searchOptions.descriptionFieldName, "fieldName": searchOptions.codeFieldName, "useDescriptionOptions": false, "enableRowsCounter": true }) : undefined;
1072
+ const reqBody = {
1073
+ "serviceName": serviceName,
1074
+ "requestBody": {
1075
+ "criteria": Object.assign({ "entityName": entityName, "compacted": false, "ignoreEntityCriteria": false, "limit": this._defaultPageSize, "query": { "$": values.argument }, "orderByDesc": false, "externalCriteria": externalCriteria, "localEntityName": (_d = values.searchOptions) === null || _d === void 0 ? void 0 : _d.rootEntity }, { options }),
1076
+ "clientEventList": {
1077
+ "clientEvent": []
1078
+ }
1079
+ }
1080
+ };
1081
+ return new Promise((resolve, reject) => {
1082
+ DataFetcher.get()
1083
+ .callServiceBroker("PesquisaSP.getSuggestion", JSON.stringify(reqBody))
1084
+ .then(result => resolve(result))
1085
+ .catch(error => reject(error));
1086
+ });
1087
+ }
1088
+ addSearchListener(entityName, dataUnitID, listener) {
1089
+ var _a;
1090
+ const dataUnitSearchListeners = this._searchListenersByDataUnit.get(dataUnitID) || [];
1091
+ const entityListener = dataUnitSearchListeners.find(currentListener => currentListener.entity === entityName);
1092
+ if (!entityListener) {
1093
+ this._searchListenersByDataUnit.set(dataUnitID, [...dataUnitSearchListeners, { entity: entityName, listener }]);
1094
+ }
1095
+ else {
1096
+ for (const type of Object.keys(listener)) {
1097
+ if (type in entityListener.listener) {
1098
+ const listenerFunctionIsEquals = ((_a = entityListener.listener[type]) === null || _a === void 0 ? void 0 : _a.toString()) === listener[type].toString();
1099
+ if (listenerFunctionIsEquals)
1100
+ continue;
1101
+ entityListener.listener[type] = listener[type];
1102
+ }
1103
+ }
1104
+ }
1105
+ return () => {
1106
+ const newListeners = dataUnitSearchListeners.filter(currentListener => currentListener.entity !== entityName);
1107
+ if (!newListeners.length) {
1108
+ this._searchListenersByDataUnit.delete(dataUnitID);
1109
+ return;
1110
+ }
1111
+ this._searchListenersByDataUnit.set(dataUnitID, newListeners);
1112
+ };
1113
+ }
1114
+ applySearchListener(listenerType, entityName, argument, criteria, searchOptions) {
1115
+ var _a;
1116
+ const dataUnitId = searchOptions === null || searchOptions === void 0 ? void 0 : searchOptions.dataUnitId;
1117
+ if (!dataUnitId)
1118
+ return;
1119
+ const entityListener = (_a = this._searchListenersByDataUnit.get(dataUnitId)) === null || _a === void 0 ? void 0 : _a.find(({ entity }) => entity === entityName);
1120
+ if (!entityListener)
1121
+ return;
1122
+ const { listener } = entityListener;
1123
+ if (!(listenerType in listener))
1124
+ return;
1125
+ return listener[listenerType]({ argument, criteria, searchOptions });
1126
+ }
1127
+ }
1128
+ function convertParamType(dataType) {
1129
+ //Alerta: Cuidado pra não contaminar o DataType com a implementação
1130
+ //atual da pesquisa... em geral, somente inteiros,
1131
+ //data (com ou sem hora) e string são realmente relevantes
1132
+ switch (dataType) {
1133
+ case DataType.NUMBER:
1134
+ return "I";
1135
+ case DataType.DATE:
1136
+ return "D";
1137
+ default:
1138
+ return "S";
1139
+ }
1140
+ }
1141
+ var SearchListenerType;
1142
+ (function (SearchListenerType) {
1143
+ SearchListenerType["beforeSearch"] = "beforeSearch";
1144
+ })(SearchListenerType || (SearchListenerType = {}));
1145
+
1146
+ export { DataUnitFetcher as D, InMemoryLoader as I, PesquisaFetcher as P, PreloadManager as a };