@sankhyalabs/sankhyablocks 8.16.0-dev.10 → 8.16.0-dev.101

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 (422) hide show
  1. package/dist/cjs/ClientSideExporterProvider-5fff8770.js +372 -0
  2. package/dist/cjs/{ConfigStorage-a343e418.js → ConfigStorage-df09fb78.js} +2 -2
  3. package/dist/cjs/{DataFetcher-313debd8.js → DataFetcher-1afdb18e.js} +231 -79
  4. package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
  5. package/dist/cjs/IFetchDataExporterParams-e78ec415.js +8 -0
  6. package/dist/cjs/ISave-c76e2c51.js +397 -0
  7. package/dist/cjs/{SnkFormConfigManager-166cbd1f.js → SnkFormConfigManager-45a8d7b7.js} +75 -17
  8. package/dist/cjs/{SnkMessageBuilder-897ffd08.js → SnkMessageBuilder-bae64d0d.js} +6 -2
  9. package/dist/cjs/{auth-fetcher-54f5ff9d.js → auth-fetcher-1687ac0a.js} +1 -1
  10. package/dist/cjs/{constants-35ddd366.js → constants-77c1b8bd.js} +10 -0
  11. package/dist/cjs/{dataunit-fetcher-688d3f05.js → dataunit-fetcher-4a5d491a.js} +220 -173
  12. package/dist/cjs/{field-search-f56aa7d6.js → field-search-68e34bf4.js} +5 -1
  13. package/dist/cjs/{form-config-fetcher-2dd00e5b.js → form-config-fetcher-40d3f752.js} +56 -2
  14. package/dist/cjs/{index-1dfc7a6e.js → index-e3e39724.js} +5 -0
  15. package/dist/cjs/index-f9e81701.js +16 -32
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +155 -0
  18. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  19. package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_7.cjs.entry.js} +201 -44
  20. package/dist/cjs/snk-application.cjs.entry.js +469 -78
  21. package/dist/cjs/snk-attach.cjs.entry.js +49 -37
  22. package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +401 -13
  23. package/dist/cjs/snk-configurator.cjs.entry.js +10 -3
  24. package/dist/cjs/snk-crud.cjs.entry.js +41 -52
  25. package/dist/cjs/snk-data-exporter.cjs.entry.js +38 -30
  26. package/dist/cjs/{snk-data-unit-8fa7917a.js → snk-data-unit-4b510d6e.js} +55 -31
  27. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
  28. package/dist/cjs/snk-detail-view.cjs.entry.js +17 -17
  29. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  30. package/dist/cjs/snk-field-config.cjs.entry.js +1 -1
  31. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1438 -0
  32. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  33. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  34. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  35. package/dist/cjs/snk-filter-number.cjs.entry.js +1 -1
  36. package/dist/cjs/snk-filter-search.cjs.entry.js +18 -5
  37. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -1
  38. package/dist/cjs/snk-grid.cjs.entry.js +96 -28
  39. package/dist/cjs/{snk-guides-viewer-9c682034.js → snk-guides-viewer-e8e5f7b4.js} +27 -17
  40. package/dist/cjs/snk-guides-viewer.cjs.entry.js +11 -12
  41. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +4 -4
  42. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  43. package/dist/cjs/snk-pesquisa.cjs.entry.js +110 -31
  44. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  45. package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
  46. package/dist/cjs/snk-simple-crud.cjs.entry.js +119 -113
  47. package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
  48. package/dist/cjs/snk-taskbar.cjs.entry.js +72 -40
  49. package/dist/cjs/{taskbar-elements-9ad1f9c0.js → taskbar-elements-7e19882d.js} +1 -1
  50. package/dist/collection/collection-manifest.json +16 -31
  51. package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
  52. package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
  53. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
  54. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +5 -2
  55. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
  56. package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
  57. package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
  58. package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-plus.js +107 -0
  59. package/dist/collection/components/snk-application/snk-application.css +36 -0
  60. package/dist/collection/components/snk-application/snk-application.js +448 -71
  61. package/dist/collection/components/snk-attach/snk-attach.js +25 -16
  62. package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
  63. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +2 -5
  64. package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
  65. package/dist/collection/components/snk-configurator/snk-configurator.js +26 -1
  66. package/dist/collection/components/snk-crud/snk-crud.js +147 -44
  67. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +10 -1
  68. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +27 -3
  69. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
  70. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +52 -6
  71. package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
  72. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -8
  73. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
  74. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +41 -10
  75. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +18 -6
  76. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
  77. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +10 -9
  78. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
  79. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
  80. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  81. package/dist/collection/components/snk-data-unit/snk-data-unit.js +53 -29
  82. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +3 -3
  83. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
  84. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
  85. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
  86. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +18 -5
  87. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
  88. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
  89. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
  90. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
  91. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +10 -4
  92. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
  93. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +3 -1
  94. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +2 -6
  95. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +119 -29
  96. package/dist/collection/components/snk-form/snk-form.js +2 -2
  97. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +73 -15
  98. package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
  99. package/dist/collection/components/snk-form-config/snk-form-config.js +49 -8
  100. package/dist/collection/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.js +5 -3
  101. package/dist/collection/components/snk-grid/snk-grid.css +8 -0
  102. package/dist/collection/components/snk-grid/snk-grid.js +199 -13
  103. package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
  104. package/dist/collection/components/snk-grid-config/snk-grid-config.js +2 -0
  105. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.css +3 -0
  106. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +73 -0
  107. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.css +78 -0
  108. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +57 -0
  109. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
  110. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
  111. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
  112. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
  113. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
  114. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
  115. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +174 -32
  116. package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
  117. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
  118. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
  119. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +202 -34
  120. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
  121. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
  122. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
  123. package/dist/collection/components/snk-taskbar/snk-taskbar.js +112 -38
  124. package/dist/collection/lib/@types/index.js +5 -0
  125. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +3 -3
  126. package/dist/collection/lib/configs/LayoutFormConfig.js +25 -0
  127. package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -103
  128. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -32
  129. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +44 -24
  130. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  131. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  132. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  133. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  134. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +23 -14
  135. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
  136. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +59 -5
  137. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  138. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +133 -9
  139. package/dist/collection/lib/index.js +1 -0
  140. package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
  141. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  142. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  143. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  144. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  145. package/dist/collection/lib/utils/constants.js +10 -0
  146. package/dist/collection/sw.js +46 -0
  147. package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +176 -33
  148. package/dist/components/DataFetcher.js +232 -80
  149. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  150. package/dist/components/ISave.js +391 -1
  151. package/dist/components/SnkFormConfigManager.js +73 -15
  152. package/dist/components/SnkMessageBuilder.js +6 -2
  153. package/dist/components/constants.js +11 -1
  154. package/dist/components/dataunit-fetcher.js +238 -188
  155. package/dist/components/form-config-fetcher.js +55 -1
  156. package/dist/components/index.d.ts +5 -0
  157. package/dist/components/index.js +5 -0
  158. package/dist/components/pesquisa-grid.d.ts +11 -0
  159. package/dist/components/pesquisa-grid.js +6 -0
  160. package/dist/components/pesquisa-grid2.js +102 -0
  161. package/dist/components/pesquisa-tree.d.ts +11 -0
  162. package/dist/components/pesquisa-tree.js +6 -0
  163. package/dist/components/pesquisa-tree2.js +91 -0
  164. package/dist/components/snk-actions-button2.js +44 -40
  165. package/dist/components/snk-application2.js +492 -76
  166. package/dist/components/snk-attach2.js +61 -55
  167. package/dist/components/snk-config-options2.js +6 -4
  168. package/dist/components/snk-configurator2.js +23 -3
  169. package/dist/components/snk-crud.js +118 -105
  170. package/dist/components/snk-data-exporter2.js +37 -23
  171. package/dist/components/snk-data-unit2.js +56 -69
  172. package/dist/components/snk-detail-view2.js +136 -109
  173. package/dist/components/snk-exporter-email-sender2.js +1 -1
  174. package/dist/components/snk-filter-bar2.js +68 -34
  175. package/dist/components/snk-filter-binary-select.js +1 -1
  176. package/dist/components/snk-filter-checkbox-list.js +1 -1
  177. package/dist/components/snk-filter-item2.js +10 -4
  178. package/dist/components/snk-filter-modal.js +4 -2
  179. package/dist/components/snk-filter-number.js +1 -1
  180. package/dist/components/snk-filter-search.js +18 -5
  181. package/dist/components/snk-filter-text.js +2 -1
  182. package/dist/components/snk-form-config2.js +35 -10
  183. package/dist/components/snk-form.js +2 -2
  184. package/dist/components/snk-grid-config2.js +3 -1
  185. package/dist/components/snk-grid2.js +92 -18
  186. package/dist/components/snk-layout-form-config.d.ts +11 -0
  187. package/dist/components/snk-layout-form-config.js +6 -0
  188. package/dist/components/snk-layout-form-config2.js +73 -0
  189. package/dist/components/snk-personalized-filter-editor.js +4 -4
  190. package/dist/components/snk-pesquisa2.js +125 -33
  191. package/dist/components/snk-print-selector.js +1 -1
  192. package/dist/components/snk-simple-bar2.js +1 -1
  193. package/dist/components/snk-simple-crud2.js +115 -111
  194. package/dist/components/snk-simple-form-config.d.ts +11 -0
  195. package/dist/components/snk-simple-form-config.js +6 -0
  196. package/dist/components/snk-simple-form-config2.js +121 -0
  197. package/dist/components/snk-tab-config2.js +1 -1
  198. package/dist/components/snk-taskbar2.js +72 -40
  199. package/dist/components/snk-view-representation.d.ts +11 -0
  200. package/dist/components/snk-view-representation.js +6 -0
  201. package/dist/components/snk-view-representation2.js +41 -0
  202. package/dist/components/teste-pesquisa.js +13 -1
  203. package/dist/esm/ClientSideExporterProvider-da9935ed.js +361 -0
  204. package/dist/esm/{ConfigStorage-3806514e.js → ConfigStorage-71e6766f.js} +2 -2
  205. package/dist/esm/{DataFetcher-c1baf61d.js → DataFetcher-88e56266.js} +232 -80
  206. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  207. package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
  208. package/dist/esm/ISave-5efafc97.js +394 -0
  209. package/dist/esm/{SnkFormConfigManager-31b24066.js → SnkFormConfigManager-be490a33.js} +75 -17
  210. package/dist/esm/{SnkMessageBuilder-571462fb.js → SnkMessageBuilder-6fff4a4c.js} +6 -2
  211. package/dist/esm/{auth-fetcher-039abba3.js → auth-fetcher-3510520e.js} +1 -1
  212. package/dist/esm/{constants-8457af36.js → constants-7db1128a.js} +11 -1
  213. package/dist/esm/{dataunit-fetcher-264191b2.js → dataunit-fetcher-1d02ecfc.js} +222 -172
  214. package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
  215. package/dist/esm/{form-config-fetcher-30fb808f.js → form-config-fetcher-fa208a6c.js} +56 -2
  216. package/dist/esm/index-a7d3d3f1.js +16 -32
  217. package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
  218. package/dist/esm/loader.js +1 -1
  219. package/dist/esm/pesquisa-grid_2.entry.js +150 -0
  220. package/dist/esm/sankhyablocks.js +1 -1
  221. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_7.entry.js} +201 -47
  222. package/dist/esm/snk-application.entry.js +470 -79
  223. package/dist/esm/snk-attach.entry.js +50 -38
  224. package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +401 -15
  225. package/dist/esm/snk-configurator.entry.js +10 -3
  226. package/dist/esm/snk-crud.entry.js +42 -53
  227. package/dist/esm/snk-data-exporter.entry.js +38 -30
  228. package/dist/esm/{snk-data-unit-f5cbe64b.js → snk-data-unit-7d0ce406.js} +55 -31
  229. package/dist/esm/snk-data-unit.entry.js +5 -5
  230. package/dist/esm/snk-detail-view.entry.js +17 -17
  231. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  232. package/dist/esm/snk-field-config.entry.js +1 -1
  233. package/dist/esm/snk-filter-bar_4.entry.js +1431 -0
  234. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  235. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  236. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  237. package/dist/esm/snk-filter-number.entry.js +1 -1
  238. package/dist/esm/snk-filter-search.entry.js +18 -5
  239. package/dist/esm/snk-filter-text.entry.js +2 -1
  240. package/dist/esm/snk-grid.entry.js +91 -23
  241. package/dist/esm/{snk-guides-viewer-8f6960a2.js → snk-guides-viewer-c44b3839.js} +27 -17
  242. package/dist/esm/snk-guides-viewer.entry.js +11 -12
  243. package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
  244. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  245. package/dist/esm/snk-pesquisa.entry.js +110 -31
  246. package/dist/esm/snk-print-selector.entry.js +1 -1
  247. package/dist/esm/snk-simple-bar.entry.js +1 -1
  248. package/dist/esm/snk-simple-crud.entry.js +105 -99
  249. package/dist/esm/snk-tab-config.entry.js +1 -1
  250. package/dist/esm/snk-taskbar.entry.js +73 -41
  251. package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-d2353c64.js} +1 -1
  252. package/dist/sankhyablocks/p-00796b12.entry.js +1 -0
  253. package/dist/sankhyablocks/{p-52920496.js → p-03b68a74.js} +1 -1
  254. package/dist/sankhyablocks/p-0f3698af.js +1 -0
  255. package/dist/sankhyablocks/{p-47db7e88.entry.js → p-165cde3b.entry.js} +1 -1
  256. package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
  257. package/dist/sankhyablocks/p-17425c72.js +1 -0
  258. package/dist/sankhyablocks/p-23736d75.js +1 -0
  259. package/dist/sankhyablocks/p-35f85998.entry.js +1 -0
  260. package/dist/sankhyablocks/{p-95df461f.entry.js → p-3749dffb.entry.js} +1 -1
  261. package/dist/sankhyablocks/p-38e3ffda.entry.js +1 -0
  262. package/dist/sankhyablocks/p-3b190fb1.entry.js +1 -0
  263. package/dist/sankhyablocks/{p-7e7a7473.js → p-3fc82614.js} +1 -1
  264. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
  265. package/dist/sankhyablocks/p-47178038.entry.js +1 -0
  266. package/dist/sankhyablocks/{p-2c68b3ae.entry.js → p-490b75b5.entry.js} +1 -1
  267. package/dist/sankhyablocks/p-4ad638be.js +1 -0
  268. package/dist/sankhyablocks/p-5503e89f.entry.js +1 -0
  269. package/dist/sankhyablocks/p-5cc206bb.entry.js +1 -0
  270. package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
  271. package/dist/sankhyablocks/p-5ffa0493.entry.js +1 -0
  272. package/dist/sankhyablocks/p-60137b7a.entry.js +1 -0
  273. package/dist/sankhyablocks/p-601b252b.js +26 -0
  274. package/dist/sankhyablocks/p-6dd38d7b.js +6 -0
  275. package/dist/sankhyablocks/p-6e0a5314.js +1 -0
  276. package/dist/sankhyablocks/{p-913a9979.js → p-73285a8a.js} +1 -1
  277. package/dist/sankhyablocks/p-754559b9.entry.js +11 -0
  278. package/dist/sankhyablocks/p-79f823f3.entry.js +1 -0
  279. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  280. package/dist/sankhyablocks/p-835128f5.entry.js +1 -0
  281. package/dist/sankhyablocks/p-893b9483.entry.js +1 -0
  282. package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
  283. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
  284. package/dist/sankhyablocks/p-8f3f2306.js +1 -0
  285. package/dist/sankhyablocks/p-90684a75.entry.js +1 -0
  286. package/dist/sankhyablocks/{p-b0ef4383.js → p-9261d8a0.js} +1 -1
  287. package/dist/sankhyablocks/p-92778d5a.js +1 -0
  288. package/dist/sankhyablocks/p-a8be1d67.js +60 -0
  289. package/dist/sankhyablocks/p-a962a3e4.entry.js +1 -0
  290. package/dist/sankhyablocks/p-b2a2a83e.entry.js +1 -0
  291. package/dist/sankhyablocks/p-b6200d32.entry.js +1 -0
  292. package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-c0eb761b.entry.js} +1 -1
  293. package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
  294. package/dist/sankhyablocks/p-ebdb9d89.js +1 -0
  295. package/dist/sankhyablocks/p-ef6f0a1b.entry.js +1 -0
  296. package/dist/sankhyablocks/p-f7dd5655.entry.js +1 -0
  297. package/dist/sankhyablocks/p-fbba7e3d.js +1 -0
  298. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  299. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  300. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  301. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  302. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  303. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  304. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  305. package/dist/types/components/snk-application/search-strategy/exec-prepared-search-plus.d.ts +5 -0
  306. package/dist/types/components/snk-application/snk-application.d.ts +55 -16
  307. package/dist/types/components/snk-attach/snk-attach.d.ts +1 -0
  308. package/dist/types/components/snk-configurator/snk-configurator.d.ts +6 -0
  309. package/dist/types/components/snk-crud/snk-crud.d.ts +26 -0
  310. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +5 -0
  311. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +10 -0
  312. package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
  313. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  314. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +9 -1
  315. package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
  316. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
  317. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  318. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  319. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +2 -0
  320. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +5 -3
  321. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  322. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  323. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
  324. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +7 -2
  325. package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
  326. package/dist/types/components/snk-grid/snk-grid.d.ts +33 -0
  327. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +1 -0
  328. package/dist/types/components/snk-layout-form-config/snk-layout-form-config.d.ts +15 -0
  329. package/dist/types/components/snk-layout-form-config/snk-view-representation/snk-view-representation.d.ts +10 -0
  330. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  331. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  332. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  333. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +35 -1
  334. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +32 -3
  335. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  336. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  337. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +11 -0
  338. package/dist/types/components.d.ts +473 -16
  339. package/dist/types/lib/@types/index.d.ts +4 -0
  340. package/dist/types/lib/configs/LayoutFormConfig.d.ts +11 -0
  341. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
  342. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
  343. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  344. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  345. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  346. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  347. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  348. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  349. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  350. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  351. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
  352. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +14 -2
  353. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  354. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +21 -2
  355. package/dist/types/lib/index.d.ts +1 -0
  356. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  357. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  358. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  359. package/dist/types/lib/utils/constants.d.ts +8 -0
  360. package/package.json +4 -3
  361. package/react/components.d.ts +5 -0
  362. package/react/components.js +5 -0
  363. package/react/components.js.map +1 -1
  364. package/dist/cjs/IExporterProvider-597949f9.js +0 -230
  365. package/dist/cjs/ISave-e91b70a7.js +0 -9
  366. package/dist/cjs/pesquisa-fetcher-680e198f.js +0 -166
  367. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  368. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  369. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  370. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  371. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  372. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  373. package/dist/components/pesquisa-fetcher.js +0 -164
  374. package/dist/esm/IExporterProvider-63a188b6.js +0 -221
  375. package/dist/esm/ISave-d8c8bc59.js +0 -9
  376. package/dist/esm/pesquisa-fetcher-03c8f919.js +0 -164
  377. package/dist/esm/snk-config-options.entry.js +0 -235
  378. package/dist/esm/snk-filter-bar.entry.js +0 -710
  379. package/dist/esm/snk-filter-item.entry.js +0 -308
  380. package/dist/esm/snk-filter-list.entry.js +0 -148
  381. package/dist/esm/snk-filter-modal.entry.js +0 -245
  382. package/dist/esm/snk-form.entry.js +0 -139
  383. package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
  384. package/dist/sankhyablocks/p-17def7cd.js +0 -1
  385. package/dist/sankhyablocks/p-21749402.js +0 -1
  386. package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
  387. package/dist/sankhyablocks/p-28ee0972.js +0 -1
  388. package/dist/sankhyablocks/p-2a408684.js +0 -1
  389. package/dist/sankhyablocks/p-30cf616e.js +0 -1
  390. package/dist/sankhyablocks/p-3a212712.js +0 -1
  391. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  392. package/dist/sankhyablocks/p-450c60e4.entry.js +0 -1
  393. package/dist/sankhyablocks/p-4e5e1313.entry.js +0 -1
  394. package/dist/sankhyablocks/p-62ba211a.entry.js +0 -1
  395. package/dist/sankhyablocks/p-6bb2f3e9.entry.js +0 -1
  396. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  397. package/dist/sankhyablocks/p-7505da04.entry.js +0 -1
  398. package/dist/sankhyablocks/p-7619bdb1.entry.js +0 -11
  399. package/dist/sankhyablocks/p-7663f597.entry.js +0 -1
  400. package/dist/sankhyablocks/p-7a85fd49.entry.js +0 -1
  401. package/dist/sankhyablocks/p-7ef9c55c.js +0 -1
  402. package/dist/sankhyablocks/p-80042dc6.entry.js +0 -1
  403. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  404. package/dist/sankhyablocks/p-8c59edd7.entry.js +0 -1
  405. package/dist/sankhyablocks/p-9606509c.entry.js +0 -1
  406. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  407. package/dist/sankhyablocks/p-9863d682.js +0 -1
  408. package/dist/sankhyablocks/p-ae93d46a.entry.js +0 -1
  409. package/dist/sankhyablocks/p-af8efd95.js +0 -6
  410. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  411. package/dist/sankhyablocks/p-c2495304.js +0 -1
  412. package/dist/sankhyablocks/p-c8622597.entry.js +0 -1
  413. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  414. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  415. package/dist/sankhyablocks/p-d6e26ea8.entry.js +0 -1
  416. package/dist/sankhyablocks/p-dc7c9047.js +0 -1
  417. package/dist/sankhyablocks/p-df5451c7.js +0 -26
  418. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  419. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  420. package/dist/sankhyablocks/p-f4450320.entry.js +0 -1
  421. package/dist/sankhyablocks/p-fe79f83a.js +0 -60
  422. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
