@sankhyalabs/sankhyablocks 8.1.0-dev.10 → 8.1.0-dev.12

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 (209) hide show
  1. package/dist/cjs/{ConfigStorage-e32e1391.js → ConfigStorage-42601579.js} +163 -51
  2. package/dist/cjs/{DataFetcher-d2c6ae38.js → DataFetcher-370cc8f2.js} +38 -29
  3. package/dist/cjs/ISave-d68ce3cd.js +8 -0
  4. package/dist/cjs/ResourceIDUtils-5ff86aa7.js +12 -0
  5. package/dist/cjs/{SnkFormConfigManager-5e61b0a9.js → SnkFormConfigManager-e5a28b2e.js} +19 -21
  6. package/dist/cjs/{auth-fetcher-da975ac5.js → auth-fetcher-c42326e9.js} +2 -2
  7. package/dist/cjs/{dataunit-fetcher-58ad78a7.js → dataunit-fetcher-eab8050e.js} +1 -1
  8. package/dist/cjs/{form-config-fetcher-761994b9.js → form-config-fetcher-6704319c.js} +66 -3
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{pesquisa-fetcher-bb0bb679.js → pesquisa-fetcher-84d392c7.js} +1 -1
  11. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  12. package/dist/cjs/snk-actions-button.cjs.entry.js +18 -11
  13. package/dist/cjs/snk-application.cjs.entry.js +49 -44
  14. package/dist/cjs/snk-attach.cjs.entry.js +7 -13
  15. package/dist/cjs/snk-configurator.cjs.entry.js +2 -1
  16. package/dist/cjs/snk-crud.cjs.entry.js +24 -10
  17. package/dist/cjs/snk-data-exporter.cjs.entry.js +2 -2
  18. package/dist/cjs/{snk-data-unit-e89e07bd.js → snk-data-unit-80a00ae4.js} +4 -3
  19. package/dist/cjs/snk-data-unit.cjs.entry.js +1 -1
  20. package/dist/cjs/snk-detail-view.cjs.entry.js +13 -12
  21. package/dist/cjs/snk-entity-list.cjs.entry.js +0 -4
  22. package/dist/cjs/snk-filter-bar.cjs.entry.js +13 -16
  23. package/dist/cjs/snk-filter-detail.cjs.entry.js +1 -15
  24. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +5 -19
  25. package/dist/cjs/snk-form-config.cjs.entry.js +6 -17
  26. package/dist/cjs/snk-form.cjs.entry.js +11 -8
  27. package/dist/cjs/snk-grid-config.cjs.entry.js +5 -6
  28. package/dist/cjs/snk-grid.cjs.entry.js +13 -17
  29. package/dist/cjs/{snk-guides-viewer-eb0a79a4.js → snk-guides-viewer-fd785f55.js} +16 -7
  30. package/dist/cjs/snk-guides-viewer.cjs.entry.js +8 -8
  31. package/dist/cjs/snk-personalized-filter.cjs.entry.js +13 -16
  32. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  33. package/dist/cjs/snk-simple-crud.cjs.entry.js +7 -3
  34. package/dist/cjs/snk-taskbar.cjs.entry.js +2 -1
  35. package/dist/collection/components/snk-actions-button/actions/index.js +3 -4
  36. package/dist/collection/components/snk-actions-button/snk-actions-button.js +8 -4
  37. package/dist/collection/components/snk-application/snk-application.js +60 -65
  38. package/dist/collection/components/snk-configurator/snk-configurator.js +19 -1
  39. package/dist/collection/components/snk-crud/snk-crud.js +18 -6
  40. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +20 -2
  41. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +25 -28
  42. package/dist/collection/components/snk-data-unit/snk-data-unit.js +21 -4
  43. package/dist/collection/components/snk-entity-list/snk-entity-list.js +0 -23
  44. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +2 -12
  45. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +1 -1
  46. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +21 -16
  47. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +27 -11
  48. package/dist/collection/components/snk-form/SnkFormConfigManager.js +17 -19
  49. package/dist/collection/components/snk-form/snk-form.js +24 -2
  50. package/dist/collection/components/snk-form/subcomponents/snk-form-config/snk-form-config.js +5 -15
  51. package/dist/collection/components/snk-grid/snk-grid.js +27 -12
  52. package/dist/collection/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.js +19 -1
  53. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +28 -12
  54. package/dist/collection/components/snk-taskbar/snk-taskbar.js +19 -1
  55. package/dist/collection/lib/configs/ConfigStorage.js +33 -44
  56. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +38 -29
  57. package/dist/collection/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.js +0 -24
  58. package/dist/collection/lib/index.js +10 -0
  59. package/dist/collection/lib/resourceid/ResourceIDUtils.js +7 -0
  60. package/dist/components/ConfigStorage.js +161 -48
  61. package/dist/components/DataFetcher.js +38 -29
  62. package/dist/components/ResourceIDUtils.js +10 -0
  63. package/dist/components/SnkFormConfigManager.js +17 -19
  64. package/dist/components/auth-fetcher.js +1 -1
  65. package/dist/components/form-config-fetcher.js +64 -2
  66. package/dist/components/snk-actions-button2.js +23 -9
  67. package/dist/components/snk-application2.js +134 -128
  68. package/dist/components/snk-attach2.js +1 -8
  69. package/dist/components/snk-configurator2.js +3 -1
  70. package/dist/components/snk-crud.js +22 -6
  71. package/dist/components/snk-data-unit2.js +5 -3
  72. package/dist/components/snk-detail-view2.js +18 -8
  73. package/dist/components/snk-entity-list.js +0 -4
  74. package/dist/components/snk-filter-bar2.js +11 -11
  75. package/dist/components/snk-filter-detail2.js +2 -12
  76. package/dist/components/snk-filter-modal-item2.js +5 -16
  77. package/dist/components/snk-form-config2.js +5 -15
  78. package/dist/components/snk-form.js +8 -2
  79. package/dist/components/snk-grid-config2.js +4 -2
  80. package/dist/components/snk-grid2.js +11 -12
  81. package/dist/components/snk-personalized-filter2.js +11 -11
  82. package/dist/components/snk-simple-crud2.js +5 -1
  83. package/dist/components/snk-taskbar2.js +3 -1
  84. package/dist/esm/{ConfigStorage-b6aefe42.js → ConfigStorage-2915a841.js} +162 -49
  85. package/dist/esm/{DataFetcher-aaaff866.js → DataFetcher-0b121ffb.js} +38 -29
  86. package/dist/esm/ISave-4412b20c.js +8 -0
  87. package/dist/esm/ResourceIDUtils-a114189a.js +10 -0
  88. package/dist/esm/{SnkFormConfigManager-80901f2d.js → SnkFormConfigManager-8005340f.js} +19 -21
  89. package/dist/esm/{auth-fetcher-7860d777.js → auth-fetcher-643f240e.js} +1 -1
  90. package/dist/esm/{dataunit-fetcher-9dfcdb1d.js → dataunit-fetcher-6423d6eb.js} +1 -1
  91. package/dist/esm/{form-config-fetcher-4a34b86a.js → form-config-fetcher-77cdb26c.js} +65 -3
  92. package/dist/esm/loader.js +1 -1
  93. package/dist/esm/{pesquisa-fetcher-01d058e6.js → pesquisa-fetcher-c5a3c564.js} +1 -1
  94. package/dist/esm/sankhyablocks.js +1 -1
  95. package/dist/esm/snk-actions-button.entry.js +18 -11
  96. package/dist/esm/snk-application.entry.js +49 -44
  97. package/dist/esm/snk-attach.entry.js +3 -9
  98. package/dist/esm/snk-configurator.entry.js +2 -1
  99. package/dist/esm/snk-crud.entry.js +24 -10
  100. package/dist/esm/snk-data-exporter.entry.js +2 -2
  101. package/dist/esm/{snk-data-unit-8c4d944d.js → snk-data-unit-3ab57d1a.js} +4 -3
  102. package/dist/esm/snk-data-unit.entry.js +1 -1
  103. package/dist/esm/snk-detail-view.entry.js +13 -12
  104. package/dist/esm/snk-entity-list.entry.js +0 -4
  105. package/dist/esm/snk-filter-bar.entry.js +13 -16
  106. package/dist/esm/snk-filter-detail.entry.js +2 -16
  107. package/dist/esm/snk-filter-modal-item.entry.js +6 -20
  108. package/dist/esm/snk-form-config.entry.js +7 -18
  109. package/dist/esm/snk-form.entry.js +11 -8
  110. package/dist/esm/snk-grid-config.entry.js +5 -6
  111. package/dist/esm/snk-grid.entry.js +13 -17
  112. package/dist/esm/{snk-guides-viewer-ee42eb53.js → snk-guides-viewer-43b550a2.js} +16 -7
  113. package/dist/esm/snk-guides-viewer.entry.js +8 -8
  114. package/dist/esm/snk-personalized-filter.entry.js +13 -16
  115. package/dist/esm/snk-print-selector.entry.js +1 -1
  116. package/dist/esm/snk-simple-crud.entry.js +7 -3
  117. package/dist/esm/snk-taskbar.entry.js +2 -1
  118. package/dist/sankhyablocks/p-1108ed0e.entry.js +1 -0
  119. package/dist/sankhyablocks/p-18ead46b.entry.js +1 -0
  120. package/dist/sankhyablocks/p-1986cfa4.js +26 -0
  121. package/dist/sankhyablocks/p-1c7b4bad.entry.js +1 -0
  122. package/dist/sankhyablocks/p-48a40939.js +1 -0
  123. package/dist/sankhyablocks/p-508822c3.entry.js +1 -0
  124. package/dist/sankhyablocks/{p-85affa29.js → p-53a7ab6c.js} +1 -1
  125. package/dist/sankhyablocks/{p-77ecc583.entry.js → p-58b84e45.entry.js} +1 -1
  126. package/dist/sankhyablocks/p-688dcb4c.js +1 -0
  127. package/dist/sankhyablocks/{p-05bcad8a.entry.js → p-774afde8.entry.js} +1 -1
  128. package/dist/sankhyablocks/p-84b9208d.entry.js +1 -0
  129. package/dist/sankhyablocks/p-85dfb90b.entry.js +1 -0
  130. package/dist/sankhyablocks/p-86dda34d.js +1 -0
  131. package/dist/sankhyablocks/p-9a270401.entry.js +1 -0
  132. package/dist/sankhyablocks/{p-bee6b5d7.js → p-9bfc7124.js} +1 -1
  133. package/dist/sankhyablocks/p-9d81ad53.entry.js +1 -0
  134. package/dist/sankhyablocks/p-9e7d65a4.js +1 -0
  135. package/dist/sankhyablocks/p-a107474c.js +56 -0
  136. package/dist/sankhyablocks/p-a28470ae.entry.js +1 -0
  137. package/dist/sankhyablocks/p-b9376677.entry.js +1 -0
  138. package/dist/sankhyablocks/p-c7c035eb.js +1 -0
  139. package/dist/sankhyablocks/p-caaef934.js +1 -0
  140. package/dist/sankhyablocks/p-cf65dbb2.entry.js +1 -0
  141. package/dist/sankhyablocks/p-d4f9ee17.entry.js +1 -0
  142. package/dist/sankhyablocks/p-da2422ef.entry.js +11 -0
  143. package/dist/sankhyablocks/p-e086cc2a.entry.js +1 -0
  144. package/dist/sankhyablocks/p-ed705cbb.entry.js +1 -0
  145. package/dist/sankhyablocks/p-f1f5232d.entry.js +1 -0
  146. package/dist/sankhyablocks/{p-60791bb6.js → p-f88bdc84.js} +1 -1
  147. package/dist/sankhyablocks/p-fa523d6b.entry.js +1 -0
  148. package/dist/sankhyablocks/p-fcdd5761.entry.js +1 -0
  149. package/dist/sankhyablocks/p-fdf6b377.entry.js +1 -0
  150. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  151. package/dist/types/components/snk-actions-button/actions/index.d.ts +2 -1
  152. package/dist/types/components/snk-application/snk-application.d.ts +8 -13
  153. package/dist/types/components/snk-configurator/snk-configurator.d.ts +4 -0
  154. package/dist/types/components/snk-crud/snk-crud.d.ts +1 -0
  155. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +4 -0
  156. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +5 -2
  157. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +4 -0
  158. package/dist/types/components/snk-entity-list/snk-entity-list.d.ts +0 -4
  159. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +0 -3
  160. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +1 -1
  161. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.d.ts +5 -4
  162. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +4 -0
  163. package/dist/types/components/snk-form/SnkFormConfigManager.d.ts +5 -4
  164. package/dist/types/components/snk-form/snk-form.d.ts +5 -1
  165. package/dist/types/components/snk-form/subcomponents/snk-form-config/snk-form-config.d.ts +0 -2
  166. package/dist/types/components/snk-grid/snk-grid.d.ts +4 -0
  167. package/dist/types/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.d.ts +4 -0
  168. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +5 -1
  169. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +4 -0
  170. package/dist/types/components.d.ts +99 -21
  171. package/dist/types/lib/configs/ConfigStorage.d.ts +11 -13
  172. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  173. package/dist/types/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.d.ts +0 -1
  174. package/dist/types/lib/index.d.ts +11 -0
  175. package/dist/types/lib/resourceid/ResourceIDUtils.d.ts +3 -0
  176. package/package.json +1 -1
  177. package/dist/cjs/filter-bar-config-fetcher-80b033ce.js +0 -155
  178. package/dist/cjs/resource-fetcher-95d24dff.js +0 -68
  179. package/dist/components/filter-bar-config-fetcher.js +0 -153
  180. package/dist/components/resource-fetcher.js +0 -66
  181. package/dist/esm/filter-bar-config-fetcher-317cb6bf.js +0 -153
  182. package/dist/esm/resource-fetcher-b36ac145.js +0 -66
  183. package/dist/sankhyablocks/p-0b64f036.entry.js +0 -1
  184. package/dist/sankhyablocks/p-0e97ec46.entry.js +0 -1
  185. package/dist/sankhyablocks/p-1b81c379.entry.js +0 -1
  186. package/dist/sankhyablocks/p-2dd0f891.js +0 -17
  187. package/dist/sankhyablocks/p-330f584a.entry.js +0 -1
  188. package/dist/sankhyablocks/p-35ecafcb.entry.js +0 -1
  189. package/dist/sankhyablocks/p-42843f0e.js +0 -1
  190. package/dist/sankhyablocks/p-459d4267.entry.js +0 -1
  191. package/dist/sankhyablocks/p-557affc8.entry.js +0 -1
  192. package/dist/sankhyablocks/p-564efc43.js +0 -1
  193. package/dist/sankhyablocks/p-6295424d.entry.js +0 -1
  194. package/dist/sankhyablocks/p-64c2cec3.js +0 -1
  195. package/dist/sankhyablocks/p-803b79d6.js +0 -1
  196. package/dist/sankhyablocks/p-80729c9b.entry.js +0 -11
  197. package/dist/sankhyablocks/p-95fa8af6.entry.js +0 -1
  198. package/dist/sankhyablocks/p-96c1ae78.entry.js +0 -1
  199. package/dist/sankhyablocks/p-b556fadc.entry.js +0 -1
  200. package/dist/sankhyablocks/p-befbc9ee.entry.js +0 -1
  201. package/dist/sankhyablocks/p-bf3bd954.entry.js +0 -1
  202. package/dist/sankhyablocks/p-c32b9d7c.entry.js +0 -1
  203. package/dist/sankhyablocks/p-c6380ea2.entry.js +0 -1
  204. package/dist/sankhyablocks/p-dd1fa35d.js +0 -56
  205. package/dist/sankhyablocks/p-de69b4b0.entry.js +0 -1
  206. package/dist/sankhyablocks/p-e42f1f2a.js +0 -1
  207. package/dist/sankhyablocks/p-f24c4bc7.entry.js +0 -1
  208. package/dist/sankhyablocks/p-f737f7e1.js +0 -10
  209. package/dist/sankhyablocks/p-fd69eab9.entry.js +0 -1
