@sankhyalabs/sankhyablocks 10.1.0-dev.5 → 10.1.0-dev.51

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 (452) hide show
  1. package/LICENSE +4 -1
  2. package/dist/cjs/{ConfigStorage-72f34bd4.js → ConfigStorage-a1fab5ca.js} +19 -2
  3. package/dist/cjs/ContinuousInsertUtils-1ae0c6ac.js +41 -0
  4. package/dist/cjs/{DataFetcher-991b0349.js → DataFetcher-384d2ce8.js} +2 -2751
  5. package/dist/cjs/{FormConfigHelper-e253a418.js → FormConfigHelper-28fe4668.js} +3 -1
  6. package/dist/cjs/{ISave-ebf6b4ed.js → ISave-ecbe9336.js} +1 -1
  7. package/dist/cjs/ImageUtils-d6139911.js +144 -0
  8. package/dist/cjs/{PersonalizedFilterUtils-7259cf65.js → PersonalizedFilterUtils-eccb267a.js} +13 -0
  9. package/dist/cjs/{SnkFormConfigManager-cdbb29d4.js → SnkFormConfigManager-44386305.js} +5 -5
  10. package/dist/cjs/SnkMessageBuilder-a9300ebe.js +2833 -0
  11. package/dist/cjs/{SnkMultiSelectionListDataSource-011bec79.js → SnkMultiSelectionListDataSource-293bc3d2.js} +61 -47
  12. package/dist/cjs/{auth-fetcher-c3cac878.js → auth-fetcher-6b134ec4.js} +1 -1
  13. package/dist/cjs/config-header.cjs.entry.js +1 -1
  14. package/dist/cjs/configs-button.cjs.entry.js +1 -1
  15. package/dist/cjs/css-shim-a27d231b.js +6 -0
  16. package/dist/cjs/{dataunit-fetcher-8bf469e7.js → dataunit-fetcher-b9822794.js} +66 -6
  17. package/dist/cjs/dom-ff96a4bc.js +75 -0
  18. package/dist/cjs/field-config_2.cjs.entry.js +3 -3
  19. package/dist/cjs/fields-layout.cjs.entry.js +6 -6
  20. package/dist/cjs/fields-selector.cjs.entry.js +3 -3
  21. package/dist/cjs/{form-config-fetcher-c7af90d8.js → form-config-fetcher-45d1964c.js} +19 -1
  22. package/dist/cjs/guides-configurator.cjs.entry.js +3 -3
  23. package/dist/cjs/{index-1cf293c1.js → index-1894343a.js} +1529 -177
  24. package/dist/cjs/{index-13d05f03.js → index-f0fe7e6e.js} +90 -21
  25. package/dist/cjs/loader.cjs.js +16 -2
  26. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +6 -5
  27. package/dist/cjs/sankhyablocks.cjs.js +132 -4
  28. package/dist/cjs/shadow-css-7e3e0ab1.js +389 -0
  29. package/dist/cjs/snk-actions-button_9.cjs.entry.js +166 -116
  30. package/dist/cjs/snk-actions-form.cjs.entry.js +1 -1
  31. package/dist/cjs/snk-application.cjs.entry.js +29 -9
  32. package/dist/cjs/snk-attach.cjs.entry.js +63 -25
  33. package/dist/cjs/snk-client-confirm.cjs.entry.js +1 -1
  34. package/dist/cjs/snk-configurator.cjs.entry.js +3 -1
  35. package/dist/cjs/snk-crud.cjs.entry.js +350 -109
  36. package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +1 -1
  37. package/dist/cjs/snk-custom-slot-guide.cjs.entry.js +40 -0
  38. package/dist/cjs/snk-data-exporter.cjs.entry.js +9 -7
  39. package/dist/cjs/{snk-data-unit-7d587ad5.js → snk-data-unit-4b6dc396.js} +21 -12
  40. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -4
  41. package/dist/cjs/snk-default-filter.cjs.entry.js +1 -1
  42. package/dist/cjs/snk-detail-view.cjs.entry.js +27 -20
  43. package/dist/cjs/snk-entity-list.cjs.entry.js +1 -1
  44. package/dist/cjs/snk-entity-search.cjs.entry.js +211 -0
  45. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +2 -2
  46. package/dist/cjs/snk-expression-group_2.cjs.entry.js +2 -2
  47. package/dist/cjs/{snk-filter-advanced-mode_2.cjs.entry.js → snk-filter-advanced-mode_3.cjs.entry.js} +41 -3
  48. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +147 -94
  49. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  50. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  51. package/dist/cjs/snk-filter-detail.cjs.entry.js +3 -3
  52. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +2 -2
  53. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +5 -4
  54. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +1 -1
  55. package/dist/cjs/snk-filter-number.cjs.entry.js +11 -7
  56. package/dist/cjs/snk-filter-period.cjs.entry.js +14 -7
  57. package/dist/cjs/snk-filter-search.cjs.entry.js +1 -1
  58. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -2
  59. package/dist/cjs/snk-form-summary.cjs.entry.js +1 -1
  60. package/dist/cjs/snk-form-view.cjs.entry.js +70 -8
  61. package/dist/cjs/snk-form_2.cjs.entry.js +22 -11
  62. package/dist/cjs/snk-grid.cjs.entry.js +76 -34
  63. package/dist/cjs/{snk-guides-viewer-366d5c32.js → snk-guides-viewer-b4ca3437.js} +78 -214
  64. package/dist/cjs/snk-guides-viewer.cjs.entry.js +11 -18
  65. package/dist/cjs/snk-image-input.cjs.entry.js +160 -0
  66. package/dist/cjs/snk-layout-form-config.cjs.entry.js +72 -0
  67. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +1 -1
  68. package/dist/cjs/snk-personalized-filter.cjs.entry.js +8 -7
  69. package/dist/cjs/snk-pesquisa.cjs.entry.js +6 -6
  70. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  71. package/dist/cjs/snk-simple-crud.cjs.entry.js +30 -35
  72. package/dist/cjs/snk-taskbar.cjs.entry.js +183 -126
  73. package/dist/cjs/{sortable.esm-9a110bb7.js → sortable.esm-b87669ab.js} +76 -90
  74. package/dist/cjs/taskbar-elements-80eddec8.js +152 -0
  75. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  76. package/dist/collection/collection-manifest.json +9 -0
  77. package/dist/collection/components/snk-actions-button/actions/executor/launch-screen.executor.js +6 -3
  78. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -3
  79. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +1 -0
  80. package/dist/collection/components/snk-application/snk-application.js +20 -2
  81. package/dist/collection/components/snk-attach/snk-attach.css +29 -7
  82. package/dist/collection/components/snk-attach/snk-attach.js +94 -19
  83. package/dist/collection/components/snk-configurator/snk-configurator.js +2 -0
  84. package/dist/collection/components/snk-crud/snk-crud.css +50 -0
  85. package/dist/collection/components/snk-crud/snk-crud.js +165 -98
  86. package/dist/collection/components/snk-crud/subcomponents/GuideBuilder.js +1 -1
  87. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +15 -7
  88. package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.css +17 -0
  89. package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.js +330 -0
  90. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +90 -8
  91. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +22 -8
  92. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +90 -205
  93. package/dist/collection/components/snk-crud/utils/taskbarUtils.js +144 -0
  94. package/dist/collection/components/snk-custom-slot-guide/snk-custom-slot-guide.css +3 -0
  95. package/dist/collection/components/snk-custom-slot-guide/snk-custom-slot-guide.js +95 -0
  96. package/dist/collection/components/snk-data-exporter/exporter-email-sender/snk-exporter-email-sender.js +1 -1
  97. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +20 -1
  98. package/dist/collection/components/snk-data-unit/snk-data-unit.js +9 -0
  99. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +13 -9
  100. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +14 -7
  101. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +1 -1
  102. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +1 -1
  103. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.css +5 -1
  104. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +28 -2
  105. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +7 -1
  106. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +22 -8
  107. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +1 -6
  108. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +166 -78
  109. package/dist/collection/components/snk-form-config/FormConfigHelper.js +3 -1
  110. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +3 -3
  111. package/dist/collection/components/snk-form-config/field-item/field-config/field-config.css +1 -0
  112. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.css +16 -0
  113. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.js +4 -4
  114. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.css +3 -4
  115. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.js +2 -2
  116. package/dist/collection/components/snk-form-config/snk-form-config.js +15 -5
  117. package/dist/collection/components/snk-grid/snk-grid.css +24 -3
  118. package/dist/collection/components/snk-grid/snk-grid.js +183 -22
  119. package/dist/collection/components/snk-grid-config/snk-grid-config.js +153 -51
  120. package/dist/collection/components/snk-image-input/snk-image-input.css +3 -0
  121. package/dist/collection/components/snk-image-input/snk-image-input.js +338 -0
  122. package/dist/collection/components/snk-image-input/utils/ImageUtils.js +135 -0
  123. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +1 -1
  124. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +1 -1
  125. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +1 -1
  126. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.js +13 -0
  127. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +0 -4
  128. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +35 -23
  129. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +8 -0
  130. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +38 -2
  131. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +54 -37
  132. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +27 -1
  133. package/dist/collection/components/snk-taskbar/processor/simple-taskbar-processor.js +55 -0
  134. package/dist/collection/components/snk-taskbar/snk-taskbar.css +44 -1
  135. package/dist/collection/components/snk-taskbar/snk-taskbar.js +248 -132
  136. package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.css +12 -0
  137. package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.js +19 -0
  138. package/dist/collection/lib/configs/ConfigStorage.js +5 -0
  139. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +40 -3
  140. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +24 -2
  141. package/dist/collection/lib/http/data-fetcher/fetchers/grid-config-fetcher.js +12 -0
  142. package/dist/collection/lib/http/data-fetcher/fetchers/resource-fetcher.js +18 -0
  143. package/dist/collection/lib/message/SnkMessageBuilder.js +11 -2
  144. package/dist/collection/lib/message/messageResourceEnUSUtils.js +2 -0
  145. package/dist/collection/lib/message/messageResourceEsESUtils.js +2 -0
  146. package/dist/collection/lib/message/messageResourcePtBRUtils.js +2 -0
  147. package/dist/collection/lib/message/resources/en-us/snk-crud.msg.js +9 -1
  148. package/dist/collection/lib/message/resources/en-us/snk-form.msg.js +1 -0
  149. package/dist/collection/lib/message/resources/en-us/snk-image-input.msg.js +11 -0
  150. package/dist/collection/lib/message/resources/en-us/snk-layout-form-config.msg.js +10 -2
  151. package/dist/collection/lib/message/resources/es-es/snk-crud.msg.js +9 -1
  152. package/dist/collection/lib/message/resources/es-es/snk-form.msg.js +1 -0
  153. package/dist/collection/lib/message/resources/es-es/snk-image-input.msg.js +11 -0
  154. package/dist/collection/lib/message/resources/es-es/snk-layout-form-config.msg.js +8 -0
  155. package/dist/collection/lib/message/resources/pt-br/snk-configurator.msg.js +1 -1
  156. package/dist/collection/lib/message/resources/pt-br/snk-crud.msg.js +9 -1
  157. package/dist/collection/lib/message/resources/pt-br/snk-form.msg.js +1 -0
  158. package/dist/collection/lib/message/resources/pt-br/snk-image-input.msg.js +11 -0
  159. package/dist/collection/lib/message/resources/pt-br/snk-layout-form-config.msg.js +10 -2
  160. package/dist/components/ConfigStorage.js +17 -0
  161. package/dist/components/ContinuousInsertUtils.js +1 -1
  162. package/dist/components/DataFetcher.js +3 -2731
  163. package/dist/components/PersonalizedFilterUtils.js +13 -0
  164. package/dist/components/SnkFormConfigManager.js +3 -3
  165. package/dist/components/SnkMessageBuilder.js +2831 -0
  166. package/dist/components/dataunit-fetcher.js +65 -5
  167. package/dist/components/field-config2.js +4 -2
  168. package/dist/components/fields-layout2.js +4 -4
  169. package/dist/components/form-config-fetcher.js +18 -0
  170. package/dist/components/guides-configurator2.js +2 -2
  171. package/dist/components/index.d.ts +4 -0
  172. package/dist/components/index.js +4 -0
  173. package/dist/components/index2.js +90 -21
  174. package/dist/components/snk-actions-button2.js +12 -6
  175. package/dist/components/snk-application2.js +22 -2
  176. package/dist/components/snk-attach2.js +70 -28
  177. package/dist/components/snk-configurator2.js +2 -0
  178. package/dist/components/snk-crud.js +433 -176
  179. package/dist/components/snk-custom-slot-guide.d.ts +11 -0
  180. package/dist/components/snk-custom-slot-guide.js +55 -0
  181. package/dist/components/snk-data-exporter2.js +3 -1
  182. package/dist/components/snk-data-unit2.js +10 -1
  183. package/dist/components/snk-detail-view2.js +221 -318
  184. package/dist/components/snk-entity-search.d.ts +11 -0
  185. package/dist/components/snk-entity-search.js +6 -0
  186. package/dist/components/snk-entity-search2.js +231 -0
  187. package/dist/components/snk-exporter-email-sender2.js +1 -1
  188. package/dist/components/snk-filter-bar2.js +116 -80
  189. package/dist/components/snk-filter-detail2.js +1 -1
  190. package/dist/components/snk-filter-item2.js +9 -3
  191. package/dist/components/snk-filter-modal2.js +22 -9
  192. package/dist/components/snk-filter-number.js +12 -8
  193. package/dist/components/snk-filter-period.js +13 -6
  194. package/dist/components/snk-filter-text.js +1 -1
  195. package/dist/components/snk-form-config2.js +15 -5
  196. package/dist/components/snk-form-view2.js +79 -10
  197. package/dist/components/snk-grid-config2.js +109 -50
  198. package/dist/components/snk-grid2.js +116 -63
  199. package/dist/components/snk-image-input.d.ts +11 -0
  200. package/dist/components/snk-image-input.js +6 -0
  201. package/dist/components/snk-image-input2.js +316 -0
  202. package/dist/components/snk-layout-form-config2.js +1 -1
  203. package/dist/components/snk-personalized-filter2.js +1 -1
  204. package/dist/components/snk-pesquisa2.js +0 -1
  205. package/dist/components/snk-simple-crud2.js +47 -46
  206. package/dist/components/snk-taskbar-skeleton.d.ts +11 -0
  207. package/dist/components/snk-taskbar-skeleton.js +6 -0
  208. package/dist/components/snk-taskbar-skeleton2.js +29 -0
  209. package/dist/components/snk-taskbar2.js +256 -176
  210. package/dist/components/snk-view-representation2.js +1 -1
  211. package/dist/components/sortable.esm.js +76 -90
  212. package/dist/components/taskbar-actions-button2.js +21 -2
  213. package/dist/components/taskbar-split-button2.js +10 -1
  214. package/dist/esm/{ConfigStorage-22324b6b.js → ConfigStorage-76872695.js} +19 -2
  215. package/dist/esm/ContinuousInsertUtils-bce77dc1.js +39 -0
  216. package/dist/esm/{DataFetcher-450828a0.js → DataFetcher-e60f8d53.js} +3 -2731
  217. package/dist/esm/{FormConfigHelper-e89ca25c.js → FormConfigHelper-d09669f3.js} +3 -1
  218. package/dist/esm/{ISave-61153166.js → ISave-4929c071.js} +1 -1
  219. package/dist/esm/ImageUtils-efbea0e4.js +138 -0
  220. package/dist/esm/{PersonalizedFilterUtils-2db38ff2.js → PersonalizedFilterUtils-d2439a9a.js} +13 -0
  221. package/dist/esm/{SnkFormConfigManager-b5a92e12.js → SnkFormConfigManager-83f6b22f.js} +5 -5
  222. package/dist/esm/SnkMessageBuilder-1eb7a1af.js +2831 -0
  223. package/dist/esm/{SnkMultiSelectionListDataSource-d7ce2e54.js → SnkMultiSelectionListDataSource-f6cabd15.js} +55 -41
  224. package/dist/esm/{auth-fetcher-eef9d01e.js → auth-fetcher-1a31c1e4.js} +1 -1
  225. package/dist/esm/config-header.entry.js +1 -1
  226. package/dist/esm/configs-button.entry.js +1 -1
  227. package/dist/esm/css-shim-9f2d321e.js +4 -0
  228. package/dist/esm/{dataunit-fetcher-da9596f6.js → dataunit-fetcher-c176e002.js} +65 -5
  229. package/dist/esm/dom-64053c71.js +73 -0
  230. package/dist/esm/field-config_2.entry.js +3 -3
  231. package/dist/esm/fields-layout.entry.js +6 -6
  232. package/dist/esm/fields-selector.entry.js +3 -3
  233. package/dist/esm/{form-config-fetcher-8d0a5e1c.js → form-config-fetcher-b44b2727.js} +19 -1
  234. package/dist/esm/guides-configurator.entry.js +3 -3
  235. package/dist/esm/{index-479e1293.js → index-04f73a26.js} +1521 -177
  236. package/dist/esm/{index-446f9341.js → index-ea250be6.js} +90 -21
  237. package/dist/esm/loader.js +17 -3
  238. package/dist/esm/pesquisa-grid_2.entry.js +6 -5
  239. package/dist/esm/sankhyablocks.js +133 -5
  240. package/dist/esm/shadow-css-98135883.js +387 -0
  241. package/dist/esm/snk-actions-button_9.entry.js +167 -117
  242. package/dist/esm/snk-actions-form.entry.js +1 -1
  243. package/dist/esm/snk-application.entry.js +28 -8
  244. package/dist/esm/snk-attach.entry.js +62 -24
  245. package/dist/esm/snk-client-confirm.entry.js +1 -1
  246. package/dist/esm/snk-configurator.entry.js +3 -1
  247. package/dist/esm/snk-crud.entry.js +342 -101
  248. package/dist/esm/snk-custom-slot-elements.entry.js +1 -1
  249. package/dist/esm/snk-custom-slot-guide.entry.js +36 -0
  250. package/dist/esm/snk-data-exporter.entry.js +9 -7
  251. package/dist/esm/{snk-data-unit-99616a07.js → snk-data-unit-d8cfa950.js} +12 -3
  252. package/dist/esm/snk-data-unit.entry.js +5 -4
  253. package/dist/esm/snk-default-filter.entry.js +1 -1
  254. package/dist/esm/snk-detail-view.entry.js +25 -18
  255. package/dist/esm/snk-entity-list.entry.js +1 -1
  256. package/dist/esm/snk-entity-search.entry.js +207 -0
  257. package/dist/esm/snk-exporter-email-sender.entry.js +2 -2
  258. package/dist/esm/snk-expression-group_2.entry.js +2 -2
  259. package/dist/esm/{snk-filter-advanced-mode_2.entry.js → snk-filter-advanced-mode_3.entry.js} +41 -4
  260. package/dist/esm/snk-filter-bar_4.entry.js +148 -95
  261. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  262. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  263. package/dist/esm/snk-filter-detail.entry.js +3 -3
  264. package/dist/esm/snk-filter-field-search_2.entry.js +2 -2
  265. package/dist/esm/snk-filter-modal-item.entry.js +5 -4
  266. package/dist/esm/snk-filter-multi-select.entry.js +1 -1
  267. package/dist/esm/snk-filter-number.entry.js +11 -7
  268. package/dist/esm/snk-filter-period.entry.js +14 -7
  269. package/dist/esm/snk-filter-search.entry.js +1 -1
  270. package/dist/esm/snk-filter-text.entry.js +2 -2
  271. package/dist/esm/snk-form-summary.entry.js +1 -1
  272. package/dist/esm/snk-form-view.entry.js +71 -9
  273. package/dist/esm/snk-form_2.entry.js +22 -11
  274. package/dist/esm/snk-grid.entry.js +73 -31
  275. package/dist/esm/{snk-guides-viewer-240de636.js → snk-guides-viewer-cc37535b.js} +79 -215
  276. package/dist/esm/snk-guides-viewer.entry.js +11 -18
  277. package/dist/esm/snk-image-input.entry.js +156 -0
  278. package/dist/esm/snk-layout-form-config.entry.js +68 -0
  279. package/dist/esm/snk-personalized-filter-editor.entry.js +1 -1
  280. package/dist/esm/snk-personalized-filter.entry.js +8 -7
  281. package/dist/esm/snk-pesquisa.entry.js +6 -6
  282. package/dist/esm/snk-print-selector.entry.js +1 -1
  283. package/dist/esm/snk-simple-crud.entry.js +28 -33
  284. package/dist/esm/snk-taskbar.entry.js +184 -127
  285. package/dist/esm/{sortable.esm-842f85a3.js → sortable.esm-bc277c12.js} +76 -90
  286. package/dist/esm/taskbar-elements-63651ca7.js +149 -0
  287. package/dist/esm/teste-pesquisa.entry.js +1 -1
  288. package/dist/sankhyablocks/{p-7f7fe6c4.entry.js → p-0a160fb5.entry.js} +1 -1
  289. package/dist/sankhyablocks/p-0afc64df.entry.js +1 -0
  290. package/dist/sankhyablocks/p-10f27dc6.entry.js +1 -0
  291. package/dist/sankhyablocks/p-134702f6.entry.js +1 -0
  292. package/dist/sankhyablocks/{p-162bddae.entry.js → p-175c9576.entry.js} +1 -1
  293. package/dist/sankhyablocks/p-20f03230.entry.js +1 -0
  294. package/dist/sankhyablocks/p-26f1919e.entry.js +1 -0
  295. package/dist/sankhyablocks/p-2af8aca3.js +1 -0
  296. package/dist/sankhyablocks/p-2c9d0870.js +2 -0
  297. package/dist/sankhyablocks/{p-cb4343c4.entry.js → p-2cc2526e.entry.js} +1 -1
  298. package/dist/sankhyablocks/{p-75af335e.entry.js → p-2ebda226.entry.js} +1 -1
  299. package/dist/sankhyablocks/p-3072136e.js +1 -0
  300. package/dist/sankhyablocks/p-33492640.entry.js +1 -0
  301. package/dist/sankhyablocks/{p-002d4d2b.js → p-3704bf1b.js} +1 -1
  302. package/dist/sankhyablocks/p-3870748a.js +28 -0
  303. package/dist/sankhyablocks/p-3a35917e.entry.js +1 -0
  304. package/dist/sankhyablocks/{p-7d6f1285.js → p-3c990841.js} +2 -2
  305. package/dist/sankhyablocks/{p-49ddc27a.entry.js → p-438a225f.entry.js} +1 -1
  306. package/dist/sankhyablocks/p-4d04bc75.entry.js +1 -0
  307. package/dist/sankhyablocks/{p-840fb68c.js → p-4f7adf97.js} +2 -2
  308. package/dist/sankhyablocks/p-554c0e54.js +1 -0
  309. package/dist/sankhyablocks/{p-27482793.entry.js → p-5aae5c74.entry.js} +1 -1
  310. package/dist/sankhyablocks/p-68c1a093.js +1 -0
  311. package/dist/sankhyablocks/p-6ae7543b.entry.js +1 -0
  312. package/dist/sankhyablocks/p-6e278003.js +60 -0
  313. package/dist/sankhyablocks/{p-825098c1.entry.js → p-752c57f4.entry.js} +1 -1
  314. package/dist/sankhyablocks/{p-e258de96.entry.js → p-76729994.entry.js} +1 -1
  315. package/dist/sankhyablocks/p-771b137e.js +1 -0
  316. package/dist/sankhyablocks/p-77f608bc.entry.js +1 -0
  317. package/dist/sankhyablocks/p-82bcb4cf.entry.js +1 -0
  318. package/dist/sankhyablocks/p-855ccf64.entry.js +1 -0
  319. package/dist/sankhyablocks/{p-118c221e.js → p-8b4d6719.js} +1 -1
  320. package/dist/sankhyablocks/{p-3d41f5a8.entry.js → p-8d946600.entry.js} +1 -1
  321. package/dist/sankhyablocks/p-8fe740b7.entry.js +11 -0
  322. package/dist/sankhyablocks/{p-96d45943.entry.js → p-90ae6c2e.entry.js} +1 -1
  323. package/dist/sankhyablocks/p-95af0bb1.entry.js +1 -0
  324. package/dist/sankhyablocks/p-95b36bd3.entry.js +1 -0
  325. package/dist/sankhyablocks/{p-0b9a42ad.entry.js → p-9742ea0e.entry.js} +1 -1
  326. package/dist/sankhyablocks/{p-2fdac5e6.entry.js → p-9e109f5e.entry.js} +1 -1
  327. package/dist/sankhyablocks/p-9e77e136.js +1 -0
  328. package/dist/sankhyablocks/p-9e7dc97d.entry.js +1 -0
  329. package/dist/sankhyablocks/p-a2a9f520.entry.js +1 -0
  330. package/dist/sankhyablocks/p-a46ac091.js +1 -0
  331. package/dist/sankhyablocks/p-a73b6b00.js +1 -0
  332. package/dist/sankhyablocks/p-a905712a.entry.js +1 -0
  333. package/dist/sankhyablocks/{p-92cfc028.js → p-ab5e12fa.js} +1 -1
  334. package/dist/sankhyablocks/{p-180716b2.entry.js → p-ae326d06.entry.js} +1 -1
  335. package/dist/sankhyablocks/p-af673291.js +1 -0
  336. package/dist/sankhyablocks/p-aff2d081.entry.js +1 -0
  337. package/dist/sankhyablocks/p-b0a357b4.entry.js +1 -0
  338. package/dist/sankhyablocks/p-b555ce38.entry.js +1 -0
  339. package/dist/sankhyablocks/p-bab4cde4.entry.js +1 -0
  340. package/dist/sankhyablocks/p-c3ec6642.js +19 -0
  341. package/dist/sankhyablocks/p-ca3728c0.entry.js +1 -0
  342. package/dist/sankhyablocks/p-cbb8e351.js +7 -0
  343. package/dist/sankhyablocks/{p-c3dbf441.entry.js → p-cc64239c.entry.js} +1 -1
  344. package/dist/sankhyablocks/{p-471b34f4.entry.js → p-cd00a3d1.entry.js} +1 -1
  345. package/dist/sankhyablocks/p-ce8ccd72.entry.js +1 -0
  346. package/dist/sankhyablocks/{p-4c763b10.entry.js → p-d657f71f.entry.js} +1 -1
  347. package/dist/sankhyablocks/p-d9ec8c4b.entry.js +1 -0
  348. package/dist/sankhyablocks/p-da455c82.js +12 -0
  349. package/dist/sankhyablocks/p-e5a3711f.js +1 -0
  350. package/dist/sankhyablocks/{p-9a63f3f7.entry.js → p-e737fd5a.entry.js} +1 -1
  351. package/dist/sankhyablocks/p-e8df1dea.entry.js +1 -0
  352. package/dist/sankhyablocks/p-ee56dda6.entry.js +1 -0
  353. package/dist/sankhyablocks/p-ef9343c3.entry.js +1 -0
  354. package/dist/sankhyablocks/{p-667cab42.entry.js → p-f152ef98.entry.js} +1 -1
  355. package/dist/sankhyablocks/p-f1bbf065.entry.js +1 -0
  356. package/dist/sankhyablocks/p-f5ad0720.js +1 -0
  357. package/dist/sankhyablocks/{p-7e250432.entry.js → p-f7170e10.entry.js} +1 -1
  358. package/dist/sankhyablocks/{p-7345782c.entry.js → p-f921270b.entry.js} +1 -1
  359. package/dist/sankhyablocks/p-fec88660.entry.js +1 -0
  360. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  361. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +4 -0
  362. package/dist/types/components/snk-application/snk-application.d.ts +1 -1
  363. package/dist/types/components/snk-attach/snk-attach.d.ts +22 -4
  364. package/dist/types/components/snk-crud/snk-crud.d.ts +33 -11
  365. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +2 -2
  366. package/dist/types/components/snk-crud/subcomponents/snk-entity-search.d.ts +62 -0
  367. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +12 -0
  368. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +13 -25
  369. package/dist/types/components/snk-crud/utils/taskbarUtils.d.ts +13 -0
  370. package/dist/types/components/snk-custom-slot-guide/snk-custom-slot-guide.d.ts +16 -0
  371. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +4 -0
  372. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +1 -0
  373. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-number.d.ts +1 -1
  374. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-period.d.ts +1 -0
  375. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +5 -1
  376. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +2 -1
  377. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +33 -16
  378. package/dist/types/components/snk-form-config/FormConfigHelper.d.ts +1 -1
  379. package/dist/types/components/snk-form-config/fields-layout/fields-layout.d.ts +2 -2
  380. package/dist/types/components/snk-form-config/guides-configurator/guides-configurator.d.ts +1 -1
  381. package/dist/types/components/snk-form-config/snk-form-config.d.ts +2 -1
  382. package/dist/types/components/snk-grid/snk-grid.d.ts +30 -1
  383. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +11 -0
  384. package/dist/types/components/snk-image-input/snk-image-input.d.ts +57 -0
  385. package/dist/types/components/snk-image-input/utils/ImageUtils.d.ts +15 -0
  386. package/dist/types/components/snk-personalized-filter/interfaces/IParameter.d.ts +1 -0
  387. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +0 -1
  388. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +4 -1
  389. package/dist/types/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.d.ts +6 -0
  390. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +29 -2
  391. package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +5 -0
  392. package/dist/types/components/snk-taskbar/processor/simple-taskbar-processor.d.ts +31 -0
  393. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +32 -21
  394. package/dist/types/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.d.ts +3 -0
  395. package/dist/types/components.d.ts +347 -5
  396. package/dist/types/lib/configs/ConfigStorage.d.ts +1 -0
  397. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  398. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -1
  399. package/dist/types/lib/http/data-fetcher/fetchers/grid-config-fetcher.d.ts +1 -0
  400. package/dist/types/lib/http/data-fetcher/fetchers/resource-fetcher.d.ts +1 -0
  401. package/dist/types/lib/message/resources/en-us/snk-image-input.msg.d.ts +1 -0
  402. package/dist/types/lib/message/resources/es-es/snk-image-input.msg.d.ts +1 -0
  403. package/dist/types/lib/message/resources/pt-br/snk-image-input.msg.d.ts +1 -0
  404. package/package.json +7 -8
  405. package/react/components.d.ts +4 -0
  406. package/react/components.js +4 -0
  407. package/react/components.js.map +1 -1
  408. package/dist/cjs/snk-simple-bar.cjs.entry.js +0 -45
  409. package/dist/cjs/taskbar-elements-fb5d1e08.js +0 -132
  410. package/dist/cjs/taskbar-processor-2fba34a8.js +0 -53
  411. package/dist/esm/snk-simple-bar.entry.js +0 -41
  412. package/dist/esm/taskbar-elements-faaf5d8f.js +0 -129
  413. package/dist/esm/taskbar-processor-3436124c.js +0 -51
  414. package/dist/sankhyablocks/p-093f58fa.entry.js +0 -1
  415. package/dist/sankhyablocks/p-0948dc0a.entry.js +0 -11
  416. package/dist/sankhyablocks/p-1a0caadb.js +0 -1
  417. package/dist/sankhyablocks/p-1a9c5684.entry.js +0 -1
  418. package/dist/sankhyablocks/p-1d589380.entry.js +0 -1
  419. package/dist/sankhyablocks/p-21107f0d.entry.js +0 -1
  420. package/dist/sankhyablocks/p-28f50632.js +0 -1
  421. package/dist/sankhyablocks/p-39be771c.js +0 -1
  422. package/dist/sankhyablocks/p-3ed04f0d.entry.js +0 -1
  423. package/dist/sankhyablocks/p-4963dd2a.entry.js +0 -1
  424. package/dist/sankhyablocks/p-51833248.js +0 -7
  425. package/dist/sankhyablocks/p-55798617.js +0 -1
  426. package/dist/sankhyablocks/p-55f6fef2.entry.js +0 -1
  427. package/dist/sankhyablocks/p-56f16390.entry.js +0 -1
  428. package/dist/sankhyablocks/p-58683e28.js +0 -60
  429. package/dist/sankhyablocks/p-5ea893c5.entry.js +0 -1
  430. package/dist/sankhyablocks/p-60dd1d27.entry.js +0 -1
  431. package/dist/sankhyablocks/p-62aef37a.js +0 -1
  432. package/dist/sankhyablocks/p-62e9b9b8.entry.js +0 -1
  433. package/dist/sankhyablocks/p-669bb869.entry.js +0 -1
  434. package/dist/sankhyablocks/p-6ee2ca7a.entry.js +0 -1
  435. package/dist/sankhyablocks/p-7cac3870.entry.js +0 -1
  436. package/dist/sankhyablocks/p-86e54841.entry.js +0 -1
  437. package/dist/sankhyablocks/p-88b337fe.entry.js +0 -1
  438. package/dist/sankhyablocks/p-91005a00.entry.js +0 -1
  439. package/dist/sankhyablocks/p-91a9abb6.entry.js +0 -1
  440. package/dist/sankhyablocks/p-988afe78.js +0 -1
  441. package/dist/sankhyablocks/p-ada013c0.entry.js +0 -1
  442. package/dist/sankhyablocks/p-b7e891cc.entry.js +0 -1
  443. package/dist/sankhyablocks/p-b987e15d.js +0 -1
  444. package/dist/sankhyablocks/p-c35fc941.js +0 -26
  445. package/dist/sankhyablocks/p-c4fcf1fb.entry.js +0 -1
  446. package/dist/sankhyablocks/p-c98c79c3.entry.js +0 -1
  447. package/dist/sankhyablocks/p-cadf4846.entry.js +0 -1
  448. package/dist/sankhyablocks/p-d8d8169b.js +0 -2
  449. package/dist/sankhyablocks/p-e91c3c57.entry.js +0 -1
  450. package/dist/sankhyablocks/p-ea729922.entry.js +0 -1
  451. package/dist/sankhyablocks/p-ec5fbad8.js +0 -1
  452. package/dist/sankhyablocks/p-f5e942b7.entry.js +0 -1