@@ -1,3 +1,388 @@
1
+ import { UserInterface, DataType, ApplicationContext, ErrorException } from '@sankhyalabs/core';
2
+ import { d as dist, D as DataFetcher } from './DataFetcher.js';
3
+
4
+ function buildGridMetadata(rawValue) {
5
+ const fieldsMetadata = buildFieldsMetadata(rawValue.fieldsMetadata);
6
+ const duName = rawValue.descriptionField;
7
+ const duLabel = rawValue.entityDescription;
8
+ return {
9
+ label: duLabel,
10
+ name: duName,
11
+ fields: fieldsMetadata,
12
+ };
13
+ }
14
+ function buildFieldsMetadata(rawMetadata) {
15
+ if (!rawMetadata || !rawMetadata.length)
16
+ return [];
17
+ return rawMetadata.map(field => {
18
+ return {
19
+ name: field['fieldName'],
20
+ label: field['description'],
21
+ dataType: buildDataType(field['type']),
22
+ userInterface: buildUserInterface(field),
23
+ properties: bildProperties(field)
24
+ };
25
+ });
26
+ }
27
+ function bildProperties(field) {
28
+ const properties = {};
29
+ properties['options'] = buildOptions(field);
30
+ properties['mask'] = buildMask(field);
31
+ return properties;
32
+ }
33
+ function buildMask(field) {
34
+ const fieldUI = field['uiType'];
35
+ return fieldUI ? String(fieldUI).toLowerCase() : undefined;
36
+ }
37
+ function buildOptions(field) {
38
+ const optionsJson = field.options;
39
+ if (!optionsJson)
40
+ return undefined;
41
+ const options = [];
42
+ Object.keys(optionsJson).forEach(key => {
43
+ options.push({
44
+ label: key,
45
+ value: optionsJson[key]
46
+ });
47
+ });
48
+ return options;
49
+ }
50
+ function buildUserInterface(field) {
51
+ const options = field.options;
52
+ if (options && Object.keys(options).length > 0)
53
+ return UserInterface.OPTIONSELECTOR;
54
+ if (field['type'] === 'D')
55
+ return UserInterface.DATE;
56
+ if (field['type'] === 'H')
57
+ return UserInterface.DATETIME;
58
+ if (field['type'] === 'T')
59
+ return UserInterface.TIME;
60
+ if (field['type'] === 'I')
61
+ return UserInterface.INTEGERNUMBER;
62
+ return undefined;
63
+ }
64
+ function buildDataType(rawType) {
65
+ switch (rawType) {
66
+ case 'F':
67
+ return DataType.NUMBER;
68
+ case 'D':
69
+ case 'H':
70
+ return DataType.DATE;
71
+ case 'B':
72
+ return DataType.OBJECT;
73
+ case 'I':
74
+ return DataType.NUMBER;
75
+ default:
76
+ return DataType.TEXT;
77
+ }
78
+ }
79
+ function parseLegacyTree(legacy) {
80
+ var _a, _b;
81
+ const structure = (_b = (_a = legacy.arvore) === null || _a === void 0 ? void 0 : _a.no) !== null && _b !== void 0 ? _b : [];
82
+ return structure.map(parseLegacyItem);
83
+ }
84
+ function parseLegacyItem(node) {
85
+ return Object.assign({ id: node.codigo, label: `${node.caminho} - ${node.descricao}`, bold: node.analitico === "N", props: { analitico: node.analitico === 'S' } }, (node.no && { children: node.no.map(parseLegacyItem) }));
86
+ }
87
+ function parseGridConfig(rawConfig) {
88
+ var _a, _b;
89
+ const columns = [];
90
+ const fields = (_b = (_a = rawConfig === null || rawConfig === void 0 ? void 0 : rawConfig.gridConfig) === null || _a === void 0 ? void 0 : _a.field) !== null && _b !== void 0 ? _b : {};
91
+ Object.keys(fields).forEach(key => columns.push(fields[key]));
92
+ if (!columns.length)
93
+ return undefined;
94
+ return { columns };
95
+ }
96
+ var PESQUISA_VIEW_MODE;
97
+ (function (PESQUISA_VIEW_MODE) {
98
+ PESQUISA_VIEW_MODE[PESQUISA_VIEW_MODE["GRID"] = 0] = "GRID";
99
+ PESQUISA_VIEW_MODE[PESQUISA_VIEW_MODE["CARDS"] = 1] = "CARDS";
100
+ PESQUISA_VIEW_MODE[PESQUISA_VIEW_MODE["TREE"] = 2] = "TREE";
101
+ })(PESQUISA_VIEW_MODE || (PESQUISA_VIEW_MODE = {}));
102
+
103
+ class PesquisaFetcher {
104
+ constructor() {
105
+ this._defaultPageSize = 100;
106
+ this._templateByQuery = new Map();
107
+ this._searchListenersByDataUnit = new Map();
108
+ this.buldTemplates();
109
+ }
110
+ buldTemplates() {
111
+ this._templateByQuery.set("search", dist.gql `query($entityName: String! $argument: String $criteria: InputSearchCriteria $options: InputSearchOptions) {
112
+ $queryAlias$: search(entityName: $entityName argument: $argument criteria: $criteria options: $options){
113
+ value
114
+ label
115
+ }
116
+ }`);
117
+ }
118
+ loadSearchOptions(entityName, argument, criteria, options) {
119
+ var _a;
120
+ const cleanText = (argument === null || argument === void 0 ? void 0 : argument.toString().trim()) || undefined;
121
+ argument = isNaN(Number(cleanText)) && cleanText ? `%${cleanText}` : cleanText;
122
+ criteria === null || criteria === void 0 ? void 0 : criteria.params.forEach(param => {
123
+ if (param.dataType === DataType.OBJECT) {
124
+ param.value = JSON.stringify(param.value);
125
+ }
126
+ });
127
+ const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, options);
128
+ const values = {
129
+ argument: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.argument) || argument,
130
+ entityName,
131
+ criteria: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) || criteria,
132
+ options: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions) || options,
133
+ };
134
+ if (values.options) {
135
+ (_a = values.options) === null || _a === void 0 ? true : delete _a.dataUnitId;
136
+ }
137
+ return new Promise((resolve, reject) => {
138
+ DataFetcher.get()
139
+ .callGraphQL({
140
+ values,
141
+ query: this._templateByQuery.get("search"),
142
+ })
143
+ .then((result) => {
144
+ resolve(result);
145
+ })
146
+ .catch((error) => {
147
+ reject(error);
148
+ });
149
+ });
150
+ }
151
+ buildDescriptionCacheKey(entityName, codeValue) {
152
+ return `${entityName}__${codeValue}`;
153
+ }
154
+ async loadByCode(entityName, codeValue, criteria, searchOptions) {
155
+ const cacheKey = this.buildDescriptionCacheKey(entityName, codeValue);
156
+ const cachedValue = PesquisaFetcher.DESCRIPTIONS_BY_CODE[cacheKey];
157
+ if (cachedValue) {
158
+ return Promise.resolve(cachedValue);
159
+ }
160
+ const result = await this.loadAdvancedSearch(entityName, undefined, criteria, searchOptions, codeValue);
161
+ PesquisaFetcher.DESCRIPTIONS_BY_CODE[cacheKey] = result;
162
+ return result;
163
+ }
164
+ loadAdvancedSearch(entityName, argument, criteria, searchOptions, codeValue) {
165
+ var _a, _b, _c, _d, _e;
166
+ const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, searchOptions);
167
+ const values = {
168
+ argument: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.argument) || argument,
169
+ criteria: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) || criteria,
170
+ searchOptions: Object.assign(Object.assign({}, searchOptions), listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions),
171
+ };
172
+ const serviceName = "PesquisaSP.getSuggestion";
173
+ const externalCriteria = {
174
+ query: {
175
+ $: (_a = values.criteria) === null || _a === void 0 ? void 0 : _a.expression
176
+ }
177
+ };
178
+ if (((_c = (_b = values.criteria) === null || _b === void 0 ? void 0 : _b.params) === null || _c === void 0 ? void 0 : _c.length) > 0) {
179
+ externalCriteria.params = {
180
+ param: values.criteria.params.map(param => {
181
+ let value = param.value;
182
+ if (typeof value === "string") {
183
+ const match = /CTX\{([^}]+)\}/.exec(value);
184
+ if (match) {
185
+ value = ApplicationContext.getContextValue(`__SNK__APPLICATION__FILTER__CONTEXT(${match[1]})__`);
186
+ }
187
+ }
188
+ if (param.dataType === DataType.NUMBER && value === undefined) {
189
+ throw new ErrorException("Falha detectada", `O campo ${param.name} deve ser informado.`);
190
+ }
191
+ let type = param.dataType;
192
+ if (type === DataType.OBJECT) {
193
+ value = value.value;
194
+ type = "S";
195
+ }
196
+ else {
197
+ type = convertParamType(param.dataType);
198
+ }
199
+ return { $: value, type };
200
+ })
201
+ };
202
+ }
203
+ const options = searchOptions != undefined
204
+ ? Object.assign(Object.assign({}, values === null || values === void 0 ? void 0 : values.searchOptions), { "pkFieldName": searchOptions.codeFieldName, "label": searchOptions.descriptionFieldName, "fieldName": searchOptions.codeFieldName, "useDescriptionOptions": false, "enableRowsCounter": true }) : undefined;
205
+ const reqBody = {
206
+ "serviceName": serviceName,
207
+ "requestBody": {
208
+ "criteria": Object.assign({ "entityName": entityName, "compacted": false, "ignoreEntityCriteria": (_d = options === null || options === void 0 ? void 0 : options.ignoreEntityCriteria) !== null && _d !== void 0 ? _d : false, "limit": this._defaultPageSize, "orderByDesc": false, "externalCriteria": externalCriteria, "localEntityName": (_e = values.searchOptions) === null || _e === void 0 ? void 0 : _e.rootEntity }, { options }),
209
+ "clientEventList": {
210
+ "clientEvent": []
211
+ }
212
+ }
213
+ };
214
+ if (codeValue == undefined) {
215
+ reqBody.requestBody.criteria.query = {
216
+ "$": argument
217
+ };
218
+ }
219
+ else {
220
+ reqBody.requestBody.criteria.pk = {
221
+ "$": codeValue
222
+ };
223
+ }
224
+ const urlOptions = {
225
+ urlParams: {
226
+ "quietMode": true
227
+ }
228
+ };
229
+ return new Promise((resolve, reject) => {
230
+ DataFetcher.get()
231
+ .callServiceBroker("PesquisaSP.getSuggestion", JSON.stringify(reqBody), urlOptions)
232
+ .then(result => resolve(result))
233
+ .catch(error => reject(error));
234
+ });
235
+ }
236
+ addSearchListener(entityName, dataUnitID, listener) {
237
+ var _a;
238
+ const dataUnitSearchListeners = this._searchListenersByDataUnit.get(dataUnitID) || [];
239
+ const entityListener = dataUnitSearchListeners.find(currentListener => currentListener.entity === entityName);
240
+ if (!entityListener) {
241
+ this._searchListenersByDataUnit.set(dataUnitID, [...dataUnitSearchListeners, { entity: entityName, listener }]);
242
+ }
243
+ else {
244
+ for (const type of Object.keys(listener)) {
245
+ if (type in entityListener.listener) {
246
+ const listenerFunctionIsEquals = ((_a = entityListener.listener[type]) === null || _a === void 0 ? void 0 : _a.toString()) === listener[type].toString();
247
+ if (listenerFunctionIsEquals)
248
+ continue;
249
+ entityListener.listener[type] = listener[type];
250
+ }
251
+ }
252
+ }
253
+ return () => {
254
+ const newListeners = dataUnitSearchListeners.filter(currentListener => currentListener.entity !== entityName);
255
+ if (!newListeners.length) {
256
+ this._searchListenersByDataUnit.delete(dataUnitID);
257
+ return;
258
+ }
259
+ this._searchListenersByDataUnit.set(dataUnitID, newListeners);
260
+ };
261
+ }
262
+ applySearchListener(listenerType, entityName, argument, criteria, searchOptions) {
263
+ var _a;
264
+ const dataUnitId = searchOptions === null || searchOptions === void 0 ? void 0 : searchOptions.dataUnitId;
265
+ if (!dataUnitId)
266
+ return;
267
+ const entityListener = (_a = this._searchListenersByDataUnit.get(dataUnitId)) === null || _a === void 0 ? void 0 : _a.find(({ entity }) => entity === entityName);
268
+ if (!entityListener)
269
+ return;
270
+ const { listener } = entityListener;
271
+ if (!(listenerType in listener))
272
+ return;
273
+ return listener[listenerType]({ argument, criteria, searchOptions });
274
+ }
275
+ async loadPresentationConfig(entityName) {
276
+ var _a, _b;
277
+ let payload = buildLoadConfig(entityName);
278
+ const response = await DataFetcher.get().callServiceBroker("SystemUtilsSP.getConf", JSON.stringify(payload));
279
+ return (_b = (_a = response === null || response === void 0 ? void 0 : response.config) === null || _a === void 0 ? void 0 : _a.lastUsedMode) !== null && _b !== void 0 ? _b : 'list';
280
+ }
281
+ async savePresentationConfig(entityName, lastUsedMode) {
282
+ let payload = buildSaveConfig(entityName, lastUsedMode);
283
+ await DataFetcher.get().callServiceBroker("SystemUtilsSP.saveConf", JSON.stringify(payload));
284
+ }
285
+ async loadPesquisaGridConfig(entityName) {
286
+ const payload = buildLoadGridConfigPayload(entityName);
287
+ const response = await DataFetcher.get().callServiceBroker("GridConfig.getGridConfigFromJson", JSON.stringify(payload));
288
+ return parseGridConfig(response);
289
+ }
290
+ async savePesquisaGridConfig(entityName, columns) {
291
+ const payload = buildSaveGridConfigPayload(entityName, columns);
292
+ await DataFetcher.get().callServiceBroker("GridConfig.saveGridConfigFromJSON", JSON.stringify(payload));
293
+ }
294
+ async loadTree(entityName, argument, criteria, searchOptions) {
295
+ const requestBody = this.buildLoadTreeRequestBody(entityName, argument, criteria, searchOptions);
296
+ const response = await DataFetcher.get().callServiceBroker("Pesquisa.getStructuredData", JSON.stringify(requestBody));
297
+ return parseLegacyTree(response);
298
+ }
299
+ buildLoadTreeRequestBody(entityName, argument, criteria, searchOptions) {
300
+ var _a, _b;
301
+ const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, searchOptions);
302
+ const incomeSearchOptions = (_a = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions) !== null && _a !== void 0 ? _a : searchOptions;
303
+ const rootEntity = incomeSearchOptions === null || incomeSearchOptions === void 0 ? void 0 : incomeSearchOptions.rootEntity;
304
+ const codeFieldName = incomeSearchOptions === null || incomeSearchOptions === void 0 ? void 0 : incomeSearchOptions.codeFieldName;
305
+ const expression = (_b = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) === null || _b === void 0 ? void 0 : _b.expression;
306
+ const params = this.buildParams(listenerResult);
307
+ const instancia = {
308
+ 'nome': entityName,
309
+ 'nomeInstanciaLocal': rootEntity,
310
+ 'codeFieldName': codeFieldName,
311
+ };
312
+ if (expression) {
313
+ instancia['criterioLiteral'] = {
314
+ 'expressao': {
315
+ '$': expression,
316
+ },
317
+ 'parametro': params,
318
+ };
319
+ }
320
+ return {
321
+ 'instancia': instancia,
322
+ };
323
+ }
324
+ buildParams(listenerResult) {
325
+ var _a, _b;
326
+ let params = (_b = (_a = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) === null || _a === void 0 ? void 0 : _a.params) !== null && _b !== void 0 ? _b : [];
327
+ params = params.map(param => {
328
+ return Object.assign(Object.assign({}, param), { tipo: convertParamType(param.dataType), $: param.value });
329
+ });
330
+ return params;
331
+ }
332
+ }
333
+ PesquisaFetcher.DESCRIPTIONS_BY_CODE = {};
334
+ function buildLoadGridConfigPayload(entityName) {
335
+ return {
336
+ 'gridConfig': {
337
+ 'configName': `GrdCfgHtml5:grdcfg.dynaform.pesquisa.${entityName}`,
338
+ },
339
+ };
340
+ }
341
+ function buildSaveGridConfigPayload(entityName, columns) {
342
+ const field = {};
343
+ columns === null || columns === void 0 ? void 0 : columns.forEach((col, index) => field[`field${index}`] = col);
344
+ return {
345
+ 'gridConfig': {
346
+ 'compactMode': true,
347
+ 'configName': `GrdCfgHtml5:grdcfg.dynaform.pesquisa.${entityName}`,
348
+ field,
349
+ },
350
+ };
351
+ }
352
+ function buildLoadConfig(entityName) {
353
+ return {
354
+ 'config': {
355
+ 'chave': `PesquisaContent:${entityName}`,
356
+ 'tipo': 'T',
357
+ },
358
+ };
359
+ }
360
+ function buildSaveConfig(entityName, lastUsedMode) {
361
+ return {
362
+ 'config': {
363
+ lastUsedMode,
364
+ 'chave': `PesquisaContent:${entityName}`,
365
+ 'tipo': 'T',
366
+ }
367
+ };
368
+ }
369
+ function convertParamType(dataType) {
370
+ // Alerta: Cuidado para não contaminar o DataType com a implementação atual da pesquisa!
371
+ // Em geral, somente inteiros, data (com ou sem hora) e string são realmente relevantes.
372
+ switch (dataType) {
373
+ case DataType.NUMBER:
374
+ return "I";
375
+ case DataType.DATE:
376
+ return "D";
377
+ default:
378
+ return "S";
379
+ }
380
+ }
381
+ var SearchListenerType;
382
+ (function (SearchListenerType) {
383
+ SearchListenerType["beforeSearch"] = "beforeSearch";
384
+ })(SearchListenerType || (SearchListenerType = {}));
385
+
1
386
  var PresentationMode;
