@sankhyalabs/sankhyablocks 8.3.2 → 8.4.0-dev.2

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 (253) hide show
  1. package/dist/cjs/{ConfigStorage-4dd5e72c.js → ConfigStorage-0e4275f5.js} +163 -51
  2. package/dist/cjs/{DataFetcher-65199c00.js → DataFetcher-bd3d53a8.js} +78 -234
  3. package/dist/cjs/ISave-d68ce3cd.js +8 -0
  4. package/dist/cjs/PrintUtils-bcaeb82f.js +215 -0
  5. package/dist/cjs/ResourceIDUtils-5ff86aa7.js +12 -0
  6. package/dist/cjs/{SnkFormConfigManager-44717597.js → SnkFormConfigManager-5b485cd4.js} +19 -21
  7. package/dist/cjs/{auth-fetcher-7ed6d3e3.js → auth-fetcher-1583fe43.js} +2 -2
  8. package/dist/cjs/{dataunit-fetcher-102030d8.js → dataunit-fetcher-910be4ce.js} +1 -1
  9. package/dist/cjs/{form-config-fetcher-49993843.js → form-config-fetcher-f6cb55e6.js} +66 -3
  10. package/dist/cjs/index-f9e81701.js +4 -0
  11. package/dist/cjs/loader.cjs.js +1 -1
  12. package/dist/cjs/{pesquisa-fetcher-23adae20.js → pesquisa-fetcher-3356b3df.js} +1 -1
  13. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  14. package/dist/cjs/snk-actions-button.cjs.entry.js +19 -11
  15. package/dist/cjs/snk-application.cjs.entry.js +60 -44
  16. package/dist/cjs/snk-attach.cjs.entry.js +9 -14
  17. package/dist/cjs/snk-configurator.cjs.entry.js +2 -1
  18. package/dist/cjs/snk-crud.cjs.entry.js +28 -11
  19. package/dist/cjs/snk-data-exporter.cjs.entry.js +3 -2
  20. package/dist/cjs/{snk-data-unit-e89e07bd.js → snk-data-unit-7cc1846d.js} +5 -5
  21. package/dist/cjs/snk-data-unit.cjs.entry.js +1 -1
  22. package/dist/cjs/snk-detail-view.cjs.entry.js +17 -13
  23. package/dist/cjs/snk-entity-list.cjs.entry.js +0 -4
  24. package/dist/cjs/snk-filter-bar.cjs.entry.js +15 -17
  25. package/dist/cjs/snk-filter-detail.cjs.entry.js +7 -16
  26. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +6 -19
  27. package/dist/cjs/snk-form-config.cjs.entry.js +7 -17
  28. package/dist/cjs/snk-form-view.cjs.entry.js +6 -1
  29. package/dist/cjs/snk-form.cjs.entry.js +13 -8
  30. package/dist/cjs/snk-grid-config.cjs.entry.js +6 -6
  31. package/dist/cjs/snk-grid.cjs.entry.js +23 -22
  32. package/dist/cjs/{snk-guides-viewer-83cd2f15.js → snk-guides-viewer-5e22097d.js} +19 -8
  33. package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -9
  34. package/dist/cjs/snk-personalized-filter.cjs.entry.js +14 -16
  35. package/dist/cjs/snk-print-selector.cjs.entry.js +2 -4
  36. package/dist/cjs/snk-simple-crud.cjs.entry.js +43 -85
  37. package/dist/cjs/snk-taskbar-custom-elements.cjs.entry.js +20 -0
  38. package/dist/cjs/snk-taskbar.cjs.entry.js +71 -5
  39. package/dist/cjs/{taskbar-elements-b98dd6e9.js → taskbar-elements-39949c7a.js} +4 -4
  40. package/dist/collection/collection-manifest.json +1 -0
  41. package/dist/collection/components/snk-actions-button/actions/index.js +3 -4
  42. package/dist/collection/components/snk-actions-button/snk-actions-button.js +8 -4
  43. package/dist/collection/components/snk-application/snk-application.js +120 -65
  44. package/dist/collection/components/snk-configurator/snk-configurator.js +19 -1
  45. package/dist/collection/components/snk-crud/snk-crud.js +44 -8
  46. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +60 -2
  47. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +27 -1
  48. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +65 -28
  49. package/dist/collection/components/snk-data-unit/snk-data-unit.js +22 -6
  50. package/dist/collection/components/snk-entity-list/snk-entity-list.js +0 -23
  51. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +8 -13
  52. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +1 -1
  53. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +21 -16
  54. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +28 -12
  55. package/dist/collection/components/snk-form/SnkFormConfigManager.js +17 -19
  56. package/dist/collection/components/snk-form/snk-form.js +46 -2
  57. package/dist/collection/components/snk-form/subcomponents/snk-form-config/snk-form-config.js +5 -15
  58. package/dist/collection/components/snk-grid/snk-grid.js +108 -16
  59. package/dist/collection/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.js +19 -1
  60. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +28 -12
  61. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +23 -1
  62. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +4 -4
  63. package/dist/collection/components/snk-taskbar/snk-taskbar-custom-elements.js +43 -0
  64. package/dist/collection/components/snk-taskbar/snk-taskbar.css +4 -0
  65. package/dist/collection/components/snk-taskbar/snk-taskbar.js +126 -5
  66. package/dist/collection/lib/configs/ConfigStorage.js +33 -44
  67. package/dist/collection/lib/dataUnit/InMemoryLoader.js +23 -71
  68. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +47 -32
  69. package/dist/collection/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.js +0 -24
  70. package/dist/collection/lib/index.js +10 -0
  71. package/dist/collection/lib/resourceid/ResourceIDUtils.js +7 -0
  72. package/dist/collection/lib/utils/PrintUtils.js +18 -9
  73. package/dist/collection/lib/utils/urlutils.js +29 -0
  74. package/dist/components/ConfigStorage.js +161 -48
  75. package/dist/components/DataFetcher.js +79 -234
  76. package/dist/components/PrintUtils.js +213 -0
  77. package/dist/components/ResourceIDUtils.js +10 -0
  78. package/dist/components/SnkFormConfigManager.js +17 -19
  79. package/dist/components/auth-fetcher.js +1 -1
  80. package/dist/components/form-config-fetcher.js +64 -2
  81. package/dist/components/index.d.ts +1 -0
  82. package/dist/components/index.js +1 -0
  83. package/dist/components/snk-actions-button2.js +23 -9
  84. package/dist/components/snk-application2.js +145 -129
  85. package/dist/components/snk-attach2.js +1 -8
  86. package/dist/components/snk-configurator2.js +3 -1
  87. package/dist/components/snk-crud.js +27 -8
  88. package/dist/components/snk-data-unit2.js +6 -5
  89. package/dist/components/snk-detail-view2.js +26 -10
  90. package/dist/components/snk-entity-list.js +0 -4
  91. package/dist/components/snk-filter-bar2.js +12 -12
  92. package/dist/components/snk-filter-detail2.js +8 -13
  93. package/dist/components/snk-filter-modal-item2.js +5 -16
  94. package/dist/components/snk-form-config2.js +5 -15
  95. package/dist/components/snk-form-view2.js +6 -1
  96. package/dist/components/snk-form.js +9 -2
  97. package/dist/components/snk-grid-config2.js +4 -2
  98. package/dist/components/snk-grid2.js +24 -17
  99. package/dist/components/snk-personalized-filter2.js +11 -11
  100. package/dist/components/snk-print-selector.js +1 -1
  101. package/dist/components/snk-simple-crud2.js +30 -73
  102. package/dist/components/snk-taskbar-custom-elements.d.ts +11 -0
  103. package/dist/components/snk-taskbar-custom-elements.js +35 -0
  104. package/dist/components/snk-taskbar2.js +81 -9
  105. package/dist/esm/{ConfigStorage-d0e26692.js → ConfigStorage-f359573c.js} +162 -49
  106. package/dist/esm/{DataFetcher-4f5ad71c.js → DataFetcher-8daff9ad.js} +79 -234
  107. package/dist/esm/ISave-4412b20c.js +8 -0
  108. package/dist/esm/PrintUtils-3e4ff0f5.js +213 -0
  109. package/dist/esm/ResourceIDUtils-a114189a.js +10 -0
  110. package/dist/esm/{SnkFormConfigManager-457554ca.js → SnkFormConfigManager-35876bad.js} +19 -21
  111. package/dist/esm/{auth-fetcher-852e26c9.js → auth-fetcher-299fed55.js} +1 -1
  112. package/dist/esm/{dataunit-fetcher-97dd5148.js → dataunit-fetcher-bd8f9572.js} +1 -1
  113. package/dist/esm/{form-config-fetcher-ff72a867.js → form-config-fetcher-8ef7be16.js} +65 -3
  114. package/dist/esm/index-a7d3d3f1.js +4 -0
  115. package/dist/esm/loader.js +1 -1
  116. package/dist/esm/{pesquisa-fetcher-d82df64b.js → pesquisa-fetcher-27819123.js} +1 -1
  117. package/dist/esm/sankhyablocks.js +1 -1
  118. package/dist/esm/snk-actions-button.entry.js +19 -11
  119. package/dist/esm/snk-application.entry.js +60 -44
  120. package/dist/esm/snk-attach.entry.js +5 -10
  121. package/dist/esm/snk-configurator.entry.js +2 -1
  122. package/dist/esm/snk-crud.entry.js +30 -13
  123. package/dist/esm/snk-data-exporter.entry.js +3 -2
  124. package/dist/esm/{snk-data-unit-8c4d944d.js → snk-data-unit-1715d2f1.js} +5 -5
  125. package/dist/esm/snk-data-unit.entry.js +1 -1
  126. package/dist/esm/snk-detail-view.entry.js +17 -13
  127. package/dist/esm/snk-entity-list.entry.js +0 -4
  128. package/dist/esm/snk-filter-bar.entry.js +15 -17
  129. package/dist/esm/snk-filter-detail.entry.js +8 -17
  130. package/dist/esm/snk-filter-modal-item.entry.js +7 -20
  131. package/dist/esm/snk-form-config.entry.js +8 -18
  132. package/dist/esm/snk-form-view.entry.js +6 -1
  133. package/dist/esm/snk-form.entry.js +13 -8
  134. package/dist/esm/snk-grid-config.entry.js +6 -6
  135. package/dist/esm/snk-grid.entry.js +23 -22
  136. package/dist/esm/{snk-guides-viewer-202c3c4d.js → snk-guides-viewer-b0e32a7d.js} +19 -8
  137. package/dist/esm/snk-guides-viewer.entry.js +10 -9
  138. package/dist/esm/snk-personalized-filter.entry.js +14 -16
  139. package/dist/esm/snk-print-selector.entry.js +1 -3
  140. package/dist/esm/snk-simple-crud.entry.js +34 -76
  141. package/dist/esm/snk-taskbar-custom-elements.entry.js +16 -0
  142. package/dist/esm/snk-taskbar.entry.js +71 -5
  143. package/dist/esm/{taskbar-elements-2c761819.js → taskbar-elements-0a6b8b95.js} +4 -4
  144. package/dist/sankhyablocks/p-0df2ead8.entry.js +11 -0
  145. package/dist/sankhyablocks/p-324ce41e.entry.js +1 -0
  146. package/dist/sankhyablocks/p-34604220.entry.js +1 -0
  147. package/dist/sankhyablocks/p-648a7c72.entry.js +1 -0
  148. package/dist/sankhyablocks/p-688dcb4c.js +1 -0
  149. package/dist/sankhyablocks/p-6a38bda5.entry.js +1 -0
  150. package/dist/sankhyablocks/p-72fc257b.entry.js +1 -0
  151. package/dist/sankhyablocks/p-7bcd2f89.js +56 -0
  152. package/dist/sankhyablocks/p-7bd5aea7.js +1 -0
  153. package/dist/sankhyablocks/p-8014cc25.entry.js +1 -0
  154. package/dist/sankhyablocks/p-8d884fab.js +1 -0
  155. package/dist/sankhyablocks/p-928efcaa.entry.js +1 -0
  156. package/dist/sankhyablocks/p-989937ee.entry.js +1 -0
  157. package/dist/sankhyablocks/p-9a270401.entry.js +1 -0
  158. package/dist/sankhyablocks/p-9e7d65a4.js +1 -0
  159. package/dist/sankhyablocks/p-a7ee0e6f.entry.js +1 -0
  160. package/dist/sankhyablocks/p-ac0556a3.js +1 -0
  161. package/dist/sankhyablocks/p-af2d9aea.entry.js +1 -0
  162. package/dist/sankhyablocks/{p-435259af.js → p-b13cb8b5.js} +2 -2
  163. package/dist/sankhyablocks/p-b244640b.js +1 -0
  164. package/dist/sankhyablocks/p-bba91710.entry.js +1 -0
  165. package/dist/sankhyablocks/p-c555075c.entry.js +1 -0
  166. package/dist/sankhyablocks/p-c870b530.js +26 -0
  167. package/dist/sankhyablocks/{p-a2493d11.js → p-c9841939.js} +1 -1
  168. package/dist/sankhyablocks/p-d4f9ee17.entry.js +1 -0
  169. package/dist/sankhyablocks/p-d708b4ab.entry.js +1 -0
  170. package/dist/sankhyablocks/p-d84bc5c1.js +1 -0
  171. package/dist/sankhyablocks/{p-7d9302e2.js → p-de76b8a8.js} +1 -1
  172. package/dist/sankhyablocks/p-e19014a9.entry.js +1 -0
  173. package/dist/sankhyablocks/p-e1cb1f0b.js +1 -0
  174. package/dist/sankhyablocks/p-e9b53a9a.entry.js +1 -0
  175. package/dist/sankhyablocks/p-ebf8c5df.entry.js +1 -0
  176. package/dist/sankhyablocks/p-ed5f1204.entry.js +1 -0
  177. package/dist/sankhyablocks/p-f94b999e.entry.js +1 -0
  178. package/dist/sankhyablocks/p-fb1ecd0b.entry.js +1 -0
  179. package/dist/sankhyablocks/p-fd15aaac.entry.js +1 -0
  180. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  181. package/dist/types/components/snk-actions-button/actions/index.d.ts +2 -1
  182. package/dist/types/components/snk-application/snk-application.d.ts +9 -22
  183. package/dist/types/components/snk-configurator/snk-configurator.d.ts +4 -0
  184. package/dist/types/components/snk-crud/snk-crud.d.ts +6 -0
  185. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +12 -0
  186. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +5 -0
  187. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +13 -2
  188. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +4 -0
  189. package/dist/types/components/snk-entity-list/snk-entity-list.d.ts +0 -4
  190. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +0 -3
  191. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +1 -1
  192. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.d.ts +5 -4
  193. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +4 -0
  194. package/dist/types/components/snk-form/SnkFormConfigManager.d.ts +5 -4
  195. package/dist/types/components/snk-form/snk-form.d.ts +9 -1
  196. package/dist/types/components/snk-form/subcomponents/snk-form-config/snk-form-config.d.ts +0 -2
  197. package/dist/types/components/snk-grid/snk-grid.d.ts +17 -1
  198. package/dist/types/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.d.ts +4 -0
  199. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +5 -1
  200. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +4 -0
  201. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +2 -2
  202. package/dist/types/components/snk-taskbar/snk-taskbar-custom-elements.d.ts +7 -0
  203. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +27 -0
  204. package/dist/types/components.d.ts +203 -22
  205. package/dist/types/lib/configs/ConfigStorage.d.ts +11 -13
  206. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -8
  207. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  208. package/dist/types/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.d.ts +0 -1
  209. package/dist/types/lib/index.d.ts +11 -0
  210. package/dist/types/lib/resourceid/ResourceIDUtils.d.ts +3 -0
  211. package/dist/types/lib/utils/PrintUtils.d.ts +1 -0
  212. package/dist/types/lib/utils/urlutils.d.ts +14 -0
  213. package/package.json +2 -2
  214. package/react/components.d.ts +1 -0
  215. package/react/components.js +1 -0
  216. package/react/components.js.map +1 -1
  217. package/dist/cjs/filter-bar-config-fetcher-2ab64f92.js +0 -155
  218. package/dist/cjs/resource-fetcher-8d12fee7.js +0 -68
  219. package/dist/components/filter-bar-config-fetcher.js +0 -153
  220. package/dist/components/resource-fetcher.js +0 -66
  221. package/dist/esm/filter-bar-config-fetcher-1093db95.js +0 -153
  222. package/dist/esm/resource-fetcher-be4d1ba4.js +0 -66
  223. package/dist/sankhyablocks/p-030a2da4.entry.js +0 -1
  224. package/dist/sankhyablocks/p-1208becf.entry.js +0 -1
  225. package/dist/sankhyablocks/p-17724bee.entry.js +0 -1
  226. package/dist/sankhyablocks/p-216f081a.entry.js +0 -1
  227. package/dist/sankhyablocks/p-37b17041.js +0 -1
  228. package/dist/sankhyablocks/p-3916c825.entry.js +0 -1
  229. package/dist/sankhyablocks/p-3ffad8ca.entry.js +0 -1
  230. package/dist/sankhyablocks/p-44fe945a.entry.js +0 -1
  231. package/dist/sankhyablocks/p-4fc5a0db.entry.js +0 -1
  232. package/dist/sankhyablocks/p-564efc43.js +0 -1
  233. package/dist/sankhyablocks/p-5add4151.entry.js +0 -1
  234. package/dist/sankhyablocks/p-5de83141.entry.js +0 -1
  235. package/dist/sankhyablocks/p-6be9191f.entry.js +0 -1
  236. package/dist/sankhyablocks/p-6ee5d42c.js +0 -1
  237. package/dist/sankhyablocks/p-72d7f00c.js +0 -56
  238. package/dist/sankhyablocks/p-7352acf8.entry.js +0 -1
  239. package/dist/sankhyablocks/p-8115f7a2.js +0 -1
  240. package/dist/sankhyablocks/p-8903ffc6.js +0 -1
  241. package/dist/sankhyablocks/p-8dbb4c6c.entry.js +0 -11
  242. package/dist/sankhyablocks/p-935bfc1c.entry.js +0 -1
  243. package/dist/sankhyablocks/p-9395cf73.entry.js +0 -1
  244. package/dist/sankhyablocks/p-9d36d914.js +0 -17
  245. package/dist/sankhyablocks/p-aa6f27bd.entry.js +0 -1
  246. package/dist/sankhyablocks/p-aeaa5253.js +0 -10
  247. package/dist/sankhyablocks/p-befbc9ee.entry.js +0 -1
  248. package/dist/sankhyablocks/p-c1273e40.js +0 -1
  249. package/dist/sankhyablocks/p-c32b9d7c.entry.js +0 -1
  250. package/dist/sankhyablocks/p-c6380ea2.entry.js +0 -1
  251. package/dist/sankhyablocks/p-de69b4b0.entry.js +0 -1
  252. package/dist/sankhyablocks/p-f5c33da3.entry.js +0 -1
  253. package/dist/sankhyablocks/p-f847d53a.entry.js +0 -1