@@ -1,11 +1,12 @@
1
1
  import { h, proxyCustomElement, HTMLElement, createEvent, Host } from '@stencil/core/internal/client';
2
- import { Action, ElementIDUtils, LockManager, LockManagerOperation, SilentException, StringUtils, ApplicationContext, OVERFLOWED_CLASS_NAME, OverflowWatcher, OverflowDirection } from '@sankhyalabs/core';
2
+ import { Action, ElementIDUtils, LockManager, LockManagerOperation, SilentException, StringUtils, OVERFLOWED_CLASS_NAME, OverflowWatcher, OverflowDirection, ApplicationContext } from '@sankhyalabs/core';
3
3
  import { P as PresentationMode } from './ISave.js';
4
4
  import { A as AuthorizationConfig } from './AuthorizationConfig.js';
5
5
  import { s as store } from './index2.js';
6
- import { d as defineCustomElement$5 } from './snk-actions-button2.js';
7
- import { d as defineCustomElement$4 } from './snk-data-exporter2.js';
8
- import { d as defineCustomElement$3 } from './snk-exporter-email-sender2.js';
6
+ import { d as defineCustomElement$6 } from './snk-actions-button2.js';
7
+ import { d as defineCustomElement$5 } from './snk-data-exporter2.js';
8
+ import { d as defineCustomElement$4 } from './snk-exporter-email-sender2.js';
9
+ import { d as defineCustomElement$3 } from './snk-taskbar-skeleton2.js';
9
10
  import { d as defineCustomElement$2 } from './taskbar-actions-button2.js';