@@ -1,76 +1,14 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
- import { WaitingChangeException, WarningException, ErrorException, ObjectUtils, DateUtils, StringUtils, OnboardingUtils, DependencyType, ElementIDUtils, ApplicationContext, ErrorTracking, DataType } from '@sankhyalabs/core';
2
+ import { DateUtils, StringUtils, ObjectUtils, WaitingChangeException, WarningException, ErrorException, OnboardingUtils, DependencyType, ElementIDUtils, ApplicationContext, ErrorTracking, DataType } from '@sankhyalabs/core';
3
3
  import { d as dist, D as DataFetcher, U as UrlUtils } from './DataFetcher.js';
4
4
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
5
5
  import { P as PesquisaFetcher } from './pesquisa-fetcher.js';
6
- import { G as GridConfigFetcher, C as ConfigStorage } from './ConfigStorage.js';
6
+ import { C as ConfigStorage } from './ConfigStorage.js';
7
7
  import { D as DataUnitFetcher } from './dataunit-fetcher.js';
8
8
  import { A as AutorizationType, a as AuthFetcher } from './auth-fetcher.js';
9
9
  import { S as SnkMessageBuilder } from './SnkMessageBuilder.js';
10
10
  import { d as defineCustomElement$1 } from './snk-pesquisa2.js';