@@ -5,11 +5,15 @@ import './DataFetcher.js';
5
5
  import './pesquisa-fetcher.js';
6
6
  import { ElementIDUtils } from '@sankhyalabs/core';
7
7
  import { P as PresentationMode } from './index2.js';
8
+ import { d as defineCustomElement$t } from './snk-actions-button2.js';
9
+ import '@sankhyalabs/ezui/dist/collection/utils/constants';
10
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
+ import './filter-item-type.enum.js';
12
+ import './form-config-fetcher.js';
8
13
  import { T as TaskbarElement, d as defineCustomElement$2 } from './snk-taskbar2.js';
9
14
  import { V as VIEW_MODE } from './constants.js';
10
15
  import { T as TaskbarProcessor } from './SnkMultiSelectionListDataSource.js';
11
16
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
12
- import { d as defineCustomElement$t } from './snk-actions-button2.js';
13
17
  import { d as defineCustomElement$s } from './snk-attach2.js';
14
18
  import { d as defineCustomElement$r } from './snk-config-options2.js';
15
19
  import { d as defineCustomElement$q } from './snk-configurator2.js';
@@ -47,6 +51,7 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
47
51
  this.__registerHost();
48
52
  this.exit = createEvent(this, "exit", 7);
49
53
  this.actionClick = createEvent(this, "actionClick", 7);
