@sankhyalabs/sankhyablocks 8.16.0-dev.8 → 8.16.0-dev.80

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 (361) hide show
  1. package/dist/cjs/{ConfigStorage-a343e418.js → ConfigStorage-d024aec8.js} +2 -2
  2. package/dist/cjs/{IExporterProvider-597949f9.js → ContinuousInsertUtils-c27b439e.js} +66 -23
  3. package/dist/cjs/{DataFetcher-313debd8.js → DataFetcher-65879b2c.js} +216 -76
  4. package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
  5. package/dist/cjs/{SnkFormConfigManager-166cbd1f.js → SnkFormConfigManager-c11d8468.js} +75 -17
  6. package/dist/cjs/{SnkMessageBuilder-722b104e.js → SnkMessageBuilder-bae64d0d.js} +7 -3
  7. package/dist/cjs/{auth-fetcher-54f5ff9d.js → auth-fetcher-8480751c.js} +1 -1
  8. package/dist/cjs/{constants-35ddd366.js → constants-241934b3.js} +9 -0
  9. package/dist/cjs/{dataunit-fetcher-688d3f05.js → dataunit-fetcher-8291ac21.js} +239 -43
  10. package/dist/cjs/{field-search-f56aa7d6.js → field-search-68e34bf4.js} +5 -1
  11. package/dist/cjs/{form-config-fetcher-2dd00e5b.js → form-config-fetcher-90126e4c.js} +42 -2
  12. package/dist/cjs/index-f9e81701.js +16 -32
  13. package/dist/cjs/loader.cjs.js +1 -1
  14. package/dist/cjs/pesquisa-fetcher-5c583c93.js +365 -0
  15. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +156 -0
  16. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  17. package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_5.cjs.entry.js} +138 -42
  18. package/dist/cjs/snk-application.cjs.entry.js +293 -69
  19. package/dist/cjs/snk-attach.cjs.entry.js +47 -34
  20. package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +399 -13
  21. package/dist/cjs/snk-configurator.cjs.entry.js +2 -2
  22. package/dist/cjs/snk-crud.cjs.entry.js +23 -9
  23. package/dist/cjs/snk-data-exporter.cjs.entry.js +35 -23
  24. package/dist/cjs/{snk-data-unit-04df81bf.js → snk-data-unit-d75e6220.js} +54 -32
  25. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
  26. package/dist/cjs/snk-detail-view.cjs.entry.js +13 -13
  27. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  28. package/dist/cjs/snk-field-config.cjs.entry.js +1 -1
  29. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1436 -0
  30. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  31. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  32. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  33. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -1
  34. package/dist/cjs/snk-grid.cjs.entry.js +89 -24
  35. package/dist/cjs/{snk-guides-viewer-bdc41281.js → snk-guides-viewer-bff0d27d.js} +30 -14
  36. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
  37. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +4 -4
  38. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  39. package/dist/cjs/snk-pesquisa.cjs.entry.js +111 -31
  40. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  41. package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
  42. package/dist/cjs/snk-simple-crud.cjs.entry.js +102 -45
  43. package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
  44. package/dist/cjs/snk-taskbar.cjs.entry.js +70 -38
  45. package/dist/collection/collection-manifest.json +14 -31
  46. package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
  47. package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
  48. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
  49. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
  50. package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
  51. package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
  52. package/dist/collection/components/snk-application/snk-application.css +36 -0
  53. package/dist/collection/components/snk-application/snk-application.js +315 -64
  54. package/dist/collection/components/snk-attach/snk-attach.js +25 -16
  55. package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
  56. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +2 -4
  57. package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
  58. package/dist/collection/components/snk-crud/snk-crud.js +122 -3
  59. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +3 -3
  60. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
  61. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +72 -6
  62. package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
  63. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +13 -7
  64. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
  65. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +1 -1
  66. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +1 -1
  67. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
  68. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +3 -5
  69. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
  70. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
  71. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  72. package/dist/collection/components/snk-data-unit/snk-data-unit.js +52 -30
  73. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
  74. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
  75. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
  76. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
  77. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
  78. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
  79. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +5 -1
  80. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
  81. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +3 -1
  82. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +1 -1
  83. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +118 -28
  84. package/dist/collection/components/snk-form/snk-form.js +2 -2
  85. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +73 -15
  86. package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
  87. package/dist/collection/components/snk-form-config/snk-form-config.js +49 -8
  88. package/dist/collection/components/snk-grid/snk-grid.css +2 -0
  89. package/dist/collection/components/snk-grid/snk-grid.js +170 -11
  90. package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
  91. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
  92. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
  93. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
  94. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
  95. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
  96. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
  97. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +174 -32
  98. package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
  99. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
  100. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
  101. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +164 -35
  102. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
  103. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
  104. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
  105. package/dist/collection/components/snk-taskbar/snk-taskbar.js +112 -38
  106. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +3 -3
  107. package/dist/collection/lib/dataUnit/InMemoryLoader.js +2 -4
  108. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +34 -9
  109. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +29 -21
  110. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  111. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  112. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  113. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  114. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +17 -9
  115. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +45 -5
  116. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  117. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +107 -7
  118. package/dist/collection/lib/index.js +1 -0
  119. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -1
  120. package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
  121. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  122. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  123. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  124. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  125. package/dist/collection/lib/utils/constants.js +9 -0
  126. package/dist/collection/sw.js +46 -0
  127. package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +67 -23
  128. package/dist/components/DataFetcher.js +217 -77
  129. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  130. package/dist/components/ISave.js +362 -1
  131. package/dist/components/SnkFormConfigManager.js +73 -15
  132. package/dist/components/SnkMessageBuilder.js +7 -3
  133. package/dist/components/constants.js +10 -1
  134. package/dist/components/dataunit-fetcher.js +238 -40
  135. package/dist/components/form-config-fetcher.js +41 -1
  136. package/dist/components/index.d.ts +3 -0
  137. package/dist/components/index.js +3 -0
  138. package/dist/components/pesquisa-grid.d.ts +11 -0
  139. package/dist/components/pesquisa-grid.js +6 -0
  140. package/dist/components/pesquisa-grid2.js +102 -0
  141. package/dist/components/pesquisa-tree.d.ts +11 -0
  142. package/dist/components/pesquisa-tree.js +6 -0
  143. package/dist/components/pesquisa-tree2.js +91 -0
  144. package/dist/components/snk-actions-button2.js +44 -40
  145. package/dist/components/snk-application2.js +312 -68
  146. package/dist/components/snk-attach2.js +54 -60
  147. package/dist/components/snk-config-options2.js +1 -1
  148. package/dist/components/snk-configurator2.js +1 -1
  149. package/dist/components/snk-crud.js +83 -59
  150. package/dist/components/snk-data-exporter2.js +28 -17
  151. package/dist/components/snk-data-unit2.js +55 -70
  152. package/dist/components/snk-detail-view2.js +115 -106
  153. package/dist/components/snk-exporter-email-sender2.js +1 -1
  154. package/dist/components/snk-filter-bar2.js +64 -30
  155. package/dist/components/snk-filter-binary-select.js +1 -1
  156. package/dist/components/snk-filter-checkbox-list.js +1 -1
  157. package/dist/components/snk-filter-item2.js +5 -1
  158. package/dist/components/snk-filter-modal.js +4 -2
  159. package/dist/components/snk-filter-text.js +2 -1
  160. package/dist/components/snk-form-config2.js +35 -10
  161. package/dist/components/snk-form.js +2 -2
  162. package/dist/components/snk-grid-config2.js +1 -1
  163. package/dist/components/snk-grid2.js +86 -16
  164. package/dist/components/snk-personalized-filter-editor.js +4 -4
  165. package/dist/components/snk-pesquisa2.js +125 -33
  166. package/dist/components/snk-print-selector.js +1 -1
  167. package/dist/components/snk-simple-bar2.js +1 -1
  168. package/dist/components/snk-simple-crud2.js +108 -65
  169. package/dist/components/snk-simple-form-config.d.ts +11 -0
  170. package/dist/components/snk-simple-form-config.js +6 -0
  171. package/dist/components/snk-simple-form-config2.js +121 -0
  172. package/dist/components/snk-tab-config2.js +1 -1
  173. package/dist/components/snk-taskbar2.js +72 -40
  174. package/dist/components/teste-pesquisa.js +13 -1
  175. package/dist/esm/{ConfigStorage-3806514e.js → ConfigStorage-373bb440.js} +2 -2
  176. package/dist/esm/{IExporterProvider-63a188b6.js → ContinuousInsertUtils-6bf78c5e.js} +67 -25
  177. package/dist/esm/{DataFetcher-c1baf61d.js → DataFetcher-5221b992.js} +217 -77
  178. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  179. package/dist/esm/{SnkFormConfigManager-31b24066.js → SnkFormConfigManager-5022f87f.js} +75 -17
  180. package/dist/esm/{SnkMessageBuilder-89925609.js → SnkMessageBuilder-6fff4a4c.js} +7 -3
  181. package/dist/esm/{auth-fetcher-039abba3.js → auth-fetcher-e32fe8a4.js} +1 -1
  182. package/dist/esm/{constants-8457af36.js → constants-75abb876.js} +10 -1
  183. package/dist/esm/{dataunit-fetcher-264191b2.js → dataunit-fetcher-5247a708.js} +239 -41
  184. package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
  185. package/dist/esm/{form-config-fetcher-30fb808f.js → form-config-fetcher-126e2471.js} +42 -2
  186. package/dist/esm/index-a7d3d3f1.js +16 -32
  187. package/dist/esm/loader.js +1 -1
  188. package/dist/esm/pesquisa-fetcher-4284f2a3.js +362 -0
  189. package/dist/esm/pesquisa-grid_2.entry.js +151 -0
  190. package/dist/esm/sankhyablocks.js +1 -1
  191. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_5.entry.js} +139 -44
  192. package/dist/esm/snk-application.entry.js +295 -71
  193. package/dist/esm/snk-attach.entry.js +47 -34
  194. package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +399 -15
  195. package/dist/esm/snk-configurator.entry.js +2 -2
  196. package/dist/esm/snk-crud.entry.js +23 -9
  197. package/dist/esm/snk-data-exporter.entry.js +35 -23
  198. package/dist/esm/{snk-data-unit-8eec78bd.js → snk-data-unit-bfd10c71.js} +54 -32
  199. package/dist/esm/snk-data-unit.entry.js +5 -5
  200. package/dist/esm/snk-detail-view.entry.js +13 -13
  201. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  202. package/dist/esm/snk-field-config.entry.js +1 -1
  203. package/dist/esm/snk-filter-bar_4.entry.js +1429 -0
  204. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  205. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  206. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  207. package/dist/esm/snk-filter-text.entry.js +2 -1
  208. package/dist/esm/snk-grid.entry.js +84 -19
  209. package/dist/esm/{snk-guides-viewer-dda0fede.js → snk-guides-viewer-454ebc07.js} +30 -14
  210. package/dist/esm/snk-guides-viewer.entry.js +9 -9
  211. package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
  212. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  213. package/dist/esm/snk-pesquisa.entry.js +111 -31
  214. package/dist/esm/snk-print-selector.entry.js +1 -1
  215. package/dist/esm/snk-simple-bar.entry.js +1 -1
  216. package/dist/esm/snk-simple-crud.entry.js +99 -42
  217. package/dist/esm/snk-tab-config.entry.js +1 -1
  218. package/dist/esm/snk-taskbar.entry.js +71 -39
  219. package/dist/sankhyablocks/p-03e6825e.js +1 -0
  220. package/dist/sankhyablocks/p-1435701f.js +26 -0
  221. package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
  222. package/dist/sankhyablocks/p-17425c72.js +1 -0
  223. package/dist/sankhyablocks/{p-52920496.js → p-19dc71e9.js} +1 -1
  224. package/dist/sankhyablocks/{p-47db7e88.entry.js → p-1cf39cfd.entry.js} +1 -1
  225. package/dist/sankhyablocks/{p-b0ef4383.js → p-1d19a5b0.js} +1 -1
  226. package/dist/sankhyablocks/p-23736d75.js +1 -0
  227. package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-23cd6abf.entry.js} +1 -1
  228. package/dist/sankhyablocks/p-28ca3908.entry.js +1 -0
  229. package/dist/sankhyablocks/{p-95df461f.entry.js → p-2953c481.entry.js} +1 -1
  230. package/dist/sankhyablocks/p-38179225.js +60 -0
  231. package/dist/sankhyablocks/p-3ba431c9.js +1 -0
  232. package/dist/sankhyablocks/p-41c3bee5.js +6 -0
  233. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
  234. package/dist/sankhyablocks/p-47178038.entry.js +1 -0
  235. package/dist/sankhyablocks/p-478ab2b6.js +1 -0
  236. package/dist/sankhyablocks/{p-7663f597.entry.js → p-4c9adf1c.entry.js} +1 -1
  237. package/dist/sankhyablocks/p-50bf8dbc.entry.js +1 -0
  238. package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
  239. package/dist/sankhyablocks/p-643b2aaa.entry.js +1 -0
  240. package/dist/sankhyablocks/p-655bdd60.js +1 -0
  241. package/dist/sankhyablocks/p-6fc8bfa2.entry.js +1 -0
  242. package/dist/sankhyablocks/p-73b037a8.entry.js +1 -0
  243. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  244. package/dist/sankhyablocks/{p-2c68b3ae.entry.js → p-82ee6dc3.entry.js} +1 -1
  245. package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
  246. package/dist/sankhyablocks/p-8ad7c8bc.entry.js +1 -0
  247. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
  248. package/dist/sankhyablocks/p-91e34755.entry.js +1 -0
  249. package/dist/sankhyablocks/p-9a99c67b.entry.js +1 -0
  250. package/dist/sankhyablocks/p-a04f38aa.entry.js +1 -0
  251. package/dist/sankhyablocks/p-ae26e8d0.entry.js +1 -0
  252. package/dist/sankhyablocks/p-bd234604.entry.js +1 -0
  253. package/dist/sankhyablocks/p-c021a3a9.entry.js +1 -0
  254. package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
  255. package/dist/sankhyablocks/p-d62228fb.js +1 -0
  256. package/dist/sankhyablocks/p-d9bb48c4.entry.js +11 -0
  257. package/dist/sankhyablocks/p-edbe8e15.entry.js +1 -0
  258. package/dist/sankhyablocks/{p-913a9979.js → p-f0b9303b.js} +1 -1
  259. package/dist/sankhyablocks/p-f8db6795.entry.js +1 -0
  260. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  261. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  262. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  263. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  264. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  265. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  266. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  267. package/dist/types/components/snk-application/snk-application.d.ts +38 -14
  268. package/dist/types/components/snk-attach/snk-attach.d.ts +1 -0
  269. package/dist/types/components/snk-crud/snk-crud.d.ts +21 -0
  270. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +15 -0
  271. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +1 -0
  272. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  273. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  274. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  275. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +2 -0
  276. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  277. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  278. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
  279. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +7 -2
  280. package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
  281. package/dist/types/components/snk-grid/snk-grid.d.ts +28 -0
  282. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  283. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  284. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  285. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +35 -1
  286. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +27 -3
  287. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  288. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  289. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +11 -0
  290. package/dist/types/components.d.ts +388 -14
  291. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +12 -2
  292. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  293. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  294. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  295. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  296. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  297. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  298. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  299. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +1 -1
  300. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +8 -2
  301. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  302. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +17 -1
  303. package/dist/types/lib/index.d.ts +1 -0
  304. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  305. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  306. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  307. package/dist/types/lib/utils/constants.d.ts +7 -0
  308. package/package.json +4 -3
  309. package/react/components.d.ts +3 -0
  310. package/react/components.js +3 -0
  311. package/react/components.js.map +1 -1
  312. package/dist/cjs/pesquisa-fetcher-680e198f.js +0 -166
  313. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  314. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  315. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  316. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  317. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  318. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  319. package/dist/components/pesquisa-fetcher.js +0 -164
  320. package/dist/esm/pesquisa-fetcher-03c8f919.js +0 -164
  321. package/dist/esm/snk-config-options.entry.js +0 -235
  322. package/dist/esm/snk-filter-bar.entry.js +0 -710
  323. package/dist/esm/snk-filter-item.entry.js +0 -308
  324. package/dist/esm/snk-filter-list.entry.js +0 -148
  325. package/dist/esm/snk-filter-modal.entry.js +0 -245
  326. package/dist/esm/snk-form.entry.js +0 -139
  327. package/dist/sankhyablocks/p-045eae4d.entry.js +0 -11
  328. package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
  329. package/dist/sankhyablocks/p-2a408684.js +0 -1
  330. package/dist/sankhyablocks/p-3a212712.js +0 -1
  331. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  332. package/dist/sankhyablocks/p-450c60e4.entry.js +0 -1
  333. package/dist/sankhyablocks/p-4e5e1313.entry.js +0 -1
  334. package/dist/sankhyablocks/p-547eeac8.entry.js +0 -1
  335. package/dist/sankhyablocks/p-62ba211a.entry.js +0 -1
  336. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  337. package/dist/sankhyablocks/p-7505da04.entry.js +0 -1
  338. package/dist/sankhyablocks/p-75e674ed.entry.js +0 -1
  339. package/dist/sankhyablocks/p-7a337364.js +0 -1
  340. package/dist/sankhyablocks/p-7a85fd49.entry.js +0 -1
  341. package/dist/sankhyablocks/p-7b08d0f8.entry.js +0 -1
  342. package/dist/sankhyablocks/p-80042dc6.entry.js +0 -1
  343. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  344. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  345. package/dist/sankhyablocks/p-9863d682.js +0 -1
  346. package/dist/sankhyablocks/p-af8efd95.js +0 -6
  347. package/dist/sankhyablocks/p-b05d8893.entry.js +0 -1
  348. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  349. package/dist/sankhyablocks/p-c1d57831.entry.js +0 -1
  350. package/dist/sankhyablocks/p-c2495304.js +0 -1
  351. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  352. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  353. package/dist/sankhyablocks/p-d6e26ea8.entry.js +0 -1
  354. package/dist/sankhyablocks/p-dc7c9047.js +0 -1
  355. package/dist/sankhyablocks/p-df5451c7.js +0 -26
  356. package/dist/sankhyablocks/p-e549f7d1.js +0 -1
  357. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  358. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  359. package/dist/sankhyablocks/p-fa4d8cb4.js +0 -1
  360. package/dist/sankhyablocks/p-fe79f83a.js +0 -60
  361. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
