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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. package/dist/cjs/{ConfigStorage-302bbbd4.js → ConfigStorage-942ce74b.js} +70 -7
  2. package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-313debd8.js} +18 -8
  3. package/dist/cjs/IExporterProvider-0c814e9a.js +230 -0
  4. package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
  5. package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
  6. package/dist/cjs/{SnkFormConfigManager-71c4768e.js → SnkFormConfigManager-52f99b4d.js} +23 -15
  7. package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-4a95fe86.js} +25 -13
  8. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-54f5ff9d.js} +1 -1
  9. package/dist/cjs/{dataunit-fetcher-14108bec.js → dataunit-fetcher-620b29a1.js} +409 -77
  10. package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-2dd00e5b.js} +13 -1
  11. package/dist/cjs/index-f9e81701.js +2 -10
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/{pesquisa-fetcher-ef050a47.js → pesquisa-fetcher-680e198f.js} +12 -13
  14. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  15. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +526 -8
  16. package/dist/cjs/snk-application.cjs.entry.js +88 -26
  17. package/dist/cjs/snk-attach.cjs.entry.js +441 -65
  18. package/dist/cjs/snk-configurator.cjs.entry.js +1 -1
  19. package/dist/cjs/snk-crud.cjs.entry.js +125 -28
  20. package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +6 -2
  21. package/dist/cjs/snk-data-exporter.cjs.entry.js +207 -83
  22. package/dist/cjs/snk-data-unit-eca53cfc.js +671 -0
  23. package/dist/cjs/snk-data-unit.cjs.entry.js +11 -2
  24. package/dist/cjs/snk-detail-view.cjs.entry.js +52 -13
  25. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  26. package/dist/cjs/snk-filter-bar.cjs.entry.js +65 -8
  27. package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -1
  28. package/dist/cjs/snk-filter-item.cjs.entry.js +13 -6
  29. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  30. package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -1
  31. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
  32. package/dist/cjs/snk-form-config.cjs.entry.js +47 -27
  33. package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
  34. package/dist/cjs/snk-form.cjs.entry.js +60 -8
  35. package/dist/cjs/snk-grid.cjs.entry.js +200 -122
  36. package/dist/cjs/{snk-guides-viewer-c8b9374f.js → snk-guides-viewer-5d5f0f25.js} +56 -20
  37. package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -10
  38. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  39. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  40. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  41. package/dist/cjs/snk-simple-crud.cjs.entry.js +512 -40
  42. package/dist/cjs/snk-taskbar.cjs.entry.js +164 -21
  43. package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-d9392685.js} +11 -11
  44. package/dist/collection/collection-manifest.json +8 -8
  45. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  46. package/dist/collection/components/snk-application/snk-application.js +148 -24
  47. package/dist/collection/components/snk-attach/snk-attach.js +231 -44
  48. package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
  49. package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
  50. package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
  51. package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
  52. package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
  53. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +118 -0
  54. package/dist/collection/components/snk-attach/structure/index.js +6 -3
  55. package/dist/collection/components/snk-configurator/snk-configurator.js +1 -1
  56. package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
  57. package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
  58. package/dist/collection/components/snk-crud/snk-crud.js +359 -19
  59. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +137 -2
  60. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
  61. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  62. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +163 -13
  63. package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.css +1 -1
  64. package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.js +22 -1
  65. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
  66. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
  67. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
  68. package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
  69. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
  70. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
  71. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +44 -50
  72. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
  73. package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
  74. package/dist/collection/components/snk-data-unit/snk-data-unit.js +501 -216
  75. package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
  76. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  77. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
  78. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  79. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +22 -1
  80. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +31 -6
  81. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +19 -1
  82. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +24 -1
  83. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +175 -3
  84. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
  85. package/dist/collection/components/snk-form/snk-form.js +126 -5
  86. package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +22 -14
  87. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
  88. package/dist/collection/components/snk-grid/snk-grid.js +360 -115
  89. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  90. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  91. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
  92. package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
  93. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +10 -2
  94. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +847 -23
  95. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +4 -2
  96. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -11
  97. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  98. package/dist/collection/components/snk-taskbar/snk-taskbar.js +218 -20
  99. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
  100. package/dist/collection/lib/configs/ConfigStorage.js +63 -3
  101. package/dist/collection/lib/dataUnit/InMemoryLoader.js +15 -42
  102. package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
  103. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +33 -0
  104. package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
  105. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +18 -8
  106. package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
  107. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
  108. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
  109. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
  110. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
  111. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
  112. package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
  113. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
  114. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
  115. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
  116. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +30 -2
  117. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
  118. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
  119. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +87 -24
  120. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
  121. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +12 -0
  122. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  123. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  124. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +12 -13
  125. package/dist/collection/lib/index.js +1 -1
  126. package/dist/collection/lib/message/SnkMessageBuilder.js +25 -32
  127. package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
  128. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
  129. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -0
  130. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +4 -0
  131. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  132. package/dist/components/ConfigStorage.js +68 -5
  133. package/dist/components/DataFetcher.js +18 -8
  134. package/dist/components/IExporterProvider.js +298 -0
  135. package/dist/components/ISave.js +42 -0
  136. package/dist/components/SnkFormConfigManager.js +21 -13
  137. package/dist/components/SnkMessageBuilder.js +25 -13
  138. package/dist/components/dataunit-fetcher.js +185 -241
  139. package/dist/components/form-config-fetcher.js +12 -0
  140. package/dist/components/index.d.ts +6 -6
  141. package/dist/components/index2.js +198 -33
  142. package/dist/{esm/pesquisa-fetcher-dd3ca0a5.js → components/pesquisa-fetcher.js} +13 -14
  143. package/dist/components/snk-actions-button2.js +4 -10
  144. package/dist/components/snk-application2.js +86 -20
  145. package/dist/components/snk-attach2.js +496 -72
  146. package/dist/components/snk-configurator2.js +1 -1
  147. package/dist/components/snk-crud.js +133 -23
  148. package/dist/components/snk-custom-slot-elements.js +7 -3
  149. package/dist/components/snk-data-exporter2.js +202 -83
  150. package/dist/components/snk-data-unit2.js +464 -214
  151. package/dist/components/snk-detail-view2.js +137 -23
  152. package/dist/components/snk-entity-list.js +5 -3
  153. package/dist/components/snk-expression-item2.js +1 -1
  154. package/dist/components/snk-filter-bar2.js +69 -6
  155. package/dist/components/snk-filter-detail2.js +5 -1
  156. package/dist/components/snk-filter-item2.js +14 -6
  157. package/dist/components/snk-filter-modal.js +4 -2
  158. package/dist/components/snk-filter-multi-select.js +2 -1
  159. package/dist/components/snk-form-config2.js +46 -26
  160. package/dist/components/snk-form-view2.js +72 -1
  161. package/dist/components/snk-form.js +60 -5
  162. package/dist/components/snk-grid-config2.js +128 -102
  163. package/dist/components/snk-grid2.js +209 -119
  164. package/dist/components/snk-personalized-filter-editor.js +3 -1
  165. package/dist/components/snk-personalized-filter2.js +1 -1
  166. package/dist/components/snk-pesquisa2.js +1 -1
  167. package/dist/components/snk-simple-crud2.js +574 -36
  168. package/dist/components/snk-taskbar2.js +186 -36
  169. package/dist/components/taskbar-actions-button2.js +4 -2
  170. package/dist/esm/{ConfigStorage-4151acc8.js → ConfigStorage-86187da3.js} +70 -7
  171. package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-c1baf61d.js} +18 -8
  172. package/dist/esm/IExporterProvider-c0194569.js +221 -0
  173. package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
  174. package/dist/esm/RecordIDUtils-87d02110.js +41 -0
  175. package/dist/esm/{SnkFormConfigManager-5c7d3771.js → SnkFormConfigManager-5b0d69cd.js} +23 -15
  176. package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-3a767111.js} +25 -13
  177. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-039abba3.js} +1 -1
  178. package/dist/esm/{dataunit-fetcher-cbec1594.js → dataunit-fetcher-3fbf9d12.js} +392 -70
  179. package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-30fb808f.js} +13 -1
  180. package/dist/esm/index-a7d3d3f1.js +2 -10
  181. package/dist/esm/loader.js +1 -1
  182. package/dist/esm/pesquisa-fetcher-03c8f919.js +164 -0
  183. package/dist/esm/sankhyablocks.js +1 -1
  184. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +525 -9
  185. package/dist/esm/snk-application.entry.js +88 -26
  186. package/dist/esm/snk-attach.entry.js +441 -65
  187. package/dist/esm/snk-configurator.entry.js +1 -1
  188. package/dist/esm/snk-crud.entry.js +125 -28
  189. package/dist/esm/snk-custom-slot-elements.entry.js +7 -3
  190. package/dist/esm/snk-data-exporter.entry.js +208 -84
  191. package/dist/esm/snk-data-unit-49b898f7.js +669 -0
  192. package/dist/esm/snk-data-unit.entry.js +11 -2
  193. package/dist/esm/snk-detail-view.entry.js +52 -13
  194. package/dist/esm/snk-entity-list.entry.js +5 -3
  195. package/dist/esm/snk-filter-bar.entry.js +65 -8
  196. package/dist/esm/snk-filter-detail.entry.js +4 -1
  197. package/dist/esm/snk-filter-item.entry.js +13 -6
  198. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  199. package/dist/esm/snk-filter-modal.entry.js +2 -1
  200. package/dist/esm/snk-filter-multi-select.entry.js +2 -1
  201. package/dist/esm/snk-form-config.entry.js +48 -28
  202. package/dist/esm/snk-form-view.entry.js +67 -0
  203. package/dist/esm/snk-form.entry.js +60 -8
  204. package/dist/esm/snk-grid.entry.js +200 -122
  205. package/dist/esm/{snk-guides-viewer-8da24475.js → snk-guides-viewer-ef8c4eec.js} +56 -20
  206. package/dist/esm/snk-guides-viewer.entry.js +10 -10
  207. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  208. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  209. package/dist/esm/snk-pesquisa.entry.js +1 -1
  210. package/dist/esm/snk-simple-crud.entry.js +505 -33
  211. package/dist/esm/snk-taskbar.entry.js +165 -22
  212. package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-ad766858.js} +11 -11
  213. package/dist/sankhyablocks/p-039c7148.entry.js +1 -0
  214. package/dist/sankhyablocks/p-04821c60.entry.js +1 -0
  215. package/dist/sankhyablocks/p-060fdb6c.js +1 -0
  216. package/dist/sankhyablocks/p-14a08904.entry.js +1 -0
  217. package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
  218. package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
  219. package/dist/sankhyablocks/p-21a81901.entry.js +1 -0
  220. package/dist/sankhyablocks/p-294df368.entry.js +1 -0
  221. package/dist/sankhyablocks/p-2ac8bd11.entry.js +1 -0
  222. package/dist/sankhyablocks/p-32062be4.entry.js +1 -0
  223. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  224. package/dist/sankhyablocks/p-3f1efb97.entry.js +1 -0
  225. package/dist/sankhyablocks/p-47b60deb.entry.js +1 -0
  226. package/dist/sankhyablocks/p-4ce73e88.js +1 -0
  227. package/dist/sankhyablocks/p-54a5d52a.entry.js +1 -0
  228. package/dist/sankhyablocks/p-58687027.entry.js +1 -0
  229. package/dist/sankhyablocks/p-5fa1576b.entry.js +11 -0
  230. package/dist/sankhyablocks/p-61dd89eb.js +1 -0
  231. package/dist/sankhyablocks/p-672302c3.js +60 -0
  232. package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
  233. package/dist/sankhyablocks/p-7663f597.entry.js +1 -0
  234. package/dist/sankhyablocks/p-8322ccdb.entry.js +1 -0
  235. package/dist/sankhyablocks/p-913a9979.js +1 -0
  236. package/dist/sankhyablocks/p-9863d682.js +1 -0
  237. package/dist/sankhyablocks/{p-e0fd9555.entry.js → p-a1d72395.entry.js} +1 -1
  238. package/dist/sankhyablocks/p-a64baa0f.entry.js +1 -0
  239. package/dist/sankhyablocks/p-af8efd95.js +6 -0
  240. package/dist/sankhyablocks/p-aff76a53.js +56 -0
  241. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  242. package/dist/sankhyablocks/p-ba05fdb8.entry.js +1 -0
  243. package/dist/sankhyablocks/p-babe7665.js +1 -0
  244. package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
  245. package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
  246. package/dist/sankhyablocks/p-d26365ad.js +1 -0
  247. package/dist/sankhyablocks/{p-9695f78b.js → p-dc7c9047.js} +1 -1
  248. package/dist/sankhyablocks/p-df5451c7.js +26 -0
  249. package/dist/sankhyablocks/p-e5c25e0b.entry.js +1 -0
  250. package/dist/sankhyablocks/p-e8763234.entry.js +1 -0
  251. package/dist/sankhyablocks/{p-7f3c7b09.entry.js → p-eae7a817.entry.js} +1 -1
  252. package/dist/sankhyablocks/p-f88cfc3c.js +1 -0
  253. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  254. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  255. package/dist/types/components/snk-application/snk-application.d.ts +27 -5
  256. package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
  257. package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
  258. package/dist/types/components/snk-attach/snk-attach.d.ts +34 -10
  259. package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
  260. package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +40 -0
  261. package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
  262. package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
  263. package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
  264. package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +16 -0
  265. package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
  266. package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
  267. package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
  268. package/dist/types/components/snk-crud/snk-crud.d.ts +57 -1
  269. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +24 -1
  270. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
  271. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +30 -1
  272. package/dist/types/components/snk-custom-slot-elements/snk-custom-slot-elements.d.ts +6 -0
  273. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
  274. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
  275. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
  276. package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
  277. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
  278. package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
  279. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
  280. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
  281. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
  282. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +61 -2
  283. package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
  284. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +4 -0
  285. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +7 -3
  286. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +5 -0
  287. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +31 -1
  288. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
  289. package/dist/types/components/snk-form/snk-form.d.ts +20 -1
  290. package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +2 -1
  291. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
  292. package/dist/types/components/snk-grid/snk-grid.d.ts +69 -7
  293. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  294. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  295. package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
  296. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +142 -6
  297. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
  298. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +38 -1
  299. package/dist/types/components.d.ts +536 -18
  300. package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
  301. package/dist/types/lib/configs/ConfigStorage.d.ts +21 -1
  302. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -3
  303. package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
  304. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +4 -0
  305. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
  306. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  307. package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
  308. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
  309. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
  310. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
  311. package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
  312. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
  313. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
  314. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  315. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
  316. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
  317. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
  318. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +7 -0
  319. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
  320. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
  321. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +2 -0
  322. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  323. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  324. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
  325. package/dist/types/lib/index.d.ts +1 -1
  326. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  327. package/package.json +15 -6
  328. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  329. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  330. package/dist/cjs/snk-data-unit-1bc69073.js +0 -462
  331. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  332. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  333. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
  334. package/dist/components/field-search.js +0 -121
  335. package/dist/components/index3.js +0 -199
  336. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  337. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  338. package/dist/esm/snk-data-unit-6208ebf0.js +0 -460
  339. package/dist/esm/snk-grid-config.entry.js +0 -479
  340. package/dist/esm/snk-select-box.entry.js +0 -21
  341. package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
  342. package/dist/sankhyablocks/p-0874adb5.entry.js +0 -1
  343. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  344. package/dist/sankhyablocks/p-0d7863ed.js +0 -26
  345. package/dist/sankhyablocks/p-1d75d9f9.entry.js +0 -1
  346. package/dist/sankhyablocks/p-20726710.entry.js +0 -1
  347. package/dist/sankhyablocks/p-25927311.entry.js +0 -1
  348. package/dist/sankhyablocks/p-32f0935f.js +0 -1
  349. package/dist/sankhyablocks/p-374d03f6.js +0 -1
  350. package/dist/sankhyablocks/p-3891ae6f.js +0 -60
  351. package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
  352. package/dist/sankhyablocks/p-573a07c5.js +0 -1
  353. package/dist/sankhyablocks/p-5f74c859.entry.js +0 -1
  354. package/dist/sankhyablocks/p-69754d94.entry.js +0 -1
  355. package/dist/sankhyablocks/p-6977a26c.entry.js +0 -1
  356. package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
  357. package/dist/sankhyablocks/p-761ed32f.entry.js +0 -1
  358. package/dist/sankhyablocks/p-7d8d7fe9.entry.js +0 -1
  359. package/dist/sankhyablocks/p-8d70b5d5.entry.js +0 -1
  360. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  361. package/dist/sankhyablocks/p-a9e4bb55.entry.js +0 -1
  362. package/dist/sankhyablocks/p-a9e5b094.entry.js +0 -1
  363. package/dist/sankhyablocks/p-aa0ae6bc.entry.js +0 -1
  364. package/dist/sankhyablocks/p-aa95fb2c.js +0 -56
  365. package/dist/sankhyablocks/p-b05ab13d.entry.js +0 -1
  366. package/dist/sankhyablocks/p-ba3d3fa9.entry.js +0 -11
  367. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  368. package/dist/sankhyablocks/p-c4d19840.entry.js +0 -1
  369. package/dist/sankhyablocks/p-c6e477ff.js +0 -1
  370. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  371. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  372. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  373. package/dist/sankhyablocks/p-d6317851.entry.js +0 -1
  374. package/dist/sankhyablocks/p-d81f20c4.entry.js +0 -1
  375. package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
  376. package/dist/sankhyablocks/p-e6380c60.js +0 -1
  377. package/dist/sankhyablocks/p-ff6064e7.js +0 -1
  378. package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
  379. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
  380. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
  381. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
  382. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  383. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  384. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  385. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  386. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  387. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  388. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  389. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  390. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  391. /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
  392. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  393. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  394. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
  395. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
  396. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
  397. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -4,20 +4,24 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-f9e81701.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const DataFetcher = require('./DataFetcher-ba94ed5b.js');
