@sankhyalabs/sankhyablocks 8.16.0-dev.1 → 8.16.0-dev.100

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 (425) hide show
  1. package/dist/cjs/ClientSideExporterProvider-5fff8770.js +372 -0
  2. package/dist/cjs/{ConfigStorage-942ce74b.js → ConfigStorage-df09fb78.js} +3 -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-1b13bacd.js → SnkFormConfigManager-45a8d7b7.js} +77 -21
  8. package/dist/cjs/{SnkMessageBuilder-722b104e.js → SnkMessageBuilder-bae64d0d.js} +7 -3
  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-620b29a1.js → dataunit-fetcher-4a5d491a.js} +220 -168
  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 +468 -74
  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 +29 -23
  25. package/dist/cjs/snk-data-exporter.cjs.entry.js +38 -30
  26. package/dist/cjs/{snk-data-unit-82dea87e.js → snk-data-unit-4b510d6e.js} +69 -35
  27. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
  28. package/dist/cjs/snk-detail-view.cjs.entry.js +18 -19
  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-05a1ba27.js → snk-guides-viewer-e8e5f7b4.js} +34 -19
  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 -115
  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 +447 -67
  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 +185 -14
  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 +28 -5
  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 +74 -8
  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 +84 -33
  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 +75 -19
  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 +219 -36
  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/ConfigStorage.js +1 -0
  127. package/dist/collection/lib/configs/LayoutFormConfig.js +25 -0
  128. package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -102
  129. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -28
  130. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +44 -24
  131. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  132. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  133. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  134. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  135. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +23 -14
  136. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
  137. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +59 -5
  138. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  139. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +133 -9
  140. package/dist/collection/lib/index.js +1 -0
  141. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -1
  142. package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
  143. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  144. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  145. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  146. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  147. package/dist/collection/lib/utils/constants.js +10 -0
  148. package/dist/collection/sw.js +46 -0
  149. package/dist/components/ConfigStorage.js +1 -0
  150. package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +176 -33
  151. package/dist/components/DataFetcher.js +232 -80
  152. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  153. package/dist/components/ISave.js +391 -1
  154. package/dist/components/SnkFormConfigManager.js +75 -19
  155. package/dist/components/SnkMessageBuilder.js +7 -3
  156. package/dist/components/constants.js +11 -1
  157. package/dist/components/dataunit-fetcher.js +238 -183
  158. package/dist/components/form-config-fetcher.js +55 -1
  159. package/dist/components/index.d.ts +5 -0
  160. package/dist/components/index.js +5 -0
  161. package/dist/components/pesquisa-grid.d.ts +11 -0
  162. package/dist/components/pesquisa-grid.js +6 -0
  163. package/dist/components/pesquisa-grid2.js +102 -0
  164. package/dist/components/pesquisa-tree.d.ts +11 -0
  165. package/dist/components/pesquisa-tree.js +6 -0
  166. package/dist/components/pesquisa-tree2.js +91 -0
  167. package/dist/components/snk-actions-button2.js +44 -40
  168. package/dist/components/snk-application2.js +491 -72
  169. package/dist/components/snk-attach2.js +61 -55
  170. package/dist/components/snk-config-options2.js +6 -4
  171. package/dist/components/snk-configurator2.js +23 -3
  172. package/dist/components/snk-crud.js +107 -75
  173. package/dist/components/snk-data-exporter2.js +37 -23
  174. package/dist/components/snk-data-unit2.js +71 -73
  175. package/dist/components/snk-detail-view2.js +145 -113
  176. package/dist/components/snk-exporter-email-sender2.js +1 -1
  177. package/dist/components/snk-filter-bar2.js +68 -34
  178. package/dist/components/snk-filter-binary-select.js +1 -1
  179. package/dist/components/snk-filter-checkbox-list.js +1 -1
  180. package/dist/components/snk-filter-item2.js +10 -4
  181. package/dist/components/snk-filter-modal.js +4 -2
  182. package/dist/components/snk-filter-number.js +1 -1
  183. package/dist/components/snk-filter-search.js +18 -5
  184. package/dist/components/snk-filter-text.js +2 -1
  185. package/dist/components/snk-form-config2.js +35 -10
  186. package/dist/components/snk-form.js +2 -2
  187. package/dist/components/snk-grid-config2.js +3 -1
  188. package/dist/components/snk-grid2.js +92 -18
  189. package/dist/components/snk-layout-form-config.d.ts +11 -0
  190. package/dist/components/snk-layout-form-config.js +6 -0
  191. package/dist/components/snk-layout-form-config2.js +73 -0
  192. package/dist/components/snk-personalized-filter-editor.js +4 -4
  193. package/dist/components/snk-pesquisa2.js +125 -33
  194. package/dist/components/snk-print-selector.js +1 -1
  195. package/dist/components/snk-simple-bar2.js +1 -1
  196. package/dist/components/snk-simple-crud2.js +116 -113
  197. package/dist/components/snk-simple-form-config.d.ts +11 -0
  198. package/dist/components/snk-simple-form-config.js +6 -0
  199. package/dist/components/snk-simple-form-config2.js +121 -0
  200. package/dist/components/snk-tab-config2.js +1 -1
  201. package/dist/components/snk-taskbar2.js +72 -40
  202. package/dist/components/snk-view-representation.d.ts +11 -0
  203. package/dist/components/snk-view-representation.js +6 -0
  204. package/dist/components/snk-view-representation2.js +41 -0
  205. package/dist/components/teste-pesquisa.js +13 -1
  206. package/dist/esm/ClientSideExporterProvider-da9935ed.js +361 -0
  207. package/dist/esm/{ConfigStorage-86187da3.js → ConfigStorage-71e6766f.js} +3 -2
  208. package/dist/esm/{DataFetcher-c1baf61d.js → DataFetcher-88e56266.js} +232 -80
  209. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  210. package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
  211. package/dist/esm/ISave-5efafc97.js +394 -0
  212. package/dist/esm/{SnkFormConfigManager-d4554df9.js → SnkFormConfigManager-be490a33.js} +77 -21
  213. package/dist/esm/{SnkMessageBuilder-89925609.js → SnkMessageBuilder-6fff4a4c.js} +7 -3
  214. package/dist/esm/{auth-fetcher-039abba3.js → auth-fetcher-3510520e.js} +1 -1
  215. package/dist/esm/{constants-8457af36.js → constants-7db1128a.js} +11 -1
  216. package/dist/esm/{dataunit-fetcher-3fbf9d12.js → dataunit-fetcher-1d02ecfc.js} +222 -167
  217. package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
  218. package/dist/esm/{form-config-fetcher-30fb808f.js → form-config-fetcher-fa208a6c.js} +56 -2
  219. package/dist/esm/index-a7d3d3f1.js +16 -32
  220. package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
  221. package/dist/esm/loader.js +1 -1
  222. package/dist/esm/pesquisa-grid_2.entry.js +150 -0
  223. package/dist/esm/sankhyablocks.js +1 -1
  224. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_7.entry.js} +201 -47
  225. package/dist/esm/snk-application.entry.js +469 -75
  226. package/dist/esm/snk-attach.entry.js +50 -38
  227. package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +401 -15
  228. package/dist/esm/snk-configurator.entry.js +10 -3
  229. package/dist/esm/snk-crud.entry.js +29 -23
  230. package/dist/esm/snk-data-exporter.entry.js +38 -30
  231. package/dist/esm/{snk-data-unit-8f98b45f.js → snk-data-unit-7d0ce406.js} +69 -35
  232. package/dist/esm/snk-data-unit.entry.js +5 -5
  233. package/dist/esm/snk-detail-view.entry.js +18 -19
  234. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  235. package/dist/esm/snk-field-config.entry.js +1 -1
  236. package/dist/esm/snk-filter-bar_4.entry.js +1431 -0
  237. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  238. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  239. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  240. package/dist/esm/snk-filter-number.entry.js +1 -1
  241. package/dist/esm/snk-filter-search.entry.js +18 -5
  242. package/dist/esm/snk-filter-text.entry.js +2 -1
  243. package/dist/esm/snk-grid.entry.js +91 -23
  244. package/dist/esm/{snk-guides-viewer-aee2cafe.js → snk-guides-viewer-c44b3839.js} +34 -19
  245. package/dist/esm/snk-guides-viewer.entry.js +11 -12
  246. package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
  247. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  248. package/dist/esm/snk-pesquisa.entry.js +110 -31
  249. package/dist/esm/snk-print-selector.entry.js +1 -1
  250. package/dist/esm/snk-simple-bar.entry.js +1 -1
  251. package/dist/esm/snk-simple-crud.entry.js +105 -101
  252. package/dist/esm/snk-tab-config.entry.js +1 -1
  253. package/dist/esm/snk-taskbar.entry.js +73 -41
  254. package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-d2353c64.js} +1 -1
  255. package/dist/sankhyablocks/p-00796b12.entry.js +1 -0
  256. package/dist/sankhyablocks/{p-aff76a53.js → p-03b68a74.js} +2 -2
  257. package/dist/sankhyablocks/p-092078e3.entry.js +1 -0
  258. package/dist/sankhyablocks/p-0f3698af.js +1 -0
  259. package/dist/sankhyablocks/{p-a1d72395.entry.js → p-165cde3b.entry.js} +1 -1
  260. package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
  261. package/dist/sankhyablocks/p-17425c72.js +1 -0
  262. package/dist/sankhyablocks/p-23736d75.js +1 -0
  263. package/dist/sankhyablocks/p-35f85998.entry.js +1 -0
  264. package/dist/sankhyablocks/{p-95df461f.entry.js → p-3749dffb.entry.js} +1 -1
  265. package/dist/sankhyablocks/p-38e3ffda.entry.js +1 -0
  266. package/dist/sankhyablocks/p-3b190fb1.entry.js +1 -0
  267. package/dist/sankhyablocks/{p-7e7a7473.js → p-3fc82614.js} +1 -1
  268. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
  269. package/dist/sankhyablocks/p-47178038.entry.js +1 -0
  270. package/dist/sankhyablocks/{p-eae7a817.entry.js → p-490b75b5.entry.js} +1 -1
  271. package/dist/sankhyablocks/p-4ad638be.js +1 -0
  272. package/dist/sankhyablocks/p-5503e89f.entry.js +1 -0
  273. package/dist/sankhyablocks/p-5cc206bb.entry.js +1 -0
  274. package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
  275. package/dist/sankhyablocks/p-5ffa0493.entry.js +1 -0
  276. package/dist/sankhyablocks/p-60137b7a.entry.js +1 -0
  277. package/dist/sankhyablocks/p-601b252b.js +26 -0
  278. package/dist/sankhyablocks/p-6293ded9.entry.js +11 -0
  279. package/dist/sankhyablocks/p-6dd38d7b.js +6 -0
  280. package/dist/sankhyablocks/p-6e0a5314.js +1 -0
  281. package/dist/sankhyablocks/{p-913a9979.js → p-73285a8a.js} +1 -1
  282. package/dist/sankhyablocks/p-79f823f3.entry.js +1 -0
  283. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  284. package/dist/sankhyablocks/p-893b9483.entry.js +1 -0
  285. package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
  286. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
  287. package/dist/sankhyablocks/p-8f3f2306.js +1 -0
  288. package/dist/sankhyablocks/p-90684a75.entry.js +1 -0
  289. package/dist/sankhyablocks/{p-b0ef4383.js → p-9261d8a0.js} +1 -1
  290. package/dist/sankhyablocks/p-92778d5a.js +1 -0
  291. package/dist/sankhyablocks/p-a8be1d67.js +60 -0
  292. package/dist/sankhyablocks/p-a962a3e4.entry.js +1 -0
  293. package/dist/sankhyablocks/p-b2a2a83e.entry.js +1 -0
  294. package/dist/sankhyablocks/p-b6200d32.entry.js +1 -0
  295. package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-c0eb761b.entry.js} +1 -1
  296. package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
  297. package/dist/sankhyablocks/p-d9fdb018.entry.js +1 -0
  298. package/dist/sankhyablocks/p-ebdb9d89.js +1 -0
  299. package/dist/sankhyablocks/p-ef6f0a1b.entry.js +1 -0
  300. package/dist/sankhyablocks/p-fbba7e3d.js +1 -0
  301. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  302. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  303. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  304. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  305. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  306. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  307. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  308. package/dist/types/components/snk-application/search-strategy/exec-prepared-search-plus.d.ts +5 -0
  309. package/dist/types/components/snk-application/snk-application.d.ts +55 -16
  310. package/dist/types/components/snk-attach/snk-attach.d.ts +1 -0
  311. package/dist/types/components/snk-configurator/snk-configurator.d.ts +6 -0
  312. package/dist/types/components/snk-crud/snk-crud.d.ts +34 -0
  313. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +5 -0
  314. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +15 -0
  315. package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
  316. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  317. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +9 -1
  318. package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
  319. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
  320. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  321. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  322. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +7 -0
  323. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +5 -3
  324. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  325. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  326. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
  327. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +9 -4
  328. package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
  329. package/dist/types/components/snk-grid/snk-grid.d.ts +33 -0
  330. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +1 -0
  331. package/dist/types/components/snk-layout-form-config/snk-layout-form-config.d.ts +15 -0
  332. package/dist/types/components/snk-layout-form-config/snk-view-representation/snk-view-representation.d.ts +10 -0
  333. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  334. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  335. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  336. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +35 -1
  337. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +35 -3
  338. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  339. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  340. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +11 -0
  341. package/dist/types/components.d.ts +514 -16
  342. package/dist/types/lib/@types/index.d.ts +4 -0
  343. package/dist/types/lib/configs/LayoutFormConfig.d.ts +11 -0
  344. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
  345. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
  346. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  347. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  348. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  349. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  350. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  351. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  352. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  353. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  354. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
  355. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +14 -2
  356. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  357. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +21 -2
  358. package/dist/types/lib/index.d.ts +1 -0
  359. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  360. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  361. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  362. package/dist/types/lib/utils/constants.d.ts +8 -0
  363. package/package.json +4 -3
  364. package/react/components.d.ts +5 -0
  365. package/react/components.js +5 -0
  366. package/react/components.js.map +1 -1
  367. package/dist/cjs/IExporterProvider-c78cb1b8.js +0 -230
  368. package/dist/cjs/ISave-e91b70a7.js +0 -9
  369. package/dist/cjs/pesquisa-fetcher-680e198f.js +0 -166
  370. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  371. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  372. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  373. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  374. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  375. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  376. package/dist/components/pesquisa-fetcher.js +0 -164
  377. package/dist/esm/IExporterProvider-343272b3.js +0 -221
  378. package/dist/esm/ISave-d8c8bc59.js +0 -9
  379. package/dist/esm/pesquisa-fetcher-03c8f919.js +0 -164
  380. package/dist/esm/snk-config-options.entry.js +0 -235
  381. package/dist/esm/snk-filter-bar.entry.js +0 -710
  382. package/dist/esm/snk-filter-item.entry.js +0 -308
  383. package/dist/esm/snk-filter-list.entry.js +0 -148
  384. package/dist/esm/snk-filter-modal.entry.js +0 -245
  385. package/dist/esm/snk-form.entry.js +0 -139
  386. package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
  387. package/dist/sankhyablocks/p-0d91b10f.entry.js +0 -1
  388. package/dist/sankhyablocks/p-14a08904.entry.js +0 -1
  389. package/dist/sankhyablocks/p-21749402.js +0 -1
  390. package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
  391. package/dist/sankhyablocks/p-26394a01.entry.js +0 -1
  392. package/dist/sankhyablocks/p-2d649237.entry.js +0 -1
  393. package/dist/sankhyablocks/p-30cf616e.js +0 -1
  394. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  395. package/dist/sankhyablocks/p-44767378.entry.js +0 -1
  396. package/dist/sankhyablocks/p-47b60deb.entry.js +0 -1
  397. package/dist/sankhyablocks/p-4f72727a.entry.js +0 -1
  398. package/dist/sankhyablocks/p-550fee49.entry.js +0 -1
  399. package/dist/sankhyablocks/p-5539ecb4.entry.js +0 -1
  400. package/dist/sankhyablocks/p-672302c3.js +0 -60
  401. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  402. package/dist/sankhyablocks/p-7663f597.entry.js +0 -1
  403. package/dist/sankhyablocks/p-7a337364.js +0 -1
  404. package/dist/sankhyablocks/p-829d4045.js +0 -1
  405. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  406. package/dist/sankhyablocks/p-8a5910a7.entry.js +0 -1
  407. package/dist/sankhyablocks/p-8cc64963.entry.js +0 -1
  408. package/dist/sankhyablocks/p-8fc470e5.entry.js +0 -1
  409. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  410. package/dist/sankhyablocks/p-9863d682.js +0 -1
  411. package/dist/sankhyablocks/p-9e99a92a.js +0 -1
  412. package/dist/sankhyablocks/p-af8efd95.js +0 -6
  413. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  414. package/dist/sankhyablocks/p-be603a24.js +0 -1
  415. package/dist/sankhyablocks/p-c2495304.js +0 -1
  416. package/dist/sankhyablocks/p-c8622597.entry.js +0 -1
  417. package/dist/sankhyablocks/p-d09feef1.js +0 -1
  418. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  419. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  420. package/dist/sankhyablocks/p-dc7c9047.js +0 -1
  421. package/dist/sankhyablocks/p-df5451c7.js +0 -26
  422. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  423. package/dist/sankhyablocks/p-e95b3b93.entry.js +0 -11
  424. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  425. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