@@ -1,6 +1,6 @@
1
- import { ApplicationContext, DataType, DependencyType, ElementIDUtils, ErrorTracking, OnboardingUtils, StringUtils, KeyboardManager, ObjectUtils, ArrayUtils, SearchUtils } from "@sankhyalabs/core";
1
+ import { LockManager, ApplicationContext, DataType, DependencyType, ElementIDUtils, ErrorTracking, OnboardingUtils, StringUtils, KeyboardManager, ObjectUtils, ArrayUtils, SearchUtils, LockManagerOperation, UserAgentUtils } from "@sankhyalabs/core";
2
2
  import { ApplicationUtils } from "@sankhyalabs/ezui/dist/collection/utils";
3
- import { h } from "@stencil/core";
3
+ import { Host, h } from "@stencil/core";
4
4
  import AppletCaller from "../../lib/applet-caller/applet-caller";
5
5
  import MGEAuthorization from '../../lib/auth/mgeauthorization.module';
6
6
  import { ConfigStorage } from '../../lib/configs/ConfigStorage';
@@ -15,6 +15,9 @@ import { SnkMessageBuilder } from "../../lib/message/SnkMessageBuilder";
15
15
  import UrlUtils from "../../lib/utils/urlutils";
16
16
  import Workspace from "../../lib/workspace/workspace";