10
11
  import { d as defineCustomElement$1 } from './taskbar-split-button2.js';
11
12
 
@@ -24,6 +25,7 @@ var TaskbarElement;
24
25
  TaskbarElement["FORM_MODE"] = "FORM_MODE";
25
26
  TaskbarElement["MORE_OPTIONS"] = "MORE_OPTIONS";
26
27
  TaskbarElement["DIVIDER"] = "DIVIDER";
28
+ TaskbarElement["SPACER"] = "SPACER";
27
29
  TaskbarElement["CONFIGURATOR"] = "CONFIGURATOR";
28
30
  TaskbarElement["DATA_EXPORTER"] = "DATA_EXPORTER";
29
31
  TaskbarElement["ATTACH"] = "ATTACH";
@@ -42,98 +44,117 @@ var VisibleWhenForbidden;
42
44
  (function (VisibleWhenForbidden) {
43
45
  VisibleWhenForbidden["CONFIGURATOR"] = "CONFIGURATOR";
44
46
  })(VisibleWhenForbidden || (VisibleWhenForbidden = {}));
45
- const buildCustomButton = (def, className, dataElementId, action, isEnabled) => {
47
+ const buildCustomButton = ({ def, className, dataElementId, action, isEnabled, size }) => {
46
48
  const { hint, text, iconName } = def;
47
49
  if (iconName) {
48
50
  if (text) {
49
- return iconTextButton(iconName, def.name, className, dataElementId, hint, text, action, isEnabled);
51
+ return iconTextButton({ iconName, element: def.name, className, dataElementId, title: hint, action, isEnabled, size });
50
52
  }
51
53
  else {
52
- return iconButton(iconName, def.name, className, dataElementId, hint, action, isEnabled);
54
+ return iconButton({ iconName, element: def.name, className, dataElementId, title: hint, action, isEnabled, size });
53
55
  }
54
56
  }
55
57
  else {
56
- return textButton(def.name, className, dataElementId, text, hint, action, isEnabled);
58
+ return textButton({ element: def.name, className, dataElementId, title: hint, action, isEnabled, size });
57
59
  }
58
60
  };
59
- const buildElem = (element, className, dataElementId, getTitle, action, isEnabled, actions, dataExporterStoreKey, presentationMode) => {
60
- var _a;
61
+ const buildElem = ({ element, className, dataElementId, getTitle, action, isEnabled, actions, dataExporterStoreKey, presentationMode, variant, size }) => {
62
+ var _a, _b;
61
63
  const title = getTitle(element);
64
+ const propertiesItem = {
65
+ element, className, dataElementId, title, action, isEnabled, actions, variant, size
66
+ };
62
67
  switch (element) {
63
68
  case TaskbarElement.PREVIOUS:
64
- return iconButton("chevron-left", element, className, dataElementId, title, action, isEnabled);
69
+ return iconButton(Object.assign({ iconName: "chevron-left" }, propertiesItem));
65
70
  case TaskbarElement.NEXT:
66
- return iconButton("chevron-right", element, className, dataElementId, title, action, isEnabled);
71
+ return iconButton(Object.assign({ iconName: "chevron-right" }, propertiesItem));
67
72
  case TaskbarElement.REFRESH:
68
- return iconButton("sync", element, className, dataElementId, title, action, isEnabled);
73
+ return iconButton(Object.assign({ iconName: "sync" }, propertiesItem));
69
74
  case TaskbarElement.UPDATE:
70
- return iconButton("edit", element, className, dataElementId, title, action, isEnabled);
75
+ return iconButton(Object.assign({ iconName: "edit" }, propertiesItem));
71
76
  case TaskbarElement.UPDATE_MULTIPLE:
72
- return iconButton("edit-table", element, className, dataElementId, title, action, isEnabled);
77
+ return iconButton(Object.assign({ iconName: "edit-table" }, propertiesItem));
73
78
  case TaskbarElement.CLONE:
74
- return iconButton("copy", element, className, dataElementId, title, action, isEnabled);
79
+ return iconButton(Object.assign({ iconName: "copy" }, propertiesItem));
75
80
  case TaskbarElement.REMOVE:
76
- return iconButton("delete", element, className, dataElementId, title, action, isEnabled);
81
+ return iconButton(Object.assign({ iconName: "delete" }, propertiesItem));
77
82
  case TaskbarElement.INSERT:
78
83
  if (presentationMode === PresentationMode.PRIMARY) {
79
- return iconTextButton("plus", element, className, dataElementId, title, title, action, isEnabled);
84
+ return textButton(Object.assign({}, propertiesItem));
80
85
  }
81
86
  else {
82
- return iconButton("plus", element, className, dataElementId, title, action, isEnabled);
87
+ return iconButton(Object.assign({ iconName: "plus" }, propertiesItem));
83
88
  }
84
89
  case TaskbarElement.CANCEL:
85
- return textButton(element, className, dataElementId, title, title, action, isEnabled);
90
+ return textButton(Object.assign({}, propertiesItem));
86
91
  case TaskbarElement.SAVE:
87
92
  if (presentationMode === PresentationMode.PRIMARY) {
88
- return iconTextButton("save", element, className, dataElementId, title, title, action, isEnabled);
93
+ return iconTextButton(Object.assign(Object.assign({ iconName: "save" }, propertiesItem), { variant: "primary" }));
89
94
  }
90
95
  else {
91
- return iconButton("save", element, className, dataElementId, title, action, isEnabled);
96
+ return iconButton(Object.assign(Object.assign({ iconName: "save" }, propertiesItem), { variant: "primary" }));
92
97
  }
93
98
  case TaskbarElement.GRID_MODE:
94
- return iconButton("table", element, className, dataElementId, title, action, isEnabled);
99
+ return iconButton(Object.assign({ iconName: "table" }, propertiesItem));
95
100
  case TaskbarElement.FORM_MODE:
96
- return iconButton("list", element, className, dataElementId, title, action, isEnabled);
101
+ return iconButton(Object.assign({ iconName: "list" }, propertiesItem));
97
102
  case TaskbarElement.CONFIGURATOR:
98
103
  if ((actions === null || actions === void 0 ? void 0 : actions.length) > 0) {
99
- return splitButton("settings-inverted", element, className, title, dataElementId, isEnabled, actions, action);
104
+ return splitButton(Object.assign({ iconName: "settings-inverted" }, propertiesItem));
100
105
  }
101
- return iconButton("settings-inverted", element, className, dataElementId, title, action, isEnabled);
106
+ return iconButton(Object.assign({ iconName: "settings-inverted" }, propertiesItem));
102
107
  case TaskbarElement.MORE_OPTIONS:
103
- return actionButton(element, className, dataElementId, title, isEnabled, actions, action);
108
+ const definedActions = (_a = actions === null || actions === void 0 ? void 0 : actions.filter(a => a !== undefined)) !== null && _a !== void 0 ? _a : [];
109
+ return actionButton(Object.assign(Object.assign({}, propertiesItem), { actions: definedActions }));
104
110
  case TaskbarElement.DIVIDER:
105
111
  return h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin--none ez-margin-left--medium", "data-taskbar-divider": true });
106
112
  case TaskbarElement.DATA_EXPORTER:
107
- const provider = (_a = store.get("exporterProviders")) === null || _a === void 0 ? void 0 : _a[dataExporterStoreKey];
108
- return h("snk-data-exporter", { class: className, provider: provider, "data-element-id": dataElementId, "data-taskbar-element": element });
113
+ const provider = (_b = store.get("exporterProviders")) === null || _b === void 0 ? void 0 : _b[dataExporterStoreKey];
114
+ return h("snk-data-exporter", { class: className, provider: provider, "data-element-id": dataElementId, "data-taskbar-element": element, size: size });
109
115
  case TaskbarElement.ATTACH:
110
- return iconButton("anexo", element, className, dataElementId, title, action, isEnabled);
116
+ return iconButton(Object.assign({ iconName: "anexo" }, propertiesItem));
111
117
  case TaskbarElement.ACTIONS_BUTTON:
112
- return h("snk-actions-button", { "data-element-id": dataElementId, "data-taskbar-element": element });
118
+ return h("snk-actions-button", { "data-element-id": dataElementId, "data-taskbar-element": element, class: className, size: size });
113
119
  }
114
120
  };
115
- function textButton(name, className, dataElementId, text, title, action, isEnabled) {
116
- 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) });
121
+ function textButton({ action, className, dataElementId, title, element, isEnabled, variant, size }) {
122
+ return (h("ez-tooltip", { key: dataElementId, message: title, class: className },
123
+ h("ez-button", { label: title, "data-taskbar-label": title, "data-taskbar-element": element, "data-element-id": dataElementId, isDisabled: !isEnabled(element), onClick: () => action(element), variant: variant, size: size })));
117
124
  }
