@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
@@ -1,861 +0,0 @@
1
- import { r as registerInstance, e as createEvent, h, g as getElement } from './index-04f73a26.js';
2
- import { StringUtils, ApplicationContext, ObjectUtils, Action, DataType, UserInterface, KeyboardManager, ElementIDUtils } from '@sankhyalabs/core';
3
- import { CSSVarsUtils, buildFieldSearch } from '@sankhyalabs/ezui/dist/collection/utils';
4
- import { V as VIEW_MODE, S as SIMPLE_CRUD_MODE } from './constants-7b422de0.js';
5
- import { T as TaskbarElement } from './taskbar-elements-63651ca7.js';
6
- import './DataFetcher-e60f8d53.js';
7
- import './ISave-4929c071.js';
8
- import { S as SnkMultiSelectionListDataSource, T as TaskbarProcessor, R as RmPrecisionCustomValueFormatter, a as CrudUtils, b as ClientSideExporterProvider } from './SnkMultiSelectionListDataSource-18abafb1.js';
9
- import { P as PresentationMode } from './index-b40568ff.js';
10
- import '@sankhyalabs/ezui/dist/collection/utils/constants';
11
- import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
12
- import { I as InMemoryLoader } from './dataunit-fetcher-c176e002.js';
13
- import './filter-item-type.enum-d45e026f.js';
14
- import { F as FormConfigFetcher } from './form-config-fetcher-b44b2727.js';
15
- import { C as ConfigStorage } from './ConfigStorage-76872695.js';
16
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-83f6b22f.js';
17
- import { s as store } from './index-ea250be6.js';
18
- import { C as ContinuousInsertUtils } from './ContinuousInsertUtils-bce77dc1.js';
19
- import './PrintUtils-3e4ff0f5.js';
20
- import './SnkMessageBuilder-1eb7a1af.js';
21
- import './GetSelectedRecordsIDsInfo-9fa41508.js';
22
- import './IFetchDataExporterParams-d73bed3d.js';
23
- import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource';
24
- import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
25
- import '@sankhyalabs/core/dist/utils/SortingUtils';
26
- import './ResourceIDUtils-a114189a.js';
27
-
28
- const REGULAR_DEFAULT_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "MORE_OPTIONS"];
29
- const REGULAR_SELECTED_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER", "MORE_OPTIONS"];
30
-
31
- const snkSimpleCrudCss = ".sc-snk-simple-crud-h{display:flex;height:100%;width:100%;--snk-simple-crud-grid--min-height:300px}.simple-crud__container.sc-snk-simple-crud{display:grid;grid-template-rows:auto 1fr;height:100%;width:100%}.simple-crud__container-section.sc-snk-simple-crud{flex-wrap:unset;flex-direction:column}.simple-crud__form--hidden.sc-snk-simple-crud{display:none}ez-grid.sc-snk-simple-crud{--ez-grid__container--shadow:none;--ez-grid__container--shadow--outline:none;--ez-grid--min-height:var(--snk-simple-crud-grid--min-height)}ez-form.sc-snk-simple-crud{min-height:300px}";
32
-
33
- const SnkSimpleCrud = class {
34
- constructor(hostRef) {
35
- registerInstance(this, hostRef);
36
- this.dataStateChange = createEvent(this, "dataStateChange", 3);
37
- this.dataUnitReady = createEvent(this, "dataUnitReady", 3);
38
- this.actionClick = createEvent(this, "actionClick", 7);
39
- this.formItemsReady = createEvent(this, "formItemsReady", 7);
40
- this.configuratorSave = createEvent(this, "configuratorSave", 7);
41
- this.configuratorCancel = createEvent(this, "configuratorCancel", 7);
42
- this._multiSelectionListDataSource = new SnkMultiSelectionListDataSource();
43
- this._formConfigFetcher = new FormConfigFetcher();
44
- this._customEditors = new Map();
45
- this._customRenders = new Map();
46
- this._container = undefined;
47
- this._showPopUpGridConfig = false;
48
- this._currentViewMode = VIEW_MODE.GRID;
49
- this._config = undefined;
50
- this._fieldToGetFocus = undefined;
51
- this._customContainerId = `SNK-SIMPLE-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
52
- this.enableLockManagerLoadingComp = false;
53
- this.enableLockManagerTaskbarClick = false;
54
- this.dataState = undefined;
55
- this.dataUnit = undefined;
56
- this.entityName = undefined;
57
- this.mode = SIMPLE_CRUD_MODE.SERVER;
58
- this.gridConfig = undefined;
59
- this.formConfig = undefined;
60
- this._formFields = [];
61
- this._fieldsProps = new Map();
62
- this.enableContinuousInsert = false;
63
- this.multipleSelection = undefined;
64
- this.useCancelConfirm = true;
65
- this.pageSize = 150;
66
- this.resourceID = undefined;
67
- this.enableGridInsert = false;
68
- this.paginationCounterMode = 'auto';
69
- this.taskbarManager = undefined;
70
- this.messagesBuilder = undefined;
71
- this.useEnterLikeTab = false;
72
- this.actionsList = undefined;
73
- this.configName = undefined;
74
- this.showConfiguratorButtons = false;
75
- this.gridLegacyConfigName = undefined;
76
- this.formLegacyConfigName = undefined;
77
- this.ignoreReadOnlyFormFields = false;
78
- this.autoFocus = true;
79
- this.domainMessagesBuilder = undefined;
80
- this.multipleEditionEnabled = true;
81
- this.layoutFormConfig = true;
82
- this.disableGridEdition = false;
83
- this.autoLoad = undefined;
84
- this.outlineMode = false;
85
- }
86
- /**
87
- * @description Registra um editor customizado para campos da grade e do formulário.
88
- * @param {string} fieldName - O nome do campo.
89
- * @param {ICustomEditor} customEditor - A instância do editor customizado.
90
- * @returns {Promise<void>}
91
- */
92
- async addCustomEditor(fieldName, customEditor) {
93
- if (this._grid && this._form) {
94
- this._grid.addCustomEditor(fieldName, customEditor);
95
- this._form.addCustomEditor(fieldName, customEditor);
96
- return;
97
- }
98
- const newCustomEditors = new Map(this._customEditors);
99
- newCustomEditors.set(fieldName, customEditor);
100
- this._customEditors = newCustomEditors;
101
- }
102
- /**
103
- * @description Registra um renderizador customizado para colunas da grade.
104
- * @param {string} fieldName - O nome do campo.
105
- * @param {ICustomRender} customRender - A instância do renderizador customizado.
106
- * @returns {Promise<void>}
107
- */
108
- async addGridCustomRender(fieldName, customRender) {
109
- if (this._grid) {
110
- this._grid.addGridCustomRender(fieldName, customRender);
111
- return;
112
- }
113
- const newCustomRenders = new Map(this._customRenders);
114
- newCustomRenders.set(fieldName, customRender);
115
- this._customRenders = newCustomRenders;
116
- }
117
- async handleResourceIDChanged(newValue, oldValue) {
118
- if (StringUtils.isEmpty(newValue)) {
119
- return;
120
- }
121
- if (newValue === oldValue) {
122
- return;
123
- }
124
- await this.loadFormConfig(true);
125
- await this.loadGridConfig(true);
126
- }
127
- /**
128
- * @description Registra um formatador de valores para uma coluna da grade.
129
- * @param {string} columnName - O nome da coluna.
130
- * @param {ICustomFormatter} customFormatter - A instância do formatador customizado.
131
- * @returns {Promise<void>}
132
- */
133
- async addCustomValueFormatter(columnName, customFormatter) {
134
- this._grid.addCustomValueFormatter(columnName, customFormatter);
135
- }
136
- /**
137
- * @description Remove o formatador de valores de uma coluna da grade.
138
- * @param {string} columnName - O nome da coluna.
139
- * @returns {Promise<void>}
140
- */
141
- async removeCustomValueFormatter(columnName) {
142
- this._grid.removeCustomValueFormatter(columnName);
143
- }
144
- /**
145
- * @description Altera/adiciona uma propriedade nos metadados do campo.
146
- * @param {string} fieldName - O nome do campo.
147
- * @param {string} propName - O nome da propriedade.
148
- * @param {any} value - O valor da propriedade.
149
- * @returns {Promise<void>}
150
- */
151
- async setFieldProp(fieldName, propName, value) {
152
- const newCustomFieldProps = new Map(this._fieldsProps);
153
- const currentProps = this._fieldsProps.get(fieldName);
154
- newCustomFieldProps.set(fieldName, Object.assign(Object.assign({}, currentProps), { [propName]: value }));
155
- this._fieldsProps = newCustomFieldProps;
156
- }
157
- loadTaskbarProcessor() {
158
- const taskbarIDs = {};
159
- taskbarIDs[TASKBAR_ID.FORM_REGULAR] = this.getButtons(false, [TaskbarElement.GRID_MODE], true);
160
- taskbarIDs[TASKBAR_ID.GRID_REGULAR] = this.getButtons(false, [TaskbarElement.DATA_EXPORTER, TaskbarElement.FORM_MODE]);
161
- taskbarIDs[TASKBAR_ID.FORM_SELECTED] = this.getButtons(true, [TaskbarElement.GRID_MODE], true);
162
- taskbarIDs[TASKBAR_ID.GRID_SELECTED] = this.getGridSelectedButtonsCallBack.bind(this);
163
- taskbarIDs[TASKBAR_ID.FINISH_EDITION] = this.getFinishEditionButtonsCallback.bind(this);
164
- taskbarIDs[TASKBAR_ID.MULTIPLE_EDITION] = [TaskbarElement.CANCEL];
165
- this._taskbarProcessor = new TaskbarProcessor(taskbarIDs);
166
- }
167
- getGridSelectedButtonsCallBack() {
168
- var _a, _b, _c;
169
- if (!this.multipleEditionEnabled || ((_c = (_b = (_a = this.dataState) === null || _a === void 0 ? void 0 : _a.selectionInfo) === null || _b === void 0 ? void 0 : _b.records) === null || _c === void 0 ? void 0 : _c.length) === 1) {
170
- return this.getButtons(true, [TaskbarElement.DATA_EXPORTER, TaskbarElement.FORM_MODE]);
171
- }
172
- return this.getButtons(true, [TaskbarElement.UPDATE_MULTIPLE, TaskbarElement.DATA_EXPORTER, TaskbarElement.FORM_MODE]);
173
- }
174
- getFinishEditionButtonsCallback() {
175
- const btns = [TaskbarElement.CANCEL, TaskbarElement.SAVE];
176
- if (this.enableGridInsert && this._currentViewMode !== VIEW_MODE.ATTACHMENT) {
177
- btns.push(this._currentViewMode === VIEW_MODE.GRID ? TaskbarElement.FORM_MODE : TaskbarElement.GRID_MODE);
178
- }
179
- return btns;
180
- }
181
- getButtons(selected, extraButtons, removeRefresh) {
182
- let btnList = selected ? REGULAR_SELECTED_BTNS : REGULAR_DEFAULT_BTNS;
183
- if (removeRefresh || this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
184
- btnList = btnList.filter(item => item !== TaskbarElement.REFRESH);
185
- }
186
- return this.addConfigButton(btnList.concat(extraButtons));
187
- }
188
- addConfigButton(buttons) {
189
- if (this.configName === undefined || (this.configName && this.gridLegacyConfigName)) {
190
- return buttons;
191
- }
192
- return buttons.concat(TaskbarElement.CONFIGURATOR);
193
- }
194
- get application() {
195
- return ApplicationContext.getContextValue("__SNK__APPLICATION__");
196
- }
197
- /**
198
- * @description Usado para alternar a visão entre GRID e FORM externamente.
199
- * @param {VIEW_MODE} view - A visão para a qual navegar.
200
- * @returns {Promise<void>}
201
- */
202
- async goToView(view) {
203
- this._currentViewMode = view;
204
- if (this._viewStack) {
205
- if (view === VIEW_MODE.GRID)
206
- this.dataUnit.isMultipleEdition = false;
207
- this._viewStack.show(view);
208
- }
209
- if (view === VIEW_MODE.GRID) {
210
- requestAnimationFrame(() => this.focusToGrid());
211
- }
212
- if (view === VIEW_MODE.FORM) {
213
- requestAnimationFrame(() => this.focusToForm());
214
- }
215
- }
216
- actionClickListener(evt) {
217
- this.handleTaskbarAction(evt.detail);
218
- evt.stopPropagation();
219
- }
220
- handleTaskbarAction(action) {
221
- switch (action) {
222
- case TaskbarElement.CONFIGURATOR:
223
- this._snkConfigurator.open();
224
- break;
225
- case TaskbarElement.GRID_MODE:
226
- this.goToView(VIEW_MODE.GRID);
227
- break;
228
- case TaskbarElement.FORM_MODE:
229
- this.goToView(VIEW_MODE.FORM);
230
- break;
231
- case TaskbarElement.UPDATE_MULTIPLE:
232
- this.dataUnit.isMultipleEdition = true;
233
- this.goToView(VIEW_MODE.FORM);
234
- break;
235
- }
236
- }
237
- async onChangeEntityName(newValue) {
238
- if (this.dataUnit)
239
- return;
240
- const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
241
- this.dataUnit = await application.getDataUnit(newValue, null, null, this.configName);
242
- }
243
- onModeChange() {
244
- if (this.mode == SIMPLE_CRUD_MODE.IN_MEMORY) {
245
- this.initInMemoryDataUnit();
246
- }
247
- }
248
- observeDataState(newValue, oldValue) {
249
- this.handleDataStateChange(newValue, oldValue);
250
- }
251
- async observeFormLegacy(newValue, oldValue) {
252
- await this.handleUpdateFormLegacyConfig(newValue, oldValue);
253
- }
254
- async observeGridLegacy(newValue, oldValue) {
255
- await this.handleUpdateGridLegacyConfig(newValue, oldValue);
256
- }
257
- async handleDataStateChange(newValue, oldValue) {
258
- if (ObjectUtils.objectToString(oldValue) != ObjectUtils.objectToString(newValue)) {
259
- this.dataStateChange.emit(newValue);
260
- }
261
- await this.processRmPrecision();
262
- }
263
- async processRmPrecision() {
264
- var _a, _b;
265
- const fieldsWithRmPrecision = await this._snkDataUnit.getFieldsWithRmPrecision();
266
- for (const field of fieldsWithRmPrecision || []) {
267
- if (!field) {
268
- continue;
269
- }
270
- const rmPrecision = (_b = (_a = this.dataState) === null || _a === void 0 ? void 0 : _a.rowMetadata) === null || _b === void 0 ? void 0 : _b.getProp('rm_precision', field);
271
- if (!rmPrecision && rmPrecision !== 0) {
272
- continue;
273
- }
274
- await this.setFieldProp(field, 'precision', rmPrecision);
275
- await this.setFieldProp(field, 'prettyPrecision', rmPrecision);
276
- }
277
- this._rmPrecisionCustomValueFormatter.setDataState(this.dataState);
278
- }
279
- async handleUpdateGridLegacyConfig(newValue, oldValue) {
280
- if (newValue == undefined || newValue == oldValue) {
281
- return;
282
- }
283
- if (!this._gridConfigAlreadyLoaded) {
284
- return;
285
- }
286
- await this.loadGridConfig(true);
287
- }
288
- async handleUpdateFormLegacyConfig(newValue, oldValue) {
289
- if (newValue == undefined || newValue == oldValue) {
290
- return;
291
- }
292
- if (!this._formConfigAlreadyLoaded) {
293
- return;
294
- }
295
- await this.loadFormConfig(true);
296
- }
297
- async openConfig(viewMode) {
298
- await this._snkConfigurator.close();
299
- if (viewMode === VIEW_MODE.GRID) {
300
- await this.openGridConfig();
301
- }
302
- else if (viewMode === VIEW_MODE.FORM) {
303
- await this.openFormConfig();
304
- }
305
- }
306
- async openGridConfig() {
307
- var _a, _b, _c, _d;
308
- const originalColumns = (_b = await ((_a = this._grid) === null || _a === void 0 ? void 0 : _a.getColumns())) !== null && _b !== void 0 ? _b : [];
309
- const gridColumns = (_d = await ((_c = this._grid) === null || _c === void 0 ? void 0 : _c.getColumnsState())) !== null && _d !== void 0 ? _d : [];
310
- this._snkGridConfig.columns = gridColumns.filter(c => c.name);
311
- this._snkGridConfig.originalColumns = originalColumns.filter(c => c.name);
312
- this._snkGridConfig.selectedIndex = 0;
313
- this._showPopUpGridConfig = true;
314
- }
315
- async openFormConfig() {
316
- if (this.formLegacyConfigName || this.configName) {
317
- await this._snkSimpleFormConfig.show();
318
- }
319
- }
320
- addGridLegacyConfigName() {
321
- if (this.gridLegacyConfigName && this.configName) {
322
- ConfigStorage.addGridLegacyConfig(this.configName, this.gridLegacyConfigName);
323
- }
324
- }
325
- loadGridConfig(forceUpdate) {
326
- if (this.configName === undefined) {
327
- return;
328
- }
329
- if ((this.gridConfig != undefined || this._gridConfigAlreadyLoaded) && !forceUpdate) {
330
- return;
331
- }
332
- this.addGridLegacyConfigName();
333
- this._gridConfigAlreadyLoaded = true;
334
- return new Promise((accept, reject) => {
335
- ConfigStorage.loadGridConfig(this.configName, this.resolveResourceID())
336
- .then(config => {
337
- this.setGridConfig(config);
338
- accept();
339
- })
340
- .catch(reason => {
341
- reject(reason);
342
- });
343
- });
344
- }
345
- formConfigIsLoaded() {
346
- return this.formConfig != undefined || this._formConfigAlreadyLoaded;
347
- }
348
- async loadFormConfig(forceLoad = false, forceSetNewConfig = false) {
349
- if (this.configName === undefined) {
350
- return;
351
- }
352
- if (this._formConfigManager == undefined) {
353
- this._formConfigManager = new SnkFormConfigManager(this.configName, this.resolveResourceID(), undefined, this.dataUnit);
354
- this._formConfigManager.setConfig(this.formConfig);
355
- }
356
- if (this.formConfigIsLoaded() && !forceLoad) {
357
- return;
358
- }
359
- this._formConfigAlreadyLoaded = true;
360
- let loadedLegacyConfig = await this._formConfigFetcher.fetchLegacyConfigurableForm(this.formLegacyConfigName);
361
- if (loadedLegacyConfig != undefined) {
362
- this._formConfigManager.setConfig(loadedLegacyConfig);
363
- this.setFormConfig(loadedLegacyConfig, forceSetNewConfig);
364
- return;
365
- }
366
- this.setFormConfig(await this._formConfigManager.loadConfig());
367
- }
368
- async componentWillRender() {
369
- this.loadTaskbarProcessor();
370
- this._resourceID = await this.application.getResourceID();
371
- this.dataExporterProviderStore();
372
- this.dataExporterProviderStore();
373
- this._taskbarProcessor.process(this.getTaskBarId(), this.taskbarManager, this.dataState, this.getTaskBarDisabledButtons());
374
- if (this.configName === undefined) {
375
- return;
376
- }
377
- if (this.gridConfig != undefined || this._gridConfigAlreadyLoaded) {
378
- return;
379
- }
380
- await this.addGridLegacyConfigName();
381
- await this.loadGridConfig();
382
- await this.loadFormConfig();
383
- }
384
- componentDidRender() {
385
- this._rmPrecisionCustomValueFormatter.setGrid(this._grid);
386
- this.addGridCustomValueFormattters();
387
- this.setFieldsProps();
388
- this.setCustomRenders();
389
- this.setCustomEditors();
390
- }
391
- componentWillLoad() {
392
- this.processMetadata();
393
- this.onModeChange();
394
- this.configDatasource();
395
- this._rmPrecisionCustomValueFormatter = new RmPrecisionCustomValueFormatter();
396
- this._continuousInsertUtils = new ContinuousInsertUtils(this.application, this.resolveResourceID(), this.configName);
397
- if (this.enableGridInsert) {
398
- this._continuousInsertUtils.getConfig().then(value => this.enableContinuousInsert = value);
399
- }
400
- }
401
- componentDidLoad() {
402
- CSSVarsUtils.applyVarsGrid(this._element, this._grid);
403
- this.initKeyboardManager();
404
- this.dataUnit.subscribe(this.dataUnitActionHandler.bind(this));
405
- }
406
- async dataUnitActionHandler(action) {
407
- if (action.type === Action.EDITION_CANCELED || action.type === Action.DATA_SAVED) {
408
- if (this.dataUnit.isMultipleEdition) {
409
- this.goToView(VIEW_MODE.GRID);
410
- }
411
- }
412
- }
413
- getMessage(key, params) {
414
- var _a;
415
- return (_a = this.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage(key, params);
416
- }
417
- disconnectedCallback() {
418
- var _a;
419
- (_a = this._keyboardManager) === null || _a === void 0 ? void 0 : _a.unbindAllShortcutKeys();
420
- }
421
- setCustomRenders() {
422
- if (!this._grid) {
423
- return;
424
- }
425
- for (const [fieldName, customRender] of this._customRenders) {
426
- this._grid.addGridCustomRender(fieldName, customRender);
427
- this._customRenders.delete(fieldName);
428
- }
429
- }
430
- setCustomEditors() {
431
- if (!this._grid || !this._form) {
432
- return;
433
- }
434
- for (const [fieldName, customEditor] of this._customEditors) {
435
- this._grid.addCustomEditor(fieldName, customEditor);
436
- this._form.addCustomEditor(fieldName, customEditor);
437
- this._customEditors.delete(fieldName);
438
- }
439
- }
440
- configDatasource() {
441
- this._multiSelectionListDataSource.setApplication(this.application);
442
- this._multiSelectionListDataSource.setDataUnit(this.dataUnit);
443
- }
444
- setFieldsProps() {
445
- if (!this._form) {
446
- return;
447
- }
448
- for (const [fieldName, props] of this._fieldsProps) {
449
- for (const prop in props) {
450
- this._form.setFieldProp(fieldName, prop, props[prop]);
451
- }
452
- this._fieldsProps.delete(fieldName);
453
- }
454
- }
455
- getTaskBarId() {
456
- var _a, _b;
457
- if ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) {
458
- return TASKBAR_ID.FINISH_EDITION;
459
- }
460
- if (this.dataUnit.isMultipleEdition) {
461
- return TASKBAR_ID.MULTIPLE_EDITION;
462
- }
463
- if (((_b = this.dataState) === null || _b === void 0 ? void 0 : _b.selectionInfo) &&
464
- !this.dataState.selectionInfo.isAllRecords() &&
465
- this.dataState.selectionInfo.length > 0) {
466
- return this._currentViewMode === VIEW_MODE.GRID ? TASKBAR_ID.GRID_SELECTED : TASKBAR_ID.FORM_SELECTED;
467
- }
468
- return this._currentViewMode === VIEW_MODE.GRID ? TASKBAR_ID.GRID_REGULAR : TASKBAR_ID.FORM_REGULAR;
469
- }
470
- initInMemoryDataUnit() {
471
- this._inMemoryLoader = new InMemoryLoader(this._metadata, undefined, { autoLoad: this.autoLoad });
472
- this.dataUnit = this._inMemoryLoader.dataUnit;
473
- this.dataUnitReady.emit(this.dataUnit);
474
- }
475
- /**
476
- * @description Define os metadados do DataUnit.
477
- * @param {UnitMetadata} metadata - Os metadados a serem definidos.
478
- * @returns {Promise<void>}
479
- */
480
- setMetadata(metadata) {
481
- if (this._inMemoryLoader) {
482
- this._inMemoryLoader.metadata = metadata;
483
- }
484
- else if (this.dataUnit) {
485
- this.dataUnit.metadata = metadata;
486
- }
487
- return Promise.resolve();
488
- }
489
- /**
490
- * @description Define os registros do DataUnit.
491
- * @param {Array<Record>} records - Os registros a serem definidos.
492
- * @returns {Promise<void>}
493
- */
494
- setRecords(records) {
495
- if (this._inMemoryLoader) {
496
- this._inMemoryLoader.records = records;
497
- }
498
- else if (this.dataUnit) {
499
- this.dataUnit.records = records;
500
- }
501
- return Promise.resolve();
502
- }
503
- /**
504
- * @description Obtém os registros do DataUnit.
505
- * @returns {Promise<Array<Record>>} Uma promessa que resolve com a lista de registros.
506
- */
507
- getRecords() {
508
- return Promise.resolve(this.dataUnit.records);
509
- }
510
- /**
511
- * @description Usado para abrir o configurador do CRUD.
512
- * @returns {Promise<void>}
513
- */
514
- async openConfigurator() {
515
- var _a;
516
- (_a = this._snkConfigurator) === null || _a === void 0 ? void 0 : _a.open();
517
- }
518
- /**
519
- * @description Usado para fechar o configurador do CRUD.
520
- * @returns {Promise<void>}
521
- */
522
- async closeConfigurator() {
523
- var _a;
524
- (_a = this._snkConfigurator) === null || _a === void 0 ? void 0 : _a.close();
525
- }
526
- /**
527
- * @description Atualiza a configuração do formulário.
528
- * @returns {Promise<void>}
529
- */
530
- async updateConfig() {
531
- if (this._formConfigManager == undefined) {
532
- this._formConfigManager = new SnkFormConfigManager(this.configName, this.resolveResourceID());
533
- }
534
- this._formConfigManager.setConfig(this.formConfig);
535
- }
536
- processMetadata() {
537
- const fieldsMetadataElem = this._element.querySelectorAll("snk-field-metadata");
538
- const fieldMetadata = [];
539
- const formConfig = { fields: [], emptyConfig: false };
540
- fieldsMetadataElem.forEach(fieldElem => {
541
- const field = {
542
- name: fieldElem.getAttribute("name") || fieldElem.getAttribute("label"),
543
- label: fieldElem.getAttribute("label"),
544
- dataType: DataType[fieldElem.getAttribute("dataType")] || DataType.TEXT,
545
- userInterface: UserInterface[fieldElem.getAttribute("userInterface")] || UserInterface.SHORTTEXT,
546
- readOnly: fieldElem.getAttribute("readOnly") == "true",
547
- required: fieldElem.getAttribute("required") == "true",
548
- tab: fieldElem.getAttribute("tab") || undefined,
549
- visible: fieldElem.getAttribute("visible") != "false"
550
- };
551
- const fieldConfig = { name: field.name, tab: field.tab, visible: field.visible };
552
- formConfig.fields.push(fieldConfig);
553
- fieldMetadata.push(field);
554
- });
555
- if (fieldMetadata.length > 0) {
556
- if (!this.formConfig) {
557
- this.formConfig = formConfig;
558
- }
559
- this._metadata = {
560
- name: "SimpleCrud",
561
- label: "SimpleCrud",
562
- fields: fieldMetadata
563
- };
564
- }
565
- }
566
- addGridCustomValueFormattters() {
567
- var _a, _b, _c;
568
- const metadataFields = ((_a = this._metadata) === null || _a === void 0 ? void 0 : _a.fields) || ((_c = (_b = this.dataUnit) === null || _b === void 0 ? void 0 : _b.metadata) === null || _c === void 0 ? void 0 : _c.fields);
569
- if (!metadataFields) {
570
- return;
571
- }
572
- const fieldsWithRmPrecision = [];
573
- metadataFields.forEach((field) => {
574
- var _a;
575
- if (((_a = field.properties) === null || _a === void 0 ? void 0 : _a.rm_precision) && !fieldsWithRmPrecision.includes(field.name)) {
576
- fieldsWithRmPrecision.push(field.name);
577
- }
578
- });
579
- fieldsWithRmPrecision.forEach(field => {
580
- this.addCustomValueFormatter(field, this._rmPrecisionCustomValueFormatter);
581
- });
582
- }
583
- onDataStateChange(evt) {
584
- this.dataState = Object.assign({}, evt.detail);
585
- }
586
- getTaskBarDisabledButtons() {
587
- var _a, _b, _c, _d, _e, _f;
588
- const disabledButtons = [];
589
- if (!((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.hasNext)) {
590
- disabledButtons.push(TaskbarElement.NEXT);
591
- }
592
- if (!((_b = this.dataState) === null || _b === void 0 ? void 0 : _b.hasPrevious)) {
593
- disabledButtons.push(TaskbarElement.PREVIOUS);
594
- }
595
- if ((_d = (_c = this.dataState) === null || _c === void 0 ? void 0 : _c.selectionInfo) === null || _d === void 0 ? void 0 : _d.isEmpty()) {
596
- disabledButtons.push(TaskbarElement.FORM_MODE);
597
- }
598
- if (((_f = (_e = this.dataState) === null || _e === void 0 ? void 0 : _e.selectionInfo) === null || _f === void 0 ? void 0 : _f.length) > 1) {
599
- disabledButtons.push(TaskbarElement.CLONE);
600
- }
601
- return disabledButtons;
602
- }
603
- handleCancelEdit() {
604
- var _a;
605
- if ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.recordsIsEmpty) {
606
- this.goToView(VIEW_MODE.GRID);
607
- this.dataUnit.clearSelection();
608
- }
609
- }
610
- handleConfiguratorEvent(evt, type) {
611
- evt.stopImmediatePropagation();
612
- if (type === 'SAVE') {
613
- this.configuratorSave.emit();
614
- return;
615
- }
616
- this.configuratorCancel.emit();
617
- }
618
- onSelectField(option) {
619
- if (option == undefined) {
620
- return;
621
- }
622
- this._fieldToGetFocus = option.value;
623
- }
624
- getFieldSearch(splitButton, item) {
625
- if (this._fieldSearch != undefined) {
626
- return this._fieldSearch;
627
- }
628
- this._splitButtonForm = splitButton;
629
- this._fieldSearch = buildFieldSearch(item, ({ argument }) => this.fieldsOptionLoader(argument), (option) => this.onSelectField(option));
630
- return this._fieldSearch;
631
- }
632
- getFormFields() {
633
- var _a, _b;
634
- return (_b = (_a = this.formConfig) === null || _a === void 0 ? void 0 : _a.fields) !== null && _b !== void 0 ? _b : this._formFields;
635
- }
636
- handleFormSetFields(fields) {
637
- if (!ObjectUtils.equals(this._formFields, fields)) {
638
- this._formFields = fields !== null && fields !== void 0 ? fields : [];
639
- }
640
- }
641
- fieldsOptionLoader(argument) {
642
- const searchTerm = argument === null || argument === void 0 ? void 0 : argument.toLowerCase();
643
- const allFields = this.getFormFields().map(field => { var _a; return (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getField(field.name); });
644
- const filteredFields = allFields.filter(field => {
645
- var _a, _b;
646
- return ((_a = field.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(searchTerm)) ||
647
- ((_b = field.label) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes(searchTerm));
648
- });
649
- const options = filteredFields.map(field => ({ value: field.name, label: field.label }));
650
- return Promise.resolve(options);
651
- }
652
- isGridInsertActive() {
653
- return this.enableGridInsert && this.dataUnit.hasNewRecord();
654
- }
655
- getColumnSearch(splitButton, item) {
656
- if (this._columnSearch != undefined) {
657
- return this._columnSearch;
658
- }
659
- this._splitButton = splitButton;
660
- this._columnSearch = buildFieldSearch(item, ({ argument }) => new Promise(accept => {
661
- this._grid.filterColumns(argument).then((columns) => {
662
- accept(columns
663
- .filter(column => !column.hidden)
664
- .map(column => ({ label: column.label, value: column.name })));
665
- });
666
- }), (option) => {
667
- if (option != undefined) {
668
- this._grid.locateColumn(option.value);
669
- }
670
- });
671
- return this._columnSearch;
672
- }
673
- getActionsList() {
674
- const hardList = [];
675
- if (this.enableGridInsert) {
676
- hardList.push(this._continuousInsertUtils.actionContinuousInsert(this.enableContinuousInsert, () => {
677
- this.enableContinuousInsert = !this.enableContinuousInsert;
678
- this._continuousInsertUtils.handleSaveConfig(this.enableContinuousInsert);
679
- }));
680
- }
681
- if (this.isGridInsertActive())
682
- return hardList;
683
- if (this.taskbarManager != undefined && this.taskbarManager.getMoreOptions != undefined) {
684
- const taskbarID = this.getTopTaskBarId();
685
- return hardList.concat(this.taskbarManager.getMoreOptions(taskbarID, this.configName, this.dataState, this.actionsList));
686
- }
687
- return hardList.concat(this.actionsList);
688
- }
689
- getSettingsListGrid() {
690
- const hardList = [{
691
- value: StringUtils.generateUUID(),
692
- label: this.getMessage("snkSimpleCrud.findColumn"),
693
- disableCloseOnSelect: true,
694
- eagerInitialize: true,
695
- itemBuilder: (splitButton, item) => this.getColumnSearch(splitButton, item)
696
- }];
697
- return hardList;
698
- }
699
- getSettingsListForm() {
700
- const hardList = [{
701
- value: StringUtils.generateUUID(),
702
- label: this.getMessage("snkSimpleCrud.findFields"),
703
- disableCloseOnSelect: true,
704
- eagerInitialize: true,
705
- itemBuilder: (splitButton, item) => this.getFieldSearch(splitButton, item)
706
- }];
707
- return hardList;
708
- }
709
- getTopTaskBarId() {
710
- var _a;
711
- return ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? `snkGridTopTaskbar.finish_edition${PresentationMode.PRIMARY}` :
712
- `snkGridTopTaskbar.regular${PresentationMode.PRIMARY}`;
713
- }
714
- clearFieldToFocusHandler() {
715
- this._fieldToGetFocus = undefined;
716
- }
717
- gridConfigChangeHandler(evt) {
718
- evt.stopPropagation();
719
- if (!this.configName)
720
- return;
721
- const config = evt.detail;
722
- ConfigStorage.saveGridConfig(config, this.configName, this.resolveResourceID());
723
- }
724
- modalConfigChangeHandler(evt) {
725
- const config = evt.detail;
726
- this._grid.setColumnsState(config.columns)
727
- .then(() => {
728
- this.setGridConfig(config);
729
- this.closeGridConfig();
730
- this.dataExporterProviderStore();
731
- });
732
- evt.stopPropagation();
733
- }
734
- async dataExporterProviderStore() {
735
- if (this.dataUnit == undefined) {
736
- return;
737
- }
738
- if (this._grid == undefined) {
739
- return;
740
- }
741
- const dataExporterProvider = new ClientSideExporterProvider(this.dataUnit, this._grid);
742
- store.set("exporterProviders", Object.assign(Object.assign({}, store.get("exporterProviders")), { [this.getDataExporterStoreKey()]: dataExporterProvider }));
743
- }
744
- getDataExporterStoreKey() {
745
- return `SnkSimpleCrudDataExporter:${this.configName == undefined ? this.dataUnit.name : this.configName}`;
746
- }
747
- setGridConfig(config) {
748
- this.gridConfig = config;
749
- CrudUtils.assertDefaultSorting(this.gridConfig, this.dataUnit);
750
- }
751
- setFormConfig(config, forceUpdate) {
752
- if (this.formConfig && !forceUpdate)
753
- return;
754
- this.formConfig = config;
755
- }
756
- closeGridConfig() {
757
- this._showPopUpGridConfig = false;
758
- }
759
- getPageSize() {
760
- if (this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
761
- return 0;
762
- }
763
- if (this.pageSize == undefined) {
764
- return 150;
765
- }
766
- return this.pageSize;
767
- }
768
- resolveResourceID() {
769
- return StringUtils.isEmpty(this.resourceID) ? this._resourceID : this.resourceID;
770
- }
771
- getFormConfig() {
772
- var _a;
773
- const configFromManager = (_a = this._formConfigManager) === null || _a === void 0 ? void 0 : _a.getConfig(this.dataUnit, this.ignoreReadOnlyFormFields);
774
- if (!this.configName && !configFromManager) {
775
- return this.formConfig;
776
- }
777
- return configFromManager;
778
- }
779
- updateFormConfig() {
780
- let newConfig = this.formConfig;
781
- if (this.formLegacyConfigName == undefined) {
782
- newConfig = Object.assign(Object.assign({}, this.formConfig), { fields: this.dataUnit.metadata.fields });
783
- }
784
- this.setFormConfig(newConfig, true);
785
- if (this._formConfigManager == undefined) {
786
- this._formConfigManager = new SnkFormConfigManager(this.configName, this.resolveResourceID());
787
- }
788
- this._formConfigManager.setConfig(this.formConfig);
789
- }
790
- handleDataUnitOnInsertionMode() {
791
- if (this.enableGridInsert)
792
- return;
793
- this.goToView(VIEW_MODE.FORM);
794
- }
795
- async initKeyboardManager() {
796
- var _a;
797
- this._keyboardManager = new KeyboardManager({ propagate: false, element: this._element });
798
- const dataUnit = this.dataUnit || await ((_a = this._snkDataUnit) === null || _a === void 0 ? void 0 : _a.getDataUnit());
799
- if (dataUnit == undefined) {
800
- return;
801
- }
802
- this._keyboardManager
803
- .bind("F7", () => dataUnit.saveData(), { description: this.getMessage("snkSimpleCrud.keyboardShortcuts.saveData"), element: this._element })
804
- .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: this.getMessage("snkSimpleCrud.keyboardShortcuts.addRecord"), element: this._element })
805
- .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: this.getMessage("snkSimpleCrud.keyboardShortcuts.removeRecord"), element: this._element })
806
- .bind("Escape", () => {
807
- if (dataUnit.isDirty()) {
808
- dataUnit.cancelEdition();
809
- }
810
- }, {
811
- debounceTime: 1000,
812
- description: this.getMessage("snkSimpleCrud.keyboardShortcuts.cancelAction"), element: this._element
813
- });
814
- }
815
- async handleFormConfigSaved() {
816
- await this.loadFormConfig(true, true);
817
- }
818
- focusToGrid() {
819
- const gridElement = this._grid;
820
- gridElement.focus();
821
- }
822
- focusToForm() {
823
- const formElement = this._form;
824
- formElement.focus();
825
- }
826
- renderTaskbarContent(layout) {
827
- var _a;
828
- return (h("snk-taskbar", { class: `ez-box--no-outline ez-box ${this._currentViewMode === VIEW_MODE.FORM ? (this.outlineMode ? 'ez-box--outline' : 'ez-box--shadow-xsmall') + ' ez-padding--small' : ''}`, dataUnit: this.dataUnit, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-element-id": "grid_left", messagesBuilder: this.messagesBuilder, buttons: this._taskbarProcessor.buttons, actionsList: this.getActionsList(), actionsSettingsList: layout === VIEW_MODE.GRID ? this.getSettingsListGrid() : this.getSettingsListForm(), disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, "data-exporter-store-key": this.getDataExporterStoreKey(), slot: "leftButtons", presentationMode: PresentationMode.SECONDARY, tabindex: "0" }, h("slot", { name: "TASKBAR_CUSTOM_ELEMENTS" })));
829
- }
830
- /* istanbul ignore next */
831
- render() {
832
- var _a;
833
- if (this.dataUnit == undefined) {
834
- return;
835
- }
836
- return (h("snk-data-unit", { ref: ref => this._snkDataUnit = ref, class: "simple-crud__container", dataUnit: this.dataUnit, useCancelConfirm: this.useCancelConfirm, onDataStateChange: evt => this.onDataStateChange(evt), onCancelEdition: this.handleCancelEdit.bind(this), pageSize: this.getPageSize(), onInsertionMode: this.handleDataUnitOnInsertionMode.bind(this), onDataUnitReady: (evt) => this.dataUnitReady.emit(evt.detail), onMessagesBuilderUpdated: evt => this.messagesBuilder = evt.detail, onDataUnitFieldsHidded: this.updateFormConfig.bind(this), domainMessagesBuilder: this.domainMessagesBuilder }, h("header", null, h("slot", { name: "snkSimpleCrudHeader" })), h("section", { class: `ez-box ez-box--no-outline ${this.outlineMode ? 'ez-box--outline' : 'ez-box--shadow'} simple-crud__container-section`, ref: (ref) => this._container = ref, tabindex: "0" }, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, h("stack-item", null, h("ez-grid", { class: "ez-margin-bottom--large ez-box--no-outline", ref: ref => this._grid = ref, dataUnit: this.dataUnit, config: this.gridConfig, "no-header": true, multipleSelection: this.multipleSelection, onEzDoubleClick: () => this.goToView(VIEW_MODE.FORM), onConfigChange: evt => this.gridConfigChangeHandler(evt), columnfilterDataSource: this.dataUnit.name && this.dataUnit.name.includes(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME)
837
- ? undefined
838
- : this._multiSelectionListDataSource, useEnterLikeTab: this.useEnterLikeTab, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableContinuousInsert: this.enableContinuousInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, outlineMode: this.outlineMode, tabindex: "0", paginationCounterMode: this.paginationCounterMode, canEdit: !this.disableGridEdition }, this.renderTaskbarContent(VIEW_MODE.GRID), h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, this.renderTaskbarContent(VIEW_MODE.FORM), h("ez-form", { ref: (ref) => this._form = ref, class: `ez-margin-top--large ez-box--no-outline`, dataUnit: this.dataUnit, config: this.getFormConfig(), fieldToFocus: this._fieldToGetFocus, onEzFormSetFields: (evt) => this.handleFormSetFields(evt.detail), onEzFormRequestClearFieldToFocus: this.clearFieldToFocusHandler.bind(this), elementFocusSearchField: this._container, tabindex: "0" }), h("slot", { name: "snkSimpleCrudFormFooter" }), h("snk-simple-form-config", { ref: (ref) => this._snkSimpleFormConfig = ref, dataUnit: this.dataUnit, onSnkConfigSaved: this.handleFormConfigSaved.bind(this), configName: (_a = this.formLegacyConfigName) !== null && _a !== void 0 ? _a : this.configName, messagesBuilder: this.messagesBuilder })), this.messagesBuilder && h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.goToView(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showConfiguratorButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this.resolveResourceID(), customContainerId: this._customContainerId, layoutFormConfig: this.layoutFormConfig })), h("div", { id: `${this._customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }))), h("ez-popup", { size: "medium", heightMode: "auto", useHeader: false, opened: this._showPopUpGridConfig, onEzClosePopup: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this.gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig(), resourceID: this.resolveResourceID() }))));
839
- }
840
- get _element() { return getElement(this); }
841
- static get watchers() { return {
842
- "resourceID": ["handleResourceIDChanged"],
843
- "entityName": ["onChangeEntityName"],
844
- "mode": ["onModeChange"],
845
- "dataState": ["observeDataState"],
846
- "formLegacyConfigName": ["observeFormLegacy"],
847
- "gridLegacyConfigName": ["observeGridLegacy"]
848
- }; }
849
- };
850
- var TASKBAR_ID;
851
- (function (TASKBAR_ID) {
852
- TASKBAR_ID["FORM_REGULAR"] = "snkSimpleCrudTaskbar.form_regular";
853
- TASKBAR_ID["GRID_REGULAR"] = "snkSimpleCrudTaskbar.grid_regular";
854
- TASKBAR_ID["FORM_SELECTED"] = "snkSimpleCrudTaskbar.form_selected";
855
- TASKBAR_ID["GRID_SELECTED"] = "snkSimpleCrudTaskbar.grid_selected";
856
- TASKBAR_ID["FINISH_EDITION"] = "snkSimpleCrudTaskbar.finish_edition";
857
- TASKBAR_ID["MULTIPLE_EDITION"] = "snkSimpleCrudTaskbar.multiple_edition";
858
- })(TASKBAR_ID || (TASKBAR_ID = {}));
859
- SnkSimpleCrud.style = snkSimpleCrudCss;
860
-
861
- export { SnkSimpleCrud as snk_simple_crud };