7
+ const DataFetcher = require('./DataFetcher-313debd8.js');
8
8
  const ParamType = require('./ParamType-90b440a0.js');
9
- require('./pesquisa-fetcher-ef050a47.js');
9
+ require('./pesquisa-fetcher-680e198f.js');
10
10
  require('./index-0922807b.js');
11
- require('./ISave-d68ce3cd.js');
11
+ require('./ISave-e91b70a7.js');
12
12
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
14
- require('./dataunit-fetcher-14108bec.js');
15
- require('./PreloadManager-84466da6.js');
14
+ require('./dataunit-fetcher-620b29a1.js');
16
15
  require('./filter-item-type.enum-a7ffdaa6.js');
17
- require('./form-config-fetcher-df043d3d.js');
16
+ require('./form-config-fetcher-2dd00e5b.js');
18
17
  const ResourceIDUtils = require('./ResourceIDUtils-5ff86aa7.js');
18
+ const utils = require('@sankhyalabs/ezui/dist/collection/utils');
19
+ const CheckMode = require('@sankhyalabs/ezui/dist/collection/components/ez-check/CheckMode');
20
+ const ConfigStorage = require('./ConfigStorage-942ce74b.js');
21
+ const constants = require('./constants-35ddd366.js');
19
22
  require('./PrintUtils-bcaeb82f.js');