118
- function iconButton(iconName, name, className, dataElementId, title, action, isEnabled) {
119
- 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) });
125
+ function concatClass(className) {
126
+ if (typeof className === "string") {
127
+ return className;
128
+ }
129
+ else {
130
+ return Object.keys(className).filter(key => className[key]).join(" ");
131
+ }
132
+ }
133
+ function iconButton({ iconName, element, className, dataElementId, title, action, isEnabled, variant, size }) {
134
+ return (h("ez-tooltip", { key: dataElementId, message: title, class: {
135
+ [concatClass(className)]: true,
136
+ [`icon-button--${size}`]: true
137
+ } },
138
+ h("ez-button", { mode: "icon", "data-taskbar-label": title, "data-taskbar-element": element, "data-taskbar-icon": iconName, "data-element-id": dataElementId, iconName: iconName, isDisabled: !isEnabled(element), onClick: () => action(element), variant: variant, size: size })));
120
139
  }
121
- function iconTextButton(iconName, name, className, dataElementId, text, title, action, isEnabled) {
122
- 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) },
123
- h("ez-icon", { class: "ez-padding-right--small", slot: "leftIcon", iconName: iconName }));
140
+ function iconTextButton({ iconName, element, className, dataElementId, title, action, isEnabled, variant, size }) {
141
+ return (h("ez-tooltip", { key: dataElementId, message: title, class: className },
142
+ h("ez-button", { label: title, "data-taskbar-label": title, "data-taskbar-icon": iconName, "data-taskbar-element": element, "data-element-id": dataElementId, isDisabled: !isEnabled(element), onClick: () => action(element), variant: variant, size: size },
143
+ h("ez-icon", { class: "ez-padding-right--small", slot: "leftIcon", iconName: iconName }))));
124
144
  }