@@ -1,17 +1,16 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { StringUtils, ElementIDUtils, ApplicationContext, JSUtils, FloatingManager } from '@sankhyalabs/core';
3
- import { T as TaskbarElement } from './taskbar-elements-d59867f1.js';
4
- import './DataFetcher-c1baf61d.js';
5
- import './pesquisa-fetcher-03c8f919.js';
6
- import { P as PresentationMode } from './index-3aa4977a.js';
7
- import './ISave-d8c8bc59.js';
3
+ import { T as TaskbarElement } from './taskbar-elements-d2353c64.js';
4
+ import './DataFetcher-88e56266.js';
5
+ import './ISave-5efafc97.js';
6
+ import { P as PresentationMode, E as ExporterStrategy } from './index-b40568ff.js';
8
7
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
8
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './dataunit-fetcher-3fbf9d12.js';
9
+ import './dataunit-fetcher-1d02ecfc.js';
11
10
  import './filter-item-type.enum-d45e026f.js';
12
- import './form-config-fetcher-30fb808f.js';
13
- import { d as VIEW_MODE } from './constants-8457af36.js';
14
- import { A as AutorizationType } from './auth-fetcher-039abba3.js';
11
+ import './form-config-fetcher-fa208a6c.js';
12
+ import { V as VIEW_MODE } from './constants-7db1128a.js';
13
+ import { A as AutorizationType } from './auth-fetcher-3510520e.js';
15
14
  import './index-bdf75557.js';