17
17
  import { SnkErrorHandler } from "./errorhandler/snk-error-handler";
18
+ import RequestListenerFactory from "./request-listener/RequestListenerFactory";
19
+ import PreloadManager from "../../lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager";
20
+ import { TEMPLATES_SKELETON } from "../../lib/utils/constants";
18
21
  /**
19
22
  * É possível customizar as mensagens dos blocos de construção através de um pequeno modulo na estrutura da aplicação:
20
23
  * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
@@ -28,10 +31,16 @@ export class SnkApplication {
28
31
  this._waitingAppReady = new Array();
29
32
  this._duCache = new Map();
30
33
  this._duPromises = new Map();
31
- this._requestListener = new RequestListenerLoadingBar();
34
+ this._requestListener = RequestListenerFactory.create({ strategy: 'request_time' });
35
+ this._maxTimerAppLoading = 10000;
36
+ this._isBrowserTypeElectron = false;
32
37
  this._pendingActions = new Map;
33
38
  this._loadPkParameter = null;
34
39
  this._isLoadedByPk = false;
40
+ this._applicationReady = false;
41
+ this._templateSkeleton = TEMPLATES_SKELETON.GRID;
42
+ this._activeScrimWindow = false;
43
+ this.enableLockManagerLoadingApp = undefined;
35
44
  this.messagesBuilder = undefined;
36
45
  this.configName = undefined;
37
46
  this.gridLegacyConfigName = undefined;
@@ -516,6 +525,30 @@ export class SnkApplication {
516
525
  async isLoadedByPk() {
517
526
  return Promise.resolve(this._isLoadedByPk);
518
527
  }
528
+ /**
529
+ * Remove registro do cache do PreLoader do dataunit.
530
+ * Deve ser usado quando existe um dataunit usando loader do application, mas o removeLoader está sendo sobrescrito.
531
+ */
532
+ async preloadMangerRemoveRecord(dataUnit, recordsIDs) {
533
+ const records = recordsIDs.map(id => {
534
+ return { "__record__id__": id };
535
+ });
536
+ PreloadManager.removeRecords(dataUnit, records);
537
+ }
538
+ getCountSkeleton(skeletonHeight, spacingSkeleton, headerHeight) {
539
+ headerHeight = headerHeight || 160;
540
+ const containerHeight = window.innerHeight - headerHeight;
541
+ const skeletonSpacing = spacingSkeleton || 10;
542
+ const totalHeightPerSkeleton = skeletonHeight + skeletonSpacing;
543
+ const skeletonCount = Math.floor(containerHeight / totalHeightPerSkeleton) - 1;
544
+ return skeletonCount || 1;
545
+ }
546
+ getSkeletonRandomWidth() {
547
+ const min = 30;
548
+ const max = 100;
549
+ const randomWidth = Math.floor(Math.random() * (max - min + 1)) + min;
550
+ return `${randomWidth}%`;
551
+ }
519
552
  async getAuthList(auth) {
520
553
  return await (new MGEAuthorization()).parseFromJSON(auth);
521
554
  }