54
+ this.formItemsReady = createEvent(this, "formItemsReady", 7);
50
55
  this._guideBuilders = new Map();
51
56
  this.dataUnit = undefined;
52
57
  this.dataState = undefined;
@@ -60,6 +65,8 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
60
65
  this.messagesBuilder = undefined;
61
66
  this.canEdit = true;
62
67
  this.presentationMode = undefined;
68
+ this.resourceID = undefined;
69
+ this.detailTaskbarCustomContainerId = undefined;
63
70
  this._breadcrumbItems = [];
64
71
  this._guides = undefined;
65
72
  this._formEditorConfigManager = undefined;
@@ -261,7 +268,7 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
261
268
  else {
262
269
  detailBranch = this.selectedGuide;
263
270
  }
264
- content = this.wrapDetail(levels, h("snk-detail-view", { ref: (ref) => this._currentDetail = ref, dataUnitName: this.getDataUnitName(levels, childEntityName), onSnkDetailGuidesChange: (evt) => this.updateGuide(evt.detail), entityName: childEntityName, selectedForm: formName, branchGuide: detailBranch, guideItemPath: this._breadcrumbItems, key: `detail${detailId}`, canEdit: this.canEdit, onSnkSwitchGuide: evt => this._guideNavigator.selectGuide(evt.detail) }));
271
+ content = this.wrapDetail(levels, h("snk-detail-view", { ref: (ref) => this._currentDetail = ref, dataUnitName: this.getDataUnitName(levels, childEntityName), onSnkDetailGuidesChange: (evt) => this.updateGuide(evt.detail), entityName: childEntityName, selectedForm: formName, branchGuide: detailBranch, guideItemPath: this._breadcrumbItems, key: `detail${detailId}`, canEdit: this.canEdit, onSnkSwitchGuide: evt => this._guideNavigator.selectGuide(evt.detail), resourceID: this.resourceID, taskbarCustomContainerId: this.detailTaskbarCustomContainerId }));
265
272
  }
