@sankhyalabs/sankhyablocks 8.15.0-dev.6 → 8.15.0-dev.60

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 (352) hide show
  1. package/dist/cjs/{ConfigStorage-8009ecb2.js → ConfigStorage-7df9d3bb.js} +102 -30
  2. package/dist/cjs/IExporterProvider-1ed8e92a.js +187 -0
  3. package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
  4. package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
  5. package/dist/cjs/{SnkFormConfigManager-7d850fbc.js → SnkFormConfigManager-4259edbe.js} +21 -13
  6. package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-66aa2557.js} +19 -1
  7. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-e6112be7.js} +1 -1
  8. package/dist/cjs/{DataFetcher-ba94ed5b.js → form-config-fetcher-3c4daeb5.js} +258 -4
  9. package/dist/cjs/index-f9e81701.js +2 -10
  10. package/dist/cjs/loader.cjs.js +1 -1
  11. package/dist/cjs/{dataunit-fetcher-bd4c52da.js → pesquisa-fetcher-cb768be1.js} +520 -86
  12. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  13. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +529 -13
  14. package/dist/cjs/snk-application.cjs.entry.js +62 -28
  15. package/dist/cjs/snk-attach.cjs.entry.js +422 -62
  16. package/dist/cjs/snk-crud.cjs.entry.js +17 -12
  17. package/dist/cjs/snk-data-exporter.cjs.entry.js +204 -82
  18. package/dist/cjs/{snk-data-unit-1bc69073.js → snk-data-unit-abd2113f.js} +3 -38
  19. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -2
  20. package/dist/cjs/snk-detail-view.cjs.entry.js +10 -12
  21. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  22. package/dist/cjs/snk-filter-bar.cjs.entry.js +65 -10
  23. package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -1
  24. package/dist/cjs/snk-filter-item.cjs.entry.js +13 -6
  25. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +2 -3
  26. package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -1
  27. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
  28. package/dist/cjs/snk-form-config.cjs.entry.js +46 -27
  29. package/dist/cjs/snk-form.cjs.entry.js +10 -4
  30. package/dist/cjs/snk-grid.cjs.entry.js +95 -116
  31. package/dist/cjs/{snk-guides-viewer-cb176c4d.js → snk-guides-viewer-bec9c1a5.js} +15 -11
  32. package/dist/cjs/snk-guides-viewer.cjs.entry.js +8 -10
  33. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  34. package/dist/cjs/snk-personalized-filter.cjs.entry.js +2 -3
  35. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  36. package/dist/cjs/snk-simple-crud.cjs.entry.js +367 -38
  37. package/dist/cjs/snk-taskbar.cjs.entry.js +124 -15
  38. package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-d9392685.js} +11 -11
  39. package/dist/collection/collection-manifest.json +7 -7
  40. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  41. package/dist/collection/components/snk-application/snk-application.js +85 -2
  42. package/dist/collection/components/snk-attach/snk-attach.js +212 -39
  43. package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
  44. package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
  45. package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
  46. package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
  47. package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
  48. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +118 -0
  49. package/dist/collection/components/snk-attach/structure/index.js +6 -3
  50. package/dist/collection/components/snk-crud/snk-crud.js +95 -3
  51. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +2 -2
  52. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  53. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +27 -3
  54. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
  55. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
  56. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +48 -1
  57. package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
  58. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +53 -0
  59. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
  60. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +42 -48
  61. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
  62. package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
  63. package/dist/collection/components/snk-data-unit/snk-data-unit.js +3 -42
  64. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  65. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
  66. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  67. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +22 -1
  68. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +31 -6
  69. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +19 -1
  70. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +24 -1
  71. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +159 -5
  72. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
  73. package/dist/collection/components/snk-form/snk-form.js +25 -1
  74. package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +20 -12
  75. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
  76. package/dist/collection/components/snk-grid/snk-grid.js +102 -109
  77. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  78. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  79. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
  80. package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
  81. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +10 -2
  82. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +548 -20
  83. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +4 -2
  84. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -11
  85. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  86. package/dist/collection/components/snk-taskbar/snk-taskbar.js +167 -14
  87. package/dist/collection/lib/configs/ConfigStorage.js +86 -16
  88. package/dist/collection/lib/dataUnit/InMemoryLoader.js +9 -40
  89. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +33 -0
  90. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +7 -4
  91. package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
  92. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
  93. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
  94. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
  95. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
  96. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
  97. package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
  98. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
  99. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
  100. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
  101. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +32 -3
  102. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +36 -23
  103. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +12 -0
  104. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  105. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  106. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +12 -13
  107. package/dist/collection/lib/index.js +1 -1
  108. package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
  109. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
  110. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +4 -0
  111. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  112. package/dist/components/ConfigStorage.js +93 -21
  113. package/dist/components/IExporterProvider.js +256 -0
  114. package/dist/components/ISave.js +42 -0
  115. package/dist/components/SnkFormConfigManager.js +19 -11
  116. package/dist/components/SnkMessageBuilder.js +19 -1
  117. package/dist/components/dataunit-fetcher.js +138 -91
  118. package/dist/components/form-config-fetcher.js +7035 -3
  119. package/dist/components/index.d.ts +6 -6
  120. package/dist/components/index2.js +198 -33
  121. package/dist/components/snk-actions-button2.js +3 -11
  122. package/dist/components/snk-application2.js +42 -3
  123. package/dist/components/snk-attach2.js +478 -70
  124. package/dist/components/snk-crud.js +18 -7
  125. package/dist/components/snk-data-exporter2.js +199 -82
  126. package/dist/components/snk-data-unit2.js +41 -39
  127. package/dist/components/snk-detail-view2.js +44 -12
  128. package/dist/components/snk-entity-list.js +5 -3
  129. package/dist/components/snk-expression-item2.js +1 -1
  130. package/dist/components/snk-filter-bar2.js +69 -8
  131. package/dist/components/snk-filter-detail2.js +5 -1
  132. package/dist/components/snk-filter-item2.js +14 -6
  133. package/dist/components/snk-filter-modal.js +4 -2
  134. package/dist/components/snk-filter-multi-select.js +2 -1
  135. package/dist/components/snk-form-config2.js +47 -27
  136. package/dist/components/snk-form.js +8 -0
  137. package/dist/components/snk-grid-config2.js +128 -102
  138. package/dist/components/snk-grid2.js +96 -112
  139. package/dist/components/snk-personalized-filter-editor.js +3 -1
  140. package/dist/components/snk-personalized-filter2.js +1 -1
  141. package/dist/components/snk-pesquisa2.js +1 -1
  142. package/dist/components/snk-simple-crud2.js +421 -34
  143. package/dist/components/snk-taskbar2.js +144 -29
  144. package/dist/components/taskbar-actions-button2.js +4 -2
  145. package/dist/esm/{ConfigStorage-1244b8b0.js → ConfigStorage-928c3bf4.js} +93 -21
  146. package/dist/esm/IExporterProvider-ceabfb7e.js +179 -0
  147. package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
  148. package/dist/esm/RecordIDUtils-87d02110.js +41 -0
  149. package/dist/esm/{SnkFormConfigManager-9be0e7d4.js → SnkFormConfigManager-a87ade7a.js} +21 -13
  150. package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-0a4becdd.js} +19 -1
  151. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-e1cb288f.js} +1 -1
  152. package/dist/esm/{DataFetcher-aa159c5a.js → form-config-fetcher-e3094014.js} +257 -5
  153. package/dist/esm/index-a7d3d3f1.js +2 -10
  154. package/dist/esm/loader.js +1 -1
  155. package/dist/esm/{dataunit-fetcher-65714f21.js → pesquisa-fetcher-72125b13.js} +494 -69
  156. package/dist/esm/sankhyablocks.js +1 -1
  157. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +523 -9
  158. package/dist/esm/snk-application.entry.js +43 -9
  159. package/dist/esm/snk-attach.entry.js +422 -62
  160. package/dist/esm/snk-crud.entry.js +17 -12
  161. package/dist/esm/snk-data-exporter.entry.js +204 -82
  162. package/dist/esm/{snk-data-unit-6208ebf0.js → snk-data-unit-29eba11a.js} +4 -39
  163. package/dist/esm/snk-data-unit.entry.js +3 -2
  164. package/dist/esm/snk-detail-view.entry.js +10 -12
  165. package/dist/esm/snk-entity-list.entry.js +5 -3
  166. package/dist/esm/snk-filter-bar.entry.js +65 -10
  167. package/dist/esm/snk-filter-detail.entry.js +4 -1
  168. package/dist/esm/snk-filter-item.entry.js +13 -6
  169. package/dist/esm/snk-filter-modal-item.entry.js +2 -3
  170. package/dist/esm/snk-filter-modal.entry.js +2 -1
  171. package/dist/esm/snk-filter-multi-select.entry.js +2 -1
  172. package/dist/esm/snk-form-config.entry.js +47 -28
  173. package/dist/esm/snk-form.entry.js +10 -4
  174. package/dist/esm/snk-grid.entry.js +95 -116
  175. package/dist/esm/{snk-guides-viewer-eeb8f354.js → snk-guides-viewer-303aafb4.js} +15 -11
  176. package/dist/esm/snk-guides-viewer.entry.js +8 -10
  177. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  178. package/dist/esm/snk-personalized-filter.entry.js +2 -3
  179. package/dist/esm/snk-pesquisa.entry.js +1 -1
  180. package/dist/esm/snk-simple-crud.entry.js +359 -30
  181. package/dist/esm/snk-taskbar.entry.js +125 -16
  182. package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-ad766858.js} +11 -11
  183. package/dist/sankhyablocks/p-029bfc09.js +1 -0
  184. package/dist/sankhyablocks/p-07825198.js +1 -0
  185. package/dist/sankhyablocks/p-0e8702f0.js +1 -0
  186. package/dist/sankhyablocks/p-13ea113d.entry.js +1 -0
  187. package/dist/sankhyablocks/p-1fa244c0.entry.js +1 -0
  188. package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
  189. package/dist/sankhyablocks/p-2d972c2e.entry.js +1 -0
  190. package/dist/sankhyablocks/p-314e2d1a.entry.js +1 -0
  191. package/dist/sankhyablocks/p-32556aa6.js +1 -0
  192. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  193. package/dist/sankhyablocks/p-3494a28e.entry.js +1 -0
  194. package/dist/sankhyablocks/p-35bd4df7.entry.js +1 -0
  195. package/dist/sankhyablocks/p-536eeb16.js +26 -0
  196. package/dist/sankhyablocks/p-54a5d52a.entry.js +1 -0
  197. package/dist/sankhyablocks/p-563701f3.js +1 -0
  198. package/dist/sankhyablocks/p-61984566.entry.js +1 -0
  199. package/dist/sankhyablocks/p-61dd89eb.js +1 -0
  200. package/dist/sankhyablocks/p-64977b22.entry.js +1 -0
  201. package/dist/sankhyablocks/p-65b6dba3.entry.js +1 -0
  202. package/dist/sankhyablocks/p-6bc64fb0.entry.js +1 -0
  203. package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
  204. package/dist/sankhyablocks/p-9863d682.js +1 -0
  205. package/dist/sankhyablocks/p-aedf37fb.js +65 -0
  206. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  207. package/dist/sankhyablocks/p-b233f5aa.entry.js +1 -0
  208. package/dist/sankhyablocks/p-b86ea293.entry.js +1 -0
  209. package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
  210. package/dist/sankhyablocks/p-c73482cf.js +1 -0
  211. package/dist/sankhyablocks/p-cb3c7b4a.entry.js +11 -0
  212. package/dist/sankhyablocks/p-cfb98f51.entry.js +1 -0
  213. package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
  214. package/dist/sankhyablocks/p-d911a023.entry.js +1 -0
  215. package/dist/sankhyablocks/p-e27496ed.js +56 -0
  216. package/dist/sankhyablocks/p-e8763234.entry.js +1 -0
  217. package/dist/sankhyablocks/p-fa84e72f.entry.js +1 -0
  218. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  219. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  220. package/dist/types/components/snk-application/snk-application.d.ts +15 -0
  221. package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
  222. package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
  223. package/dist/types/components/snk-attach/snk-attach.d.ts +29 -6
  224. package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
  225. package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +40 -0
  226. package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
  227. package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
  228. package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
  229. package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +16 -0
  230. package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
  231. package/dist/types/components/snk-crud/snk-crud.d.ts +21 -0
  232. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +1 -1
  233. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +6 -1
  234. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
  235. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
  236. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +21 -4
  237. package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
  238. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
  239. package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
  240. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
  241. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
  242. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
  243. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +4 -0
  244. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +7 -3
  245. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +5 -0
  246. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +27 -1
  247. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
  248. package/dist/types/components/snk-form/snk-form.d.ts +6 -1
  249. package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +2 -1
  250. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
  251. package/dist/types/components/snk-grid/snk-grid.d.ts +19 -4
  252. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  253. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  254. package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
  255. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +98 -4
  256. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
  257. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +34 -1
  258. package/dist/types/components.d.ts +314 -12
  259. package/dist/types/lib/configs/ConfigStorage.d.ts +25 -1
  260. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +0 -2
  261. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +4 -0
  262. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  263. package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
  264. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
  265. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
  266. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
  267. package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
  268. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
  269. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
  270. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  271. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
  272. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +1 -0
  273. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +1 -0
  274. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +2 -0
  275. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  276. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  277. package/dist/types/lib/index.d.ts +1 -1
  278. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  279. package/package.json +15 -6
  280. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  281. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  282. package/dist/cjs/form-config-fetcher-df043d3d.js +0 -244
  283. package/dist/cjs/pesquisa-fetcher-ef050a47.js +0 -167
  284. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  285. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  286. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
  287. package/dist/components/DataFetcher.js +0 -7021
  288. package/dist/components/field-search.js +0 -121
  289. package/dist/components/index3.js +0 -199
  290. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  291. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  292. package/dist/esm/form-config-fetcher-36219cd3.js +0 -241
  293. package/dist/esm/pesquisa-fetcher-dd3ca0a5.js +0 -165
  294. package/dist/esm/snk-grid-config.entry.js +0 -479
  295. package/dist/esm/snk-select-box.entry.js +0 -21
  296. package/dist/sankhyablocks/p-0874adb5.entry.js +0 -1
  297. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  298. package/dist/sankhyablocks/p-0d7863ed.js +0 -26
  299. package/dist/sankhyablocks/p-0dca29cb.entry.js +0 -1
  300. package/dist/sankhyablocks/p-11081798.entry.js +0 -1
  301. package/dist/sankhyablocks/p-20726710.entry.js +0 -1
  302. package/dist/sankhyablocks/p-29804fc5.js +0 -60
  303. package/dist/sankhyablocks/p-32f0935f.js +0 -1
  304. package/dist/sankhyablocks/p-3520c088.entry.js +0 -1
  305. package/dist/sankhyablocks/p-374d03f6.js +0 -1
  306. package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
  307. package/dist/sankhyablocks/p-585294ee.js +0 -56
  308. package/dist/sankhyablocks/p-6977a26c.entry.js +0 -1
  309. package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
  310. package/dist/sankhyablocks/p-6d20d38c.entry.js +0 -1
  311. package/dist/sankhyablocks/p-776ee8e3.js +0 -1
  312. package/dist/sankhyablocks/p-7d51d949.entry.js +0 -11
  313. package/dist/sankhyablocks/p-809f367d.entry.js +0 -1
  314. package/dist/sankhyablocks/p-95a3778f.entry.js +0 -1
  315. package/dist/sankhyablocks/p-9695f78b.js +0 -1
  316. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  317. package/dist/sankhyablocks/p-a9e5b094.entry.js +0 -1
  318. package/dist/sankhyablocks/p-b146a9f0.entry.js +0 -1
  319. package/dist/sankhyablocks/p-bedb8ad6.entry.js +0 -1
  320. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  321. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  322. package/dist/sankhyablocks/p-ca4d337a.entry.js +0 -1
  323. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  324. package/dist/sankhyablocks/p-d1f5bc50.js +0 -1
  325. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  326. package/dist/sankhyablocks/p-d6317851.entry.js +0 -1
  327. package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
  328. package/dist/sankhyablocks/p-e6380c60.js +0 -1
  329. package/dist/sankhyablocks/p-f2056f66.entry.js +0 -1
  330. package/dist/sankhyablocks/p-f514913b.entry.js +0 -1
  331. package/dist/sankhyablocks/p-fd8814b9.entry.js +0 -1
  332. package/dist/sankhyablocks/p-ff6064e7.js +0 -1
  333. package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
  334. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
  335. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
  336. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
  337. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  338. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  339. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  340. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  341. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  342. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  343. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  344. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  345. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  346. /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
  347. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  348. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  349. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
  350. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
  351. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
  352. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -1,8 +1,8 @@
