barsa-novin-ray-core 2.2.73 → 2.2.74

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 (232) hide show
  1. package/fesm2022/barsa-novin-ray-core.mjs +628 -649
  2. package/fesm2022/barsa-novin-ray-core.mjs.map +1 -1
  3. package/lib/abstract-classes/field-base.d.ts +1 -1
  4. package/lib/abstract-classes/number-base.d.ts +1 -1
  5. package/lib/date-services/date.service.d.ts +1 -1
  6. package/lib/directives/base.directive.d.ts +1 -1
  7. package/lib/dynamic-component/base-view-item-props.d.ts +4 -4
  8. package/lib/resolvers/login-settings.resolver.d.ts +1 -1
  9. package/lib/resolvers/tile-group-breadcrumb.resolver.d.ts +1 -1
  10. package/lib/services/notification.service.d.ts +2 -2
  11. package/lib/services/portal.service.d.ts +1 -1
  12. package/package.json +3 -5
  13. package/esm2022/barsa-novin-ray-core.mjs +0 -5
  14. package/esm2022/lib/abstract-classes/application-base.mjs +0 -25
  15. package/esm2022/lib/abstract-classes/barsa-api.mjs +0 -43
  16. package/esm2022/lib/abstract-classes/base-column-props.mjs +0 -89
  17. package/esm2022/lib/abstract-classes/base.component.mjs +0 -60
  18. package/esm2022/lib/abstract-classes/field-base.mjs +0 -244
  19. package/esm2022/lib/abstract-classes/files-validation-helper.mjs +0 -75
  20. package/esm2022/lib/abstract-classes/form-base.mjs +0 -164
  21. package/esm2022/lib/abstract-classes/form-field-report-page.component.mjs +0 -54
  22. package/esm2022/lib/abstract-classes/form-page-base.mjs +0 -132
  23. package/esm2022/lib/abstract-classes/form-page.component.mjs +0 -53
  24. package/esm2022/lib/abstract-classes/form-props.base.mjs +0 -100
  25. package/esm2022/lib/abstract-classes/form-toolbar-base.mjs +0 -57
  26. package/esm2022/lib/abstract-classes/index.mjs +0 -25
  27. package/esm2022/lib/abstract-classes/layout-item-base.mjs +0 -49
  28. package/esm2022/lib/abstract-classes/layout-panel-base.mjs +0 -68
  29. package/esm2022/lib/abstract-classes/linear-list-helper.mjs +0 -135
  30. package/esm2022/lib/abstract-classes/models.mjs +0 -184
  31. package/esm2022/lib/abstract-classes/module-with-dynamic-components.mjs +0 -2
  32. package/esm2022/lib/abstract-classes/number-base.mjs +0 -201
  33. package/esm2022/lib/abstract-classes/page-base.mjs +0 -98
  34. package/esm2022/lib/abstract-classes/page-with-form-handler-base.mjs +0 -41
  35. package/esm2022/lib/abstract-classes/report-base.mjs +0 -266
  36. package/esm2022/lib/abstract-classes/report-item-base.mjs +0 -54
  37. package/esm2022/lib/abstract-classes/report-view-base.component.mjs +0 -450
  38. package/esm2022/lib/abstract-classes/system-base.mjs +0 -25
  39. package/esm2022/lib/abstract-classes/tile-props.mjs +0 -49
  40. package/esm2022/lib/auth-guard.mjs +0 -48
  41. package/esm2022/lib/barsa-novin-ray-core-routing.module.mjs +0 -311
  42. package/esm2022/lib/barsa-novin-ray-core.module.mjs +0 -522
  43. package/esm2022/lib/base-ulv-setting.component.mjs +0 -46
  44. package/esm2022/lib/base.module.mjs +0 -28
  45. package/esm2022/lib/button-loading/button-loading.component.mjs +0 -20
  46. package/esm2022/lib/constants.mjs +0 -963
  47. package/esm2022/lib/container.component.mjs +0 -100
  48. package/esm2022/lib/controllers/base-controller.mjs +0 -9
  49. package/esm2022/lib/controllers/base-view.mjs +0 -24
  50. package/esm2022/lib/controllers/index.mjs +0 -4
  51. package/esm2022/lib/controllers/models.mjs +0 -2
  52. package/esm2022/lib/custom-route-reuse-strategy.mjs +0 -32
  53. package/esm2022/lib/date-services/date-hijri.service.mjs +0 -146
  54. package/esm2022/lib/date-services/date-info.mjs +0 -2
  55. package/esm2022/lib/date-services/date-miladi.service.mjs +0 -124
  56. package/esm2022/lib/date-services/date-shamsi.service.mjs +0 -148
  57. package/esm2022/lib/date-services/date.service.mjs +0 -149
  58. package/esm2022/lib/date-services/index.mjs +0 -6
  59. package/esm2022/lib/device.mjs +0 -663
  60. package/esm2022/lib/directives/absolute-div-body.directive.mjs +0 -46
  61. package/esm2022/lib/directives/anchor-scroll.directive.mjs +0 -25
  62. package/esm2022/lib/directives/attr-rtl.directive.mjs +0 -36
  63. package/esm2022/lib/directives/base.directive.mjs +0 -55
  64. package/esm2022/lib/directives/body-click.directive.mjs +0 -36
  65. package/esm2022/lib/directives/column-resizer.directive.mjs +0 -40
  66. package/esm2022/lib/directives/copy.directive.mjs +0 -60
  67. package/esm2022/lib/directives/count-down.directive.mjs +0 -109
  68. package/esm2022/lib/directives/dynamic-command.directive.mjs +0 -43
  69. package/esm2022/lib/directives/dynamic-style.directive.mjs +0 -66
  70. package/esm2022/lib/directives/ellapsis-text.directive.mjs +0 -70
  71. package/esm2022/lib/directives/ellipsify.directive.mjs +0 -73
  72. package/esm2022/lib/directives/field-binding.directive.mjs +0 -18
  73. package/esm2022/lib/directives/fill-empty-space.mjs +0 -89
  74. package/esm2022/lib/directives/form-close.directive.mjs +0 -33
  75. package/esm2022/lib/directives/img-lazy.directive.mjs +0 -82
  76. package/esm2022/lib/directives/index.mjs +0 -42
  77. package/esm2022/lib/directives/intersection-observer.directive.mjs +0 -52
  78. package/esm2022/lib/directives/items-renderer.directive.mjs +0 -60
  79. package/esm2022/lib/directives/label-mandatory.directive.mjs +0 -49
  80. package/esm2022/lib/directives/load-external-files.directive.mjs +0 -38
  81. package/esm2022/lib/directives/mobile.directive.mjs +0 -30
  82. package/esm2022/lib/directives/nowraptext.directive.mjs +0 -27
  83. package/esm2022/lib/directives/numbers-only-input.directive.mjs +0 -27
  84. package/esm2022/lib/directives/placeHolder.directive.mjs +0 -16
  85. package/esm2022/lib/directives/prevent-default.directive.mjs +0 -21
  86. package/esm2022/lib/directives/print-files.directive.mjs +0 -39
  87. package/esm2022/lib/directives/render-ulv-paging.directive.mjs +0 -81
  88. package/esm2022/lib/directives/render-ulv-viewer.directive.mjs +0 -76
  89. package/esm2022/lib/directives/render-ulv.directive.mjs +0 -52
  90. package/esm2022/lib/directives/route-form-change.directive.mjs +0 -38
  91. package/esm2022/lib/directives/save-image.directive.mjs +0 -28
  92. package/esm2022/lib/directives/splide-slider.directive.mjs +0 -113
  93. package/esm2022/lib/directives/stop-propagation.directive.mjs +0 -21
  94. package/esm2022/lib/directives/table-resizer.directive.mjs +0 -236
  95. package/esm2022/lib/directives/ulv-command.directive.mjs +0 -43
  96. package/esm2022/lib/directives/until-inview.directive.mjs +0 -53
  97. package/esm2022/lib/directives/webotp.directive.mjs +0 -49
  98. package/esm2022/lib/directives/workflow-choice-command.directive.mjs +0 -61
  99. package/esm2022/lib/dynamic-component/base-dynamic.component.mjs +0 -97
  100. package/esm2022/lib/dynamic-component/base-form-toolbaritem-props.mjs +0 -53
  101. package/esm2022/lib/dynamic-component/base-item-content-props.mjs +0 -83
  102. package/esm2022/lib/dynamic-component/base-view-content-props.mjs +0 -27
  103. package/esm2022/lib/dynamic-component/base-view-item-props.mjs +0 -552
  104. package/esm2022/lib/dynamic-component/base-view-props.mjs +0 -163
  105. package/esm2022/lib/dynamic-component/dynamic-form-toolbar-item.component.mjs +0 -38
  106. package/esm2022/lib/dynamic-component/dynamic-form.component.mjs +0 -69
  107. package/esm2022/lib/dynamic-component/dynamic-item.component.mjs +0 -78
  108. package/esm2022/lib/dynamic-component/dynamic-layout.component.mjs +0 -64
  109. package/esm2022/lib/dynamic-component/index.mjs +0 -11
  110. package/esm2022/lib/empty-page/empty-page.component.mjs +0 -49
  111. package/esm2022/lib/empty-page-with-router-and-router-outlet/empty-page-with-router-and-router-outlet.component.mjs +0 -16
  112. package/esm2022/lib/field-ui/field-ui.component.mjs +0 -149
  113. package/esm2022/lib/form/form.component.mjs +0 -212
  114. package/esm2022/lib/form-new/form-new.component.mjs +0 -31
  115. package/esm2022/lib/form-page-routing/barsa-sap-ui-form-page-routing.module.mjs +0 -54
  116. package/esm2022/lib/form-page-routing/barsa-sap-ui-form-page.module.mjs +0 -29
  117. package/esm2022/lib/form-page-routing/constants.mjs +0 -9
  118. package/esm2022/lib/form-page-routing/index.mjs +0 -3
  119. package/esm2022/lib/from-intersection-observer.mjs +0 -53
  120. package/esm2022/lib/global-error-handler.mjs +0 -26
  121. package/esm2022/lib/injdection-tokens.mjs +0 -8
  122. package/esm2022/lib/modal-root.component.mjs +0 -34
  123. package/esm2022/lib/not-found/not-found.component.mjs +0 -16
  124. package/esm2022/lib/not-internet/not-internet.component.mjs +0 -21
  125. package/esm2022/lib/pipes/barsa-icon-dict.pipe.mjs +0 -20
  126. package/esm2022/lib/pipes/bbb-translate.pipe.mjs +0 -36
  127. package/esm2022/lib/pipes/can-upload.pipe.mjs +0 -27
  128. package/esm2022/lib/pipes/card-media-size.pipe.mjs +0 -21
  129. package/esm2022/lib/pipes/column-custom-component.pipe.mjs +0 -41
  130. package/esm2022/lib/pipes/column-customui.pipe.mjs +0 -33
  131. package/esm2022/lib/pipes/column-icon.pipe.mjs +0 -23
  132. package/esm2022/lib/pipes/column-value.pipe.mjs +0 -35
  133. package/esm2022/lib/pipes/column-valueof-parameters.pipe.mjs +0 -34
  134. package/esm2022/lib/pipes/combo-row-img.pipe.mjs +0 -17
  135. package/esm2022/lib/pipes/context-menu.pipe.mjs +0 -41
  136. package/esm2022/lib/pipes/control-ui.pipe.mjs +0 -32
  137. package/esm2022/lib/pipes/convert-to-style.pipe.mjs +0 -33
  138. package/esm2022/lib/pipes/date-time-to-caption.pipe.mjs +0 -35
  139. package/esm2022/lib/pipes/fileinfo-count.pipe.mjs +0 -21
  140. package/esm2022/lib/pipes/filter-columns-by-details.pipe.mjs +0 -23
  141. package/esm2022/lib/pipes/filter-inline-action-list.pipe.mjs +0 -19
  142. package/esm2022/lib/pipes/filter-string.pipe.mjs +0 -45
  143. package/esm2022/lib/pipes/filter-tab.pipe.mjs +0 -20
  144. package/esm2022/lib/pipes/filter-toolbar-control.pipe.mjs +0 -17
  145. package/esm2022/lib/pipes/filter-workflow-mobile.pipe.mjs +0 -25
  146. package/esm2022/lib/pipes/filter.pipe.mjs +0 -34
  147. package/esm2022/lib/pipes/find-column-by-db-name.pipe.mjs +0 -28
  148. package/esm2022/lib/pipes/find-preview-column.pipe.mjs +0 -20
  149. package/esm2022/lib/pipes/fiori-icon.pipe.mjs +0 -43
  150. package/esm2022/lib/pipes/groupby.pipe.mjs +0 -64
  151. package/esm2022/lib/pipes/header-facet-value.pipe.mjs +0 -23
  152. package/esm2022/lib/pipes/hide-accept-cancel-buttons.pipe.mjs +0 -24
  153. package/esm2022/lib/pipes/hide-columns-inmobile.pipe.mjs +0 -23
  154. package/esm2022/lib/pipes/index.mjs +0 -55
  155. package/esm2022/lib/pipes/isimage.pipe.mjs +0 -20
  156. package/esm2022/lib/pipes/list-count.pipe.mjs +0 -18
  157. package/esm2022/lib/pipes/merge-fields-to-columns.pipe.mjs +0 -43
  158. package/esm2022/lib/pipes/mo-info-ulv-data.pipe.mjs +0 -59
  159. package/esm2022/lib/pipes/mo-info-ulv-paging.pipe.mjs +0 -17
  160. package/esm2022/lib/pipes/mo-report-value-concat.pipe.mjs +0 -36
  161. package/esm2022/lib/pipes/mo-report-value.pipe.mjs +0 -18
  162. package/esm2022/lib/pipes/mo-value.pipe.mjs +0 -19
  163. package/esm2022/lib/pipes/multiple-groupby.pipe.mjs +0 -91
  164. package/esm2022/lib/pipes/numeral.pipe.mjs +0 -44
  165. package/esm2022/lib/pipes/picture-field-source.pipe.mjs +0 -23
  166. package/esm2022/lib/pipes/remove-newline.pipe.mjs +0 -21
  167. package/esm2022/lib/pipes/replace.pipe.mjs +0 -18
  168. package/esm2022/lib/pipes/reverse.pipe.mjs +0 -23
  169. package/esm2022/lib/pipes/rownumber.pipe.mjs +0 -26
  170. package/esm2022/lib/pipes/sanitize-text.pipe.mjs +0 -21
  171. package/esm2022/lib/pipes/seperator-fix.pipe.mjs +0 -24
  172. package/esm2022/lib/pipes/sort.pipe.mjs +0 -49
  173. package/esm2022/lib/pipes/string-to-number.pipe.mjs +0 -26
  174. package/esm2022/lib/pipes/th-image-icon.pipe.mjs +0 -22
  175. package/esm2022/lib/pipes/tlbButtons.pipe.mjs +0 -60
  176. package/esm2022/lib/pipes/toolbar-settings.pipe.mjs +0 -27
  177. package/esm2022/lib/pipes/total-summary.pipe.mjs +0 -17
  178. package/esm2022/lib/pipes/tree-item-isexpanded.pipe.mjs +0 -26
  179. package/esm2022/lib/pipes/visible-value.pipe.mjs +0 -19
  180. package/esm2022/lib/portal-page/portal-page.component.mjs +0 -24
  181. package/esm2022/lib/portal-page/portal-sidebar.component.mjs +0 -37
  182. package/esm2022/lib/redirect-home-guard.mjs +0 -51
  183. package/esm2022/lib/redirect-report-navigator-command/redirect-report-navigator-command.component.mjs +0 -12
  184. package/esm2022/lib/report-container/report-container.component.mjs +0 -63
  185. package/esm2022/lib/resizable-module/resizable.component.mjs +0 -31
  186. package/esm2022/lib/resizable-module/resizable.directive.mjs +0 -42
  187. package/esm2022/lib/resizable-module/resizable.module.mjs +0 -17
  188. package/esm2022/lib/resolvers/index.mjs +0 -7
  189. package/esm2022/lib/resolvers/login-settings.resolver.mjs +0 -18
  190. package/esm2022/lib/resolvers/portal-dynamic-page.resolver.mjs +0 -49
  191. package/esm2022/lib/resolvers/portal-form-page.resolver.mjs +0 -18
  192. package/esm2022/lib/resolvers/portal-page.resolver.mjs +0 -30
  193. package/esm2022/lib/resolvers/portal-report-page.resolver.mjs +0 -37
  194. package/esm2022/lib/resolvers/tile-group-breadcrumb.resolver.mjs +0 -30
  195. package/esm2022/lib/root-page/root-page.component.mjs +0 -21
  196. package/esm2022/lib/root-portal/root-portal.component.mjs +0 -236
  197. package/esm2022/lib/server-connection-error/server-connection-error.component.mjs +0 -19
  198. package/esm2022/lib/services/api.service.mjs +0 -63
  199. package/esm2022/lib/services/audio-recording.service.mjs +0 -95
  200. package/esm2022/lib/services/barsa-dialog.service.mjs +0 -80
  201. package/esm2022/lib/services/barsa-storage.service.mjs +0 -78
  202. package/esm2022/lib/services/breadcrumb.service.mjs +0 -64
  203. package/esm2022/lib/services/column.service.mjs +0 -20
  204. package/esm2022/lib/services/container.service.mjs +0 -69
  205. package/esm2022/lib/services/dynamic-component.service.mjs +0 -55
  206. package/esm2022/lib/services/form-panel.service.mjs +0 -394
  207. package/esm2022/lib/services/form.service.mjs +0 -14
  208. package/esm2022/lib/services/groupby.service.mjs +0 -21
  209. package/esm2022/lib/services/horizontal-layout.service.mjs +0 -16
  210. package/esm2022/lib/services/index.mjs +0 -32
  211. package/esm2022/lib/services/indexeddb.service.mjs +0 -34
  212. package/esm2022/lib/services/layout-main-content.service.mjs +0 -19
  213. package/esm2022/lib/services/layout.service.mjs +0 -42
  214. package/esm2022/lib/services/local-storage.service.mjs +0 -32
  215. package/esm2022/lib/services/log.service.mjs +0 -50
  216. package/esm2022/lib/services/network-status.service.mjs +0 -15
  217. package/esm2022/lib/services/notification-popup.service.mjs +0 -2
  218. package/esm2022/lib/services/notification-sw.service.mjs +0 -180
  219. package/esm2022/lib/services/notification.service.mjs +0 -189
  220. package/esm2022/lib/services/portal.service.mjs +0 -950
  221. package/esm2022/lib/services/prompt-update.service.mjs +0 -56
  222. package/esm2022/lib/services/routing.service.mjs +0 -60
  223. package/esm2022/lib/services/save-scoll-position.service.mjs +0 -29
  224. package/esm2022/lib/services/service-worker-communication.service.mjs +0 -120
  225. package/esm2022/lib/services/tabpage.service.mjs +0 -13
  226. package/esm2022/lib/services/toast.service.mjs +0 -2
  227. package/esm2022/lib/services/ui.service.mjs +0 -23
  228. package/esm2022/lib/services/ulvmain.service.mjs +0 -824
  229. package/esm2022/lib/services/upload.service.mjs +0 -166
  230. package/esm2022/lib/services/video-recording.service.mjs +0 -115
  231. package/esm2022/lib/unlimit-session/unlimit-session.component.mjs +0 -40
  232. package/esm2022/public-api.mjs +0 -42