266
273
  else {
267
274
  const cardId = this.selectedGuide.id;
@@ -310,7 +317,10 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
310
317
  return this.selectedGuide === undefined || '__main' === ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.id);
311
318
  }
312
319
  componentWillLoad() {
313
- this._configManager = new SnkFormConfigManager(this.configName, config => this.masterFormConfig = config);
320
+ if (this.resourceID == undefined) {
321
+ throw new Error("Erro interno: resourceID não informado");
322
+ }
323
+ this._configManager = new SnkFormConfigManager(this.configName, this.resourceID, config => this.masterFormConfig = config);
314
324
  this._configManager.loadConfig();
315
325
  }
316
326
  componentDidRender() {
@@ -329,7 +339,7 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
329
339
  }
330
340
  buildTaskBar() {
331
341
  var _a;
332
- return h("div", { class: `ez-col ez-flex-item--align-center ez-col--sd-6 ez-col--tb-6 ${this.presentationMode != PresentationMode.SECONDARY ? 'ez-align--right' : 'ez-padding-bottom--medium'}` }, h("snk-taskbar", { key: "guideViewerTaskbar", "data-element-id": "guideViewer", configName: this.configName, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, actionsList: this.actionsList, messagesBuilder: this.messagesBuilder, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-taskbar-owner": "master", dataUnit: this.dataUnit }));
342
+ return h("div", { class: `ez-col ez-flex-item--align-center ez-col--sd-6 ez-col--tb-6 ${this.presentationMode != PresentationMode.SECONDARY ? 'ez-align--right' : 'ez-padding-bottom--medium'}` }, h("snk-taskbar", { key: "guideViewerTaskbar", "data-element-id": "guideViewer", configName: this.configName, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, actionsList: this.actionsList, messagesBuilder: this.messagesBuilder, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-taskbar-owner": "master", dataUnit: this.dataUnit, resourceID: this.resourceID, customSlotId: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" })));
333
343
  }
334
344
  render() {
335
345
  var _a, _b;
@@ -348,7 +358,7 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
348
358
  h("div", { class: "ez-margin-top--extra-small" }, h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != PresentationMode.SECONDARY && this.buildTaskBar()), h("div", { class: "snk-guides-viewer__container" }, showGuides ?
349
359
  h("ez-guide-navigator", { ref: (ref) => this._guideNavigator = ref, class: "snk-guides-viewer__guide-navigator", items: this._guides, selectedId: this.selectedGuide ? this.selectedGuide.id : undefined, onEzSelectionChange: evt => this.updateSelectedGuideHandler(evt.detail) })
350
360
  :
351
- h("div", null), h("div", { class: "snk-guides-viewer__detail-container" }, SnkGuidesViewer.buildFixedForms(this.masterFormConfig, this._masterFormMetadata, (_b = this.selectedGuide) === null || _b === void 0 ? void 0 : _b.id, this.dataUnit, this.recordsValidator), this.getContent())), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this.getConfigViewMode(), onConfigSelected: (evt) => this.changeConfigViewMode(evt.detail), messagesBuilder: this.messagesBuilder, onOpenConfig: (evt) => this.openConfig(evt.detail) })));
361
+ h("div", null), h("div", { class: "snk-guides-viewer__detail-container" }, SnkGuidesViewer.buildFixedForms(this.masterFormConfig, this._masterFormMetadata, (_b = this.selectedGuide) === null || _b === void 0 ? void 0 : _b.id, this.dataUnit, this.recordsValidator), this.getContent())), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this.getConfigViewMode(), onConfigSelected: (evt) => this.changeConfigViewMode(evt.detail), messagesBuilder: this.messagesBuilder, onOpenConfig: (evt) => this.openConfig(evt.detail), resourceID: this.resourceID })));
352
362
  }
353
363
  static get watchers() { return {
354
364
  "dataUnit": ["observeDataUnit"],
@@ -356,8 +366,7 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
356
366
  "masterFormConfig": ["observeMasterFormConfig"]
357
367
  }; }
358
368
  static get style() { return snkGuidesViewerCss; }
