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

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 (263) 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-0bc94d36.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-bcbc38c0.js} +2 -3
  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-3b94547d.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-38748460.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/form-config-fetcher.js +22 -4
  72. package/dist/components/form-config-fetcher.js +22 -4
  73. package/dist/components/index.d.ts +12 -0
  74. package/dist/components/index.js +12 -0
  75. package/dist/components/snk-crud.js +1 -212
  76. package/dist/components/snk-dynaform-config-header.d.ts +11 -0
  77. package/dist/components/snk-dynaform-config-header.js +6 -0
  78. package/dist/components/snk-dynaform-config-header2.js +103 -0
  79. package/dist/components/snk-dynaform-configs-button.d.ts +11 -0
  80. package/dist/components/snk-dynaform-configs-button.js +6 -0
  81. package/dist/components/snk-dynaform-configs-button2.js +76 -0
  82. package/dist/components/snk-dynaform-detail-view.d.ts +11 -0
  83. package/dist/components/snk-dynaform-detail-view.js +6 -0
  84. package/dist/components/snk-dynaform-detail-view2.js +1835 -0
  85. package/dist/components/snk-dynaform-field-config.d.ts +11 -0
  86. package/dist/components/snk-dynaform-field-config.js +6 -0
  87. package/dist/components/snk-dynaform-field-config2.js +605 -0
  88. package/dist/components/snk-dynaform-field-item.d.ts +11 -0
  89. package/dist/components/snk-dynaform-field-item.js +6 -0
  90. package/dist/components/snk-dynaform-field-item2.js +96 -0
  91. package/dist/components/snk-dynaform-fields-layout.d.ts +11 -0
  92. package/dist/components/snk-dynaform-fields-layout.js +6 -0
  93. package/dist/components/snk-dynaform-fields-layout2.js +428 -0
  94. package/dist/components/snk-dynaform-fields-selector.d.ts +11 -0
  95. package/dist/components/snk-dynaform-fields-selector.js +6 -0
  96. package/dist/components/snk-dynaform-fields-selector2.js +104 -0
  97. package/dist/components/snk-dynaform-form-config.d.ts +11 -0
  98. package/dist/components/snk-dynaform-form-config.js +6 -0
  99. package/dist/components/snk-dynaform-form-config2.js +430 -0
  100. package/dist/components/snk-dynaform-form-view.d.ts +11 -0
  101. package/dist/components/snk-dynaform-form-view.js +6 -0
  102. package/dist/components/snk-dynaform-form-view2.js +270 -0
  103. package/dist/components/snk-dynaform-guides-configurator.d.ts +11 -0
  104. package/dist/components/snk-dynaform-guides-configurator.js +6 -0
  105. package/dist/components/snk-dynaform-guides-configurator2.js +173 -0
  106. package/dist/components/snk-dynaform-guides-view.d.ts +11 -0
  107. package/dist/components/snk-dynaform-guides-view.js +6 -0
  108. package/dist/components/snk-dynaform.d.ts +11 -0
  109. package/dist/components/snk-dynaform.js +1003 -0
  110. package/dist/components/snk-grid2.js +1 -1
  111. package/dist/components/taskbarUtils.js +224 -0
  112. package/dist/esm/{ConfigStorage-76872695.js → ConfigStorage-e834d1ea.js} +2 -2
  113. package/dist/esm/{DataFetcher-e60f8d53.js → DataFetcher-5ed0a377.js} +2830 -3
  114. package/dist/esm/FormConfigHelper-efc29480.js +328 -0
  115. package/dist/esm/{ISave-4929c071.js → ISave-5b46d691.js} +1 -1
  116. package/dist/esm/{PersonalizedFilterUtils-d2439a9a.js → PersonalizedFilterUtils-45b5803c.js} +49 -2
  117. package/dist/esm/{SnkFormConfigManager-83f6b22f.js → SnkFormConfigManager-bfd575c2.js} +2 -2
  118. package/dist/esm/{SnkMultiSelectionListDataSource-18abafb1.js → SnkMultiSelectionListDataSource-9e9166ae.js} +4 -4
  119. package/dist/esm/{auth-fetcher-1a31c1e4.js → auth-fetcher-5283045d.js} +1 -1
  120. package/dist/esm/{dataunit-fetcher-c176e002.js → dataunit-fetcher-3b1ca96e.js} +1 -2
  121. package/dist/esm/{filter-type.enum-f6a8fe23.js → filter-type.enum-62b7fe88.js} +8 -1
  122. package/dist/esm/{form-config-fetcher-b44b2727.js → form-config-fetcher-db1bf140.js} +23 -5
  123. package/dist/esm/index-04f73a26.js +24 -36
  124. package/dist/esm/loader.js +1 -1
  125. package/dist/esm/pesquisa-grid_2.entry.js +4 -5
  126. package/dist/esm/sankhyablocks.js +1 -1
  127. package/dist/esm/snk-actions-button_9.entry.js +5 -6
  128. package/dist/esm/snk-application.entry.js +6 -7
  129. package/dist/esm/snk-attach_11.entry.js +2936 -0
  130. package/dist/esm/snk-crud.entry.js +6 -218
  131. package/dist/esm/snk-data-exporter.entry.js +5 -6
  132. package/dist/esm/{snk-data-unit-d8cfa950.js → snk-data-unit-dfde62cb.js} +2 -2
  133. package/dist/esm/snk-data-unit.entry.js +3 -4
  134. package/dist/esm/snk-detail-view.entry.js +7 -8
  135. package/dist/esm/snk-dynaform-config-header_5.entry.js +731 -0
  136. package/dist/esm/snk-dynaform-detail-view_2.entry.js +933 -0
  137. package/dist/esm/snk-dynaform-field-config_2.entry.js +322 -0
  138. package/dist/esm/snk-dynaform-guides-view-1f1455d6.js +744 -0
  139. package/dist/esm/snk-dynaform-guides-view.entry.js +15 -0
  140. package/dist/esm/snk-dynaform.entry.js +671 -0
  141. package/dist/esm/{snk-expression-group_2.entry.js → snk-expression-group_4.entry.js} +405 -4
  142. package/dist/esm/snk-filter-bar_4.entry.js +5 -8
  143. package/dist/esm/snk-form_2.entry.js +4 -5
  144. package/dist/esm/snk-grid.entry.js +7 -8
  145. package/dist/esm/{snk-guides-viewer-adf39ea2.js → snk-guides-viewer-95fefcaa.js} +1 -1
  146. package/dist/esm/snk-guides-viewer.entry.js +5 -6
  147. package/dist/esm/snk-layout-form-config.entry.js +4 -5
  148. package/dist/esm/snk-pesquisa.entry.js +4 -5
  149. package/dist/esm/taskbarUtils-8501d09e.js +225 -0
  150. package/dist/sankhyablocks/p-0dbd53d9.js +1 -0
  151. package/dist/sankhyablocks/{p-f5ad0720.js → p-19d1ca14.js} +1 -1
  152. package/dist/sankhyablocks/{p-ab5e12fa.js → p-1cc4cf61.js} +1 -1
  153. package/dist/sankhyablocks/p-1edd6be6.entry.js +1 -0
  154. package/dist/sankhyablocks/p-22ddc1a5.entry.js +1 -0
  155. package/dist/sankhyablocks/p-24b059ee.entry.js +1 -0
  156. package/dist/sankhyablocks/{p-5c250661.js → p-2c00b93d.js} +1 -1
  157. package/dist/sankhyablocks/p-3623fddf.entry.js +1 -0
  158. package/dist/sankhyablocks/p-43c94ba5.entry.js +1 -0
  159. package/dist/sankhyablocks/p-449dfe55.entry.js +1 -0
  160. package/dist/sankhyablocks/p-451b5bcc.entry.js +1 -0
  161. package/dist/sankhyablocks/p-46d7e2de.js +1 -0
  162. package/dist/sankhyablocks/{p-3c990841.js → p-51e853f2.js} +1 -1
  163. package/dist/sankhyablocks/p-58709cf9.js +1 -0
  164. package/dist/sankhyablocks/p-589016e2.entry.js +1 -0
  165. package/dist/sankhyablocks/p-5d02c032.js +1 -0
  166. package/dist/sankhyablocks/p-5d50f59a.entry.js +1 -0
  167. package/dist/sankhyablocks/p-61776b68.entry.js +1 -0
  168. package/dist/sankhyablocks/p-6b8a1ec3.js +1 -0
  169. package/dist/sankhyablocks/p-7038cf62.entry.js +1 -0
  170. package/dist/sankhyablocks/{p-b1bb4cf1.js → p-70c2ee5c.js} +1 -1
  171. package/dist/sankhyablocks/p-7628e04f.entry.js +1 -0
  172. package/dist/sankhyablocks/p-7798788b.entry.js +1 -0
  173. package/dist/sankhyablocks/p-77c26de0.js +1 -0
  174. package/dist/sankhyablocks/p-7c34a0f7.entry.js +1 -0
  175. package/dist/sankhyablocks/p-a4a0d9b7.entry.js +1 -0
  176. package/dist/sankhyablocks/{p-4f7adf97.js → p-b1bf9564.js} +1 -1
  177. package/dist/sankhyablocks/p-b4c2a99c.entry.js +1 -0
  178. package/dist/sankhyablocks/p-b75af274.entry.js +1 -0
  179. package/dist/sankhyablocks/p-c538bd6c.entry.js +1 -0
  180. package/dist/sankhyablocks/{p-3704bf1b.js → p-d5810110.js} +1 -1
  181. package/dist/sankhyablocks/p-d7fd447e.entry.js +1 -0
  182. package/dist/sankhyablocks/p-d88278f8.js +28 -0
  183. package/dist/sankhyablocks/p-f076d742.js +60 -0
  184. package/dist/sankhyablocks/{p-8fe740b7.entry.js → p-f1ef090f.entry.js} +2 -2
  185. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  186. package/dist/types/components/snk-dynaform/interfaces/PropsCustomEditor.d.ts +4 -0
  187. package/dist/types/components/snk-dynaform/interfaces/PropsCustomRender.d.ts +4 -0
  188. package/dist/types/components/snk-dynaform/subcomponents/CardFormResizeObserver.d.ts +1 -0
  189. package/dist/types/components/snk-dynaform/subcomponents/GuideBuilder.d.ts +14 -0
  190. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.d.ts +158 -0
  191. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.d.ts +107 -0
  192. package/dist/types/components/snk-dynaform-form-config/FormConfigHelper.d.ts +36 -0
  193. package/dist/types/components/snk-dynaform-form-config/SnkFormConfigManager.d.ts +35 -0
  194. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.d.ts +23 -0
  195. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.d.ts +19 -0
  196. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.d.ts +56 -0
  197. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.d.ts +74 -0
  198. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.d.ts +21 -0
  199. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-form-config.d.ts +95 -0
  200. package/dist/types/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.d.ts +35 -0
  201. package/dist/types/components.d.ts +2403 -1322
  202. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +1 -0
  203. package/package.json +1 -1
  204. package/react/components.d.ts +12 -0
  205. package/react/components.js +12 -0
  206. package/react/components.js.map +1 -1
  207. package/dist/cjs/SnkMessageBuilder-a9300ebe.js +0 -2833
  208. package/dist/cjs/default-filters-a09bf82b.js +0 -8
  209. package/dist/cjs/index-62760a9c.js +0 -49
  210. package/dist/cjs/index-8d94b7e0.js +0 -7
  211. package/dist/cjs/snk-attach.cjs.entry.js +0 -948
  212. package/dist/cjs/snk-default-filter.cjs.entry.js +0 -77
  213. package/dist/cjs/snk-filter-advanced-mode_3.cjs.entry.js +0 -99
  214. package/dist/cjs/snk-filter-detail.cjs.entry.js +0 -198
  215. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +0 -408
  216. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +0 -109
  217. package/dist/cjs/snk-image-input.cjs.entry.js +0 -160
  218. package/dist/cjs/snk-personalized-filter.cjs.entry.js +0 -358
  219. package/dist/cjs/snk-simple-crud.cjs.entry.js +0 -865
  220. package/dist/esm/SnkMessageBuilder-1eb7a1af.js +0 -2831
  221. package/dist/esm/default-filters-50105e43.js +0 -8
  222. package/dist/esm/index-620ac460.js +0 -7
  223. package/dist/esm/index-8acbae97.js +0 -49
  224. package/dist/esm/snk-attach.entry.js +0 -944
  225. package/dist/esm/snk-default-filter.entry.js +0 -73
  226. package/dist/esm/snk-filter-advanced-mode_3.entry.js +0 -93
  227. package/dist/esm/snk-filter-detail.entry.js +0 -194
  228. package/dist/esm/snk-filter-field-search_2.entry.js +0 -403
  229. package/dist/esm/snk-filter-modal-item.entry.js +0 -105
  230. package/dist/esm/snk-image-input.entry.js +0 -156
  231. package/dist/esm/snk-personalized-filter.entry.js +0 -354
  232. package/dist/esm/snk-simple-crud.entry.js +0 -861
  233. package/dist/sankhyablocks/p-0a4cdcde.entry.js +0 -1
  234. package/dist/sankhyablocks/p-0afc64df.entry.js +0 -1
  235. package/dist/sankhyablocks/p-10f27dc6.entry.js +0 -1
  236. package/dist/sankhyablocks/p-20f03230.entry.js +0 -1
  237. package/dist/sankhyablocks/p-2af8aca3.js +0 -1
  238. package/dist/sankhyablocks/p-3870748a.js +0 -28
  239. package/dist/sankhyablocks/p-3d294185.entry.js +0 -1
  240. package/dist/sankhyablocks/p-438a225f.entry.js +0 -1
  241. package/dist/sankhyablocks/p-4d04bc75.entry.js +0 -1
  242. package/dist/sankhyablocks/p-554c0e54.js +0 -1
  243. package/dist/sankhyablocks/p-57c184a2.entry.js +0 -1
  244. package/dist/sankhyablocks/p-68c1a093.js +0 -1
  245. package/dist/sankhyablocks/p-6a4b21dd.js +0 -1
  246. package/dist/sankhyablocks/p-6ae7543b.entry.js +0 -1
  247. package/dist/sankhyablocks/p-6e278003.js +0 -60
  248. package/dist/sankhyablocks/p-82bcb4cf.entry.js +0 -1
  249. package/dist/sankhyablocks/p-84345e7a.js +0 -1
  250. package/dist/sankhyablocks/p-95af0bb1.entry.js +0 -1
  251. package/dist/sankhyablocks/p-a905712a.entry.js +0 -1
  252. package/dist/sankhyablocks/p-aff2d081.entry.js +0 -1
  253. package/dist/sankhyablocks/p-b0a357b4.entry.js +0 -1
  254. package/dist/sankhyablocks/p-b568c1d4.js +0 -1
  255. package/dist/sankhyablocks/p-bab4cde4.entry.js +0 -1
  256. package/dist/sankhyablocks/p-bd3c1aaa.entry.js +0 -1
  257. package/dist/sankhyablocks/p-cc64239c.entry.js +0 -1
  258. package/dist/sankhyablocks/p-cd00a3d1.entry.js +0 -1
  259. package/dist/sankhyablocks/p-d9ec8c4b.entry.js +0 -1
  260. package/dist/sankhyablocks/p-dbdbb77a.entry.js +0 -1
  261. package/dist/sankhyablocks/p-e8df1dea.entry.js +0 -1
  262. package/dist/sankhyablocks/p-ef9343c3.entry.js +0 -1
  263. package/dist/sankhyablocks/p-f4184ce7.js +0 -1
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface SnkDynaformFieldConfig extends Components.SnkDynaformFieldConfig, HTMLElement {}
4
+ export const SnkDynaformFieldConfig: {
5
+ prototype: SnkDynaformFieldConfig;
6
+ new (): SnkDynaformFieldConfig;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,6 @@
1
+ import { S as SnkDynaformFieldConfig$1, d as defineCustomElement$1 } from './snk-dynaform-field-config2.js';
2
+
3
+ const SnkDynaformFieldConfig = SnkDynaformFieldConfig$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { SnkDynaformFieldConfig, defineCustomElement };
@@ -0,0 +1,605 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h } from '@stencil/core/internal/client';
2
+ import { UserInterface, DataType, StringUtils, ObjectUtils, ApplicationContext } from '@sankhyalabs/core';
3
+ import { T as TAB_NAMES, G as GROUP_NAMES, D as DEFAULT_TYPE, a as VARS_BY_TYPE, b as TAGS_BY_TYPE } from './constants.js';
4
+ import { getConvertedValue } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
5
+ import { CheckMode } from '@sankhyalabs/ezui/dist/collection/utils';
6
+
7
+ const iconMap = new Map([
8
+ [UserInterface.DATE, 'calendar'],
9
+ [UserInterface.DATETIME, 'calendar-clock'],
10
+ [UserInterface.ELAPSEDTIME, 'timer-outline'],
11
+ [UserInterface.TIME, 'timer-outline'],
12
+ [UserInterface.DECIMALNUMBER, 'number'],
13
+ [UserInterface.INTEGERNUMBER, 'number'],
14
+ [UserInterface.FILE, 'zip'],
15
+ [UserInterface.IMAGE, 'pdf'],
16
+ [UserInterface.HTML, 'tag_code'],
17
+ [UserInterface.SEARCH, 'search'],
18
+ [UserInterface.SEARCHPLUS, 'search'],
19
+ [UserInterface.OPTIONSELECTOR, 'list'],
20
+ [UserInterface.CHECKBOX, 'list'],
21
+ [UserInterface.SWITCH, 'boolean'],
22
+ [UserInterface.PASSWORD, 'eye-off'],
23
+ ]);
24
+ const ID_AVAILABLE_FIELDS = 'container-available-fields';
25
+ var SORTABLE_PATH;
26
+ (function (SORTABLE_PATH) {
27
+ SORTABLE_PATH["FROM"] = "from";
28
+ SORTABLE_PATH["TO"] = "to";
29
+ })(SORTABLE_PATH || (SORTABLE_PATH = {}));
30
+ function getFieldsStructure(evt, path, group, tab) {
31
+ var _a;
32
+ const htmlStructure = (_a = evt === null || evt === void 0 ? void 0 : evt[path]) === null || _a === void 0 ? void 0 : _a.children;
33
+ if (!htmlStructure)
34
+ return [];
35
+ return Array.from(htmlStructure).map(({ fieldConfig }) => {
36
+ return Object.assign(Object.assign({}, fieldConfig), { group, tab });
37
+ });
38
+ }
39
+ function updateTabInFieldsFromGroupList(guideGroups, updatedName) {
40
+ return guideGroups.map(group => {
41
+ return Object.assign(Object.assign({}, group), { fields: group.fields.map(field => (Object.assign(Object.assign({}, field), { tab: updatedName }))) });
42
+ });
43
+ }
44
+ function getValidatedFieldValue(fieldValue, dataUnit, fieldName) {
45
+ var _a;
46
+ if (fieldValue == undefined || !dataUnit || !fieldName)
47
+ return;
48
+ const dataType = (_a = dataUnit.getField(fieldName)) === null || _a === void 0 ? void 0 : _a.dataType;
49
+ if (dataType == undefined)
50
+ return;
51
+ if ((fieldValue === null || fieldValue === void 0 ? void 0 : fieldValue.waitmessage) !== undefined)
52
+ return undefined;
53
+ const isNonObjectValue = dataType !== DataType.OBJECT &&
54
+ dataType !== DataType.DATE &&
55
+ typeof fieldValue === 'object';
56
+ const processedValue = isNonObjectValue ? fieldValue.value : fieldValue;
57
+ return dataType === DataType.OBJECT
58
+ ? JSON.stringify(processedValue)
59
+ : processedValue;
60
+ }
61
+ function getEnabledByProperty(attribName, propertyName, fieldDescriptor) {
62
+ if (!fieldDescriptor)
63
+ return true;
64
+ const fieldProperties = fieldDescriptor.properties || {};
65
+ const fromAttribName = fieldDescriptor[attribName] !== true;
66
+ return fieldProperties.hasOwnProperty(propertyName)
67
+ ? fieldProperties[propertyName] !== 'S'
68
+ : fromAttribName;
69
+ }
70
+ function getValueByProperty(property, fieldDescriptor, defaultValue) {
71
+ if (fieldDescriptor && fieldDescriptor[property] === true) {
72
+ return true;
73
+ }
74
+ return defaultValue;
75
+ }
76
+ function getIconName(userInterface) {
77
+ return iconMap.get(userInterface) || 'text';
78
+ }
79
+ function buildNewGuideName(guidesList, getMessage) {
80
+ var _a, _b;
81
+ const newGuideText = getMessage('snkFormConfig.form.newGuide');
82
+ const qtdWithNewGuideName = (_b = (_a = guidesList.filter(g => g.name.includes(newGuideText))) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
83
+ return qtdWithNewGuideName === 0 ? newGuideText : `${newGuideText} (${qtdWithNewGuideName})`;
84
+ }
85
+ function getFieldsToSave(guidesMap) {
86
+ const fieldsToSave = [];
87
+ guidesMap.forEach((groups, guideName) => {
88
+ groups.forEach(({ fields }) => {
89
+ fields === null || fields === void 0 ? void 0 : fields.forEach((fieldConfig) => {
90
+ fieldsToSave.push(buildFieldToSave(Object.assign(Object.assign({}, fieldConfig), { tab: guideName })));
91
+ });
92
+ });
93
+ });
94
+ return fieldsToSave;
95
+ }
96
+ function buildGuidesMap(rawFields, tabs, dataUnit, generalTab) {
97
+ const fields = handleFieldsTabNames(rawFields, dataUnit, generalTab);
98
+ const guidesMap = initGuidesMap(tabs);
99
+ if (!(fields === null || fields === void 0 ? void 0 : fields.length))
100
+ return guidesMap;
101
+ for (let guideName of guidesMap.keys()) {
102
+ const fieldsFromGuide = getFieldsFromGuide(fields, guideName, generalTab);
103
+ const fieldsByGroupMap = getGroupsFromGuide(fieldsFromGuide, dataUnit, generalTab);
104
+ const groupsList = parserGroupMapIntoList(fieldsByGroupMap);
105
+ guidesMap.set(guideName, groupsList);
106
+ }
107
+ return guidesMap;
108
+ }
109
+ function buildGuides(config, mainArea, dataUnit, generalTabName = TAB_NAMES.general) {
110
+ const normalizedFields = handleFieldsTabNames(config === null || config === void 0 ? void 0 : config.fields, dataUnit, generalTabName);
111
+ let tabs = config.tabs ? [...config.tabs] : buildTabsFromFields(normalizedFields);
112
+ tabs = getPossibleGuides(tabs);
113
+ tabs = initializeTabsNames(tabs);
114
+ const guides = handleMainTab(tabs, mainArea);
115
+ return ensureFieldResolvedGuides(guides, normalizedFields);
116
+ }
117
+ /**
118
+ * Garante que exista uma guia para cada aba referenciada pelos campos (após a resolução feita
119
+ * em resolveFieldTab). É necessário porque a "Geral" não é uma UITabName e, portanto, pode não
120
+ * estar presente em config.tabs (que pode inclusive vir como array vazio); sem esta garantia os
121
+ * campos "Geral" seriam descartados. A área principal (__main) é tratada por handleMainTab e
122
+ * ignorada aqui. Guias já existentes (por nome ou rótulo) não são duplicadas.
123
+ */
124
+ function ensureFieldResolvedGuides(tabs, normalizedFields) {
125
+ const result = [...tabs];
126
+ let nextOrder = result.length;
127
+ const seen = new Set();
128
+ (normalizedFields !== null && normalizedFields !== void 0 ? normalizedFields : []).forEach(field => {
129
+ const tabName = field.tab;
130
+ if (!tabName || tabName === TAB_NAMES.main || seen.has(tabName)) {
131
+ return;
132
+ }
133
+ seen.add(tabName);
134
+ const alreadyExists = result.some(guide => guide.name === tabName || guide.label === tabName);
135
+ if (alreadyExists) {
136
+ return;
137
+ }
138
+ result.push({ name: tabName, label: tabName, visible: true, order: nextOrder++ });
139
+ });
140
+ return result;
141
+ }
142
+ function buildChildrenGuides(dataUnit, initialOrderIndex = 0, guidesList) {
143
+ var _a;
144
+ if (!dataUnit || !dataUnit.metadata) {
145
+ return [];
146
+ }
147
+ const children = ((_a = dataUnit.metadata) === null || _a === void 0 ? void 0 : _a.children) || [];
148
+ const childrenWithNoGuide = [];
149
+ for (const child of children) {
150
+ const guideOnConfig = guidesList.find(guide => child.label === guide.label);
151
+ if (guideOnConfig) {
152
+ guideOnConfig.isCustom = true;
153
+ continue;
154
+ }
155
+ childrenWithNoGuide.push({
156
+ label: child.label,
157
+ name: child.name,
158
+ visible: true,
159
+ isCustom: true,
160
+ order: initialOrderIndex++
161
+ });
162
+ }
163
+ return childrenWithNoGuide;
164
+ }
165
+ function buildCustomGuides(customGuidesList, guidesList) {
166
+ let initialOrderIndex = guidesList.length;
167
+ const customGuidesToAdd = getCustomGuidesNotIncludedInList(customGuidesList, guidesList);
168
+ return customGuidesToAdd.map(guide => {
169
+ return {
170
+ name: guide.id,
171
+ label: guide.label,
172
+ visible: true,
173
+ isCustom: true,
174
+ order: initialOrderIndex++
175
+ };
176
+ });
177
+ }
178
+ function isCustomGuideIncludedInList(guidesList, guide) {
179
+ return guidesList.some(fromList => fromList.name === guide.id || fromList.label === guide.label);
180
+ }
181
+ function getCustomGuidesNotIncludedInList(customGuidesList, guidesList) {
182
+ return customGuidesList.filter(guide => !isCustomGuideIncludedInList(guidesList, guide));
183
+ }
184
+ /**
185
+ * Define a aba efetiva de um campo seguindo as MESMAS regras do formulário renderizado
186
+ * (ezui buildFormMetadata/handleFields):
187
+ * - Campo com aba explícita mantém a aba.
188
+ * - Campo sem aba que seja chave primária vai para a área principal (__main).
189
+ * - Demais campos sem aba vão para a aba "Geral" (aba secundária), e não para a área principal.
190
+ *
191
+ * Usa-se o literal TAB_NAMES.general ("Geral"), e não a mensagem traduzida, para manter o
192
+ * configurador em sintonia com o ezui (que utiliza o literal "Geral") em qualquer idioma.
193
+ */
194
+ function resolveFieldTab(field, dataUnit, generalTabName) {
195
+ var _a, _b;
196
+ if (field.tab) {
197
+ return getTabName(field.tab, generalTabName);
198
+ }
199
+ const isPrimaryKey = !!((_b = (_a = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.getField(field.name)) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.isPrimaryKey);
200
+ return isPrimaryKey ? TAB_NAMES.main : generalTabName;
201
+ }
202
+ function handleFieldsTabNames(allFields, dataUnit, generalTabName = TAB_NAMES.general) {
203
+ return (allFields !== null && allFields !== void 0 ? allFields : []).map(field => (Object.assign(Object.assign({}, field), { tab: resolveFieldTab(field, dataUnit, generalTabName) })));
204
+ }
205
+ function initializeTabsNames(tabs) {
206
+ return tabs.map((tab) => {
207
+ return Object.assign(Object.assign({}, tab), { name: tab.name ? tab.name : tab.label });
208
+ });
209
+ }
210
+ function handleMainTab(tabs, mainTabName) {
211
+ const mainTab = { name: TAB_NAMES.main, label: mainTabName, visible: true };
212
+ const hasTabMain = tabs.some((tab) => tab.name === TAB_NAMES.main);
213
+ if (hasTabMain) {
214
+ tabs = tabs.map(tab => tab.name === TAB_NAMES.main ? mainTab : tab);
215
+ }
216
+ else {
217
+ tabs.unshift(mainTab);
218
+ }
219
+ return tabs;
220
+ }
221
+ function getPossibleGuides(tabs) {
222
+ return [...tabs];
223
+ }
224
+ function initGuidesMap(tabs) {
225
+ const map = new Map();
226
+ let possibleGuides = getPossibleGuides(tabs);
227
+ possibleGuides.forEach(tab => {
228
+ map.set(tab.name, []);
229
+ });
230
+ return map;
231
+ }
232
+ function handleFieldLabel(field, fieldDescriptor) {
233
+ if (!field.label) {
234
+ field.label = fieldDescriptor.label;
235
+ }
236
+ }
237
+ function handleFieldTab(field, generalTabName) {
238
+ if (!field.tab) {
239
+ field.tab = generalTabName;
240
+ }
241
+ }
242
+ function handleFieldGroup(field) {
243
+ if (!field.group) {
244
+ field.group = GROUP_NAMES.noGroup;
245
+ }
246
+ }
247
+ function isVisibleOnConfig(fieldDescriptor) {
248
+ var _a;
249
+ /**
250
+ * Quando um campo é ocultado pelo dev, mas queremos manter ele na config precisamos fazer essa tratativa.
251
+ */
252
+ return ((_a = fieldDescriptor === null || fieldDescriptor === void 0 ? void 0 : fieldDescriptor.properties) === null || _a === void 0 ? void 0 : _a.visibleOnConfig) === true && (fieldDescriptor === null || fieldDescriptor === void 0 ? void 0 : fieldDescriptor.visible) === false;
253
+ }
254
+ function getGroupsFromGuide(fieldsFromGuide, dataUnit, generalTabName) {
255
+ const groupsMap = new Map();
256
+ groupsMap.set(GROUP_NAMES.noGroup, []);
257
+ for (let field of fieldsFromGuide) {
258
+ const fieldDescriptor = dataUnit.getField(field.name);
259
+ if (!(fieldDescriptor === null || fieldDescriptor === void 0 ? void 0 : fieldDescriptor.visible) && !isVisibleOnConfig(fieldDescriptor))
260
+ continue;
261
+ handleFieldLabel(field, fieldDescriptor);
262
+ handleFieldTab(field, generalTabName);
263
+ handleFieldGroup(field);
264
+ if (groupsMap.has(field.group)) {
265
+ groupsMap.get(field.group).push(field);
266
+ }
267
+ else {
268
+ groupsMap.set(field.group, [field]);
269
+ }
270
+ }
271
+ return groupsMap;
272
+ }
273
+ function getFieldsFromGuide(fields, guideName, generalTabName) {
274
+ return fields.filter(field => {
275
+ const fieldTab = getTabName(field.tab, generalTabName);
276
+ return fieldTab === guideName;
277
+ });
278
+ }
279
+ function getTabName(tab, generalTabName) {
280
+ var _a;
281
+ if (typeof tab === 'string')
282
+ return tab;
283
+ return (_a = tab === null || tab === void 0 ? void 0 : tab.label) !== null && _a !== void 0 ? _a : generalTabName;
284
+ }
285
+ function parserGroupMapIntoList(groupsMap) {
286
+ const groupsList = [];
287
+ for (let groupName of groupsMap.keys()) {
288
+ groupsList.push({ name: groupName, fields: groupsMap.get(groupName) });
289
+ }
290
+ return groupsList;
291
+ }
292
+ function canAddTab(tab, guideList) {
293
+ return tab && !(guideList.map(g => g.name).includes(tab));
294
+ }
295
+ function buildTabsFromFields(fields) {
296
+ const guideList = [];
297
+ let order = 1;
298
+ fields === null || fields === void 0 ? void 0 : fields.forEach((field) => {
299
+ const tab = field.tab;
300
+ if (canAddTab(tab, guideList)) {
301
+ guideList.push({ name: tab, label: tab, visible: true, order });
302
+ order = order + 1;
303
+ }
304
+ });
305
+ return guideList;
306
+ }
307
+ function buildFieldToSave(fieldConfig) {
308
+ const fieldToSave = {
309
+ cleanOnCopy: fieldConfig.cleanOnCopy || false,
310
+ group: fieldConfig.group === GROUP_NAMES.noGroup ? undefined : fieldConfig.group,
311
+ label: fieldConfig.label,
312
+ name: fieldConfig.name,
313
+ required: fieldConfig.required,
314
+ readOnly: fieldConfig.readOnly,
315
+ tab: fieldConfig.tab,
316
+ };
317
+ if (fieldConfig.defaultValue != undefined) {
318
+ if (fieldConfig.defaultValue.type == undefined) {
319
+ fieldToSave.defaultValue = {
320
+ type: DEFAULT_TYPE.fixed,
321
+ value: fieldConfig.defaultValue,
322
+ };
323
+ }
324
+ else {
325
+ fieldToSave.defaultValue = fieldConfig.defaultValue;
326
+ }
327
+ }
328
+ return fieldToSave;
329
+ }
330
+
331
+ const snkDynaformFieldConfigCss = ".field-config-container.sc-snk-dynaform-field-config{font-family:'Roboto';color:#2b3a54;display:flex;flex-direction:column;gap:10px;width:330px;justify-content:space-between}.header.sc-snk-dynaform-field-config{display:flex;font-weight:500;font-size:16px}.actions.sc-snk-dynaform-field-config{display:flex;align-items:flex-end;justify-content:flex-end;gap:12px}";
332
+
333
+ const SnkDynaformFieldConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
334
+ constructor() {
335
+ super();
336
+ this.__registerHost();
337
+ this.fieldConfigChanged = createEvent(this, "fieldConfigChanged", 7);
338
+ this.fieldLabel = undefined;
339
+ this.fieldLabelErrorMessage = undefined;
340
+ this.fieldDefaultValue = undefined;
341
+ this.fieldCleanOnCopy = undefined;
342
+ this.fieldRequired = undefined;
343
+ this.fieldReadOnly = undefined;
344
+ this._defaultType = undefined;
345
+ this.dataUnit = undefined;
346
+ this.fieldConfig = undefined;
347
+ this.fieldDescriptor = undefined;
348
+ this.messagesBuilder = undefined;
349
+ }
350
+ observeFieldLabel() {
351
+ if (this.validateFieldLabel) {
352
+ this.fieldLabelErrorMessage = undefined;
353
+ }
354
+ }
355
+ async show(_anchorElement) {
356
+ this._popoupElement.opened = true;
357
+ this.initializeValues();
358
+ forceUpdate(this);
359
+ }
360
+ validateFieldLabel() {
361
+ var _a;
362
+ if ((_a = this.fieldLabel) === null || _a === void 0 ? void 0 : _a.trim())
363
+ return true;
364
+ this.applyErrorMessage();
365
+ return false;
366
+ }
367
+ getMessage(key, params) {
368
+ return this.messagesBuilder.getMessage(key, params);
369
+ }
370
+ isAllowDefault() {
371
+ var _a;
372
+ const allowDefault = (_a = this.fieldDescriptor.properties) === null || _a === void 0 ? void 0 : _a.allowDefault;
373
+ if (allowDefault == undefined) {
374
+ return true;
375
+ }
376
+ return allowDefault === 'true';
377
+ }
378
+ enabledValueDefault() {
379
+ var _a, _b, _c;
380
+ const allowDefault = (_a = this.fieldDescriptor.properties) === null || _a === void 0 ? void 0 : _a.allowDefault;
381
+ const hasVariableVar = (VARS_BY_TYPE.UserInterface.hasOwnProperty((_b = this.fieldDescriptor) === null || _b === void 0 ? void 0 : _b.userInterface)
382
+ || ((_c = this.fieldDescriptor) === null || _c === void 0 ? void 0 : _c.userInterface) === UserInterface.SEARCH);
383
+ return hasVariableVar && (allowDefault == undefined || allowDefault === 'true');
384
+ }
385
+ getDefaultType() {
386
+ var _a, _b;
387
+ return (_b = (_a = this.fieldDefaultValue) === null || _a === void 0 ? void 0 : _a.type) !== null && _b !== void 0 ? _b : DEFAULT_TYPE.fixed;
388
+ }
389
+ emitFieldChanged() {
390
+ this.fieldConfigChanged.emit(this.fieldConfig);
391
+ }
392
+ handleLabelChanged({ detail }) {
393
+ this.fieldLabel = detail;
394
+ }
395
+ handleDefaultTypeChanged({ detail }) {
396
+ const optionSelected = detail.value;
397
+ if (optionSelected == undefined)
398
+ return;
399
+ this._defaultType = optionSelected;
400
+ this.fieldDefaultValue = { type: this._defaultType };
401
+ }
402
+ handleDefaultValueChanged({ detail }) {
403
+ this.fieldDefaultValue.value = detail === null || detail === void 0 ? void 0 : detail.value;
404
+ }
405
+ onChangeDefaultValue(fieldValue) {
406
+ this.fieldDefaultValue.value = getValidatedFieldValue(fieldValue, this.dataUnit, this.fieldConfig.name);
407
+ }
408
+ handleClearDuplicateChanged({ detail }) {
409
+ this.fieldCleanOnCopy = detail;
410
+ }
411
+ handleRequiredChanged({ detail }) {
412
+ this.fieldRequired = detail;
413
+ }
414
+ handleReadOnlyChanged({ detail }) {
415
+ this.fieldReadOnly = detail;
416
+ }
417
+ loadDefaultValue() {
418
+ var _a;
419
+ if ((_a = this.fieldConfig.defaultValue) === null || _a === void 0 ? void 0 : _a.type) {
420
+ this._defaultType = this.fieldConfig.defaultValue.type;
421
+ return;
422
+ }
423
+ this._defaultType = DEFAULT_TYPE.fixed;
424
+ this.fieldConfig.defaultValue = { type: this._defaultType };
425
+ }
426
+ buildOptions() {
427
+ let interfaceField = this.fieldDescriptor.userInterface;
428
+ if (interfaceField === UserInterface.SEARCH) {
429
+ interfaceField = UserInterface.INTEGERNUMBER;
430
+ }
431
+ return VARS_BY_TYPE.UserInterface[interfaceField];
432
+ }
433
+ renderDefaultValueEditor() {
434
+ if (this._defaultType === DEFAULT_TYPE.variable) {
435
+ return (h("ez-combo-box", { label: this.getMessage('snkConfigOptions.label.valueDefault'), enabled: this.isAllowDefault(), onEzChange: (e) => this.handleDefaultValueChanged(e), value: this.fieldDefaultValue.value, options: this.buildOptions() }));
436
+ }
437
+ return this.fieldDescriptor.userInterface &&
438
+ this.buildFieldDefaultValueElement();
439
+ }
440
+ buildFieldDefaultValueElement() {
441
+ var _a;
442
+ const { userInterface, properties, dataType } = this.fieldDescriptor;
443
+ const allowDefault = properties === null || properties === void 0 ? void 0 : properties.allowDefault;
444
+ let value;
445
+ let enabled = StringUtils.getBooleanValue(allowDefault, !this.fieldReadOnly);
446
+ if (userInterface === UserInterface.FILE) {
447
+ enabled = false;
448
+ }
449
+ if (enabled) {
450
+ value = (_a = this.fieldDefaultValue) === null || _a === void 0 ? void 0 : _a.value;
451
+ if (value != undefined) {
452
+ value = getConvertedValue(dataType, value);
453
+ }
454
+ }
455
+ const configField = {
456
+ value,
457
+ enabled,
458
+ label: this.fieldConfig.label,
459
+ name: this.fieldConfig.name,
460
+ required: this.fieldRequired,
461
+ userInterface,
462
+ };
463
+ switch (userInterface) {
464
+ case UserInterface.SWITCH:
465
+ return this.buildInputDefault(configField, undefined, CheckMode.SWITCH);
466
+ case UserInterface.CHECKBOX:
467
+ return this.buildInputDefault(configField, undefined, CheckMode.REGULAR);
468
+ case UserInterface.OPTIONSELECTOR:
469
+ case UserInterface.DECIMALNUMBER:
470
+ return this.buildInputDefault(configField, properties);
471
+ default:
472
+ return this.buildInputDefault(configField);
473
+ }
474
+ }
475
+ buildInputDefault({ value, enabled, label, name, required, userInterface }, properties = undefined, mode = undefined) {
476
+ let options;
477
+ let precision = 0;
478
+ let prettyPrecision = 0;
479
+ const TagName = userInterface == undefined || TAGS_BY_TYPE[userInterface] == undefined
480
+ ? TAGS_BY_TYPE.DEFAULT
481
+ : TAGS_BY_TYPE[userInterface];
482
+ if (userInterface === UserInterface.OPTIONSELECTOR) {
483
+ const prop = properties === null || properties === void 0 ? void 0 : properties.options;
484
+ if (typeof prop === 'string') {
485
+ const parsed = ObjectUtils.stringToObject(prop);
486
+ options = Object.keys(parsed).map(key => {
487
+ return { value: key, label: parsed[key] };
488
+ });
489
+ }
490
+ else {
491
+ options = prop;
492
+ }
493
+ }
494
+ else if (userInterface === UserInterface.DECIMALNUMBER) {
495
+ precision = Number((properties === null || properties === void 0 ? void 0 : properties.precision) || 2);
496
+ prettyPrecision = Number((properties === null || properties === void 0 ? void 0 : properties.prettyPrecision) || precision);
497
+ }
498
+ return h(TagName, Object.assign({ value: value, enabled: enabled, label: label, "data-field-name": name, key: name, onEzChange: (evt) => this.onChangeDefaultValue(evt === null || evt === void 0 ? void 0 : evt.detail) }, (this.getConditionalAttributes(userInterface, required, options, precision, prettyPrecision, mode))));
499
+ }
500
+ getConditionalAttributes(userInterface, required, options, precision, prettyPrecision, mode) {
501
+ const useSearchPlus = userInterface == UserInterface.SEARCHPLUS;
502
+ switch (userInterface) {
503
+ case UserInterface.SEARCH:
504
+ case UserInterface.SEARCHPLUS:
505
+ return {
506
+ suppressEmptyOption: required,
507
+ optionLoader: (searchArgument) => this.onSearchDefaultValue(searchArgument, { useSearchPlus }),
508
+ };
509
+ case UserInterface.OPTIONSELECTOR:
510
+ return {
511
+ suppressEmptyOption: required,
512
+ options,
513
+ };
514
+ case UserInterface.CHECKBOX:
515
+ case UserInterface.SWITCH:
516
+ return {
517
+ mode,
518
+ };
519
+ case UserInterface.INTEGERNUMBER:
520
+ case UserInterface.DECIMALNUMBER:
521
+ return {
522
+ precision,
523
+ prettyPrecision,
524
+ onEzStartChange: (evt) => this.onChangeDefaultValue(evt === null || evt === void 0 ? void 0 : evt.detail),
525
+ };
526
+ case UserInterface.DATE:
527
+ case UserInterface.DATETIME:
528
+ case UserInterface.TIME:
529
+ return {
530
+ onEzStartChange: (evt) => this.onChangeDefaultValue(evt === null || evt === void 0 ? void 0 : evt.detail),
531
+ };
532
+ default:
533
+ return {};
534
+ }
535
+ }
536
+ onSearchDefaultValue(searchArgument, ctxOptions) {
537
+ if (this._application && this.fieldConfig) {
538
+ return this._application.executeSearch(searchArgument, this.fieldConfig.name, this.dataUnit, ctxOptions);
539
+ }
540
+ }
541
+ initializeValues() {
542
+ this.fieldLabel = this.fieldConfig.label;
543
+ this.fieldDefaultValue = this.fieldConfig.defaultValue;
544
+ this.fieldRequired = this.fieldConfig.required;
545
+ this.fieldReadOnly = this.fieldConfig.readOnly;
546
+ this.fieldCleanOnCopy = this.fieldConfig.cleanOnCopy;
547
+ }
548
+ handleApplyChanges() {
549
+ if (!this.validateFieldLabel())
550
+ return;
551
+ this.fieldConfig.label = this.fieldLabel;
552
+ this.fieldConfig.defaultValue = this.fieldDefaultValue;
553
+ this.fieldConfig.required = this.fieldRequired;
554
+ this.fieldConfig.readOnly = this.fieldReadOnly;
555
+ this.fieldConfig.cleanOnCopy = this.fieldCleanOnCopy;
556
+ this.emitFieldChanged();
557
+ this._popoupElement.opened = false;
558
+ }
559
+ applyErrorMessage() {
560
+ this.fieldLabelErrorMessage = `${this.getMessage('snkConfigOptions.validation.requiredField')} ${this.getMessage('snkConfigOptions.label.nameField')}`;
561
+ }
562
+ handleDiscardChanges() {
563
+ this.initializeValues();
564
+ this._popoupElement.opened = false;
565
+ }
566
+ componentWillLoad() {
567
+ this.loadDefaultValue();
568
+ this._application = ApplicationContext.getContextValue('__SNK__APPLICATION__');
569
+ }
570
+ render() {
571
+ return (h("ez-popup", { heightMode: 'auto', size: 'auto', "ez-title": this.getMessage('snkConfigOptions.fieldConfig.title'), onEzClosePopup: () => this.handleDiscardChanges(), ref: ref => this._popoupElement = ref }, h("div", { class: 'field-config-container' }, h("ez-text-input", { label: this.getMessage('snkConfigOptions.label.nameField'), value: this.fieldLabel, errorMessage: this.fieldLabelErrorMessage, hasInvalid: !!this.fieldLabelErrorMessage, onEzChange: (e) => this.handleLabelChanged(e) }), h("ez-combo-box", { label: this.getMessage('snkConfigOptions.label.typeValueDefault'), suppressEmptyOption: true, enabled: this.enabledValueDefault(), onEzChange: (e) => this.handleDefaultTypeChanged(e), value: this.getDefaultType() }, h("option", { value: DEFAULT_TYPE.fixed }, this.getMessage('snkConfigOptions.options.valueFixed')), h("option", { value: DEFAULT_TYPE.variable }, this.getMessage('snkConfigOptions.options.variable'))), this.renderDefaultValueEditor(), h("ez-check", { label: this.getMessage('snkConfigOptions.label.clearDuplicate'), value: this.fieldCleanOnCopy, onEzChange: (e) => this.handleClearDuplicateChanged(e) }), h("ez-check", { label: this.getMessage('snkConfigOptions.label.requiredField'), enabled: getEnabledByProperty('required', 'systemRequired', this.fieldDescriptor), value: getValueByProperty('required', this.fieldDescriptor, this.fieldRequired), onEzChange: (e) => this.handleRequiredChanged(e) }), h("ez-check", { label: this.getMessage('snkConfigOptions.label.protectedField'), enabled: getEnabledByProperty('readOnly', 'systemReadOnly', this.fieldDescriptor), value: getValueByProperty('readOnly', this.fieldDescriptor, this.fieldReadOnly), onEzChange: (e) => this.handleReadOnlyChanged(e) }), h("div", { class: 'actions' }, h("ez-button", { label: this.getMessage('snkConfigOptions.fieldConfig.buttons.cancel'), onClick: () => this.handleDiscardChanges() }), h("ez-button", { label: this.getMessage('snkConfigOptions.fieldConfig.buttons.confirm'), class: "ez-button--primary", onClick: () => this.handleApplyChanges() })))));
572
+ }
573
+ static get watchers() { return {
574
+ "fieldLabel": ["observeFieldLabel"]
575
+ }; }
576
+ static get style() { return snkDynaformFieldConfigCss; }
577
+ }, [2, "snk-dynaform-field-config", {
578
+ "dataUnit": [16],
579
+ "fieldConfig": [1544, "field-config"],
580
+ "fieldDescriptor": [16],
581
+ "messagesBuilder": [1040],
582
+ "fieldLabel": [32],
583
+ "fieldLabelErrorMessage": [32],
584
+ "fieldDefaultValue": [32],
585
+ "fieldCleanOnCopy": [32],
586
+ "fieldRequired": [32],
587
+ "fieldReadOnly": [32],
588
+ "_defaultType": [32],
589
+ "show": [64]
590
+ }]);
591
+ function defineCustomElement() {
592
+ if (typeof customElements === "undefined") {
593
+ return;
594
+ }
595
+ const components = ["snk-dynaform-field-config"];
596
+ components.forEach(tagName => { switch (tagName) {
597
+ case "snk-dynaform-field-config":
598
+ if (!customElements.get(tagName)) {
599
+ customElements.define(tagName, SnkDynaformFieldConfig);
600
+ }
601
+ break;
602
+ } });
603
+ }
604
+
605
+ export { ID_AVAILABLE_FIELDS as I, SnkDynaformFieldConfig as S, SORTABLE_PATH as a, getFieldsStructure as b, buildGuides as c, defineCustomElement as d, buildChildrenGuides as e, buildCustomGuides as f, getIconName as g, buildGuidesMap as h, getFieldsToSave as i, buildNewGuideName as j, updateTabInFieldsFromGroupList as u };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface SnkDynaformFieldItem extends Components.SnkDynaformFieldItem, HTMLElement {}
4
+ export const SnkDynaformFieldItem: {
5
+ prototype: SnkDynaformFieldItem;
6
+ new (): SnkDynaformFieldItem;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,6 @@
1
+ import { S as SnkDynaformFieldItem$1, d as defineCustomElement$1 } from './snk-dynaform-field-item2.js';
2
+
3
+ const SnkDynaformFieldItem = SnkDynaformFieldItem$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { SnkDynaformFieldItem, defineCustomElement };