@@ -557,14 +590,14 @@ export class SnkApplication {
557
590
  * Obtém as opções em componentes de pesquisa
558
591
  * Ex.: snk-config-options
559
592
  */
560
- async executeSearch(searchArgument, fieldName, dataUnit) {
593
+ async executeSearch(searchArgument, fieldName, dataUnit, ctxOptions) {
561
594
  const descriptor = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.getField(fieldName);
562
595
  if (!descriptor) {
563
596
  //TODO: Implementar mensagem de erro
564
597
  }
565
598
  else {
566
599
  const { mode, argument } = searchArgument;
567
- const { ENTITYNAME, CODEFIELD, DESCRIPTIONFIELD, ROOTENTITY, DESCRIPTIONENTITY } = descriptor.properties;
600
+ const { ENTITYNAME, CODEFIELD, DESCRIPTIONFIELD, ROOTENTITY, DESCRIPTIONENTITY, ISHIERARCHYENTITY } = descriptor.properties;
568
601
  const dependencies = descriptor.dependencies;
569
602
  let criteria;
570
603
  const searchOptions = {
@@ -594,7 +627,16 @@ export class SnkApplication {
594
627
  }
595
628
  }
596
629
  });
597
- return this.executePreparedSearch(mode, argument, { entity: ENTITYNAME, entityDescription: DESCRIPTIONENTITY, criteria, searchOptions });
630
+ const allowsNonAnalytic = ctxOptions === null || ctxOptions === void 0 ? void 0 : ctxOptions.allowsNonAnalytic;
631
+ const options = {
632
+ entity: ENTITYNAME,
633
+ entityDescription: DESCRIPTIONENTITY,
634
+ isHierarchyEntity: ISHIERARCHYENTITY,
635
+ criteria,
636
+ searchOptions,
637
+ allowsNonAnalytic
638
+ };
639
+ return this.executePreparedSearch(mode, argument, options);
598
640
  }
599
641
  }