11
11
 
12
- class SnkErrorHandler {
13
- constructor(app) {
14
- this._app = app;
15
- window.addEventListener("error", evt => this.errorHandler(evt));
16
- window.addEventListener("unhandledrejection", evt => this.rejectionHandler(evt));
17
- }
18
- rejectionHandler(evt) {
19
- const reason = evt.reason;
20
- //Promisse rejeitada com WaitingChangeException, não precisam
21
- //ser notificadas pelo usuário.
22
- if (!(reason instanceof WaitingChangeException)) {
23
- if (reason) {
24
- this.processException(reason);
25
- }
26
- else {
27
- this._app.isDebugMode().then((isDebug) => {
28
- if (isDebug) {
29
- this._app.error("Promise rejeitada", "Erro interno: Uma promise foi rejeitada sem razão determinada.");
30
- }
31
- });
32
- }
33
- }
34
- }
35
- errorHandler(evt) {
36
- this.processException(evt.error);
37
- }
38
- buildErrorCodeHTML(errorCode) {
39
- const onclick = 'try{window.workspace.openHelp(\'_tbcode:' + errorCode + '\')} catch(e){alert(\'Não é possível abrir a ajuda fora do workspace Sankhya\');}';
40
- return '<br><a href="#" onclick="' + onclick + '">Código: ' + errorCode + '</a>';
41
- }
42
- processException(exception) {
43
- if (exception.errorCode) {
44
- exception.message += this.buildErrorCodeHTML(exception.errorCode);
45
- }
46
- if (exception instanceof WaitingChangeException) {
47
- this._app.alert(exception.title, exception.message);
48
- }
49
- else if (exception instanceof WarningException) {
50
- this._app.alert(exception.title, exception.message);
51
- }
52
- else if (exception instanceof ErrorException) {
53
- this._app.error(exception.title, exception.message);
54
- }
55
- else {
56
- this._app.isDebugMode().then(isDebug => {
57
- if (isDebug) {
58
- if (exception instanceof Error) {
59
- this._app.error(exception.name, exception.message);
60
- }
61
- else {
62
- const title = (exception === null || exception === void 0 ? void 0 : exception.title) || "Erro detectado";
63
- const message = (typeof exception === "string") ? exception : exception.message || `Erro interno "${ObjectUtils.objectToString(exception)}"`;
64
- this._app.error(title, message);
65
- }
66
- }
67
- });
68
- }
69
- }
70
- }
71
-
72
- function _0x53e1(){const _0x340df8=['2909523kXwted','CompanyName=Sankhya\x20Jiva\x20Tecnologia\x20e\x20Inovao\x20Ltda,LicensedApplication=Sankhya\x20Gestao,LicenseType=SingleApplication,LicensedConcurrentDeveloperCount=2,LicensedProductionInstancesCount=0,AssetReference=AG-019460,ExpiryDate=9_November_2022_[v2]_MTY2Nzk1MjAwMDAwMA==10487151e296ee4360f80961ca960869','1131048CARoeW','502909mLEPmu','447255iQEXuN','428UHbJwW','270AFTxAV','194369jhGqTI','1540nWuTrj','2044062GicUQI','30CkXPWg'];_0x53e1=function(){return _0x340df8;};return _0x53e1();}const _0xc7632f=_0x15c2;function _0x15c2(_0x353a9c,_0x3e4a5a){const _0x53e110=_0x53e1();return _0x15c2=function(_0x15c2aa,_0x219858){_0x15c2aa=_0x15c2aa-0x188;let _0x307231=_0x53e110[_0x15c2aa];return _0x307231;},_0x15c2(_0x353a9c,_0x3e4a5a);}(function(_0x42617e,_0x57debe){const _0x31061a=_0x15c2,_0x128d7d=_0x42617e();while(!![]){try{const _0x1c9bb1=-parseInt(_0x31061a(0x18e))/0x1+-parseInt(_0x31061a(0x189))/0x2+parseInt(_0x31061a(0x18b))/0x3+-parseInt(_0x31061a(0x190))/0x4*(parseInt(_0x31061a(0x188))/0x5)+-parseInt(_0x31061a(0x191))/0x6*(-parseInt(_0x31061a(0x192))/0x7)+parseInt(_0x31061a(0x18d))/0x8+-parseInt(_0x31061a(0x18f))/0x9*(-parseInt(_0x31061a(0x18a))/0xa);if(_0x1c9bb1===_0x57debe)break;else _0x128d7d['push'](_0x128d7d['shift']());}catch(_0x1bd816){_0x128d7d['push'](_0x128d7d['shift']());}}}(_0x53e1,0xe8676));const agGridLicense=_0xc7632f(0x18c);
73
-
74
12
  class TotalsFetcher {
75
13
  constructor() {
76
14
  this.templateByQuery = new Map();
@@ -133,33 +71,6 @@ class TotalsFetcher {
133
71
  }
134
72
  }
135
73
 
136
- var _a;
137
- class Workspace {
138
- static openAppActivity(resourceId, pkObject) {
139
- var _a;
140
- (_a = window["workspace"]) === null || _a === void 0 ? void 0 : _a.openAppActivity(resourceId, pkObject);
141
- }
142
- static getAppLabel(resourceID) {
143
- if ((window === null || window === void 0 ? void 0 : window["workspace"]) == undefined) {
144
- return;
145
- }
146
- if (window["workspace"].getAppLabel == undefined) {
147
- window["workspace"].getAppLabel = (id) => {
148
- return (id || "").split(".").pop();
149
- };
150
- }
151
- return window["workspace"].getAppLabel(resourceID);
152
- }
153
- }
154
- Workspace.resourceID = (_a = window["workspace"]) === null || _a === void 0 ? void 0 : _a.resourceID;
155
-
156
- class AppletCaller {
157
- static webConnectionCaller(port, methodName, params) {
158
- var _a;
159
- (_a = window["AppletCaller"]) === null || _a === void 0 ? void 0 : _a.webConnectionCaller(port, methodName, params);
160
- }
161
- }
162
-
163
74
  class ParametersFetcher {
164
75
  constructor() {
165
76
  this.templateByQuery = new Map();
@@ -224,6 +135,95 @@ class ParametersFetcher {
224
135
  }
225
136
  }
226
137
 
138
+ class SnkErrorHandler {
139
+ constructor(app) {
140
+ this._app = app;
141
+ window.addEventListener("error", evt => this.errorHandler(evt));
142
+ window.addEventListener("unhandledrejection", evt => this.rejectionHandler(evt));
143
+ }
144
+ rejectionHandler(evt) {
145
+ const reason = evt.reason;
146
+ //Promisse rejeitada com WaitingChangeException, não precisam
147
+ //ser notificadas pelo usuário.
148
+ if (!(reason instanceof WaitingChangeException)) {
149
+ if (reason) {
150
+ this.processException(reason);
151
+ }
152
+ else {
153
+ this._app.isDebugMode().then((isDebug) => {
154
+ if (isDebug) {
155
+ this._app.error("Promise rejeitada", "Erro interno: Uma promise foi rejeitada sem razão determinada.");
156
+ }
157
+ });
158
+ }
159
+ }
160
+ }
161
+ errorHandler(evt) {
162
+ this.processException(evt.error);
163
+ }
164
+ buildErrorCodeHTML(errorCode) {
165
+ const onclick = 'try{window.workspace.openHelp(\'_tbcode:' + errorCode + '\')} catch(e){alert(\'Não é possível abrir a ajuda fora do workspace Sankhya\');}';
166
+ return '<br><a href="#" onclick="' + onclick + '">Código: ' + errorCode + '</a>';
167
+ }
168
+ processException(exception) {
169
+ if (exception.errorCode) {
170
+ exception.message += this.buildErrorCodeHTML(exception.errorCode);
171
+ }
172
+ if (exception instanceof WaitingChangeException) {
173
+ this._app.alert(exception.title, exception.message);
174
+ }
175
+ else if (exception instanceof WarningException) {
176
+ this._app.alert(exception.title, exception.message);
177
+ }
178
+ else if (exception instanceof ErrorException) {
179
+ this._app.error(exception.title, exception.message);
180
+ }
181
+ else {
182
+ this._app.isDebugMode().then(isDebug => {
183
+ if (isDebug) {
184
+ if (exception instanceof Error) {
185
+ this._app.error(exception.name, exception.message);
186
+ }
187
+ else {
188
+ const title = (exception === null || exception === void 0 ? void 0 : exception.title) || "Erro detectado";
189
+ const message = (typeof exception === "string") ? exception : exception.message || `Erro interno "${ObjectUtils.objectToString(exception)}"`;
190
+ this._app.error(title, message);
191
+ }
192
+ }
193
+ });
194
+ }
195
+ }
196
+ }
197
+
198
+ function _0x53e1(){const _0x340df8=['2909523kXwted','CompanyName=Sankhya\x20Jiva\x20Tecnologia\x20e\x20Inovao\x20Ltda,LicensedApplication=Sankhya\x20Gestao,LicenseType=SingleApplication,LicensedConcurrentDeveloperCount=2,LicensedProductionInstancesCount=0,AssetReference=AG-019460,ExpiryDate=9_November_2022_[v2]_MTY2Nzk1MjAwMDAwMA==10487151e296ee4360f80961ca960869','1131048CARoeW','502909mLEPmu','447255iQEXuN','428UHbJwW','270AFTxAV','194369jhGqTI','1540nWuTrj','2044062GicUQI','30CkXPWg'];_0x53e1=function(){return _0x340df8;};return _0x53e1();}const _0xc7632f=_0x15c2;function _0x15c2(_0x353a9c,_0x3e4a5a){const _0x53e110=_0x53e1();return _0x15c2=function(_0x15c2aa,_0x219858){_0x15c2aa=_0x15c2aa-0x188;let _0x307231=_0x53e110[_0x15c2aa];return _0x307231;},_0x15c2(_0x353a9c,_0x3e4a5a);}(function(_0x42617e,_0x57debe){const _0x31061a=_0x15c2,_0x128d7d=_0x42617e();while(!![]){try{const _0x1c9bb1=-parseInt(_0x31061a(0x18e))/0x1+-parseInt(_0x31061a(0x189))/0x2+parseInt(_0x31061a(0x18b))/0x3+-parseInt(_0x31061a(0x190))/0x4*(parseInt(_0x31061a(0x188))/0x5)+-parseInt(_0x31061a(0x191))/0x6*(-parseInt(_0x31061a(0x192))/0x7)+parseInt(_0x31061a(0x18d))/0x8+-parseInt(_0x31061a(0x18f))/0x9*(-parseInt(_0x31061a(0x18a))/0xa);if(_0x1c9bb1===_0x57debe)break;else _0x128d7d['push'](_0x128d7d['shift']());}catch(_0x1bd816){_0x128d7d['push'](_0x128d7d['shift']());}}}(_0x53e1,0xe8676));const agGridLicense=_0xc7632f(0x18c);
199
+
200
+ var _a;
201
+ class Workspace {
202
+ static openAppActivity(resourceId, pkObject) {
203
+ var _a;
204
+ (_a = window["workspace"]) === null || _a === void 0 ? void 0 : _a.openAppActivity(resourceId, pkObject);
205
+ }
206
+ static getAppLabel(resourceID) {
207
+ if ((window === null || window === void 0 ? void 0 : window["workspace"]) == undefined) {
208
+ return;
209
+ }
210
+ if (window["workspace"].getAppLabel == undefined) {
211
+ window["workspace"].getAppLabel = (id) => {
212
+ return (id || "").split(".").pop();
213
+ };
214
+ }
215
+ return window["workspace"].getAppLabel(resourceID);
216
+ }
217
+ }
218
+ Workspace.resourceID = (_a = window["workspace"]) === null || _a === void 0 ? void 0 : _a.resourceID;
219
+
220
+ class AppletCaller {
221
+ static webConnectionCaller(port, methodName, params) {
222
+ var _a;
223
+ (_a = window["AppletCaller"]) === null || _a === void 0 ? void 0 : _a.webConnectionCaller(port, methodName, params);
224
+ }
225
+ }
226
+
227
227
  const _0x5b7870=_0x2202;(function(_0x42e134,_0x5d9727){const _0x185c97=_0x2202,_0x5854c7=_0x42e134();while(!![]){try{const _0x129d35=parseInt(_0x185c97(0x18f))/0x1*(-parseInt(_0x185c97(0x183))/0x2)+-parseInt(_0x185c97(0x191))/0x3+parseInt(_0x185c97(0x17d))/0x4*(-parseInt(_0x185c97(0x185))/0x5)+parseInt(_0x185c97(0x184))/0x6*(-parseInt(_0x185c97(0x182))/0x7)+parseInt(_0x185c97(0x17b))/0x8+parseInt(_0x185c97(0x18c))/0x9+parseInt(_0x185c97(0x17f))/0xa;if(_0x129d35===_0x5d9727)break;else _0x5854c7['push'](_0x5854c7['shift']());}catch(_0x4becb4){_0x5854c7['push'](_0x5854c7['shift']());}}}(_0xdfb1,0x44ac7));function _0x2202(_0x2eac1f,_0x170d27){const _0xdfb1b4=_0xdfb1();return _0x2202=function(_0x2202d7,_0x224df5){_0x2202d7=_0x2202d7-0x17a;let _0x4d54a9=_0xdfb1b4[_0x2202d7];return _0x4d54a9;},_0x2202(_0x2eac1f,_0x170d27);}function _0xdfb1(){const _0x2b9dc4=['true','863GKWjmo','parse','56355fjjjAm','isSup','putAccess','4324480sjuCdS','hasOwnProperty','239748okvJLB','name','6055770tXeRaU','actions','forEach','7RPRvzn','1042CHxkUw','2988126NIwRMm','20MTNzmH','authorizationSf','item','string','hasAccess','isArray','Objeto\x20não\x20pode\x20ser\x20indefinido.','3071943fWslZp','parseFromJSON'];_0xdfb1=function(){return _0x2b9dc4;};return _0xdfb1();}class MGEAuthorization{[_0x5b7870(0x18d)](_0x37e96b){const _0x580407=_0x5b7870;_0x37e96b=utxt(_0x37e96b[_0x580407(0x186)]);typeof _0x37e96b==_0x580407(0x188)&&(_0x37e96b=JSON[_0x580407(0x190)](_0x37e96b));if(_0x37e96b==undefined)throw Error(_0x580407(0x18b));const _0x291d34=new MGEAuthorizationData(_0x37e96b[_0x580407(0x192)]==='S'||_0x37e96b[_0x580407(0x192)]===!![]);return Array[_0x580407(0x18a)](_0x37e96b[_0x580407(0x187)])&&_0x37e96b[_0x580407(0x187)][_0x580407(0x181)](_0x58a748=>_0x291d34['putAccess'](_0x58a748[_0x580407(0x17e)],String(_0x58a748['status'])==_0x580407(0x18e))),_0x291d34;}}class MGEAuthorizationData{constructor(_0x51ec5d){const _0x2c8472=_0x5b7870;this['isSup']=_0x51ec5d,this[_0x2c8472(0x180)]={};}[_0x5b7870(0x17a)](_0x5bd0f2,_0x2ef465){const _0x40d701=_0x5b7870;this[_0x40d701(0x180)][_0x5bd0f2]=_0x2ef465;}[_0x5b7870(0x189)](_0x4fd772){const _0x3707c1=_0x5b7870;if(this[_0x3707c1(0x192)])return !![];let _0x25e60a=!![];return this[_0x3707c1(0x180)][_0x3707c1(0x17c)](_0x4fd772)&&(_0x25e60a=this['actions'][_0x4fd772]),_0x25e60a;}['isUserSup'](){return this['isSup'];}}
228
228
 
229
229
  const snkApplicationCss = ".sc-snk-application-h{display:flex;flex-direction:column;height:100%}";
@@ -247,16 +247,21 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
247
247
  }
248
248
  return this._parameters;
249
249
  }