@@ -1,56 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { filter, interval } from 'rxjs';
3
- import { BarsaApi } from '../abstract-classes';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "./log.service";
6
- import * as i2 from "@angular/service-worker";
7
- export class PromptUpdateService {
8
- constructor(_logService, swUpdate) {
9
- this._logService = _logService;
10
- this.swUpdate = swUpdate;
11
- _logService.info(`sw enable ${swUpdate.isEnabled}`);
12
- if (swUpdate.isEnabled) {
13
- swUpdate.checkForUpdate();
14
- _logService.info('sw check for update');
15
- swUpdate.unrecoverable.subscribe((event) => {
16
- // TODO: handle unrecoverable
17
- alert('An error occurred that we cannot recover from:\n' + event.reason + '\n\nPlease reload the page.');
18
- document.location.reload();
19
- });
20
- interval(1e3 * 60 * 60).subscribe(() => swUpdate.checkForUpdate());
21
- }
22
- }
23
- checkForUpdate() {
24
- this.swUpdate.versionUpdates
25
- .pipe(filter((evt) => evt.type === 'VERSION_READY'))
26
- .subscribe((evt) => {
27
- this._logService.info('sw new version found.');
28
- this.promptUser(() => {
29
- // Reload the page to update to the latest version.
30
- document.location.reload();
31
- });
32
- });
33
- }
34
- promptUser(callback) {
35
- setTimeout(() => {
36
- BarsaApi.Bw.Msg.YesNo(BarsaApi.BBB.NewVersionFound, BarsaApi.BBB.UpdateApplication, function (buttonId) {
37
- if (buttonId === 'yes') {
38
- return callback();
39
- }
40
- });
41
- }, 1000);
42
- }
43
- showError(callback) {
44
- BarsaApi.Bw.Msg.Error(BarsaApi.BBB.Error, BarsaApi.BBB.NeedReload, function (buttonId) {
45
- if (buttonId === 'yes') {
46
- return callback();
47
- }
48
- });
49
- }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PromptUpdateService, deps: [{ token: i1.LogService }, { token: i2.SwUpdate }], target: i0.ɵɵFactoryTarget.Injectable }); }
51
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PromptUpdateService }); }
52
- }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PromptUpdateService, decorators: [{
54
- type: Injectable
55
- }], ctorParameters: () => [{ type: i1.LogService }, { type: i2.SwUpdate }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbXB0LXVwZGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9wcm9tcHQtdXBkYXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFJL0MsTUFBTSxPQUFPLG1CQUFtQjtJQUM1QixZQUFvQixXQUF1QixFQUFVLFFBQWtCO1FBQW5ELGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNuRSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDcEQsSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDckIsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBRTFCLFdBQVcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUV4QyxRQUFRLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUN2Qyw2QkFBNkI7Z0JBQzdCLEtBQUssQ0FDRCxrREFBa0QsR0FBRyxLQUFLLENBQUMsTUFBTSxHQUFHLDZCQUE2QixDQUNwRyxDQUFDO2dCQUNGLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDL0IsQ0FBQyxDQUFDLENBQUM7WUFDSCxRQUFRLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQztJQUNMLENBQUM7SUFDRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjO2FBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQTRCLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxDQUFDO2FBQzdFLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQztZQUUvQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDakIsbURBQW1EO2dCQUNuRCxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9CLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBQ0QsVUFBVSxDQUFDLFFBQVE7UUFDZixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osUUFBUSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxRQUFRO2dCQUNsRyxJQUFJLFFBQVEsS0FBSyxLQUFLLEVBQUUsQ0FBQztvQkFDckIsT0FBTyxRQUFRLEVBQUUsQ0FBQztnQkFDdEIsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUNELFNBQVMsQ0FBQyxRQUFRO1FBQ2QsUUFBUSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLFVBQVUsUUFBUTtZQUNqRixJQUFJLFFBQVEsS0FBSyxLQUFLLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxRQUFRLEVBQUUsQ0FBQztZQUN0QixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOytHQTdDUSxtQkFBbUI7bUhBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3dVcGRhdGUsIFZlcnNpb25SZWFkeUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvc2VydmljZS13b3JrZXInO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIGludGVydmFsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi4vYWJzdHJhY3QtY2xhc3Nlcyc7XHJcbmltcG9ydCB7IExvZ1NlcnZpY2UgfSBmcm9tICcuL2xvZy5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFByb21wdFVwZGF0ZVNlcnZpY2Uge1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfbG9nU2VydmljZTogTG9nU2VydmljZSwgcHJpdmF0ZSBzd1VwZGF0ZTogU3dVcGRhdGUpIHtcclxuICAgICAgICBfbG9nU2VydmljZS5pbmZvKGBzdyBlbmFibGUgJHtzd1VwZGF0ZS5pc0VuYWJsZWR9YCk7XHJcbiAgICAgICAgaWYgKHN3VXBkYXRlLmlzRW5hYmxlZCkge1xyXG4gICAgICAgICAgICBzd1VwZGF0ZS5jaGVja0ZvclVwZGF0ZSgpO1xyXG5cclxuICAgICAgICAgICAgX2xvZ1NlcnZpY2UuaW5mbygnc3cgY2hlY2sgZm9yIHVwZGF0ZScpO1xyXG5cclxuICAgICAgICAgICAgc3dVcGRhdGUudW5yZWNvdmVyYWJsZS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAvLyBUT0RPOiBoYW5kbGUgdW5yZWNvdmVyYWJsZVxyXG4gICAgICAgICAgICAgICAgYWxlcnQoXHJcbiAgICAgICAgICAgICAgICAgICAgJ0FuIGVycm9yIG9jY3VycmVkIHRoYXQgd2UgY2Fubm90IHJlY292ZXIgZnJvbTpcXG4nICsgZXZlbnQucmVhc29uICsgJ1xcblxcblBsZWFzZSByZWxvYWQgdGhlIHBhZ2UuJ1xyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgaW50ZXJ2YWwoMWUzICogNjAgKiA2MCkuc3Vic2NyaWJlKCgpID0+IHN3VXBkYXRlLmNoZWNrRm9yVXBkYXRlKCkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGNoZWNrRm9yVXBkYXRlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc3dVcGRhdGUudmVyc2lvblVwZGF0ZXNcclxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKChldnQpOiBldnQgaXMgVmVyc2lvblJlYWR5RXZlbnQgPT4gZXZ0LnR5cGUgPT09ICdWRVJTSU9OX1JFQURZJykpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2dCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fbG9nU2VydmljZS5pbmZvKCdzdyBuZXcgdmVyc2lvbiBmb3VuZC4nKTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLnByb21wdFVzZXIoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIFJlbG9hZCB0aGUgcGFnZSB0byB1cGRhdGUgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLlxyXG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcHJvbXB0VXNlcihjYWxsYmFjayk6IHZvaWQge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBCYXJzYUFwaS5Cdy5Nc2cuWWVzTm8oQmFyc2FBcGkuQkJCLk5ld1ZlcnNpb25Gb3VuZCwgQmFyc2FBcGkuQkJCLlVwZGF0ZUFwcGxpY2F0aW9uLCBmdW5jdGlvbiAoYnV0dG9uSWQpIHtcclxuICAgICAgICAgICAgICAgIGlmIChidXR0b25JZCA9PT0gJ3llcycpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSwgMTAwMCk7XHJcbiAgICB9XHJcbiAgICBzaG93RXJyb3IoY2FsbGJhY2spOiB2b2lkIHtcclxuICAgICAgICBCYXJzYUFwaS5Cdy5Nc2cuRXJyb3IoQmFyc2FBcGkuQkJCLkVycm9yLCBCYXJzYUFwaS5CQkIuTmVlZFJlbG9hZCwgZnVuY3Rpb24gKGJ1dHRvbklkKSB7XHJcbiAgICAgICAgICAgIGlmIChidXR0b25JZCA9PT0gJ3llcycpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjaygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,60 +0,0 @@
1
- import { inject, Injectable, Optional, SkipSelf } from '@angular/core';
2
- import { ActivatedRoute, Router } from '@angular/router';
3
- import { BarsaApi } from '../abstract-classes';
4
- import * as i0 from "@angular/core";
5
- export class RoutingService {
6
- constructor(_parentService) {
7
- this.oldActiveSystem = null;
8
- this._activatedRoute = inject(ActivatedRoute);
9
- this.router = inject(Router);
10
- this.isSidebar = false;
11
- this._Object = {
12
- ShowSystemContainerPage: (navItem) => {
13
- if (navItem.DynamicCommand) {
14
- const logParams = { CommandId: navItem.FolderId };
15
- const finish = BarsaApi.Common.LogManager.StartLog('Navigator.Command', logParams);
16
- const e = { Command: navItem, DynamicSetting: navItem.DynamicCommand };
17
- BarsaApi.Common.CustomCodeManager.RunDynamicCommand(navItem.Id, e, finish);
18
- BarsaApi.Common.LogManager.EndLog();
19
- }
20
- else {
21
- const repId = navItem.ReportId ? `__${navItem.ReportId}` : '';
22
- if (this.handleReport) {
23
- const skip = this.handleReport(repId, navItem.Id);
24
- if (skip) {
25
- return;
26
- }
27
- }
28
- if (this.isSidebar) {
29
- this.router.navigate([
30
- {
31
- outlets: {
32
- mainside: ['report', `${navItem.Id}__${navItem.Caption}${repId}__null__false`]
33
- }
34
- }
35
- ], { relativeTo: this._activatedRoute });
36
- return;
37
- }
38
- this.router.navigate(['report', `${navItem.Id}__${navItem.Caption}${repId}`], {
39
- relativeTo: this._activatedRoute
40
- });
41
- }
42
- }
43
- };
44
- this.oldActiveSystem = BarsaApi.Bw.App.GetActiveSystem;
45
- BarsaApi.Bw.App.GetActiveSystem = () => this;
46
- }
47
- ngOnDestroy() {
48
- BarsaApi.Bw.App.GetActiveSystem = this.oldActiveSystem;
49
- }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RoutingService, deps: [{ token: RoutingService, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
51
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RoutingService }); }
52
- }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RoutingService, decorators: [{
54
- type: Injectable
55
- }], ctorParameters: () => [{ type: RoutingService, decorators: [{
56
- type: SkipSelf
57
- }, {
58
- type: Optional
59
- }] }] });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9yb3V0aW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFL0MsTUFBTSxPQUFPLGNBQWM7SUF5Q3ZCLFlBQW9DLGNBQThCO1FBeENsRSxvQkFBZSxHQUFlLElBQUksQ0FBQztRQUNuQyxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6QyxXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsWUFBTyxHQUFHO1lBQ04sdUJBQXVCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDakMsSUFBSSxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQ3pCLE1BQU0sU0FBUyxHQUFHLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDbEQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLFNBQVMsQ0FBQyxDQUFDO29CQUNuRixNQUFNLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztvQkFDdkUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztvQkFDM0UsUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3hDLENBQUM7cUJBQU0sQ0FBQztvQkFDSixNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUM5RCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzt3QkFDcEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUNsRCxJQUFJLElBQUksRUFBRSxDQUFDOzRCQUNQLE9BQU87d0JBQ1gsQ0FBQztvQkFDTCxDQUFDO29CQUNELElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO3dCQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FDaEI7NEJBQ0k7Z0NBQ0ksT0FBTyxFQUFFO29DQUNMLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLE9BQU8sR0FBRyxLQUFLLGVBQWUsQ0FBQztpQ0FDakY7NkJBQ0o7eUJBQ0osRUFDRCxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQ3ZDLENBQUM7d0JBQ0YsT0FBTztvQkFDWCxDQUFDO29CQUNELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsT0FBTyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUU7d0JBQzFFLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZTtxQkFDbkMsQ0FBQyxDQUFDO2dCQUNQLENBQUM7WUFDTCxDQUFDO1NBQ0osQ0FBQztRQUVFLElBQUksQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDO1FBQ3ZELFFBQVEsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDakQsQ0FBQztJQUNELFdBQVc7UUFDUCxRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUMzRCxDQUFDOytHQS9DUSxjQUFjO21IQUFkLGNBQWM7OzRGQUFkLGNBQWM7a0JBRDFCLFVBQVU7OzBCQTBDTSxRQUFROzswQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQmFyc2FBcGkgfSBmcm9tICcuLi9hYnN0cmFjdC1jbGFzc2VzJztcclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgUm91dGluZ1NlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gICAgb2xkQWN0aXZlU3lzdGVtOiBhbnkgfCBudWxsID0gbnVsbDtcclxuICAgIF9hY3RpdmF0ZWRSb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XHJcbiAgICByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuICAgIGlzU2lkZWJhciA9IGZhbHNlO1xyXG4gICAgaGFuZGxlUmVwb3J0OiAocmVwSWQ6IHN0cmluZywgbmF2SWQ6IHN0cmluZykgPT4gYm9vbGVhbjtcclxuICAgIF9PYmplY3QgPSB7XHJcbiAgICAgICAgU2hvd1N5c3RlbUNvbnRhaW5lclBhZ2U6IChuYXZJdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChuYXZJdGVtLkR5bmFtaWNDb21tYW5kKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBsb2dQYXJhbXMgPSB7IENvbW1hbmRJZDogbmF2SXRlbS5Gb2xkZXJJZCB9O1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZmluaXNoID0gQmFyc2FBcGkuQ29tbW9uLkxvZ01hbmFnZXIuU3RhcnRMb2coJ05hdmlnYXRvci5Db21tYW5kJywgbG9nUGFyYW1zKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGUgPSB7IENvbW1hbmQ6IG5hdkl0ZW0sIER5bmFtaWNTZXR0aW5nOiBuYXZJdGVtLkR5bmFtaWNDb21tYW5kIH07XHJcbiAgICAgICAgICAgICAgICBCYXJzYUFwaS5Db21tb24uQ3VzdG9tQ29kZU1hbmFnZXIuUnVuRHluYW1pY0NvbW1hbmQobmF2SXRlbS5JZCwgZSwgZmluaXNoKTtcclxuICAgICAgICAgICAgICAgIEJhcnNhQXBpLkNvbW1vbi5Mb2dNYW5hZ2VyLkVuZExvZygpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcmVwSWQgPSBuYXZJdGVtLlJlcG9ydElkID8gYF9fJHtuYXZJdGVtLlJlcG9ydElkfWAgOiAnJztcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhhbmRsZVJlcG9ydCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNraXAgPSB0aGlzLmhhbmRsZVJlcG9ydChyZXBJZCwgbmF2SXRlbS5JZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNraXApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzU2lkZWJhcikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGV0czoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWluc2lkZTogWydyZXBvcnQnLCBgJHtuYXZJdGVtLklkfV9fJHtuYXZJdGVtLkNhcHRpb259JHtyZXBJZH1fX251bGxfX2ZhbHNlYF1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgcmVsYXRpdmVUbzogdGhpcy5fYWN0aXZhdGVkUm91dGUgfVxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydyZXBvcnQnLCBgJHtuYXZJdGVtLklkfV9fJHtuYXZJdGVtLkNhcHRpb259JHtyZXBJZH1gXSwge1xyXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMuX2FjdGl2YXRlZFJvdXRlXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH07XHJcbiAgICBjb25zdHJ1Y3RvcihAU2tpcFNlbGYoKSBAT3B0aW9uYWwoKSBfcGFyZW50U2VydmljZTogUm91dGluZ1NlcnZpY2UpIHtcclxuICAgICAgICB0aGlzLm9sZEFjdGl2ZVN5c3RlbSA9IEJhcnNhQXBpLkJ3LkFwcC5HZXRBY3RpdmVTeXN0ZW07XHJcbiAgICAgICAgQmFyc2FBcGkuQncuQXBwLkdldEFjdGl2ZVN5c3RlbSA9ICgpID0+IHRoaXM7XHJcbiAgICB9XHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICBCYXJzYUFwaS5Cdy5BcHAuR2V0QWN0aXZlU3lzdGVtID0gdGhpcy5vbGRBY3RpdmVTeXN0ZW07XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,29 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export class SaveScrollPositionService {
5
- constructor() {
6
- this._scrollPositionSource = new BehaviorSubject({
7
- key: 'body',
8
- scrollTop: 0
9
- });
10
- }
11
- get scrollPosition$() {
12
- return this._scrollPositionSource.asObservable();
13
- }
14
- getScrollPosition(key) {
15
- const val = this._scrollPositionSource.getValue();
16
- return val[key];
17
- }
18
- setScrollPosition(key, scrollTop) {
19
- const value = this._scrollPositionSource.getValue();
20
- value[key] = scrollTop;
21
- this._scrollPositionSource.next(value);
22
- }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SaveScrollPositionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
24
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SaveScrollPositionService }); }
25
- }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SaveScrollPositionService, decorators: [{
27
- type: Injectable
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1zY29sbC1wb3NpdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9zYXZlLXNjb2xsLXBvc2l0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUduRCxNQUFNLE9BQU8seUJBQXlCO0lBRHRDO1FBRVksMEJBQXFCLEdBQUcsSUFBSSxlQUFlLENBQXFDO1lBQ3BGLEdBQUcsRUFBRSxNQUFNO1lBQ1gsU0FBUyxFQUFFLENBQUM7U0FDZixDQUFDLENBQUM7S0FhTjtJQVpHLElBQUksZUFBZTtRQUNmLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JELENBQUM7SUFDRCxpQkFBaUIsQ0FBQyxHQUFXO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNsRCxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBQ0QsaUJBQWlCLENBQUMsR0FBVyxFQUFFLFNBQWlCO1FBQzVDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNwRCxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQzsrR0FoQlEseUJBQXlCO21IQUF6Qix5QkFBeUI7OzRGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2F2ZVNjcm9sbFBvc2l0aW9uU2VydmljZSB7XG4gICAgcHJpdmF0ZSBfc2Nyb2xsUG9zaXRpb25Tb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsga2V5OiBzdHJpbmc7IHNjcm9sbFRvcDogbnVtYmVyIH0+KHtcbiAgICAgICAga2V5OiAnYm9keScsXG4gICAgICAgIHNjcm9sbFRvcDogMFxuICAgIH0pO1xuICAgIGdldCBzY3JvbGxQb3NpdGlvbiQoKTogT2JzZXJ2YWJsZTx7IGtleTogc3RyaW5nOyBzY3JvbGxUb3A6IG51bWJlciB9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxQb3NpdGlvblNvdXJjZS5hc09ic2VydmFibGUoKTtcbiAgICB9XG4gICAgZ2V0U2Nyb2xsUG9zaXRpb24oa2V5OiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWwgPSB0aGlzLl9zY3JvbGxQb3NpdGlvblNvdXJjZS5nZXRWYWx1ZSgpO1xuICAgICAgICByZXR1cm4gdmFsW2tleV07XG4gICAgfVxuICAgIHNldFNjcm9sbFBvc2l0aW9uKGtleTogc3RyaW5nLCBzY3JvbGxUb3A6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX3Njcm9sbFBvc2l0aW9uU291cmNlLmdldFZhbHVlKCk7XG4gICAgICAgIHZhbHVlW2tleV0gPSBzY3JvbGxUb3A7XG4gICAgICAgIHRoaXMuX3Njcm9sbFBvc2l0aW9uU291cmNlLm5leHQodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,120 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BarsaApi } from '../abstract-classes';
3
- import { HttpHeaders } from '@angular/common/http';
4
- import { catchError, concatMap, finalize, from, throwError } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "./local-storage.service";
7
- import * as i2 from "./log.service";
8
- import * as i3 from "./portal.service";
9
- import * as i4 from "@angular/service-worker";
10
- import * as i5 from "@angular/common/http";
11
- export class ServiceWorkerCommuncationService {
12
- constructor(_localStorage, _logService, _portalService, _swPush, _httpClient) {
13
- this._localStorage = _localStorage;
14
- this._logService = _logService;
15
- this._portalService = _portalService;
16
- this._swPush = _swPush;
17
- this._httpClient = _httpClient;
18
- }
19
- get token2() {
20
- return this._localStorage.getItem(BarsaApi.LoginAction.token2StorageKey) ?? '';
21
- }
22
- get httpOptions() {
23
- return {
24
- headers: new HttpHeaders({
25
- 'Content-Type': 'application/json',
26
- sth: this.token2
27
- })
28
- };
29
- }
30
- init() {
31
- BarsaApi.Ul.ApplicationCtrlr.on({
32
- UserLoggedout: (_, doReturn) => {
33
- this._handlePushUnSubscription(doReturn);
34
- }
35
- });
36
- if (!navigator.serviceWorker) {
37
- return;
38
- }
39
- navigator.serviceWorker.ready.then((registration) => {
40
- if (registration.active) {
41
- this._serviceWorker = registration.active;
42
- this._subscribe();
43
- }
44
- });
45
- }
46
- _testSend(subscription) {
47
- setTimeout(() => {
48
- this._httpClient.post('/api/pushnotification/send', subscription, this.httpOptions).subscribe();
49
- }, 5000);
50
- }
51
- _initPushSubscription() {
52
- this._httpClient
53
- .get('/api/pushnotification/publickey', { responseType: 'text' })
54
- .pipe(concatMap((publicKey) => from(this._swPush.requestSubscription({
55
- serverPublicKey: publicKey
56
- }))), concatMap((subscription) => this._httpClient.post('/api/pushnotification/add', subscription, this.httpOptions)), catchError((err) => {
57
- this._logService.error(err);
58
- return throwError(() => err);
59
- }))
60
- .subscribe();
61
- }
62
- _handlePushUnSubscription(doReturn) {
63
- if (!this._subscription) {
64
- return doReturn && doReturn();
65
- }
66
- this._httpClient
67
- .post('/api/pushnotification/delete', this._subscription, this.httpOptions)
68
- .pipe(concatMap(() => from(this._swPush.unsubscribe())), catchError((err) => {
69
- this._logService.error(err);
70
- doReturn && doReturn();
71
- return throwError(() => new Error(err));
72
- }), finalize(() => {
73
- doReturn && doReturn();
74
- }))
75
- .subscribe();
76
- }
77
- _handlePushSubscirption() {
78
- this._swPush.subscription.subscribe((subscription) => {
79
- this._subscription = subscription;
80
- this.operationName = this._subscription === null ? 'Subscribe' : 'Unsubscribe';
81
- });
82
- }
83
- _subscribe() {
84
- this._portalService.userLoggedIn$.pipe().subscribe((isLoggedIn) => this._isLoggedIn(isLoggedIn));
85
- this._portalService.documentVisibilitychange$
86
- .pipe()
87
- .subscribe((visibilitychange) => this._visibilitychange(visibilitychange));
88
- this._handlePushSubscirption();
89
- }
90
- _setDefaultOptions() {
91
- const token2 = this.token2;
92
- const lang = BarsaApi.LoginFormData.Culture;
93
- const dir = BarsaApi.LoginFormData.IsRtl ? 'rtl' : 'ltr';
94
- this._postServiceWorker({ event: 'setOptions', options: { token2, lang, dir } });
95
- }
96
- _isLoggedIn(isLoggedIn) {
97
- this._postServiceWorker({ event: 'isLoggedInChange', options: { isLoggedIn } });
98
- if (isLoggedIn) {
99
- this._setDefaultOptions();
100
- this._initPushSubscription();
101
- }
102
- }
103
- _visibilitychange(documentIsHidden) {
104
- this._postServiceWorker({ event: 'visibilitychange', options: { documentIsHidden } });
105
- }
106
- _postServiceWorker(message) {
107
- // console.log(`post message to sw ${JSON.stringify(message, null, 2)}`);
108
- if (!this._serviceWorker) {
109
- this._logService.warn(`service worker is undefined.`);
110
- return;
111
- }
112
- this._serviceWorker.postMessage(message);
113
- }
114
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ServiceWorkerCommuncationService, deps: [{ token: i1.LocalStorageService }, { token: i2.LogService }, { token: i3.PortalService }, { token: i4.SwPush }, { token: i5.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
115
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ServiceWorkerCommuncationService }); }
116
- }
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ServiceWorkerCommuncationService, decorators: [{
118
- type: Injectable
119
- }], ctorParameters: () => [{ type: i1.LocalStorageService }, { type: i2.LogService }, { type: i3.PortalService }, { type: i4.SwPush }, { type: i5.HttpClient }] });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS13b3JrZXItY29tbXVuaWNhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9zZXJ2aWNlLXdvcmtlci1jb21tdW5pY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHL0MsT0FBTyxFQUFjLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBR3pFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFNekMsWUFDWSxhQUFrQyxFQUNsQyxXQUF1QixFQUN2QixjQUE2QixFQUM3QixPQUFlLEVBQ2YsV0FBdUI7UUFKdkIsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2xDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtJQUNoQyxDQUFDO0lBQ0osSUFBVyxNQUFNO1FBQ2IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25GLENBQUM7SUFDRCxJQUFXLFdBQVc7UUFDbEIsT0FBTztZQUNILE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQztnQkFDckIsY0FBYyxFQUFFLGtCQUFrQjtnQkFDbEMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNO2FBQ25CLENBQUM7U0FD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a0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hGLElBQUksVUFBVSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNqQyxDQUFDO0lBQ0wsQ0FBQztJQUNTLGlCQUFpQixDQUFDLGdCQUF5QjtRQUNqRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUNTLGtCQUFrQixDQUFDLE9BQU87UUFDaEMseUVBQXlFO1FBQ3pFLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsOEJBQThCLENBQUMsQ0FBQztZQUN0RCxPQUFPO1FBQ1gsQ0FBQztRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBN0hRLGdDQUFnQzttSEFBaEMsZ0NBQWdDOzs0RkFBaEMsZ0NBQWdDO2tCQUQ1QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSAnLi9sb2cuc2VydmljZSc7XHJcbmltcG9ydCB7IFBvcnRhbFNlcnZpY2UgfSBmcm9tICcuL3BvcnRhbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFyc2FBcGkgfSBmcm9tICcuLi9hYnN0cmFjdC1jbGFzc2VzJztcclxuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3dQdXNoIH0gZnJvbSAnQGFuZ3VsYXIvc2VydmljZS13b3JrZXInO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgY29uY2F0TWFwLCBmaW5hbGl6ZSwgZnJvbSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU2VydmljZVdvcmtlckNvbW11bmNhdGlvblNlcnZpY2Uge1xyXG4gICAgX3NlcnZpY2VXb3JrZXI6IFNlcnZpY2VXb3JrZXI7XHJcbiAgICBfaGlkZGVuOiBib29sZWFuO1xyXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uOiBQdXNoU3Vic2NyaXB0aW9uIHwgbnVsbDtcclxuICAgIG9wZXJhdGlvbk5hbWU6IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9sb2NhbFN0b3JhZ2U6IExvY2FsU3RvcmFnZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfbG9nU2VydmljZTogTG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3N3UHVzaDogU3dQdXNoLFxyXG4gICAgICAgIHByaXZhdGUgX2h0dHBDbGllbnQ6IEh0dHBDbGllbnRcclxuICAgICkge31cclxuICAgIHB1YmxpYyBnZXQgdG9rZW4yKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsU3RvcmFnZS5nZXRJdGVtKEJhcnNhQXBpLkxvZ2luQWN0aW9uLnRva2VuMlN0b3JhZ2VLZXkpID8/ICcnO1xyXG4gICAgfVxyXG4gICAgcHVibGljIGdldCBodHRwT3B0aW9ucygpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAgICAgICAgICAgc3RoOiB0aGlzLnRva2VuMlxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbiAgICBwdWJsaWMgaW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBCYXJzYUFwaS5VbC5BcHBsaWNhdGlvbkN0cmxyLm9uKHtcclxuICAgICAgICAgICAgVXNlckxvZ2dlZG91dDogKF8sIGRvUmV0dXJuKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9oYW5kbGVQdXNoVW5TdWJzY3JpcHRpb24oZG9SZXR1cm4pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKCFuYXZpZ2F0b3Iuc2VydmljZVdvcmtlcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlYWR5LnRoZW4oKHJlZ2lzdHJhdGlvbikgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVnaXN0cmF0aW9uLmFjdGl2ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fc2VydmljZVdvcmtlciA9IHJlZ2lzdHJhdGlvbi5hY3RpdmU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zdWJzY3JpYmUoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Rlc3RTZW5kKHN1YnNjcmlwdGlvbik6IHZvaWQge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9odHRwQ2xpZW50LnBvc3QoJy9hcGkvcHVzaG5vdGlmaWNhdGlvbi9zZW5kJywgc3Vic2NyaXB0aW9uLCB0aGlzLmh0dHBPcHRpb25zKS5zdWJzY3JpYmUoKTtcclxuICAgICAgICB9LCA1MDAwKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9pbml0UHVzaFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9odHRwQ2xpZW50XHJcbiAgICAgICAgICAgIC5nZXQoJy9hcGkvcHVzaG5vdGlmaWNhdGlvbi9wdWJsaWNrZXknLCB7IHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgY29uY2F0TWFwKChwdWJsaWNLZXkpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgZnJvbShcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3dQdXNoLnJlcXVlc3RTdWJzY3JpcHRpb24oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyUHVibGljS2V5OiBwdWJsaWNLZXlcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAgICAgY29uY2F0TWFwKChzdWJzY3JpcHRpb24pID0+XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faHR0cENsaWVudC5wb3N0KCcvYXBpL3B1c2hub3RpZmljYXRpb24vYWRkJywgc3Vic2NyaXB0aW9uLCB0aGlzLmh0dHBPcHRpb25zKVxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2xvZ1NlcnZpY2UuZXJyb3IoZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIF9oYW5kbGVQdXNoVW5TdWJzY3JpcHRpb24oZG9SZXR1cm4/KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9zdWJzY3JpcHRpb24pIHtcclxuICAgICAgICAgICAgcmV0dXJuIGRvUmV0dXJuICYmIGRvUmV0dXJuKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2h0dHBDbGllbnRcclxuICAgICAgICAgICAgLnBvc3QoJy9hcGkvcHVzaG5vdGlmaWNhdGlvbi9kZWxldGUnLCB0aGlzLl9zdWJzY3JpcHRpb24sIHRoaXMuaHR0cE9wdGlvbnMpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgY29uY2F0TWFwKCgpID0+IGZyb20odGhpcy5fc3dQdXNoLnVuc3Vic2NyaWJlKCkpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2xvZ1NlcnZpY2UuZXJyb3IoZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICBkb1JldHVybiAmJiBkb1JldHVybigpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcihlcnIpKTtcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRvUmV0dXJuICYmIGRvUmV0dXJuKCk7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfaGFuZGxlUHVzaFN1YnNjaXJwdGlvbigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9zd1B1c2guc3Vic2NyaXB0aW9uLnN1YnNjcmliZSgoc3Vic2NyaXB0aW9uKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHN1YnNjcmlwdGlvbjtcclxuICAgICAgICAgICAgdGhpcy5vcGVyYXRpb25OYW1lID0gdGhpcy5fc3Vic2NyaXB0aW9uID09PSBudWxsID8gJ1N1YnNjcmliZScgOiAnVW5zdWJzY3JpYmUnO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zdWJzY3JpYmUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS51c2VyTG9nZ2VkSW4kLnBpcGUoKS5zdWJzY3JpYmUoKGlzTG9nZ2VkSW4pID0+IHRoaXMuX2lzTG9nZ2VkSW4oaXNMb2dnZWRJbikpO1xyXG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UuZG9jdW1lbnRWaXNpYmlsaXR5Y2hhbmdlJFxyXG4gICAgICAgICAgICAucGlwZSgpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZpc2liaWxpdHljaGFuZ2UpID0+IHRoaXMuX3Zpc2liaWxpdHljaGFuZ2UodmlzaWJpbGl0eWNoYW5nZSkpO1xyXG4gICAgICAgIHRoaXMuX2hhbmRsZVB1c2hTdWJzY2lycHRpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgX3NldERlZmF1bHRPcHRpb25zKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHRva2VuMiA9IHRoaXMudG9rZW4yO1xyXG4gICAgICAgIGNvbnN0IGxhbmcgPSBCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmU7XHJcbiAgICAgICAgY29uc3QgZGlyID0gQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1J0bCA/ICdydGwnIDogJ2x0cic7XHJcblxyXG4gICAgICAgIHRoaXMuX3Bvc3RTZXJ2aWNlV29ya2VyKHsgZXZlbnQ6ICdzZXRPcHRpb25zJywgb3B0aW9uczogeyB0b2tlbjIsIGxhbmcsIGRpciB9IH0pO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9pc0xvZ2dlZEluKGlzTG9nZ2VkSW46IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9wb3N0U2VydmljZVdvcmtlcih7IGV2ZW50OiAnaXNMb2dnZWRJbkNoYW5nZScsIG9wdGlvbnM6IHsgaXNMb2dnZWRJbiB9IH0pO1xyXG4gICAgICAgIGlmIChpc0xvZ2dlZEluKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldERlZmF1bHRPcHRpb25zKCk7XHJcbiAgICAgICAgICAgIHRoaXMuX2luaXRQdXNoU3Vic2NyaXB0aW9uKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF92aXNpYmlsaXR5Y2hhbmdlKGRvY3VtZW50SXNIaWRkZW46IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9wb3N0U2VydmljZVdvcmtlcih7IGV2ZW50OiAndmlzaWJpbGl0eWNoYW5nZScsIG9wdGlvbnM6IHsgZG9jdW1lbnRJc0hpZGRlbiB9IH0pO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9wb3N0U2VydmljZVdvcmtlcihtZXNzYWdlKTogdm9pZCB7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coYHBvc3QgbWVzc2FnZSB0byBzdyAke0pTT04uc3RyaW5naWZ5KG1lc3NhZ2UsIG51bGwsIDIpfWApO1xyXG4gICAgICAgIGlmICghdGhpcy5fc2VydmljZVdvcmtlcikge1xyXG4gICAgICAgICAgICB0aGlzLl9sb2dTZXJ2aWNlLndhcm4oYHNlcnZpY2Ugd29ya2VyIGlzIHVuZGVmaW5lZC5gKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9zZXJ2aWNlV29ya2VyLnBvc3RNZXNzYWdlKG1lc3NhZ2UpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,13 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class TabpageService {
4
- setItemCount(itemCount) {
5
- this.itemCount = itemCount;
6
- }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabpageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabpageService }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabpageService, decorators: [{
11
- type: Injectable
12
- }] });
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicGFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy90YWJwYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLGNBQWM7SUFFdkIsWUFBWSxDQUFDLFNBQVM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDL0IsQ0FBQzsrR0FKUSxjQUFjO21IQUFkLGNBQWM7OzRGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUYWJwYWdlU2VydmljZSB7XHJcbiAgICBpdGVtQ291bnQ6IG51bWJlcjtcclxuICAgIHNldEl0ZW1Db3VudChpdGVtQ291bnQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLml0ZW1Db3VudCA9IGl0ZW1Db3VudDtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvc2VydmljZXMvdG9hc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUb2FzdFNlcnZpY2Uge1xuICAgIG9wZW4obXNnLCBvcHRpb24/OiBhbnkpO1xufVxuIl19
@@ -1,23 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export class UiService {
5
- constructor() {
6
- this.tabSelected = new Subject();
7
- this.tabSelected$ = this.tabSelected.asObservable();
8
- this.menuToggleSubject = new Subject();
9
- this.menuToggle$ = this.menuToggleSubject.asObservable();
10
- }
11
- toggleMenu(toggle) {
12
- this.menuToggleSubject.next(toggle);
13
- }
14
- setTabSelected(val) {
15
- this.tabSelected.next(val);
16
- }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
18
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiService }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiService, decorators: [{
21
- type: Injectable
22
- }], ctorParameters: () => [] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvc2VydmljZXMvdWkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRTNDLE1BQU0sT0FBTyxTQUFTO0lBT2xCO1FBTkEsZ0JBQVcsR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO1FBQ2pDLGlCQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUl2QyxzQkFBaUIsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBRS9DLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdELENBQUM7SUFDRCxVQUFVLENBQUMsTUFBZTtRQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxjQUFjLENBQUMsR0FBUTtRQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDOytHQWZRLFNBQVM7bUhBQVQsU0FBUzs7NEZBQVQsU0FBUztrQkFEckIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBVaVNlcnZpY2Uge1xyXG4gICAgdGFiU2VsZWN0ZWQgPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgICB0YWJTZWxlY3RlZCQgPSB0aGlzLnRhYlNlbGVjdGVkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIG1lbnVUb2dnbGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG5cclxuICAgIHByaXZhdGUgbWVudVRvZ2dsZVN1YmplY3QgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5tZW51VG9nZ2xlJCA9IHRoaXMubWVudVRvZ2dsZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcbiAgICB0b2dnbGVNZW51KHRvZ2dsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubWVudVRvZ2dsZVN1YmplY3QubmV4dCh0b2dnbGUpO1xyXG4gICAgfVxyXG4gICAgc2V0VGFiU2VsZWN0ZWQodmFsOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnRhYlNlbGVjdGVkLm5leHQodmFsKTtcclxuICAgIH1cclxufVxyXG4iXX0=