@sankhyalabs/sankhyablocks 10.1.0-dev.6 → 10.1.0-dev.61

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 (590) hide show
  1. package/LICENSE +4 -1
  2. package/dist/cjs/{ConfigStorage-72f34bd4.js → ConfigStorage-156bfcac.js} +19 -2
  3. package/dist/cjs/ContinuousInsertUtils-1ae0c6ac.js +41 -0
  4. package/dist/cjs/{DataFetcher-991b0349.js → DataFetcher-d13b4637.js} +121 -69
  5. package/dist/cjs/{FormConfigHelper-e253a418.js → FormConfigHelper-28fe4668.js} +3 -1
  6. package/dist/cjs/FormConfigHelper-c5f5473a.js +342 -0
  7. package/dist/cjs/{ISave-ebf6b4ed.js → ISave-55d9dcc3.js} +1 -1
  8. package/dist/cjs/ImageUtils-d6139911.js +144 -0
  9. package/dist/cjs/{PersonalizedFilterUtils-7259cf65.js → PersonalizedFilterUtils-263e4d24.js} +65 -5
  10. package/dist/cjs/{SnkFormConfigManager-cdbb29d4.js → SnkFormConfigManager-5cb9a39c.js} +5 -5
  11. package/dist/cjs/{SnkMultiSelectionListDataSource-011bec79.js → SnkMultiSelectionListDataSource-5c5badfc.js} +146 -74
  12. package/dist/cjs/{auth-fetcher-c3cac878.js → auth-fetcher-d1715459.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-fae710c5.js} +91 -110
  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/{filter-type.enum-2bb46d2a.js → filter-type.enum-b3b388af.js} +7 -0
  22. package/dist/cjs/{form-config-fetcher-c7af90d8.js → form-config-fetcher-bbebdcb8.js} +41 -5
  23. package/dist/cjs/guides-configurator.cjs.entry.js +3 -3
  24. package/dist/cjs/{index-1cf293c1.js → index-1894343a.js} +1547 -207
  25. package/dist/cjs/{index-e3e39724.js → index-bc950921.js} +6 -0
  26. package/dist/cjs/{index-13d05f03.js → index-f0fe7e6e.js} +90 -21
  27. package/dist/cjs/loader.cjs.js +16 -2
  28. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +6 -6
  29. package/dist/cjs/sankhyablocks.cjs.js +132 -4
  30. package/dist/cjs/shadow-css-7e3e0ab1.js +389 -0
  31. package/dist/cjs/snk-actions-button_9.cjs.entry.js +169 -120
  32. package/dist/cjs/snk-actions-form.cjs.entry.js +1 -1
  33. package/dist/cjs/snk-application.cjs.entry.js +28 -9
  34. package/dist/cjs/snk-attach_11.cjs.entry.js +2971 -0
  35. package/dist/cjs/snk-client-confirm.cjs.entry.js +1 -1
  36. package/dist/cjs/snk-configurator.cjs.entry.js +3 -1
  37. package/dist/cjs/snk-crud.cjs.entry.js +149 -102
  38. package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +1 -1
  39. package/dist/cjs/snk-custom-slot-guide.cjs.entry.js +40 -0
  40. package/dist/cjs/snk-data-exporter.cjs.entry.js +62 -16
  41. package/dist/cjs/{snk-data-unit-7d587ad5.js → snk-data-unit-32237a2d.js} +12 -3
  42. package/dist/cjs/snk-data-unit.cjs.entry.js +4 -4
  43. package/dist/cjs/snk-detail-view.cjs.entry.js +32 -20
  44. package/dist/cjs/snk-dynaform-config-header_5.cjs.entry.js +739 -0
  45. package/dist/cjs/snk-dynaform-detail-view_2.cjs.entry.js +961 -0
  46. package/dist/cjs/snk-dynaform-field-config_2.cjs.entry.js +327 -0
  47. package/dist/cjs/snk-dynaform-guides-view-2c7c6ce4.js +1094 -0
  48. package/dist/cjs/snk-dynaform-guides-view.cjs.entry.js +23 -0
  49. package/dist/cjs/snk-dynaform.cjs.entry.js +679 -0
  50. package/dist/cjs/snk-entity-list.cjs.entry.js +1 -1
  51. package/dist/cjs/snk-entity-search.cjs.entry.js +211 -0
  52. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +2 -2
  53. package/dist/cjs/{snk-expression-group_2.cjs.entry.js → snk-expression-group_4.cjs.entry.js} +422 -19
  54. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +175 -121
  55. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  56. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  57. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +1 -1
  58. package/dist/cjs/snk-filter-number.cjs.entry.js +11 -7
  59. package/dist/cjs/snk-filter-period.cjs.entry.js +14 -7
  60. package/dist/cjs/snk-filter-search.cjs.entry.js +11 -1
  61. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -2
  62. package/dist/cjs/snk-form-summary.cjs.entry.js +1 -1
  63. package/dist/cjs/snk-form-view.cjs.entry.js +70 -8
  64. package/dist/cjs/snk-form_2.cjs.entry.js +21 -11
  65. package/dist/cjs/snk-grid.cjs.entry.js +91 -36
  66. package/dist/cjs/{snk-guides-viewer-366d5c32.js → snk-guides-viewer-67b9cca9.js} +78 -214
  67. package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -18
  68. package/dist/cjs/snk-layout-form-config.cjs.entry.js +71 -0
  69. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +1 -1
  70. package/dist/cjs/snk-pesquisa.cjs.entry.js +6 -7
  71. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  72. package/dist/cjs/snk-taskbar.cjs.entry.js +184 -127
  73. package/dist/cjs/{sortable.esm-9a110bb7.js → sortable.esm-b87669ab.js} +76 -90
  74. package/dist/cjs/taskbar-elements-25f800b3.js +152 -0
  75. package/dist/cjs/taskbarUtils-99aaa01f.js +236 -0
  76. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  77. package/dist/collection/collection-manifest.json +26 -0
  78. package/dist/collection/components/snk-actions-button/actions/executor/launch-screen.executor.js +6 -3
  79. package/dist/collection/components/snk-actions-button/snk-actions-button.js +30 -6
  80. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +1 -0
  81. package/dist/collection/components/snk-application/snk-application.js +20 -2
  82. package/dist/collection/components/snk-attach/snk-attach.css +29 -7
  83. package/dist/collection/components/snk-attach/snk-attach.js +93 -18
  84. package/dist/collection/components/snk-configurator/snk-configurator.js +2 -0
  85. package/dist/collection/components/snk-crud/snk-crud.css +55 -0
  86. package/dist/collection/components/snk-crud/snk-crud.js +169 -98
  87. package/dist/collection/components/snk-crud/subcomponents/GuideBuilder.js +1 -1
  88. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +4 -1
  89. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +21 -7
  90. package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.css +17 -0
  91. package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.js +330 -0
  92. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +90 -8
  93. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +22 -8
  94. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +89 -204
  95. package/dist/collection/components/snk-crud/utils/taskbarUtils.js +163 -0
  96. package/dist/collection/components/snk-custom-slot-guide/snk-custom-slot-guide.css +3 -0
  97. package/dist/collection/components/snk-custom-slot-guide/snk-custom-slot-guide.js +95 -0
  98. package/dist/collection/components/snk-data-exporter/exporter-email-sender/snk-exporter-email-sender.js +1 -1
  99. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +2 -2
  100. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +78 -23
  101. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +28 -5
  102. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +43 -2
  103. package/dist/collection/components/snk-data-unit/snk-data-unit.js +9 -0
  104. package/dist/collection/components/snk-dynaform/interfaces/PropsCustomEditor.js +1 -0
  105. package/dist/collection/components/snk-dynaform/interfaces/PropsCustomRender.js +1 -0
  106. package/dist/collection/components/snk-dynaform/snk-dynaform.css +69 -0
  107. package/dist/collection/components/snk-dynaform/snk-dynaform.js +1661 -0
  108. package/dist/collection/components/snk-dynaform/subcomponents/CardFormResizeObserver.js +26 -0
  109. package/dist/collection/components/snk-dynaform/subcomponents/GuideBuilder.js +51 -0
  110. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.css +182 -0
  111. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.js +1015 -0
  112. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.css +98 -0
  113. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.js +590 -0
  114. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.css +321 -0
  115. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.js +1587 -0
  116. package/dist/collection/components/snk-dynaform-form-config/FormConfigHelper.js +325 -0
  117. package/dist/collection/components/snk-dynaform-form-config/SnkFormConfigManager.js +219 -0
  118. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.css +17 -0
  119. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.js +236 -0
  120. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.css +41 -0
  121. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.js +170 -0
  122. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.css +22 -0
  123. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.js +408 -0
  124. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-item.css +88 -0
  125. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-item.js +209 -0
  126. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.css +167 -0
  127. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.js +655 -0
  128. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.css +42 -0
  129. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.js +171 -0
  130. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-form-config.css +66 -0
  131. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-form-config.js +557 -0
  132. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.css +80 -0
  133. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.js +326 -0
  134. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +12 -8
  135. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +14 -7
  136. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +30 -0
  137. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +1 -1
  138. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +10 -4
  139. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.css +5 -1
  140. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +28 -2
  141. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +7 -1
  142. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +27 -9
  143. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +33 -0
  144. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +1 -6
  145. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +166 -78
  146. package/dist/collection/components/snk-form-config/FormConfigHelper.js +3 -1
  147. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +3 -3
  148. package/dist/collection/components/snk-form-config/field-item/field-config/field-config.css +1 -0
  149. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.css +16 -0
  150. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.js +4 -4
  151. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.css +3 -4
  152. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.js +2 -2
  153. package/dist/collection/components/snk-form-config/snk-form-config.js +15 -5
  154. package/dist/collection/components/snk-grid/snk-grid.css +33 -5
  155. package/dist/collection/components/snk-grid/snk-grid.js +199 -24
  156. package/dist/collection/components/snk-grid-config/snk-grid-config.js +153 -51
  157. package/dist/collection/components/snk-image-input/snk-image-input.css +3 -0
  158. package/dist/collection/components/snk-image-input/snk-image-input.js +338 -0
  159. package/dist/collection/components/snk-image-input/utils/ImageUtils.js +135 -0
  160. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +1 -1
  161. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +1 -1
  162. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +1 -1
  163. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.js +13 -0
  164. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +0 -4
  165. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +34 -22
  166. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +8 -0
  167. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +38 -2
  168. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +54 -37
  169. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +27 -1
  170. package/dist/collection/components/snk-taskbar/processor/simple-taskbar-processor.js +55 -0
  171. package/dist/collection/components/snk-taskbar/snk-taskbar.css +44 -1
  172. package/dist/collection/components/snk-taskbar/snk-taskbar.js +248 -132
  173. package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.css +12 -0
  174. package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.js +19 -0
  175. package/dist/collection/lib/@types/index.js +6 -0
  176. package/dist/collection/lib/configs/ConfigStorage.js +5 -0
  177. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +1 -1
  178. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +51 -4
  179. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +24 -2
  180. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +15 -104
  181. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +22 -4
  182. package/dist/collection/lib/http/data-fetcher/fetchers/grid-config-fetcher.js +12 -0
  183. package/dist/collection/lib/http/data-fetcher/fetchers/resource-fetcher.js +18 -0
  184. package/dist/collection/lib/message/SnkMessageBuilder.js +11 -2
  185. package/dist/collection/lib/message/messageResourceEnUSUtils.js +2 -0
  186. package/dist/collection/lib/message/messageResourceEsESUtils.js +2 -0
  187. package/dist/collection/lib/message/messageResourcePtBRUtils.js +2 -0
  188. package/dist/collection/lib/message/resources/en-us/dataUnitDataLoaderHelper.msg.js +0 -13
  189. package/dist/collection/lib/message/resources/en-us/snk-crud.msg.js +13 -1
  190. package/dist/collection/lib/message/resources/en-us/snk-form.msg.js +1 -0
  191. package/dist/collection/lib/message/resources/en-us/snk-image-input.msg.js +11 -0
  192. package/dist/collection/lib/message/resources/en-us/snk-layout-form-config.msg.js +10 -2
  193. package/dist/collection/lib/message/resources/es-es/dataUnitDataLoaderHelper.msg.js +0 -13
  194. package/dist/collection/lib/message/resources/es-es/snk-crud.msg.js +13 -1
  195. package/dist/collection/lib/message/resources/es-es/snk-form.msg.js +1 -0
  196. package/dist/collection/lib/message/resources/es-es/snk-image-input.msg.js +11 -0
  197. package/dist/collection/lib/message/resources/es-es/snk-layout-form-config.msg.js +8 -0
  198. package/dist/collection/lib/message/resources/pt-br/dataUnitDataLoaderHelper.msg.js +0 -13
  199. package/dist/collection/lib/message/resources/pt-br/snk-configurator.msg.js +1 -1
  200. package/dist/collection/lib/message/resources/pt-br/snk-crud.msg.js +13 -1
  201. package/dist/collection/lib/message/resources/pt-br/snk-form.msg.js +1 -0
  202. package/dist/collection/lib/message/resources/pt-br/snk-image-input.msg.js +11 -0
  203. package/dist/collection/lib/message/resources/pt-br/snk-layout-form-config.msg.js +10 -2
  204. package/dist/collection/lib/utils/CrudUtils.js +7 -4
  205. package/dist/components/ConfigStorage.js +17 -0
  206. package/dist/components/ContinuousInsertUtils.js +86 -28
  207. package/dist/components/DataFetcher.js +3 -2731
  208. package/dist/components/ISave.js +6 -0
  209. package/dist/components/PersonalizedFilterUtils.js +13 -0
  210. package/dist/components/SnkFormConfigManager.js +3 -3
  211. package/dist/components/SnkMessageBuilder.js +2804 -0
  212. package/dist/components/dataunit-fetcher.js +91 -110
  213. package/dist/components/field-config2.js +4 -2
  214. package/dist/components/fields-layout2.js +4 -4
  215. package/dist/components/form-config-fetcher.js +40 -4
  216. package/dist/components/guides-configurator2.js +2 -2
  217. package/dist/components/index.d.ts +16 -0
  218. package/dist/components/index.js +16 -0
  219. package/dist/components/index2.js +90 -21
  220. package/dist/components/snk-actions-button2.js +15 -9
  221. package/dist/components/snk-application2.js +22 -2
  222. package/dist/components/snk-attach2.js +69 -27
  223. package/dist/components/snk-configurator2.js +2 -0
  224. package/dist/components/snk-crud.js +240 -176
  225. package/dist/components/snk-custom-slot-guide.d.ts +11 -0
  226. package/dist/components/snk-custom-slot-guide.js +55 -0
  227. package/dist/components/snk-data-exporter2.js +56 -9
  228. package/dist/components/snk-data-unit2.js +10 -1
  229. package/dist/components/snk-detail-view2.js +227 -318
  230. package/dist/components/snk-dynaform-config-header.d.ts +11 -0
  231. package/dist/components/snk-dynaform-config-header.js +6 -0
  232. package/dist/components/snk-dynaform-config-header2.js +103 -0
  233. package/dist/components/snk-dynaform-configs-button.d.ts +11 -0
  234. package/dist/components/snk-dynaform-configs-button.js +6 -0
  235. package/dist/components/snk-dynaform-configs-button2.js +76 -0
  236. package/dist/components/snk-dynaform-detail-view.d.ts +11 -0
  237. package/dist/components/snk-dynaform-detail-view.js +6 -0
  238. package/dist/components/snk-dynaform-detail-view2.js +2213 -0
  239. package/dist/components/snk-dynaform-field-config.d.ts +11 -0
  240. package/dist/components/snk-dynaform-field-config.js +6 -0
  241. package/dist/components/snk-dynaform-field-config2.js +605 -0
  242. package/dist/components/snk-dynaform-field-item.d.ts +11 -0
  243. package/dist/components/snk-dynaform-field-item.js +6 -0
  244. package/dist/components/snk-dynaform-field-item2.js +96 -0
  245. package/dist/components/snk-dynaform-fields-layout.d.ts +11 -0
  246. package/dist/components/snk-dynaform-fields-layout.js +6 -0
  247. package/dist/components/snk-dynaform-fields-layout2.js +428 -0
  248. package/dist/components/snk-dynaform-fields-selector.d.ts +11 -0
  249. package/dist/components/snk-dynaform-fields-selector.js +6 -0
  250. package/dist/components/snk-dynaform-fields-selector2.js +104 -0
  251. package/dist/components/snk-dynaform-form-config.d.ts +11 -0
  252. package/dist/components/snk-dynaform-form-config.js +6 -0
  253. package/dist/components/snk-dynaform-form-config2.js +430 -0
  254. package/dist/components/snk-dynaform-form-view.d.ts +11 -0
  255. package/dist/components/snk-dynaform-form-view.js +6 -0
  256. package/dist/components/snk-dynaform-form-view2.js +272 -0
  257. package/dist/components/snk-dynaform-guides-configurator.d.ts +11 -0
  258. package/dist/components/snk-dynaform-guides-configurator.js +6 -0
  259. package/dist/components/snk-dynaform-guides-configurator2.js +173 -0
  260. package/dist/components/snk-dynaform-guides-view.d.ts +11 -0
  261. package/dist/components/snk-dynaform-guides-view.js +6 -0
  262. package/dist/components/snk-dynaform.d.ts +11 -0
  263. package/dist/components/snk-dynaform.js +1007 -0
  264. package/dist/components/snk-entity-search.d.ts +11 -0
  265. package/dist/components/snk-entity-search.js +6 -0
  266. package/dist/components/snk-entity-search2.js +231 -0
  267. package/dist/components/snk-exporter-email-sender2.js +1 -1
  268. package/dist/components/snk-filter-bar2.js +116 -80
  269. package/dist/components/snk-filter-detail2.js +10 -4
  270. package/dist/components/snk-filter-item2.js +9 -3
  271. package/dist/components/snk-filter-modal-item2.js +15 -1
  272. package/dist/components/snk-filter-modal2.js +27 -10
  273. package/dist/components/snk-filter-number.js +11 -7
  274. package/dist/components/snk-filter-period.js +13 -6
  275. package/dist/components/snk-filter-search.js +12 -1
  276. package/dist/components/snk-filter-text.js +1 -1
  277. package/dist/components/snk-form-config2.js +15 -5
  278. package/dist/components/snk-form-view2.js +79 -10
  279. package/dist/components/snk-grid-config2.js +109 -50
  280. package/dist/components/snk-grid2.js +132 -65
  281. package/dist/components/snk-image-input.d.ts +11 -0
  282. package/dist/components/snk-image-input.js +6 -0
  283. package/dist/components/snk-image-input2.js +316 -0
  284. package/dist/components/snk-layout-form-config2.js +1 -1
  285. package/dist/components/snk-personalized-filter2.js +1 -1
  286. package/dist/components/snk-pesquisa2.js +0 -1
  287. package/dist/components/snk-simple-crud2.js +46 -45
  288. package/dist/components/snk-taskbar-skeleton.d.ts +11 -0
  289. package/dist/components/snk-taskbar-skeleton.js +6 -0
  290. package/dist/components/snk-taskbar-skeleton2.js +29 -0
  291. package/dist/components/snk-taskbar2.js +256 -176
  292. package/dist/components/snk-view-representation2.js +1 -1
  293. package/dist/components/sortable.esm.js +76 -90
  294. package/dist/components/taskbar-actions-button2.js +21 -2
  295. package/dist/components/taskbar-split-button2.js +10 -1
  296. package/dist/components/taskbarUtils.js +229 -0
  297. package/dist/esm/{ConfigStorage-22324b6b.js → ConfigStorage-0d1c0695.js} +19 -2
  298. package/dist/esm/ContinuousInsertUtils-bce77dc1.js +39 -0
  299. package/dist/esm/{DataFetcher-450828a0.js → DataFetcher-70de9419.js} +121 -49
  300. package/dist/esm/{FormConfigHelper-e89ca25c.js → FormConfigHelper-d09669f3.js} +3 -1
  301. package/dist/esm/FormConfigHelper-efc29480.js +328 -0
  302. package/dist/esm/{ISave-61153166.js → ISave-f5704813.js} +1 -1
  303. package/dist/esm/ImageUtils-efbea0e4.js +138 -0
  304. package/dist/esm/{PersonalizedFilterUtils-2db38ff2.js → PersonalizedFilterUtils-45b5803c.js} +62 -2
  305. package/dist/esm/{SnkFormConfigManager-b5a92e12.js → SnkFormConfigManager-e7f05f79.js} +5 -5
  306. package/dist/esm/{SnkMultiSelectionListDataSource-d7ce2e54.js → SnkMultiSelectionListDataSource-6ac291a9.js} +141 -69
  307. package/dist/esm/{auth-fetcher-eef9d01e.js → auth-fetcher-e34880e5.js} +1 -1
  308. package/dist/esm/config-header.entry.js +1 -1
  309. package/dist/esm/configs-button.entry.js +1 -1
  310. package/dist/esm/css-shim-9f2d321e.js +4 -0
  311. package/dist/esm/{dataunit-fetcher-da9596f6.js → dataunit-fetcher-d26e4a08.js} +91 -110
  312. package/dist/esm/dom-64053c71.js +73 -0
  313. package/dist/esm/field-config_2.entry.js +3 -3
  314. package/dist/esm/fields-layout.entry.js +6 -6
  315. package/dist/esm/fields-selector.entry.js +3 -3
  316. package/dist/esm/{filter-type.enum-f6a8fe23.js → filter-type.enum-62b7fe88.js} +8 -1
  317. package/dist/esm/{form-config-fetcher-8d0a5e1c.js → form-config-fetcher-98c42169.js} +41 -5
  318. package/dist/esm/guides-configurator.entry.js +3 -3
  319. package/dist/esm/{index-479e1293.js → index-04f73a26.js} +1539 -207
  320. package/dist/esm/{index-b40568ff.js → index-c6721886.js} +6 -0
  321. package/dist/esm/{index-446f9341.js → index-ea250be6.js} +90 -21
  322. package/dist/esm/loader.js +17 -3
  323. package/dist/esm/pesquisa-grid_2.entry.js +6 -6
  324. package/dist/esm/sankhyablocks.js +133 -5
  325. package/dist/esm/shadow-css-98135883.js +387 -0
  326. package/dist/esm/snk-actions-button_9.entry.js +170 -121
  327. package/dist/esm/snk-actions-form.entry.js +1 -1
  328. package/dist/esm/snk-application.entry.js +28 -9
  329. package/dist/esm/snk-attach_11.entry.js +2957 -0
  330. package/dist/esm/snk-client-confirm.entry.js +1 -1
  331. package/dist/esm/snk-configurator.entry.js +3 -1
  332. package/dist/esm/snk-crud.entry.js +149 -102
  333. package/dist/esm/snk-custom-slot-elements.entry.js +1 -1
  334. package/dist/esm/snk-custom-slot-guide.entry.js +36 -0
  335. package/dist/esm/snk-data-exporter.entry.js +62 -16
  336. package/dist/esm/{snk-data-unit-99616a07.js → snk-data-unit-ff57ac90.js} +12 -3
  337. package/dist/esm/snk-data-unit.entry.js +4 -4
  338. package/dist/esm/snk-detail-view.entry.js +32 -20
  339. package/dist/esm/snk-dynaform-config-header_5.entry.js +731 -0
  340. package/dist/esm/snk-dynaform-detail-view_2.entry.js +956 -0
  341. package/dist/esm/snk-dynaform-field-config_2.entry.js +322 -0
  342. package/dist/esm/snk-dynaform-guides-view-0dfbefc1.js +1091 -0
  343. package/dist/esm/snk-dynaform-guides-view.entry.js +15 -0
  344. package/dist/esm/snk-dynaform.entry.js +675 -0
  345. package/dist/esm/snk-entity-list.entry.js +1 -1
  346. package/dist/esm/snk-entity-search.entry.js +207 -0
  347. package/dist/esm/snk-exporter-email-sender.entry.js +2 -2
  348. package/dist/esm/{snk-expression-group_2.entry.js → snk-expression-group_4.entry.js} +407 -6
  349. package/dist/esm/snk-filter-bar_4.entry.js +153 -99
  350. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  351. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  352. package/dist/esm/snk-filter-multi-select.entry.js +1 -1
  353. package/dist/esm/snk-filter-number.entry.js +11 -7
  354. package/dist/esm/snk-filter-period.entry.js +14 -7
  355. package/dist/esm/snk-filter-search.entry.js +11 -1
  356. package/dist/esm/snk-filter-text.entry.js +2 -2
  357. package/dist/esm/snk-form-summary.entry.js +1 -1
  358. package/dist/esm/snk-form-view.entry.js +71 -9
  359. package/dist/esm/snk-form_2.entry.js +21 -11
  360. package/dist/esm/snk-grid.entry.js +89 -34
  361. package/dist/esm/{snk-guides-viewer-240de636.js → snk-guides-viewer-31a0a23d.js} +79 -215
  362. package/dist/esm/snk-guides-viewer.entry.js +10 -18
  363. package/dist/esm/snk-layout-form-config.entry.js +67 -0
  364. package/dist/esm/snk-personalized-filter-editor.entry.js +1 -1
  365. package/dist/esm/snk-pesquisa.entry.js +6 -7
  366. package/dist/esm/snk-print-selector.entry.js +1 -1
  367. package/dist/esm/snk-taskbar.entry.js +185 -128
  368. package/dist/esm/{sortable.esm-842f85a3.js → sortable.esm-bc277c12.js} +76 -90
  369. package/dist/esm/taskbar-elements-ba9d6889.js +149 -0
  370. package/dist/esm/taskbarUtils-cb9db0d9.js +230 -0
  371. package/dist/esm/teste-pesquisa.entry.js +1 -1
  372. package/dist/sankhyablocks/{p-840fb68c.js → p-097d75b3.js} +2 -2
  373. package/dist/sankhyablocks/{p-7f7fe6c4.entry.js → p-0a160fb5.entry.js} +1 -1
  374. package/dist/sankhyablocks/p-0dbd53d9.js +1 -0
  375. package/dist/sankhyablocks/p-12579574.entry.js +1 -0
  376. package/dist/sankhyablocks/p-129a4906.entry.js +1 -0
  377. package/dist/sankhyablocks/{p-162bddae.entry.js → p-175c9576.entry.js} +1 -1
  378. package/dist/sankhyablocks/p-19351985.entry.js +1 -0
  379. package/dist/sankhyablocks/p-1d31aec3.entry.js +1 -0
  380. package/dist/sankhyablocks/{p-cb4343c4.entry.js → p-1d7d5814.entry.js} +1 -1
  381. package/dist/sankhyablocks/p-24b059ee.entry.js +1 -0
  382. package/dist/sankhyablocks/{p-f5e942b7.entry.js → p-250b273e.entry.js} +1 -1
  383. package/dist/sankhyablocks/p-26f1919e.entry.js +1 -0
  384. package/dist/sankhyablocks/p-2c4f7fdd.entry.js +1 -0
  385. package/dist/sankhyablocks/p-2c9d0870.js +2 -0
  386. package/dist/sankhyablocks/{p-75af335e.entry.js → p-2ebda226.entry.js} +1 -1
  387. package/dist/sankhyablocks/p-2ec98523.js +1 -0
  388. package/dist/sankhyablocks/p-3a35917e.entry.js +1 -0
  389. package/dist/sankhyablocks/p-449dfe55.entry.js +1 -0
  390. package/dist/sankhyablocks/p-46d7e2de.js +1 -0
  391. package/dist/sankhyablocks/p-4dd574d6.js +1 -0
  392. package/dist/sankhyablocks/p-541c72ec.entry.js +1 -0
  393. package/dist/sankhyablocks/p-58709cf9.js +1 -0
  394. package/dist/sankhyablocks/{p-27482793.entry.js → p-5aae5c74.entry.js} +1 -1
  395. package/dist/sankhyablocks/p-5aeae67f.js +1 -0
  396. package/dist/sankhyablocks/p-5d50f59a.entry.js +1 -0
  397. package/dist/sankhyablocks/p-5ef0e9a8.entry.js +1 -0
  398. package/dist/sankhyablocks/p-6e0ec0e4.entry.js +1 -0
  399. package/dist/sankhyablocks/p-6f60df43.js +1 -0
  400. package/dist/sankhyablocks/{p-825098c1.entry.js → p-752c57f4.entry.js} +1 -1
  401. package/dist/sankhyablocks/{p-e258de96.entry.js → p-76729994.entry.js} +1 -1
  402. package/dist/sankhyablocks/{p-62e9b9b8.entry.js → p-846d8f79.entry.js} +1 -1
  403. package/dist/sankhyablocks/p-855ccf64.entry.js +1 -0
  404. package/dist/sankhyablocks/p-885262ce.entry.js +1 -0
  405. package/dist/sankhyablocks/{p-118c221e.js → p-8b4d6719.js} +1 -1
  406. package/dist/sankhyablocks/p-8d1ef77a.js +60 -0
  407. package/dist/sankhyablocks/{p-7d6f1285.js → p-8d81c8d3.js} +2 -2
  408. package/dist/sankhyablocks/{p-3d41f5a8.entry.js → p-8d946600.entry.js} +1 -1
  409. package/dist/sankhyablocks/p-8f5dd87d.entry.js +1 -0
  410. package/dist/sankhyablocks/p-90037547.js +1 -0
  411. package/dist/sankhyablocks/{p-96d45943.entry.js → p-90ae6c2e.entry.js} +1 -1
  412. package/dist/sankhyablocks/{p-0b9a42ad.entry.js → p-9742ea0e.entry.js} +1 -1
  413. package/dist/sankhyablocks/p-9e02a785.js +1 -0
  414. package/dist/sankhyablocks/{p-2fdac5e6.entry.js → p-9e109f5e.entry.js} +1 -1
  415. package/dist/sankhyablocks/p-9e7dc97d.entry.js +1 -0
  416. package/dist/sankhyablocks/p-a25ab2ff.entry.js +1 -0
  417. package/dist/sankhyablocks/p-a2a9f520.entry.js +1 -0
  418. package/dist/sankhyablocks/p-a46ac091.js +1 -0
  419. package/dist/sankhyablocks/p-a696bbcd.entry.js +1 -0
  420. package/dist/sankhyablocks/p-a73b6b00.js +1 -0
  421. package/dist/sankhyablocks/p-a9012341.entry.js +11 -0
  422. package/dist/sankhyablocks/p-abcb646d.js +1 -0
  423. package/dist/sankhyablocks/{p-180716b2.entry.js → p-ae326d06.entry.js} +1 -1
  424. package/dist/sankhyablocks/p-af673291.js +1 -0
  425. package/dist/sankhyablocks/p-b555ce38.entry.js +1 -0
  426. package/dist/sankhyablocks/p-bd2a845c.js +1 -0
  427. package/dist/sankhyablocks/p-c3ec6642.js +19 -0
  428. package/dist/sankhyablocks/p-c4b34e2b.entry.js +1 -0
  429. package/dist/sankhyablocks/{p-92cfc028.js → p-c9440c8a.js} +1 -1
  430. package/dist/sankhyablocks/p-ca3728c0.entry.js +1 -0
  431. package/dist/sankhyablocks/p-cbb8e351.js +7 -0
  432. package/dist/sankhyablocks/p-cd153f71.entry.js +1 -0
  433. package/dist/sankhyablocks/p-ce8ccd72.entry.js +1 -0
  434. package/dist/sankhyablocks/{p-4c763b10.entry.js → p-d657f71f.entry.js} +1 -1
  435. package/dist/sankhyablocks/p-da455c82.js +12 -0
  436. package/dist/sankhyablocks/p-e5a3711f.js +1 -0
  437. package/dist/sankhyablocks/{p-9a63f3f7.entry.js → p-e737fd5a.entry.js} +1 -1
  438. package/dist/sankhyablocks/p-eac48627.js +1 -0
  439. package/dist/sankhyablocks/p-ec7c87bb.js +28 -0
  440. package/dist/sankhyablocks/p-ee56dda6.entry.js +1 -0
  441. package/dist/sankhyablocks/{p-667cab42.entry.js → p-f152ef98.entry.js} +1 -1
  442. package/dist/sankhyablocks/{p-7e250432.entry.js → p-f7170e10.entry.js} +1 -1
  443. package/dist/sankhyablocks/{p-7345782c.entry.js → p-f921270b.entry.js} +1 -1
  444. package/dist/sankhyablocks/p-fb6e3c65.entry.js +1 -0
  445. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  446. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +4 -0
  447. package/dist/types/components/snk-application/snk-application.d.ts +1 -1
  448. package/dist/types/components/snk-attach/snk-attach.d.ts +22 -4
  449. package/dist/types/components/snk-crud/snk-crud.d.ts +33 -11
  450. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +3 -2
  451. package/dist/types/components/snk-crud/subcomponents/snk-entity-search.d.ts +62 -0
  452. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +12 -0
  453. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +13 -25
  454. package/dist/types/components/snk-crud/utils/taskbarUtils.d.ts +13 -0
  455. package/dist/types/components/snk-custom-slot-guide/snk-custom-slot-guide.d.ts +16 -0
  456. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +8 -0
  457. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +4 -0
  458. package/dist/types/components/snk-data-exporter/structure/ItemBuilder.d.ts +16 -0
  459. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +1 -0
  460. package/dist/types/components/snk-dynaform/interfaces/PropsCustomEditor.d.ts +4 -0
  461. package/dist/types/components/snk-dynaform/interfaces/PropsCustomRender.d.ts +4 -0
  462. package/dist/types/components/snk-dynaform/subcomponents/CardFormResizeObserver.d.ts +1 -0
  463. package/dist/types/components/snk-dynaform/subcomponents/GuideBuilder.d.ts +14 -0
  464. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.d.ts +169 -0
  465. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.d.ts +108 -0
  466. package/dist/types/components/snk-dynaform-form-config/FormConfigHelper.d.ts +36 -0
  467. package/dist/types/components/snk-dynaform-form-config/SnkFormConfigManager.d.ts +35 -0
  468. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.d.ts +23 -0
  469. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.d.ts +19 -0
  470. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.d.ts +56 -0
  471. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.d.ts +74 -0
  472. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.d.ts +21 -0
  473. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-form-config.d.ts +95 -0
  474. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.d.ts +35 -0
  475. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-number.d.ts +1 -1
  476. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-period.d.ts +1 -0
  477. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +1 -0
  478. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +1 -1
  479. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +5 -1
  480. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +2 -1
  481. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.d.ts +1 -0
  482. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +33 -16
  483. package/dist/types/components/snk-form-config/FormConfigHelper.d.ts +1 -1
  484. package/dist/types/components/snk-form-config/fields-layout/fields-layout.d.ts +2 -2
  485. package/dist/types/components/snk-form-config/guides-configurator/guides-configurator.d.ts +1 -1
  486. package/dist/types/components/snk-form-config/snk-form-config.d.ts +2 -1
  487. package/dist/types/components/snk-grid/snk-grid.d.ts +37 -1
  488. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +11 -0
  489. package/dist/types/components/snk-image-input/snk-image-input.d.ts +57 -0
  490. package/dist/types/components/snk-image-input/utils/ImageUtils.d.ts +15 -0
  491. package/dist/types/components/snk-personalized-filter/interfaces/IParameter.d.ts +1 -0
  492. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +0 -1
  493. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +4 -1
  494. package/dist/types/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.d.ts +6 -0
  495. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +29 -2
  496. package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +5 -0
  497. package/dist/types/components/snk-taskbar/processor/simple-taskbar-processor.d.ts +31 -0
  498. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +32 -21
  499. package/dist/types/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.d.ts +3 -0
  500. package/dist/types/components.d.ts +2640 -1183
  501. package/dist/types/lib/@types/index.d.ts +6 -0
  502. package/dist/types/lib/configs/ConfigStorage.d.ts +1 -0
  503. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  504. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -1
  505. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +3 -1
  506. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +2 -0
  507. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +1 -0
  508. package/dist/types/lib/http/data-fetcher/fetchers/grid-config-fetcher.d.ts +1 -0
  509. package/dist/types/lib/http/data-fetcher/fetchers/resource-fetcher.d.ts +1 -0
  510. package/dist/types/lib/message/resources/en-us/snk-image-input.msg.d.ts +1 -0
  511. package/dist/types/lib/message/resources/es-es/snk-image-input.msg.d.ts +1 -0
  512. package/dist/types/lib/message/resources/pt-br/snk-image-input.msg.d.ts +1 -0
  513. package/package.json +11 -8
  514. package/react/components.d.ts +16 -0
  515. package/react/components.js +16 -0
  516. package/react/components.js.map +1 -1
  517. package/dist/cjs/default-filters-a09bf82b.js +0 -8
  518. package/dist/cjs/index-62760a9c.js +0 -49
  519. package/dist/cjs/index-8d94b7e0.js +0 -7
  520. package/dist/cjs/snk-attach.cjs.entry.js +0 -910
  521. package/dist/cjs/snk-default-filter.cjs.entry.js +0 -77
  522. package/dist/cjs/snk-filter-advanced-mode_2.cjs.entry.js +0 -61
  523. package/dist/cjs/snk-filter-detail.cjs.entry.js +0 -198
  524. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +0 -408
  525. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +0 -108
  526. package/dist/cjs/snk-personalized-filter.cjs.entry.js +0 -357
  527. package/dist/cjs/snk-simple-bar.cjs.entry.js +0 -45
  528. package/dist/cjs/snk-simple-crud.cjs.entry.js +0 -870
  529. package/dist/cjs/taskbar-elements-fb5d1e08.js +0 -132
  530. package/dist/cjs/taskbar-processor-2fba34a8.js +0 -53
  531. package/dist/esm/default-filters-50105e43.js +0 -8
  532. package/dist/esm/index-620ac460.js +0 -7
  533. package/dist/esm/index-8acbae97.js +0 -49
  534. package/dist/esm/snk-attach.entry.js +0 -906
  535. package/dist/esm/snk-default-filter.entry.js +0 -73
  536. package/dist/esm/snk-filter-advanced-mode_2.entry.js +0 -56
  537. package/dist/esm/snk-filter-detail.entry.js +0 -194
  538. package/dist/esm/snk-filter-field-search_2.entry.js +0 -403
  539. package/dist/esm/snk-filter-modal-item.entry.js +0 -104
  540. package/dist/esm/snk-personalized-filter.entry.js +0 -353
  541. package/dist/esm/snk-simple-bar.entry.js +0 -41
  542. package/dist/esm/snk-simple-crud.entry.js +0 -866
  543. package/dist/esm/taskbar-elements-faaf5d8f.js +0 -129
  544. package/dist/esm/taskbar-processor-3436124c.js +0 -51
  545. package/dist/sankhyablocks/p-002d4d2b.js +0 -1
  546. package/dist/sankhyablocks/p-093f58fa.entry.js +0 -1
  547. package/dist/sankhyablocks/p-0948dc0a.entry.js +0 -11
  548. package/dist/sankhyablocks/p-0f3698af.js +0 -1
  549. package/dist/sankhyablocks/p-1a0caadb.js +0 -1
  550. package/dist/sankhyablocks/p-1a9c5684.entry.js +0 -1
  551. package/dist/sankhyablocks/p-1d589380.entry.js +0 -1
  552. package/dist/sankhyablocks/p-21107f0d.entry.js +0 -1
  553. package/dist/sankhyablocks/p-28f50632.js +0 -1
  554. package/dist/sankhyablocks/p-39be771c.js +0 -1
  555. package/dist/sankhyablocks/p-3ed04f0d.entry.js +0 -1
  556. package/dist/sankhyablocks/p-471b34f4.entry.js +0 -1
  557. package/dist/sankhyablocks/p-4963dd2a.entry.js +0 -1
  558. package/dist/sankhyablocks/p-49ddc27a.entry.js +0 -1
  559. package/dist/sankhyablocks/p-51833248.js +0 -7
  560. package/dist/sankhyablocks/p-55798617.js +0 -1
  561. package/dist/sankhyablocks/p-55f6fef2.entry.js +0 -1
  562. package/dist/sankhyablocks/p-56f16390.entry.js +0 -1
  563. package/dist/sankhyablocks/p-58683e28.js +0 -60
  564. package/dist/sankhyablocks/p-5ea893c5.entry.js +0 -1
  565. package/dist/sankhyablocks/p-60dd1d27.entry.js +0 -1
  566. package/dist/sankhyablocks/p-62aef37a.js +0 -1
  567. package/dist/sankhyablocks/p-669bb869.entry.js +0 -1
  568. package/dist/sankhyablocks/p-6a4b21dd.js +0 -1
  569. package/dist/sankhyablocks/p-6ee2ca7a.entry.js +0 -1
  570. package/dist/sankhyablocks/p-7cac3870.entry.js +0 -1
  571. package/dist/sankhyablocks/p-84345e7a.js +0 -1
  572. package/dist/sankhyablocks/p-86e54841.entry.js +0 -1
  573. package/dist/sankhyablocks/p-88b337fe.entry.js +0 -1
  574. package/dist/sankhyablocks/p-91005a00.entry.js +0 -1
  575. package/dist/sankhyablocks/p-91a9abb6.entry.js +0 -1
  576. package/dist/sankhyablocks/p-988afe78.js +0 -1
  577. package/dist/sankhyablocks/p-ada013c0.entry.js +0 -1
  578. package/dist/sankhyablocks/p-b568c1d4.js +0 -1
  579. package/dist/sankhyablocks/p-b7e891cc.entry.js +0 -1
  580. package/dist/sankhyablocks/p-b987e15d.js +0 -1
  581. package/dist/sankhyablocks/p-c35fc941.js +0 -26
  582. package/dist/sankhyablocks/p-c3dbf441.entry.js +0 -1
  583. package/dist/sankhyablocks/p-c4fcf1fb.entry.js +0 -1
  584. package/dist/sankhyablocks/p-c98c79c3.entry.js +0 -1
  585. package/dist/sankhyablocks/p-cadf4846.entry.js +0 -1
  586. package/dist/sankhyablocks/p-d8d8169b.js +0 -2
  587. package/dist/sankhyablocks/p-e91c3c57.entry.js +0 -1
  588. package/dist/sankhyablocks/p-ea729922.entry.js +0 -1
  589. package/dist/sankhyablocks/p-ec5fbad8.js +0 -1
  590. package/dist/sankhyablocks/p-f4184ce7.js +0 -1