250
- get resourceID() {
251
- if (!this._resourceID) {
252
- this._resourceID = this.urlParams.get("workspaceResourceID") ||
253
- this.urlParams.get("resourceID") ||
254
- Workspace.resourceID ||
255
- "unknown.resource.id";
250
+ async getAuth(resourceID) {
251
+ if (resourceID == undefined) {
252
+ return this.getApplicationAuth();
253
+ }
254
+ else {
255
+ return new Promise((resolve, reject) => {
256
+ this.authFetcher.getData(resourceID).then((authList) => {
257
+ resolve(authList);
258
+ }).catch(error => {
259
+ reject(error);
260
+ });
261
+ });
256
262
  }
257
- return this._resourceID;
258
263
  }
259
- get auth() {
264
+ async getApplicationAuth() {
260
265
  if (this._auth) {
261
266
  return Promise.resolve(this._auth);
262
267
  }
@@ -265,7 +270,7 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
265
270
  const waitingAuth = this._authPromises.length > 0;
266
271
  this._authPromises.push(new PendingPromise(resolve, reject));
267
272
  if (!waitingAuth) {
268
- this.authFetcher.getData(this.resourceID).then((authList) => {
273
+ this.authFetcher.getData(this.applicationResourceID).then((authList) => {
269
274
  this._auth = authList;
270
275
  while (this._authPromises.length > 0) {
271
276
  this._authPromises.pop().resolve(this._auth);
@@ -284,7 +289,7 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
284
289
  */
285
290
  async isUserSup() {
286
291
  return new Promise((resolve, reject) => {
287
- this.auth.then((authorization) => {
292
+ this.getAuth().then((authorization) => {
288
293
  this.getAuthList(authorization).then((auths) => {
289
294
  resolve(auths.isSup);
290
295
  }).catch(error => reject(error));
@@ -298,9 +303,9 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
298
303
  /**
299
304
  * Obtém `true` caso o usuário logado tem permissão pra determinada ação.
300
305
  */
301
- async hasAccess(access) {
306
+ async hasAccess(access, resourceID) {
302
307
  return new Promise((resolve, reject) => {
303
- this.auth.then((authorization) => {
308
+ this.getAuth(resourceID).then((authorization) => {
304
309
  this.getAuthList(authorization).then((auths) => {
305
310
  resolve(auths.isSup || auths.actions[access]);
306
311
  }).catch(error => reject(error));
@@ -310,9 +315,9 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
310
315
  /**
311
316
  * Obtém todos os acessos do usuário logado.
312
317
  */
313
- async getAllAccess() {
318
+ async getAllAccess(resourceID) {
314
319
  return new Promise((resolve, reject) => {
315
- this.auth.then((authorization) => {
320
+ this.getAuth(resourceID).then((authorization) => {
316
321
  this.getAuthList(authorization).then((auths) => {
317
322
  const allAccess = {};
318
323
  allAccess['isSup'] = auths.isSup;
@@ -496,13 +501,16 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
496
501
  * Cria o DataUnit a partir do nome da entidade. É possível armazená-lo no cache
497
502
  * passando o dataUnitName, assim, se mais de uma chamada for feita, o mesmo DataUnit será usado.
498
503
  */
499
- async createDataunit(entityName, dataUnitName, parentDataUnit, configName) {
504
+ async createDataunit(entityName, dataUnitName, parentDataUnit, configName, resourceID) {
505
+ if (resourceID == undefined) {
506
+ resourceID = this.applicationResourceID;
507
+ }
500
508
  return new Promise((resolve, reject) => {
501
509
  const duPromisses = this.getDuPromissesStack(dataUnitName);
502
510
  const waitingDu = duPromisses.length > 0;
503
511
  duPromisses.push(new PendingPromise(resolve, reject));
504
512
  if (!waitingDu) {
505
- const dataUnit = this.dataUnitFetcher.getDataUnit(entityName, this.resourceID, parentDataUnit, configName);
513
+ const dataUnit = this.dataUnitFetcher.getDataUnit(entityName, resourceID, parentDataUnit, configName);
506
514
  dataUnit.loadMetadata().then(() => {
507
515
  if (dataUnitName) {
508
516
  this.updateDataunitCache(undefined, dataUnitName, dataUnit);
@@ -533,14 +541,14 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
533
541
  /**
534
542
  * Obtem um DataUnit do cache ou cria um caso ainda não tenha sido criado.
535
543
  */
536
- async getDataUnit(entityName, dataUnitName, parentDataUnit, configName) {
544
+ async getDataUnit(entityName, dataUnitName, parentDataUnit, configName, resourceID) {
537
545
  return new Promise((resolve, reject) => {
538
546
  const dataUnit = this._duCache.get(dataUnitName);
539
547
  if (dataUnit) {
540
548
  resolve(dataUnit);
541
549
  }
542
550
  else {
543
- this.createDataunit(entityName, dataUnitName, parentDataUnit, configName).then(dataUnit => {
551
+ this.createDataunit(entityName, dataUnitName, parentDataUnit, configName, resourceID).then(dataUnit => {
544
552
  resolve(dataUnit);
545
553
  }).catch(reason => reject(reason));
546
554
  }
@@ -589,11 +597,20 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
589
597
  async callServiceBroker(serviceName, payload, options) {
590
598
  return DataFetcher.get().callServiceBroker(serviceName, payload, options);
591
599
  }
600
+ get applicationResourceID() {
601
+ if (!this._applicationResourceID) {
602
+ this._applicationResourceID = this.urlParams.get("workspaceResourceID") ||
603
+ this.urlParams.get("resourceID") ||
604
+ Workspace.resourceID ||
605
+ "unknown.resource.id";
606
+ }
607
+ return this._applicationResourceID;
608
+ }
592
609
  /**
593
610
  * Obtém o resourceID da tela em questão.
594
611
  */
595
612
  async getResourceID() {
596
- return Promise.resolve(this.resourceID);
613
+ return Promise.resolve(this.applicationResourceID);
597
614
  }
598
615
  /**
599
616
  * Obtém o UserId da tela em questão.
@@ -637,20 +654,14 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
637
654
  async info(message, options) {
638
655
  return ApplicationUtils.info(message, options);
639
656
  }
640
- /**
641
- * Obtém a configuração de grade.
642
- */
643
- async loadGridConfig(name) {
644
- return this.gridConfigFetcher.getConfig(name, this.resourceID);
645
- }
646
657
  /**
647
658
  * Obtém os totalizadores da grade.
648
659
  */
649
660
  async loadTotals(name, resourceID, filters) {
650
661
  return this.totalsFetcher.fetchTotals(name, resourceID, filters);
651
662
  }
652
- async getAuthList(_auth) {
653
- return await (new MGEAuthorization()).parseFromJSON(_auth);
663
+ async getAuthList(auth) {
664
+ return await (new MGEAuthorization()).parseFromJSON(auth);
654
665
  }
655
666
  get urlParams() {
656
667
  if (!this._urlParams) {
@@ -664,12 +675,6 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
664
675
  }
665
676
  return this._dataUnitFetcher;
666
677
  }
667
- get gridConfigFetcher() {
668
- if (!this._gridConfigFetcher) {
669
- this._gridConfigFetcher = new GridConfigFetcher();
670
- }
671
- return this._gridConfigFetcher;
672
- }
673
678
  get totalsFetcher() {
674
679
  if (!this._totalsFetcher) {
675
680
  this._totalsFetcher = new TotalsFetcher();
@@ -767,7 +772,7 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
767
772
  * Obtém o nome das telas da aplicação
768
773
  */
769
774
  async getAppLabel() {
770
- return Workspace.getAppLabel(this._resourceID);
775
+ return Workspace.getAppLabel(this.applicationResourceID);
771
776
  }
772
777
  /**
773
778
  * Adiciona um listener no fetcher de Pesquisa
@@ -839,6 +844,7 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
839
844
  this._popUp.ezTitle = title;
840
845
  }
841
846
  componentWillLoad() {
847
+ ApplicationContext.setContextValue("__SNK__APPLICATION__LOADING__", true);
842
848
  this._errorHandler = new SnkErrorHandler(this);
843
849
  this.messagesBuilder = new SnkMessageBuilder();
844
850
  ApplicationContext.setContextValue("__EZUI__UPLOAD__ADD__URL__", `${UrlUtils.getUrlBase()}/mge/upload/file`);
@@ -847,7 +853,7 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
847
853
  });
848
854
  ApplicationContext.setContextValue("__EZUI__GRID_LICENSE__", agGridLicense);
849
855
  ErrorTracking.init();
850
- ConfigStorage.get();
856
+ ConfigStorage.preload(this.applicationResourceID, this.configName);
851
857
  }
852
858
  connectedCallback() {
853
859
  ApplicationContext.setContextValue("__SNK__APPLICATION__", this);
@@ -859,9 +865,10 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
859
865
  componentDidLoad() {
860
866
  this.applicationLoading.emit(true);
861
867
  window.requestAnimationFrame(() => {
868
+ ApplicationContext.setContextValue("__SNK__APPLICATION__LOADING__", false);
862
869
  this.applicationLoaded.emit(true);
863
870
  });
864
- ElementIDUtils.addIDInfo(this._element, `resource_${this._resourceID}`);
871
+ ElementIDUtils.addIDInfo(this._element, `resource_${this.applicationResourceID}`);
865
872
  }
866
873
  render() {
867
874
  return (h("div", null, h("ez-loading-bar", { ref: (ref) => this._requestListener.loadingBar = ref }), h("ez-popup", { opened: false, ref: (ref) => this._popUp = ref, onEzClosePopup: () => this.closePopUp() }), h("ez-modal", { opened: false, ref: (ref) => this._rightModal = ref, "modal-size": "small", closeOutsideClick: true, closeEsc: true })));
@@ -905,7 +912,6 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
905
912
  "message": [64],
906
913
  "confirm": [64],
907
914
  "info": [64],
908
- "loadGridConfig": [64],
909
915
  "loadTotals": [64],
910
916
  "executeSearch": [64],
911
917
  "executePreparedSearch": [64],
@@ -1,23 +1,16 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
2
  import { ApplicationContext, DataType, Action } from '@sankhyalabs/core';
3
3
  import { D as DataFetcher } from './DataFetcher.js';
4
+ import { a as SaveErrorsEnum, d as defineCustomElement$7 } from './snk-actions-button2.js';
4
5
  import { V as VIEW_MODE } from './constants.js';
5
6
  import { D as DataUnitFetcher } from './dataunit-fetcher.js';
6
7
  import { T as TaskbarElement, d as defineCustomElement$1 } from './snk-taskbar2.js';
7
- import { d as defineCustomElement$7 } from './snk-actions-button2.js';
8
8
  import { d as defineCustomElement$6 } from './snk-data-exporter2.js';
9
9
  import { d as defineCustomElement$5 } from './snk-data-unit2.js';
10
10
  import { d as defineCustomElement$4 } from './snk-exporter-email-sender2.js';
11
11
  import { d as defineCustomElement$3 } from './snk-simple-bar2.js';
12
12
  import { d as defineCustomElement$2 } from './snk-simple-crud2.js';
13
13
 
14
- var SaveErrorsEnum;
15
- (function (SaveErrorsEnum) {
16
- SaveErrorsEnum["LINK_AND_FILE_AT_THE_SAME_TIME"] = "LINK_AND_FILE_AT_THE_SAME_TIME";
17
- SaveErrorsEnum["ANY_LINK_OR_FILE_FILLED"] = "ANY_LINK_OR_FILE_FILLED";
18
- SaveErrorsEnum["UNKNOWN"] = "UNKNOWN";
19
- })(SaveErrorsEnum || (SaveErrorsEnum = {}));
20
-
21
14
  class AttachFetcher {
22
15
  constructor(entityName, registerKey, dataUnitName) {
23
16
  var _a;
@@ -17,6 +17,7 @@ const SnkConfigurator = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
17
17
  this._permissions = undefined;
18
18
  this.showActionButtons = false;
19
19
  this.configName = undefined;
20
+ this.resourceID = undefined;
20
21
  this.viewMode = VIEW_MODE.GRID;
21
22
  this.messagesBuilder = undefined;
22
23
  }
@@ -81,7 +82,7 @@ const SnkConfigurator = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
81
82
  componentWillLoad() {
82
83
  this._application = ApplicationContext.getContextValue('__SNK__APPLICATION__');
83
84
  if (this._application) {
84
- this._application.getAllAccess().then(access => (this._permissions = access));
85
+ this._application.getAllAccess(this.resourceID).then(access => (this._permissions = access));
85
86
  }
86
87
  else {
87
88
  this._permissions = {};
@@ -94,6 +95,7 @@ const SnkConfigurator = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
94
95
  }, [6, "snk-configurator", {
95
96
  "showActionButtons": [4, "show-action-buttons"],
96
97
  "configName": [1, "config-name"],
98
+ "resourceID": [1, "resource-i-d"],
97
99
  "viewMode": [2, "view-mode"],
98
100
  "messagesBuilder": [1040],
99
101
  "_opened": [32],
@@ -4,9 +4,13 @@ import { T as TaskbarElement, d as defineCustomElement$2 } from './snk-taskbar2.
4
4
  import './DataFetcher.js';
5
5
  import './pesquisa-fetcher.js';
6
6
  import { P as PresentationMode } from './index2.js';
7
+ import { d as defineCustomElement$v } from './snk-actions-button2.js';
8
+ import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
+ import './filter-item-type.enum.js';
11
+ import './form-config-fetcher.js';
7
12
  import { V as VIEW_MODE } from './constants.js';
8
13
  import { A as AutorizationType } from './auth-fetcher.js';
9
- import { d as defineCustomElement$v } from './snk-actions-button2.js';
10
14
  import { d as defineCustomElement$u } from './snk-attach2.js';
11
15
  import { d as defineCustomElement$t } from './snk-config-options2.js';
12
16
  import { d as defineCustomElement$s } from './snk-configurator2.js';
@@ -51,6 +55,7 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
51
55
  this.attachmentRegisterKey = undefined;
52
56
  this._currentViewMode = VIEW_MODE.GRID;
53
57
  this._canEdit = undefined;
58
+ this._resourceID = undefined;
54
59
  this.configName = undefined;
55
60
  this.selectionToastConfig = undefined;
56
61
  this.showActionButtons = false;
@@ -145,7 +150,7 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
145
150
  }
146
151
  componentWillLoad() {
147
152
  const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
148
- application.hasAccess(AutorizationType.UPDATE).then(canEdit => this._canEdit = canEdit);
153
+ application.hasAccess(AutorizationType.UPDATE, this._resourceID).then(canEdit => this._canEdit = canEdit);
149
154
  let parent = this._element.parentElement;
150
155
  while (parent) {
151
156
  if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
@@ -157,11 +162,11 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
157
162
  if (!this._dataUnit) {
158
163
  this._snkDataUnit.addEventListener("dataUnitReady", (evt) => {
159
164
  this._dataUnit = evt.detail;
160
- this.initDataUnit();
165
+ this.initDataUnit(application);
161
166
  });
162
167
  }
163
168
  else {
164
- this.initDataUnit();
169
+ this.initDataUnit(application);
165
170
  }
166
171
  this._snkDataUnit.addEventListener("dataStateChange", async ({ detail: dataState }) => {
167
172
  this._dataState = dataState;
@@ -177,11 +182,18 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
177
182
  this.configName = application.configName;
178
183
  }
179
184
  }
180
- initDataUnit() {
185
+ async initDataUnit(application) {
181
186
  this.addDataElementID();
182
187
  if (!this.messagesBuilder) {
183
188
  this.messagesBuilder = this._snkDataUnit.messagesBuilder;
184
189
  }
190
+ if (this._resourceID == undefined) {
191
+ //Tenta pegar o resourceID do snkDataUnit;
192
+ this._resourceID = this._snkDataUnit.resourceID;
193
+ if (this._resourceID == undefined) {
194
+ this._resourceID = await application.getResourceID();
195
+ }
196
+ }
185
197
  }
186
198
  handleConfiguratorEvent(evt, type) {
187
199
  evt.stopImmediatePropagation();
@@ -192,8 +204,11 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
192
204
  this.configuratorCancel.emit();
193
205
  }
194
206
  render() {
207
+ if (this._resourceID == undefined) {
208
+ return;
209
+ }
195
210
  this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
196
- return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit }, h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL') }, h("div", { slot: "SnkConfigContainerSlot" }, h("slot", { name: "SnkConfigContainerSlot" })))));
211
+ return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, resourceID: this._resourceID }, h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID }, h("div", { slot: "SnkConfigContainerSlot" }, h("slot", { name: "SnkConfigContainerSlot" })))));
197
212
  }
198
213
  get _element() { return this; }
199
214
  static get watchers() { return {
@@ -217,6 +232,7 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
217
232
  "attachmentRegisterKey": [32],
218
233
  "_currentViewMode": [32],
219
234
  "_canEdit": [32],
235
+ "_resourceID": [32],
220
236
  "goToView": [64],
221
237
  "openConfigurator": [64],
222
238
  "closeConfigurator": [64],
@@ -71,6 +71,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
71
71
  this.useCancelConfirm = true;
72
72
  this.ignoreSaveMessage = undefined;
73
73
  this.configName = undefined;
74
+ this.resourceID = undefined;
74
75
  }
75
76
  observePageSize() {
76
77
  if (this.dataUnit) {
@@ -334,10 +335,10 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
334
335
  const cacheName = this.dataUnitName ? this.dataUnitName : this.entityName;
335
336
  if (this._parentSnkDataUnit) {
336
337
  this._parentDataUnit = await ((_a = this._parentSnkDataUnit) === null || _a === void 0 ? void 0 : _a.getDataUnit());
337
- return await this._application.getDataUnit(this.entityName, cacheName, this._parentDataUnit, this.configName);
338
+ return await this._application.getDataUnit(this.entityName, cacheName, this._parentDataUnit, this.configName, this.resourceID);
338
339
  }
339
340
  else {
340
- return await this._application.getDataUnit(this.entityName, cacheName, null, this.configName);
341
+ return await this._application.getDataUnit(this.entityName, cacheName, null, this.configName, this.resourceID);
341
342
  }
342
343
  }
343
344
  async loadDataUnit() {
@@ -396,7 +397,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
396
397
  //---------------------------------------------
397
398
  componentWillLoad() {
398
399
  this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
399
- this._application.getAllAccess().then(access => this._permissions = access);
400
+ this._application.getAllAccess(this.resourceID).then(access => this._permissions = access);
400
401
  this._parentSnkDataUnit = this.getParentSnkDataUnit();
401
402
  if (this.messagesBuilder == undefined) {
402
403
  this.messagesBuilder = new SnkMessageBuilder(this.entityName);
@@ -436,6 +437,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
436
437
  "useCancelConfirm": [4, "use-cancel-confirm"],
437
438
  "ignoreSaveMessage": [4, "ignore-save-message"],
438
439
  "configName": [1, "config-name"],
440
+ "resourceID": [1, "resource-i-d"],
439
441
  "getDataUnit": [64],
440
442
  "getSelectedRecordsIDsInfo": [64]
441
443
  }]);