359
- }, [2, "snk-guides-viewer", {
360
- "_guideBuilders": [16],
369
+ }, [6, "snk-guides-viewer", {
361
370
  "dataUnit": [16],
362
371
  "dataState": [16],
363
372
  "configName": [1, "config-name"],
@@ -370,6 +379,8 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
370
379
  "messagesBuilder": [1040],
371
380
  "canEdit": [4, "can-edit"],
372
381
  "presentationMode": [1, "presentation-mode"],
382
+ "resourceID": [1, "resource-i-d"],
383
+ "detailTaskbarCustomContainerId": [1, "detail-taskbar-custom-container-id"],
373
384
  "_breadcrumbItems": [32],
374
385
  "_guides": [32],
375
386
  "_formEditorConfigManager": [32],
@@ -586,11 +597,13 @@ const SnkDetailView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
586
597
  this.__registerHost();
587
598
  this.snkDetailGuidesChange = createEvent(this, "snkDetailGuidesChange", 7);
588
599
  this.snkSwitchGuide = createEvent(this, "snkSwitchGuide", 7);
600
+ this.formItemsReady = createEvent(this, "formItemsReady", 7);
589
601
  this._disabledButtons = undefined;
590
602
  this._currentView = undefined;
591
603
  this.attachmentRegisterKey = undefined;
592
604
  this.formConfigManager = undefined;
593
605
  this.dataUnitName = undefined;
606
+ this.resourceID = undefined;
594
607
  this.guideItemPath = undefined;
595
608
  this.entityName = undefined;
596
609
  this.label = undefined;
@@ -600,6 +613,7 @@ const SnkDetailView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
600
613
  this.messagesBuilder = undefined;
601
614
  this.branchGuide = undefined;
602
615
  this.canEdit = true;
616
+ this.taskbarCustomContainerId = undefined;
603
617
  }
604
618
  observerDataState(newValue, oldValue) {
605
619
  const openInsertion = !(oldValue === null || oldValue === void 0 ? void 0 : oldValue.insertionMode) && (newValue === null || newValue === void 0 ? void 0 : newValue.insertionMode);
@@ -760,7 +774,7 @@ const SnkDetailView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
760
774
  }
761
775
  componentWillLoad() {
762
776
  this._configName = `dynaform.${this.entityName}`;
763
- this.formConfigManager = new SnkFormConfigManager(this._configName, () => this.loadMetadata());
777
+ this.formConfigManager = new SnkFormConfigManager(this._configName, this.resourceID, () => this.loadMetadata());
764
778
  this.formConfigManager.loadConfig();
765
779
  if (this.messagesBuilder == undefined) {
766
780
  this.messagesBuilder = new SnkMessageBuilder(this.entityName);
@@ -769,15 +783,16 @@ const SnkDetailView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
769
783
  render() {
770
784
  this.updateLabel();
771
785
  //const cardConfig: IFormCardConfig = this._cardsState?.get(this.selectedForm);
772
- return (h(Host, null, h("snk-data-unit", { ref: (el) => this._snkDataUnit = el, dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: this.handleDataStateChange.bind(this), ignoreSaveMessage: this._currentView === VIEW_MODE.GRID, messagesBuilder: this.messagesBuilder, configName: this._configName }, h("ez-view-stack", { ref: (ref) => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-flex ez-title--primary ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full ez-size-height--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, messagesBuilder: this.messagesBuilder, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: (evt) => this.executeActionHandler(evt), presentationMode: PresentationMode.SECONDARY, canEdit: this.canEdit, isDetail: true }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), label: this.label, levelPath: this._levelPath }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, messagesBuilder: this.messagesBuilder, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: PresentationMode.SECONDARY, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this.entityName, onBack: this.handleAttachBack.bind(this) }))))));
786
+ return (h(Host, null, h("snk-data-unit", { ref: (el) => this._snkDataUnit = el, dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: this.handleDataStateChange.bind(this), ignoreSaveMessage: this._currentView === VIEW_MODE.GRID, messagesBuilder: this.messagesBuilder, configName: this._configName }, h("ez-view-stack", { ref: (ref) => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-flex ez-title--primary ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full ez-size-height--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, messagesBuilder: this.messagesBuilder, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: (evt) => this.executeActionHandler(evt), presentationMode: PresentationMode.SECONDARY, canEdit: this.canEdit, isDetail: true, taskbarCustomContainerId: this.taskbarCustomContainerId, gridHeaderCustomSlotId: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS", topTaskbarCustomSlotId: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), label: this.label, levelPath: this._levelPath, onFormItemsReady: ({ detail: formItems }) => this.formItemsReady.emit(formItems) }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, messagesBuilder: this.messagesBuilder, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: PresentationMode.SECONDARY, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit, resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }, h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" })))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this.entityName, onBack: this.handleAttachBack.bind(this) }))))));
773
787
  }
774
788
  static get watchers() { return {
775
789
  "dataState": ["observerDataState"]
776
790
  }; }
777
791
  static get style() { return snkDetailViewCss; }
778
- }, [2, "snk-detail-view", {
792
+ }, [6, "snk-detail-view", {
779
793
  "formConfigManager": [1040],
780
794
  "dataUnitName": [1, "data-unit-name"],
795
+ "resourceID": [1, "resource-i-d"],
781
796
  "guideItemPath": [16],
782
797
  "entityName": [1, "entity-name"],
783
798
  "label": [1],
@@ -787,6 +802,7 @@ const SnkDetailView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
787
802
  "messagesBuilder": [1040],
788
803
  "branchGuide": [16],
789
804
  "canEdit": [4, "can-edit"],
805
+ "taskbarCustomContainerId": [1, "taskbar-custom-container-id"],
790
806
  "_disabledButtons": [32],
791
807
  "_currentView": [32],
792
808
  "attachmentRegisterKey": [32],
@@ -8,7 +8,6 @@ const SnkEntityList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
8
8
  super();
9
9
  this.__registerHost();
10
10
  this.valueChanged = createEvent(this, "valueChanged", 7);
11
- this.saveConfig = createEvent(this, "saveConfig", 7);
12
11
  this._searchValue = undefined;
13
12
  this._ezListSource = [];
14
13
  this.config = undefined;
@@ -17,7 +16,6 @@ const SnkEntityList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
17
16
  }
18
17
  async reloadList() {
19
18
  this.loadListSource();
20
- this.saveConfig.emit(this.config);
21
19
  }
22
20
  observeConfig() {
23
21
  var _a, _b;
@@ -33,7 +31,6 @@ const SnkEntityList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
33
31
  }
34
32
  });
35
33
  this.config = ObjectUtils.copy(configCopy);
36
- this.saveConfig.emit(this.config);
37
34
  this.valueChanged.emit((_b = this.config) === null || _b === void 0 ? void 0 : _b.value);
38
35
  }
39
36
  loadListSource() {
@@ -90,7 +87,6 @@ const SnkEntityList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
90
87
  }
91
88
  ] });
92
89
  this.loadListSource();
93
- this.saveConfig.emit(this.config);
94
90
  this.valueChanged.emit((_d = this.config) === null || _d === void 0 ? void 0 : _d.value);
95
91
  }
96
92
  }
@@ -208,6 +208,7 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
208
208
  };
209
209
  this.dataUnit = undefined;
210
210
  this.configName = undefined;
211
+ this.resourceID = undefined;
211
212
  this.filterConfig = undefined;
212
213
  this.messagesBuilder = undefined;
213
214
  this.allowDefault = undefined;
@@ -283,11 +284,11 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
283
284
  return;
284
285
  }
285
286
  this._loadingPending = false;
286
- this.dataUnit.loadData();
287
+ this.dataUnit.loadData(undefined, undefined, true);
287
288
  }
