@sankhyalabs/sankhyablocks 10.1.0-dev.2 → 10.1.0-dev.21

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 (318) hide show
  1. package/dist/cjs/{ConfigStorage-5a73e979.js → ConfigStorage-a4e1e518.js} +2 -2
  2. package/dist/cjs/{DataFetcher-eeb3b0b7.js → DataFetcher-0b6aa084.js} +34 -24
  3. package/dist/cjs/{FormConfigHelper-ebb77625.js → FormConfigHelper-28fe4668.js} +44 -0
  4. package/dist/cjs/{ISave-861e9d6d.js → ISave-2c455a77.js} +4 -4
  5. package/dist/cjs/{PersonalizedFilterUtils-7259cf65.js → PersonalizedFilterUtils-eccb267a.js} +13 -0
  6. package/dist/cjs/{SnkFormConfigManager-8d4fded8.js → SnkFormConfigManager-b8c81493.js} +7 -7
  7. package/dist/cjs/{SnkMultiSelectionListDataSource-3b93f6a6.js → SnkMultiSelectionListDataSource-03b58f5a.js} +5 -5
  8. package/dist/cjs/{auth-fetcher-8d8acd69.js → auth-fetcher-7e7796c9.js} +1 -1
  9. package/dist/cjs/config-header.cjs.entry.js +1 -1
  10. package/dist/cjs/configs-button.cjs.entry.js +1 -1
  11. package/dist/cjs/css-shim-a27d231b.js +6 -0
  12. package/dist/cjs/{dataunit-fetcher-1cea0695.js → dataunit-fetcher-8dffbcdf.js} +1 -1
  13. package/dist/cjs/dom-ff96a4bc.js +75 -0
  14. package/dist/cjs/field-config_2.cjs.entry.js +3 -3
  15. package/dist/cjs/fields-layout.cjs.entry.js +7 -4
  16. package/dist/cjs/fields-selector.cjs.entry.js +2 -2
  17. package/dist/cjs/{form-config-fetcher-f347f884.js → form-config-fetcher-5516d68a.js} +1 -1
  18. package/dist/cjs/guides-configurator.cjs.entry.js +6 -4
  19. package/dist/cjs/{index-1cf293c1.js → index-1894343a.js} +1515 -171
  20. package/dist/cjs/{index-13d05f03.js → index-f0fe7e6e.js} +90 -21
  21. package/dist/cjs/loader.cjs.js +16 -2
  22. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +5 -5
  23. package/dist/cjs/sankhyablocks.cjs.js +132 -4
  24. package/dist/cjs/shadow-css-7e3e0ab1.js +389 -0
  25. package/dist/cjs/snk-actions-button_9.cjs.entry.js +6 -6
  26. package/dist/cjs/snk-actions-form.cjs.entry.js +1 -1
  27. package/dist/cjs/snk-application.cjs.entry.js +100 -70
  28. package/dist/cjs/snk-attach.cjs.entry.js +8 -8
  29. package/dist/cjs/snk-client-confirm.cjs.entry.js +1 -1
  30. package/dist/cjs/snk-configurator.cjs.entry.js +1 -1
  31. package/dist/cjs/snk-crud.cjs.entry.js +100 -9
  32. package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +1 -1
  33. package/dist/cjs/snk-custom-slot-guide.cjs.entry.js +40 -0
  34. package/dist/cjs/snk-data-exporter.cjs.entry.js +6 -6
  35. package/dist/cjs/{snk-data-unit-de248308.js → snk-data-unit-036ce58c.js} +12 -3
  36. package/dist/cjs/snk-data-unit.cjs.entry.js +4 -4
  37. package/dist/cjs/snk-default-filter.cjs.entry.js +1 -1
  38. package/dist/cjs/snk-detail-view.cjs.entry.js +10 -10
  39. package/dist/cjs/snk-entity-list.cjs.entry.js +1 -1
  40. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  41. package/dist/cjs/snk-expression-group_2.cjs.entry.js +2 -2
  42. package/dist/cjs/snk-filter-advanced-mode_2.cjs.entry.js +2 -2
  43. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +58 -25
  44. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  45. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  46. package/dist/cjs/snk-filter-detail.cjs.entry.js +2 -2
  47. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +2 -2
  48. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +4 -4
  49. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +1 -1
  50. package/dist/cjs/snk-filter-number.cjs.entry.js +2 -2
  51. package/dist/cjs/snk-filter-period.cjs.entry.js +11 -6
  52. package/dist/cjs/snk-filter-search.cjs.entry.js +1 -1
  53. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -2
  54. package/dist/cjs/snk-form-summary.cjs.entry.js +1 -1
  55. package/dist/cjs/snk-form-view.cjs.entry.js +1 -1
  56. package/dist/cjs/snk-form_2.cjs.entry.js +33 -10
  57. package/dist/cjs/snk-grid.cjs.entry.js +28 -19
  58. package/dist/cjs/{snk-guides-viewer-4ec3e7e1.js → snk-guides-viewer-164c063e.js} +86 -40
  59. package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -10
  60. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +1 -1
  61. package/dist/cjs/snk-personalized-filter.cjs.entry.js +6 -6
  62. package/dist/cjs/snk-pesquisa.cjs.entry.js +17 -6
  63. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  64. package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
  65. package/dist/cjs/snk-simple-crud.cjs.entry.js +14 -21
  66. package/dist/cjs/snk-taskbar.cjs.entry.js +67 -51
  67. package/dist/cjs/{taskbar-elements-fb5d1e08.js → taskbar-elements-8a80420e.js} +2 -2
  68. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  69. package/dist/collection/collection-manifest.json +2 -1
  70. package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-advaced-mode.js +27 -0
  71. package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-plus.js +5 -25
  72. package/dist/collection/components/snk-application/snk-application.js +105 -44
  73. package/dist/collection/components/snk-attach/snk-attach.js +1 -1
  74. package/dist/collection/components/snk-crud/snk-crud.js +151 -2
  75. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +133 -34
  76. package/dist/collection/components/snk-custom-slot-guide/snk-custom-slot-guide.css +3 -0
  77. package/dist/collection/components/snk-custom-slot-guide/snk-custom-slot-guide.js +95 -0
  78. package/dist/collection/components/snk-data-unit/snk-data-unit.js +9 -0
  79. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +2 -2
  80. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +11 -6
  81. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +1 -1
  82. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.css +4 -0
  83. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +7 -1
  84. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -0
  85. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +15 -4
  86. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +30 -13
  87. package/dist/collection/components/snk-form-config/FormConfigHelper.js +42 -0
  88. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +6 -6
  89. package/dist/collection/components/snk-form-config/field-item/field-config/field-config.css +1 -0
  90. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.css +16 -0
  91. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.js +6 -3
  92. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.css +3 -3
  93. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.js +5 -3
  94. package/dist/collection/components/snk-form-config/snk-form-config.js +53 -6
  95. package/dist/collection/components/snk-grid/snk-grid.css +12 -0
  96. package/dist/collection/components/snk-grid/snk-grid.js +39 -12
  97. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.js +13 -0
  98. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +5 -1
  99. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +43 -0
  100. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +23 -12
  101. package/dist/collection/components/snk-taskbar/snk-taskbar.js +87 -48
  102. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +3 -3
  103. package/dist/collection/lib/message/SnkMessageBuilder.js +11 -2
  104. package/dist/collection/lib/message/resources/en-us/snk-form.msg.js +7 -0
  105. package/dist/collection/lib/message/resources/es-es/snk-form.msg.js +7 -0
  106. package/dist/collection/lib/message/resources/pt-br/snk-form.msg.js +8 -1
  107. package/dist/collection/lib/message/resources/pt-br/snk-pesquisa.msg.js +1 -1
  108. package/dist/components/DataFetcher.js +34 -4
  109. package/dist/components/ISave.js +3 -3
  110. package/dist/components/PersonalizedFilterUtils.js +13 -0
  111. package/dist/components/SnkFormConfigManager.js +6 -6
  112. package/dist/components/field-config2.js +44 -2
  113. package/dist/components/fields-layout2.js +6 -3
  114. package/dist/components/guides-configurator2.js +5 -3
  115. package/dist/components/index.d.ts +1 -0
  116. package/dist/components/index.js +1 -0
  117. package/dist/components/index2.js +90 -21
  118. package/dist/components/snk-application2.js +94 -63
  119. package/dist/components/snk-attach2.js +1 -1
  120. package/dist/components/snk-crud.js +96 -1
  121. package/dist/components/snk-custom-slot-guide.d.ts +11 -0
  122. package/dist/components/snk-custom-slot-guide.js +55 -0
  123. package/dist/components/snk-data-unit2.js +9 -0
  124. package/dist/components/snk-detail-view2.js +81 -34
  125. package/dist/components/snk-filter-bar2.js +30 -13
  126. package/dist/components/snk-filter-item2.js +8 -2
  127. package/dist/components/snk-filter-modal2.js +16 -6
  128. package/dist/components/snk-filter-number.js +2 -2
  129. package/dist/components/snk-filter-period.js +10 -5
  130. package/dist/components/snk-filter-text.js +1 -1
  131. package/dist/components/snk-form-config2.js +29 -5
  132. package/dist/components/snk-grid2.js +22 -11
  133. package/dist/components/snk-pesquisa2.js +14 -2
  134. package/dist/components/snk-simple-crud2.js +6 -12
  135. package/dist/components/snk-taskbar2.js +66 -49
  136. package/dist/esm/{ConfigStorage-568dc227.js → ConfigStorage-39ac8fef.js} +2 -2
  137. package/dist/esm/{DataFetcher-743feb3b.js → DataFetcher-0b9da57d.js} +34 -4
  138. package/dist/esm/{FormConfigHelper-4e42f0b6.js → FormConfigHelper-d09669f3.js} +43 -1
  139. package/dist/esm/{ISave-345481c1.js → ISave-f1c9269b.js} +4 -4
  140. package/dist/esm/{PersonalizedFilterUtils-2db38ff2.js → PersonalizedFilterUtils-d2439a9a.js} +13 -0
  141. package/dist/esm/{SnkFormConfigManager-d61df0c8.js → SnkFormConfigManager-a87566c8.js} +7 -7
  142. package/dist/esm/{SnkMultiSelectionListDataSource-ca8d7a09.js → SnkMultiSelectionListDataSource-01b3744b.js} +5 -5
  143. package/dist/esm/{auth-fetcher-c353127d.js → auth-fetcher-acdc1cb4.js} +1 -1
  144. package/dist/esm/config-header.entry.js +1 -1
  145. package/dist/esm/configs-button.entry.js +1 -1
  146. package/dist/esm/css-shim-9f2d321e.js +4 -0
  147. package/dist/esm/{dataunit-fetcher-7f2c61ca.js → dataunit-fetcher-4c312b43.js} +1 -1
  148. package/dist/esm/dom-64053c71.js +73 -0
  149. package/dist/esm/field-config_2.entry.js +3 -3
  150. package/dist/esm/fields-layout.entry.js +7 -4
  151. package/dist/esm/fields-selector.entry.js +2 -2
  152. package/dist/esm/{form-config-fetcher-898d2dd1.js → form-config-fetcher-7cda6254.js} +1 -1
  153. package/dist/esm/guides-configurator.entry.js +6 -4
  154. package/dist/esm/{index-479e1293.js → index-04f73a26.js} +1507 -171
  155. package/dist/esm/{index-446f9341.js → index-ea250be6.js} +90 -21
  156. package/dist/esm/loader.js +17 -3
  157. package/dist/esm/pesquisa-grid_2.entry.js +5 -5
  158. package/dist/esm/sankhyablocks.js +133 -5
  159. package/dist/esm/shadow-css-98135883.js +387 -0
  160. package/dist/esm/snk-actions-button_9.entry.js +6 -6
  161. package/dist/esm/snk-actions-form.entry.js +1 -1
  162. package/dist/esm/snk-application.entry.js +100 -70
  163. package/dist/esm/snk-attach.entry.js +8 -8
  164. package/dist/esm/snk-client-confirm.entry.js +1 -1
  165. package/dist/esm/snk-configurator.entry.js +1 -1
  166. package/dist/esm/snk-crud.entry.js +100 -9
  167. package/dist/esm/snk-custom-slot-elements.entry.js +1 -1
  168. package/dist/esm/snk-custom-slot-guide.entry.js +36 -0
  169. package/dist/esm/snk-data-exporter.entry.js +6 -6
  170. package/dist/esm/{snk-data-unit-60b338c5.js → snk-data-unit-130021b3.js} +12 -3
  171. package/dist/esm/snk-data-unit.entry.js +4 -4
  172. package/dist/esm/snk-default-filter.entry.js +1 -1
  173. package/dist/esm/snk-detail-view.entry.js +10 -10
  174. package/dist/esm/snk-entity-list.entry.js +1 -1
  175. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  176. package/dist/esm/snk-expression-group_2.entry.js +2 -2
  177. package/dist/esm/snk-filter-advanced-mode_2.entry.js +2 -2
  178. package/dist/esm/snk-filter-bar_4.entry.js +58 -25
  179. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  180. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  181. package/dist/esm/snk-filter-detail.entry.js +2 -2
  182. package/dist/esm/snk-filter-field-search_2.entry.js +2 -2
  183. package/dist/esm/snk-filter-modal-item.entry.js +4 -4
  184. package/dist/esm/snk-filter-multi-select.entry.js +1 -1
  185. package/dist/esm/snk-filter-number.entry.js +2 -2
  186. package/dist/esm/snk-filter-period.entry.js +11 -6
  187. package/dist/esm/snk-filter-search.entry.js +1 -1
  188. package/dist/esm/snk-filter-text.entry.js +2 -2
  189. package/dist/esm/snk-form-summary.entry.js +1 -1
  190. package/dist/esm/snk-form-view.entry.js +1 -1
  191. package/dist/esm/snk-form_2.entry.js +33 -10
  192. package/dist/esm/snk-grid.entry.js +28 -19
  193. package/dist/esm/{snk-guides-viewer-339e10b3.js → snk-guides-viewer-3fd18298.js} +86 -40
  194. package/dist/esm/snk-guides-viewer.entry.js +10 -10
  195. package/dist/esm/snk-personalized-filter-editor.entry.js +1 -1
  196. package/dist/esm/snk-personalized-filter.entry.js +6 -6
  197. package/dist/esm/snk-pesquisa.entry.js +17 -6
  198. package/dist/esm/snk-print-selector.entry.js +1 -1
  199. package/dist/esm/snk-simple-bar.entry.js +1 -1
  200. package/dist/esm/snk-simple-crud.entry.js +14 -21
  201. package/dist/esm/snk-taskbar.entry.js +68 -52
  202. package/dist/esm/{taskbar-elements-faaf5d8f.js → taskbar-elements-d1e63fb2.js} +2 -2
  203. package/dist/esm/teste-pesquisa.entry.js +1 -1
  204. package/dist/sankhyablocks/{p-7f7fe6c4.entry.js → p-0a160fb5.entry.js} +1 -1
  205. package/dist/sankhyablocks/{p-144da1d1.entry.js → p-12f595a6.entry.js} +1 -1
  206. package/dist/sankhyablocks/{p-162bddae.entry.js → p-175c9576.entry.js} +1 -1
  207. package/dist/sankhyablocks/p-18d66638.entry.js +1 -0
  208. package/dist/sankhyablocks/{p-1788d191.js → p-1f310bc6.js} +1 -1
  209. package/dist/sankhyablocks/{p-c4fcf1fb.entry.js → p-27e0cd68.entry.js} +1 -1
  210. package/dist/sankhyablocks/p-2a33d4cf.entry.js +1 -0
  211. package/dist/sankhyablocks/p-2ac55a5d.js +1 -0
  212. package/dist/sankhyablocks/{p-9a63f3f7.entry.js → p-2b882835.entry.js} +1 -1
  213. package/dist/sankhyablocks/{p-1f8cb438.entry.js → p-2c6be187.entry.js} +1 -1
  214. package/dist/sankhyablocks/p-2c9d0870.js +2 -0
  215. package/dist/sankhyablocks/{p-cb4343c4.entry.js → p-2cc2526e.entry.js} +1 -1
  216. package/dist/sankhyablocks/{p-75af335e.entry.js → p-2ebda226.entry.js} +1 -1
  217. package/dist/sankhyablocks/{p-093f58fa.entry.js → p-2f94cf87.entry.js} +1 -1
  218. package/dist/sankhyablocks/p-3a35917e.entry.js +1 -0
  219. package/dist/sankhyablocks/p-3a443150.entry.js +1 -0
  220. package/dist/sankhyablocks/{p-c90f337a.entry.js → p-3b6d8d33.entry.js} +1 -1
  221. package/dist/sankhyablocks/p-3db72758.entry.js +1 -0
  222. package/dist/sankhyablocks/{p-e8c49c12.js → p-48a5c311.js} +2 -2
  223. package/dist/sankhyablocks/p-52691b42.js +1 -0
  224. package/dist/sankhyablocks/{p-27482793.entry.js → p-5aae5c74.entry.js} +1 -1
  225. package/dist/sankhyablocks/p-6564180d.entry.js +1 -0
  226. package/dist/sankhyablocks/{p-6d241415.js → p-6768f176.js} +1 -1
  227. package/dist/sankhyablocks/p-68c1a093.js +1 -0
  228. package/dist/sankhyablocks/p-6d322b0a.js +1 -0
  229. package/dist/sankhyablocks/{p-7b3ca294.entry.js → p-7150eacf.entry.js} +1 -1
  230. package/dist/sankhyablocks/{p-825098c1.entry.js → p-752c57f4.entry.js} +1 -1
  231. package/dist/sankhyablocks/{p-49ddc27a.entry.js → p-752f4e29.entry.js} +1 -1
  232. package/dist/sankhyablocks/{p-e258de96.entry.js → p-76729994.entry.js} +1 -1
  233. package/dist/sankhyablocks/{p-7fc46290.js → p-7ee6b1bf.js} +1 -1
  234. package/dist/sankhyablocks/{p-27005fac.entry.js → p-877d9614.entry.js} +1 -1
  235. package/dist/sankhyablocks/p-8b4d6719.js +1 -0
  236. package/dist/sankhyablocks/{p-3d41f5a8.entry.js → p-8d946600.entry.js} +1 -1
  237. package/dist/sankhyablocks/{p-96d45943.entry.js → p-90ae6c2e.entry.js} +1 -1
  238. package/dist/sankhyablocks/p-94267a30.entry.js +1 -0
  239. package/dist/sankhyablocks/{p-59b8f277.js → p-998a9d6f.js} +1 -1
  240. package/dist/sankhyablocks/{p-21107f0d.entry.js → p-9c1ff75e.entry.js} +1 -1
  241. package/dist/sankhyablocks/{p-2fdac5e6.entry.js → p-9e109f5e.entry.js} +1 -1
  242. package/dist/sankhyablocks/{p-88ed2793.js → p-9e4555ab.js} +1 -1
  243. package/dist/sankhyablocks/p-a46ac091.js +1 -0
  244. package/dist/sankhyablocks/p-a73b6b00.js +1 -0
  245. package/dist/sankhyablocks/{p-164c822d.entry.js → p-acd2ba28.entry.js} +1 -1
  246. package/dist/sankhyablocks/{p-180716b2.entry.js → p-ae326d06.entry.js} +1 -1
  247. package/dist/sankhyablocks/p-b471bfab.entry.js +1 -0
  248. package/dist/sankhyablocks/p-b533edab.entry.js +1 -0
  249. package/dist/sankhyablocks/p-b555ce38.entry.js +1 -0
  250. package/dist/sankhyablocks/p-c2d33fc8.entry.js +1 -0
  251. package/dist/sankhyablocks/p-c3ec6642.js +19 -0
  252. package/dist/sankhyablocks/{p-91a9abb6.entry.js → p-c8043a53.entry.js} +1 -1
  253. package/dist/sankhyablocks/{p-c3dbf441.entry.js → p-cc64239c.entry.js} +1 -1
  254. package/dist/sankhyablocks/{p-b987e15d.js → p-cc9935af.js} +1 -1
  255. package/dist/sankhyablocks/{p-471b34f4.entry.js → p-cd00a3d1.entry.js} +1 -1
  256. package/dist/sankhyablocks/{p-b7e891cc.entry.js → p-cd40c8cf.entry.js} +1 -1
  257. package/dist/sankhyablocks/{p-bd203e8d.entry.js → p-cd412add.entry.js} +1 -1
  258. package/dist/sankhyablocks/{p-4c763b10.entry.js → p-d657f71f.entry.js} +1 -1
  259. package/dist/sankhyablocks/{p-e6b1c769.entry.js → p-d6dad5e4.entry.js} +1 -1
  260. package/dist/sankhyablocks/p-d714b6ca.js +1 -0
  261. package/dist/sankhyablocks/p-da455c82.js +12 -0
  262. package/dist/sankhyablocks/p-e30acdca.entry.js +1 -0
  263. package/dist/sankhyablocks/p-ec9027a7.entry.js +1 -0
  264. package/dist/sankhyablocks/p-ef9343c3.entry.js +1 -0
  265. package/dist/sankhyablocks/{p-667cab42.entry.js → p-f152ef98.entry.js} +1 -1
  266. package/dist/sankhyablocks/{p-7e250432.entry.js → p-f7170e10.entry.js} +1 -1
  267. package/dist/sankhyablocks/p-f8c5395a.entry.js +1 -0
  268. package/dist/sankhyablocks/{p-7345782c.entry.js → p-f921270b.entry.js} +1 -1
  269. package/dist/sankhyablocks/p-fa087ab2.entry.js +11 -0
  270. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  271. package/dist/types/components/snk-application/search-strategy/exec-prepared-search-advaced-mode.d.ts +5 -0
  272. package/dist/types/components/snk-application/snk-application.d.ts +9 -0
  273. package/dist/types/components/snk-crud/snk-crud.d.ts +22 -0
  274. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +23 -0
  275. package/dist/types/components/snk-custom-slot-guide/snk-custom-slot-guide.d.ts +16 -0
  276. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +1 -0
  277. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-period.d.ts +1 -0
  278. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +1 -1
  279. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +2 -1
  280. package/dist/types/components/snk-form-config/FormConfigHelper.d.ts +6 -1
  281. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +1 -1
  282. package/dist/types/components/snk-form-config/fields-layout/fields-layout.d.ts +2 -2
  283. package/dist/types/components/snk-form-config/guides-configurator/guides-configurator.d.ts +1 -1
  284. package/dist/types/components/snk-form-config/snk-form-config.d.ts +9 -2
  285. package/dist/types/components/snk-grid/snk-grid.d.ts +6 -0
  286. package/dist/types/components/snk-personalized-filter/interfaces/IParameter.d.ts +1 -0
  287. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +8 -0
  288. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +4 -1
  289. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +12 -4
  290. package/dist/types/components.d.ts +113 -0
  291. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
  292. package/package.json +1 -1
  293. package/react/components.d.ts +1 -0
  294. package/react/components.js +1 -0
  295. package/react/components.js.map +1 -1
  296. package/dist/sankhyablocks/p-0cf9aa38.js +0 -1
  297. package/dist/sankhyablocks/p-11346b8d.entry.js +0 -1
  298. package/dist/sankhyablocks/p-1649f51e.entry.js +0 -1
  299. package/dist/sankhyablocks/p-1d585081.js +0 -1
  300. package/dist/sankhyablocks/p-3ed04f0d.entry.js +0 -1
  301. package/dist/sankhyablocks/p-4759912d.entry.js +0 -1
  302. package/dist/sankhyablocks/p-55798617.js +0 -1
  303. package/dist/sankhyablocks/p-56948f00.entry.js +0 -11
  304. package/dist/sankhyablocks/p-60dd1d27.entry.js +0 -1
  305. package/dist/sankhyablocks/p-626b7a17.js +0 -1
  306. package/dist/sankhyablocks/p-8f73da95.js +0 -1
  307. package/dist/sankhyablocks/p-95c71f5e.entry.js +0 -1
  308. package/dist/sankhyablocks/p-988afe78.js +0 -1
  309. package/dist/sankhyablocks/p-9f2cdaab.entry.js +0 -1
  310. package/dist/sankhyablocks/p-9fe91526.js +0 -1
  311. package/dist/sankhyablocks/p-a5108625.entry.js +0 -1
  312. package/dist/sankhyablocks/p-aae4258d.entry.js +0 -1
  313. package/dist/sankhyablocks/p-af9d79e0.entry.js +0 -1
  314. package/dist/sankhyablocks/p-bb0de89c.entry.js +0 -1
  315. package/dist/sankhyablocks/p-d8d8169b.js +0 -2
  316. package/dist/sankhyablocks/p-e64958ba.entry.js +0 -1
  317. package/dist/sankhyablocks/p-f25c50f7.entry.js +0 -1
  318. package/dist/sankhyablocks/p-f8f29e1a.entry.js +0 -1