125
- function splitButton(iconName, element, className, title, dataElementId, isEnabled, actions, action) {
145
+ function splitButton({ iconName, element, className, title, dataElementId, isEnabled, actions, action, size }) {
126
146
  return actions && actions.length > 0
127
- ? h("taskbar-split-button", { iconName: iconName, class: className, key: dataElementId, "data-taskbar-icon": iconName, "data-taskbar-label": title, "data-taskbar-element": element, "data-element-id": dataElementId, enabled: isEnabled(element), actions: actions, title: title, action: () => action(element) })
147
+ ?
148
+ h("taskbar-split-button", { key: dataElementId, class: className, iconName: iconName, "data-taskbar-icon": iconName, "data-taskbar-label": title, title: title, "data-taskbar-element": element, "data-element-id": dataElementId, enabled: isEnabled(element), actions: actions, action: () => action(element), size: size })
128
149
  : undefined;
129
150
  }
130
- function actionButton(element, className, dataElementId, title, isEnabled, actions, action) {
151
+ function actionButton({ element, className, dataElementId, title, isEnabled, actions, action, size }) {
131
152
  return actions && actions.length > 0
132
- ? 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) })
153
+ ? 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), size: size })
133
154
  : undefined;
134
155
  }
135
156
 
136
- 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}";
157
+ const snkTaskbarCss = ".sc-snk-taskbar-h{display:flex;flex-wrap:nowrap}.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}.taskbar-element.sc-snk-taskbar{width:auto}.space-between-item.sc-snk-taskbar{margin-left:var(--space--8, 8px)}.icon-button--small.sc-snk-taskbar{width:32px;height:32px}.icon-button--medium.sc-snk-taskbar{width:42px;height:42px}.icon-button--large.sc-snk-taskbar{width:46px;height:46px}.taskbar-spacer.sc-snk-taskbar{flex:1}.taskbar-group.sc-snk-taskbar{display:flex;flex-wrap:wrap;min-width:0}.taskbar-group--start.sc-snk-taskbar{flex:1 1 auto;justify-content:flex-start}.taskbar-group--end.sc-snk-taskbar{flex:0 0 auto;justify-content:flex-end}";
137
158
 