@@ -0,0 +1,739 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-1894343a.js');
6
+ const utils = require('@sankhyalabs/ezui/dist/collection/utils');
7
+ const core = require('@sankhyalabs/core');
8
+ const sortable_esm = require('./sortable.esm-b87669ab.js');
9
+ const constants = require('./constants-6d82e405.js');
10
+ const FormConfigHelper = require('./FormConfigHelper-c5f5473a.js');
11
+
12
+ const snkDynaformConfigHeaderCss = ".sc-snk-dynaform-config-header-h{display:flex;padding-top:var(--space--12, 12px);align-items:center;width:100%;justify-content:space-between}.left-group.sc-snk-dynaform-config-header{display:flex;gap:var(--space--8, 8px);align-items:center}.right-group.sc-snk-dynaform-config-header{display:flex}";
13
+
14
+ const SnkDynaformConfigHeader = class {
15
+ constructor(hostRef) {
16
+ index.registerInstance(this, hostRef);
17
+ this.configClose = index.createEvent(this, "configClose", 7);
18
+ this.saveConfig = index.createEvent(this, "saveConfig", 7);
19
+ this.isEditingGuide = false;
20
+ this.isEditingGroup = false;
21
+ this.configOptions = [];
22
+ this.selectedConfig = undefined;
23
+ this.messagesBuilder = undefined;
24
+ this.hasChanges = false;
25
+ this.optionConfigChanged = false;
26
+ }
27
+ handleIsEditingGuideName({ detail }) {
28
+ this.isEditingGuide = detail;
29
+ }
30
+ handleIsEditingGroupName({ detail }) {
31
+ this.isEditingGroup = detail;
32
+ }
33
+ saveFormConfig() {
34
+ if (this.isEditingGuide || this.isEditingGroup) {
35
+ const title = this.getMessage('snkFormConfig.confirm.title');
36
+ const message = this.isEditingGuide
37
+ ? this.getMessage('snkFormConfig.alert.titleGuideEditing')
38
+ : this.getMessage('snkFormConfig.alert.titleGroupEditing');
39
+ utils.ApplicationUtils.alert(title, message);
40
+ return;
41
+ }
42
+ this.saveConfig.emit();
43
+ }
44
+ async closeFormConfig() {
45
+ if (this.hasChanges) {
46
+ const title = this.getMessage('snkFormConfig.confirm.title');
47
+ const msg = this.getMessage('snkFormConfig.confirm.cancel');
48
+ const confirm = await utils.ApplicationUtils.confirm(title, msg);
49
+ if (!confirm)
50
+ return;
51
+ }
52
+ this.configClose.emit();
53
+ }
54
+ getMessage(key, params) {
55
+ return this.messagesBuilder.getMessage(key, params);
56
+ }
57
+ openConfirmDialog(msg = '', title = this.getMessage('snkFormConfig.confirm.title')) {
58
+ return utils.ApplicationUtils.confirm(title, msg);
59
+ }
60
+ async applyOptionConfig() {
61
+ var _a, _b;
62
+ const name = (_b = (_a = this.selectedConfig) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : this.getMessage('snkFormConfig.configs.selectedConfig');
63
+ const msg = this.getMessage('snkFormConfig.confirm.apply').replace('{0}', name);
64
+ const confirm = await this.openConfirmDialog(msg);
65
+ if (confirm) {
66
+ this.saveConfig.emit();
67
+ }
68
+ }
69
+ renderSaveActions() {
70
+ if (!this.hasChanges && !this.optionConfigChanged)
71
+ return;
72
+ if (this.hasChanges) {
73
+ return (index.h("div", { class: "right-group" }, index.h("ez-button", { title: this.getMessage('snkFormConfig.actions.cancel'), label: this.getMessage('snkFormConfig.actions.cancel'), onClick: this.closeFormConfig.bind(this), size: "medium" }), index.h("ez-button", { title: this.getMessage('snkFormConfig.actions.save'), label: this.getMessage('snkFormConfig.actions.save'), class: 'ez-button--primary ez-padding-left--medium', onClick: () => this.saveFormConfig(), size: "medium" })));
74
+ }
75
+ return (index.h("div", { class: "right-group" }, index.h("ez-button", { title: this.getMessage('snkFormConfig.actions.cancel'), label: this.getMessage('snkFormConfig.actions.cancel'), onClick: this.closeFormConfig.bind(this), size: "medium" }), index.h("ez-button", { title: this.getMessage('snkFormConfig.actions.save'), label: this.getMessage('snkFormConfig.applyConfig'), class: 'ez-button--primary ez-padding-left--medium', onClick: async () => await this.applyOptionConfig(), size: "medium" })));
76
+ }
77
+ render() {
78
+ return (index.h(index.Host, null, index.h("div", { class: 'left-group' }, index.h("ez-button", { mode: "icon", title: this.getMessage('snkFormConfig.goBackTitle'), iconName: "arrow_back", size: "small", onClick: this.closeFormConfig.bind(this), id: "formConfigToBack" }), index.h("h1", { class: "ez-title ez-title--primary ez-title--extra-large ez-padding--small" }, this.getMessage('snkFormConfig.title')), index.h("snk-dynaform-configs-button", { hasChanges: this.hasChanges, configOptions: this.configOptions, selectedConfig: this.selectedConfig, messagesBuilder: this.messagesBuilder })), this.renderSaveActions()));
79
+ }
80
+ };
81
+ SnkDynaformConfigHeader.style = snkDynaformConfigHeaderCss;
82
+
83
+ const snkDynaformConfigsButtonCss = ".dropdown-container.sc-snk-dynaform-configs-button{font-family:'Roboto';font-size:12px;font-weight:400;display:flex;flex-direction:column;color:#2b3a54;width:200px}.main-item.sc-snk-dynaform-configs-button{padding:12px;font-size:14px;cursor:pointer;transition:all .2s ease-in-out;display:flex;flex-direction:row;gap:8px;align-items:center;justify-content:start}.main-item.sc-snk-dynaform-configs-button ez-icon.sc-snk-dynaform-configs-button{--ez-icon--color:#008561}.main-item.sc-snk-dynaform-configs-button:nth-of-type(1){padding-bottom:6px}.main-item.sc-snk-dynaform-configs-button:nth-of-type(2){padding-top:6px}.main-item.sc-snk-dynaform-configs-button:hover{background-color:#FAFCFF}.item-label.sc-snk-dynaform-configs-button{display:flex}";
84
+
85
+ const SnkDynaformConfigsButton = class {
86
+ constructor(hostRef) {
87
+ index.registerInstance(this, hostRef);
88
+ this.formConfigOptionSelected = index.createEvent(this, "formConfigOptionSelected", 7);
89
+ this.configOptions = [];
90
+ this.selectedConfig = undefined;
91
+ this.hasChanges = false;
92
+ this.messagesBuilder = undefined;
93
+ }
94
+ getMessage(key, params) {
95
+ return this.messagesBuilder.getMessage(key, params);
96
+ }
97
+ async showShareConfigOptions() {
98
+ if (this._refOptionsPopover && this._refShareConfigBtn) {
99
+ await this._refOptionsPopover.showUnder(this._refShareConfigBtn);
100
+ }
101
+ }
102
+ async handleSelectOption(option) {
103
+ if (core.ObjectUtils.equals(option, this.selectedConfig))
104
+ return;
105
+ if (this.hasChanges) {
106
+ const title = this.getMessage('snkFormConfig.confirm.title');
107
+ const msg = this.getMessage('snkFormConfig.confirm.cancel');
108
+ const confirm = await utils.ApplicationUtils.confirm(title, msg);
109
+ if (!confirm)
110
+ return;
111
+ }
112
+ this.selectedConfig = option;
113
+ this.formConfigOptionSelected.emit(option);
114
+ await this._refOptionsPopover.hide();
115
+ }
116
+ getButtonLabel() {
117
+ var _a, _b;
118
+ return (_b = (_a = this.selectedConfig) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : this.getMessage('snkFormConfig.configs.buttonLabel');
119
+ }
120
+ renderConfigOptions() {
121
+ return this.configOptions.map((option) => {
122
+ return (index.h("div", { class: `main-item`, onClick: async () => await this.handleSelectOption(option) }, index.h("span", { class: 'item-label' }, " ", option.name), this.renderCheckIcon(option)));
123
+ });
124
+ }
125
+ renderCheckIcon(option) {
126
+ if (this.selectedConfig && this.selectedConfig.origin === option.origin)
127
+ return index.h("ez-icon", { iconName: "check" });
128
+ }
129
+ render() {
130
+ return (index.h(index.Host, null, index.h("ez-button", { ref: ref => this._refShareConfigBtn = ref, label: this.getButtonLabel(), onClick: async () => await this.showShareConfigOptions() }, index.h("ez-icon", { slot: "rightIcon", iconName: "chevron-down" })), index.h("ez-popover-plus", { ref: ref => this._refOptionsPopover = ref, autoClose: true, overlayType: "none" }, index.h("div", { class: 'dropdown-container' }, this.renderConfigOptions()))));
131
+ }
132
+ };
133
+ SnkDynaformConfigsButton.style = snkDynaformConfigsButtonCss;
134
+
135
+ const snkDynaformFieldsLayoutCss = ".sc-snk-dynaform-fields-layout-h{display:flex;padding:12px;box-shadow:var(--shadow--small, 0 0 16px rgba(0, 38, 111, 0.07));border-radius:var(--border--radius-medium, 6px);height:100%;min-height:0;flex-direction:column;box-sizing:border-box}.is-main-section.sc-snk-dynaform-fields-layout-h{height:100%;border:1px solid var(--color--gray-90, #EAEAEA);flex:1 1 auto;min-height:0;flex-direction:row;overflow:auto}.is-main-section.sc-snk-dynaform-fields-layout-h .layout-container.sc-snk-dynaform-fields-layout{flex:1 1 auto;min-height:0;width:100%}.layout-container.sc-snk-dynaform-fields-layout{container-type:inline-size;display:flex;flex-direction:column;overflow:hidden;flex:1 1 auto;min-height:0;width:100%}.layout-container.sc-snk-dynaform-fields-layout>ez-scroller.sc-snk-dynaform-fields-layout{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.guide-header.sc-snk-dynaform-fields-layout{display:flex;width:100%;font-size:20px;border-bottom:1px solid #dce0e8;margin-bottom:6px;align-items:center;height:45px}.guide-header.sc-snk-dynaform-fields-layout ez-button.sc-snk-dynaform-fields-layout{transition:all 0.2s ease-in-out;visibility:hidden;opacity:0}.guide-header.sc-snk-dynaform-fields-layout:hover ez-button.sc-snk-dynaform-fields-layout{visibility:visible;opacity:1}.guide-header-label.sc-snk-dynaform-fields-layout{display:block;padding:10px 0}.group-config.sc-snk-dynaform-fields-layout{padding:12px 0;display:flex;flex-direction:column;width:100%}.group-content.sc-snk-dynaform-fields-layout{display:grid;gap:12px;min-height:65px;width:100%;padding:6px 0;grid-template-columns:repeat(auto-fill, minmax(250px, 1fr))}.group-content.empty-content.sc-snk-dynaform-fields-layout{position:relative}.group-content.empty-content.sc-snk-dynaform-fields-layout::before{content:var(--empty-content-message, \"Arraste e solte um campo aqui\");color:#cbcfd7;font-size:16px;font-weight:500;text-align:center;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity 0.3s;height:100%;box-sizing:border-box;padding:10px;background:#f9f9f9;border:1px dashed #dce0e8;border-radius:6px}.no-group-container.sc-snk-dynaform-fields-layout{padding:12px 0;width:100%;border-bottom:1px solid #dce0e8}.no-group-container.sc-snk-dynaform-fields-layout::before{content:var(--no-group-message, \"Inclua estes campos nos grupos ou deixe-os separados no topo do formulário\");width:100%;display:block;font-size:16px;font-weight:400;color:#AFB6C0;padding-bottom:12px}.add-group-container.sc-snk-dynaform-fields-layout{display:flex;align-items:center;border-top:1px solid #dce0e8;padding-top:22px;padding-bottom:12px;gap:6px;cursor:pointer;justify-content:center;width:100%;height:55px}.no-guide-selected.sc-snk-dynaform-fields-layout{display:block;margin:auto;font-size:24px;color:#AFB6C0;font-weight:500}.message-container.sc-snk-dynaform-fields-layout{margin:auto;display:flex;flex-direction:column;justify-content:center;align-items:center}.message-config-detail.sc-snk-dynaform-fields-layout{display:block;margin:auto;font-size:var(--font-size--medium, 16px);color:#AFB6C0;font-weight:var(--font-weight--medium, 500)}.ghost.sc-snk-dynaform-fields-layout{opacity:.5;background:#c8fbe2}";
136
+
137
+ const SnkDynaformFieldsLayout = class {
138
+ constructor(hostRef) {
139
+ index.registerInstance(this, hostRef);
140
+ this.isEditingGuideName = index.createEvent(this, "isEditingGuideName", 7);
141
+ this.isEditingGroupName = index.createEvent(this, "isEditingGroupName", 7);
142
+ this.layoutChanged = index.createEvent(this, "layoutChanged", 7);
143
+ this.setFieldListAsAvailable = index.createEvent(this, "setFieldListAsAvailable", 7);
144
+ this.guideRenamed = index.createEvent(this, "guideRenamed", 7);
145
+ this.ID_GROUPS = 'container-groups';
146
+ this.ID_FIELDS = 'container-fields';
147
+ this.reservedGuideNames = [constants.TAB_NAMES.main.toLowerCase(), constants.TAB_NAMES.general.toLocaleLowerCase()];
148
+ this.groupsListMemory = [];
149
+ this.groupsRefList = [];
150
+ this.sortableInstances = [];
151
+ this.isEditGuideNameActive = false;
152
+ this.selectedGuide = undefined;
153
+ this.groupsList = [];
154
+ this.guideNames = [];
155
+ this.dataUnit = undefined;
156
+ this.isMainSection = false;
157
+ this.messagesBuilder = undefined;
158
+ }
159
+ onMessagesBuilderChange() {
160
+ this.setCustomCSSProperties();
161
+ }
162
+ handleFieldConfigChanged({ detail: updatedField }) {
163
+ var _a;
164
+ if (((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name) && updatedField.tab && updatedField.tab !== this.selectedGuide.name) {
165
+ return;
166
+ }
167
+ const groupToUpdate = this.groupsListMemory.find(g => g.name === updatedField.group);
168
+ if (!groupToUpdate)
169
+ return;
170
+ const updatedFields = groupToUpdate.fields.map(field => {
171
+ return (field.name === updatedField.name) ? updatedField : field;
172
+ });
173
+ const updatedGroupList = this.groupsListMemory.map(group => {
174
+ return (group.name === groupToUpdate.name)
175
+ ? { name: group.name, fields: updatedFields }
176
+ : group;
177
+ });
178
+ this.applyGroupUpdate(updatedGroupList);
179
+ }
180
+ observeSelectedGuide() {
181
+ this.isEditGuideNameActive = false;
182
+ index.forceUpdate(this);
183
+ this.isEditingGroupName.emit(false);
184
+ }
185
+ observeGroupList(newValue) {
186
+ this.groupsListMemory = [...newValue];
187
+ }
188
+ observeIsEditGuideNameActive(newValue) {
189
+ this.isEditingGuideName.emit(newValue);
190
+ }
191
+ async addFieldToLayout(incomingField) {
192
+ incomingField.group = constants.GROUP_NAMES.noGroup;
193
+ incomingField.tab = this.selectedGuide.name;
194
+ const fixedFieldsGroup = this.getFixedFieldsGroup();
195
+ const newFixedFieldsGroup = {
196
+ name: constants.GROUP_NAMES.noGroup,
197
+ fields: fixedFieldsGroup ? [...fixedFieldsGroup.fields, incomingField] : [incomingField],
198
+ };
199
+ const updatedGroupListMemory = fixedFieldsGroup
200
+ ? [newFixedFieldsGroup, ...this.groupsListMemory.slice(1)]
201
+ : [newFixedFieldsGroup, ...this.groupsListMemory];
202
+ this.applyGroupUpdate(updatedGroupListMemory);
203
+ }
204
+ getFixedFieldsGroup() {
205
+ return this.groupsListMemory.find(g => g.name === constants.GROUP_NAMES.noGroup);
206
+ }
207
+ getMessage(key, params) {
208
+ return this.messagesBuilder.getMessage(key, params);
209
+ }
210
+ handleAddGroup() {
211
+ const newGroup = { name: this.buildNewGroupName(), fields: [] };
212
+ const updatedGroupsList = [...this.groupsListMemory, newGroup];
213
+ this.applyGroupUpdate(updatedGroupsList);
214
+ }
215
+ buildNewGroupName() {
216
+ var _a, _b;
217
+ const newGroupMessage = this.getMessage('snkFormConfig.form.newGroup');
218
+ const qtdWithNewGroupName = (_b = (_a = this.groupsListMemory.filter(g => g.name.includes(newGroupMessage))) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
219
+ return qtdWithNewGroupName === 0 ? newGroupMessage : `${newGroupMessage} (${qtdWithNewGroupName})`;
220
+ }
221
+ makeDynamicFieldsContainersDraggable() {
222
+ const draggableGroups = this.groupsList.filter((g) => g.name !== constants.GROUP_NAMES.noGroup);
223
+ draggableGroups.forEach(group => {
224
+ this.makeFieldContainerDraggable(this.getFieldsContainerId(group.name));
225
+ });
226
+ }
227
+ getInstanceSuffix() {
228
+ var _a, _b;
229
+ return core.StringUtils.replaceBlankCharacters((_b = (_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : '');
230
+ }
231
+ getGroupsContainerId() {
232
+ return `${this.ID_GROUPS}-${this.getInstanceSuffix()}`;
233
+ }
234
+ getNoGroupContainerId() {
235
+ return `${constants.GROUP_NAMES.noGroup}-${this.getInstanceSuffix()}`;
236
+ }
237
+ getFieldsContainerId(groupName) {
238
+ return `${this.ID_FIELDS}-${this.getInstanceSuffix()}-${core.StringUtils.replaceBlankCharacters(groupName)}`;
239
+ }
240
+ handleSortGroups(evt) {
241
+ var _a;
242
+ const htmlStructure = (_a = evt.to) === null || _a === void 0 ? void 0 : _a.children;
243
+ if (!htmlStructure)
244
+ return;
245
+ const groupsOrder = Array.from(htmlStructure).map(el => el.getAttribute('data-group-name'));
246
+ const updatedOrderGroupsList = [];
247
+ const fixedGroup = this.getFixedFieldsGroup();
248
+ if (fixedGroup) {
249
+ updatedOrderGroupsList.push(fixedGroup);
250
+ }
251
+ groupsOrder.forEach(groupName => {
252
+ const group = this.groupsListMemory.find(g => g.name === groupName);
253
+ if (group) {
254
+ updatedOrderGroupsList.push(group);
255
+ }
256
+ });
257
+ this.applyGroupUpdate(updatedOrderGroupsList);
258
+ }
259
+ handleFieldsChanged(evt) {
260
+ let updatedGroupsList = [...this.groupsListMemory];
261
+ updatedGroupsList = [...this.handleFieldsOnGroupUpdate(updatedGroupsList, evt, FormConfigHelper.SORTABLE_PATH.FROM)];
262
+ updatedGroupsList = [...this.handleFieldsOnGroupUpdate(updatedGroupsList, evt, FormConfigHelper.SORTABLE_PATH.TO)];
263
+ this.applyGroupUpdate(updatedGroupsList);
264
+ }
265
+ applyGroupUpdate(updatedGroupList) {
266
+ var _a;
267
+ (_a = this.groupsRefList) === null || _a === void 0 ? void 0 : _a.forEach((group) => group === null || group === void 0 ? void 0 : group.cancelEdition());
268
+ if (core.ObjectUtils.equals(updatedGroupList, this.groupsListMemory)) {
269
+ return false;
270
+ }
271
+ this.groupsListMemory = [...updatedGroupList];
272
+ this.layoutChanged.emit(this.groupsListMemory);
273
+ return true;
274
+ }
275
+ handleFieldsOnGroupUpdate(groupList, evt, path) {
276
+ const element = evt[path];
277
+ if (!this.el.contains(element))
278
+ return groupList;
279
+ const isAvailableFields = element.id === FormConfigHelper.ID_AVAILABLE_FIELDS;
280
+ return isAvailableFields ? groupList : this.updateGroupList(groupList, element, path, evt);
281
+ }
282
+ updateGroupList(groupList, element, path, evt) {
283
+ const groupName = element.getAttribute('data-group-name');
284
+ const updatedGroup = {
285
+ name: groupName,
286
+ fields: FormConfigHelper.getFieldsStructure(evt, path, groupName, this.selectedGuide.name),
287
+ };
288
+ return this.upsertGroup(groupList, updatedGroup);
289
+ }
290
+ upsertGroup(groupList, newGroup) {
291
+ if (groupList.some(group => group.name === newGroup.name)) {
292
+ return this.replaceGroup(groupList, newGroup);
293
+ }
294
+ return newGroup.name === constants.GROUP_NAMES.noGroup
295
+ ? [newGroup, ...groupList]
296
+ : [...groupList, newGroup];
297
+ }
298
+ replaceGroup(groupList, newGroup) {
299
+ return groupList.map(group => group.name === newGroup.name ? newGroup : group);
300
+ }
301
+ destroySortableInstances() {
302
+ this.sortableInstances.forEach(instance => {
303
+ var _a;
304
+ try {
305
+ (_a = instance === null || instance === void 0 ? void 0 : instance.destroy) === null || _a === void 0 ? void 0 : _a.call(instance);
306
+ }
307
+ catch ( /* noop */_b) { /* noop */ }
308
+ });
309
+ this.sortableInstances = [];
310
+ }
311
+ makeGroupsDraggable() {
312
+ try {
313
+ const element = this.getContainerElement(this.getGroupsContainerId());
314
+ if (!element)
315
+ return;
316
+ this.sortableInstances.push(new sortable_esm.Sortable(element, {
317
+ group: 'groups',
318
+ ghostClass: 'ghost',
319
+ direction: 'horizontal',
320
+ animation: 15,
321
+ onSort: (evt) => this.handleSortGroups(evt),
322
+ }));
323
+ }
324
+ catch (e) {
325
+ console.error(this.getMessage('snkFormConfig.errors.failMakeGroupsDraggable'), this.getGroupsContainerId());
326
+ }
327
+ }
328
+ makeFieldContainerDraggable(containerId) {
329
+ try {
330
+ const element = this.getContainerElement(containerId);
331
+ if (!element)
332
+ return;
333
+ this.sortableInstances.push(new sortable_esm.Sortable(element, {
334
+ group: 'fields',
335
+ ghostClass: 'ghost',
336
+ direction: 'vertical',
337
+ animation: 15,
338
+ onAdd: (evt) => this.handleFieldsChanged(evt),
339
+ onRemove: (evt) => this.handleFieldsChanged(evt),
340
+ onSort: (evt) => this.handleFieldsChanged(evt),
341
+ }));
342
+ }
343
+ catch (e) {
344
+ console.error(this.getMessage('snkFormConfig.errors.failMakeFieldContainerDraggable'), containerId);
345
+ }
346
+ }
347
+ getContainerElement(id) {
348
+ return this.el.querySelector(`[id="${id}"]`);
349
+ }
350
+ handleSetFieldAsAvailable(field) {
351
+ var _a;
352
+ const groupName = (_a = field.group) !== null && _a !== void 0 ? _a : constants.GROUP_NAMES.noGroup;
353
+ const group = this.groupsListMemory.find(group => group.name === groupName);
354
+ const fields = group.fields.filter(f => f.name !== field.name);
355
+ const updatedGroup = { name: groupName, fields };
356
+ const updatedList = [...this.replaceGroup(this.groupsListMemory, updatedGroup)];
357
+ this.applyGroupUpdate(updatedList);
358
+ }
359
+ removeGroup(group) {
360
+ var _a, _b;
361
+ const groupFields = (_b = (_a = this.groupsListMemory.find(f => f.name === group.name)) === null || _a === void 0 ? void 0 : _a.fields) !== null && _b !== void 0 ? _b : [];
362
+ const updatedGroupList = [...this.groupsListMemory.filter(g => g.name !== group.name)];
363
+ if (this.applyGroupUpdate(updatedGroupList)) {
364
+ this.setFieldListAsAvailable.emit(groupFields);
365
+ }
366
+ }
367
+ handleRenameGroup(editDetails) {
368
+ const { value: actualName, newValue: newGroupName } = editDetails.detail;
369
+ const updatedGroupList = this.groupsListMemory.map(group => {
370
+ if (group.name !== actualName)
371
+ return Object.assign({}, group);
372
+ const updatedFields = group.fields.map(f => {
373
+ return Object.assign(Object.assign({}, f), { group: newGroupName });
374
+ });
375
+ return { name: newGroupName, fields: updatedFields };
376
+ });
377
+ this.applyGroupUpdate(updatedGroupList);
378
+ }
379
+ canSaveGroup(newLabel, index) {
380
+ const hasOtherWithThisName = this.groupsList.some(group => {
381
+ var _a;
382
+ return ((_a = group.name) !== null && _a !== void 0 ? _a : '').toLocaleLowerCase() === (newLabel !== null && newLabel !== void 0 ? newLabel : '').toLocaleLowerCase();
383
+ });
384
+ if (!hasOtherWithThisName)
385
+ return true;
386
+ const title = this.getMessage('snkFormConfig.confirm.title');
387
+ const message = this.buildDuplicatedGroupNameContent(newLabel);
388
+ utils.ApplicationUtils.alert(title, message).then(() => { var _a; return (_a = this.groupsRefList[index]) === null || _a === void 0 ? void 0 : _a.applyFocusTextEdit(); });
389
+ return false;
390
+ }
391
+ buildDuplicatedGroupNameContent(newLabel) {
392
+ const tabName = this.selectedGuide.name;
393
+ return `
394
+ ${this.getMessage('snkFormConfig.alert.titleGroupExists')}
395
+ <b>${newLabel}</b>
396
+ ${this.getMessage('snkFormConfig.alert.inTab')}
397
+ <b>${tabName === constants.TAB_NAMES.main ? this.getMessage('snkFormConfig.form.mainArea') : tabName}</b>.
398
+ <br/><br/>
399
+ ${this.getMessage('snkFormConfig.alert.infoValidTitle')}
400
+ `;
401
+ }
402
+ buildDuplicatedTabNameContent(newLabel) {
403
+ return `
404
+ ${this.getMessage('snkFormConfig.alert.titleGuideExists')}
405
+ <b>${newLabel}</b>.
406
+ <br/><br/>
407
+ ${this.getMessage('snkFormConfig.alert.infoValidTitle')}
408
+ `;
409
+ }
410
+ buildReservedTabNameContent(newLabel) {
411
+ return `
412
+ ${this.getMessage('snkFormConfig.alert.titleGuideReservedName')}
413
+ <br/><br/>
414
+ <b>${newLabel}</b>.
415
+ <br/><br/>
416
+ ${this.getMessage('snkFormConfig.alert.infoValidTitle')}
417
+ `;
418
+ }
419
+ renderFields(fields) {
420
+ if (fields.length === 0)
421
+ return;
422
+ return fields.map(field => (index.h("snk-dynaform-field-item", { key: field.name, fieldConfig: field, onLayoutConfig: true, dataUnit: this.dataUnit, messagesBuilder: this.messagesBuilder, onSetFieldAsAvailable: (e) => this.handleSetFieldAsAvailable(e.detail) })));
423
+ }
424
+ renderDraggableGroups() {
425
+ const draggableGroups = this.groupsList.filter(g => g.name !== constants.GROUP_NAMES.noGroup);
426
+ return (draggableGroups.map((group, index$1) => {
427
+ var _a;
428
+ return (index.h("div", { key: group.name, class: 'group-config', "data-group-name": group.name }, index.h("ez-collapsible-box", { ref: ref => this.groupsRefList[index$1] = ref, label: group.name, headerSize: "large", editable: true, removable: true, "icon-placement": "left", onEzRemove: () => this.removeGroup(group), onEzSaveEditLabel: (event => this.handleRenameGroup(event)), onEzEditLabelMode: ({ detail }) => this.isEditingGroupName.emit(detail), conditionalSave: (newLabel) => this.canSaveGroup(newLabel, index$1) }, index.h("div", { id: this.getFieldsContainerId(group.name), class: `group-content ${!((_a = group.fields) === null || _a === void 0 ? void 0 : _a.length) ? 'empty-content' : ''}`, "data-group-name": group.name }, this.renderFields(group.fields)))));
429
+ }));
430
+ }
431
+ renderFixedFields() {
432
+ var _a, _b;
433
+ const noGroupFields = (_b = (_a = this.groupsList.find(g => g.name === constants.GROUP_NAMES.noGroup)) === null || _a === void 0 ? void 0 : _a.fields) !== null && _b !== void 0 ? _b : [];
434
+ return this.renderFields(noGroupFields);
435
+ }
436
+ handleRenameGuide(editDetails) {
437
+ const { value: actualValue, newValue } = editDetails.detail;
438
+ this.isEditGuideNameActive = false;
439
+ if (newValue === actualValue) {
440
+ return;
441
+ }
442
+ const duplicatedName = this.guideNames.includes(newValue.toLowerCase());
443
+ const forbiddenName = this.reservedGuideNames.includes(newValue.toLowerCase());
444
+ if (forbiddenName || duplicatedName) {
445
+ const title = this.getMessage('snkFormConfig.confirm.title');
446
+ const message = forbiddenName ? this.buildReservedTabNameContent(newValue) : this.buildDuplicatedTabNameContent(newValue);
447
+ utils.ApplicationUtils.alert(title, message).then(() => this._refTextEdit.applyFocusSelect());
448
+ return;
449
+ }
450
+ this.guideRenamed.emit(newValue);
451
+ }
452
+ cancelEditGuideName() {
453
+ this.isEditGuideNameActive = false;
454
+ }
455
+ async startGuideNameEdition() {
456
+ this.isEditGuideNameActive = true;
457
+ setTimeout(async () => {
458
+ await this._refTextEdit.applyFocusSelect();
459
+ }, 200);
460
+ }
461
+ getTextEditStyle() {
462
+ return {
463
+ fontSize: '20px',
464
+ fontWeight: '500',
465
+ fontFamily: 'Roboto',
466
+ };
467
+ }
468
+ renderGuideName() {
469
+ var _a, _b;
470
+ if (this.isEditGuideNameActive) {
471
+ return (index.h("div", { class: 'guide-header' }, index.h("ez-text-edit", { class: "collapsible-box__text-edit", ref: ref => this._refTextEdit = ref, value: (_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.label, styled: this.getTextEditStyle(), onSaveEdition: (ev) => this.handleRenameGuide(ev), onCancelEdition: () => this.cancelEditGuideName() })));
472
+ }
473
+ return (index.h("div", { class: 'guide-header' }, index.h("span", { class: 'guide-header-label' }, (_b = this.selectedGuide) === null || _b === void 0 ? void 0 : _b.label), this.renderEditGuideNameButton()));
474
+ }
475
+ renderEditGuideNameButton() {
476
+ var _a;
477
+ if (this.isMainSection || ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name) === constants.TAB_NAMES.main)
478
+ return;
479
+ return (index.h("ez-button", { mode: "icon", class: "ez-button--tertiary", onClick: () => this.startGuideNameEdition(), size: "medium", iconName: 'edit', title: this.getMessage('snkFormConfig.buttons.rename') }));
480
+ }
481
+ setCustomCSSProperties() {
482
+ document.documentElement.style.setProperty('--empty-content-message', `"${this.getMessage('snkFormConfig.form.labelDropField')}"`);
483
+ document.documentElement.style.setProperty('--no-group-message', `"${this.getMessage('snkFormConfig.form.subTitleInfo')}"`);
484
+ }
485
+ componentWillLoad() {
486
+ var _a;
487
+ this.groupsListMemory = [...((_a = this.groupsList) !== null && _a !== void 0 ? _a : [])];
488
+ }
489
+ componentDidRender() {
490
+ this.destroySortableInstances();
491
+ this.makeGroupsDraggable();
492
+ this.makeDynamicFieldsContainersDraggable();
493
+ this.makeFieldContainerDraggable(this.getNoGroupContainerId());
494
+ this.setCustomCSSProperties();
495
+ }
496
+ disconnectedCallback() {
497
+ this.destroySortableInstances();
498
+ }
499
+ render() {
500
+ var _a;
501
+ if (!this.selectedGuide) {
502
+ return (index.h(index.Host, { class: 'ez-flex-item--auto ez-size-height--full ez-box ez-padding--medium content-container' }, index.h("span", { class: 'no-guide-selected' }, this.getMessage('snkFormConfig.form.noGuideSelected'))));
503
+ }
504
+ if (this.selectedGuide.isCustom || this.selectedGuide.isDetail) {
505
+ return (index.h(index.Host, { class: 'ez-flex-item--auto ez-size-height--full ez-box ez-padding--medium content-container' }, index.h("div", { class: 'message-container' }, index.h("h1", { class: 'no-guide-selected' }, this.getMessage('snkFormConfig.form.canNotEditCustomGuide')), index.h("span", { class: 'message-config-detail' }, this.getMessage('snkFormConfig.form.canNotEditDetailGuide')))));
506
+ }
507
+ const isMain = this.isMainSection || ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name) === constants.TAB_NAMES.main;
508
+ const hostClass = `ez-flex-item--auto ez-size-height--full ez-box ez-padding--medium content-container${isMain ? ' is-main-section' : ''}`;
509
+ return (index.h(index.Host, { class: hostClass }, this.renderGuideName(), index.h("div", { class: 'layout-container' }, index.h("ez-scroller", { direction: 'vertical', activeShadow: true }, index.h("div", { class: 'no-group-container' }, index.h("div", { id: this.getNoGroupContainerId(), class: 'group-content', "data-group-name": constants.GROUP_NAMES.noGroup }, this.renderFixedFields())), index.h("hr", null), index.h("div", { id: this.getGroupsContainerId(), class: 'groups-container' }, this.renderDraggableGroups()))), index.h("div", { class: 'add-group-container', onClick: this.handleAddGroup.bind(this) }, index.h("ez-icon", { slot: "leftIcon", iconName: "plus" }), index.h("span", null, this.getMessage('snkFormConfig.form.createNewGroup')))));
510
+ }
511
+ get el() { return index.getElement(this); }
512
+ static get watchers() { return {
513
+ "messagesBuilder": ["onMessagesBuilderChange"],
514
+ "selectedGuide": ["observeSelectedGuide"],
515
+ "groupsList": ["observeGroupList"],
516
+ "isEditGuideNameActive": ["observeIsEditGuideNameActive"]
517
+ }; }
518
+ };
519
+ SnkDynaformFieldsLayout.style = snkDynaformFieldsLayoutCss;
520
+
521
+ const snkDynaformFieldsSelectorCss = ".sc-snk-dynaform-fields-selector-h{width:33.33333%;display:flex;box-shadow:var(--shadow--small, 0 0 16px rgba(0, 38, 111, 0.07));border-radius:var(--border--radius-medium, 6px);height:var(--snk-form-config-container-height);max-width:260px}.fields-label.sc-snk-dynaform-fields-selector{display:block;font-size:16px;font-weight:500;width:100%}.fields-count.sc-snk-dynaform-fields-selector{display:block;color:#AFB6C0;font-size:14px;padding:12px 0;font-weight:400;width:100%}.fields-container.sc-snk-dynaform-fields-selector{display:flex;flex-direction:column;gap:12px;height:calc(100vh - 220px);width:100%}.ghost.sc-snk-dynaform-fields-selector{opacity:.5;background:#c8fbe2}.filter-input.sc-snk-dynaform-fields-selector{padding-right:var(--space--2xs, 8px)}";
522
+
523
+ const SnkDynaformFieldsSelector = class {
524
+ constructor(hostRef) {
525
+ index.registerInstance(this, hostRef);
526
+ this.fieldListChanged = index.createEvent(this, "fieldListChanged", 7);
527
+ this.availableFields = [];
528
+ this.dataUnit = undefined;
529
+ this.filterTerm = '';
530
+ this.messagesBuilder = undefined;
531
+ }
532
+ onAddField(evt) {
533
+ const newIndex = evt.newIndex;
534
+ const item = evt.item;
535
+ const fieldConfig = item.fieldConfig;
536
+ const updatedFields = this.addItemInPosition(newIndex, fieldConfig);
537
+ this.fieldListChanged.emit(updatedFields);
538
+ }
539
+ addItemInPosition(newIndex, fieldConfig) {
540
+ return [
541
+ ...this.availableFields.slice(0, newIndex),
542
+ fieldConfig,
543
+ ...this.availableFields.slice(newIndex),
544
+ ];
545
+ }
546
+ onRemoveField(evt) {
547
+ const item = evt.item;
548
+ const fieldName = item.fieldConfig.name;
549
+ const updatedFields = [...this.availableFields.filter(f => f.name !== fieldName)];
550
+ this.fieldListChanged.emit(updatedFields);
551
+ requestAnimationFrame(() => item.remove());
552
+ return;
553
+ }
554
+ renderFields() {
555
+ const fieldsToShow = core.ArrayUtils.applyStringFilter(this.filterTerm, this.availableFields);
556
+ return fieldsToShow.map(field => (index.h("snk-dynaform-field-item", { key: field.name, dataUnit: this.dataUnit, fieldConfig: field, messagesBuilder: this.messagesBuilder })));
557
+ }
558
+ getCountText() {
559
+ if (!this.availableFields.length)
560
+ return this.getMessage('snkFormConfig.availableFields.labelNoFields');
561
+ if (this.availableFields.length === 1)
562
+ return this.getMessage('snkFormConfig.availableFields.labelOneField');
563
+ return `${this.availableFields.length} ${this.getMessage('snkFormConfig.availableFields.labelAvailableFields')}`;
564
+ }
565
+ initializeDraggableContainer() {
566
+ new sortable_esm.Sortable(this.el.querySelector(`#${FormConfigHelper.ID_AVAILABLE_FIELDS}`), {
567
+ group: 'fields',
568
+ direction: 'vertical',
569
+ ghostClass: 'ghost',
570
+ animation: 15,
571
+ onAdd: (evt) => this.onAddField(evt),
572
+ onRemove: (evt) => this.onRemoveField(evt),
573
+ });
574
+ }
575
+ getMessage(key, params) {
576
+ var _a;
577
+ return (_a = this.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage(key, params);
578
+ }
579
+ componentDidRender() {
580
+ this.initializeDraggableContainer();
581
+ }
582
+ render() {
583
+ return (index.h(index.Host, { class: 'ez-col ez-col--sd-4 ez-col--tb-4 ez-padding--medium' }, index.h("span", { class: 'fields-label ez-padding-bottom--small' }, this.getMessage('snkFormConfig.availableFields.title')), index.h("ez-filter-input", { class: 'filter-input', slot: "content", mode: "slim", label: this.getMessage('snkFormConfig.availableFields.labelSearchField'), onEzChange: evt => this.filterTerm = evt.detail }), index.h("span", { class: 'fields-count' }, this.getCountText()), index.h("ez-scroller", { direction: 'vertical', activeShadow: true }, index.h("div", { id: FormConfigHelper.ID_AVAILABLE_FIELDS, class: 'fields-container' }, this.renderFields()))));
584
+ }
585
+ get el() { return index.getElement(this); }
586
+ };
587
+ SnkDynaformFieldsSelector.style = snkDynaformFieldsSelectorCss;
588
+
589
+ const snkDynaformGuidesConfiguratorCss = ".guides-tab-configurator.sc-snk-dynaform-guides-configurator{display:flex;flex-direction:column;width:100%;gap:var(--spece--8, 8px)}.tab-bar-row.sc-snk-dynaform-guides-configurator{display:flex;flex-direction:row;align-items:center;gap:var(--space--12, 12px);width:100%}.guides-tabselector.sc-snk-dynaform-guides-configurator{flex:1;min-width:0}.tab-actions.sc-snk-dynaform-guides-configurator{display:inline-flex;align-items:center;gap:var(--space--2, 2px);margin-left:var(--space--6, 6px)}.tab-actions.sc-snk-dynaform-guides-configurator ez-button.sc-snk-dynaform-guides-configurator{width:var(--space--20, 20px);align-items:center;justify-content:center;display:flex}.hidden-guides-bar.sc-snk-dynaform-guides-configurator{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space--8, 8px);padding:var(--space--8, 8px) 0;border-top:1px solid #dce0e8}.hidden-guides-label.sc-snk-dynaform-guides-configurator{font-size:var(--space--12, 12px);color:#afb6c0;white-space:nowrap}.hidden-guide-chip.sc-snk-dynaform-guides-configurator{display:flex;align-items:center;gap:4px;padding:2px var(--space--8, 8px);border:1px solid #dce0e8;border-radius:var(--space--12, 12px);background:#f5f7fa;transition:background 0.15s ease-in-out}.hidden-guide-chip.sc-snk-dynaform-guides-configurator:hover{background:#e2eaf4}.hidden-guide-chip.sc-snk-dynaform-guides-configurator ez-button.sc-snk-dynaform-guides-configurator{width:var(--space--20, 20px);align-items:center;justify-content:center;display:flex}.chip-label.sc-snk-dynaform-guides-configurator{font-size:13px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}";
590
+
591
+ const SnkDynaformGuidesConfigurator = class {
592
+ constructor(hostRef) {
593
+ index.registerInstance(this, hostRef);
594
+ this.guideSelected = index.createEvent(this, "guideSelected", 7);
595
+ this.guideListChanged = index.createEvent(this, "guideListChanged", 7);
596
+ this.guideDeleted = index.createEvent(this, "guideDeleted", 7);
597
+ this.createNewGuide = index.createEvent(this, "createNewGuide", 7);
598
+ this.sortLogic = (a, b) => {
599
+ var _a, _b;
600
+ const orderA = (_a = a.order) !== null && _a !== void 0 ? _a : Number.MAX_VALUE;
601
+ const orderB = (_b = b.order) !== null && _b !== void 0 ? _b : Number.MAX_VALUE;
602
+ return orderA - orderB;
603
+ };
604
+ this.handleAddGuide = () => {
605
+ this.createNewGuide.emit();
606
+ };
607
+ this.mainGuide = undefined;
608
+ this.visibleGuides = [];
609
+ this.hiddenGuides = [];
610
+ this.guidesList = [];
611
+ this.selectedGuide = undefined;
612
+ this.mainGuideName = undefined;
613
+ this.messagesBuilder = undefined;
614
+ }
615
+ observeGuidesList(newGuides) {
616
+ this.initGuidesConfig(newGuides);
617
+ }
618
+ observeMainGuideName() {
619
+ this.initGuidesConfig(this.guidesList);
620
+ }
621
+ observeSelectedGuide(newGuide) {
622
+ this.guideSelected.emit(newGuide);
623
+ }
624
+ componentWillLoad() {
625
+ this.initGuidesConfig(this.guidesList);
626
+ }
627
+ getMessage(key, params) {
628
+ return this.messagesBuilder.getMessage(key, params);
629
+ }
630
+ initGuidesConfig(newGuides) {
631
+ const mainName = this.mainGuideName;
632
+ const isMain = (guide) => !!mainName && guide.name === mainName;
633
+ const visibleAux = newGuides.filter(guide => guide.visible && !isMain(guide));
634
+ const hiddenAux = newGuides.filter(guide => !guide.visible && !isMain(guide));
635
+ this.visibleGuides = [...visibleAux].sort(this.sortLogic);
636
+ this.hiddenGuides = [...hiddenAux].sort(this.sortLogic);
637
+ this.mainGuide = newGuides.find(g => isMain(g));
638
+ }
639
+ handleSelectGuide(guide, evt) {
640
+ evt.stopPropagation();
641
+ this.selectedGuide = guide;
642
+ }
643
+ toggleGuideVisibility(guide, evt) {
644
+ evt.stopPropagation();
645
+ const updatedGuide = Object.assign(Object.assign({}, guide), { visible: !guide.visible });
646
+ let visibleAux;
647
+ let hiddenAux;
648
+ if (guide.visible) {
649
+ visibleAux = this.visibleGuides.filter(g => g.name !== guide.name);
650
+ hiddenAux = [...this.hiddenGuides, updatedGuide];
651
+ }
652
+ else {
653
+ visibleAux = [...this.visibleGuides, updatedGuide];
654
+ hiddenAux = this.hiddenGuides.filter(g => g.name !== guide.name);
655
+ }
656
+ this.applyGuidesUpdate([...visibleAux, ...hiddenAux]);
657
+ }
658
+ adjustListOrder(guideList) {
659
+ return guideList.map((g, index) => (Object.assign(Object.assign({}, g), { order: index })));
660
+ }
661
+ applyGuidesUpdate(updatedGuideList) {
662
+ let newGuidesList = this.adjustListOrder(updatedGuideList);
663
+ if (this.mainGuide) {
664
+ newGuidesList = [this.mainGuide, ...newGuidesList];
665
+ }
666
+ if (!core.ObjectUtils.equals(newGuidesList, this.guidesList)) {
667
+ this.guideListChanged.emit(newGuidesList);
668
+ }
669
+ }
670
+ async handleDeleteGuide(guide, e) {
671
+ e.stopPropagation();
672
+ const title = this.getMessage('snkFormConfig.confirm.title');
673
+ const message = this.getMessage('snkFormConfig.confirm.deleteGuide').replace('{0}', guide.label);
674
+ const canRemove = await utils.ApplicationUtils.confirm(title, message);
675
+ if (!canRemove)
676
+ return;
677
+ this.guideDeleted.emit(guide);
678
+ const deletedMessage = this.getMessage('snkFormConfig.info.successfullyGuideDeleted').replace('{0}', guide.label);
679
+ utils.ApplicationUtils.info(deletedMessage);
680
+ }
681
+ buildTabs() {
682
+ return this.visibleGuides.map((guide, i) => ({
683
+ tabKey: guide.name,
684
+ label: guide.label,
685
+ index: i,
686
+ }));
687
+ }
688
+ handleTabChange(tab) {
689
+ var _a;
690
+ if (!tab)
691
+ return;
692
+ const guide = this.guidesList.find(g => g.name === tab.tabKey);
693
+ if (guide && guide.name !== ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name)) {
694
+ this.selectedGuide = guide;
695
+ }
696
+ }
697
+ handleReorder(reorderedTabs) {
698
+ const visibleReordered = reorderedTabs
699
+ .map(t => this.visibleGuides.find(g => g.name === t.tabKey))
700
+ .filter(Boolean);
701
+ this.applyGuidesUpdate([...visibleReordered, ...this.hiddenGuides]);
702
+ }
703
+ renderTabActions() {
704
+ return this.visibleGuides.map((guide, i) => {
705
+ const slotIndex = i;
706
+ const isProtected = guide.isCustom || guide.isDetail;
707
+ return (index.h("div", { key: guide.name, slot: `tab${slotIndex}`, class: "tab-actions", onClick: (e) => e.stopPropagation() }, index.h("ez-button", { mode: "icon", class: "ez-button--tertiary tab-action-btn", size: "small", iconName: "eye-off", title: this.getMessage('snkFormConfig.guidesConfigurator.actions.hide'), onClick: (e) => this.toggleGuideVisibility(guide, e) }), index.h("ez-button", { mode: "icon", class: "ez-button--tertiary tab-action-btn", size: "small", iconName: "delete", isDisabled: isProtected, title: isProtected
708
+ ? this.getMessage('snkFormConfig.guidesConfigurator.canNotDeleteCustomGuide')
709
+ : this.getMessage('snkFormConfig.guidesConfigurator.actions.delete'), onClick: (e) => this.handleDeleteGuide(guide, e) })));
710
+ });
711
+ }
712
+ renderHiddenGuidesBar() {
713
+ if (this.hiddenGuides.length === 0)
714
+ return null;
715
+ return (index.h("div", { class: "hidden-guides-bar" }, index.h("span", { class: "hidden-guides-label" }, this.getMessage('snkFormConfig.guidesConfigurator.hiddenGuides'), ":"), this.hiddenGuides.map(guide => {
716
+ const isProtected = guide.isCustom || guide.isDetail;
717
+ return (index.h("div", { key: guide.name, class: "hidden-guide-chip", title: guide.label }, index.h("span", { class: "chip-label", onClick: (e) => this.handleSelectGuide(guide, e) }, guide.label), index.h("ez-button", { mode: "icon", class: "ez-button--tertiary", size: "small", iconName: "eye", title: this.getMessage('snkFormConfig.guidesConfigurator.actions.show'), onClick: (e) => this.toggleGuideVisibility(guide, e) }), index.h("ez-button", { mode: "icon", class: "ez-button--tertiary", size: "small", iconName: "delete", isDisabled: isProtected, title: isProtected
718
+ ? this.getMessage('snkFormConfig.guidesConfigurator.canNotDeleteCustomGuide')
719
+ : this.getMessage('snkFormConfig.guidesConfigurator.actions.delete'), onClick: (e) => this.handleDeleteGuide(guide, e) })));
720
+ })));
721
+ }
722
+ render() {
723
+ var _a;
724
+ const tabs = this.buildTabs();
725
+ return (index.h("div", { class: "guides-tab-configurator" }, index.h("div", { class: "tab-bar-row" }, index.h("ez-tabselector", { class: "guides-tabselector", tabs: tabs, selectedTab: (_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name, reorderable: true, onEzChange: (evt) => this.handleTabChange(evt.detail), onEzReorder: (evt) => this.handleReorder(evt.detail) }, this.renderTabActions()), index.h("ez-button", { label: this.getMessage('snkFormConfig.guidesConfigurator.createNewGuide'), variant: "secondary", size: "medium", leftIconName: "plus", onClick: this.handleAddGuide })), this.renderHiddenGuidesBar()));
726
+ }
727
+ static get watchers() { return {
728
+ "guidesList": ["observeGuidesList"],
729
+ "mainGuideName": ["observeMainGuideName"],
730
+ "selectedGuide": ["observeSelectedGuide"]
731
+ }; }
732
+ };
733
+ SnkDynaformGuidesConfigurator.style = snkDynaformGuidesConfiguratorCss;
734
+
735
+ exports.snk_dynaform_config_header = SnkDynaformConfigHeader;
736
+ exports.snk_dynaform_configs_button = SnkDynaformConfigsButton;
737
+ exports.snk_dynaform_fields_layout = SnkDynaformFieldsLayout;
738
+ exports.snk_dynaform_fields_selector = SnkDynaformFieldsSelector;
739
+ exports.snk_dynaform_guides_configurator = SnkDynaformGuidesConfigurator;