288
289
  if (this._configUpdated) {
289
290
  this._configUpdated = false;
290
- ConfigStorage.saveFilterBarConfig(this.filterConfig, this.configName);
291
+ ConfigStorage.saveFilterBarConfig(this.filterConfig, this.configName, this.resourceID);
291
292
  }
292
293
  }
293
294
  /**
@@ -403,15 +404,13 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
403
404
  }
404
405
  loadConfigFromStorage() {
405
406
  return new Promise(accept => {
406
- ConfigStorage.get().then(instance => {
407
- instance.loadFilterBarConfig(this.configName, { contextURI: this.dataUnit.name })
408
- .then((filters) => {
409
- accept();
410
- this.filterConfig = filters.map(item => this.normalizeItem(item));
411
- })
412
- .catch(reason => {
413
- throw new ErrorException(this.getMessage("snkFilterBar.failToLoadConfig"), reason);
414
- });
407
+ ConfigStorage.loadFilterBarConfig(this.configName, this.resourceID, { contextURI: this.dataUnit.name })
408
+ .then((filters) => {
409
+ accept();
410
+ this.filterConfig = filters.map(item => this.normalizeItem(item));
411
+ })
412
+ .catch(reason => {
413
+ throw new ErrorException(this.getMessage("snkFilterBar.failToLoadConfig"), reason);
415
414
  });
416
415
  });
417
416
  }
@@ -496,7 +495,7 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
496
495
  return undefined;
497
496
  }
498
497
  if (this.showPersonalizedFilter) {
499
- return h("snk-personalized-filter", { class: "filter-bar__personalized-filter", filterId: this.personalizedFilterId, ref: (el) => this._elPersonalizedFilter = el, onEzCancel: () => this.hidePersonalizedFilter(), entityUri: this.dataUnit.name, configName: this.configName });
498
+ return h("snk-personalized-filter", { class: "filter-bar__personalized-filter", filterId: this.personalizedFilterId, ref: (el) => this._elPersonalizedFilter = el, onEzCancel: () => this.hidePersonalizedFilter(), entityUri: this.dataUnit.name, configName: this.configName, resourceID: this.resourceID });
500
499
  }
501
500
  return (h(Host, null, h("ez-scroller", { class: "snk-filter-bar__scroller", direction: EzScrollDirection.HORIZONTAL, activeShadow: true, locked: this.scrollerLocked }, h("section", { class: "snk-filter-bar__filter-item-container" }, this.getFilterItems())), h("ez-button", { class: "ez-padding-left--medium", size: "small", label: this.getMessage('snkFilterBar.filters', undefined, 'Filtros'), onClick: this.showFilterModal.bind(this) }, h("ez-icon", { slot: "leftIcon", iconName: "plus", class: "ez-padding-right--small" }))));
502
501
  }
@@ -508,6 +507,7 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
508
507
  }, [2, "snk-filter-bar", {
509
508
  "dataUnit": [1040],
510
509
  "configName": [1, "config-name"],
510
+ "resourceID": [1, "resource-i-d"],
511
511
  "filterConfig": [1040],
512
512
  "messagesBuilder": [1040],
513
513
  "allowDefault": [32],
@@ -1,8 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Fragment, Host } from '@stencil/core/internal/client';
2
2
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
3
3
  import { F as FilterItemType } from './filter-item-type.enum.js';
4
- import { ApplicationContext, ElementIDUtils, ObjectUtils } from '@sankhyalabs/core';
5
- import { F as FilterBarConfigFetcher } from './filter-bar-config-fetcher.js';
4
+ import { ElementIDUtils, ObjectUtils } from '@sankhyalabs/core';
6
5
  import { E as EPresentationMode } from './presentationMode.js';
7
6
  import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils.js';
8
7
 
@@ -28,7 +27,6 @@ const SnkFilterDetail = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
28
27
  }
29
28
  componentDidLoad() {
30
29
  if (this._element) {
31
- this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
32
30
  ElementIDUtils.addIDInfo(this._element);
33
31
  const dataElementIdDoFilterItem = this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME);
34
32
  this._idContentEditor = `${dataElementIdDoFilterItem}_${this.config.id}`;
@@ -58,7 +56,12 @@ const SnkFilterDetail = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
58
56
  };
59
57
  return snkFilterPersonalizedProps;
60
58
  case FilterItemType.MULTI_LIST:
61
- return { tag: "snk-entity-list" };
59
+ return {
60
+ tag: "snk-entity-list",
61
+ props: {
62
+ onValueChanged: evt => this.config = Object.assign(Object.assign({}, this.config), { value: evt.detail })
63
+ }
64
+ };
62
65
  }
63
66
  return { tag: "snk-filter-text" };
64
67
  }
@@ -146,20 +149,12 @@ const SnkFilterDetail = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
146
149
  this.config = ObjectUtils.copy(configCopy);
147
150
  }
148
151
  }
149
- saveConfig(newConfig) {
150
- var _a;
151
- (_a = this._application) === null || _a === void 0 ? void 0 : _a.getResourceID().then(resourceId => {
152
- const fetcher = new FilterBarConfigFetcher();
153
- fetcher.saveEntityListConfig(newConfig, resourceId, this._application.configName);
154
- this.config = newConfig;
155
- });
156
- }
157
152
  componentWillLoad() {
158
153
  this.originalConfig = ObjectUtils.copy(this.config);
159
154
  }
160
155
  render() {
161
156
  const { tag: CustomElement, props } = this.getContentEditor();
162
- return (h(Host, null, h("div", { class: "col ez-col--sd-12 ez-align--right ez-padding-medium ez-flex--align-items-center" }, h("div", { class: "ez-text ez-title ez-title--small ez-padding--small sc-snk-filter-bar snk-filter-item__editor-header" }, this.config.detailTitle), this.getPopUpHeaderButtons()), h(CustomElement, Object.assign({ maxHeightList: '240px', ref: ref => this._editor = ref, value: this.config.value, config: this.config, onKeyDown: evt => this.onKeyDonwListener(evt), "data-element-id": this._idContentEditor, getMessage: this.getMessage, onSaveConfig: evt => this.saveConfig(evt.detail), rightListSlotBuilder: item => this.buildRightSlot(item) }, props)), h("hr", { class: "sc-snk-filter-bar snk-filter__popover-rule" }), h("div", { class: "ez-col ez-col--sd-12 ez-align--right" }, this.filterCanBeCleared() && (h("ez-button", { label: this.getMessage("snkFilterBar.cleanFilter"), onClick: () => this.clear(), size: "small" })), h("ez-button", { ref: ref => this._applyButton = ref, label: this.getMessage("snkFilterBar.applyFilter"), onClick: () => this.apply(), size: "small", class: "ez-button--primary ez-padding-left--medium" }))));
157
+ return (h(Host, null, h("div", { class: "col ez-col--sd-12 ez-align--right ez-padding-medium ez-flex--align-items-center" }, h("div", { class: "ez-text ez-title ez-title--small ez-padding--small sc-snk-filter-bar snk-filter-item__editor-header" }, this.config.detailTitle), this.getPopUpHeaderButtons()), h(CustomElement, Object.assign({ maxHeightList: '240px', ref: ref => this._editor = ref, value: this.config.value, config: this.config, onKeyDown: evt => this.onKeyDonwListener(evt), "data-element-id": this._idContentEditor, getMessage: this.getMessage, rightListSlotBuilder: item => this.buildRightSlot(item) }, props)), h("hr", { class: "sc-snk-filter-bar snk-filter__popover-rule" }), h("div", { class: "ez-col ez-col--sd-12 ez-align--right" }, this.filterCanBeCleared() && (h("ez-button", { label: this.getMessage("snkFilterBar.cleanFilter"), onClick: () => this.clear(), size: "small" })), h("ez-button", { ref: ref => this._applyButton = ref, label: this.getMessage("snkFilterBar.applyFilter"), onClick: () => this.apply(), size: "small", class: "ez-button--primary ez-padding-left--medium" }))));
163
158
  }
164
159
  get _element() { return this; }
165
160
  static get watchers() { return {
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { ElementIDUtils, ApplicationContext, ObjectUtils } from '@sankhyalabs/core';
2
+ import { ElementIDUtils, ObjectUtils } from '@sankhyalabs/core';
3
3
  import { F as FilterItemType } from './filter-item-type.enum.js';
4
4
  import { E as EPresentationMode } from './presentationMode.js';
5
5
  import { C as ConfigStorage } from './ConfigStorage.js';
@@ -23,14 +23,13 @@ const SnkFilterModalItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
23
23
  this.addPersonalizedFilter = createEvent(this, "addPersonalizedFilter", 7);
24
24
  this.filterItem = undefined;
25
25
  this.configName = undefined;
26
+ this.resourceID = undefined;
26
27
  }
27
28
  observeFilterItem(newValue) {
28
29
  var _a, _b;
29
30
  this._editor && (this._editor["config"] = newValue);
30
31
  (_b = (_a = this._editor) === null || _a === void 0 ? void 0 : _a['reloadList']) === null || _b === void 0 ? void 0 : _b.call(_a);
31
32
  this.filterChange.emit(newValue);
32
- //isso faz o filtro salvar o estado precocemente. Caso: Botão limpar filtro dispara dezenas de vezes
33
- //this.saveConfig();
34
33
  }
35
34
  getContentEditorConfig() {
36
35
  const props = { presentationMode: EPresentationMode.MODAL };
@@ -72,11 +71,10 @@ const SnkFilterModalItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
72
71
  else {
73
72
  this.filterItem = Object.assign(Object.assign({}, this.filterItem), { value: this.filterItem.type === FilterItemType.SEARCH ? data : newValue, visible: this.isVisible(newValue) });
74
73
  }
75
- this.saveConfig();
76
74
  }
77
75
  handleDeleteFilter(filter, filterItemType) {
78
76
  if (filterItemType === FilterItemType.PERSONALIZED) {
79
- ConfigStorage.removePersonalizedFilter(filter, this.configName);
77
+ ConfigStorage.removePersonalizedFilter(filter, this.resourceID, this.configName);
80
78
  }
81
79
  }
82
80
  componentDidLoad() {
@@ -84,7 +82,6 @@ const SnkFilterModalItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
84
82
  ElementIDUtils.addIDInfo(this._element);
85
83
  const dataElementIdDoFilterItem = this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME);
86
84
  this._idContentEditor = `${dataElementIdDoFilterItem}_${this.filterItem.id}`;
87
- this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
88
85
  }
89
86
  }
90
87
  buildRightSlot(item) {
@@ -101,15 +98,6 @@ const SnkFilterModalItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
101
98
  const { CUSTOM_FILTER, OTHER_FILTERS } = FilterType$1;
102
99
  return ![CUSTOM_FILTER, OTHER_FILTERS].includes(this.filterItem.filterType) && this.filterItem.type !== FilterItemType.BINARY_SELECT;
103
100
  }
104
- saveConfig() {
105
- //Precisa ser rediscutido... não podemos salvar configuração por conta própria. Não temos autonomia pra isso.
106
- /*if(FilterItemType.MULTI_LIST !== this.filterItem.type) return;
107
-
108
- this._application?.getResourceID().then(resourceId => {
109
- const fetcher = new FilterBarConfigFetcher();
110
- fetcher.saveEntityListConfig(this.filterItem, resourceId, this._application.configName);
111
- });*/
112
- }
113
101
  render() {
114
102
  const { tag: ContentEditor, props } = this.getContentEditorConfig();
115
103
  return (h(Host, null, h("div", { class: "ez-flex ez-flex--column grow" }, this.canShowDetailModal() && (h("div", { class: "col ez-col--sd-12 ez-align--right ez-padding-medium ez-flex--align-items-center" }, h("div", { class: "ez-title ez-title--small ez-title--primary grow" }, this.filterItem.detailModal))), h(ContentEditor, Object.assign({ ref: ref => this._editor = ref, config: this.filterItem, value: this.filterItem.value, onValueChanged: (event) => this.updateFilterValue(event.detail), "data-element-id": this._idContentEditor }, props)))));
@@ -121,7 +109,8 @@ const SnkFilterModalItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
121
109
  static get style() { return snkFilterModalItemCss; }
122
110
  }, [0, "snk-filter-modal-item", {
123
111
  "filterItem": [1040],
124
- "configName": [1025, "config-name"]
112
+ "configName": [1025, "config-name"],
113
+ "resourceID": [1, "resource-i-d"]
125
114
  }]);