16
15
  import './PrintUtils-3e4ff0f5.js';
17
16
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
@@ -27,6 +26,7 @@ const SnkCrud = class {
27
26
  this.configuratorSave = createEvent(this, "configuratorSave", 7);
28
27
  this.configuratorCancel = createEvent(this, "configuratorCancel", 7);
29
28
  this.formItemsReady = createEvent(this, "formItemsReady", 7);
29
+ this.viewModeChanged = createEvent(this, "viewModeChanged", 7);
30
30
  this._keyDownHandler = async (event) => this.keyDownListener(event);
31
31
  this._viewHistory = [];
32
32
  this._customEditors = new Map();
@@ -37,6 +37,8 @@ const SnkCrud = class {
37
37
  this._currentViewMode = VIEW_MODE.GRID;
38
38
  this._canEdit = undefined;
39
39
  this._resourceID = undefined;
40
+ this.enableLockManagerLoadingComp = false;
41
+ this.enableLockManagerTaskbarClick = false;
40
42
  this.configName = undefined;
41
43
  this.filterBarTitle = undefined;
42
44
  this.selectionToastConfig = undefined;
@@ -55,6 +57,12 @@ const SnkCrud = class {
55
57
  this.disablePersonalizedFilter = undefined;
56
58
  this.autoLoad = undefined;
57
59
  this.autoFocus = true;
60
+ this.enableGridInsert = false;
61
+ this.domainMessagesBuilder = undefined;
62
+ this.ignoreReadOnlyFormFields = undefined;
63
+ this.setCustomFormTitle = undefined;
64
+ this.strategyExporter = ExporterStrategy.SERVER_SIDE;
65
+ this.layoutFormConfig = false;
58
66
  this.customContainerId = `SNK-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
59
67
  }
60
68
  /**
@@ -163,6 +171,7 @@ const SnkCrud = class {
163
171
  else if (viewMode === VIEW_MODE.FORM) {
164
172
  this._guidesViewer.setFocus();
165
173
  }
174
+ this.viewModeChanged.emit(viewMode);
166
175
  }
167
176
  openConfig(viewMode) {
168
177
  this._snkConfigurator.close();
@@ -178,6 +187,8 @@ const SnkCrud = class {
178
187
  ElementIDUtils.addIDInfo(this._element, null, dataInfo);
179
188
  }
180
189
  insertionModeHandler() {
190
+ if (this.enableGridInsert)
191
+ return;
181
192
  this.gridToForm();
182
193
  }
183
194
  cancelHandler() {
@@ -226,6 +237,7 @@ const SnkCrud = class {
226
237
  this._snkDataUnit = parent;
227
238
  this._snkDataUnit.addEventListener("insertionMode", () => this.insertionModeHandler());
228
239
  this._snkDataUnit.addEventListener("cancelEdition", () => this.cancelHandler());
240
+ this._snkDataUnit.domainMessagesBuilder = this.domainMessagesBuilder;
229
241
  this._dataUnit = this._snkDataUnit.dataUnit;
230
242
  this._dataState = this._snkDataUnit.dataState;
231
243
  if (!this._dataUnit) {
@@ -290,22 +302,18 @@ const SnkCrud = class {
290
302
  if (!isDocumentBody)
291
303
  element.focus();
292
304
  }
305
+ async function handleAddRecord() {
306
+ if (!dataUnit.hasNewRecord()) {
307
+ dataUnit.addRecord();
308
+ }
309
+ }
293
310
  keyboardManager
294
311
  .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade.", element: this._element })
295
312
  .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
296
313
  .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
297
- .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro.", element: this._element })
314
+ .bind("F8", handleAddRecord.bind(this), { description: "Adiciona um novo registro.", element: this._element })
298
315
  .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
299
316
  .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
300
- .bind("ctrl + .", () => {
301
- if (dataUnit.getSelectionInfo().records.length === 0) {
302
- return dataUnit.selectFirst();
303
- }
304
- return dataUnit.nextRecord();
305
- }, {
306
- description: "Avança para o próximo registro.", element: this._element
307
- })
308
- .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior.", element: this._element })
309
317
  .bind("F5", async () => {
310
318
  const currentView = await this._viewStack.getSelectedIndex();
311
319
  if (VIEW_MODE.GRID === currentView) {
@@ -333,8 +341,6 @@ const SnkCrud = class {
333
341
  .unbind("F8")
334
342
  .unbind("F9")
335
343
  .unbind("ctrl + F9")
336
- .unbind("ctrl + .")
337
- .unbind("ctrl + ,")
338
344
  .unbind("F5")
339
345
  .unbind("Escape");
340
346
  }
@@ -390,8 +396,8 @@ const SnkCrud = class {
390
396
  if (this._resourceID == undefined) {
391
397
  return;
392
398
  }
393
- this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
394
- return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, autoFocus: this.autoFocus }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
399
+ this._snkDataUnit.ignoreSaveMessage = (this._currentViewMode === VIEW_MODE.GRID && !this.enableGridInsert);
400
+ return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", { class: 'ez-flex ez-flex--column ez-size-height--full ez-size-width--full ez-padding--medium' }, h("snk-grid", { ref: (ref) => this._snkGrid = ref, class: 'ez-flex ez-flex--column ez-size-height--full ez-size-width--full', filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, strategyExporter: this.strategyExporter }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName, enableGridInsert: this.enableGridInsert, getCustomTitle: this.setCustomFormTitle, ignoreReadOnlyFormFields: this.ignoreReadOnlyFormFields }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId, layoutFormConfig: this.layoutFormConfig })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
395
401
  }
396
402
  get _element() { return getElement(this); }
397
403
  static get watchers() { return {
@@ -1,21 +1,21 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { ApplicationContext, ObjectUtils, UserInterface, DataType, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
- import { D as DataExporterOption, a as DataExporterType, b as DataExporterFormat } from './index-3aa4977a.js';
5
- import { R as REPORT_LAUNCHER_RESOURCE_ID } from './constants-8457af36.js';
6
- import { D as DataFetcher } from './DataFetcher-c1baf61d.js';
7
- import { S as SnkDataUnit } from './snk-data-unit-8f98b45f.js';
8
- import './pesquisa-fetcher-03c8f919.js';
9
- import './ISave-d8c8bc59.js';
4
+ import { I as IExportType } from './IFetchDataExporterParams-d73bed3d.js';
5
+ import { D as DataExporterOption, a as DataExporterType, b as DataExporterFormat } from './index-b40568ff.js';
6
+ import { R as REPORT_LAUNCHER_RESOURCE_ID } from './constants-7db1128a.js';
7
+ import { D as DataFetcher } from './DataFetcher-88e56266.js';
8
+ import { S as SnkDataUnit } from './snk-data-unit-7d0ce406.js';
9
+ import './ISave-5efafc97.js';
10
10
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
11
11
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
12
- import './dataunit-fetcher-3fbf9d12.js';
12
+ import './dataunit-fetcher-1d02ecfc.js';
13
13
  import './filter-item-type.enum-d45e026f.js';
14
- import './form-config-fetcher-30fb808f.js';
14
+ import './form-config-fetcher-fa208a6c.js';
15
15
  import './PrintUtils-3e4ff0f5.js';
16
- import './SnkMessageBuilder-89925609.js';
17
- import './RecordIDUtils-87d02110.js';
16
+ import './SnkMessageBuilder-6fff4a4c.js';
18
17
  import '@sankhyalabs/core/dist/dataunit/metadata/DataType';
18
+ import './GetSelectedRecordsIDsInfo-9fa41508.js';
19
19
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
20
20
  import '@sankhyalabs/core/dist/utils/SortingUtils';
21
21
  import './ResourceIDUtils-a114189a.js';
@@ -131,7 +131,7 @@ class ItemBuilder {
131
131
  getExportToXLS(groupName) {
132
132
  return {
133
133
  id: DataExporterOption.EXPORT_TO_XLS,
134
- label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xlsx)`,
134
+ label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xls)`,
135
135
  group: groupName
136
136
  };
137
137
  }
@@ -174,7 +174,7 @@ class ItemBuilder {
174
174
  getExportPageToXLS() {
175
175
  return {
176
176
  id: DataExporterOption.EXPORT_PAGE_TO_XLS,
177
- label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xlsx)`
177
+ label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xls)`
178
178
  };
179
179
  }
180
180
  /**
@@ -250,7 +250,7 @@ function getFormatResponse(result) {
250
250
  return ObjectUtils.stringToObject(response);
251
251
  }
252
252
 
253
- const DOC_MAX_WIDTH = 800;
253
+ const DOC_MAX_WIDTH = 860;
254
254
  function getVisibleColumns(columns) {
255
255
  const visibleColumns = [];
256
256
  let totalWidth = 0;
@@ -290,10 +290,17 @@ class ServerSideExporterStrategy {
290
290
  const visibleColumns = getVisibleColumns(columns);
291
291
  return visibleColumns;
292
292
  }
293
+ async getColumns(resolveProps) {
294
+ var _a;
295
+ if ((_a = getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) === null || _a === void 0 ? void 0 : _a.includes("PDF")) {
296
+ return await this.getParsedColumns();
297
+ }
298
+ return await this._provider.getColumnsMetadata();
299
+ }
293
300
  async getParams(resolveProps) {
294
301
  var _a, _b, _c, _d, _e, _f;
295
302
  const filters = (_b = (_a = this._provider).getFilters) === null || _b === void 0 ? void 0 : _b.call(_a);
296
- const columns = [DataExporterType.EXPORT_TO_PDF, DataExporterType.EXPORT_PAGE_TO_PDF, DataExporterType.EXPORT_PDF_TO_EMAIL, DataExporterType.EXPORT_ALL_RECORDS_TO_PDF].includes(getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) ? await this.getParsedColumns() : await this._provider.getColumnsMetadata();
303
+ const columns = await this.getColumns(resolveProps);
297
304
  const sort = (_d = (_c = this._provider).getOrders) === null || _d === void 0 ? void 0 : _d.call(_c);
298
305
  const resourceURI = (_f = (_e = this._provider).getResourceURI) === null || _f === void 0 ? void 0 : _f.call(_e);
299
306
  const selectedIDs = this._provider.getSelectedIDs();
@@ -350,15 +357,16 @@ class ClientSideExporterStrategy {
350
357
  return visibleColumns;
351
358
  }
352
359
  async executeExport(resolveProps) {
353
- const { methodName, titleGrid } = resolveProps;
354
- const records = await this._provider.getRecords();
355
- const columns = [DataExporterType.EXPORT_TO_PDF, DataExporterType.EXPORT_PAGE_TO_PDF, DataExporterType.EXPORT_PDF_TO_EMAIL, DataExporterType.EXPORT_ALL_RECORDS_TO_PDF].includes(getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) ? await this.getParsedColumns() : await this._provider.getColumnsMetadata();
360
+ var _a;
361
+ const { methodName, gridTitle } = resolveProps;
362
+ const records = await this._provider.getRecords(resolveProps.type);
363
+ const columns = ((_a = getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) === null || _a === void 0 ? void 0 : _a.includes("PDF")) ? await this.getParsedColumns() : await this._provider.getColumnsMetadata();
356
364
  const [serviceName, processor] = this.getExecutor(methodName);
357
365
  const payload = {
358
366
  serviceName,
359
367
  requestBody: {
360
368
  grid: {
361
- titleGrid,
369
+ gridTitle,
362
370
  columns: this.buildColumnsObject(columns),
363
371
  rows: this.buildRowsObject(columns, records),
364
372
  customOptions: { xlsxExtension: false }
@@ -389,10 +397,10 @@ class ClientSideExporterStrategy {
389
397
  "GridXLSBuilderSP.buildXLSFromJson",
390
398
  responseBody => ({
391
399
  fileSessionKey: responseBody.chaveXLS.valor,
392
- canPrint: false,
393
- canExport: false,
400
+ canPrint: true,
401
+ canExport: true,
402
+ canSendEmail: true,
394
403
  useAppPrint: false,
395
- canSendEmail: false
396
404
  })
397
405
  ];
398
406
  }
@@ -468,7 +476,7 @@ const SnkDataExporter = class {
468
476
  resolver: ({ type, format, email: { to, subject, message } }) => {
469
477
  var _a;
470
478
  const methodName = (_a = DataExporterFormat[format === null || format === void 0 ? void 0 : format.toUpperCase()]) !== null && _a !== void 0 ? _a : DataExporterFormat.PDF;
471
- this.resolveExporter({ type, methodName, to, subject, message, fileName: this._appLabel, titleGrid: this._appLabel }, () => {
479
+ this.resolveExporter({ type, methodName, to, subject, message, fileName: this._appLabel, gridTitle: this._appLabel }, () => {
472
480
  this._snkEmailSender.close();
473
481
  ApplicationUtils.info(this.getMessage("snkDataExporter.message.emailSuccess"), { iconName: "check" });
474
482
  });
@@ -531,7 +539,9 @@ const SnkDataExporter = class {
531
539
  });
532
540
  }
533
541
  getExporterStrategy() {
534
- return this.provider.getRecords == undefined ? new ServerSideExporterStrategy(this.provider) : new ClientSideExporterStrategy(this.provider);
542
+ return this.provider.getRecords == undefined
543
+ ? new ServerSideExporterStrategy(this.provider)
544
+ : new ClientSideExporterStrategy(this.provider);
535
545
  }
536
546
  getOptionKey(option) {
537
547
  return Object.keys(DataExporterOption)
@@ -541,30 +551,28 @@ const SnkDataExporter = class {
541
551
  }
542
552
  getExportType(option) {
543
553
  if (option === DataExporterOption.EXPORT_ALL_RECORDS_TO_PDF || option === DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS) {
544
- return 'all';
554
+ return IExportType.ALL;
545
555
  }
546
556
  if (option === DataExporterOption.EXPORT_PAGE_TO_PDF || option === DataExporterOption.EXPORT_PAGE_TO_XLS) {
547
- return 'page';
557
+ return IExportType.PAGE;
548
558
  }
549
- return 'selection';
559
+ return IExportType.SELECTION;
550
560
  }
551
561
  async dispatchExporter(option) {
552
562
  var _a, _b, _c;
553
563
  const optionKey = this.getOptionKey(option);
554
564
  const fileType = (_a = DataExporterType[optionKey]) !== null && _a !== void 0 ? _a : DataExporterType.EXPORT_TO_PDF;
555
- const isDownload = DataExporterType[optionKey] === DataExporterType.EXPORT_TO_XLS;
556
565
  const params = {
557
566
  methodName: DataExporterOption[`EXPORT_TO_${fileType}`],
558
567
  fileName: this._appLabel,
559
- titleGrid: this._appLabel,
568
+ gridTitle: this._appLabel,
560
569
  exportOption: option,
561
570
  limit: (_c = (_b = this.provider) === null || _b === void 0 ? void 0 : _b.getExportLimit) === null || _c === void 0 ? void 0 : _c.call(_b),
562
571
  type: this.getExportType(option),
563
572
  };
564
573
  await this.resolveExporter(params, (response) => {
565
574
  if (response.canExport || fileType === DataExporterType.EXPORT_TO_PDF) {
566
- fileViewer(Object.assign(Object.assign({}, response), { fileType,
567
- isDownload }));
575
+ fileViewer(Object.assign(Object.assign({}, response), { fileType }));
568
576
  }
569
577
  else {
570
578
  ApplicationUtils.error(this.getMessage("snkDataExporter.title.permission"), this.getMessage("snkDataExporter.message.exportPermission"));
@@ -1,10 +1,10 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-a7d3d3f1.js';
2
2
  import { Action, ObjectUtils, DataUnitAction, StringUtils, ApplicationContext } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
- import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-89925609.js';
5
- import { g as getRecordValue, a as DatasetStrategy } from './dataunit-fetcher-3fbf9d12.js';
6
- import { g as getSelectedIDs } from './RecordIDUtils-87d02110.js';
4
+ import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-6fff4a4c.js';
5
+ import { g as getRecordValue, a as DatasetStrategy } from './dataunit-fetcher-1d02ecfc.js';
7
6
  import { convertType } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
7
+ import { g as getSelectedRecordsIDsInfo } from './GetSelectedRecordsIDsInfo-9fa41508.js';
8
8
 
9
9
  const SnkDataUnit = class {
10
10
  constructor(hostRef) {
@@ -23,7 +23,7 @@ const SnkDataUnit = class {
23
23
  this._rowMetadataCache = new Map();
24
24
  this.REGEX_DATAUNIT_NAME = /dd:\/\/(.+?)\//;
25
25
  this._dataUnitObserver = async (action) => {
26
- const duState = this.buildDataState(action.type);
26
+ const duState = await this.buildDataState(action.type);
27
27
  this.dataState = duState;
28
28
  this.messagesBuilder.currentOperation = this.getMessageOperation();
29
29
  switch (action.type) {
@@ -59,6 +59,7 @@ const SnkDataUnit = class {
59
59
  this.ignoreSaveMessage = undefined;
60
60
  this.configName = undefined;
61
61
  this.resourceID = undefined;
62
+ this.domainMessagesBuilder = undefined;
62
63
  }
63
64
  observePageSize() {
64
65
  if (this.dataUnit) {
@@ -114,7 +115,7 @@ const SnkDataUnit = class {
114
115
  * @returns Retorna a lista de IDs dos registros selecionados.
115
116
  */
116
117
  async getSelectedRecordsIDsInfo() {
117
- return Promise.resolve(getSelectedIDs(this.dataUnit));
118
+ return getSelectedRecordsIDsInfo(this.dataUnit);
118
119
  }
119
120
  /**
120
121
  * Retorna os campos que possuem a propriedade "rmp" (Row Metadata Provider).
@@ -134,14 +135,22 @@ const SnkDataUnit = class {
134
135
  async getRowMetadata(record) {
135
136
  return this.doGetRowMetadata(record);
136
137
  }
137
- doGetRowMetadata(record) {
138
+ async doGetRowMetadata(record) {
138
139
  const selectedRecord = this.dataUnit.getSelectedRecord();
139
140
  if (!record && !selectedRecord) {
140
141
  return;
141
142
  }
142
143
  const currentRecord = record || selectedRecord;
143
144
  const recordId = typeof currentRecord === 'string' ? currentRecord : currentRecord.__record__id__;
144
- const rowMetadata = this._metadataByRow.get(recordId);
145
+ let rowMetadata = this._metadataByRow.get(recordId);
146
+ /*
147
+ Nao fazemos cache de metadataByRow pra registros novos, pois a chave do mesmo
148
+ muda ao ser salvo, por isso essa tratativa é necessária para que o dataState fique com metadados
149
+ corretos nao confiando apenas no _metadataByRow
150
+ */
151
+ if (this.dataUnit.isNewRecord(recordId) && !rowMetadata) {
152
+ rowMetadata = await this.handleLoadRowMetadata(selectedRecord);
153
+ }
145
154
  if (!rowMetadata) {
146
155
  return;
147
156
  }
@@ -247,7 +256,9 @@ const SnkDataUnit = class {
247
256
  return new DataUnitAction(Action.RECORDS_COPIED, this.handleRecordsCopied(action.payload));
248
257
  }
249
258
  async interceptDataChange(action) {
250
- if (this.isAllowed("UPDATE")) {
259
+ var _a;
260
+ const recordId = (_a = this.dataUnit.getSelectedRecord()) === null || _a === void 0 ? void 0 : _a.__record__id__;
261
+ if (this.isAllowed("UPDATE") || this.dataUnit.isNewRecord(recordId)) {
251
262
  return action;
252
263
  }
253
264
  if (this._openedAlert) {
@@ -335,7 +346,7 @@ const SnkDataUnit = class {
335
346
  case Action.RECORDS_COPIED:
336
347
  return this.interceptRecordsCopied(action);
337
348
  case Action.DATA_CHANGED:
338
- await this.handleLoadRowMetadata(action);
349
+ await this.handleLoadRowMetadata(action.payload);
339
350
  return await this.interceptDataChange(action);
340
351
  case Action.CHANGING_DATA:
341
352
  return await this.interceptDataChange(action);
@@ -355,8 +366,9 @@ const SnkDataUnit = class {
355
366
  return action;
356
367
  }
357
368
  }
358
- async handleLoadRowMetadata(action) {
359
- const record = action.type === Action.DATA_CHANGED ? action.payload : action.payload.changes[0].record;
369
+ async handleLoadRowMetadata(record) {
370
+ if (!record)
371
+ return;
360
372
  const keysPayload = Object.keys(record);
361
373
  const rmpField = keysPayload.find((field) => this._fieldsWithRmp.includes(field));
362
374
  if (rmpField) {
@@ -435,7 +447,7 @@ const SnkDataUnit = class {
435
447
  isAllowed(flag) {
436
448
  return this._permissions ? this._permissions.isSup || this._permissions[flag] : false;
437
449
  }
438
- buildDataState(actionType) {
450
+ async buildDataState(actionType) {
439
451
  var _a;
440
452
  const selectionInfo = this.dataUnit.getSelectionInfo();
441
453
  const isStartingInsertionMode = (this.dataUnit.hasDirtyRecords() || this.dataUnit.hasWaitingChanges()) && (selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.isEmpty());
@@ -443,7 +455,7 @@ const SnkDataUnit = class {
443
455
  let rowMetadata = (_a = this.dataState) === null || _a === void 0 ? void 0 : _a.rowMetadata;
444
456
  const allowedOverwrite = [Action.SELECTION_CHANGED, Action.EDITION_CANCELED, Action.NEXT_SELECTED, Action.PREVIOUS_SELECTED];
445
457
  if (selectedRecord && (!rowMetadata || allowedOverwrite.includes(actionType))) {
446
- rowMetadata = this.doGetRowMetadata(selectedRecord);
458
+ rowMetadata = await this.doGetRowMetadata(selectedRecord);
447
459
  }
448
460
  else if (rowMetadata) {
449
461
  rowMetadata.getProp = this.buildGetPropRowMetadata(rowMetadata);
@@ -465,31 +477,28 @@ const SnkDataUnit = class {
465
477
  });
466
478
  }
467
479
  async handleDataSaved(action) {
468
- const newRowMetadata = await this.handleLoadRowMetadata(action);
480
+ var _a, _b, _c;
481
+ const newRowMetadata = await this.handleLoadRowMetadata((_c = (_b = (_a = action === null || action === void 0 ? void 0 : action.payload) === null || _a === void 0 ? void 0 : _a.changes) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.record);
469
482
  if (newRowMetadata) {
470
483
  newRowMetadata.getProp = this.buildGetPropRowMetadata(newRowMetadata);
471
484
  }
472
485
  const recordId = action.payload.records[0].__record__id__;
473
486
  this._metadataByRow.set(recordId, newRowMetadata);
474
- this.dataState = this.buildDataState();
475
- if (this.ignoreSaveMessage) {
487
+ this.dataState = await this.buildDataState();
488
+ let saveOperation = action.payload.changes[0]._operation.toLowerCase();
489
+ if (saveOperation == 'copy')
490
+ saveOperation = OperationMap.CLONE;
491
+ if (this.ignoreSaveMessage && ![OperationMap.CLONE, OperationMap.INSERT].includes(saveOperation)) {
476
492
  return;
477
493
  }
478
- const msg = this.getMessage("snkDataUnit.saveInfo", action.payload.records[0]);
494
+ const msg = this.getMessage("snkDataUnit.saveInfo", action.payload.records[0], saveOperation);
479
495
  if (msg != undefined) {
480
496
  this.showSuccessMessage(msg);
481
497
  }
482
498
  }
483
499
  handleRecordsRemoved(action) {
484
500
  var _a, _b;
485
- const cachedRecords = action.payload.cachedRecords;
486
- let removeFinishMsg;
487
- if ((cachedRecords === null || cachedRecords === void 0 ? void 0 : cachedRecords.length) > 1) {
488
- removeFinishMsg = this.getMessage("snkDataUnit.removeAllInfo", { size: cachedRecords.length });
489
- }
490
- else {
491
- removeFinishMsg = this.getMessage("snkDataUnit.removeInfo", action.payload.cachedRecords[0]);
492
- }
501
+ let removeFinishMsg = this.buildRemoveFinishMessage(action);
493
502
  if (removeFinishMsg != undefined) {
494
503
  this.showSuccessMessage(removeFinishMsg);
495
504
  }
@@ -500,16 +509,27 @@ const SnkDataUnit = class {
500
509
  this.dataUnit.gotoPage(page);
501
510
  }
502
511
  }
512
+ buildRemoveFinishMessage(action) {
513
+ const records = action.payload.records;
514
+ if (!records || !records.length)
515
+ return undefined;
516
+ if ((records === null || records === void 0 ? void 0 : records.length) > 1)
517
+ return this.getMessage('snkDataUnit.removeAllInfo', { size: records.length });
518
+ return this.getMessage('snkDataUnit.removeInfo', records);
519
+ }
503
520
  /**
504
521
  * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
505
522
  * através de um pequeno modulo na estrutura da aplicação:
506
523
  * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
507
524
  * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-data-unit.msg.ts"
508
525
  */
509
- getMessage(key, params = undefined) {
526
+ getMessage(key, params = undefined, customOperation) {
510
527
  if (!params) {
511
528
  params = this.getMessageParams();
512
529
  }
530
+ if (customOperation) {
531
+ this.messagesBuilder.currentOperation = customOperation;
532
+ }
513
533
  return this.messagesBuilder.getMessage(key, params);
514
534
  }
515
535
  getMessageParams() {
@@ -540,21 +560,30 @@ const SnkDataUnit = class {
540
560
  return await this._application.getDataUnit(this.entityName, cacheName, null, this.configName, this.resourceID);
541
561
  }
542
562
  }
563
+ updateMetadataWithRMP() {
564
+ this.fillFieldsWithRmp(this.dataUnit.metadata);
565
+ this.fillFieldsWithRmPrecision(this.dataUnit.metadata);
566
+ const dataUnitUpdatedMetadata = this.handleDULinksOnMetadataLoaded(this.dataUnit.metadata);
567
+ this.dataUnit.metadata = dataUnitUpdatedMetadata;
568
+ }
543
569
  async loadDataUnit() {
544
- var _a;
570
+ var _a, _b;
545
571
  if (this.dataUnit == null && this._application && this.entityName) {
546
572
  this.dataUnit = await this.getDataUnitParentOrChild();
547
573
  }
548
574
  if (this.dataUnit) {
549
575
  this.dataUnit.pageSize = this.pageSize;
550
576
  this.dataUnit.unsubscribe(this._dataUnitObserver);
551
- this.dataUnit.addInterceptor(this);
552
577
  this.dataUnit.subscribe(this._dataUnitObserver);
553
- await this.dataUnit.loadMetadata();
554
- if ((_a = this.dataUnit.records) === null || _a === void 0 ? void 0 : _a.length) {
555
- this.getMetadataByRow(this.dataUnit);
578
+ if ((_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.metadata) {
579
+ this.updateMetadataWithRMP();
580
+ }
581
+ this.dataUnit.addInterceptor(this);
582
+ if ((_b = this.dataUnit.records) === null || _b === void 0 ? void 0 : _b.length) {
583
+ const { records } = this.getMetadataByRow(this.dataUnit);
584
+ this.dataUnit.records = records;
556
585
  }
557
- this.dataState = this.buildDataState();
586
+ this.dataState = await this.buildDataState();
558
587
  let resolver;
559
588
  while (resolver = this._onDataUnitResolve.pop()) {
560
589
  resolver(this.dataUnit);
@@ -616,6 +645,13 @@ const SnkDataUnit = class {
616
645
  parent = parent.parentElement;
617
646
  }
618
647
  }
648
+ instanceMessagesBuilder() {
649
+ var _a;
650
+ if (this.messagesBuilder) {
651
+ return;
652
+ }
653
+ this.messagesBuilder = new SnkMessageBuilder((_a = this.domainMessagesBuilder) !== null && _a !== void 0 ? _a : this.entityName);
654
+ }
619
655
  //---------------------------------------------
620
656
  // Lifecycle web component
621
657
  //---------------------------------------------
@@ -623,9 +659,7 @@ const SnkDataUnit = class {
623
659
  this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
624
660
  this._application.getAllAccess(this.resourceID).then(access => this._permissions = access);
625
661
  this._parentSnkDataUnit = this.getParentSnkDataUnit();
626
- if (this.messagesBuilder == undefined) {
627
- this.messagesBuilder = new SnkMessageBuilder(this.entityName);
628
- }
662
+ this.instanceMessagesBuilder();
629
663
  }
630
664
  disconnectedCallback() {
631
665
  if (this.dataUnit) {
@@ -1,15 +1,15 @@
1
- export { S as snk_data_unit } from './snk-data-unit-8f98b45f.js';
1
+ export { S as snk_data_unit } from './snk-data-unit-7d0ce406.js';
2
2
  import './index-a7d3d3f1.js';
3
3
  import '@sankhyalabs/core';
4
4
  import '@sankhyalabs/ezui/dist/collection/utils';
5
- import './SnkMessageBuilder-89925609.js';
6
- import './dataunit-fetcher-3fbf9d12.js';
7
- import './DataFetcher-c1baf61d.js';
5
+ import './SnkMessageBuilder-6fff4a4c.js';
6
+ import './dataunit-fetcher-1d02ecfc.js';
7
+ import './DataFetcher-88e56266.js';
8
8
  import './PrintUtils-3e4ff0f5.js';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
10
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
11
11
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
12
12
  import '@sankhyalabs/core/dist/utils/SortingUtils';
13
13
  import './ResourceIDUtils-a114189a.js';
14
- import './RecordIDUtils-87d02110.js';
15
14
  import '@sankhyalabs/core/dist/dataunit/metadata/DataType';
15
+ import './GetSelectedRecordsIDsInfo-9fa41508.js';