600
642
  filterInvalidFields(resp, item, mdByName) {
@@ -644,13 +686,19 @@ export class SnkApplication {
644
686
  */
645
687
  async executePreparedSearch(mode, argument, options) {
646
688
  const mdByName = {};
647
- const { entity, entityDescription, criteria, searchOptions } = options;
689
+ const { entity, entityDescription, criteria, searchOptions, isHierarchyEntity, allowsNonAnalytic } = options;
648
690
  if (mode === "ADVANCED") {
649
691
  return new Promise((accept, reject) => {
650
692
  const pesquisaContent = document.createElement("snk-pesquisa");
651
693
  pesquisaContent[ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME] = `entity_${entity}`;
694
+ pesquisaContent.entityName = entity;
652
695
  pesquisaContent.argument = argument;
653
696
  pesquisaContent.searchLoader = (text) => this.pesquisaFetcher.loadAdvancedSearch(entity, text, criteria, searchOptions);
697
+ pesquisaContent.isHierarchyEntity = isHierarchyEntity;
698
+ if (isHierarchyEntity) {
699
+ pesquisaContent.treeLoader = (text) => this.pesquisaFetcher.loadTree(entity, text, criteria, searchOptions);
700
+ pesquisaContent.allowsNonAnalytic = allowsNonAnalytic;
701
+ }
654
702
  pesquisaContent.selectItem = (option) => {
655
703
  accept(option);
656
704
  this.clearPopUpTitle();
@@ -958,8 +1006,8 @@ export class SnkApplication {
958
1006
  this._errorHandler = new SnkErrorHandler(this);
959
1007
  this.messagesBuilder = new SnkMessageBuilder();
960
1008
  ApplicationContext.setContextValue("__EZUI__UPLOAD__ADD__URL__", `${UrlUtils.getUrlBase()}/mge/upload/file`);
961
- ApplicationContext.setContextValue("__EZUI__SEARCH__OPTION__LOADER__", (searchArgument, fieldName, dataUnit) => {
962
- return this.executeSearch(searchArgument, fieldName, dataUnit);
1009
+ ApplicationContext.setContextValue("__EZUI__SEARCH__OPTION__LOADER__", (searchArgument, fieldName, dataUnit, ctxOptions) => {
1010
+ return this.executeSearch(searchArgument, fieldName, dataUnit, ctxOptions);
963
1011
  });
964
1012
  ApplicationContext.setContextValue("__EZUI__GRID_LICENSE__", agGridLicense);
965
1013
  this.registerPkChangeListener();
@@ -973,12 +1021,17 @@ export class SnkApplication {
973
1021
  this._waitingAppReady.forEach(resolve => resolve());
974
1022
  }
975
1023
  connectedCallback() {
1024
+ this._isBrowserTypeElectron = UserAgentUtils.isElectron();
976
1025
  ApplicationContext.setContextValue("__SNK__APPLICATION__", this);
977
1026
  DataFetcher.addRequestListener(this._requestListener);
978
1027
  }
979
1028
  disconnectedCallback() {
980
- DataFetcher.removeRequestListener(this._requestListener);
1029
+ DataFetcher === null || DataFetcher === void 0 ? void 0 : DataFetcher.removeRequestListener(this._requestListener);
981
1030
  this.removeShortcuts();
1031
+ if (this._lockManagerTimer)
1032
+ clearTimeout(this._lockManagerTimer);
1033
+ if (this._scrimWindowTimer)
1034
+ clearTimeout(this._scrimWindowTimer);
982
1035
  }
983
1036
  async componentDidLoad() {
984
1037
  this.applicationLoading.emit(true);
@@ -990,6 +1043,85 @@ export class SnkApplication {
990
1043
  ElementIDUtils.addIDInfo(this._element, `resource_${this.applicationResourceID}`);
991
1044
  await this.handleShowNewVersionPopup();
992
1045
  this.initKeyboardManager();
1046
+ if (this.enableLockManagerLoadingApp) {
1047
+ LockManager.addLockManagerCtxId(this._element);
1048
+ this.resolveApplicationReady();
1049
+ }
1050
+ else {
1051
+ this._applicationReady = true;
1052
+ }
1053
+ }
1054
+ async showScrimApp(active) {
1055
+ if (!this.enableLockManagerLoadingApp || !this._applicationReady || !active) {
1056
+ this._activeScrimWindow = false;
1057
+ if (this._scrimWindowTimer)
1058
+ clearTimeout(this._scrimWindowTimer);
1059
+ return;
1060
+ }
1061
+ this._activeScrimWindow = true;
1062
+ this._scrimWindowTimer = setTimeout(async () => {
1063
+ if (this._activeScrimWindow) {
1064
+ this._activeScrimWindow = false;
1065
+ clearTimeout(this._scrimWindowTimer);
1066
+ }
1067
+ }, this._maxTimerAppLoading);
1068
+ }
1069
+ async changeTemplateSkeleton(templateSkeletonType) {
1070
+ this._templateSkeleton = templateSkeletonType ? templateSkeletonType : this._templateSkeleton;
1071
+ }
1072
+ async markToReload(templateSkeletonType) {
1073
+ if (!this.enableLockManagerLoadingApp)
1074
+ return;
1075
+ await this.changeTemplateSkeleton(templateSkeletonType);
1076
+ this._applicationReady = false;
1077
+ await LockManager.resetLocks(this._element, LockManagerOperation.APP_LOADING);
1078
+ this.resolveApplicationReady();
1079
+ }
1080
+ async addLoadingLock(forceReady = false, templateSkeletonType) {
1081
+ if (!this.enableLockManagerLoadingApp)
1082
+ return;
1083
+ await this.changeTemplateSkeleton(templateSkeletonType);
1084
+ if (forceReady) {
1085
+ this._applicationReady = false;
1086
+ this._activeScrimWindow = this._applicationReady ? true : false;
1087
+ await LockManager.resetLocks(this._element, LockManagerOperation.APP_LOADING);
1088
+ }
1089
+ this.resolveApplicationReady();
1090
+ return await LockManager.lock(this._element, LockManagerOperation.APP_LOADING);
1091
+ }
1092
+ async resolveApplicationReady() {
1093
+ if (this._applicationReady) {
1094
+ return;
1095
+ }
1096
+ ;
1097
+ try {
1098
+ await this.checkTimeoutLimitLockManager();
1099
+ await LockManager.whenHasLock(this._element, LockManagerOperation.APP_LOADING);
1100
+ await LockManager.whenResolve(this._element, LockManagerOperation.APP_LOADING, 200);
1101
+ await LockManager.resetLocks(this._element, LockManagerOperation.APP_LOADING);
1102
+ this._applicationReady = true;
1103
+ }
1104
+ catch (error) {
1105
+ console.warn(error);
1106
+ this._applicationReady = true;
1107
+ }
1108
+ }
1109
+ stopTimeoutLockManager() {
1110
+ if (this._lockManagerTimer) {
1111
+ clearTimeout(this._lockManagerTimer);
1112
+ }
1113
+ }
1114
+ async checkTimeoutLimitLockManager() {
1115
+ this.stopTimeoutLockManager();
1116
+ if (this._applicationReady)
1117
+ return;
1118
+ this._lockManagerTimer = setTimeout(async () => {
1119
+ if (!this._applicationReady) {
1120
+ await LockManager.resetLocks(this._element, LockManagerOperation.APP_LOADING);
1121
+ this.stopTimeoutLockManager();
1122
+ this._applicationReady = true;
1123
+ }
1124
+ }, this._maxTimerAppLoading);
993
1125
  }
994
1126
  initKeyboardManager() {
995
1127
  this._keyboardManager
@@ -1003,8 +1135,54 @@ export class SnkApplication {
1003
1135
  .unbind("ctrl + d")
1004
1136
  .unbind("F1");
1005
1137
  }
1138
+ renderLoadingSkeleton() {
1139
+ if (!this.enableLockManagerLoadingApp)
1140
+ return;
1141
+ if (this._isBrowserTypeElectron) {
1142
+ return this.getSpinnerLoadingDefault();
1143
+ }
1144
+ else {
1145
+ switch (this._templateSkeleton) {
1146
+ case TEMPLATES_SKELETON.CUSTOM_TEMPLATE:
1147
+ case TEMPLATES_SKELETON.GRID:
1148
+ return this.getSkeletonTemplateGrid();
1149
+ case TEMPLATES_SKELETON.GRID_WITH_SIDEBAR:
1150
+ return this.getSkeletonTemplateGridWithSidebar();
1151
+ case TEMPLATES_SKELETON.GRID_WITH_PANEL:
1152
+ return this.getSkeletonTemplateGridWithPanel();
1153
+ case TEMPLATES_SKELETON.FORM_WITH_SIDEBAR:
1154
+ return this.getSkeletonTemplateFormWithSidebar();
1155
+ default:
1156
+ return this.getSkeletonTemplateGrid();
1157
+ }
1158
+ }
1159
+ }
1160
+ getLoadingVisibilityStyle() {
1161
+ return {
1162
+ visibility: this._applicationReady ? "hidden" : "initial",
1163
+ display: this._applicationReady ? "none" : "unset"
1164
+ };
1165
+ }
1166
+ getSkeletonTemplateGrid() {
1167
+ return (h("div", { class: "loading-hidden", style: this.getLoadingVisibilityStyle() }, h("div", { class: "ez-flex ez-flex--column ez-margin--large ez-margin-top--medium" }, h("div", { class: "ez-margin-bottom--medium" }, h("ez-skeleton", { count: 1, variant: "rect", width: "20%", height: "35px", animation: "progress" })), h("div", { class: "" }, h("ez-skeleton", { count: 1, variant: "rect", width: "70%", height: "25px", animation: "progress" }))), h("div", { class: "ez-flex ez-flex--justify-start skeleton-content-column ez-margin-horizontal--large", style: { height: "calc(-105px + 100vh)" } }, [1, 2, 3, 4].map((_, index) => (h("div", { class: "ez-margin-right--large", key: index, style: { width: "25%" } }, h("ez-skeleton", { count: this.getCountSkeleton(50, 10), variant: "rect", width: "100%", height: "50px", animation: "progress", marginBottom: "10px" })))))));
1168
+ }
1169
+ getSkeletonTemplateGridWithSidebar() {
1170
+ return (h("div", { class: "loading-hidden", style: this.getLoadingVisibilityStyle() }, h("div", { class: "ez-flex ez-flex--column ez-margin--large ez-margin-top--medium" }, h("div", { class: "ez-margin-bottom--medium" }, h("ez-skeleton", { count: 1, variant: "rect", width: "20%", height: "35px", animation: "progress" })), h("div", { class: "" }, h("ez-skeleton", { count: 1, variant: "rect", width: "70%", height: "25px", animation: "progress" }))), h("div", { class: "ez-flex ez-flex--justify-start skeleton-content-column ez-margin-horizontal--large", style: { height: "calc(100vh - 160px)" } }, h("div", { class: "ez-flex ez-flex--column ez-margin-right--large", style: { width: "25%", overflow: "hidden" } }, Array(this.getCountSkeleton(30, 6)).fill(null).map((_, index) => h("ez-skeleton", { key: index, count: 1, variant: "rect", width: this.getSkeletonRandomWidth(), height: "30px", animation: "progress", marginBottom: "10px" }))), h("div", { class: "ez-margin-right--large", style: { width: "75%" } }, h("ez-skeleton", { count: this.getCountSkeleton(50, 10), variant: "rect", width: "100%", height: "50px", animation: "progress", marginBottom: "10px" })))));
1171
+ }
1172
+ getSkeletonTemplateGridWithPanel() {
1173
+ return (h("div", { class: "loading-hidden", style: this.getLoadingVisibilityStyle() }, h("div", { class: "ez-margin--medium ez-margin-top--medium ez-padding--medium" }, h("ez-skeleton", { count: 1, variant: "rect", width: "70%", height: "25px", animation: "progress" })), h("div", { class: "ez-flex ez-margin--medium ez-margin-top--medium", style: { maxHeight: "calc(-105px + 100vh)", overflow: "hidden" } }, h("div", { class: "", style: { width: "70%", overflow: "hidden" } }, h("div", { class: "ez-padding--medium", style: { height: "50%" } }, h("ez-skeleton", { count: 1, variant: "rect", width: "100%", height: "100%", animation: "progress" })), h("div", { class: "ez-padding--medium", style: {} }, h("ez-skeleton", { count: 1, variant: "rect", width: "250px", height: "25px", animation: "progress" })), h("div", { class: "ez-flex ez-padding--medium", style: { height: "45%" } }, [1, 2].map(() => (h("div", { style: { width: "50%" } }, h("ez-skeleton", { count: 1, variant: "rect", width: "100%", height: "100%", animation: "progress" })))))), h("div", { class: "ez-flex ez-flex--column ez-padding--medium", style: { width: "30%", overflow: "hidden" } }, Array(this.getCountSkeleton(30, 10)).fill(null).map((_, index) => h("ez-skeleton", { key: index, count: 1, variant: "rect", width: "100%", height: "50px", animation: "progress", marginBottom: "10px" }))))));
1174
+ }
1175
+ getSkeletonTemplateFormWithSidebar() {
1176
+ return (h("div", { class: "loading-hidden", style: this.getLoadingVisibilityStyle() }, h("div", { class: "ez-margin--medium ez-margin-top--medium ez-padding--medium" }, h("ez-skeleton", { count: 1, variant: "rect", width: "70%", height: "25px", animation: "progress" })), h("div", { class: "ez-flex ez-margin--medium ez-margin-top--medium", style: { maxHeight: "calc(-105px + 100vh)", overflow: "hidden" } }, h("div", { class: "ez-flex ez-flex--column ez-margin-right--large", style: { width: "25%", overflow: "hidden" } }, Array(this.getCountSkeleton(30, 6)).fill(null).map((_, index) => h("ez-skeleton", { key: index, count: 1, variant: "rect", width: this.getSkeletonRandomWidth(), height: "30px", animation: "progress", marginBottom: "10px" }))), h("div", { class: "ez-flex ez-flex--column", style: { width: "75%" } }, h("div", { class: "ez-padding--medium", style: { width: "100%" } }, h("ez-skeleton", { count: 1, variant: "rect", width: "30%", height: "25px", animation: "progress" })), h("div", { class: "ez-padding--medium", style: { height: "45%" } }, h("div", { class: "ez-flex", style: { width: "100%", height: "100%" } }, [1, 2, 3, 4].map((_, columnIndex) => (h("div", { key: columnIndex, class: "ez-padding-right--large", style: { width: "25%", overflow: "hidden" } }, Array(this.getCountSkeleton(50, 20)).fill(null).map((_, index) => h("ez-skeleton", { key: index, count: 1, variant: "rect", width: "100%", height: "50px", animation: "progress", marginBottom: "10px" }))))))), h("div", { class: "ez-padding--medium", style: { width: "100%" } }, h("ez-skeleton", { count: 1, variant: "rect", width: "30%", height: "25px", animation: "progress" })), h("div", { class: "ez-padding--medium", style: { height: "45%" } }, h("div", { class: "ez-flex", style: { width: "100%", height: "100%" } }, [1, 2, 3, 4].map((_, columnIndex) => (h("div", { key: columnIndex, class: "ez-padding-right--large", style: { width: "25%", overflow: "hidden" } }, Array(this.getCountSkeleton(50, 20)).fill(null).map((_, index) => h("ez-skeleton", { key: index, count: 1, variant: "rect", width: "100%", height: "50px", animation: "progress", marginBottom: "10px" })))))))))));
1177
+ }
1178
+ getSpinnerLoadingDefault() {
1179
+ return (h("div", { class: "loading-hidden", style: this.getLoadingVisibilityStyle() }, h("div", { class: "ez-flex ez-size-height--full ez-size-width--full ez-flex--justify-center ez-flex--align-items-center spinner" }, h("ez-icon", { iconName: "sync", size: "x-large", class: "spin" }), h("span", { class: "ez-title ez-title--secondary ez-title--extra-large" }, "Carregando..."))));
1180
+ }
1006
1181
  render() {
1007
- return (h("div", null, h("ez-loading-bar", { ref: (ref) => this._requestListener.loadingBar = ref }), h("ez-popup", { opened: false, ref: (ref) => this._popUp = ref, onEzClosePopup: () => this.closePopUp() }), h("ez-modal", { opened: false, ref: (ref) => this._rightModal = ref, "modal-size": "small", closeOutsideClick: true, closeEsc: true })));
1182
+ return (h(Host, { style: {
1183
+ visibility: (!this.enableLockManagerLoadingApp || this._applicationReady) ? "unset" : "hidden",
1184
+ overflow: (!this.enableLockManagerLoadingApp || this._applicationReady) ? "unset" : "hidden"
1185
+ } }, h("div", null, h("ez-loading-bar", { ref: (ref) => this._requestListener.ezLoadingBar = ref }), h("ez-popup", { opened: false, ref: (ref) => this._popUp = ref, onEzClosePopup: () => this.closePopUp() }), h("ez-modal", { opened: false, ref: (ref) => this._rightModal = ref, "modal-size": "small", closeOutsideClick: true, closeEsc: true }), this.renderLoadingSkeleton(), this._activeScrimWindow && (h("div", { class: "ez-scrim ez-scrim--light", style: { cursor: "progress", zIndex: "var(--scrim-z-index)" } })))));
1008
1186
  }
1009
1187
  static get is() { return "snk-application"; }
1010
1188
  static get encapsulation() { return "scoped"; }
@@ -1020,6 +1198,23 @@ export class SnkApplication {
1020
1198
  }
1021
1199
  static get properties() {
1022
1200
  return {
1201
+ "enableLockManagerLoadingApp": {
1202
+ "type": "boolean",
1203
+ "mutable": false,
1204
+ "complexType": {
1205
+ "original": "boolean",
1206
+ "resolved": "boolean",
1207
+ "references": {}
1208
+ },
1209
+ "required": false,
1210
+ "optional": false,
1211
+ "docs": {
1212
+ "tags": [],
1213
+ "text": "Define se o componente deve usar o LockManager para controle de carregamento da aplica\u00E7\u00E3o"
1214
+ },
1215
+ "attribute": "enable-lock-manager-loading-app",
1216
+ "reflect": false
1217
+ },
1023
1218
  "messagesBuilder": {
1024
1219
  "type": "unknown",
1025
1220
  "mutable": true,
@@ -1096,7 +1291,7 @@ export class SnkApplication {
1096
1291
  "mutable": false,
1097
1292
  "complexType": {
1098
1293
  "original": "LoadByPkHandler",
1099
- "resolved": "(objPK: { pk: Record<string, any>; }, redirectFrom?: string) => void",
1294
+ "resolved": "(objPK: { pk: any; }, redirectFrom?: string) => void",
1100
1295
  "references": {
1101
1296
  "LoadByPkHandler": {
1102
1297
  "location": "global"
@@ -1112,6 +1307,13 @@ export class SnkApplication {
1112
1307
  }
1113
1308
  };
1114
1309
  }
1310
+ static get states() {
1311
+ return {
1312
+ "_applicationReady": {},
1313
+ "_templateSkeleton": {},
1314
+ "_activeScrimWindow": {}
1315
+ };
1316
+ }
1115
1317
  static get events() {
1116
1318
  return [{
1117
1319
  "method": "applicationLoaded",
@@ -2200,9 +2402,38 @@ export class SnkApplication {
2200
2402
  }]
2201
2403
  }
2202
2404
  },
2405
+ "preloadMangerRemoveRecord": {
2406
+ "complexType": {
2407
+ "signature": "(dataUnit: DataUnit, recordsIDs: Array<string>) => Promise<void>",
2408
+ "parameters": [{
2409
+ "tags": [],
2410
+ "text": ""
2411
+ }, {
2412
+ "tags": [],
2413
+ "text": ""
2414
+ }],
2415
+ "references": {
2416
+ "Promise": {
2417
+ "location": "global"
2418
+ },
2419
+ "DataUnit": {
2420
+ "location": "import",
2421
+ "path": "@sankhyalabs/core"
2422
+ },
2423
+ "Array": {
2424
+ "location": "global"
2425
+ }
2426
+ },
2427
+ "return": "Promise<void>"
2428
+ },
2429
+ "docs": {
2430
+ "text": "Remove registro do cache do PreLoader do dataunit.\nDeve ser usado quando existe um dataunit usando loader do application, mas o removeLoader est\u00E1 sendo sobrescrito.",
2431
+ "tags": []
2432
+ }
2433
+ },
2203
2434
  "executeSearch": {
2204
2435
  "complexType": {
2205
- "signature": "(searchArgument: ISearchArgument, fieldName: string, dataUnit: DataUnit) => Promise<Array<IOption> | IOption>",
2436
+ "signature": "(searchArgument: ISearchArgument, fieldName: string, dataUnit: DataUnit, ctxOptions?: any) => Promise<Array<IOption> | IOption>",
2206
2437
  "parameters": [{
2207
2438
  "tags": [],
2208
2439
  "text": ""
@@ -2212,6 +2443,9 @@ export class SnkApplication {
2212
2443
  }, {
2213
2444
  "tags": [],
2214
2445
  "text": ""
2446
+ }, {
2447
+ "tags": [],
2448
+ "text": ""
2215
2449
  }],
2216
2450
  "references": {
2217
2451
  "Promise": {
@@ -2502,6 +2736,74 @@ export class SnkApplication {
2502
2736
  "text": "value - String convers\u00EDvel de acordo com o tipo do par\u00E2metro"
2503
2737
  }]
2504
2738
  }
2739
+ },
2740
+ "showScrimApp": {
2741
+ "complexType": {
2742
+ "signature": "(active: boolean) => Promise<void>",
2743
+ "parameters": [{
2744
+ "tags": [],
2745
+ "text": ""
2746
+ }],
2747
+ "references": {
2748
+ "Promise": {
2749
+ "location": "global"
2750
+ }
2751
+ },
2752
+ "return": "Promise<void>"
2753
+ },
2754
+ "docs": {
2755
+ "text": "",
2756
+ "tags": []
2757
+ }
2758
+ },
2759
+ "markToReload": {
2760
+ "complexType": {
2761
+ "signature": "(templateSkeletonType?: TEMPLATES_SKELETON) => Promise<void>",
2762
+ "parameters": [{
2763
+ "tags": [],
2764
+ "text": ""
2765
+ }],
2766
+ "references": {
2767
+ "Promise": {
2768
+ "location": "global"
2769
+ },
2770
+ "TEMPLATES_SKELETON": {
2771
+ "location": "import",
2772
+ "path": "../../lib/utils/constants"
2773
+ }
2774
+ },
2775
+ "return": "Promise<void>"
2776
+ },
2777
+ "docs": {
2778
+ "text": "",
2779
+ "tags": []
2780
+ }
2781
+ },
2782
+ "addLoadingLock": {
2783
+ "complexType": {
2784
+ "signature": "(forceReady?: boolean, templateSkeletonType?: TEMPLATES_SKELETON) => Promise<() => void>",
2785
+ "parameters": [{
2786
+ "tags": [],
2787
+ "text": ""
2788
+ }, {
2789
+ "tags": [],
2790
+ "text": ""
2791
+ }],
2792
+ "references": {
2793
+ "Promise": {
2794
+ "location": "global"
2795
+ },
2796
+ "TEMPLATES_SKELETON": {
2797
+ "location": "import",
2798
+ "path": "../../lib/utils/constants"
2799
+ }
2800
+ },
2801
+ "return": "Promise<() => void>"
2802
+ },
2803
+ "docs": {
2804
+ "text": "",
2805
+ "tags": []
2806
+ }
2505
2807
  }
2506
2808
  };
2507
2809
  }
@@ -2513,57 +2815,6 @@ export class SnkApplication {
2513
2815
  }];
2514
2816
  }
2515
2817
  }
2516
- class RequestListenerLoadingBar {
2517
- constructor() {
2518
- this._debounceTime = 1000;
2519
- this._ignoredNameTypes = ["totals"];
2520
- this._countRequest = 0;
2521
- }
2522
- onRequestStart(param) {
2523
- if (this.isIgnoreLoadingOnRequest(param)) {
2524
- return;
2525
- }
2526
- this._countRequest++;
2527
- this.loadingBar.show();
2528
- if (this._timerLoading) {
2529
- clearTimeout(this._timerLoading);
2530
- }
2531
- }
2532
- ;
2533
- onRequestEnd(param) {
2534
- if (this.isIgnoreLoadingOnRequest(param)) {
2535
- return;
2536
- }
2537
- this._countRequest--;
2538
- this._timerLoading = setTimeout(() => {
2539
- if (this._countRequest <= 0) {
2540
- this.loadingBar.hide();
2541
- }
2542
- }, this._debounceTime);
2543
- }
2544
- ;
2545
- isIgnoreLoadingOnRequest(param) {
2546
- if (param == undefined) {
2547
- return false;
2548
- }
2549
- if (param.url.includes("quietMode=true")) {
2550
- return true;
2551
- }
2552
- if (param.requestBody == undefined) {
2553
- return false;
2554
- }
2555
- if (param.requestBody.length == 1) {
2556
- const { name } = param.requestBody[0].variables;
2557
- if (name) {
2558
- const nameParts = name.split(":");
2559
- const nameType = nameParts[0];
2560
- return this._ignoredNameTypes.indexOf(nameType) >= 0;
2561
- }
2562
- }
2563
- return false;
2564
- }
2565
- ;
2566
- }
2567
2818
  class PendingPromise {
2568
2819
  constructor(resolve, reject) {
2569
2820
  this.resolve = resolve;
@@ -46,11 +46,20 @@ export class SnkAttach {
46
46
  this.loadAttachmentDataUnit();
47
47
  }
48
48
  if (oldRegisterKey !== newRegisterKey) {
49
+ if (this._currentFetcher instanceof AnexoSistemaFetcher) {
50
+ this._currentFetcher.registerKey = newRegisterKey;
51
+ }
49
52
  await ((_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.loadData());
50
53
  }
51
54
  }
55
+ getAnexoSistemaFetcherInstance() {
56
+ var _a;
57
+ const anexoSistemaFetcher = new AnexoSistemaFetcher(this.entityName, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
58
+ anexoSistemaFetcher.registerKey = this.registerKey;
59
+ return anexoSistemaFetcher;
60
+ }
52
61
  async initAttach() {
53
- var _a, _b, _c, _d, _e, _f;
62
+ var _a, _b, _c, _d, _e;
54
63
  if (!this.fetcherType && !this.registerKey)
55
64
  return;
56
65
  if (!this.fetcherType) {
@@ -58,18 +67,18 @@ export class SnkAttach {
58
67
  }
59
68
  this.returnToGridMode();
60
69
  if (this.fetcherType === "AnexoSistema") {
61
- this._currentFetcher = new AnexoSistemaFetcher(this.entityName, this.registerKey, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
62
- (_b = this._currentDataUnitBuilder) === null || _b === void 0 ? void 0 : _b.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
63
- await ((_c = this._currentDataUnit) === null || _c === void 0 ? void 0 : _c.loadData());
70
+ this._currentFetcher = this.getAnexoSistemaFetcherInstance();
71
+ (_a = this._currentDataUnitBuilder) === null || _a === void 0 ? void 0 : _a.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
72
+ await ((_b = this._currentDataUnit) === null || _b === void 0 ? void 0 : _b.loadData());
64
73
  return;
65
74
  }
66
75
  if (this.fetcherType === "Attach") {
67
- const hasMoreOneItem = ((_d = this.registerKey) === null || _d === void 0 ? void 0 : _d.split("_").length) > 1;
76
+ const hasMoreOneItem = ((_c = this.registerKey) === null || _c === void 0 ? void 0 : _c.split("_").length) > 1;
68
77
  if (hasMoreOneItem)
69
78
  return;
70
79
  }
71
- await ((_e = this._currentDataUnit) === null || _e === void 0 ? void 0 : _e.loadMetadata());
72
- await ((_f = this._currentDataUnit) === null || _f === void 0 ? void 0 : _f.loadData(undefined, undefined, true, this.registerKey));
80
+ await ((_d = this._currentDataUnit) === null || _d === void 0 ? void 0 : _d.loadMetadata());
81
+ await ((_e = this._currentDataUnit) === null || _e === void 0 ? void 0 : _e.loadData(undefined, undefined, true, this.registerKey));
73
82
  }
74
83
  /**
75
84
  * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
@@ -128,11 +137,11 @@ export class SnkAttach {
128
137
  }
129
138
  }
130
139
  async loadAnexoSistema() {
131
- var _a, _b, _c;
140
+ var _a, _b;
132
141
  this._currentDataUnit = new DataUnitFetcher().getDataUnit(RESOURCE_ID, DATA_UNIT_NAME);
133
- this._currentFetcher = new AnexoSistemaFetcher(this.entityName, this.registerKey, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
142
+ this._currentFetcher = this.getAnexoSistemaFetcherInstance();
134
143
  if (!this._currentDataUnit.metadata) {
135
- await ((_b = this._currentDataUnit) === null || _b === void 0 ? void 0 : _b.loadMetadata());
144
+ await ((_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.loadMetadata());
136
145
  this.crudConfig = Object.assign({}, anexoSistemaCrudConfig);
137
146
  }
138
147
  this.initDataUnitLoaders();
@@ -142,7 +151,7 @@ export class SnkAttach {
142
151
  this._currentDataUnit.addInterceptor({
143
152
  interceptAction: (action) => this._currentDataUnitBuilder.getInterceptions(this._currentDataUnit, action, this._crudElement)
144
153
  });
145
- await ((_c = this._currentDataUnit) === null || _c === void 0 ? void 0 : _c.loadData());
154
+ await ((_b = this._currentDataUnit) === null || _b === void 0 ? void 0 : _b.loadData());
146
155
  this.disableEditFieldsNotInForm();
147
156
  }
148
157
  async loadAttach() {
@@ -168,16 +177,16 @@ export class SnkAttach {
168
177
  }
169
178
  }
170
179
  initDataUnitLoaders() {
171
- var _a, _b, _c;
180
+ var _a, _b;
172
181
  if (this.fetcherType === "AnexoSistema") {
173
- this._currentFetcher = new AnexoSistemaFetcher(this.entityName, this.registerKey, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
182
+ this._currentFetcher = this.getAnexoSistemaFetcherInstance();
174
183
  this._currentDataUnitBuilder = new AnexoSistemaDataUnitFactory(this.entityName, this.getMessage.bind(this));
175
- (_b = this._currentDataUnitBuilder) === null || _b === void 0 ? void 0 : _b.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
184
+ (_a = this._currentDataUnitBuilder) === null || _a === void 0 ? void 0 : _a.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
176
185
  }
177
186
  if (this.fetcherType === "Attach") {
178
187
  this._currentFetcher = new AttachFetcher();
179
188
  this._currentDataUnitBuilder = new AttachFetcherDataUnitFactory(this.getMessage.bind(this));
180
- (_c = this._currentDataUnitBuilder) === null || _c === void 0 ? void 0 : _c.initLoaders(this._currentDataUnit, this._currentFetcher, async () => {
189
+ (_b = this._currentDataUnitBuilder) === null || _b === void 0 ? void 0 : _b.initLoaders(this._currentDataUnit, this._currentFetcher, async () => {
181
190
  this.returnToGridMode();
182
191
  await this._currentDataUnit.loadData(undefined, undefined, true, this.registerKey);
183
192
  });
@@ -221,7 +230,7 @@ export class SnkAttach {
221
230
  var _a, _b;
222
231
  if (!this._currentDataUnit)
223
232
  return null;
224
- return (h("main", { class: "snk-attach__main" }, h("header", { class: "snk-attach__header" }, h("snk-simple-bar", { onExit: this.handleBack, messagesBuilder: this.messagesBuilder }, h("div", { slot: "rightSlot" }, h("ez-button", { class: "ez-button--primary", label: this.getMessage("snkAttach.finish"), onClick: this.handleFinish })))), h("div", { class: "snk-attach__crud-section ez-size-height--full ez-size-width--full ez-flex ez-flex--column" }, h("div", { class: "ez-box__container" }, h("snk-simple-crud", { ref: (el) => this._crudElement = el, dataUnit: this._currentDataUnit, taskbarManager: buildTaskBarManager(), gridConfig: (_a = this.crudConfig) === null || _a === void 0 ? void 0 : _a.grid, formConfig: (_b = this.crudConfig) === null || _b === void 0 ? void 0 : _b.form, useCancelConfirm: false, onActionClick: this.handleTaskbarClick, messagesBuilder: this.messagesBuilder, onDataStateChange: this.handleOnDataStateChange.bind(this) }, h("div", { slot: "snkSimpleCrudHeader" }, h("div", { class: "ez-flex ez-flex--column" }, h("span", { class: "ez-title--primary ez-text ez-text--large ez-text--bold ez-padding-bottom--medium" }, this.getMessage("snkAttach.title")), h("span", { class: "ez-text ez-text--medium ez-text--secondary" }, this.getMessage("snkAttach.description")))))))));
233
+ return (h("main", { class: "snk-attach__main" }, h("header", { class: "snk-attach__header" }, h("snk-simple-bar", { onExit: this.handleBack, messagesBuilder: this.messagesBuilder }, h("div", { slot: "rightSlot" }, h("ez-button", { class: "ez-button--primary", label: this.getMessage("snkAttach.finish"), onClick: this.handleFinish })))), h("div", { class: "snk-attach__crud-section ez-size-height--full ez-size-width--full ez-flex ez-flex--column" }, h("div", { class: "ez-box__container" }, h("snk-simple-crud", { ref: (el) => this._crudElement = el, dataUnit: this._currentDataUnit, taskbarManager: buildTaskBarManager(), gridConfig: (_a = this.crudConfig) === null || _a === void 0 ? void 0 : _a.grid, formConfig: (_b = this.crudConfig) === null || _b === void 0 ? void 0 : _b.form, useCancelConfirm: false, onActionClick: this.handleTaskbarClick, messagesBuilder: this.messagesBuilder, onDataStateChange: this.handleOnDataStateChange.bind(this) }, h("div", { slot: "snkSimpleCrudHeader" }, h("div", { class: "ez-flex ez-flex--column" }, h("span", { class: "ez-title--primary ez-text ez-text--large ez-text--bold ez-padding-bottom--medium" }, this.getMessage("snkAttach.title")), h("span", { class: "ez-text ez-text--medium ez-text--secondary ez-padding-bottom--medium" }, this.getMessage("snkAttach.description")))))))));
225
234
  }
226
235
  static get is() { return "snk-attach"; }
227
236
  static get encapsulation() { return "scoped"; }
@@ -25,14 +25,18 @@ export const buildTaskBarManager = () => {
25
25
  ];
26
26
  return {
27
27
  getButtons: (_, dataState, currentButtons) => {
28
- if ((dataState === null || dataState === void 0 ? void 0 : dataState.insertionMode) || (dataState === null || dataState === void 0 ? void 0 : dataState.isDirty))
28
+ const refreshBtnIndex = currentButtons.indexOf(TaskbarElement.REFRESH);
29
+ if ((dataState === null || dataState === void 0 ? void 0 : dataState.insertionMode) || (dataState === null || dataState === void 0 ? void 0 : dataState.isDirty)) {
29
30
  return currentButtons.reverse();
30
- else
31
- currentButtons.splice(currentButtons.indexOf(TaskbarElement.REFRESH), 1);
31
+ }
32
+ else if (refreshBtnIndex !== -1) {
33
+ currentButtons.splice(refreshBtnIndex, 1);
34
+ }
32
35
  const { selectedRecord } = dataState || {};
33
36
  const taskbarTobeAdded = !!(selectedRecord === null || selectedRecord === void 0 ? void 0 : selectedRecord.LINK) ? TaskbarAttachButtons.LINK : TaskbarAttachButtons.DOWNLOAD;
34
37
  currentButtons.splice(currentButtons.indexOf(TaskbarElement.DIVIDER) + 1, 0, TaskbarElement.REMOVE, taskbarTobeAdded, TaskbarElement.DIVIDER);
35
- const updatedButtons = Array.from(new Set(currentButtons.filter(button => button !== TaskbarElement.CLONE)));
38
+ const buttonsToRemove = [TaskbarElement.CLONE, TaskbarElement.DATA_EXPORTER];
39
+ const updatedButtons = Array.from(new Set(currentButtons.filter((button) => !buttonsToRemove.includes(button))));
36
40
  updatedButtons.splice(updatedButtons.indexOf(taskbarTobeAdded) + 1, 0, TaskbarElement.DIVIDER);
37
41
  return updatedButtons;
38
42
  },