126
115
  function defineCustomElement() {
127
116
  if (typeof customElements === "undefined") {
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { a as draggable_bundle, d as defineCustomElement$1 } from './snk-tab-config2.js';
3
- import { ObjectUtils, ElementIDUtils, ArrayUtils, ApplicationContext } from '@sankhyalabs/core';
3
+ import { ObjectUtils, ElementIDUtils, ArrayUtils } from '@sankhyalabs/core';
4
4
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
5
5
  import { C as CONFIG_EVENTS, b as TAB_NAMES, A as ACTION_CONFIG, D as DEFAULT_TYPE } from './constants.js';
6
6
  import { U as UserConfigType } from './form-config-fetcher.js';
@@ -452,13 +452,10 @@ const SnkFormConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
452
452
  this._sortableGroup.on(CONFIG_EVENTS.dragStop, (evt) => this.controlStopDraggingGroup(evt));
453
453
  }
454
454
  loadUserConfig() {
455
- if (this._applicationResourceID == undefined) {
456
- return;
457
- }
458
455
  if (this.configManager == undefined) {
459
456
  return;
460
457
  }
461
- this.configManager.fetchUserAvailableConfigs(this._applicationResourceID)
458
+ this.configManager.fetchUserAvailableConfigs()
462
459
  .then((userConfig) => {
463
460
  this._formConfigOptions = userConfig;
464
461
  if (this._formConfigOptions == undefined) {
@@ -512,9 +509,6 @@ const SnkFormConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
512
509
  }
513
510
  }
514
511
  async loadConfigByUser() {
515
- if (this._applicationResourceID == undefined) {
516
- return;
517
- }
518
512
  if (this.configManager == undefined) {
519
513
  return;
520
514
  }
@@ -524,10 +518,10 @@ const SnkFormConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
524
518
  let config;
525
519
  switch (this._optionFormConfigSelected.origin) {
526
520
  case UserConfigType.DEFAULT:
527
- config = await this.configManager.fetchDefaultConfig(this._applicationResourceID);
521
+ config = await this.configManager.fetchDefaultConfig();
528
522
  break;
529
523
  case UserConfigType.DEFAULT:
530
- config = await this.configManager.fetchDefaultConfig(this._applicationResourceID);
524
+ config = await this.configManager.fetchDefaultConfig();
531
525
  break;
532
526
  }
533
527
  if (config != undefined) {
@@ -943,11 +937,7 @@ const SnkFormConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
943
937
  this.controlSortableGroup();
944
938
  }
945
939
  componentWillLoad() {
946
- this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
947
- this._application.getResourceID().then(resourceID => {
948
- this._applicationResourceID = resourceID;
949
- this.loadConfig();
950
- });
940
+ this.loadConfig();
951
941
  }
952
942
  componentDidLoad() {
953
943
  const dataInfo = { dataUnit: this.dataUnit };
@@ -10,6 +10,7 @@ const SnkFormView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
10
10
  super();
11
11
  this.__registerHost();
12
12
  this.snkContentCardChanged = createEvent(this, "snkContentCardChanged", 7);
13
+ this.formItemsReady = createEvent(this, "formItemsReady", 7);
13
14
  this.levelPath = undefined;
14
15
  this.label = undefined;
15
16
  this.name = undefined;
@@ -77,6 +78,10 @@ const SnkFormView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
77
78
  this._dataBinder.bind(fields, this.dataUnit.dataUnitId, this.formMetadata, this.recordsValidator);
78
79
  }
79
80
  }
81
+ handleFormItemsReady(event) {
82
+ event.stopPropagation();
83
+ this.formItemsReady.emit(Object.assign(Object.assign({}, event.detail), { formId: this.name }));
84
+ }
80
85
  disconnectedCallback() {
81
86
  if (this._dataBinder != undefined) {
82
87
  this._dataBinder.onDisconnectedCallback();
@@ -89,7 +94,7 @@ const SnkFormView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
89
94
  ?
90
95
  h("snk-form-summary", { summary: this.getCardSummary() })
91
96
  :
92
- h("ez-form-view", { ref: ref => this._formView = ref, fields: this.fields, onEzContentReady: evt => this.bindFields(evt.detail) })));
97
+ h("ez-form-view", { ref: ref => this._formView = ref, fields: this.fields, onEzContentReady: evt => this.bindFields(evt.detail), onFormItemsReady: (event) => this.handleFormItemsReady(event) })));
93
98
  }