1
1
  import { h, proxyCustomElement, HTMLElement, createEvent, Host } from '@stencil/core/internal/client';
2
- import { StringUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
2
+ import { StringUtils, ApplicationContext, OVERFLOWED_CLASS_NAME, OverflowWatcher, OverflowDirection, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { A as AuthorizationConfig } from './AuthorizationConfig.js';
4
- import { P as PresentationMode } from './index2.js';
5
- import { s as store } from './index3.js';
4
+ import { P as PresentationMode } from './ISave.js';
5
+ import { s as store } from './index2.js';
6
6
  import { d as defineCustomElement$4 } from './snk-actions-button2.js';
7
7
  import { d as defineCustomElement$3 } from './snk-data-exporter2.js';
8
8
  import { d as defineCustomElement$2 } from './snk-exporter-email-sender2.js';
@@ -54,7 +54,7 @@ const buildCustomButton = (def, className, dataElementId, action, isEnabled) =>
54
54
  return textButton(def.name, className, dataElementId, text, hint, action, isEnabled);
55
55
  }
56
56
  };
57
- const buildElem = (element, className, dataElementId, getTitle, action, isEnabled, actions, configName, presentationMode) => {
57
+ const buildElem = (element, className, dataElementId, getTitle, action, isEnabled, actions, dataExporterStoreKey, presentationMode) => {
58
58
  var _a;
59
59
  const title = getTitle(element);
60
60
  switch (element) {
@@ -93,35 +93,35 @@ const buildElem = (element, className, dataElementId, getTitle, action, isEnable
93
93
  case TaskbarElement.CONFIGURATOR:
94
94
  return iconButton("settings-inverted", element, className, dataElementId, title, action, isEnabled);
95
95
  case TaskbarElement.MORE_OPTIONS:
96
- return actionButton(element, dataElementId, title, isEnabled, actions, action);
96
+ return actionButton(element, className, dataElementId, title, isEnabled, actions, action);
97
97
  case TaskbarElement.DIVIDER:
98
- return h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-horizontal--medium", "data-taskbar-divider": true });
98
+ return h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin--none ez-margin-left--medium", "data-taskbar-divider": true });
99
99
  case TaskbarElement.DATA_EXPORTER:
100
- const provider = (_a = store.get("exporterProviders")) === null || _a === void 0 ? void 0 : _a[configName];
101
- return h("snk-data-exporter", { class: className, provider: provider, "data-element-id": dataElementId });
100
+ const provider = (_a = store.get("exporterProviders")) === null || _a === void 0 ? void 0 : _a[dataExporterStoreKey];
101
+ return h("snk-data-exporter", { class: className, provider: provider, "data-element-id": dataElementId, "data-taskbar-element": element });
102
102
  case TaskbarElement.ATTACH:
103
103
  return iconButton("anexo", element, className, dataElementId, title, action, isEnabled);
104
104
  case TaskbarElement.ACTIONS_BUTTON:
105
- return h("snk-actions-button", { "data-element-id": dataElementId });
105
+ return h("snk-actions-button", { "data-element-id": dataElementId, "data-taskbar-element": element });
106
106
  }
107
107
  };
108
108
  function textButton(name, className, dataElementId, text, title, action, isEnabled) {
109
- return h("ez-button", { key: dataElementId, title: title, label: text, size: "small", class: className, "data-element-id": dataElementId, enabled: isEnabled(name), onClick: () => action(name) });
109
+ return h("ez-button", { key: dataElementId, title: title, label: text, size: "small", class: className, "data-taskbar-label": text, "data-taskbar-element": name, "data-element-id": dataElementId, enabled: isEnabled(name), onClick: () => action(name) });
110
110
  }
111
111
  function iconButton(iconName, name, className, dataElementId, title, action, isEnabled) {
112
- return h("ez-button", { key: dataElementId, title: title, mode: "icon", size: "small", class: className, "data-element-id": dataElementId, iconName: iconName, enabled: isEnabled(name), onClick: () => action(name) });
112
+ return h("ez-button", { key: dataElementId, title: title, mode: "icon", size: "small", class: className, "data-taskbar-label": title, "data-taskbar-element": name, "data-taskbar-icon": iconName, "data-element-id": dataElementId, iconName: iconName, enabled: isEnabled(name), onClick: () => action(name) });
113
113
  }
114
114
  function iconTextButton(iconName, name, className, dataElementId, text, title, action, isEnabled) {
115
- return h("ez-button", { key: dataElementId, title: title, label: text, size: "small", class: className, "data-element-id": dataElementId, enabled: isEnabled(name), onClick: () => action(name) },
115
+ return h("ez-button", { key: dataElementId, title: title, label: text, size: "small", class: className, "data-taskbar-label": text, "data-taskbar-icon": iconName, "data-taskbar-element": name, "data-element-id": dataElementId, enabled: isEnabled(name), onClick: () => action(name) },
116
116
  h("ez-icon", { class: "ez-padding-right--small", slot: "leftIcon", iconName: iconName }));
117
117
  }
118
- function actionButton(element, dataElementId, title, isEnabled, actions, action) {
118
+ function actionButton(element, className, dataElementId, title, isEnabled, actions, action) {
119
119
  return actions && actions.length > 0
120
- ? h("taskbar-actions-button", { key: dataElementId, title: title, "data-element-id": dataElementId, enabled: isEnabled(element), actions: actions, onTaskbarActionSelected: (evt) => action(evt.detail.value) })
120
+ ? h("taskbar-actions-button", { class: className, key: dataElementId, title: title, "data-taskbar-element": element, "data-element-id": dataElementId, enabled: isEnabled(element), actions: actions, onTaskbarActionSelected: (evt) => action(evt.detail.value) })
121
121
  : undefined;
122
122
  }
123
123
 
124
- const snkTaskbarCss = ".sc-snk-taskbar-h{display:flex}";
124
+ const snkTaskbarCss = ".sc-snk-taskbar-h{display:flex;flex-wrap:wrap}.no-wrap.sc-snk-taskbar-h{flex-wrap:nowrap}.full-width.sc-snk-taskbar-h{width:100%}.align-right.sc-snk-taskbar-h{justify-content:flex-end}.overflowed.sc-snk-taskbar{display:none}";
125
125
 
126
126
  const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
127
127
  constructor() {
@@ -129,6 +129,9 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
129
129
  this.__registerHost();
130
130
  this.actionClick = createEvent(this, "actionClick", 7);
131
131
  this.TASKBAR_ITEM_ID_PREFIX = 'TASKBAR_ITEM_';
132
+ this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME = 'taskbar-custom-elements-container';
133
+ this.ACTIONS_BUTTON_TAG = 'TASKBAR-ACTIONS-BUTTON';
134
+ this.NOT_OVERFLOW_ELEMENTS = ["moreOptions", "dataExporter_snkDataExporter", "actionsButton_snkActionsButton"];
132
135
  this._titleKeyByElement = {
133
136
  [TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
134
137
  [TaskbarElement.PREVIOUS]: "snkTaskbar.titlePrevious",
@@ -146,11 +149,17 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
146
149
  [TaskbarElement.ATTACH]: "snkTaskbar.titleAttach",
147
150
  };
148
151
  this._permissions = undefined;
152
+ this._overFlowedElements = [];
149
153
  this._customElements = undefined;
150
154
  this._customElementsId = undefined;
151
155
  this._slotContainer = undefined;
156
+ this._hiddenActionsList = [];
157
+ this._lastWidth = undefined;
158
+ this._hasToUpdateOverFlow = false;
159
+ this.alignRigth = false;
152
160
  this.customSlotId = "TASKBAR_CUSTOM_ELEMENTS";
153
161
  this.customContainerId = undefined;
162
+ this.overflowStrategy = 'hiddenItems';
154
163
  this.configName = undefined;
155
164
  this.resourceID = undefined;
156
165
  this.buttons = undefined;
@@ -164,6 +173,18 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
164
173
  }
165
174
  observeButtons() {
166
175
  this._definitions = undefined;
176
+ requestAnimationFrame(() => {
177
+ requestAnimationFrame(() => { var _a; return (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate(); });
178
+ });
179
+ }
180
+ observeDisabledButtons() {
181
+ var _a;
182
+ (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate();
183
+ }
184
+ observeLastWidth(newValue, oldValue) {
185
+ if (oldValue === 0 && newValue !== 0) {
186
+ this._hasToUpdateOverFlow = true;
187
+ }
167
188
  }
168
189
  // Internal methods
169
190
  elementsFromString(strButtons) {
@@ -258,13 +279,21 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
258
279
  className += "ez-padding-left--medium";
259
280
  }
260
281
  const taskbarElement = TaskbarElement[def.toString()];
282
+ const dataExporterStoreKey = this._element.dataset.exporterStoreKey || this.configName;
261
283
  if (taskbarElement) {
262
- return buildElem(def, className, this.getIdElemBtnNative(def), elem => this.getTitle(elem), elem => this.elementClick(elem), elem => this.isEnabled(elem), this.actionsList, this.configName, this.presentationMode);
284
+ return buildElem(def, className, this.getIdElemBtnNative(def), elem => this.getTitle(elem), elem => this.elementClick(elem), elem => this.isEnabled(elem), this.buildDynamicActionsList(), dataExporterStoreKey, this.presentationMode);
263
285
  }
264
286
  else {
265
287
  return buildCustomButton(def, className, this.getIdElemBtnCustom(def), elem => this.elementClick(elem), elem => this.isEnabled(elem));
266
288
  }
267
289
  }
290
+ buildDynamicActionsList() {
291
+ var _a;
292
+ if (this._hiddenActionsList.length) {
293
+ return [...((_a = this.actionsList) !== null && _a !== void 0 ? _a : []), { type: 'divider', label: "", value: "" }, ...this._hiddenActionsList];
294
+ }
295
+ return this.actionsList;
296
+ }
268
297
  getIdElemBtnNative(taskbarElem) {
269
298
  return StringUtils.toCamelCase(taskbarElem);
270
299
  }
@@ -305,11 +334,13 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
305
334
  });
306
335
  }
307
336
  addCustomElementContainer(elem) {
337
+ var _a;
308
338
  const elementId = `${this.TASKBAR_ITEM_ID_PREFIX}${elem}`;
309
339
  if (!this._customElementsId.includes(elementId)) {
310
340
  this._customElementsId.push(elementId);
341
+ (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.addNotOverFlowElement(elementId);
311
342
  }
312
- return h("span", { key: elementId, id: elementId });
343
+ return h("span", { class: "ez-padding-left--medium", key: elementId, id: elementId });
313
344
  }
314
345
  getCustomElements() {
315
346
  var _a, _b;
@@ -339,20 +370,95 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
339
370
  this.getCustomElements();
340
371
  }
341
372
  componentWillRender() {
373
+ this.handleDefinitions();
374
+ this.validatePresentationMode();
375
+ this.updateOverFlowIfNeeded();
376
+ }
377
+ handleDefinitions() {
342
378
  if (this._definitions == undefined && this._permissions) {
343
379
  this._definitions = this.elementsFromString(this.buttons);
344
380
  }
345
- this.validatePresentationMode();
381
+ }
382
+ updateOverFlowIfNeeded() {
383
+ if (this._hasToUpdateOverFlow) {
384
+ requestAnimationFrame(() => { var _a; return (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate(); });
385
+ this._hasToUpdateOverFlow = false;
386
+ }
387
+ }
388
+ handleOverFlow(overFlowingElements) {
389
+ const elementsToHandle = overFlowingElements.filter(element => !this.hasToIgnoreOverFlow(element));
390
+ this.resetOverFlowedElements();
391
+ this.doOverFlowElements(elementsToHandle);
392
+ }
393
+ resetOverFlowedElements() {
394
+ this._overFlowedElements.forEach(element => {
395
+ element.classList.remove(OVERFLOWED_CLASS_NAME);
396
+ });
397
+ this._hiddenActionsList = [];
398
+ this._overFlowedElements = [];
399
+ }
400
+ doOverFlowElements(overFlowedElements) {
401
+ overFlowedElements.forEach(element => {
402
+ element.classList.add(OVERFLOWED_CLASS_NAME);
403
+ this._overFlowedElements.push(element);
404
+ this.addItemToActionList(element);
405
+ });
406
+ }
407
+ addItemToActionList(element) {
408
+ const taskbarElement = this.getTaskbarElementName(element);
409
+ if (taskbarElement && this.isEnabled(taskbarElement) && this.isAllowed(taskbarElement)) {
410
+ const optionItem = {
411
+ value: taskbarElement,
412
+ label: this.getTaskbarElementLabel(element),
413
+ iconName: this.getTaskbarElementIcon(element)
414
+ };
415
+ this._hiddenActionsList.push(optionItem);
416
+ }
417
+ }
418
+ getTaskbarElementName(element) {
419
+ var _a;
420
+ return (_a = element.getAttribute('data-taskbar-element')) !== null && _a !== void 0 ? _a : "";
421
+ }
422
+ getTaskbarElementIcon(element) {
423
+ var _a;
424
+ return (_a = element.getAttribute('data-taskbar-icon')) !== null && _a !== void 0 ? _a : "";
425
+ }
426
+ getTaskbarElementLabel(element) {
427
+ var _a;
428
+ return (_a = element.getAttribute('data-taskbar-label')) !== null && _a !== void 0 ? _a : "";
429
+ }
430
+ hasToIgnoreOverFlow(element) {
431
+ return element.classList.contains(this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME);
432
+ }
433
+ handleOverFlowStrategy() {
434
+ if (this.overflowStrategy === 'hiddenItems') {
435
+ this._overFlowWatcher = new OverflowWatcher(this.buildOverFlowWatcherParams());
436
+ }
437
+ }
438
+ buildOverFlowWatcherParams() {
439
+ return {
440
+ element: this._element,
441
+ callback: this.handleOverFlow.bind(this),
442
+ overFlowDirection: OverflowDirection.HORIZONTAL,
443
+ notOverFlow: this.NOT_OVERFLOW_ELEMENTS
444
+ };
346
445
  }
347
446
  componentDidLoad() {
348
447
  const dataInfo = { dataUnit: this.dataUnit };
349
448
  ElementIDUtils.addIDInfo(this._element, null, dataInfo);
449
+ this.handleOverFlowStrategy();
350
450
  }
351
451
  componentDidRender() {
352
452
  this.appendCustomElementsInTaskbar();
453
+ this.updateLastWidth();
454
+ }
455
+ updateLastWidth() {
456
+ this._lastWidth = this._element.getBoundingClientRect().width;
353
457
  }
354
458
  disconnectedCallback() {
459
+ var _a;
355
460
  this.unlinkAllCustomElements();
461
+ (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.destroy();
356
462
  }
357
463
  unlinkAllCustomElements() {
358
464
  var _a;
@@ -370,14 +476,9 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
370
476
  return undefined;
371
477
  }
372
478
  let index = 0;
373
- return (h(Host, null, this.removeEmpty(this._definitions.map((elem) => {
374
- var _a;
375
- if (elem === TaskbarElement.DIVIDER) {
376
- index = 0;
377
- }
378
- else {
379
- index++;
380
- }
479
+ return (h(Host, { class: this.getHostClasses() }, this.removeEmpty(this._definitions.map((elem) => {
480
+ var _a, _b;
481
+ index++;
381
482
  if (TaskbarElement[elem]) {
382
483
  return this.getElement(index, TaskbarElement[elem]);
383
484
  }
@@ -387,17 +488,27 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
387
488
  if (this._customElements.has(elem)) {
388
489
  return this.addCustomElementContainer(elem);
389
490
  }
491
+ (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.addNotOverFlowElement(elem);
390
492
  return h("slot", { name: elem });
391
- })), h("div", { class: "taskbar-custom-elements-container" }, h("slot", { name: this.customSlotId }))));
493
+ })), h("div", { class: this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME }, h("slot", { name: this.customSlotId }))));
494
+ }
495
+ getHostClasses() {
496
+ if (this.overflowStrategy !== 'hiddenItems')
497
+ return 'no-wrap';
498
+ return `full-width ${this.alignRigth ? 'align-right' : ""}`;
392
499
  }
393
500
  get _element() { return this; }
394
501
  static get watchers() { return {
395
- "buttons": ["observeButtons"]
502
+ "buttons": ["observeButtons"],
503
+ "disabledButtons": ["observeDisabledButtons"],
504
+ "_lastWidth": ["observeLastWidth"]
396
505
  }; }
397
506
  static get style() { return snkTaskbarCss; }
398
507
  }, [6, "snk-taskbar", {
508
+ "alignRigth": [4, "align-rigth"],
399
509
  "customSlotId": [1, "custom-slot-id"],
400
510
  "customContainerId": [1, "custom-container-id"],
511
+ "overflowStrategy": [1, "overflow-strategy"],
401
512
  "configName": [1, "config-name"],
402
513
  "resourceID": [1, "resource-i-d"],
403
514
  "buttons": [1],
@@ -409,9 +520,13 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
409
520
  "presentationMode": [1537, "presentation-mode"],
410
521
  "messagesBuilder": [1040],
411
522
  "_permissions": [32],
523
+ "_overFlowedElements": [32],
412
524
  "_customElements": [32],
413
525
  "_customElementsId": [32],
414
- "_slotContainer": [32]
526
+ "_slotContainer": [32],
527
+ "_hiddenActionsList": [32],
528
+ "_lastWidth": [32],
529
+ "_hasToUpdateOverFlow": [32]
415
530
  }]);
416
531
  function defineCustomElement() {
417
532
  if (typeof customElements === "undefined") {
@@ -75,7 +75,7 @@ const TaskbarActionsButton = /*@__PURE__*/ proxyCustomElement(class extends HTML
75
75
  }
76
76
  }
77
77
  getSelectedAction(id, actions) {
78
- let selectedItem;
78
+ let selectedItem = null;
79
79
  for (const item of actions) {
80
80
  if (item.id === id) {
81
81
  selectedItem = item;
@@ -84,6 +84,8 @@ const TaskbarActionsButton = /*@__PURE__*/ proxyCustomElement(class extends HTML
84
84
  if (!(item === null || item === void 0 ? void 0 : item.children))
85
85
  continue;
86
86
  selectedItem = this.getSelectedAction(id, item.children);
87
+ if (selectedItem)
88
+ break;
87
89
  }
88
90
  return selectedItem;
89
91
  }
@@ -124,7 +126,7 @@ const TaskbarActionsButton = /*@__PURE__*/ proxyCustomElement(class extends HTML
124
126
  this.taskbarActionsButtonDisconnected.emit();
125
127
  }
126
128
  render() {
127
- return (h(Host, null, h("div", { class: `ez-padding-left--medium ${this.canShowDropdown() ? ' ez-elevation--16' : ''}` }, h("ez-button", { title: this.title, mode: 'icon', iconName: 'dots-vertical', size: 'small', enabled: this.enabled, onClick: () => this.controlDropdown() }), this.canShowDropdown() && h("ez-dropdown", { items: this.loadItems(), onEzClick: (evt) => this.onSelectAction(evt.detail), onEzOutsideClick: () => this._showDropdown = false, itemBuilder: (item, level) => this.dropdownItemBuilder(item, level) }))));
129
+ return (h(Host, null, h("div", { class: `${this.canShowDropdown() ? ' ez-elevation--16' : ''}` }, h("ez-button", { title: this.title, mode: 'icon', iconName: 'dots-vertical', size: 'small', enabled: this.enabled, onClick: () => this.controlDropdown() }), this.canShowDropdown() && h("ez-dropdown", { items: this.loadItems(), onEzClick: (evt) => this.onSelectAction(evt.detail), onEzOutsideClick: () => this._showDropdown = false, itemBuilder: (item, level) => this.dropdownItemBuilder(item, level) }))));
128
130
  }
129
131
  get _element() { return this; }
130
132
  static get style() { return taskbarActionsButtonCss; }
@@ -1,7 +1,6 @@
1
- import { R as ResourceFetcher, F as FormConfigFetcher } from './form-config-fetcher-36219cd3.js';
1
+ import { R as ResourceFetcher, d as dist, D as DataFetcher, F as FormConfigFetcher } from './form-config-fetcher-e3094014.js';
2
2
  import { F as FilterItemType } from './filter-item-type.enum-d45e026f.js';
3
3
  import { ObjectUtils } from '@sankhyalabs/core';
4
- import { d as dist, D as DataFetcher } from './DataFetcher-aa159c5a.js';
5
4
 
6
5
  class GridConfigFetcher extends ResourceFetcher {
7
6
  constructor() {
@@ -232,7 +231,7 @@ class PersonalizedFilterFetcher {
232
231
  assistent
233
232
  }
234
233
  }`);
235
- this.templateByQuery.set("savePersonalizedFilter", dist.gql `
234
+ this.templateByQuery.set("savePersonalizedFilter", dist.gql `
236
235
  mutation($name: String!, $filterAssistent: InputFilterAssistent!) {
237
236
  $queryAlias$: savePersonalizedFilter(name: $name, filterAssistent: $filterAssistent) {
238
237
  id
@@ -254,11 +253,11 @@ class PersonalizedFilterFetcher {
254
253
  }
255
254
  }`);
256
255
  }
257
- async loadPersonalizedFilter(resourceID, filterID, configName) {
256
+ async loadPersonalizedFilter(resourceID, filterID, configName, legacyConfigName) {
258
257
  return new Promise((resolve, reject) => {
259
258
  DataFetcher.get()
260
259
  .callGraphQL({
261
- values: { name: this.resolveURI(resourceID, configName) + "/" + filterID },
260
+ values: { name: this.resolveURI(resourceID, configName) + "/" + filterID + this.resolveLegacyConfigName(legacyConfigName) },
262
261
  query: this.templateByQuery.get("fetchFilterAssistent"),
263
262
  })
264
263
  .then((resp) => {
@@ -270,6 +269,9 @@ class PersonalizedFilterFetcher {
270
269
  });
271
270
  });
272
271
  }
272
+ resolveLegacyConfigName(legacyConfigName) {
273
+ return legacyConfigName ? `?legacyResourceID=${legacyConfigName}` : '';
274
+ }
273
275
  async savePersonalizedFilter(personalizedFilter, resourceID, configName) {
274
276
  if (!personalizedFilter || Object.keys(personalizedFilter).length == 0) {
275
277
  return Promise.reject(new Error("personalizedFilter não pode ser vazio"));
@@ -351,17 +353,37 @@ class PersonalizedFilterFetcher {
351
353
  }
352
354
  }
353
355
 
354
- const CONFIG_SOURCE = {
355
- form: "form",
356
- grid: "grid",
357
- filterBar: "filterBar"
358
- };
356
+ var CONFIG_SOURCE;
357
+ (function (CONFIG_SOURCE) {
358
+ CONFIG_SOURCE["form"] = "form";
359
+ CONFIG_SOURCE["grid"] = "grid";
360
+ CONFIG_SOURCE["filterBar"] = "filterBar";
361
+ })(CONFIG_SOURCE || (CONFIG_SOURCE = {}));
359
362
  class ConfigStorage {
360
- static preload(resourceID, configName) {
363
+ static addFilterBarLegacyConfig(configName, legacyConfigName) {
364
+ this.validateConfigName(configName, legacyConfigName);
365
+ this.filterBarLegacyConfig.set(configName, legacyConfigName);
366
+ }
367
+ static addFormLegacyConfig(configName, legacyConfigName) {
368
+ this.validateConfigName(configName, legacyConfigName);
369
+ this.formLegacyConfig.set(configName, legacyConfigName);
370
+ }
371
+ static addGridLegacyConfig(configName, legacyConfigName) {
372
+ this.validateConfigName(configName, legacyConfigName);
373
+ this.gridLegacyConfig.set(configName, legacyConfigName);
374
+ }
375
+ static preload(resourceID, configName, legacyConfigs) {
376
+ if (configName && (legacyConfigs === null || legacyConfigs === void 0 ? void 0 : legacyConfigs.gridLegacyConfig)) {
377
+ ConfigStorage.addGridLegacyConfig(configName, legacyConfigs.gridLegacyConfig);
378
+ }
379
+ if (configName && (legacyConfigs === null || legacyConfigs === void 0 ? void 0 : legacyConfigs.formLegacyConfig)) {
380
+ ConfigStorage.addFormLegacyConfig(configName, legacyConfigs.formLegacyConfig);
381
+ }
361
382
  ConfigStorage.loadFormConfig(configName, resourceID);
362
383
  ConfigStorage.loadGridConfig(configName, resourceID);
363
384
  }
364
385
  static async loadFilterBarConfig(name, resourceID, urlParams) {
386
+ urlParams = this.handleLegacyConfig(name, CONFIG_SOURCE.filterBar, urlParams);
365
387
  const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.filterBar, resourceID);
366
388
  if (!ConfigStorage.configById.has(cacheID)) {
367
389
  ConfigStorage.configById.set(cacheID, ConfigStorage.filterBarConfigFetcher.getConfig(resourceID, name, urlParams));
@@ -369,6 +391,7 @@ class ConfigStorage {
369
391
  return ConfigStorage.configById.get(cacheID);
370
392
  }
371
393
  static async loadFormConfig(name, resourceID) {
394
+ name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.form);
372
395
  const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.form, resourceID);
373
396
  if (!ConfigStorage.configById.has(cacheID)) {
374
397
  ConfigStorage.configById.set(cacheID, ConfigStorage.formConfigFetcher.loadFormConfig(name, resourceID));
@@ -376,6 +399,7 @@ class ConfigStorage {
376
399
  return ConfigStorage.configById.get(cacheID);
377
400
  }
378
401
  static async loadGridConfig(name, resourceID) {
402
+ name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.grid);
379
403
  const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.grid, resourceID);
380
404
  if (!ConfigStorage.configById.has(cacheID)) {
381
405
  ConfigStorage.configById.set(cacheID, ConfigStorage.gridConfigFetcher.getConfig(name, resourceID));
@@ -383,13 +407,12 @@ class ConfigStorage {
383
407
  return ConfigStorage.configById.get(cacheID);
384
408
  }
385
409
  static async saveFilterBarConfig(config, name, resourceID) {
386
- const cacheID = this.buildCacheID(name, CONFIG_SOURCE.filterBar, resourceID);
387
- this.configById.delete(cacheID);
410
+ await this.deleteFilterBarConfigCache(name, resourceID);
388
411
  return this.filterBarConfigFetcher.saveConfig(config, resourceID, name);
389
412
  }
390
413
  static async saveFormConfig(config, name, resourceID) {
391
- const cacheID = this.buildCacheID(name, CONFIG_SOURCE.form, resourceID);
392
- this.configById.delete(cacheID);
414
+ name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.form);
415
+ await this.deleteFormConfigCache(name, resourceID);
393
416
  return this.formConfigFetcher.saveConfig(config, name, resourceID);
394
417
  }
395
418
  static async saveCardState(config, name, resourceID) {
@@ -399,18 +422,17 @@ class ConfigStorage {
399
422
  if (config == undefined) {
400
423
  return;
401
424
  }
402
- const cacheID = this.buildCacheID(name, CONFIG_SOURCE.grid, resourceID);
403
- this.configById.delete(cacheID);
425
+ await this.deleteGridConfigCache(name, resourceID);
404
426
  return this.gridConfigFetcher.saveConfig(config, name, resourceID);
405
427
  }
406
428
  static async loadPersonalizedFilter(filterId, resourceID, configName) {
407
- return this.personalizedFilterFetcher.loadPersonalizedFilter(resourceID, filterId, configName);
429
+ const legacyConfigName = this.filterBarLegacyConfig.get(configName);
430
+ return this.personalizedFilterFetcher.loadPersonalizedFilter(resourceID, filterId, configName, legacyConfigName);
408
431
  }
409
432
  static async savePersonalizedFilter(personalizedFilter, resourceID, configName) {
410
- //Ao criar ou alterar um filtro personalizado,
433
+ //Ao criar ou alterar um filtro personalizado,
411
434
  //precisamos remover o cache do status da filterbar.
412
- const cacheID = this.buildCacheID(configName, CONFIG_SOURCE.filterBar, resourceID);
413
- this.configById.delete(cacheID);
435
+ await this.deleteFilterBarConfigCache(configName, resourceID);
414
436
  return this.personalizedFilterFetcher.savePersonalizedFilter(personalizedFilter, resourceID, configName);
415
437
  }
416
438
  static async removePersonalizedFilter(personalizedFilter, resourceID, configName) {
@@ -419,6 +441,51 @@ class ConfigStorage {
419
441
  static async validatePersonalizedFilter(dataUnitName, expression) {
420
442
  return this.personalizedFilterFetcher.validatePersonalizedFilter(dataUnitName, expression);
421
443
  }
444
+ static async deleteGridConfigCache(name, resourceID) {
445
+ await this.deleteConfigCache(name, resourceID, CONFIG_SOURCE.grid);
446
+ }
447
+ static async deleteFormConfigCache(name, resourceID) {
448
+ await this.deleteConfigCache(name, resourceID, CONFIG_SOURCE.form);
449
+ }
450
+ static async deleteFilterBarConfigCache(name, resourceID) {
451
+ await this.deleteConfigCache(name, resourceID, CONFIG_SOURCE.filterBar);
452
+ }
453
+ static validateConfigName(configName, legacyConfigName) {
454
+ if (!configName)
455
+ throw Error(this.CONFIG_NAME_ERROR_MESSAGE);
456
+ if (!legacyConfigName)
457
+ throw Error(this.LEGACY_CONFIG_NAME_ERROR_MESSAGE);
458
+ }
459
+ static handleLegacyConfig(configName, configSource, urlParams) {
460
+ let legacyConfigName;
461
+ switch (configSource) {
462
+ case CONFIG_SOURCE.filterBar:
463
+ legacyConfigName = this.filterBarLegacyConfig.get(configName);
464
+ break;
465
+ case CONFIG_SOURCE.grid:
466
+ legacyConfigName = this.gridLegacyConfig.get(configName);
467
+ break;
468
+ case CONFIG_SOURCE.form:
469
+ legacyConfigName = this.formLegacyConfig.get(configName);
470
+ }
471
+ const params = urlParams ? Object.assign({}, urlParams) : {};
472
+ if (legacyConfigName) {
473
+ params['legacyResourceID'] = legacyConfigName;
474
+ }
475
+ return params;
476
+ }
477
+ static handleLegacyConfigAsString(name, source) {
478
+ const params = this.handleLegacyConfig(name, source);
479
+ const legacyResourceID = params['legacyResourceID'];
480
+ if (legacyResourceID) {
481
+ name = name + `?legacyResourceID=${legacyResourceID}`;
482
+ }
483
+ return name;
484
+ }
485
+ static async deleteConfigCache(name, resourceID, source) {
486
+ const cacheID = ConfigStorage.buildCacheID(name, source, resourceID);
487
+ this.configById.delete(cacheID);
488
+ }
422
489
  static buildCacheID(name, source, resourceID) {
423
490
  if (name == undefined) {
424
491
  return `req_${source}_${resourceID}`;
@@ -426,6 +493,11 @@ class ConfigStorage {
426
493
  return `req_${source}_${name}_${resourceID}`;
427
494
  }
428
495
  }
496
+ ConfigStorage.CONFIG_NAME_ERROR_MESSAGE = "ConfigName precisa ser informado.";
497
+ ConfigStorage.LEGACY_CONFIG_NAME_ERROR_MESSAGE = "LegacyConfigName precisa ser informado.";
498
+ ConfigStorage.filterBarLegacyConfig = new Map();
499
+ ConfigStorage.formLegacyConfig = new Map();
500
+ ConfigStorage.gridLegacyConfig = new Map();
429
501
  ConfigStorage.configById = new Map();
430
502
  ConfigStorage.filterBarConfigFetcher = new FilterBarConfigFetcher();
431
503
  ConfigStorage.formConfigFetcher = new FormConfigFetcher();