@@ -55,7 +55,8 @@ export class SnkGrid {
55
55
  this._popUpGridConfig = false;
56
56
  this._showSnkFilterBar = true;
57
57
  this._enableContinuousInsert = false;
58
- this.columnFilterDataSource = new SnkMultiSelectionListDataSource();
58
+ this._filterMode = 'regular';
59
+ this.columnFilterDataSource = undefined;
59
60
  this.enableLockManagerLoadingComp = false;
60
61
  this.enableLockManagerTaskbarClick = false;
61
62
  this.configName = undefined;
@@ -74,6 +75,7 @@ export class SnkGrid {
74
75
  this.canEdit = true;
75
76
  this.taskbarCustomContainerId = undefined;
76
77
  this.gridHeaderCustomSlotId = 'GRID_HEADER_CUSTOM_ELEMENTS';
78
+ this.gridHeaderDynamicSearchSlotId = 'GRID_HEADER_DYNAMIC_SEARCH';
77
79
  this.topTaskbarCustomSlotId = 'GRID_TASKBAR_CUSTOM_ELEMENTS';
78
80
  this.disablePersonalizedFilter = undefined;
79
81
  this.gridLegacyConfigName = undefined;
@@ -381,14 +383,20 @@ export class SnkGrid {
381
383
  }
382
384
  return action;
383
385
  }
386
+ initializeColumnFilterDataSource() {
387
+ var _a, _b, _c;
388
+ const isInMemoryDataUnit = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.name.includes("InMemoryDataUnit");
389
+ if (!this.columnFilterDataSource && !isInMemoryDataUnit) {
390
+ this.columnFilterDataSource = new SnkMultiSelectionListDataSource();
391
+ }
392
+ (_b = this.columnFilterDataSource) === null || _b === void 0 ? void 0 : _b.setApplication(this._application);
393
+ (_c = this.columnFilterDataSource) === null || _c === void 0 ? void 0 : _c.setDataUnit(this._dataUnit);
394
+ }
384
395
  finishLoading() {
385
396
  this._dataUnit.addInterceptor(this.dataUnitInterceptor);
386
397
  CrudUtils.assertDefaultSorting(this._gridConfig, this._dataUnit);
387
398
  this.addElementID();
388
- if (this.columnFilterDataSource != undefined) {
389
- this.columnFilterDataSource.setApplication(this._application);
390
- this.columnFilterDataSource.setDataUnit(this._dataUnit);
391
- }
399
+ this.initializeColumnFilterDataSource();
392
400
  }
393
401
  setCustomRenders() {
394
402
  if (!this._grid) {
@@ -572,7 +580,8 @@ export class SnkGrid {
572
580
  return;
573
581
  }
574
582
  if (filterConfig.length === 1 && filterConfig[0].id === 'PERSONALIZED_FILTER_GROUP') {
575
- this._showSnkFilterBar = filterConfig[0].groupedItems.length > 0;
583
+ this._showSnkFilterBar = true;
584
+ this._filterMode = filterConfig[0].groupedItems.length > 0 ? 'regular' : 'button';
576
585
  return;
577
586
  }
578
587
  this._showSnkFilterBar = true;
@@ -589,10 +598,10 @@ export class SnkGrid {
589
598
  if (!this._dataUnit) {
590
599
  return undefined;
591
600
  }
592
- return (h("div", { class: "snk-grid__container ez-flex ez-flex--column ez-flex-item--auto ez-padding--large ez-box--no-outline", tabindex: "0" }, h("div", { class: "snk-grid__header ez-margin-bottom--extra-small" }, this._showSnkFilterBar &&
593
- h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, title: this.filterBarTitle, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail), disablePersonalizedFilter: this.disablePersonalizedFilter, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, filterCustomConfig: this.filterCustomConfig, filterCustomConfigInterceptor: this.filterCustomConfigInterceptor }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium ez-padding-top--extra-small", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId, overflowStrategy: 'none', actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? 'snk-grid-container__without-shadow ' : '') + 'snk-grid__table', "data-element-id": "embedded", dataUnit: this._dataUnit, key: 'grid-' + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => {
601
+ return (h("div", { class: "snk-grid__container ez-flex ez-flex--column ez-flex-item--auto ez-padding--large ez-box--no-outline", tabindex: "0" }, h("div", { class: "snk-grid__header" }, this._showSnkFilterBar &&
602
+ h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, title: this.filterBarTitle, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail), disablePersonalizedFilter: this.disablePersonalizedFilter, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, filterCustomConfig: this.filterCustomConfig, filterCustomConfigInterceptor: this.filterCustomConfigInterceptor, mode: this._filterMode }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium ez-padding-top--extra-small", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId, overflowStrategy: 'none', actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? 'snk-grid-container__without-shadow ' : '') + 'snk-grid__table', "data-element-id": "embedded", dataUnit: this._dataUnit, key: 'grid-' + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => {
594
603
  this.gridConfigChangeHandler(evt);
595
- }, onEzColumnFilterChanged: async () => await this.dataExporterProviderStore(), onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableContinuousInsert: this._enableContinuousInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, outlineMode: this.outlineMode, useSearchColumn: this.useSearchColumn, suppressHorizontalScroll: this.suppressHorizontalScroll, paginationCounterMode: this.paginationCounterMode, suppressCheckboxColumn: this.suppressCheckboxColumn, suppressFilterColumn: this.suppressFilterColumn, compact: this.compact }, h("snk-taskbar", { id: 'teste', dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this.getGridHeaderButtons(), presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId, actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.gridHeaderCustomSlotId }))), h("div", { class: "ez-col ez-col--sd-12 snk-grid-container__footer" }, h("slot", { name: "SnkGridFooter" })), h("ez-popup", { size: "medium", heightMode: "auto", useHeader: false, opened: this._popUpGridConfig, 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.resourceID }))));
604
+ }, onEzColumnFilterChanged: async () => await this.dataExporterProviderStore(), onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableContinuousInsert: this._enableContinuousInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, outlineMode: this.outlineMode, useSearchColumn: this.useSearchColumn, suppressHorizontalScroll: this.suppressHorizontalScroll, paginationCounterMode: this.paginationCounterMode, suppressCheckboxColumn: this.suppressCheckboxColumn, suppressFilterColumn: this.suppressFilterColumn, compact: this.compact }, h("snk-taskbar", { id: 'teste', dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this.getGridHeaderButtons(), presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId, additionalSlotId: this.gridHeaderDynamicSearchSlotId, actionsSettingsList: this.getActionsSettingsList() }, h("slot", { name: this.gridHeaderCustomSlotId }), h("slot", { name: this.gridHeaderDynamicSearchSlotId }))), h("div", { class: "ez-col ez-col--sd-12 snk-grid-container__footer" }, h("slot", { name: "SnkGridFooter" })), h("ez-popup", { size: "medium", heightMode: "auto", useHeader: false, opened: this._popUpGridConfig, 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.resourceID }))));
596
605
  }