94
99
  static get style() { return snkFormViewCss; }
95
100
  }, [6, "snk-form-view", {
@@ -1,6 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { S as SnkFormConfigManager } from './SnkFormConfigManager.js';
4
+ import { R as ResourceIDUtils } from './ResourceIDUtils.js';
4
5
  import { d as defineCustomElement$5 } from './snk-config-options2.js';
5
6
  import { d as defineCustomElement$4 } from './snk-field-config2.js';
6
7
  import { d as defineCustomElement$3 } from './snk-form-config2.js';
@@ -14,6 +15,7 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
14
15
  this.__registerHost();
15
16
  this.exit = createEvent(this, "exit", 7);
16
17
  this.actionClick = createEvent(this, "actionClick", 7);
18
+ this.formItemsReady = createEvent(this, "formItemsReady", 7);
17
19
  this._dataUnit = undefined;
18
20
  this._dataState = undefined;
19
21
  this._showFormConfig = false;
@@ -21,6 +23,7 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
21
23
  this.configName = undefined;
22
24
  this.recordsValidator = undefined;
23
25
  this.messagesBuilder = undefined;
26
+ this.resourceID = undefined;
24
27
  }
25
28
  /**
26
29
  * Exibe a janela de configurações do formulário.
@@ -41,7 +44,7 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
41
44
  const dataInfo = { dataUnit: this._dataUnit };
42
45
  ElementIDUtils.addIDInfo(this._element, null, dataInfo);
43
46
  }
44
- componentWillLoad() {
47
+ async componentWillLoad() {
45
48
  let parent = this._element.parentElement;
46
49
  while (parent) {
47
50
  if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
@@ -63,7 +66,10 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
63
66
  }
64
67
  parent = parent.parentElement;
65
68
  }
66
- this._configManager = new SnkFormConfigManager(this.configName);
69
+ if (this.resourceID == undefined) {
70
+ this.resourceID = await ResourceIDUtils.getResourceID();
71
+ }
72
+ this._configManager = new SnkFormConfigManager(this.configName, this.resourceID);
67
73
  this._configManager.loadConfig();
68
74
  }
69
75
  render() {
@@ -79,6 +85,7 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
79
85
  "configName": [1, "config-name"],
80
86
  "recordsValidator": [16],
81
87
  "messagesBuilder": [1040],
88
+ "resourceID": [1, "resource-i-d"],
82
89
  "_dataUnit": [32],
83
90
  "_dataState": [32],
84
91
  "_showFormConfig": [32],
@@ -25,6 +25,7 @@ const SnkGridConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
25
25
  this.columns = undefined;
26
26
  this.config = undefined;
27
27
  this.configName = undefined;
28
+ this.resourceID = undefined;
28
29
  }
29
30
  /* Creation Methods */
30
31
  /**
@@ -248,7 +249,7 @@ const SnkGridConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
248
249
  }
249
250
  }
250
251
  _newConfig.columns = _newColumnConfigList;
251
- ConfigStorage.saveGridConfig(_newConfig, this.configName)
252
+ ConfigStorage.saveGridConfig(_newConfig, this.configName, this.resourceID)
252
253
  .then((savedConfig) => {
253
254
  this.configChange.emit(savedConfig);
254
255
  this._orderList.clearHistory();
@@ -475,7 +476,8 @@ const SnkGridConfig = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
475
476
  "application": [16],
476
477
  "columns": [1040],
477
478
  "config": [1040],
478
- "configName": [1, "config-name"]
479
+ "configName": [1, "config-name"],
480
+ "resourceID": [1, "resource-i-d"]
479
481
  }]);
480
482
  function defineCustomElement() {
481
483
  if (typeof customElements === "undefined") {