20
23
  require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils');
24
+ require('@sankhyalabs/core/dist/utils/SortingUtils');
21
25
 
22
26
  const SERVICE_ACTION_EXECUTE_JAVA = 'ActionButtonsSP.executeJava';
23
27
  class JavaExecutor {
@@ -717,6 +721,516 @@ const SnkActionsButton = class {
717
721
  };
718
722
  SnkActionsButton.style = snkActionsButtonCss;
719
723
 
724
+ const snkGridConfigCss = ".sc-snk-grid-config-h{--snk-grid-config__footer--padding-top:var(--space--medium, 12px);--snk-grid-config__main--padding-right:var(--space--medium, 12px);--snk-grid-config__tabselector-container--padding:var(--space--medium, 12px);--snk-grid-config__button-close--padding-left:var(--space--medium, 12px);--snk-grid-config__title--color:var(--title--primary, #2B3A54);--snk-grid-config__title--font-family:var(--font-pattern, \"Roboto\");--snk-grid-config__title--font-size:var(--title--large, 20px);--snk-grid-config__title--font-weight:var(--text-weight--extra-large, 700);--snk-grid-config__subtitle--font-family:var(--font-pattern, \"Roboto\");--snk-grid-config__subtitle--font-size:var(--text--medium, 14px);--snk-grid-config__group--font-family:var(--font-pattern, \"Roboto\");--snk-grid-config__group--font-size:var(--text--medium, 14px);--snk-grid-config__group--font-weight:var(--text-weight--large, 600);--snk-grid-config__group--padding-bottom:var(--space-small, 6px);--snk-grid-config__scrollbar--color-default:var(--scrollbar--default, #626e82);--snk-grid-config__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--snk-grid-config__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--snk-grid-config__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--snk-grid-config__scrollbar--border-radius:var(--border--radius-small, 6px);--snk-grid-config__scrollbar--width:var(--space--medium, 12px);display:grid;grid-template-rows:auto 1fr auto;max-height:100%;width:100%}@media screen and (min-width: 480px){.sc-snk-grid-config-h{width:359px;max-width:359px}}.padding-right--medium.sc-snk-grid-config{padding-right:var(--space--medium)}ez-list.sc-snk-grid-config{height:100%}.height-calc.sc-snk-grid-config{max-height:calc(100% - 24px)}.grid-config__footer.sc-snk-grid-config{display:flex;justify-content:flex-end;width:100%;padding-top:var(--snk-grid-config__footer--padding-top)}.hidden.sc-snk-grid-config{display:none}.tabselector-container.sc-snk-grid-config{padding:var(--snk-grid-config__tabselector-container--padding) 0}.button-close.sc-snk-grid-config{padding-left:var(--snk-grid-config__button-close--padding-left)}.title-container.sc-snk-grid-config{display:flex;justify-content:space-between;align-items:center;width:100%}.title.sc-snk-grid-config{display:flex;margin:0;line-height:normal;letter-spacing:0em;text-align:left;color:var(--snk-grid-config__title--color);font-size:var(--snk-grid-config__title--font-size);font-family:var(--snk-grid-config__title--font-family);font-weight:var(--snk-grid-config__title--font-weight)}.subtitle.sc-snk-grid-config{color:var(--text--primary);font-size:var(--snk-grid-config__subtitle--font-size);font-family:var(--snk-grid-config__subtitle--font-family)}.grid-config__main.sc-snk-grid-config{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--snk-grid-config__scrollbar--color-clicked) var(--snk-grid-config__scrollbar--color-background);padding-right:var(--snk-grid-config__main--padding-right)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar{width:var(--snk-grid-config__scrollbar--width);max-width:var(--snk-grid-config__scrollbar--width);min-width:var(--snk-grid-config__scrollbar--width);background-color:var(--snk-grid-config__scrollbar--color-background)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-track{background-color:var(--snk-grid-config__scrollbar--color-background);border-radius:var(--snk-grid-config__scrollbar--border-radius)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb{background-color:var(--snk-grid-config__scrollbar--color-default);border-radius:var(--snk-grid-config__scrollbar--border-radius)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:vertical:hover,.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--snk-grid-config__scrollbar--color-hover)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:vertical:active,.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--snk-grid-config__scrollbar--color-clicked)}.group-name.sc-snk-grid-config{font-family:var(--snk-grid-config__group--font-family);font-size:var(--snk-grid-config__group--font-size);font-weight:var(--snk-grid-config__group--font-weight);padding-bottom:var(--snk-grid-config__group--padding-bottom)}";
725
+
726
+ const SnkGridConfig = class {
727
+ constructor(hostRef) {
728
+ index.registerInstance(this, hostRef);
729
+ this.configChange = index.createEvent(this, "configChange", 7);
730
+ this.configCancel = index.createEvent(this, "configCancel", 7);
731
+ this._orderListItems = [];
732
+ this._orderPriorityList = [];
733
+ this._columListItems = [];
734
+ this._selectedIndex = -1;
735
+ this._dataChanged = false;
736
+ this._componenteInternalKey = Date.now();
737
+ this.selectedIndex = 0;
738
+ this.columns = undefined;
739
+ this.config = undefined;
740
+ this.configName = undefined;
741
+ this.resourceID = undefined;
742
+ }
743
+ /* Creation Methods */
744
+ /**
745
+ * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
746
+ * através de um pequeno modulo na estrutura da aplicação:
747
+ * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
748
+ * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-grid.msg.ts"
749
+ */
750
+ getMessage(key, params) {
751
+ const application = core.ApplicationContext.getContextValue("__SNK__APPLICATION__");
752
+ return application.messagesBuilder.getMessage(key, params);
753
+ }
754
+ getSortableColumns() {
755
+ let newList = [];
756
+ this.columns.filter(col => { var _a; return core.StringUtils.getBooleanValue((_a = col === null || col === void 0 ? void 0 : col.props) === null || _a === void 0 ? void 0 : _a.get("sortable"), true); }).forEach((column) => {
757
+ var _a;
758
+ let configItem = (_a = this.config) === null || _a === void 0 ? void 0 : _a.columns.find((item) => item.name === column.name);
759
+ let item = { name: column.name, label: column.label };
760
+ if (configItem) {
761
+ item['orderIndex'] = configItem.orderIndex;
762
+ item['ascending'] = configItem.ascending;
763
+ }
764
+ if (!column.hidden) {
765
+ newList.push(item);
766
+ }
767
+ });
768
+ return newList;
769
+ }
770
+ createOrderList() {
771
+ let newSortableList = this.getSortableColumns();
772
+ newSortableList.sort((a, b) => {
773
+ //OS dois tem order index 0 e pelo menos um deles tem orientação de ordenação.
774
+ if (a.orderIndex == 0 && b.orderIndex == 0 && (a.ascending != undefined || b.ascending != undefined)) {
775
+ if (a.ascending != undefined)
776
+ return -1;
777
+ if (b.ascending != undefined)
778
+ return 1;
779
+ return 0;
780
+ //Pelo menos um deles tem order index diferente de 0 e os dois tem orientação de ordenação.
781
+ }
782
+ else if (a.ascending != undefined && b.ascending != undefined) {
783
+ return (a.orderIndex - b.orderIndex);
784
+ //Pelo menos um deles tem order index diferente de 0 e pelo menos um deles tem orientação de ordenação.
785
+ }
786
+ else if (a.ascending != undefined || b.ascending != undefined) {
787
+ if (a.ascending != undefined)
788
+ return -1;
789
+ if (b.ascending != undefined)
790
+ return 1;
791
+ return 0;
792
+ }
793
+ return (a.orderIndex - b.orderIndex);
794
+ });
795
+ this._orderListItems = newSortableList;
796
+ }
797
+ createColumnList() {
798
+ let visibleGroup = {
799
+ group: this.getMessage("snkGridConfig.group.visible"),
800
+ items: [],
801
+ };
802
+ let hiddenGroup = {
803
+ group: this.getMessage("snkGridConfig.group.hidden"),
804
+ items: [],
805
+ sort: constants.ORDER_VALUES.asc.value
806
+ };
807
+ this.columns.forEach((column) => {
808
+ let item = { label: column.label };
809
+ if (column.hidden) {
810
+ hiddenGroup.items.push(item);
811
+ }
812
+ else {
813
+ visibleGroup.items.push(item);
814
+ }
815
+ });
816
+ this._columListItems = [visibleGroup, hiddenGroup];
817
+ }
818
+ createColumnListSlotDataElementId(item) {
819
+ return `configItem_${core.StringUtils.replaceAccentuatedChars(core.StringUtils.toCamelCase(item.label))}`;
820
+ }
821
+ buildColumnListSlot(item, group) {
822
+ const dataElementId = this.createColumnListSlotDataElementId(item);
823
+ return (index.h("div", null, index.h("ez-check", { mode: CheckMode.CheckMode.SWITCH, id: CheckMode.CheckMode.SWITCH + ((item === null || item === void 0 ? void 0 : item.label) || '') + ((group === null || group === void 0 ? void 0 : group.group) || ''), value: group.group === this.getMessage("snkGridConfig.group.visible"), "data-element-id": dataElementId, onEzChange: (evt) => { this.switchColumnGroup(evt, item); } })));
824
+ }
825
+ createOrderListSlotDataElementId(item) {
826
+ return `${this._element.getAttribute(core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME)}_configItem_${core.StringUtils.toCamelCase(item.label)}`;
827
+ }
828
+ buildOrderListSlot(item) {
829
+ const dataElementId = this.createOrderListSlotDataElementId(item);
830
+ let selectedOption = constants.ORDER_VALUES.none.value;
831
+ if ((item === null || item === void 0 ? void 0 : item.ascending) != undefined) {
832
+ selectedOption = item.ascending == true ? constants.ORDER_VALUES.asc.value : constants.ORDER_VALUES.desc.value;
833
+ }
834
+ return (index.h("div", null, index.h("snk-select-box", { selectedOption: selectedOption, key: 'snk-select-box-' + this._componenteInternalKey + '-' + item, "data-element-id": dataElementId, onEzChange: (evt) => { evt.stopPropagation(); this.updateOrder(evt.detail, item.label); } })));
835
+ }
836
+ updateOrder(sortOrder, updatedItemLabel) {
837
+ var _a;
838
+ this._dataChanged = true;
839
+ let newList = [...this.columns];
840
+ let newItem = newList.find((item) => item.label === updatedItemLabel);
841
+ if (newItem) {
842
+ newItem.sort = sortOrder.value === constants.ORDER_VALUES.none.value ? undefined : sortOrder.value;
843
+ }
844
+ let orderArray;
845
+ if (((_a = this._orderPriorityList) === null || _a === void 0 ? void 0 : _a.length) > 0) {
846
+ this._orderPriorityList.find((item) => item.label === newItem.label).sort = sortOrder;
847
+ this._orderPriorityList.filter((item) => item.sort).forEach((item, index) => {
848
+ if (item.label === newItem.label) {
849
+ newItem.sortIndex = index;
850
+ }
851
+ });
852
+ }
853
+ else {
854
+ orderArray = newList.filter((item) => item.sort && item.hidden !== true)
855
+ .map((item, index) => {
856
+ return { label: item.label, orderIndex: index };
857
+ });
858
+ orderArray.forEach((element) => {
859
+ newList.find((item) => item.label === element.label).sortIndex = element.orderIndex;
860
+ });
861
+ }
862
+ this.columns = newList;
863
+ }
864
+ /* Actions Methods */
865
+ switchColumnGroup(evt, switchedItem) {
866
+ evt.stopPropagation();
867
+ let newList = [...this._columListItems];
868
+ this._dataChanged = true;
869
+ if (evt.detail === true) {
870
+ let hiddenGroup = newList.find((group) => group.group === this.getMessage("snkGridConfig.group.hidden"));
871
+ let index = hiddenGroup.items.findIndex((item) => item.label === switchedItem.label);
872
+ if (index >= 0) {
873
+ hiddenGroup.items.splice(index, 1);
874
+ }
875
+ let visibleGroup = newList.find((group) => group.group === this.getMessage("snkGridConfig.group.visible"));
876
+ visibleGroup.items.push(switchedItem);
877
+ this._columListItems = newList;
878
+ this.createOrderList();
879
+ }
880
+ else if (evt.detail === false) {
881
+ let visibleGroup = newList.find((group) => group.group === this.getMessage("snkGridConfig.group.visible"));
882
+ let index = visibleGroup.items.findIndex((item) => item.label === switchedItem.label);
883
+ if (index >= 0) {
884
+ visibleGroup.items.splice(index, 1);
885
+ }
886
+ let hiddenGroup = newList.find((group) => group.group === this.getMessage("snkGridConfig.group.hidden"));
887
+ hiddenGroup.items.push(switchedItem);
888
+ this._columListItems = newList;
889
+ this.createOrderList();
890
+ }
891
+ }
892
+ finish() {
893
+ if (!this._dataChanged) {
894
+ this.closeConfig();
895
+ return;
896
+ }
897
+ let newColumnList = [];
898
+ this._columListItems.forEach((group) => {
899
+ group.items.forEach((item) => {
900
+ const baseColumn = this.columns.find((column) => column.label === item.label);
901
+ let newColumnItem = Object.assign({}, baseColumn);
902
+ if (group.group === this.getMessage("snkGridConfig.group.hidden")) {
903
+ newColumnItem.hidden = true;
904
+ }
905
+ else {
906
+ newColumnItem.hidden = false;
907
+ }
908
+ newColumnList.push(newColumnItem);
909
+ });
910
+ });
911
+ this.columns = newColumnList;
912
+ this._dataChanged = false;
913
+ this.closeConfig();
914
+ this.save();
915
+ }
916
+ saveGridConfigOnStorage(_newConfig) {
917
+ ConfigStorage.ConfigStorage.saveGridConfig(_newConfig, this.configName, this.resourceID)
918
+ .then((savedConfig) => {
919
+ this.configChange.emit(savedConfig);
920
+ this._orderList.clearHistory();
921
+ utils.ApplicationUtils.info(this.getMessage("snkGridConfig.info.successfullyConfigSaved"), { iconName: "check" });
922
+ });
923
+ }
924
+ reOrderPriorityColumns(columns, orderPriorityList) {
925
+ let orderArray = [];
926
+ orderArray = columns.filter((item) => item.sort && item.hidden !== true)
927
+ .map((item) => {
928
+ return { label: item.label, orderIndex: 0 };
929
+ });
930
+ let indexCount = 0;
931
+ let newOrderArray = [];
932
+ orderPriorityList.forEach((orderPriorityItem) => {
933
+ let item = orderArray.find((column) => column.label === orderPriorityItem.label);
934
+ if (item) {
935
+ item.orderIndex = indexCount;
936
+ newOrderArray.push(item);
937
+ indexCount++;
938
+ }
939
+ });
940
+ if (newOrderArray.length > 0) {
941
+ orderArray = newOrderArray;
942
+ }
943
+ return orderArray;
944
+ }
945
+ save() {
946
+ var _a;
947
+ let _newConfig;
948
+ if (this.config) {
949
+ _newConfig = this.config;
950
+ }
951
+ else {
952
+ _newConfig = this.createConfigFromState(this.columns);
953
+ }
954
+ let _newColumnConfigList = [];
955
+ let orderArray;
956
+ if (((_a = this._orderPriorityList) === null || _a === void 0 ? void 0 : _a.length) > 0) {
957
+ orderArray = this.reOrderPriorityColumns(this.columns, this._orderPriorityList);
958
+ }
959
+ this.columns.forEach((column) => {
960
+ let _newColumnConfig = _newConfig.columns.find((_newColumnConfig) => column.name === _newColumnConfig.name);
961
+ if (column.hidden === true && _newColumnConfig)
962
+ return;
963
+ if (_newColumnConfig) {
964
+ _newColumnConfig.width = column.width;
965
+ }
966
+ else if (column.hidden === false) {
967
+ _newColumnConfig = { name: column.name, width: column.width, orderIndex: 0 };
968
+ }
969
+ if (_newColumnConfig) {
970
+ if (column.sort) {
971
+ _newColumnConfig.ascending = column.sort.toUpperCase() === constants.ORDER_VALUES.asc.value ? true : false;
972
+ if (orderArray) {
973
+ adjustPriorityOrder(column, _newColumnConfig);
974
+ }
975
+ else {
976
+ _newColumnConfig.orderIndex = column.sortIndex;
977
+ }
978
+ }
979
+ else {
980
+ delete _newColumnConfig.ascending;
981
+ _newColumnConfig.orderIndex = 0;
982
+ }
983
+ _newColumnConfigList.push(_newColumnConfig);
984
+ }
985
+ });
986
+ _newConfig.columns = _newColumnConfigList;
987
+ this.saveGridConfigOnStorage(_newConfig);
988
+ function adjustPriorityOrder(column, _newColumnConfig) {
989
+ if (orderArray) {
990
+ let orderItem = orderArray.find((item) => item.label === column.label);
991
+ if (orderItem) {
992
+ _newColumnConfig.orderIndex = orderItem.orderIndex;
993
+ }
994
+ }
995
+ }
996
+ }
997
+ createConfigFromState(state) {
998
+ let newConfig = { columns: [] };
999
+ state.forEach((columnState) => {
1000
+ if (!columnState.hidden) {
1001
+ let newConfigColumn = { name: columnState.name };
1002
+ if (columnState.width) {
1003
+ newConfigColumn['width'] = columnState.width;
1004
+ }
1005
+ if (columnState.sort) {
1006
+ newConfigColumn['ascending'] = (columnState.sort.toUpperCase() === constants.ORDER_VALUES.asc.value);
1007
+ newConfigColumn['orderIndex'] = columnState.sortIndex;
1008
+ }
1009
+ else {
1010
+ newConfigColumn['orderIndex'] = 0;
1011
+ }
1012
+ if (newConfigColumn) {
1013
+ newConfig.columns.push(newConfigColumn);
1014
+ }
1015
+ }
1016
+ });
1017
+ return newConfig;
1018
+ }
1019
+ async locateColumn(evt, searchingText) {
1020
+ var _a;
1021
+ const hitEnter = evt.key === "Enter";
1022
+ searchingText = searchingText || ((_a = evt.currentTarget) === null || _a === void 0 ? void 0 : _a.value);
1023
+ if (!searchingText) {
1024
+ this.removeSelection();
1025
+ return;
1026
+ }
1027
+ const matchedIndexes = await this.getMatchedIndexes(searchingText);
1028
+ const newSelected = this.getNewSelectedIndex(matchedIndexes, hitEnter);
1029
+ this._selectedIndex = newSelected;
1030
+ if (this.selectedIndex === 1) {
1031
+ this.updateOrderListSelection(newSelected);
1032
+ }
1033
+ else {
1034
+ this.updateColumnListSelection(newSelected);
1035
+ }
1036
+ }
1037
+ async getMatchedIndexes(searchingText) {
1038
+ const matchedIndexes = [];
1039
+ if (this.selectedIndex === 1) {
1040
+ const orderListDatasource = await this._orderList.getList();
1041
+ orderListDatasource.forEach((column, index) => {
1042
+ if (this.compareWords(column, searchingText)) {
1043
+ matchedIndexes.push(index);
1044
+ }
1045
+ });
1046
+ }
1047
+ else {
1048
+ this.columns.forEach((column, index) => {
1049
+ if (this.compareWords(column, searchingText)) {
1050
+ matchedIndexes.push(index);
1051
+ }
1052
+ });
1053
+ }
1054
+ return matchedIndexes;
1055
+ }
1056
+ getNewSelectedIndex(matchedIndexes, hitEnter) {
1057
+ if (matchedIndexes.length === 0)
1058
+ return -1;
1059
+ if (hitEnter) {
1060
+ for (const index of matchedIndexes) {
1061
+ if (index > this._selectedIndex) {
1062
+ return index;
1063
+ }
1064
+ }
1065
+ }
1066
+ return matchedIndexes[0];
1067
+ }
1068
+ updateOrderListSelection(newSelected) {
1069
+ if (newSelected === -1) {
1070
+ this._orderList.removeSelection();
1071
+ return;
1072
+ }
1073
+ this._orderList.getList().then((orderListDatasource) => {
1074
+ const selectedColumn = orderListDatasource[newSelected];
1075
+ if (selectedColumn) {
1076
+ this._orderList.setSelection(selectedColumn, true);
1077
+ }
1078
+ else {
1079
+ this._orderList.removeSelection();
1080
+ }
1081
+ });
1082
+ }
1083
+ updateColumnListSelection(newSelected) {
1084
+ if (newSelected === -1) {
1085
+ this._columnList.removeSelection();
1086
+ return;
1087
+ }
1088
+ const selectedColumn = this.columns[newSelected];
1089
+ if (selectedColumn) {
1090
+ const listItem = this._columListItems
1091
+ .map(group => group.items)
1092
+ .flat()
1093
+ .find(item => item.label === selectedColumn.label);
1094
+ if (listItem) {
1095
+ this._columnList.setSelection(listItem, true);
1096
+ }
1097
+ else {
1098
+ this._columnList.removeSelection();
1099
+ }
1100
+ }
1101
+ else {
1102
+ this._columnList.removeSelection();
1103
+ }
1104
+ }
1105
+ removeSelection() {
1106
+ if (this.selectedIndex === 1) {
1107
+ this._orderList.removeSelection();
1108
+ }
1109
+ else {
1110
+ this._columnList.removeSelection();
1111
+ }
1112
+ }
1113
+ compareWords(column, searchingText) {
1114
+ var _a, _b;
1115
+ const columnLabel = (_a = core.StringUtils.replaceAccentuatedChars(column === null || column === void 0 ? void 0 : column.label)) === null || _a === void 0 ? void 0 : _a.toUpperCase();
1116
+ const argument = (_b = core.StringUtils.replaceAccentuatedChars(searchingText)) === null || _b === void 0 ? void 0 : _b.toUpperCase();
1117
+ if (core.StringUtils.isEmpty(columnLabel) || core.StringUtils.isEmpty(argument)) {
1118
+ return false;
1119
+ }
1120
+ return columnLabel.includes(argument);
1121
+ }
1122
+ getColumnNames() {
1123
+ const listNames = [];
1124
+ listNames.push(this.getMessage("snkGridConfig.tab.columns"));
1125
+ listNames.push(this.getMessage("snkGridConfig.tab.lineOrdering"));
1126
+ return listNames.join(',');
1127
+ }
1128
+ closeConfig() {
1129
+ this._orderList.scrollToTop();
1130
+ this._columnList.scrollToTop();
1131
+ this._searchElement.value = "";
1132
+ if (this._dataChanged) {
1133
+ let options = {
1134
+ canClose: false,
1135
+ labelCancel: this.getMessage("snkGridConfig.confirm.cancel"),
1136
+ labelConfirm: this.getMessage("snkGridConfig.confirm.save"),
1137
+ btnConfirmDanger: false
1138
+ };
1139
+ utils.ApplicationUtils.confirm(this.getMessage("snkGridConfig.confirm.alert"), this.getMessage("snkGridConfig.confirm.msgCancel"), null, utils.DialogType.WARN, options)
1140
+ .then((response) => {
1141
+ if (!response) {
1142
+ this._dataChanged = false;
1143
+ this.configCancel.emit();
1144
+ this._orderList.clearHistory();
1145
+ this._componenteInternalKey = Date.now();
1146
+ }
1147
+ else {
1148
+ this.finish();
1149
+ }
1150
+ });
1151
+ }
1152
+ else {
1153
+ this.configCancel.emit();
1154
+ this._orderList.clearHistory();
1155
+ }
1156
+ }
1157
+ /* Handlers */
1158
+ handleTabChange(tab) {
1159
+ if ((tab === null || tab === void 0 ? void 0 : tab.index) != undefined) {
1160
+ if (this.selectedIndex !== tab.index) {
1161
+ if (tab.index === 0) {
1162
+ this._orderList.scrollToTop();
1163
+ }
1164
+ else if (tab.index === 1) {
1165
+ this._columnList.scrollToTop();
1166
+ }
1167
+ this._searchElement.value = "";
1168
+ }
1169
+ if (tab.index === 1) {
1170
+ this.createOrderList();
1171
+ }
1172
+ this.selectedIndex = tab.index;
1173
+ }
1174
+ }
1175
+ handleColumnListChange(evt) {
1176
+ var _a;
1177
+ if (evt.detail) {
1178
+ let visibleItems = (_a = evt.detail.find((group) => group.group === this.getMessage("snkGridConfig.group.visible"))) === null || _a === void 0 ? void 0 : _a.items;
1179
+ if (visibleItems) {
1180
+ this._dataChanged = true;
1181
+ this._orderListItems = visibleItems;
1182
+ }
1183
+ }
1184
+ }
1185
+ handleOrderListChange(evt) {
1186
+ if (evt.detail) {
1187
+ let orderPriorityList = evt.detail;
1188
+ if (orderPriorityList) {
1189
+ this._dataChanged = true;
1190
+ this._orderPriorityList = orderPriorityList;
1191
+ }
1192
+ }
1193
+ }
1194
+ componentWillRender() {
1195
+ var _a;
1196
+ if (((_a = this.columns) === null || _a === void 0 ? void 0 : _a.length) > 0) {
1197
+ this.createColumnList();
1198
+ }
1199
+ }
1200
+ componentDidRender() {
1201
+ var _a;
1202
+ if (((_a = this.columns) === null || _a === void 0 ? void 0 : _a.length) > 0) {
1203
+ this.locateColumn(new KeyboardEvent("arrow-right", { key: "ArrowRight" }), this._searchElement.value);
1204
+ }
1205
+ }
1206
+ componentDidLoad() {
1207
+ core.ElementIDUtils.addIDInfo(this._element);
1208
+ }
1209
+ render() {
1210
+ return (index.h(index.Host, null, index.h("div", { class: "grid-config__header" }, index.h("div", { class: "title-container" }, index.h("div", { class: "" }, index.h("label", { class: "title" }, this.getMessage("snkGridConfig.gridConfiguration")), index.h("label", { class: "subtitle" }, this.getMessage("snkGridConfig.columnVisibilityOrder"))), index.h("div", { class: "button-close" }, index.h("ez-button", { mode: 'icon', iconName: "close", size: 'medium', onClick: () => this.closeConfig() }))), index.h("div", { class: "tabselector-container" }, index.h("ez-tabselector", { selectedIndex: this.selectedIndex, onEzChange: (evt) => { this.handleTabChange(evt.detail); }, tabs: this.getColumnNames() })), index.h("div", null, index.h("ez-text-input", { "data-element-id": "searchColums", ref: (el) => this._searchElement = el, label: this.getMessage("snkGridConfig.findColumn"), onKeyUp: (evt) => this.locateColumn(evt) }, index.h("ez-icon", { slot: "leftIcon", size: "medium", iconName: "search" })))), index.h("div", { class: "grid-config__main" }, index.h("ez-list", { ref: (el) => this._columnList = el, class: this.selectedIndex === 0 ? "" : "hidden", dataSource: this._columListItems, onEzChange: (evt) => this.handleColumnListChange(evt), ezDraggable: true, ezSelectable: true, itemSlotBuilder: (item, group) => this.buildColumnListSlot(item, group), useGroups: true, "data-element-id": "configCols" }), index.h("div", { class: this.selectedIndex === 1 ? "group-name" : "hidden" }, this.getMessage("snkGridConfig.info.sortingSequence")), index.h("ez-list", { ref: (el) => this._orderList = el, class: this.selectedIndex === 1 ? "height-calc" : "hidden", dataSource: this._orderListItems, ezSelectable: true, onEzChange: (evt) => this.handleOrderListChange(evt), ezDraggable: true, itemSlotBuilder: (item) => this.buildOrderListSlot(item), "data-element-id": "configDataOrder" })), index.h("div", { class: "grid-config__footer" }, index.h("ez-button", { class: "padding-right--medium", label: this.getMessage("snkGridConfig.cancel"), onClick: () => this.closeConfig() }), index.h("ez-button", { label: this.getMessage("snkGridConfig.complete"), class: "ez-button--primary", onClick: () => this.finish() }))));
1211
+ }
1212
+ static get assetsDirs() { return ["../assets"]; }
1213
+ get _element() { return index.getElement(this); }
1214
+ };
1215
+ SnkGridConfig.style = snkGridConfigCss;
1216
+
1217
+ const snkSelectBoxCss = "ez-combo-box{width:100px}.grid-config-combo{--ez-text-input--height:28px;--ez-text-input__input--background-color:#fff;--ez-text-input__input--border-color:#dce0e8}";
1218
+
1219
+ const SelectBox = class {
1220
+ constructor(hostRef) {
1221
+ index.registerInstance(this, hostRef);
1222
+ this.ezChange = index.createEvent(this, "ezChange", 7);
1223
+ this.selectedOption = constants.ORDER_VALUES.none;
1224
+ }
1225
+ render() {
1226
+ return (index.h("ez-combo-box", { class: "grid-config-combo ez-input--inverted", label: "", suppressSearch: true, value: this.selectedOption, enabled: true, canShowError: false, suppressEmptyOption: true }, Object.keys(constants.ORDER_VALUES).map((key) => {
1227
+ return index.h("option", { value: constants.ORDER_VALUES[key].value }, constants.ORDER_VALUES[key].label);
1228
+ })));
1229
+ }
1230
+ static get assetsDirs() { return ["../assets"]; }
1231
+ };
1232
+ SelectBox.style = snkSelectBoxCss;
1233
+
720
1234
  const taskbarActionsButtonCss = ".sc-taskbar-actions-button-h{display:flex;width:fit-content;height:fit-content}";
721
1235
 
722
1236
  const TaskbarActionsButton = class {
@@ -791,7 +1305,7 @@ const TaskbarActionsButton = class {
791
1305
  }
792
1306
  }
793
1307
  getSelectedAction(id, actions) {
794
- let selectedItem;
1308
+ let selectedItem = null;
795
1309
  for (const item of actions) {
796
1310
  if (item.id === id) {
797
1311
  selectedItem = item;
@@ -800,6 +1314,8 @@ const TaskbarActionsButton = class {
800
1314
  if (!(item === null || item === void 0 ? void 0 : item.children))
801
1315
  continue;
802
1316
  selectedItem = this.getSelectedAction(id, item.children);
1317
+ if (selectedItem)
1318
+ break;
803
1319
  }
804
1320
  return selectedItem;
805
1321
  }
@@ -840,11 +1356,13 @@ const TaskbarActionsButton = class {
840
1356
  this.taskbarActionsButtonDisconnected.emit();
841
1357
  }
842
1358
  render() {
843
- return (index.h(index.Host, null, index.h("div", { class: `ez-padding-left--medium ${this.canShowDropdown() ? ' ez-elevation--16' : ''}` }, index.h("ez-button", { title: this.title, mode: 'icon', iconName: 'dots-vertical', size: 'small', enabled: this.enabled, onClick: () => this.controlDropdown() }), this.canShowDropdown() && index.h("ez-dropdown", { items: this.loadItems(), onEzClick: (evt) => this.onSelectAction(evt.detail), onEzOutsideClick: () => this._showDropdown = false, itemBuilder: (item, level) => this.dropdownItemBuilder(item, level) }))));
1359
+ return (index.h(index.Host, null, index.h("div", { class: `${this.canShowDropdown() ? ' ez-elevation--16' : ''}` }, index.h("ez-button", { title: this.title, mode: 'icon', iconName: 'dots-vertical', size: 'small', enabled: this.enabled, onClick: () => this.controlDropdown() }), this.canShowDropdown() && index.h("ez-dropdown", { items: this.loadItems(), onEzClick: (evt) => this.onSelectAction(evt.detail), onEzOutsideClick: () => this._showDropdown = false, itemBuilder: (item, level) => this.dropdownItemBuilder(item, level) }))));
844
1360
  }
845
1361
  get _element() { return index.getElement(this); }
846
1362
  };
847
1363
  TaskbarActionsButton.style = taskbarActionsButtonCss;
848
1364
 
849
1365
  exports.snk_actions_button = SnkActionsButton;
1366
+ exports.snk_grid_config = SnkGridConfig;
1367
+ exports.snk_select_box = SelectBox;
850
1368
  exports.taskbar_actions_button = TaskbarActionsButton;