597
606
  static get is() { return "snk-grid"; }
598
607
  static get encapsulation() { return "scoped"; }
@@ -626,8 +635,7 @@ export class SnkGrid {
626
635
  "docs": {
627
636
  "tags": [],
628
637
  "text": "Define o data source para o filtro de colunas."
629
- },
630
- "defaultValue": "new SnkMultiSelectionListDataSource()"
638
+ }
631
639
  },
632
640
  "enableLockManagerLoadingComp": {
633
641
  "type": "boolean",
@@ -974,6 +982,24 @@ export class SnkGrid {
974
982
  "reflect": false,
975
983
  "defaultValue": "'GRID_HEADER_CUSTOM_ELEMENTS'"
976
984
  },
985
+ "gridHeaderDynamicSearchSlotId": {
986
+ "type": "string",
987
+ "mutable": false,
988
+ "complexType": {
989
+ "original": "string",
990
+ "resolved": "string",
991
+ "references": {}
992
+ },
993
+ "required": false,
994
+ "optional": false,
995
+ "docs": {
996
+ "tags": [],
997
+ "text": "Define o nome do slot para a aba de pesquisa no cabe\u00E7alho da grade."
998
+ },
999
+ "attribute": "grid-header-dynamic-search-slot-id",
1000
+ "reflect": false,
1001
+ "defaultValue": "'GRID_HEADER_DYNAMIC_SEARCH'"
1002
+ },
977
1003
  "topTaskbarCustomSlotId": {
978
1004
  "type": "string",
979
1005
  "mutable": false,
@@ -1331,7 +1357,8 @@ export class SnkGrid {
1331
1357
  "_gridConfig": {},
1332
1358
  "_popUpGridConfig": {},
1333
1359
  "_showSnkFilterBar": {},
1334
- "_enableContinuousInsert": {}
1360
+ "_enableContinuousInsert": {},
1361
+ "_filterMode": {}
1335
1362
  };
1336
1363
  }
1337
1364
  static get events() {
@@ -75,6 +75,9 @@ export class PersonalizedFilterUtils {
75
75
  }
76
76
  else if (DataType.DATE == type) {
77
77
  value = this.convertDataValue(value);
78
+ if (value === undefined) {
79
+ return;
80
+ }
78
81
  }
79
82
  else if (DataType.BOOLEAN == type) {
80
83
  value = value ? "S" : "N";
@@ -100,9 +103,19 @@ export class PersonalizedFilterUtils {
100
103
  return `?:{entidade=${expressionItem.entityName || ""};campo=${expressionItem.fieldName || ""}}`;
101
104
  }
102
105
  static convertDataValue(value) {
106
+ if (value == null || value === '' || value === undefined) {
107
+ return;
108
+ }
103
109
  if (typeof value == 'string') {
110
+ const trimmedValue = value.trim();
111
+ if (trimmedValue === '' || trimmedValue === '/' || trimmedValue === ' / /') {
112
+ return;
113
+ }
104
114
  value = new Date(value);
105
115
  }
116
+ if (value instanceof Date && isNaN(value.getTime())) {
117
+ return;
118
+ }
106
119
  return DateUtils.formatDate(value);
107
120
  }
108
121
  /*
@@ -43,6 +43,10 @@
43
43
  /*@doc Define a largura da barra de rolagem do componente.*/
44
44
  --snk-pesquisa__scrollbar--width: var(--space--small, 6px);
45
45
 
46
+ /*@doc Define o tamanho do conteúdo scrollável do popup */
47
+ --snk-pesquisa__scrollable-content--height: calc(100vh - 300px);
48
+
49
+
46
50
  height: 100%;
47
51
  display: flex;
48
52
  flex-direction: column;
@@ -79,7 +83,7 @@
79
83
  /*public*/
80
84
  scrollbar-color: var(--snk-pesquisa__scrollbar--color-clicked) var(--snk-pesquisa__scrollbar--color-background);
81
85
  padding-right: var(--snk-pesquisa__content--padding-right);
82
- height: 100vh;
86
+ height: var(--snk-pesquisa__scrollable-content--height);
83
87
  }
84
88
 
85
89
  .snk-pesquisa__content::-webkit-scrollbar {
@@ -33,6 +33,17 @@ export class SnkPesquisa {
33
33
  this._textInput.value = this.argument;
34
34
  }
35
35
  }
36
+ /** * Executa uma pesquisa programaticamente.
37
+ * Útil para cenários onde a pesquisa precisa ser disparada sem interação do usuário.
38
+ *
39
+ * @param text Texto utilizado como argumento de pesquisa.
40
+ * @example
41
+ * await pesquisaRef.executeSearch("Texto para pesquisa");
42
+ */
43
+ async executeSearch(text) {
44
+ this.argument = text;
45
+ this.onChangeValue({ detail: text });
46
+ }
36
47
  clearSearch() {
37
48
  this.argument = "";
38
49
  this._itemList = undefined;
@@ -606,6 +617,38 @@ export class SnkPesquisa {
606
617
  "_valideDataSource": {}
607
618
  };
608
619
  }
620
+ static get methods() {
621
+ return {
622
+ "executeSearch": {
623
+ "complexType": {
624
+ "signature": "(text: string) => Promise<void>",
625
+ "parameters": [{
626
+ "tags": [{
627
+ "name": "param",
628
+ "text": "text Texto utilizado como argumento de pesquisa."
629
+ }],
630
+ "text": "Texto utilizado como argumento de pesquisa."
631
+ }],
632
+ "references": {
633
+ "Promise": {
634
+ "location": "global"
635
+ }
636
+ },
637
+ "return": "Promise<void>"
638
+ },
639
+ "docs": {
640
+ "text": "* Executa uma pesquisa programaticamente.\n\u00DAtil para cen\u00E1rios onde a pesquisa precisa ser disparada sem intera\u00E7\u00E3o do usu\u00E1rio.",
641
+ "tags": [{
642
+ "name": "param",
643
+ "text": "text Texto utilizado como argumento de pesquisa."
644
+ }, {
645
+ "name": "example",
646
+ "text": "await pesquisaRef.executeSearch(\"Texto para pesquisa\");"
647
+ }]
648
+ }
649
+ }
650
+ };
651
+ }
609
652
  static get elementRef() { return "_element"; }
610
653
  static get watchers() {
611
654
  return [{
@@ -57,6 +57,7 @@ export class SnkSimpleCrud {
57
57
  this.domainMessagesBuilder = undefined;
58
58
  this.multipleEditionEnabled = true;
59
59
  this.layoutFormConfig = true;
60
+ this.disableGridEdition = false;
60
61
  this.autoLoad = undefined;
61
62
  this.outlineMode = false;
62
63
  }
@@ -157,11 +158,10 @@ export class SnkSimpleCrud {
157
158
  }
158
159
  getButtons(selected, extraButtons, removeRefresh) {
159
160
  let btnList = selected ? REGULAR_SELECTED_BTNS : REGULAR_DEFAULT_BTNS;
160
- if (removeRefresh) {
161
+ if (removeRefresh || this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
161
162
  btnList = btnList.filter(item => item !== TaskbarElement.REFRESH);
162
163
  }
163
- return this.addConfigButton(this.resolveInMemoryBtns(btnList)
164
- .concat(extraButtons));
164
+ return this.addConfigButton(btnList.concat(extraButtons));
165
165
  }
166
166
  addConfigButton(buttons) {
167
167
  if (this.configName === undefined || (this.configName && this.gridLegacyConfigName)) {
@@ -172,13 +172,6 @@ export class SnkSimpleCrud {
172
172
  get application() {
173
173
  return ApplicationContext.getContextValue("__SNK__APPLICATION__");
174
174
  }
175
- resolveInMemoryBtns(taskbarButtons) {
176
- const newTaskBarConfig = [...taskbarButtons];
177
- if (this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
178
- newTaskBarConfig.splice(1, 1);
179
- }
180
- return newTaskBarConfig;
181
- }
182
175
  /**
183
176
  * @description Usado para alternar a visão entre GRID e FORM externamente.
184
177
  * @param {VIEW_MODE} view - A visão para a qual navegar.
@@ -819,7 +812,7 @@ export class SnkSimpleCrud {
819
812
  }
820
813
  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)
821
814
  ? undefined
822
- : 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 }, 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("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() }))));
815
+ : 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() }))));
823
816
  }
824
817
  static get is() { return "snk-simple-crud"; }
825
818
  static get encapsulation() { return "scoped"; }
@@ -879,7 +872,7 @@ export class SnkSimpleCrud {
879
872
  },
880
873
  "dataState": {
881
874
  "type": "unknown",
882
- "mutable": false,
875
+ "mutable": true,
883
876
  "complexType": {
884
877
  "original": "DataState",
885
878
  "resolved": "DataState",
@@ -1438,6 +1431,24 @@ export class SnkSimpleCrud {
1438
1431
  "reflect": false,
1439
1432
  "defaultValue": "true"
1440
1433
  },
1434
+ "disableGridEdition": {
1435
+ "type": "boolean",
1436
+ "mutable": false,
1437
+ "complexType": {
1438
+ "original": "boolean",
1439
+ "resolved": "boolean",
1440
+ "references": {}
1441
+ },
1442
+ "required": false,
1443
+ "optional": false,
1444
+ "docs": {
1445
+ "tags": [],
1446
+ "text": "Desabilita a edi\u00E7\u00E3o na grade."
1447
+ },
1448
+ "attribute": "disable-grid-edition",
1449
+ "reflect": false,
1450
+ "defaultValue": "false"
1451
+ },
1441
1452
  "autoLoad": {
1442
1453
  "type": "boolean",
1443
1454
  "mutable": false,
@@ -1,15 +1,17 @@
1
- import { Action as DUAction, ApplicationContext, ElementIDUtils, LockManager, LockManagerOperation, OverflowDirection, OVERFLOWED_CLASS_NAME, OverflowWatcher, SilentException, StringUtils, } from '@sankhyalabs/core';
1
+ import { ApplicationContext, Action as DUAction, ElementIDUtils, LockManager, LockManagerOperation, OverflowDirection, OVERFLOWED_CLASS_NAME, OverflowWatcher, SilentException, StringUtils, } from '@sankhyalabs/core';
2
2
  import { h, Host } from '@stencil/core';
3
+ import { PresentationMode } from '../../lib/@types';
3
4
  import { AuthorizationConfig } from '../snk-configurator/AuthorizationConfig';
4
5
  import { AuthorizationElements, buildCustomButton, buildElem, TaskbarElement, VisibleWhenForbidden, } from './elements/taskbar-elements';
5
- import { PresentationMode } from '../../lib/@types';
6
6
  export class SnkTaskbar {
7
7
  constructor() {
8
8
  this.TASKBAR_ITEM_ID_PREFIX = 'TASKBAR_ITEM_';
9
9
  this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME = 'taskbar-custom-elements-container';
10
- this.ACTIONS_BUTTON_TAG = 'TASKBAR-ACTIONS-BUTTON';
11
10
  this.NOT_OVERFLOW_ELEMENTS = ["moreOptions", "dataExporter_snkDataExporter", "actionsButton_snkActionsButton"];
12
11
  this.TASKBAR_CUSTOM_ELEMENTS = 'taskbar-custom-elements-container';
12
+ this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME = 'taskbar-additional-slot-container';
13
+ this.TASKBAR_ADDITIONAL_SLOT = 'taskbar-additional-slot-container';
14
+ this._dataUnitInitialized = false;
13
15
  this._titleKeyByElement = {
14
16
  [TaskbarElement.UPDATE_MULTIPLE]: "snkTaskbar.titleUpdateMultiple",
15
17
  [TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
@@ -52,6 +54,7 @@ export class SnkTaskbar {
52
54
  this._isWaitingForSave = false;
53
55
  this.alignRigth = false;
54
56
  this.customSlotId = "TASKBAR_CUSTOM_ELEMENTS";
57
+ this.additionalSlotId = "TASKBAR_ADDITIONAL_SLOT";
55
58
  this.customContainerId = undefined;
56
59
  this.overflowStrategy = 'hiddenItems';
57
60
  this.configName = undefined;
@@ -107,6 +110,17 @@ export class SnkTaskbar {
107
110
  this.taskbarSaveUnlocker.emit();
108
111
  }
109
112
  }
113
+ observeDataUnit(newValue) {
114
+ this.initializeDataUnit(newValue);
115
+ }
116
+ initializeDataUnit(dataUnit) {
117
+ if (!!dataUnit && !this._dataUnitInitialized) {
118
+ this._dataUnitInitialized = true;
119
+ const dataInfo = { dataUnit: this.dataUnit };
120
+ ElementIDUtils.addIDInfo(this._element, null, dataInfo);
121
+ this.dataUnit.subscribe(this.onSaveEvent);
122
+ }
123
+ }
110
124
  // Internal methods
111
125
  elementsFromString(strButtons) {
112
126
  const elements = [];
@@ -152,45 +166,46 @@ export class SnkTaskbar {
152
166
  }
153
167
  elementClick(elem) {
154
168
  LockManager.whenResolve(this._element, LockManagerOperation.TASKBAR_CLICK).then(() => {
155
- if (this.dataUnit) {
156
- switch (elem) {
157
- case TaskbarElement.PREVIOUS:
158
- this.dataUnit.previousRecord();
159
- break;
160
- case TaskbarElement.NEXT:
161
- this.dataUnit.nextRecord();
162
- break;
163
- case TaskbarElement.REFRESH:
164
- this.dataUnit.loadData();
165
- break;
166
- case TaskbarElement.CLONE:
167
- this.dataUnit.copySelected();
168
- break;
169
- case TaskbarElement.REMOVE:
170
- this.dataUnit.removeSelectedRecords();
171
- break;
172
- case TaskbarElement.INSERT:
173
- this.dataUnit.addRecord();
174
- break;
175
- case TaskbarElement.CANCEL:
176
- this.dataUnit.cancelEdition();
177
- break;
178
- case TaskbarElement.SAVE:
179
- if (!this._isWaitingForSave) {
180
- this._isWaitingForSave = true;
181
- this.dataUnit.saveData().catch((err) => {
182
- if (err instanceof SilentException) {
183
- return;
184
- }
185
- else {
186
- throw err;
187
- }
188
- }).finally(() => {
189
- this._isWaitingForSave = false;
190
- });
191
- }
192
- break;
193
- }
169
+ if (!this.dataUnit) {
170
+ return;
171
+ }
172
+ switch (elem) {
173
+ case TaskbarElement.PREVIOUS:
174
+ this.dataUnit.previousRecord();
175
+ break;
176
+ case TaskbarElement.NEXT:
177
+ this.dataUnit.nextRecord();
178
+ break;
179
+ case TaskbarElement.REFRESH:
180
+ this.dataUnit.loadData();
181
+ break;
182
+ case TaskbarElement.CLONE:
183
+ this.dataUnit.copySelected();
184
+ break;
185
+ case TaskbarElement.REMOVE:
186
+ this.dataUnit.removeSelectedRecords();
187
+ break;
188
+ case TaskbarElement.INSERT:
189
+ this.dataUnit.addRecord();
190
+ break;
191
+ case TaskbarElement.CANCEL:
192
+ this.dataUnit.cancelEdition();
193
+ break;
194
+ case TaskbarElement.SAVE:
195
+ if (!this._isWaitingForSave) {
196
+ this._isWaitingForSave = true;
197
+ this.dataUnit.saveData().catch((err) => {
198
+ if (err instanceof SilentException) {
199
+ return;
200
+ }
201
+ else {
202
+ throw err;
203
+ }
204
+ }).finally(() => {
205
+ this._isWaitingForSave = false;
206
+ });
207
+ }
208
+ break;
194
209
  }
195
210
  if (this.isEnabled(elem))
196
211
  this.actionClick.emit(elem);
@@ -372,7 +387,8 @@ export class SnkTaskbar {
372
387
  return (_a = element.getAttribute('data-taskbar-label')) !== null && _a !== void 0 ? _a : "";
373
388
  }
374
389
  hasToIgnoreOverFlow(element) {
375
- return element.classList.contains(this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME);
390
+ return element.classList.contains(this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME) ||
391
+ element.classList.contains(this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME);
376
392
  }
377
393
  handleOverFlowStrategy() {
378
394
  if (this.overflowStrategy === 'hiddenItems') {
@@ -388,10 +404,8 @@ export class SnkTaskbar {
388
404
  };
389
405
  }
390
406
  componentDidLoad() {
391
- const dataInfo = { dataUnit: this.dataUnit };
392
- ElementIDUtils.addIDInfo(this._element, null, dataInfo);
407
+ this.initializeDataUnit(this.dataUnit);
393
408
  this.handleOverFlowStrategy();
394
- this.dataUnit.subscribe(this.onSaveEvent);
395
409
  }
396
410
  componentDidRender() {
397
411
  this.appendCustomElementsInTaskbar();
@@ -418,7 +432,7 @@ export class SnkTaskbar {
418
432
  this._slotContainer.appendChild(customElement);
419
433
  }
420
434
  render() {
421
- var _a;
435
+ var _a, _b;
422
436
  if (this._definitions === undefined) {
423
437
  return undefined;
424
438
  }
@@ -438,7 +452,8 @@ export class SnkTaskbar {
438
452
  (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 : _b.addNotOverFlowElement(elem);
439
453
  return h("slot", { name: elem });
440
454
  })), h("div", { id: this.TASKBAR_CUSTOM_ELEMENTS, class: this.TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME }, h("slot", { name: this.customSlotId }), (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 :
441
- _a.addNotOverFlowElement(this.TASKBAR_CUSTOM_ELEMENTS))));
455
+ _a.addNotOverFlowElement(this.TASKBAR_CUSTOM_ELEMENTS)), h("div", { id: this.TASKBAR_ADDITIONAL_SLOT, class: this.TASKBAR_ADDITIONAL_SLOT_CONTAINER_CLASS_NAME }, h("slot", { name: this.additionalSlotId }), (_b = this._overFlowWatcher) === null || _b === void 0 ? void 0 :
456
+ _b.addNotOverFlowElement(this.TASKBAR_ADDITIONAL_SLOT))));
442
457
  }
443
458
  getHostClasses() {
444
459
  if (this.overflowStrategy !== 'hiddenItems')
@@ -501,6 +516,27 @@ export class SnkTaskbar {
501
516
  "reflect": false,
502
517
  "defaultValue": "\"TASKBAR_CUSTOM_ELEMENTS\""
503
518
  },
519
+ "additionalSlotId": {
520
+ "type": "string",
521
+ "mutable": false,
522
+ "complexType": {
523
+ "original": "string",
524
+ "resolved": "string",
525
+ "references": {}
526
+ },
527
+ "required": false,
528
+ "optional": false,
529
+ "docs": {
530
+ "tags": [{
531
+ "name": "description",
532
+ "text": "Define o identificador do slot adicional."
533
+ }],
534
+ "text": ""
535
+ },
536
+ "attribute": "additional-slot-id",
537
+ "reflect": false,
538
+ "defaultValue": "\"TASKBAR_ADDITIONAL_SLOT\""
539
+ },
504
540
  "customContainerId": {
505
541
  "type": "string",
506
542
  "mutable": false,
@@ -889,6 +925,9 @@ export class SnkTaskbar {
889
925
  }, {
890
926
  "propName": "_isWaitingForSave",
891
927
  "methodName": "observeIsWaitingForSave"
928
+ }, {
929
+ "propName": "dataUnit",
930
+ "methodName": "observeDataUnit"
892
931
  }];
893
932
  }
894
933
  static get listeners() {
@@ -64,7 +64,7 @@ export class PesquisaFetcher {
64
64
  return result;
65
65
  }
66
66
  loadAdvancedSearch(entityName, argument, criteria, searchOptions, codeValue) {
67
- var _a, _b, _c, _d, _e;
67
+ var _a, _b, _c, _d, _e, _f;
68
68
  const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, searchOptions);
69
69
  const values = {
70
70
  argument: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.argument) || argument,
@@ -103,11 +103,11 @@ export class PesquisaFetcher {
103
103
  };
104
104
  }
105
105
  const options = searchOptions != undefined
106
- ? Object.assign(Object.assign({}, values === null || values === void 0 ? void 0 : values.searchOptions), { "pkFieldName": searchOptions.codeFieldName, "label": searchOptions.descriptionFieldName, "fieldName": searchOptions.codeFieldName, "useDescriptionOptions": false, "enableRowsCounter": true }) : undefined;
106
+ ? Object.assign(Object.assign({}, values === null || values === void 0 ? void 0 : values.searchOptions), { "pkFieldName": searchOptions.codeFieldName, "label": searchOptions.descriptionFieldName, "fieldName": searchOptions.codeFieldName, "useDescriptionOptions": false, "enableRowsCounter": true, "limit": searchOptions.limit }) : undefined;
107
107
  const reqBody = {
108
108
  "serviceName": serviceName,
109
109
  "requestBody": {
110
- "criteria": Object.assign({ "entityName": entityName, "compacted": false, "ignoreEntityCriteria": (_d = options === null || options === void 0 ? void 0 : options.ignoreEntityCriteria) !== null && _d !== void 0 ? _d : false, "limit": this._defaultPageSize, "orderByDesc": false, "externalCriteria": externalCriteria, "localEntityName": (_e = values.searchOptions) === null || _e === void 0 ? void 0 : _e.rootEntity }, { options }),
110
+ "criteria": Object.assign({ "entityName": entityName, "compacted": false, "ignoreEntityCriteria": (_d = options === null || options === void 0 ? void 0 : options.ignoreEntityCriteria) !== null && _d !== void 0 ? _d : false, "limit": (_e = options === null || options === void 0 ? void 0 : options.limit) !== null && _e !== void 0 ? _e : this._defaultPageSize, "orderByDesc": false, "externalCriteria": externalCriteria, "localEntityName": (_f = values.searchOptions) === null || _f === void 0 ? void 0 : _f.rootEntity }, { options }),
111
111
  "clientEventList": {
112
112
  "clientEvent": []
113
113
  }
@@ -127,8 +127,17 @@ export class SnkMessageBuilder {
127
127
  const messagesUrl = await this._application.getApplicationPath();
128
128
  const langSuffix = (this._lang !== LangUtils.ELanguages.PT_BR) ? `-${this._lang}` : "";
129
129
  const fileUrl = `${messagesUrl}/messages/appmessages${langSuffix}.js`;
130
- const module = await import(/* webpackIgnore: true */ fileUrl);
131
- return module === null || module === void 0 ? void 0 : module.default;
130
+ const response = await fetch(fileUrl);
131
+ if (!response.ok) {
132
+ throw new Error(`Não foi possível carregar as mensagens: ${response.status} ${response.statusText}`);
133
+ }
134
+ let scriptContent = await response.text();
135
+ if (scriptContent.trim().startsWith('<!DOCTYPE') || scriptContent.trim().startsWith('<html')) {
136
+ throw new Error('Não foi encontrado um arquivo de mensagens válido.');
137
+ }
138
+ scriptContent = scriptContent.replace(/export\s+default\s+/g, 'return ');
139
+ const func = new Function(scriptContent);
140
+ return func();
132
141
  }
133
142
  }
134
143
  export var OperationMap;
@@ -39,6 +39,8 @@ export const snkFormConfigMessages = {
39
39
  labelNewGroup: "Add new group",
40
40
  mainArea: "Main area",
41
41
  tabGeneral: "General",
42
+ canNotEditCustomGuide: "It is not possible to edit detail tabs and custom tabs",
43
+ canNotEditDetailGuide: "To configure a detail screen, you must access its tab",
42
44
  createNewGroup: "Create new group",
43
45
  newGroup: "New group",
44
46
  noGuideSelected: "Select a tab and start configuring",
@@ -66,6 +68,10 @@ export const snkFormConfigMessages = {
66
68
  title: "Attention",
67
69
  message: "Select a guide to start configuration!"
68
70
  },
71
+ canNotAddFieldToGuide: {
72
+ title: "Attention",
73
+ message: "It is not possible to add fields to detail tabs or custom tabs!"
74
+ },
69
75
  alert: {
70
76
  titleGroupExists: "A group with this title already exists",
71
77
  titleGroupEditing: "There is a <b>group<b/> being edited. <br/> Finish editing to save the settings.",
@@ -96,6 +102,7 @@ export const snkFormConfigMessages = {
96
102
  createNewGuide: "Create new tab",
97
103
  noHiddenGuides: "No hidden tabs",
98
104
  noVisibleGuides: "No visible tabs",
105
+ canNotDeleteCustomGuide: "Is not possible to detail detail tabs os a custom tabs",
99
106
  actions: {
100
107
  hide: "Hide",
101
108
  show: "Make visible",
@@ -39,6 +39,8 @@ export const snkFormConfigMessages = {
39
39
  labelNewGroup: "Añadir nuevo grupo",
40
40
  mainArea: "Área principal",
41
41
  tabGeneral: "General",
42
+ canNotEditCustomGuide: "No es posible editar pestañas de detalles y pestañas personalizadas",
43
+ canNotEditDetailGuide: "Para realizar la configuración de una pantalla de detalles es necesario acceder a su pestaña",
42
44
  createNewGroup: "Crear nuevo grupo",
43
45
  newGroup: "Nuevo grupo",
44
46
  noGuideSelected: "Seleccione una pestaña y comience a configurar",
@@ -66,6 +68,10 @@ export const snkFormConfigMessages = {
66
68
  title: "Atención",
67
69
  message: "¡Seleccione una guía para iniciar la configuración!"
68
70
  },
71
+ canNotAddFieldToGuide: {
72
+ title: "Atención",
73
+ message: "¡No es posible agregar campos a pestañas de detalles o pestañas personalizadas!"
74
+ },
69
75
  alert: {
70
76
  titleGroupExists: "Ya existe un grupo con título",
71
77
  titleGroupEditing: "Hay un <b>grupo<b/> en edición. <br/> Finalice la edición para guardar las configuraciones.",
@@ -96,6 +102,7 @@ export const snkFormConfigMessages = {
96
102
  createNewGuide: "Crear nueva pestaña",
97
103
  noHiddenGuides: "No hay pestañas ocultas",
98
104
  noVisibleGuides: "No hay pestañas visibles",
105
+ canNotDeleteCustomGuide: "No es posible eliminar pestañas de detalles o pestañas personalizadas",
99
106
  actions: {
100
107
  hide: "Ocultar",
101
108
  show: "Hacer visible",