@sankhyalabs/sankhyablocks 10.1.0-dev.52 → 10.1.0-dev.54

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 (265) hide show
  1. package/dist/cjs/{ConfigStorage-a1fab5ca.js → ConfigStorage-4201dd3d.js} +2 -2
  2. package/dist/cjs/{DataFetcher-384d2ce8.js → DataFetcher-b3a8075d.js} +2830 -2
  3. package/dist/cjs/FormConfigHelper-c5f5473a.js +342 -0
  4. package/dist/cjs/{ISave-ecbe9336.js → ISave-4674c283.js} +1 -1
  5. package/dist/cjs/{PersonalizedFilterUtils-eccb267a.js → PersonalizedFilterUtils-263e4d24.js} +52 -5
  6. package/dist/cjs/{SnkFormConfigManager-44386305.js → SnkFormConfigManager-c3a49038.js} +2 -2
  7. package/dist/cjs/{SnkMultiSelectionListDataSource-d341dd02.js → SnkMultiSelectionListDataSource-3a13fd34.js} +4 -4
  8. package/dist/cjs/{auth-fetcher-6b134ec4.js → auth-fetcher-0ecc53ff.js} +1 -1
  9. package/dist/cjs/{dataunit-fetcher-b9822794.js → dataunit-fetcher-c7e66f0d.js} +13 -4
  10. package/dist/cjs/{filter-type.enum-2bb46d2a.js → filter-type.enum-b3b388af.js} +7 -0
  11. package/dist/cjs/{form-config-fetcher-45d1964c.js → form-config-fetcher-f80dbc3b.js} +23 -5
  12. package/dist/cjs/index-1894343a.js +24 -36
  13. package/dist/cjs/loader.cjs.js +1 -1
  14. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +4 -5
  15. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  16. package/dist/cjs/snk-actions-button_9.cjs.entry.js +5 -6
  17. package/dist/cjs/snk-application.cjs.entry.js +7 -8
  18. package/dist/cjs/snk-attach_11.cjs.entry.js +2950 -0
  19. package/dist/cjs/snk-crud.cjs.entry.js +31 -243
  20. package/dist/cjs/snk-data-exporter.cjs.entry.js +5 -6
  21. package/dist/cjs/{snk-data-unit-4b6dc396.js → snk-data-unit-35f10e01.js} +11 -11
  22. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -4
  23. package/dist/cjs/snk-detail-view.cjs.entry.js +9 -10
  24. package/dist/cjs/snk-dynaform-config-header_5.cjs.entry.js +739 -0
  25. package/dist/cjs/snk-dynaform-detail-view_2.cjs.entry.js +938 -0
  26. package/dist/cjs/snk-dynaform-field-config_2.cjs.entry.js +327 -0
  27. package/dist/cjs/snk-dynaform-guides-view-e98f7f3a.js +747 -0
  28. package/dist/cjs/snk-dynaform-guides-view.cjs.entry.js +23 -0
  29. package/dist/cjs/snk-dynaform.cjs.entry.js +675 -0
  30. package/dist/cjs/{snk-expression-group_2.cjs.entry.js → snk-expression-group_4.cjs.entry.js} +421 -18
  31. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +41 -44
  32. package/dist/cjs/snk-form_2.cjs.entry.js +4 -5
  33. package/dist/cjs/snk-grid.cjs.entry.js +7 -8
  34. package/dist/cjs/{snk-guides-viewer-8e7a503b.js → snk-guides-viewer-3054d541.js} +1 -1
  35. package/dist/cjs/snk-guides-viewer.cjs.entry.js +5 -6
  36. package/dist/cjs/snk-layout-form-config.cjs.entry.js +4 -5
  37. package/dist/cjs/snk-pesquisa.cjs.entry.js +4 -5
  38. package/dist/cjs/taskbarUtils-383c596e.js +231 -0
  39. package/dist/collection/collection-manifest.json +17 -0
  40. package/dist/collection/components/snk-dynaform/interfaces/PropsCustomEditor.js +1 -0
  41. package/dist/collection/components/snk-dynaform/interfaces/PropsCustomRender.js +1 -0
  42. package/dist/collection/components/snk-dynaform/snk-dynaform.css +64 -0
  43. package/dist/collection/components/snk-dynaform/snk-dynaform.js +1657 -0
  44. package/dist/collection/components/snk-dynaform/subcomponents/CardFormResizeObserver.js +26 -0
  45. package/dist/collection/components/snk-dynaform/subcomponents/GuideBuilder.js +51 -0
  46. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.css +112 -0
  47. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.js +992 -0
  48. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.css +64 -0
  49. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.js +588 -0
  50. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.css +98 -0
  51. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.js +1167 -0
  52. package/dist/collection/components/snk-dynaform-form-config/FormConfigHelper.js +325 -0
  53. package/dist/collection/components/snk-dynaform-form-config/SnkFormConfigManager.js +212 -0
  54. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.css +17 -0
  55. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.js +236 -0
  56. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.css +41 -0
  57. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.js +170 -0
  58. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.css +22 -0
  59. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.js +408 -0
  60. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-item.css +88 -0
  61. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-item.js +209 -0
  62. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.css +167 -0
  63. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.js +655 -0
  64. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.css +42 -0
  65. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.js +171 -0
  66. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-form-config.css +66 -0
  67. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-form-config.js +557 -0
  68. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.css +80 -0
  69. package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.js +326 -0
  70. package/dist/collection/components/snk-grid/snk-grid.css +4 -2
  71. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -1
  72. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +22 -4
  73. package/dist/components/dataunit-fetcher.js +11 -1
  74. package/dist/components/form-config-fetcher.js +22 -4
  75. package/dist/components/index.d.ts +12 -0
  76. package/dist/components/index.js +12 -0
  77. package/dist/components/snk-crud.js +1 -212
  78. package/dist/components/snk-dynaform-config-header.d.ts +11 -0
  79. package/dist/components/snk-dynaform-config-header.js +6 -0
  80. package/dist/components/snk-dynaform-config-header2.js +103 -0
  81. package/dist/components/snk-dynaform-configs-button.d.ts +11 -0
  82. package/dist/components/snk-dynaform-configs-button.js +6 -0
  83. package/dist/components/snk-dynaform-configs-button2.js +76 -0
  84. package/dist/components/snk-dynaform-detail-view.d.ts +11 -0
  85. package/dist/components/snk-dynaform-detail-view.js +6 -0
  86. package/dist/components/snk-dynaform-detail-view2.js +1835 -0
  87. package/dist/components/snk-dynaform-field-config.d.ts +11 -0
  88. package/dist/components/snk-dynaform-field-config.js +6 -0
  89. package/dist/components/snk-dynaform-field-config2.js +605 -0
  90. package/dist/components/snk-dynaform-field-item.d.ts +11 -0
  91. package/dist/components/snk-dynaform-field-item.js +6 -0
  92. package/dist/components/snk-dynaform-field-item2.js +96 -0
  93. package/dist/components/snk-dynaform-fields-layout.d.ts +11 -0
  94. package/dist/components/snk-dynaform-fields-layout.js +6 -0
  95. package/dist/components/snk-dynaform-fields-layout2.js +428 -0
  96. package/dist/components/snk-dynaform-fields-selector.d.ts +11 -0
  97. package/dist/components/snk-dynaform-fields-selector.js +6 -0
  98. package/dist/components/snk-dynaform-fields-selector2.js +104 -0
  99. package/dist/components/snk-dynaform-form-config.d.ts +11 -0
  100. package/dist/components/snk-dynaform-form-config.js +6 -0
  101. package/dist/components/snk-dynaform-form-config2.js +430 -0
  102. package/dist/components/snk-dynaform-form-view.d.ts +11 -0
  103. package/dist/components/snk-dynaform-form-view.js +6 -0
  104. package/dist/components/snk-dynaform-form-view2.js +270 -0
  105. package/dist/components/snk-dynaform-guides-configurator.d.ts +11 -0
  106. package/dist/components/snk-dynaform-guides-configurator.js +6 -0
  107. package/dist/components/snk-dynaform-guides-configurator2.js +173 -0
  108. package/dist/components/snk-dynaform-guides-view.d.ts +11 -0
  109. package/dist/components/snk-dynaform-guides-view.js +6 -0
  110. package/dist/components/snk-dynaform.d.ts +11 -0
  111. package/dist/components/snk-dynaform.js +1003 -0
  112. package/dist/components/snk-grid2.js +1 -1
  113. package/dist/components/taskbarUtils.js +224 -0
  114. package/dist/esm/{ConfigStorage-76872695.js → ConfigStorage-e834d1ea.js} +2 -2
  115. package/dist/esm/{DataFetcher-e60f8d53.js → DataFetcher-5ed0a377.js} +2830 -3
  116. package/dist/esm/FormConfigHelper-efc29480.js +328 -0
  117. package/dist/esm/{ISave-4929c071.js → ISave-5b46d691.js} +1 -1
  118. package/dist/esm/{PersonalizedFilterUtils-d2439a9a.js → PersonalizedFilterUtils-45b5803c.js} +49 -2
  119. package/dist/esm/{SnkFormConfigManager-83f6b22f.js → SnkFormConfigManager-bfd575c2.js} +2 -2
  120. package/dist/esm/{SnkMultiSelectionListDataSource-18abafb1.js → SnkMultiSelectionListDataSource-22b50dd6.js} +4 -4
  121. package/dist/esm/{auth-fetcher-1a31c1e4.js → auth-fetcher-5283045d.js} +1 -1
  122. package/dist/esm/{dataunit-fetcher-c176e002.js → dataunit-fetcher-2200fdd6.js} +12 -3
  123. package/dist/esm/{filter-type.enum-f6a8fe23.js → filter-type.enum-62b7fe88.js} +8 -1
  124. package/dist/esm/{form-config-fetcher-b44b2727.js → form-config-fetcher-db1bf140.js} +23 -5
  125. package/dist/esm/index-04f73a26.js +24 -36
  126. package/dist/esm/loader.js +1 -1
  127. package/dist/esm/pesquisa-grid_2.entry.js +4 -5
  128. package/dist/esm/sankhyablocks.js +1 -1
  129. package/dist/esm/snk-actions-button_9.entry.js +5 -6
  130. package/dist/esm/snk-application.entry.js +6 -7
  131. package/dist/esm/snk-attach_11.entry.js +2936 -0
  132. package/dist/esm/snk-crud.entry.js +6 -218
  133. package/dist/esm/snk-data-exporter.entry.js +5 -6
  134. package/dist/esm/{snk-data-unit-d8cfa950.js → snk-data-unit-e8bd4143.js} +2 -2
  135. package/dist/esm/snk-data-unit.entry.js +3 -4
  136. package/dist/esm/snk-detail-view.entry.js +7 -8
  137. package/dist/esm/snk-dynaform-config-header_5.entry.js +731 -0
  138. package/dist/esm/snk-dynaform-detail-view_2.entry.js +933 -0
  139. package/dist/esm/snk-dynaform-field-config_2.entry.js +322 -0
  140. package/dist/esm/snk-dynaform-guides-view-1f1455d6.js +744 -0
  141. package/dist/esm/snk-dynaform-guides-view.entry.js +15 -0
  142. package/dist/esm/snk-dynaform.entry.js +671 -0
  143. package/dist/esm/{snk-expression-group_2.entry.js → snk-expression-group_4.entry.js} +405 -4
  144. package/dist/esm/snk-filter-bar_4.entry.js +5 -8
  145. package/dist/esm/snk-form_2.entry.js +4 -5
  146. package/dist/esm/snk-grid.entry.js +7 -8
  147. package/dist/esm/{snk-guides-viewer-adf39ea2.js → snk-guides-viewer-95fefcaa.js} +1 -1
  148. package/dist/esm/snk-guides-viewer.entry.js +5 -6
  149. package/dist/esm/snk-layout-form-config.entry.js +4 -5
  150. package/dist/esm/snk-pesquisa.entry.js +4 -5
  151. package/dist/esm/taskbarUtils-682ca78c.js +225 -0
  152. package/dist/sankhyablocks/p-06b6c284.entry.js +1 -0
  153. package/dist/sankhyablocks/p-09e2255b.entry.js +1 -0
  154. package/dist/sankhyablocks/p-0dbd53d9.js +1 -0
  155. package/dist/sankhyablocks/{p-5c250661.js → p-1a04f537.js} +1 -1
  156. package/dist/sankhyablocks/{p-ab5e12fa.js → p-1cc4cf61.js} +1 -1
  157. package/dist/sankhyablocks/{p-f5ad0720.js → p-2040953e.js} +1 -1
  158. package/dist/sankhyablocks/p-22ddc1a5.entry.js +1 -0
  159. package/dist/sankhyablocks/p-24b059ee.entry.js +1 -0
  160. package/dist/sankhyablocks/p-2b581179.entry.js +1 -0
  161. package/dist/sankhyablocks/p-449dfe55.entry.js +1 -0
  162. package/dist/sankhyablocks/p-451b5bcc.entry.js +1 -0
  163. package/dist/sankhyablocks/p-46d7e2de.js +1 -0
  164. package/dist/sankhyablocks/{p-3c990841.js → p-51e853f2.js} +1 -1
  165. package/dist/sankhyablocks/p-51f1485c.entry.js +1 -0
  166. package/dist/sankhyablocks/p-58709cf9.js +1 -0
  167. package/dist/sankhyablocks/p-589016e2.entry.js +1 -0
  168. package/dist/sankhyablocks/p-5c6eede7.js +60 -0
  169. package/dist/sankhyablocks/p-5d02c032.js +1 -0
  170. package/dist/sankhyablocks/p-5d50f59a.entry.js +1 -0
  171. package/dist/sankhyablocks/p-670c43e3.entry.js +1 -0
  172. package/dist/sankhyablocks/{p-b1bb4cf1.js → p-70c2ee5c.js} +1 -1
  173. package/dist/sankhyablocks/p-77c26de0.js +1 -0
  174. package/dist/sankhyablocks/p-92c71225.entry.js +1 -0
  175. package/dist/sankhyablocks/p-9c89a76a.entry.js +1 -0
  176. package/dist/sankhyablocks/{p-4f7adf97.js → p-b1bf9564.js} +1 -1
  177. package/dist/sankhyablocks/p-c538bd6c.entry.js +1 -0
  178. package/dist/sankhyablocks/p-ccd61eb8.entry.js +1 -0
  179. package/dist/sankhyablocks/{p-3704bf1b.js → p-d5810110.js} +1 -1
  180. package/dist/sankhyablocks/p-d88278f8.js +28 -0
  181. package/dist/sankhyablocks/p-dc45e9e5.entry.js +1 -0
  182. package/dist/sankhyablocks/{p-8fe740b7.entry.js → p-dc83c70f.entry.js} +2 -2
  183. package/dist/sankhyablocks/p-e5362a5c.js +1 -0
  184. package/dist/sankhyablocks/p-edd44079.entry.js +1 -0
  185. package/dist/sankhyablocks/p-eff38390.entry.js +1 -0
  186. package/dist/sankhyablocks/p-ff28e5e4.entry.js +1 -0
  187. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  188. package/dist/types/components/snk-dynaform/interfaces/PropsCustomEditor.d.ts +4 -0
  189. package/dist/types/components/snk-dynaform/interfaces/PropsCustomRender.d.ts +4 -0
  190. package/dist/types/components/snk-dynaform/subcomponents/CardFormResizeObserver.d.ts +1 -0
  191. package/dist/types/components/snk-dynaform/subcomponents/GuideBuilder.d.ts +14 -0
  192. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.d.ts +158 -0
  193. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.d.ts +107 -0
  194. package/dist/types/components/snk-dynaform-form-config/FormConfigHelper.d.ts +36 -0
  195. package/dist/types/components/snk-dynaform-form-config/SnkFormConfigManager.d.ts +35 -0
  196. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.d.ts +23 -0
  197. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.d.ts +19 -0
  198. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.d.ts +56 -0
  199. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.d.ts +74 -0
  200. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.d.ts +21 -0
  201. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-form-config.d.ts +95 -0
  202. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.d.ts +35 -0
  203. package/dist/types/components.d.ts +2403 -1322
  204. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +1 -0
  205. package/package.json +5 -1
  206. package/react/components.d.ts +12 -0
  207. package/react/components.js +12 -0
  208. package/react/components.js.map +1 -1
  209. package/dist/cjs/SnkMessageBuilder-a9300ebe.js +0 -2833
  210. package/dist/cjs/default-filters-a09bf82b.js +0 -8
  211. package/dist/cjs/index-62760a9c.js +0 -49
  212. package/dist/cjs/index-8d94b7e0.js +0 -7
  213. package/dist/cjs/snk-attach.cjs.entry.js +0 -948
  214. package/dist/cjs/snk-default-filter.cjs.entry.js +0 -77
  215. package/dist/cjs/snk-filter-advanced-mode_3.cjs.entry.js +0 -99
  216. package/dist/cjs/snk-filter-detail.cjs.entry.js +0 -198
  217. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +0 -408
  218. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +0 -109
  219. package/dist/cjs/snk-image-input.cjs.entry.js +0 -160
  220. package/dist/cjs/snk-personalized-filter.cjs.entry.js +0 -358
  221. package/dist/cjs/snk-simple-crud.cjs.entry.js +0 -865
  222. package/dist/esm/SnkMessageBuilder-1eb7a1af.js +0 -2831
  223. package/dist/esm/default-filters-50105e43.js +0 -8
  224. package/dist/esm/index-620ac460.js +0 -7
  225. package/dist/esm/index-8acbae97.js +0 -49
  226. package/dist/esm/snk-attach.entry.js +0 -944
  227. package/dist/esm/snk-default-filter.entry.js +0 -73
  228. package/dist/esm/snk-filter-advanced-mode_3.entry.js +0 -93
  229. package/dist/esm/snk-filter-detail.entry.js +0 -194
  230. package/dist/esm/snk-filter-field-search_2.entry.js +0 -403
  231. package/dist/esm/snk-filter-modal-item.entry.js +0 -105
  232. package/dist/esm/snk-image-input.entry.js +0 -156
  233. package/dist/esm/snk-personalized-filter.entry.js +0 -354
  234. package/dist/esm/snk-simple-crud.entry.js +0 -861
  235. package/dist/sankhyablocks/p-0a4cdcde.entry.js +0 -1
  236. package/dist/sankhyablocks/p-0afc64df.entry.js +0 -1
  237. package/dist/sankhyablocks/p-10f27dc6.entry.js +0 -1
  238. package/dist/sankhyablocks/p-20f03230.entry.js +0 -1
  239. package/dist/sankhyablocks/p-2af8aca3.js +0 -1
  240. package/dist/sankhyablocks/p-3870748a.js +0 -28
  241. package/dist/sankhyablocks/p-3d294185.entry.js +0 -1
  242. package/dist/sankhyablocks/p-438a225f.entry.js +0 -1
  243. package/dist/sankhyablocks/p-4d04bc75.entry.js +0 -1
  244. package/dist/sankhyablocks/p-554c0e54.js +0 -1
  245. package/dist/sankhyablocks/p-57c184a2.entry.js +0 -1
  246. package/dist/sankhyablocks/p-68c1a093.js +0 -1
  247. package/dist/sankhyablocks/p-6a4b21dd.js +0 -1
  248. package/dist/sankhyablocks/p-6ae7543b.entry.js +0 -1
  249. package/dist/sankhyablocks/p-6e278003.js +0 -60
  250. package/dist/sankhyablocks/p-82bcb4cf.entry.js +0 -1
  251. package/dist/sankhyablocks/p-84345e7a.js +0 -1
  252. package/dist/sankhyablocks/p-95af0bb1.entry.js +0 -1
  253. package/dist/sankhyablocks/p-a905712a.entry.js +0 -1
  254. package/dist/sankhyablocks/p-aff2d081.entry.js +0 -1
  255. package/dist/sankhyablocks/p-b0a357b4.entry.js +0 -1
  256. package/dist/sankhyablocks/p-b568c1d4.js +0 -1
  257. package/dist/sankhyablocks/p-bab4cde4.entry.js +0 -1
  258. package/dist/sankhyablocks/p-bd3c1aaa.entry.js +0 -1
  259. package/dist/sankhyablocks/p-cc64239c.entry.js +0 -1
  260. package/dist/sankhyablocks/p-cd00a3d1.entry.js +0 -1
  261. package/dist/sankhyablocks/p-d9ec8c4b.entry.js +0 -1
  262. package/dist/sankhyablocks/p-dbdbb77a.entry.js +0 -1
  263. package/dist/sankhyablocks/p-e8df1dea.entry.js +0 -1
  264. package/dist/sankhyablocks/p-ef9343c3.entry.js +0 -1
  265. 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;