138
159
  const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
139
160
  constructor() {
@@ -149,6 +170,10 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
149
170
  this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME = 'taskbar-additional-slot-container';
150
171
  this.TASKBAR_ADDITIONAL_SLOT = 'taskbar-additional-slot-container';
151
172
  this._dataUnitInitialized = false;
173
+ this._permissions = {};
174
+ this._customElements = new Map();
175
+ this._customElementsId = [];
176
+ this._overFlowedElements = [];
152
177
  this._titleKeyByElement = {
153
178
  [TaskbarElement.UPDATE_MULTIPLE]: "snkTaskbar.titleUpdateMultiple",
154
179
  [TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
@@ -180,15 +205,9 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
180
205
  break;
181
206
  }
182
207
  };
183
- this._permissions = undefined;
184
- this._overFlowedElements = [];
185
- this._customElements = undefined;
186
- this._customElementsId = undefined;
187
- this._slotContainer = undefined;
188
208
  this._hiddenActionsList = [];
189
- this._lastWidth = undefined;
190
- this._hasToUpdateOverFlow = false;
191
209
  this._isWaitingForSave = false;
210
+ this._isLoading = true;
192
211
  this.alignRigth = false;
193
212
  this.customSlotId = "TASKBAR_CUSTOM_ELEMENTS";
194
213
  this.additionalSlotId = "TASKBAR_ADDITIONAL_SLOT";
@@ -200,11 +219,14 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
200
219
  this.customButtons = undefined;
201
220
  this.actionsList = undefined;
202
221
  this.actionsSettingsList = undefined;
222
+ this.customActionsList = undefined;
203
223
  this.primaryButton = undefined;
204
224
  this.disabledButtons = undefined;
205
225
  this.dataUnit = undefined;
206
226
  this.presentationMode = PresentationMode.PRIMARY;
207
227
  this.messagesBuilder = undefined;
228
+ this.disableSkeleton = false;
229
+ this.sizeButtons = 'small';
208
230
  }