2
387
  (function (PresentationMode) {
3
388
  PresentationMode["PRIMARY"] = "primary";
@@ -35,6 +420,11 @@ var DataExporterType;
35
420
  DataExporterType["EXPORT_PDF_TO_EMAIL"] = "PDF";
36
421
  DataExporterType["EXPORT_XLS_TO_EMAIL"] = "XLS";
37
422
  })(DataExporterType || (DataExporterType = {}));
423
+ var ExporterStrategy;
424
+ (function (ExporterStrategy) {
425
+ ExporterStrategy["SERVER_SIDE"] = "ServerSideExporterStrategy";
426
+ ExporterStrategy["CLIENT_SIDE"] = "ClientSideExporterStrategy";
427
+ })(ExporterStrategy || (ExporterStrategy = {}));
38
428
 
39
429
  var SaveErrorsEnum;
40
430
  (function (SaveErrorsEnum) {
@@ -44,4 +434,4 @@ var SaveErrorsEnum;
44
434
  SaveErrorsEnum["DESCRIPTION_CANNOT_BE_CHANGED"] = "DESCRIPTION_CANNOT_BE_CHANGED";
45
435
  })(SaveErrorsEnum || (SaveErrorsEnum = {}));
46
436
 
47
- export { DataExporterOption as D, PresentationMode as P, SaveErrorsEnum as S, DataExporterType as a, DataExporterFormat as b };
437
+ export { DataExporterOption as D, ExporterStrategy as E, PresentationMode as P, SaveErrorsEnum as S, PesquisaFetcher as a, DataExporterType as b, DataExporterFormat as c, buildGridMetadata as d, PESQUISA_VIEW_MODE as e };
@@ -1,12 +1,14 @@
1
1
  import { C as ConfigStorage } from './ConfigStorage.js';
