@sankhyalabs/sankhyablocks 8.2.0-rc.1 → 8.2.0-rc.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 (252) hide show
  1. package/dist/cjs/{ConfigStorage-e9d7fa82.js → ConfigStorage-349cf0fd.js} +163 -51
  2. package/dist/cjs/{DataFetcher-39b63a1e.js → DataFetcher-7ba52c1d.js} +79 -235
  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-2f8eccd9.js → SnkFormConfigManager-9083c12f.js} +19 -21
  7. package/dist/cjs/{auth-fetcher-d407c31c.js → auth-fetcher-718ca8b4.js} +2 -2
  8. package/dist/cjs/{dataunit-fetcher-15a7cc88.js → dataunit-fetcher-076fcbf7.js} +1 -1
  9. package/dist/cjs/{form-config-fetcher-ab3ce222.js → form-config-fetcher-c7ec4ff9.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-96c042aa.js → pesquisa-fetcher-a9c5a2f5.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-8518c61b.js → snk-guides-viewer-18e9666c.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 +48 -33
  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 +80 -235
  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-1090289a.js → ConfigStorage-8d420626.js} +162 -49
  106. package/dist/esm/{DataFetcher-a4ed43e7.js → DataFetcher-e97b3942.js} +80 -235
  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-de537eca.js → SnkFormConfigManager-4c6a5b41.js} +19 -21
  111. package/dist/esm/{auth-fetcher-c53e0d6c.js → auth-fetcher-55e5cbce.js} +1 -1
  112. package/dist/esm/{dataunit-fetcher-8d0bfa4a.js → dataunit-fetcher-716a99ca.js} +1 -1
  113. package/dist/esm/{form-config-fetcher-4065db9a.js → form-config-fetcher-b69da2f1.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-7460b876.js → pesquisa-fetcher-c9a53822.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-cdecff6e.js → snk-guides-viewer-2e97c0c3.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-0b19beb9.entry.js +1 -0
  145. package/dist/sankhyablocks/p-110136be.entry.js +1 -0
  146. package/dist/sankhyablocks/p-12e48665.entry.js +1 -0
  147. package/dist/sankhyablocks/p-236cd346.js +1 -0
  148. package/dist/sankhyablocks/p-324ce41e.entry.js +1 -0
  149. package/dist/sankhyablocks/p-34604220.entry.js +1 -0
  150. package/dist/sankhyablocks/p-41f81c72.js +1 -0
  151. package/dist/sankhyablocks/{p-b04fb9d4.js → p-4e701fa7.js} +1 -1
  152. package/dist/sankhyablocks/p-615874db.js +56 -0
  153. package/dist/sankhyablocks/p-648a7c72.entry.js +1 -0
  154. package/dist/sankhyablocks/p-688dcb4c.js +1 -0
  155. package/dist/sankhyablocks/p-72fc257b.entry.js +1 -0
  156. package/dist/sankhyablocks/p-7453735e.entry.js +1 -0
  157. package/dist/sankhyablocks/p-776514a8.entry.js +11 -0
  158. package/dist/sankhyablocks/p-81392ced.js +26 -0
  159. package/dist/sankhyablocks/p-8d884fab.js +1 -0
  160. package/dist/sankhyablocks/p-989937ee.entry.js +1 -0
  161. package/dist/sankhyablocks/p-9a270401.entry.js +1 -0
  162. package/dist/sankhyablocks/p-9e7d65a4.js +1 -0
  163. package/dist/sankhyablocks/p-a2854b5a.entry.js +1 -0
  164. package/dist/sankhyablocks/p-c149dca8.entry.js +1 -0
  165. package/dist/sankhyablocks/p-c303d74f.entry.js +1 -0
  166. package/dist/sankhyablocks/p-c51a4f28.entry.js +1 -0
  167. package/dist/sankhyablocks/p-c555075c.entry.js +1 -0
  168. package/dist/sankhyablocks/{p-a2493d11.js → p-c9841939.js} +1 -1
  169. package/dist/sankhyablocks/p-ce6d7e3f.js +1 -0
  170. package/dist/sankhyablocks/p-cee68227.entry.js +1 -0
  171. package/dist/sankhyablocks/p-d4f9ee17.entry.js +1 -0
  172. package/dist/sankhyablocks/p-e1cb1f0b.js +1 -0
  173. package/dist/sankhyablocks/{p-b978da60.js → p-e696a8f6.js} +1 -1
  174. package/dist/sankhyablocks/p-e6c00493.entry.js +1 -0
  175. package/dist/sankhyablocks/p-ecbb878e.entry.js +1 -0
  176. package/dist/sankhyablocks/{p-9d18017a.js → p-f390386d.js} +1 -1
  177. package/dist/sankhyablocks/p-fbb4597a.entry.js +1 -0
  178. package/dist/sankhyablocks/p-ff2f2152.entry.js +1 -0
  179. package/dist/sankhyablocks/p-ff8778e6.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-24548cec.js +0 -155
  218. package/dist/cjs/resource-fetcher-64102551.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-2417b8cf.js +0 -153
  222. package/dist/esm/resource-fetcher-45a70066.js +0 -66
  223. package/dist/sankhyablocks/p-0848ee4d.entry.js +0 -1
  224. package/dist/sankhyablocks/p-0bd9c412.js +0 -1
  225. package/dist/sankhyablocks/p-0fb83448.js +0 -1
  226. package/dist/sankhyablocks/p-10b2aedc.entry.js +0 -1
  227. package/dist/sankhyablocks/p-1f63dcd4.entry.js +0 -1
  228. package/dist/sankhyablocks/p-216b2102.entry.js +0 -1
  229. package/dist/sankhyablocks/p-216f081a.entry.js +0 -1
  230. package/dist/sankhyablocks/p-44e66c8d.js +0 -1
  231. package/dist/sankhyablocks/p-4514fc6a.entry.js +0 -1
  232. package/dist/sankhyablocks/p-50c13cc8.entry.js +0 -1
  233. package/dist/sankhyablocks/p-52c6b2e7.js +0 -1
  234. package/dist/sankhyablocks/p-564efc43.js +0 -1
  235. package/dist/sankhyablocks/p-5994af77.js +0 -56
  236. package/dist/sankhyablocks/p-6bb904bb.entry.js +0 -1
  237. package/dist/sankhyablocks/p-6e06175e.entry.js +0 -1
  238. package/dist/sankhyablocks/p-6f0795c8.entry.js +0 -1
  239. package/dist/sankhyablocks/p-7588f006.entry.js +0 -1
  240. package/dist/sankhyablocks/p-847e6c20.js +0 -17
  241. package/dist/sankhyablocks/p-8f3652bf.entry.js +0 -11
  242. package/dist/sankhyablocks/p-9471cbc9.entry.js +0 -1
  243. package/dist/sankhyablocks/p-a42dd503.entry.js +0 -1
  244. package/dist/sankhyablocks/p-befbc9ee.entry.js +0 -1
  245. package/dist/sankhyablocks/p-c32b9d7c.entry.js +0 -1
  246. package/dist/sankhyablocks/p-c6380ea2.entry.js +0 -1
  247. package/dist/sankhyablocks/p-c6feb995.entry.js +0 -1
  248. package/dist/sankhyablocks/p-d7c7a289.entry.js +0 -1
  249. package/dist/sankhyablocks/p-de69b4b0.entry.js +0 -1
  250. package/dist/sankhyablocks/p-f3b7b69e.js +0 -10
  251. package/dist/sankhyablocks/p-f7eded3a.entry.js +0 -1
  252. package/dist/sankhyablocks/p-ff7383b0.entry.js +0 -1
@@ -1,6 +1,7 @@
1
- import { DataType, StringUtils, ApplicationContext, ErrorException, WarningException, ObjectUtils } from '@sankhyalabs/core';
1
+ import { DataType, ApplicationContext, ErrorException, WarningException, ObjectUtils, StringUtils } from '@sankhyalabs/core';
2
2
  import { c as createCommonjsModule, a as commonjsGlobal } from './_commonjsHelpers.js';
3
3
  import { DataUnitTransient } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
4
+ import { P as PrintUtils } from './PrintUtils.js';
4
5
 
5
6
  var browserPonyfill = createCommonjsModule(function (module, exports) {
6
7
  var global = typeof self !== 'undefined' ? self : commonjsGlobal;
@@ -6434,6 +6435,35 @@ class UrlUtils {
6434
6435
  return window['mock_url'];
6435
6436
  return `${location.protocol}//${location.hostname}${location.port ? ":" + location.port : ""}`;
6436
6437
  }
6438
+ /**
6439
+ * Extrai da URL o parâmetro que contém o resourceId da tela desejada.
6440
+ *
6441
+ */
6442
+ static getResourceIdFromUrlToken(url) {
6443
+ try {
6444
+ const parts = url.split('/');
6445
+ const encodedValue = parts[1];
6446
+ return atob(encodedValue);
6447
+ }
6448
+ catch (error) {
6449
+ throw new Error('Erro ao obter resourceId:' + error);
6450
+ }
6451
+ }
6452
+ /**
6453
+ * Extrai da URL o parâmetro que contém o o objeto com a PK do registro específico.
6454
+ *
6455
+ */
6456
+ static getPkObjectFromUrlToken(url) {
6457
+ try {
6458
+ const parts = url.split('/');
6459
+ const encodedObjectPart = parts[parts.length - 2];
6460
+ const decodedObjectPart = atob(encodedObjectPart);
6461
+ return JSON.parse(decodedObjectPart);
6462
+ }
6463
+ catch (error) {
6464
+ throw new Error('Erro ao obter a PK do objeto:' + error);
6465
+ }
6466
+ }
6437
6467
  }
6438
6468
 
6439
6469
  class ServiceBrokerRecaller {
@@ -6477,209 +6507,10 @@ class GraphQLRecaller {
6477
6507
  }
6478
6508
  }
6479
6509
 
6480
- class PrintUtils {
6481
- constructor() {
6482
- this.appletImpressao = new AppletImpressao();
6483
- }
6484
- static getInstance() {
6485
- if (!PrintUtils.instance) {
6486
- PrintUtils.instance = new PrintUtils();
6487
- }
6488
- return PrintUtils.instance;
6489
- }
6490
- async processPendingPrinting(transactionId) {
6491
- await this.findPendingPrints(transactionId);
6492
- }
6493
- async findPendingPrints(transactionId) {
6494
- const requestBody = {
6495
- transactionIds: [
6496
- {
6497
- transactionId: {
6498
- $: transactionId
6499
- }
6500
- }
6501
- ]
6502
- };
6503
- const response = await DataFetcher.get().callServiceBroker(PrintUtils.SERVICE_FIND_PENDING_PRINTS, JSON.stringify(requestBody));
6504
- const printJobData = this.parsePrintData(response);
6505
- const pendingPrints = await this.processDirectPrint(printJobData);
6506
- if (!pendingPrints.length)
6507
- return;
6508
- this.openSnkPrintSelector(Object.assign(Object.assign({}, printJobData), { pendingPrinters: pendingPrints }));
6509
- }
6510
- getLocalPrinters() {
6511
- const localPrinters = this.appletImpressao.findLocalPrinters();
6512
- const printers = [];
6513
- for (const printerName of localPrinters) {
6514
- printers.push({
6515
- nome: printerName,
6516
- printerUri: PrintUtils.LOCAL_SERVER_URI + printerName,
6517
- isLocal: true
6518
- });
6519
- }
6520
- return printers;
6521
- }
6522
- parsePrintData(payload) {
6523
- const pendingPrintJobData = payload.pendindPrintJobData;
6524
- if (!pendingPrintJobData)
6525
- return undefined;
6526
- let { printServers: { printServer }, pendingPrinters: { pendingPrinter } } = pendingPrintJobData;
6527
- printServer = printServer ? (Array.isArray(printServer) ? printServer : [printServer]) : [];
6528
- pendingPrinter = pendingPrinter ? (Array.isArray(pendingPrinter) ? pendingPrinter : [pendingPrinter]) : [];
6529
- const normalizedPrintServer = printServer.map(item => {
6530
- const printerList = Array.isArray(item.printerLocation) ? item.printerLocation : [item.printerLocation];
6531
- return {
6532
- printServerUri: item.printServerUri,
6533
- printerList: printerList.map(this.normalize)
6534
- };
6535
- });
6536
- const normalizedPendingPrinter = pendingPrinter.map(this.normalize);
6537
- return {
6538
- transactionId: pendingPrintJobData.transactionId.$,
6539
- printServers: normalizedPrintServer,
6540
- pendingPrinters: normalizedPendingPrinter,
6541
- printServerActive: pendingPrintJobData.printServers.printServerActive === 'true'
6542
- };
6543
- }
6544
- normalize(object) {
6545
- const normalizedObject = {};
6546
- Object.keys(object).forEach((key) => {
6547
- normalizedObject[key] = PrintUtils.ENCODED_PROPERTIES.includes(key) ? window.atob(object[key].$) : object[key].$;
6548
- });
6549
- return normalizedObject;
6550
- }
6551
- processLocalPrinting(localPrintings) {
6552
- const transactionIds = localPrintings.map((item) => item.transactionId);
6553
- this.appletImpressao.doLocalPrinting(transactionIds.join());
6554
- }
6555
- async openSnkPrintSelector(printJobData) {
6556
- let printSelector = document.querySelector('snk-print-selector');
6557
- if (!printSelector) {
6558
- printSelector = document.createElement('snk-print-selector');
6559
- printSelector.setAttribute('id', StringUtils.generateUUID());
6560
- window.document.body.appendChild(printSelector);
6561
- }
6562
- const { selectedPrinter, saveSubstitute } = await printSelector.openPrintSelector(printJobData);
6563
- if (!selectedPrinter)
6564
- return;
6565
- const params = {
6566
- transactionId: printJobData.transactionId,
6567
- pendingPrinters: printJobData.pendingPrinters,
6568
- printerUri: selectedPrinter.printerUri,
6569
- saveSubstitutePrinters: saveSubstitute
6570
- };
6571
- await this.saveSubstitutePrinter(params);
6572
- }
6573
- async saveSubstitutePrinter(params) {
6574
- const { transactionId, pendingPrinters, printerUri, saveSubstitutePrinters = false } = params;
6575
- const parsedPendingPrinters = pendingPrinters.map((item) => ({
6576
- printerUri: {
6577
- $: item.printerUri || printerUri
6578
- },
6579
- originalPrinterName: {
6580
- $: item.originalPrinterName
6581
- },
6582
- printJobCount: {
6583
- $: item.printJobCount
6584
- },
6585
- docType: {
6586
- $: item.docType
6587
- },
6588
- docTypeDescription: {
6589
- $: item.docTypeDescription
6590
- }
6591
- }));
6592
- const requestBody = {
6593
- substitutePrintersRequest: {
6594
- substitutePrinters: {
6595
- pendingPrinter: parsedPendingPrinters
6596
- },
6597
- saveSubstitutePrinters: {
6598
- $: saveSubstitutePrinters.toString()
6599
- },
6600
- transactionId: {
6601
- $: transactionId
6602
- }
6603
- }
6604
- };
6605
- await DataFetcher.get().callServiceBroker(PrintUtils.SERVICE_SAVE_SUBSTITUTE_PRINTER, JSON.stringify(requestBody));
6606
- }
6607
- async processDirectPrint(printJobData) {
6608
- const isWCRunning = this.appletImpressao.checkWebConnection();
6609
- if (!isWCRunning) {
6610
- return [];
6611
- }
6612
- const localPrinters = this.getLocalPrinters();
6613
- if (!localPrinters.length)
6614
- return [];
6615
- const directPendingPrints = [];
6616
- const pendingPrints = printJobData.pendingPrinters.filter(item => {
6617
- const defaultPrinterName = this.getDefaultPrinterName(item.originalPrinterName);
6618
- const isDirectPrint = !!localPrinters.find(localPrinter => localPrinter.nome === defaultPrinterName) || this.isPrinterNameAFile(defaultPrinterName);
6619
- if (isDirectPrint) {
6620
- directPendingPrints.push(Object.assign(Object.assign({}, item), { printerUri: PrintUtils.LOCAL_SERVER_URI + defaultPrinterName }));
6621
- return false;
6622
- }
6623
- return true;
6624
- });
6625
- if (!directPendingPrints.length)
6626
- return pendingPrints;
6627
- const params = {
6628
- transactionId: printJobData.transactionId,
6629
- pendingPrinters: directPendingPrints
6630
- };
6631
- await this.saveSubstitutePrinter(params);
6632
- return pendingPrints;
6633
- }
6634
- getDefaultPrinterName(printerName) {
6635
- const defaultPrinterName = this.appletImpressao.getDefaultPrinter();
6636
- const isDefaultPrinterName = /padr[aã]o/ig.test(printerName);
6637
- return (defaultPrinterName && isDefaultPrinterName) ? defaultPrinterName : printerName;
6638
- }
6639
- isPrinterNameAFile(printerName) {
6640
- const regExp = new RegExp("^(\w:)?[/\\\w\s]+?\.\w{3}$", "mis");
6641
- return regExp.test(printerName);
6642
- }
6643
- }
6644
- PrintUtils.SERVICE_FIND_PENDING_PRINTS = 'mge@PrintServiceSP.findPendingPrinters';
6645
- PrintUtils.SERVICE_SAVE_SUBSTITUTE_PRINTER = 'mge@PrintServiceSP.saveSubstitutePrinter';
6646
- PrintUtils.LOCAL_SERVER_URI = 'LOCAL:0/';
6647
- PrintUtils.ENCODED_PROPERTIES = ['printerName', 'printerUri'];
6648
- class AppletImpressao {
6649
- constructor() {
6650
- this.appletImpressao = document.getElementById('centralNotaAppletImpressao');
6651
- }
6652
- checkWebConnection() {
6653
- if (!this.appletImpressao)
6654
- return false;
6655
- if (!this.appletImpressao.testRunningWC)
6656
- return false;
6657
- const isRunning = this.appletImpressao.testRunningWC();
6658
- return !!isRunning;
6659
- }
6660
- findLocalPrinters() {
6661
- if (!this.appletImpressao)
6662
- return [];
6663
- const localPrinters = this.appletImpressao.getLocalPrinters();
6664
- if (!localPrinters)
6665
- return [];
6666
- return localPrinters.split(",");
6667
- }
6668
- doLocalPrinting(transactionIds) {
6669
- if (!this.appletImpressao)
6670
- return;
6671
- this.appletImpressao.doLocalPrinting(transactionIds);
6672
- }
6673
- getDefaultPrinter() {
6674
- if (!this.appletImpressao)
6675
- return '';
6676
- return this.appletImpressao.getPrintDefault();
6677
- }
6678
- }
6679
-
6680
6510
  class DataFetcher {
6681
6511
  constructor() {
6682
6512
  this.GRAPHQL_PATH = `/${window.MGE_MODULE_NAME || 'mgefin-bff'}/graphql`;
6513
+ this.ready = true;
6683
6514
  this.watingRequestsById = new Map();
6684
6515
  }
6685
6516
  static get() {
@@ -6690,6 +6521,9 @@ class DataFetcher {
6690
6521
  DataFetcher.instance.resume();
6691
6522
  }
6692
6523
  else {
6524
+ if (ApplicationContext.getContextValue("__SNK__APPLICATION__LOADING__") === true) {
6525
+ DataFetcher.instance.pause();
6526
+ }
6693
6527
  application.addEventListener('applicationLoading', () => DataFetcher.instance.pause());
6694
6528
  application.addEventListener('applicationLoaded', () => DataFetcher.instance.resume());
6695
6529
  }
@@ -6748,6 +6582,10 @@ class DataFetcher {
6748
6582
  }
6749
6583
  async callGraphQL(req) {
6750
6584
  var _a;
6585
+ if (this.ready) {
6586
+ this.pause();
6587
+ window.requestAnimationFrame(() => this.resume());
6588
+ }
6751
6589
  const reqKey = this.getReqKey(req);
6752
6590
  req.queryID = reqKey;
6753
6591
  req.values.queryID = reqKey;
@@ -6777,7 +6615,7 @@ class DataFetcher {
6777
6615
  if (!this.watingRequestsById.has(reqKey)) {
6778
6616
  this.watingRequestsById.set(reqKey, new WaitingRequest(req));
6779
6617
  }
6780
- return (_a = this.getWatingRequest(reqKey)) === null || _a === void 0 ? void 0 : _a.promise;
6618
+ return (_a = this.watingRequestsById.get(reqKey)) === null || _a === void 0 ? void 0 : _a.promise;
6781
6619
  }
6782
6620
  }
6783
6621
  resolveURL() {
@@ -6819,9 +6657,9 @@ class DataFetcher {
6819
6657
  }
6820
6658
  });
6821
6659
  }
6822
- processPrinting(payload) {
6660
+ async processPrinting(payload) {
6823
6661
  if ((payload === null || payload === void 0 ? void 0 : payload.pendingPrinting) === 'true') {
6824
- PrintUtils.getInstance().processPendingPrinting(payload === null || payload === void 0 ? void 0 : payload.transactionId);
6662
+ await PrintUtils.getInstance().processPendingPrinting(payload === null || payload === void 0 ? void 0 : payload.transactionId);
6825
6663
  }
6826
6664
  if ('localPrintings' in payload) {
6827
6665
  PrintUtils.getInstance().processLocalPrinting(payload === null || payload === void 0 ? void 0 : payload.localPrintings);
@@ -6869,11 +6707,18 @@ class DataFetcher {
6869
6707
  http.open("POST", url, true);
6870
6708
  http.withCredentials = true;
6871
6709
  http.send(ObjectUtils.objectToString(payloadJson));
6872
- http.onreadystatechange = () => {
6710
+ http.onreadystatechange = async () => {
6873
6711
  var _a;
6874
6712
  if (http.readyState == 4 && http.status == 200) {
6875
6713
  try {
6876
6714
  const jsonResp = JSON.parse(http.responseText);
6715
+ /**
6716
+ * Este trecho difere do projeto HTML5 devido à decisão de adotar uma abordagem síncrona para esta chamada. Isso é justificado pelo fato de que, no cenário em questão, a abordagem assíncrona teria impactos negativos.
6717
+ *
6718
+ * Descrição do caso de uso:
6719
+ * Ao concluir um recebimento com cartão (Movimentação Financeira), é acionado um EzDialog de confirmação. Posteriormente, a PopUp de impressão é exibida, e, ao ser cancelada, gera a invocação de um novo EzDialog.
6720
+ */
6721
+ await this.processPrinting(jsonResp);
6877
6722
  if (this.isServiceBrokerError(jsonResp)) {
6878
6723
  reject(this.processServiceBrokerErrorInfo(jsonResp));
6879
6724
  }
@@ -6887,7 +6732,6 @@ class DataFetcher {
6887
6732
  }
6888
6733
  }
6889
6734
  this.proccessServiceBorkerClientEvents(jsonResp === null || jsonResp === void 0 ? void 0 : jsonResp.clientEvents, serviceName, payloadJson, accept, reject);
6890
- this.processPrinting(jsonResp);
6891
6735
  }
6892
6736
  catch (err) {
6893
6737
  console.warn(`Erro ao executar serviço: ${err}`);
@@ -6925,42 +6769,43 @@ class DataFetcher {
6925
6769
  getQueryTemplate(re) {
6926
6770
  return (re.query || "").replaceAll("$queryAlias$", re.queryID);
6927
6771
  }
6928
- getWatingRequest(reqID) {
6929
- return this.watingRequestsById.get(reqID);
6930
- }
6931
6772
  pause() {
6932
6773
  this.ready = false;
6933
6774
  }
6934
6775
  async resume() {
6935
6776
  this.ready = true;
6936
6777
  if (this.watingRequestsById.size > 0) {
6937
- const requestsBatch = [];
6938
- this.watingRequestsById.forEach(async (waitingReq) => {
6939
- let query = this.getQueryTemplate(waitingReq.request);
6940
- requestsBatch.push({ document: query, variables: Object.assign({}, waitingReq.request.values) });
6941
- });
6942
- let res = undefined;
6943
- let dataResponse = [];
6944
- let errorsResponse = [];
6945
- res = await this.fecthGrapql(requestsBatch);
6946
- dataResponse = res.data;
6947
- errorsResponse = res.errors;
6948
- //Reject promises with errors from query
6949
- errorsResponse.forEach((errorResponse) => {
6950
- Object.entries(errorResponse).forEach(([_key, val]) => {
6951
- var _a;
6952
- (((_a = this.getWatingRequest(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
6953
- });
6778
+ const waitinRequests = this.watingRequestsById;
6779
+ this.watingRequestsById = new Map();
6780
+ this.executePendingRequest(waitinRequests);
6781
+ }
6782
+ }
6783
+ async executePendingRequest(watingRequestsById) {
6784
+ const requestsBatch = [];
6785
+ watingRequestsById.forEach(async (waitingReq) => {
6786
+ let query = this.getQueryTemplate(waitingReq.request);
6787
+ requestsBatch.push({ document: query, variables: Object.assign({}, waitingReq.request.values) });
6788
+ });
6789
+ let res = undefined;
6790
+ let dataResponse = [];
6791
+ let errorsResponse = [];
6792
+ res = await this.fecthGrapql(requestsBatch);
6793
+ dataResponse = res.data;
6794
+ errorsResponse = res.errors;
6795
+ //Reject promises with errors from query
6796
+ errorsResponse.forEach((errorResponse) => {
6797
+ Object.entries(errorResponse).forEach(([_key, val]) => {
6798
+ var _a;
6799
+ (((_a = watingRequestsById.get(val.request.variables[val.index].queryID)) === null || _a === void 0 ? void 0 : _a.reject) || Promise.reject)(new ErrorException("Falha detectada", val.message));
6954
6800
  });
6955
- //Resolve promises with data from query
6956
- dataResponse.forEach((data) => {
6957
- Object.entries(data).forEach(([key, val]) => {
6958
- var _a;
6959
- (((_a = this.getWatingRequest(key)) === null || _a === void 0 ? void 0 : _a.resolve) || Promise.resolve)(val);
6960
- });
6801
+ });
6802
+ //Resolve promises with data from query
6803
+ dataResponse.forEach((data) => {
6804
+ Object.entries(data).forEach(([key, val]) => {
6805
+ var _a;
6806
+ (((_a = watingRequestsById.get(key)) === null || _a === void 0 ? void 0 : _a.resolve) || Promise.resolve)(val);
6961
6807
  });
6962
- this.watingRequestsById.clear();
6963
- }
6808
+ });
6964
6809
  }
6965
6810
  async fecthGrapql(request) {
6966
6811
  let res = undefined;
@@ -7079,4 +6924,4 @@ class WaitingRequest {
7079
6924
  }
7080
6925
  }
7081
6926
 
7082
- export { DataFetcher as D, PrintUtils as P, UrlUtils as U, dist as d };
6927
+ export { DataFetcher as D, UrlUtils as U, dist as d };
@@ -0,0 +1,213 @@
1
+ import { ApplicationContext, StringUtils } from '@sankhyalabs/core';
2
+
3
+ class PrintUtils {
4
+ constructor() {
5
+ this.appletImpressao = new AppletImpressao();
6
+ const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
7
+ application.getDataFetcher().then(result => this.DataFetcher = result);
8
+ }
9
+ static getInstance() {
10
+ if (!PrintUtils.instance) {
11
+ PrintUtils.instance = new PrintUtils();
12
+ }
13
+ return PrintUtils.instance;
14
+ }
15
+ async processPendingPrinting(transactionId) {
16
+ await this.findPendingPrints(transactionId);
17
+ }
18
+ async findPendingPrints(transactionId) {
19
+ const requestBody = {
20
+ transactionIds: [
21
+ {
22
+ transactionId: {
23
+ $: transactionId
24
+ }
25
+ }
26
+ ]
27
+ };
28
+ Promise.resolve(this.DataFetcher).then(async (res) => {
29
+ res = await Promise.resolve(this.DataFetcher);
30
+ while (!res || !res.application) {
31
+ res = await Promise.resolve(this.DataFetcher);
32
+ }
33
+ const response = await res.application.callServiceBroker(PrintUtils.SERVICE_FIND_PENDING_PRINTS, JSON.stringify(requestBody));
34
+ const printJobData = this.parsePrintData(response);
35
+ const pendingPrints = await this.processDirectPrint(printJobData);
36
+ if (!pendingPrints.length)
37
+ return;
38
+ this.openSnkPrintSelector(Object.assign(Object.assign({}, printJobData), { pendingPrinters: pendingPrints }));
39
+ });
40
+ }
41
+ getLocalPrinters() {
42
+ const localPrinters = this.appletImpressao.findLocalPrinters();
43
+ const printers = [];
44
+ for (const printerName of localPrinters) {
45
+ printers.push({
46
+ nome: printerName,
47
+ printerUri: PrintUtils.LOCAL_SERVER_URI + printerName,
48
+ isLocal: true
49
+ });
50
+ }
51
+ return printers;
52
+ }
53
+ parsePrintData(payload) {
54
+ const pendingPrintJobData = payload.pendindPrintJobData;
55
+ if (!pendingPrintJobData)
56
+ return undefined;
57
+ let { printServers: { printServer }, pendingPrinters: { pendingPrinter } } = pendingPrintJobData;
58
+ printServer = printServer ? (Array.isArray(printServer) ? printServer : [printServer]) : [];
59
+ pendingPrinter = pendingPrinter ? (Array.isArray(pendingPrinter) ? pendingPrinter : [pendingPrinter]) : [];
60
+ const normalizedPrintServer = printServer.map(item => {
61
+ const printerList = Array.isArray(item.printerLocation) ? item.printerLocation : [item.printerLocation];
62
+ return {
63
+ printServerUri: item.printServerUri,
64
+ printerList: printerList.map(this.normalize)
65
+ };
66
+ });
67
+ const normalizedPendingPrinter = pendingPrinter.map(this.normalize);
68
+ return {
69
+ transactionId: pendingPrintJobData.transactionId.$,
70
+ printServers: normalizedPrintServer,
71
+ pendingPrinters: normalizedPendingPrinter,
72
+ printServerActive: pendingPrintJobData.printServers.printServerActive === 'true'
73
+ };
74
+ }
75
+ normalize(object) {
76
+ const normalizedObject = {};
77
+ Object.keys(object).forEach((key) => {
78
+ normalizedObject[key] = PrintUtils.ENCODED_PROPERTIES.includes(key) ? window.atob(object[key].$) : object[key].$;
79
+ });
80
+ return normalizedObject;
81
+ }
82
+ processLocalPrinting(localPrintings) {
83
+ const transactionIds = localPrintings.map((item) => item.transactionId);
84
+ this.appletImpressao.doLocalPrinting(transactionIds.join());
85
+ }
86
+ async openSnkPrintSelector(printJobData) {
87
+ let printSelector = document.querySelector('snk-print-selector');
88
+ if (!printSelector) {
89
+ printSelector = document.createElement('snk-print-selector');
90
+ printSelector.setAttribute('id', StringUtils.generateUUID());
91
+ window.document.body.appendChild(printSelector);
92
+ }
93
+ const { selectedPrinter, saveSubstitute } = await printSelector.openPrintSelector(printJobData);
94
+ if (!selectedPrinter)
95
+ return;
96
+ const params = {
97
+ transactionId: printJobData.transactionId,
98
+ pendingPrinters: printJobData.pendingPrinters,
99
+ printerUri: selectedPrinter.printerUri,
100
+ saveSubstitutePrinters: saveSubstitute
101
+ };
102
+ await this.saveSubstitutePrinter(params);
103
+ }
104
+ async saveSubstitutePrinter(params) {
105
+ const { transactionId, pendingPrinters, printerUri, saveSubstitutePrinters = false } = params;
106
+ const parsedPendingPrinters = pendingPrinters.map((item) => ({
107
+ printerUri: {
108
+ $: item.printerUri || printerUri
109
+ },
110
+ originalPrinterName: {
111
+ $: item.originalPrinterName
112
+ },
113
+ printJobCount: {
114
+ $: item.printJobCount
115
+ },
116
+ docType: {
117
+ $: item.docType
118
+ },
119
+ docTypeDescription: {
120
+ $: item.docTypeDescription
121
+ }
122
+ }));
123
+ const requestBody = {
124
+ substitutePrintersRequest: {
125
+ substitutePrinters: {
126
+ pendingPrinter: parsedPendingPrinters
127
+ },
128
+ saveSubstitutePrinters: {
129
+ $: saveSubstitutePrinters.toString()
130
+ },
131
+ transactionId: {
132
+ $: transactionId
133
+ }
134
+ }
135
+ };
136
+ Promise.resolve(this.DataFetcher).then(async (res) => {
137
+ await res.application.callServiceBroker(PrintUtils.SERVICE_SAVE_SUBSTITUTE_PRINTER, JSON.stringify(requestBody));
138
+ });
139
+ }
140
+ async processDirectPrint(printJobData) {
141
+ const isWCRunning = this.appletImpressao.checkWebConnection();
142
+ if (!isWCRunning) {
143
+ return [];
144
+ }
145
+ const localPrinters = this.getLocalPrinters();
146
+ if (!localPrinters.length)
147
+ return [];
148
+ const directPendingPrints = [];
149
+ const pendingPrints = printJobData.pendingPrinters.filter(item => {
150
+ const defaultPrinterName = this.getDefaultPrinterName(item.originalPrinterName);
151
+ const isDirectPrint = !!localPrinters.find(localPrinter => localPrinter.nome === defaultPrinterName) || this.isPrinterNameAFile(defaultPrinterName);
152
+ if (isDirectPrint) {
153
+ directPendingPrints.push(Object.assign(Object.assign({}, item), { printerUri: PrintUtils.LOCAL_SERVER_URI + defaultPrinterName }));
154
+ return false;
155
+ }
156
+ return true;
157
+ });
158
+ if (!directPendingPrints.length)
159
+ return pendingPrints;
160
+ const params = {
161
+ transactionId: printJobData.transactionId,
162
+ pendingPrinters: directPendingPrints
163
+ };
164
+ await this.saveSubstitutePrinter(params);
165
+ return pendingPrints;
166
+ }
167
+ getDefaultPrinterName(printerName) {
168
+ const defaultPrinterName = this.appletImpressao.getDefaultPrinter();
169
+ const isDefaultPrinterName = /padr[aã]o/ig.test(printerName);
170
+ return (defaultPrinterName && isDefaultPrinterName) ? defaultPrinterName : printerName;
171
+ }
172
+ isPrinterNameAFile(printerName) {
173
+ const regExp = new RegExp("^(\w:)?[/\\\w\s]+?\.\w{3}$", "mis");
174
+ return regExp.test(printerName);
175
+ }
176
+ }
177
+ PrintUtils.SERVICE_FIND_PENDING_PRINTS = 'mge@PrintServiceSP.findPendingPrinters';
178
+ PrintUtils.SERVICE_SAVE_SUBSTITUTE_PRINTER = 'mge@PrintServiceSP.saveSubstitutePrinter';
179
+ PrintUtils.LOCAL_SERVER_URI = 'LOCAL:0/';
180
+ PrintUtils.ENCODED_PROPERTIES = ['printerName', 'printerUri'];
181
+ class AppletImpressao {
182
+ constructor() {
183
+ this.appletImpressao = document.getElementById('centralNotaAppletImpressao');
184
+ }
185
+ checkWebConnection() {
186
+ if (!this.appletImpressao)
187
+ return false;
188
+ if (!this.appletImpressao.testRunningWC)
189
+ return false;
190
+ const isRunning = this.appletImpressao.testRunningWC();
191
+ return !!isRunning;
192
+ }
193
+ findLocalPrinters() {
194
+ if (!this.appletImpressao)
195
+ return [];
196
+ const localPrinters = this.appletImpressao.getLocalPrinters();
197
+ if (!localPrinters)
198
+ return [];
199
+ return localPrinters.split(",");
200
+ }
201
+ doLocalPrinting(transactionIds) {
202
+ if (!this.appletImpressao)
203
+ return;
204
+ this.appletImpressao.doLocalPrinting(transactionIds);
205
+ }
206
+ getDefaultPrinter() {
207
+ if (!this.appletImpressao)
208
+ return '';
209
+ return this.appletImpressao.getPrintDefault();
210
+ }
211
+ }
212
+
213
+ export { PrintUtils as P };
@@ -0,0 +1,10 @@
1
+ import { ApplicationContext } from '@sankhyalabs/core';
2
+
3
+ class ResourceIDUtils {
4
+ static async getResourceID() {
5
+ const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
6
+ return application.getResourceID();
7
+ }
8
+ }
9
+
10
+ export { ResourceIDUtils as R };