209
231
  handleCustomSlotElementsLoaded(event) {
210
232
  if (this.hasToSearchCustomElements(event)) {
@@ -225,19 +247,10 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
225
247
  return this.customSlotId === event.detail && !this._slotContainer;
226
248
  }
227
249
  observeButtons() {
228
- this._definitions = undefined;
229
- requestAnimationFrame(() => {
230
- requestAnimationFrame(() => { var _a; return (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate(); });
231
- });
250
+ this.handleDefinitions();
232
251
  }
233
252
  observeDisabledButtons() {
234
- var _a;
235
- (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate();
236
- }
237
- observeLastWidth(newValue, oldValue) {
238
- if (oldValue === 0 && newValue !== 0) {
239
- this._hasToUpdateOverFlow = true;
240
- }
253
+ this.handleDefinitions();
241
254
  }
242
255
  observeIsWaitingForSave(newValue, oldValue) {
243
256
  if (newValue == true && oldValue == false) {
@@ -250,7 +263,7 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
250
263
  observeDataUnit(newValue) {
251
264
  this.initializeDataUnit(newValue);
252
265
  }
253
- initializeDataUnit(dataUnit) {
266
+ initializeDataUnit(dataUnit = this.dataUnit) {
254
267
  if (!!dataUnit && !this._dataUnitInitialized) {
255
268
  this._dataUnitInitialized = true;
256
269
  const dataInfo = { dataUnit: this.dataUnit };
@@ -258,7 +271,6 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
258
271
  this.dataUnit.subscribe(this.onSaveEvent);
259
272
  }
260
273
  }
261
- // Internal methods
262
274
  elementsFromString(strButtons) {
263
275
  const elements = [];
264
276
  if (strButtons == null)
@@ -272,15 +284,17 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
272
284
  return elements;
273
285
  }
274
286
  isAllowed(buttonName) {
287
+ if (!this._permissions) {
288
+ return false;
289
+ }
290
+ if (this._permissions.isSup) {
291
+ return true;
292
+ }
275
293
  if (buttonName === AuthorizationElements.CONFIGURATOR) {
276
- return this._permissions
277
- ? this._permissions.isSup
278
- || this._permissions[AuthorizationConfig.CONFIG_GRID]
279
- || this._permissions[AuthorizationConfig.CONFIG]
280
- : false;
294
+ return this._permissions[AuthorizationConfig.CONFIG_GRID] || this._permissions[AuthorizationConfig.CONFIG];
281
295
  }
282
296
  if (AuthorizationElements[buttonName]) {
283
- return this._permissions ? this._permissions.isSup || this._permissions[buttonName] : false;
297
+ return this._permissions[buttonName];
284
298
  }
285
299
  return true;
286
300
  }
@@ -354,32 +368,54 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
354
368
  }
355
369
  return !(this.disabledButtons && this.disabledButtons.includes(elem));
356
370
  }
357
- validatePresentationMode() {
358
- if (Object.values(PresentationMode).includes(this.presentationMode)) {
359
- return;
360
- }
361
- this.presentationMode = PresentationMode.PRIMARY;
362
- }
363
371
  getElement(index, def) {
364
- let className = def === this.primaryButton ? "ez-button--primary " : "";
365
- if (index > 1) {
366
- className += "ez-padding-left--medium";
367
- }
372
+ const className = {
373
+ "taskbar-element": true,
374
+ "space-between-item": index > 0
375
+ };
368
376
  const taskbarElement = TaskbarElement[def.toString()];
369
377
  const dataExporterStoreKey = this._element.dataset.exporterStoreKey || this.configName;
370
378
  if (taskbarElement) {
371
- return buildElem(def, className, this.getIdElemBtnNative(def), elem => this.getTitle(elem), elem => this.elementClick(elem), elem => this.isEnabled(elem), def !== TaskbarElement.CONFIGURATOR ? this.buildDynamicActionsList() : this.buildActionsSettingsList(), dataExporterStoreKey, this.presentationMode);
379
+ return buildElem({
380
+ element: def,
381
+ className,
382
+ dataElementId: this.getIdElemBtnNative(def),
383
+ getTitle: elem => this.getTitle(elem),
384
+ action: elem => this.elementClick(elem),
385
+ isEnabled: elem => this.isEnabled(elem),
386
+ actions: def !== TaskbarElement.CONFIGURATOR ? this.buildDynamicActionsList() : this.buildActionsSettingsList(),
387
+ dataExporterStoreKey,
388
+ presentationMode: this.presentationMode,
389
+ variant: def === this.primaryButton ? "primary" : "secondary",
390
+ size: this.sizeButtons,
391
+ });
372
392
  }
373
393
  else {
374
- return buildCustomButton(def, className, this.getIdElemBtnCustom(def), elem => this.elementClick(elem), elem => this.isEnabled(elem));
394
+ return buildCustomButton({
395
+ def: def,
396
+ className,
397
+ dataElementId: this.getIdElemBtnCustom(def),
398
+ action: elem => this.elementClick(elem),
399
+ isEnabled: elem => this.isEnabled(elem),
400
+ size: this.sizeButtons
401
+ });
375
402
  }
376
403
  }
404
+ buildDivider() {
405
+ return { value: '', label: '', type: 'divider' };
406
+ }
377
407
  buildDynamicActionsList() {
378
- var _a;
408
+ var _a, _b;
409
+ const customActions = [...((_a = this.customActionsList) !== null && _a !== void 0 ? _a : [])].filter(a => a !== undefined);
410
+ const defaultActionsList = [...((_b = this.actionsList) !== null && _b !== void 0 ? _b : [])].filter(a => a !== undefined);
411
+ if (customActions.length > 0 && defaultActionsList.length > 0) {
412
+ customActions.push(this.buildDivider());
413
+ }
414
+ const combinedList = [...customActions, ...defaultActionsList];
379
415
  if (this._hiddenActionsList.length) {
380
- return [...((_a = this.actionsList) !== null && _a !== void 0 ? _a : []), ...this._hiddenActionsList];
416
+ return [...combinedList, ...this._hiddenActionsList];
381
417
  }
382
- return this.actionsList;
418
+ return combinedList;
383
419
  }
384
420
  buildActionsSettingsList() {
385
421
  return this.actionsSettingsList;
@@ -449,38 +485,12 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
449
485
  else {
450
486
  slotContainer = this._element.querySelector(`#${this.customSlotId}`);
451
487
  }
452
- // Caso nõa encontre o slot container dentro do próprio elemento, tenta buscar na DOM do document.
488
+ // Caso não encontre o slot container dentro do próprio elemento, tenta buscar na DOM do document.
453
489
  if (searchOnDocument && !slotContainer) {
454
490
  slotContainer = document.querySelector(`#${this.customSlotId}`);
455
491
  }
456
492
  return slotContainer;
457
493
  }
458
- componentWillLoad() {
459
- this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
460
- if (this._application) {
461
- this._application.getAllAccess(this.resourceID).then(access => this._permissions = access);
462
- }
463
- else {
464
- this._permissions = {};
465
- }
466
- this.getCustomElements();
467
- }
468
- componentWillRender() {
469
- this.handleDefinitions();
470
- this.validatePresentationMode();
471
- this.updateOverFlowIfNeeded();
472
- }
473
- handleDefinitions() {
474
- if (this._definitions == undefined && this._permissions) {
475
- this._definitions = this.elementsFromString(this.buttons);
476
- }
477
- }
478
- updateOverFlowIfNeeded() {
479
- if (this._hasToUpdateOverFlow) {
480
- requestAnimationFrame(() => { var _a; return (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate(); });
481
- this._hasToUpdateOverFlow = false;
482
- }
483
- }
484
494
  handleOverFlow(overFlowingElements) {
485
495
  const elementsToHandle = overFlowingElements.filter(element => !this.hasToIgnoreOverFlow(element));
486
496
  this.resetOverFlowedElements();
@@ -500,28 +510,38 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
500
510
  this.addItemToActionList(element);
501
511
  });
502
512
  }
513
+ getAttributeFromName(element, attributeName) {
514
+ var _a;
515
+ if (!element) {
516
+ console.warn(`[snk-taskbar] Tentativa de acessar atributo "${attributeName}" em elemento nulo.`);
517
+ return "";
518
+ }
519
+ let attributeValue = element.getAttribute(attributeName);
520
+ if (!attributeValue && ((_a = element.tagName) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === 'ez-tooltip') {
521
+ const innerButton = element.querySelector('ez-button');
522
+ if (innerButton) {
523
+ attributeValue = innerButton.getAttribute(attributeName);
524
+ }
525
+ }
526
+ return attributeValue !== null && attributeValue !== void 0 ? attributeValue : "";
527
+ }
503
528
  addItemToActionList(element) {
504
- const taskbarElement = this.getTaskbarElementName(element);
529
+ const taskbarElement = this.getAttributeFromName(element, 'data-taskbar-element');
505
530
  if (taskbarElement && this.isEnabled(taskbarElement) && this.isAllowed(taskbarElement)) {
506
531
  const optionItem = {
507
532
  value: taskbarElement,
508
- label: this.getTaskbarElementLabel(element),
509
- iconName: this.getTaskbarElementIcon(element)
533
+ label: this.getAttributeFromName(element, 'data-taskbar-label'),
534
+ iconName: this.getIconName(element)
510
535
  };
511
536
  this._hiddenActionsList.push(optionItem);
512
537
  }
513
538
  }
514
- getTaskbarElementName(element) {
515
- var _a;
516
- return (_a = element.getAttribute('data-taskbar-element')) !== null && _a !== void 0 ? _a : "";
517
- }
518
- getTaskbarElementIcon(element) {
519
- var _a;
520
- return (_a = element.getAttribute('data-taskbar-icon')) !== null && _a !== void 0 ? _a : "";
521
- }
522
- getTaskbarElementLabel(element) {
523
- var _a;
524
- return (_a = element.getAttribute('data-taskbar-label')) !== null && _a !== void 0 ? _a : "";
539
+ getIconName(element) {
540
+ const taskbarElement = this.getAttributeFromName(element, 'data-taskbar-element');
541
+ if (taskbarElement === TaskbarElement.INSERT) {
542
+ return "plus";
543
+ }
544
+ return this.getAttributeFromName(element, 'data-taskbar-icon');
525
545
  }
526
546
  hasToIgnoreOverFlow(element) {
527
547
  return element.classList.contains(this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME) ||
@@ -540,22 +560,34 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
540
560
  notOverFlow: this.NOT_OVERFLOW_ELEMENTS
541
561
  };
542
562
  }
543
- componentDidLoad() {
544
- this.initializeDataUnit(this.dataUnit);
545
- this.handleOverFlowStrategy();
546
- }
547
- componentDidRender() {
548
- this.appendCustomElementsInTaskbar();
549
- this.updateLastWidth();
550
- }
551
- updateLastWidth() {
552
- this._lastWidth = this._element.getBoundingClientRect().width;
563
+ handleDefinitions() {
564
+ if (!this._permissions) {
565
+ return;
566
+ }
567
+ this._definitions = this.elementsFromString(this.buttons);
568
+ requestAnimationFrame(() => {
569
+ requestAnimationFrame(() => {
570
+ var _a;
571
+ (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate();
572
+ });
573
+ });
553
574
  }
554
- disconnectedCallback() {
555
- var _a, _b;
556
- (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.unsubscribe(this.onSaveEvent);
557
- this.unlinkAllCustomElements();
558
- (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.destroy();
575
+ async getAccess() {
576
+ if (!this._application) {
577
+ this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
578
+ }
579
+ if (!this._application) {
580
+ console.warn('[snk-taskbar] Application context não encontrado. Permissões serão vazias.');
581
+ this._permissions = {};
582
+ return;
583
+ }
584
+ try {
585
+ this._permissions = await this._application.getAllAccess(this.resourceID);
586
+ }
587
+ catch (error) {
588
+ console.error('[snk-taskbar] Erro ao obter permissões:', error);
589
+ this._permissions = {};
590
+ }
559
591
  }
560
592
  unlinkAllCustomElements() {
561
593
  var _a;
@@ -568,40 +600,86 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
568
600
  unlinkCustomElementFromTaskbar(customElement) {
569
601
  this._slotContainer.appendChild(customElement);
570
602
  }
571
- render() {
572
- var _a, _b;
573
- if (this._definitions === undefined) {
574
- return undefined;
575
- }
576
- let index = 0;
577
- return (h(Host, { class: this.getHostClasses() }, this.removeEmpty(this._definitions.map((elem) => {
578
- var _a, _b;
579
- index++;
580
- if (TaskbarElement[elem]) {
581
- return this.getElement(index, TaskbarElement[elem]);
582
- }
583
- if ((_a = this.customButtons) === null || _a === void 0 ? void 0 : _a.has(elem)) {
584
- return this.getElement(index, this.customButtons.get(elem));
585
- }
586
- if (this._customElements.has(elem)) {
587
- return this.addCustomElementContainer(elem);
588
- }
589
- (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.addNotOverFlowElement(elem);
590
- return h("slot", { name: elem });
591
- })), h("div", { id: this.TASKBAR_CUSTOM_ELEMENTS, class: this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME }, h("slot", { name: this.customSlotId }), (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 :
592
- _a.addNotOverFlowElement(this.TASKBAR_CUSTOM_ELEMENTS)), h("div", { id: this.TASKBAR_ADDITIONAL_SLOT, class: this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME }, h("slot", { name: this.additionalSlotId }), (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 :
593
- _b.addNotOverFlowElement(this.TASKBAR_ADDITIONAL_SLOT))));
594
- }
595
603
  getHostClasses() {
596
604
  if (this.overflowStrategy !== 'hiddenItems')
597
605
  return 'no-wrap';
598
606
  return `full-width ${this.alignRigth ? 'align-right' : ""}`;
599
607
  }
608
+ connectedCallback() {
609
+ this.initializeDataUnit();
610
+ this.handleOverFlowStrategy();
611
+ this.getCustomElements();
612
+ }
613
+ async componentWillLoad() {
614
+ this._isLoading = true;
615
+ try {
616
+ await this.getAccess();
617
+ this.handleDefinitions();
618
+ }
619
+ catch (error) {
620
+ console.error('[snk-taskbar] Erro ao obter permissões de acesso:', error);
621
+ }
622
+ finally {
623
+ this._isLoading = false;
624
+ }
625
+ }
626
+ componentDidRender() {
627
+ this.appendCustomElementsInTaskbar();
628
+ }
629
+ disconnectedCallback() {
630
+ var _a, _b;
631
+ (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.unsubscribe(this.onSaveEvent);
632
+ this.unlinkAllCustomElements();
633
+ (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.destroy();
634
+ }
635
+ renderTaskbarElement(elem, index) {
636
+ var _a, _b;
637
+ if (TaskbarElement[elem]) {
638
+ return this.getElement(index, TaskbarElement[elem]);
639
+ }
640
+ if ((_a = this.customButtons) === null || _a === void 0 ? void 0 : _a.has(elem)) {
641
+ return this.getElement(index, this.customButtons.get(elem));
642
+ }
643
+ if (this._customElements.has(elem)) {
644
+ return this.addCustomElementContainer(elem);
645
+ }
646
+ (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.addNotOverFlowElement(elem);
647
+ return h("slot", { name: elem });
648
+ }
649
+ renderElements() {
650
+ var _a, _b;
651
+ const spacerIndex = (_a = this._definitions) === null || _a === void 0 ? void 0 : _a.indexOf(TaskbarElement.SPACER);
652
+ const hasSpacerElement = spacerIndex !== undefined && spacerIndex !== -1;
653
+ if (!hasSpacerElement) {
654
+ const arrayOfElements = (_b = this._definitions) === null || _b === void 0 ? void 0 : _b.map((elem, index) => this.renderTaskbarElement(elem, index));
655
+ return this.removeEmpty(arrayOfElements);
656
+ }
657
+ // Split elements into before and after spacer
658
+ const elementsBeforeSpacer = this._definitions.slice(0, spacerIndex);
659
+ const elementsAfterSpacer = this._definitions.slice(spacerIndex + 1);
660
+ const beforeElements = elementsBeforeSpacer.map((elem, index) => this.renderTaskbarElement(elem, index));
661
+ const afterElements = elementsAfterSpacer.map((elem, index) => this.renderTaskbarElement(elem, index + spacerIndex + 1));
662
+ return [
663
+ h("div", { class: "taskbar-group taskbar-group--start" }, this.removeEmpty(beforeElements)),
664
+ h("div", { class: "taskbar-group taskbar-group--end" }, this.removeEmpty(afterElements))
665
+ ];
666
+ }
667
+ render() {
668
+ var _a, _b;
669
+ if (!this._definitions) {
670
+ return;
671
+ }
672
+ if (this._isLoading && !this.disableSkeleton) {
673
+ return (h(Host, { class: this.getHostClasses() }, h("snk-taskbar-skeleton", null)));
674
+ }
675
+ return (h(Host, { class: this.getHostClasses() }, this.renderElements(), h("div", { id: this.TASKBAR_CUSTOM_ELEMENTS, class: this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME }, h("slot", { name: this.customSlotId }), (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 :
676
+ _a.addNotOverFlowElement(this.TASKBAR_CUSTOM_ELEMENTS)), h("div", { id: this.TASKBAR_ADDITIONAL_SLOT, class: this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME }, h("slot", { name: this.additionalSlotId }), (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 :
677
+ _b.addNotOverFlowElement(this.TASKBAR_ADDITIONAL_SLOT))));
678
+ }
600
679
  get _element() { return this; }
601
680
  static get watchers() { return {
602
681
  "buttons": ["observeButtons"],
603
682
  "disabledButtons": ["observeDisabledButtons"],
604
- "_lastWidth": ["observeLastWidth"],
605
683
  "_isWaitingForSave": ["observeIsWaitingForSave"],
606
684
  "dataUnit": ["observeDataUnit"]
607
685
  }; }
@@ -618,26 +696,23 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
618
696
  "customButtons": [16],
619
697
  "actionsList": [16],
620
698
  "actionsSettingsList": [16],
699
+ "customActionsList": [16],
621
700
  "primaryButton": [1, "primary-button"],
622
701
  "disabledButtons": [16],
623
702
  "dataUnit": [16],
624
703
  "presentationMode": [1537, "presentation-mode"],
625
704
  "messagesBuilder": [1040],
626
- "_permissions": [32],
627
- "_overFlowedElements": [32],
628
- "_customElements": [32],
629
- "_customElementsId": [32],
630
- "_slotContainer": [32],
705
+ "disableSkeleton": [4, "disable-skeleton"],
706
+ "sizeButtons": [1, "size-buttons"],
631
707
  "_hiddenActionsList": [32],
632
- "_lastWidth": [32],
633
- "_hasToUpdateOverFlow": [32],
634
- "_isWaitingForSave": [32]
708
+ "_isWaitingForSave": [32],
709
+ "_isLoading": [32]
635
710
  }, [[8, "snkCustomSlotElementsLoaded", "handleCustomSlotElementsLoaded"], [8, "taskbarSaveLocker", "handleTaskbarSaveLocker"], [8, "taskbarSaveUnlocker", "handleTaskbarSaveUnlocker"]]]);
636
711
  function defineCustomElement() {
637
712
  if (typeof customElements === "undefined") {
638
713
  return;
639
714
  }
640
- const components = ["snk-taskbar", "snk-actions-button", "snk-data-exporter", "snk-exporter-email-sender", "taskbar-actions-button", "taskbar-split-button"];
715
+ const components = ["snk-taskbar", "snk-actions-button", "snk-data-exporter", "snk-exporter-email-sender", "snk-taskbar-skeleton", "taskbar-actions-button", "taskbar-split-button"];
641
716
  components.forEach(tagName => { switch (tagName) {
642
717
  case "snk-taskbar":
643
718
  if (!customElements.get(tagName)) {
@@ -646,15 +721,20 @@ function defineCustomElement() {
646
721
  break;
647
722
  case "snk-actions-button":
648
723
  if (!customElements.get(tagName)) {
649
- defineCustomElement$5();
724
+ defineCustomElement$6();
650
725
  }
651
726
  break;
652
727
  case "snk-data-exporter":
653
728
  if (!customElements.get(tagName)) {
654
- defineCustomElement$4();
729
+ defineCustomElement$5();
655
730
  }
656
731
  break;
657
732
  case "snk-exporter-email-sender":
733
+ if (!customElements.get(tagName)) {
734
+ defineCustomElement$4();
735
+ }
736
+ break;
737
+ case "snk-taskbar-skeleton":
658
738
  if (!customElements.get(tagName)) {
659
739
  defineCustomElement$3();
660
740
  }