2
2
  import { ObjectUtils, StringUtils } from '@sankhyalabs/core';
3
3
  import { F as FormConfigFetcher } from './form-config-fetcher.js';
4
+ import { d as TAB_NAMES } from './constants.js';
4
5
 
5
6
  class SnkFormConfigManager {
6
- constructor(configName, resourceID, onConfigChange) {
7
+ constructor(configName, resourceID, onConfigChange, dataUnit) {
7
8
  this._resourceID = resourceID;
8
9
  this._configName = configName;
9
10
  this._onConfigChange = onConfigChange;
11
+ this._dataUnit = dataUnit;
10
12
  }
11
13
  addFormLegacyConfig(legacyConfigName) {
12
14
  if (this._configName) {
@@ -17,6 +19,7 @@ class SnkFormConfigManager {
17
19
  return new Promise(resolve => {
18
20
  ConfigStorage.loadFormConfig(this._configName, this._resourceID)
19
21
  .then((config) => {
22
+ config = this.buildFormMetadataUITabs(config);
20
23
  this.setConfig(config);
21
24
  resolve(config);
22
25
  })
@@ -25,6 +28,10 @@ class SnkFormConfigManager {
25
28
  });
26
29
  });
27
30
  }
31
+ getEmptyConfig() {
32
+ const config = this.buildFormMetadataUITabs({ fields: [], emptyConfig: true }, true);
33
+ return config;
34
+ }
28
35
  saveConfig(config) {
29
36
  const configToSave = ObjectUtils.copy(config);
30
37
  return new Promise(accept => {
@@ -68,28 +75,41 @@ class SnkFormConfigManager {
68
75
  }
69
76
  return updatingCardConfig;
70
77
  }
71
- getFieldsList(dataUnit, descriptionFilter) {
78
+ hasConfig(config) {
79
+ var _a;
80
+ const currentConfig = config !== null && config !== void 0 ? config : this._config;
81
+ if (currentConfig && ((_a = currentConfig.fields) === null || _a === void 0 ? void 0 : _a.length)) {
82
+ return true;
83
+ }
84
+ return false;
85
+ }
86
+ getFieldsList(descriptionFilter, forceEmptyConfig = false) {
72
87
  var _a;
73
88
  const fields = (_a = this._config) === null || _a === void 0 ? void 0 : _a.fields;
74
- if (fields != undefined && fields.length > 0) {
75
- return fields.map(({ label, name, readOnly, visible, required }) => {
89
+ const hasConfig = this.hasConfig();
90
+ if (hasConfig && !forceEmptyConfig) {
91
+ return fields.map(({ label, name, readOnly, visible, required, tab, group }) => {
92
+ var _a;
76
93
  if (label == undefined) {
77
- const currentField = dataUnit.getField(name);
78
- return Object.assign(Object.assign({}, currentField), { name: name !== null && name !== void 0 ? name : currentField.name, readOnly: readOnly !== null && readOnly !== void 0 ? readOnly : currentField.readOnly, visible: visible !== null && visible !== void 0 ? visible : currentField.visible, required: required !== null && required !== void 0 ? required : currentField.required });
94
+ const currentField = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getField(name);
95
+ if (!currentField)
96
+ return;
97
+ return Object.assign(Object.assign({}, currentField), { name: name !== null && name !== void 0 ? name : currentField.name, readOnly: readOnly !== null && readOnly !== void 0 ? readOnly : currentField.readOnly, visible: visible !== null && visible !== void 0 ? visible : currentField.visible, required: required !== null && required !== void 0 ? required : currentField.required, tab: tab, group: group });
79
98
  }
80
- return { name, label, readOnly, visible, required };
99
+ return { name, label, readOnly, visible, required, tab, group };
81
100
  })
82
101
  .filter(field => this.isFieldVisible(field, descriptionFilter));
83
102
  }
84
- if (dataUnit != undefined) {
85
- return dataUnit.metadata.fields
86
- .filter(field => this.isFieldVisible(field, descriptionFilter))
87
- .map(({ label, name, readOnly }) => { return { label, name, readOnly }; });
103
+ if (!this._dataUnit) {
104
+ return [];
88
105
  }
89
- return [];
106
+ const filteredFields = this._dataUnit.metadata.fields
107
+ .filter(field => this.isFieldVisible(field, descriptionFilter))
108
+ .map(({ label, name, readOnly, visible, required, properties }) => ({ label, name, readOnly, visible, required, tab: properties === null || properties === void 0 ? void 0 : properties.UITabName }));
109
+ return filteredFields;
90
110
  }
91
111
  isFieldVisible(field, descriptionFilter) {
92
- if (field.visible === false) {
112
+ if (field === undefined || field.visible === false) {
93
113
  return false;
94
114
  }
95
115
  if (descriptionFilter == undefined) {
@@ -99,8 +119,8 @@ class SnkFormConfigManager {
99
119
  const normalizedFilter = StringUtils.replaceAccentuatedCharsLower(descriptionFilter.toLocaleLowerCase());
100
120
  return normalizedText.includes(normalizedFilter);
101
121
  }
102
- getFormConfig(dataUnit, ignoreReadOnlyFormFields) {
103
- let fields = this.getFieldsList(dataUnit);
122
+ getFormConfig(dataUnit, ignoreReadOnlyFormFields, forceEmptyConfig = false) {
123
+ let fields = this.getFieldsList(undefined, forceEmptyConfig);
104
124
  if (ignoreReadOnlyFormFields) {
105
125
  fields = fields.filter(field => {
106
126
  if (dataUnit) {
@@ -153,6 +173,44 @@ class SnkFormConfigManager {
153
173
  async fetchDefaultConfig() {
154
174
  return this.getFormConfigFetcher().fetchDefaultConfig(this._configName, this._resourceID);
155
175
  }
176
+ parseObjectList(object) {
177
+ if (!object) {
178
+ return [];
179
+ }
180
+ return Array.isArray(object) ? object : [object];
181
+ }
182
+ buildFormMetadataUITabs(config, forceEmptyConfig = false) {
183
+ var _a;
184
+ const hasConfig = this.hasConfig(config);
185
+ if (!forceEmptyConfig && (!this._dataUnit || hasConfig)) {
186
+ return config;
187
+ }
188
+ config = this.getFormConfig(this._dataUnit, false, true);
189
+ config.tabs = this.parseObjectList(config.tabs);
190
+ config.emptyConfig = false;
191
+ config.defaultConfiguration = true;
192
+ const fields = this._dataUnit.metadata.fields;
193
+ for (const currentField of fields) {
194
+ const field = config.fields.find(field => field.name === currentField.name);
195
+ const uiTabName = (_a = currentField.properties) === null || _a === void 0 ? void 0 : _a.UITabName;
196
+ if (!uiTabName || uiTabName === TAB_NAMES.main) {
197
+ continue;
198
+ }
199
+ const haveTab = config.tabs.some((tab) => tab.label === uiTabName);
200
+ if (!haveTab) {
201
+ config.tabs.push({
202
+ label: uiTabName,
203
+ name: uiTabName,
204
+ order: 0,
205
+ visible: true,
206
+ });
207
+ }
208
+ if (field) {
209
+ field.tab = uiTabName;
210
+ }
211
+ }
212
+ return config;
213
+ }
156
214
  }
157
215
 
158
216
  export { SnkFormConfigManager as S };
@@ -122,7 +122,7 @@ const snkExporterMessages = {
122
122
  emailSenderOptStep_subtitle: "Primeiro, escolha o formato do arquivo",
123
123
  emailSenderOptStep_lblFormat: "Formato:",
124
124
  emailSenderOptStep_formatPDF: "PDF (.pdf)",
125
- emailSenderOptStep_formatXLSX: "Planilha (.xlsx)",
125
+ emailSenderOptStep_formatXLS: "Planilha (.xls)",
126
126
  emailSenderOptStep_export: "Exportar:",
127
127
  emailSenderOptStep_allData: "Toda a grade",
128
128
  emailSenderOptStep_currentPage: "Somente a página atual",
@@ -245,7 +245,11 @@ const snkConfiguratorMessages = {
245
245
  };
246
246
 
247
247
  const snkGridMessages = {
248
- findColumn: "Busca de colunas"
248
+ findColumn: "Busca de colunas",
249
+ cancelConfirmation: {
250
+ title: "Aviso",
251
+ message: "As alterações realizadas serão descartadas<br/><br/><b>Você realmente gostaria de cancelar?</b>",
252
+ }
249
253
  };
250
254
  const snkGridConfigMessages = {
251
255
  gridConfiguration: "Configuração da Grade",
@@ -67,6 +67,7 @@ const TAGS_BY_TYPE = {
67
67
  CHECKBOX: "ez-check",
68
68
  OPTIONSELECTOR: "ez-combo-box",
69
69
  SEARCH: "ez-search",
70
+ SEARCHPLUS: "ez-search-plus",
70
71
  INTEGERNUMBER: "ez-number-input",
71
72
  DECIMALNUMBER: "ez-number-input"
72
73
  };
@@ -89,5 +90,14 @@ var SIMPLE_CRUD_MODE;
89
90
  SIMPLE_CRUD_MODE[SIMPLE_CRUD_MODE["SERVER"] = 0] = "SERVER";
90
91
  SIMPLE_CRUD_MODE[SIMPLE_CRUD_MODE["IN_MEMORY"] = 1] = "IN_MEMORY";
91
92
  })(SIMPLE_CRUD_MODE || (SIMPLE_CRUD_MODE = {}));
93
+ // TODO: validar forma de compartilhar os templates com outros projetos
94
+ var TEMPLATES_SKELETON;
95
+ (function (TEMPLATES_SKELETON) {
96
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["CUSTOM_TEMPLATE"] = 0] = "CUSTOM_TEMPLATE";
97
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID"] = 1] = "GRID";
98
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID_WITH_SIDEBAR"] = 2] = "GRID_WITH_SIDEBAR";
99
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID_WITH_PANEL"] = 3] = "GRID_WITH_PANEL";
100
+ TEMPLATES_SKELETON[TEMPLATES_SKELETON["FORM_WITH_SIDEBAR"] = 4] = "FORM_WITH_SIDEBAR";
101
+ })(TEMPLATES_SKELETON || (TEMPLATES_SKELETON = {}));
92
102
 
93
- export { ACTION_CONFIG as A, CONFIG_EVENTS as C, DEFAULT_TYPE as D, KEY_EVENTS as K, ORDER_VALUES as O, REPORT_LAUNCHER_RESOURCE_ID as R, SIMPLE_CRUD_MODE as S, TAGS_BY_TYPE as T, VIEW_MODE as V, VARS_BY_TYPE as a, CONFIG_SORTABLE_EVENTS as b, TAB_NAMES as c, TYPE_ACTIONS as d };
103
+ export { ACTION_CONFIG as A, CONFIG_EVENTS as C, DEFAULT_TYPE as D, KEY_EVENTS as K, ORDER_VALUES as O, REPORT_LAUNCHER_RESOURCE_ID as R, SIMPLE_CRUD_MODE as S, TEMPLATES_SKELETON as T, VIEW_MODE as V, VARS_BY_TYPE as a, TAGS_BY_TYPE as b, CONFIG_SORTABLE_EVENTS as c, TAB_NAMES as d, TYPE_ACTIONS as e };