@corp-products/app-core 1.1.2 → 1.1.4

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 (132) hide show
  1. package/esm2022/corp-products-app-core.mjs +5 -0
  2. package/esm2022/index.mjs +11 -0
  3. package/esm2022/lib/core/components/global-loader/global-loader.component.mjs +20 -0
  4. package/esm2022/lib/core/components/index.mjs +2 -0
  5. package/esm2022/lib/core/core-config.mjs +3 -0
  6. package/esm2022/lib/core/directives/index.mjs +2 -0
  7. package/esm2022/lib/core/directives/permissions.directive.mjs +99 -0
  8. package/esm2022/lib/core/enums/index.mjs +2 -0
  9. package/esm2022/lib/core/enums/user-permissions.enum.mjs +38 -0
  10. package/esm2022/lib/core/guards/auth.guard.mjs +14 -0
  11. package/esm2022/lib/core/guards/index.mjs +3 -0
  12. package/esm2022/lib/core/guards/permissions.guard.mjs +16 -0
  13. package/esm2022/lib/core/handlers/http-context-handler.mjs +12 -0
  14. package/esm2022/lib/core/handlers/index.mjs +4 -0
  15. package/esm2022/lib/core/handlers/storage-handler.mjs +33 -0
  16. package/esm2022/lib/core/handlers/stortage.mjs +9 -0
  17. package/esm2022/lib/core/interceptors/app-http-config.mjs +9 -0
  18. package/esm2022/lib/core/interceptors/base-http.interceptor.mjs +55 -0
  19. package/esm2022/lib/core/interceptors/global-http-error.interceptor.mjs +17 -0
  20. package/esm2022/lib/core/interceptors/index.mjs +4 -0
  21. package/esm2022/lib/core/interfaces/index.mjs +4 -0
  22. package/esm2022/lib/core/interfaces/jwt-token-decoded.interface.mjs +2 -0
  23. package/esm2022/lib/core/interfaces/list-response.interface.mjs +2 -0
  24. package/esm2022/lib/core/interfaces/router-data.interface.mjs +2 -0
  25. package/esm2022/lib/core/interfaces/user-info.interface.mjs +2 -0
  26. package/esm2022/lib/core/interfaces/user-profile-data.mjs +2 -0
  27. package/esm2022/lib/core/services/auth.service.mjs +64 -0
  28. package/esm2022/lib/core/services/base-http-service/base-http-response.mjs +2 -0
  29. package/esm2022/lib/core/services/base-http-service/base-http-types.mjs +2 -0
  30. package/esm2022/lib/core/services/base-http-service/base-http-utils.mjs +32 -0
  31. package/esm2022/lib/core/services/base-http-service/base-http.service.mjs +79 -0
  32. package/esm2022/lib/core/services/base-http-service/index.mjs +5 -0
  33. package/esm2022/lib/core/services/base-pagination-service/base-pagination.service.mjs +49 -0
  34. package/esm2022/lib/core/services/base-pagination-service/index.mjs +4 -0
  35. package/esm2022/lib/core/services/base-pagination-service/list-options.interface.mjs +2 -0
  36. package/esm2022/lib/core/services/base-pagination-service/pagination.mjs +8 -0
  37. package/esm2022/lib/core/services/error-handler.service.mjs +76 -0
  38. package/esm2022/lib/core/services/index.mjs +9 -0
  39. package/esm2022/lib/core/services/jwt-decoder.service.mjs +25 -0
  40. package/esm2022/lib/core/services/loader.service.mjs +33 -0
  41. package/esm2022/lib/core/services/lov.service.mjs +26 -0
  42. package/esm2022/lib/core/services/permissions.service.mjs +64 -0
  43. package/esm2022/lib/core/services/toaster.service.mjs +67 -0
  44. package/fesm2022/corp-products-app-core.mjs +802 -0
  45. package/fesm2022/corp-products-app-core.mjs.map +1 -0
  46. package/{src/index.ts → index.d.ts} +10 -10
  47. package/lib/core/components/global-loader/global-loader.component.d.ts +9 -0
  48. package/{src/lib/core/components/index.ts → lib/core/components/index.d.ts} +1 -1
  49. package/lib/core/core-config.d.ts +9 -0
  50. package/{src/lib/core/directives/index.ts → lib/core/directives/index.d.ts} +1 -1
  51. package/lib/core/directives/permissions.directive.d.ts +31 -0
  52. package/{src/lib/core/enums/index.ts → lib/core/enums/index.d.ts} +1 -1
  53. package/lib/core/enums/user-permissions.enum.d.ts +35 -0
  54. package/lib/core/guards/auth.guard.d.ts +2 -0
  55. package/{src/lib/core/guards/index.ts → lib/core/guards/index.d.ts} +2 -2
  56. package/lib/core/guards/permissions.guard.d.ts +2 -0
  57. package/lib/core/handlers/http-context-handler.d.ts +7 -0
  58. package/{src/lib/core/handlers/index.ts → lib/core/handlers/index.d.ts} +3 -3
  59. package/lib/core/handlers/storage-handler.d.ts +16 -0
  60. package/lib/core/handlers/stortage.d.ts +7 -0
  61. package/lib/core/interceptors/app-http-config.d.ts +8 -0
  62. package/lib/core/interceptors/base-http.interceptor.d.ts +15 -0
  63. package/lib/core/interceptors/global-http-error.interceptor.d.ts +6 -0
  64. package/{src/lib/core/interceptors/index.ts → lib/core/interceptors/index.d.ts} +3 -3
  65. package/lib/core/interfaces/index.d.ts +3 -0
  66. package/{src/lib/core/interfaces/jwt-token-decoded.interface.ts → lib/core/interfaces/jwt-token-decoded.interface.d.ts} +7 -7
  67. package/lib/core/interfaces/list-response.interface.d.ts +5 -0
  68. package/lib/core/interfaces/router-data.interface.d.ts +17 -0
  69. package/lib/core/interfaces/user-info.interface.d.ts +4 -0
  70. package/lib/core/interfaces/user-profile-data.d.ts +16 -0
  71. package/lib/core/services/auth.service.d.ts +19 -0
  72. package/lib/core/services/base-http-service/base-http-response.d.ts +14 -0
  73. package/lib/core/services/base-http-service/base-http-types.d.ts +37 -0
  74. package/lib/core/services/base-http-service/base-http-utils.d.ts +6 -0
  75. package/lib/core/services/base-http-service/base-http.service.d.ts +22 -0
  76. package/{src/lib/core/services/base-http-service/index.ts → lib/core/services/base-http-service/index.d.ts} +4 -4
  77. package/lib/core/services/base-pagination-service/base-pagination.service.d.ts +21 -0
  78. package/{src/lib/core/services/base-pagination-service/index.ts → lib/core/services/base-pagination-service/index.d.ts} +3 -3
  79. package/lib/core/services/base-pagination-service/list-options.interface.d.ts +8 -0
  80. package/lib/core/services/base-pagination-service/pagination.d.ts +6 -0
  81. package/lib/core/services/error-handler.service.d.ts +12 -0
  82. package/{src/lib/core/services/index.ts → lib/core/services/index.d.ts} +8 -8
  83. package/lib/core/services/jwt-decoder.service.d.ts +11 -0
  84. package/lib/core/services/loader.service.d.ts +13 -0
  85. package/lib/core/services/lov.service.d.ts +9 -0
  86. package/lib/core/services/permissions.service.d.ts +20 -0
  87. package/lib/core/services/toaster.service.d.ts +15 -0
  88. package/package.json +36 -20
  89. package/eslint.config.js +0 -48
  90. package/ng-package.json +0 -7
  91. package/project.json +0 -29
  92. package/src/lib/core/components/global-loader/global-loader.component.html +0 -18
  93. package/src/lib/core/components/global-loader/global-loader.component.scss +0 -0
  94. package/src/lib/core/components/global-loader/global-loader.component.spec.ts +0 -24
  95. package/src/lib/core/components/global-loader/global-loader.component.ts +0 -16
  96. package/src/lib/core/components/no-access/no-access.component.html +0 -9
  97. package/src/lib/core/components/no-access/no-access.component.ts +0 -17
  98. package/src/lib/core/core-config.ts +0 -11
  99. package/src/lib/core/directives/permissions.directive.ts +0 -114
  100. package/src/lib/core/enums/user-permissions.enum.ts +0 -36
  101. package/src/lib/core/guards/auth.guard.ts +0 -17
  102. package/src/lib/core/guards/permissions.guard.ts +0 -17
  103. package/src/lib/core/handlers/http-context-handler.ts +0 -14
  104. package/src/lib/core/handlers/storage-handler.ts +0 -37
  105. package/src/lib/core/handlers/stortage.ts +0 -7
  106. package/src/lib/core/interceptors/app-http-config.ts +0 -8
  107. package/src/lib/core/interceptors/base-http.interceptor.ts +0 -55
  108. package/src/lib/core/interceptors/global-http-error.interceptor.ts +0 -21
  109. package/src/lib/core/interfaces/index.ts +0 -3
  110. package/src/lib/core/interfaces/list-response.interface.ts +0 -5
  111. package/src/lib/core/interfaces/router-data.interface.ts +0 -20
  112. package/src/lib/core/interfaces/user-info.interface.ts +0 -4
  113. package/src/lib/core/interfaces/user-profile-data.ts +0 -19
  114. package/src/lib/core/services/auth.service.ts +0 -63
  115. package/src/lib/core/services/base-http-service/base-http-response.ts +0 -14
  116. package/src/lib/core/services/base-http-service/base-http-types.ts +0 -42
  117. package/src/lib/core/services/base-http-service/base-http-utils.ts +0 -43
  118. package/src/lib/core/services/base-http-service/base-http.service.ts +0 -106
  119. package/src/lib/core/services/base-http-service/http-context-handler.ts +0 -9
  120. package/src/lib/core/services/base-pagination-service/base-pagination.service.ts +0 -59
  121. package/src/lib/core/services/base-pagination-service/list-options.interface.ts +0 -8
  122. package/src/lib/core/services/base-pagination-service/pagination.ts +0 -6
  123. package/src/lib/core/services/enviroment.base.service.ts +0 -16
  124. package/src/lib/core/services/error-handler.service.ts +0 -74
  125. package/src/lib/core/services/jwt-decoder.service.ts +0 -23
  126. package/src/lib/core/services/loader.service.ts +0 -32
  127. package/src/lib/core/services/lov.service.ts +0 -22
  128. package/src/lib/core/services/permissions.service.ts +0 -66
  129. package/src/lib/core/services/toaster.service.ts +0 -65
  130. package/tsconfig.json +0 -26
  131. package/tsconfig.lib.json +0 -11
  132. package/tsconfig.lib.prod.json +0 -9
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ycC1wcm9kdWN0cy1hcHAtY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvY29ycC1wcm9kdWN0cy1hcHAtY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -0,0 +1,11 @@
1
+ export * from "./lib/core/services/base-pagination-service";
2
+ export * from "./lib/core/components";
3
+ export * from "./lib/core/services";
4
+ export * from "./lib/core/interfaces";
5
+ export * from "./lib/core/guards";
6
+ export * from "./lib/core/interceptors";
7
+ export * from "./lib/core/enums";
8
+ export * from "./lib/core/directives";
9
+ export * from "./lib/core/core-config";
10
+ export * from "./lib/core/handlers";
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9saWIvY29yZS9zZXJ2aWNlcy9iYXNlLXBhZ2luYXRpb24tc2VydmljZVwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvY29yZS9jb21wb25lbnRzXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9jb3JlL3NlcnZpY2VzXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9jb3JlL2ludGVyZmFjZXNcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vbGliL2NvcmUvZ3VhcmRzXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9jb3JlL2ludGVyY2VwdG9yc1wiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvY29yZS9lbnVtc1wiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvY29yZS9kaXJlY3RpdmVzXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9jb3JlL2NvcmUtY29uZmlnXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9jb3JlL2hhbmRsZXJzXCI7XHJcbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { AsyncPipe, NgClass } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { TranslatePipe } from "@ngx-translate/core";
4
+ import { LoaderService } from "../../services";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../services";
7
+ export class GlobalLoaderComponent {
8
+ constructor(loaderService) {
9
+ this.loaderService = loaderService;
10
+ }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GlobalLoaderComponent, deps: [{ token: i1.LoaderService }], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: GlobalLoaderComponent, isStandalone: true, selector: "global-loader", inputs: { color: "color" }, ngImport: i0, template: "@if (loaderService.isLoading$ | async; as data) {\r\n @if (data.show) {\r\n <div\r\n class=\"fixed inset-0 z-[1111] flex justify-center items-center\"\r\n [ngClass]=\"{\r\n 'bg-white/75': data?.isSystemLoader,\r\n 'absolute': !data?.isSystemLoader\r\n }\"\r\n >\r\n <div class=\"text-center flex flex-col gap-5 items-center\">\r\n <div\r\n class=\"animate-spin inline-block w-12 h-12 border-[3px] border-current border-t-transparent text-gray-800 rounded-full\">\r\n </div>\r\n <span>{{ 'loading' | translate }}</span>\r\n </div>\r\n </div>\r\n }\r\n}\r\n", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GlobalLoaderComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: "global-loader", standalone: true, imports: [AsyncPipe, NgClass, TranslatePipe], template: "@if (loaderService.isLoading$ | async; as data) {\r\n @if (data.show) {\r\n <div\r\n class=\"fixed inset-0 z-[1111] flex justify-center items-center\"\r\n [ngClass]=\"{\r\n 'bg-white/75': data?.isSystemLoader,\r\n 'absolute': !data?.isSystemLoader\r\n }\"\r\n >\r\n <div class=\"text-center flex flex-col gap-5 items-center\">\r\n <div\r\n class=\"animate-spin inline-block w-12 h-12 border-[3px] border-current border-t-transparent text-gray-800 rounded-full\">\r\n </div>\r\n <span>{{ 'loading' | translate }}</span>\r\n </div>\r\n </div>\r\n }\r\n}\r\n" }]
17
+ }], ctorParameters: () => [{ type: i1.LoaderService }], propDecorators: { color: [{
18
+ type: Input
19
+ }] } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2NvbXBvbmVudHMvZ2xvYmFsLWxvYWRlci9nbG9iYWwtbG9hZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvcmUvY29tcG9uZW50cy9nbG9iYWwtbG9hZGVyL2dsb2JhbC1sb2FkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7QUFTN0MsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUFtQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUFHLENBQUM7OEdBRnhDLHFCQUFxQjtrR0FBckIscUJBQXFCLHFHQ1psQyw0bkJBa0JBLHFERFJZLFNBQVMsOENBQUUsT0FBTywrRUFBRSxhQUFhOzsyRkFFaEMscUJBQXFCO2tCQVBqQyxTQUFTOytCQUNFLGVBQWUsY0FHYixJQUFJLFdBQ1AsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQztrRkFHbkMsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZVBpcGV9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7TG9hZGVyU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJnbG9iYWwtbG9hZGVyXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9nbG9iYWwtbG9hZGVyLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL2dsb2JhbC1sb2FkZXIuY29tcG9uZW50LnNjc3NcIl0sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQXN5bmNQaXBlLCBOZ0NsYXNzLCBUcmFuc2xhdGVQaXBlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgR2xvYmFsTG9hZGVyQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBjb2xvcjogc3RyaW5nO1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBsb2FkZXJTZXJ2aWNlOiBMb2FkZXJTZXJ2aWNlKSB7fVxyXG59XHJcbiIsIkBpZiAobG9hZGVyU2VydmljZS5pc0xvYWRpbmckIHwgYXN5bmM7IGFzIGRhdGEpIHtcclxuICBAaWYgKGRhdGEuc2hvdykge1xyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cImZpeGVkIGluc2V0LTAgei1bMTExMV0gZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXJcIlxyXG4gICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAnYmctd2hpdGUvNzUnOiBkYXRhPy5pc1N5c3RlbUxvYWRlcixcclxuICAgICAgICdhYnNvbHV0ZSc6ICFkYXRhPy5pc1N5c3RlbUxvYWRlclxyXG4gICAgIH1cIlxyXG4gICAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBmbGV4IGZsZXgtY29sIGdhcC01IGl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgIGNsYXNzPVwiYW5pbWF0ZS1zcGluIGlubGluZS1ibG9jayB3LTEyIGgtMTIgYm9yZGVyLVszcHhdIGJvcmRlci1jdXJyZW50IGJvcmRlci10LXRyYW5zcGFyZW50IHRleHQtZ3JheS04MDAgcm91bmRlZC1mdWxsXCI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPHNwYW4+e3sgJ2xvYWRpbmcnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from "./global-loader/global-loader.component";
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2dsb2JhbC1sb2FkZXIvZ2xvYmFsLWxvYWRlci5jb21wb25lbnRcIjtcclxuIl19
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ export const CORE_CONFIG = new InjectionToken("CoreConfig");
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2NvcmUtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFVL0MsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFhLFlBQVksQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3JlQ29uZmlnIHtcclxuICBhcGlQcmVmaXg6IHN0cmluZztcclxuICBwcm9kdWN0aW9uOiBib29sZWFuO1xyXG4gIGdhdGV3YXlVcmw6IHN0cmluZztcclxuICBsb2dpblVybDogc3RyaW5nO1xyXG4gIGxvZ291dEVuZHBvaW50OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBDT1JFX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxDb3JlQ29uZmlnPihcIkNvcmVDb25maWdcIik7XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './permissions.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGVybWlzc2lvbnMuZGlyZWN0aXZlJztcclxuIl19
@@ -0,0 +1,99 @@
1
+ import { Directive, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
2
+ import { PermissionsService } from '../services';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../services";
5
+ export class HasPermissionsDirective {
6
+ constructor(permissionsService, viewContainer, templateRef) {
7
+ this.permissionsService = permissionsService;
8
+ this.viewContainer = viewContainer;
9
+ this.templateRef = templateRef;
10
+ this.isViewCreated = false;
11
+ }
12
+ /**
13
+ * make sure that the key value looks like the UserPermissionsEnum enum
14
+ * usage: *permissions="[PermissionsActions.EDIT]; key: LOOKUPS
15
+ */
16
+ set hasPermissions(actions) {
17
+ if (this.arraysChanged(this._actions, actions)) {
18
+ this._actions = actions;
19
+ this.updateView();
20
+ }
21
+ }
22
+ set hasPermissionsKey(key) {
23
+ if (this._key !== key) {
24
+ this._key = key;
25
+ this.updateView();
26
+ }
27
+ }
28
+ set hasPermissionsNewPermissions(newPermissions) {
29
+ if (this.arraysChanged(this._newPermissions, newPermissions)) {
30
+ this._newPermissions = newPermissions;
31
+ this.updateView();
32
+ }
33
+ }
34
+ set hasPermissionsIsDomain(isDomain) {
35
+ if (this._isDomain !== isDomain) {
36
+ this._isDomain = isDomain;
37
+ this.updateView();
38
+ }
39
+ }
40
+ ngOnInit() {
41
+ this.subscription = this.permissionsService.domainPermissions$.subscribe(() => {
42
+ if (this._isDomain) {
43
+ this.updateView();
44
+ }
45
+ });
46
+ }
47
+ ngOnDestroy() {
48
+ this.subscription?.unsubscribe();
49
+ }
50
+ updateView() {
51
+ const canShow = this._actions.some(action => this.hasPermission(action));
52
+ if (canShow && !this.isViewCreated) {
53
+ this.viewContainer.createEmbeddedView(this.templateRef);
54
+ this.isViewCreated = true;
55
+ }
56
+ else if (!canShow && this.isViewCreated) {
57
+ this.clearView();
58
+ }
59
+ }
60
+ hasPermission(action) {
61
+ if (this._isDomain) {
62
+ return this.permissionsService.checkDomainHasPermission(this._key, action);
63
+ }
64
+ return this.permissionsService.checkKeyHasPermission(this._key, action, this._newPermissions);
65
+ }
66
+ clearView() {
67
+ this.viewContainer.clear();
68
+ this.isViewCreated = false;
69
+ }
70
+ arraysChanged(a, b) {
71
+ if (a === b)
72
+ return false;
73
+ if (!a || !b)
74
+ return true;
75
+ if (a.length !== b.length)
76
+ return true;
77
+ return a.some((v, i) => v !== b[i]);
78
+ }
79
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HasPermissionsDirective, deps: [{ token: i1.PermissionsService }, { token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
80
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: HasPermissionsDirective, isStandalone: true, selector: "[hasPermissions]", inputs: { hasPermissions: "hasPermissions", hasPermissionsKey: "hasPermissionsKey", hasPermissionsNewPermissions: "hasPermissionsNewPermissions", hasPermissionsIsDomain: "hasPermissionsIsDomain" }, ngImport: i0 }); }
81
+ }
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HasPermissionsDirective, decorators: [{
83
+ type: Directive,
84
+ args: [{
85
+ selector: '[hasPermissions]',
86
+ standalone: true
87
+ }]
88
+ }], ctorParameters: () => [{ type: i1.PermissionsService }, { type: i0.ViewContainerRef }, { type: i0.TemplateRef }], propDecorators: { hasPermissions: [{
89
+ type: Input,
90
+ args: [{ required: true }]
91
+ }], hasPermissionsKey: [{
92
+ type: Input,
93
+ args: [{ required: true }]
94
+ }], hasPermissionsNewPermissions: [{
95
+ type: Input
96
+ }], hasPermissionsIsDomain: [{
97
+ type: Input
98
+ }] } });
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbnMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9kaXJlY3RpdmVzL3Blcm1pc3Npb25zLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxXQUFXLEVBQ1gsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBUWpELE1BQU0sT0FBTyx1QkFBdUI7SUFTbEMsWUFDVSxrQkFBc0MsRUFDdEMsYUFBK0IsRUFDL0IsV0FBaUM7UUFGakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO1FBTm5DLGtCQUFhLEdBQUcsS0FBSyxDQUFDO0lBTzNCLENBQUM7SUFFSjs7O09BR0c7SUFFSCxJQUErQixjQUFjLENBQUMsT0FBaUI7UUFDN0QsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztZQUN4QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFFRCxJQUErQixpQkFBaUIsQ0FBQyxHQUFXO1FBQzFELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztZQUNoQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFhLDRCQUE0QixDQUFDLGNBQXdCO1FBQ2hFLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLGNBQWMsQ0FBQyxFQUFFLENBQUM7WUFDN0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7WUFDdEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBYSxzQkFBc0IsQ0FBQyxRQUFpQjtRQUNuRCxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7WUFDMUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDNUUsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNwQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVPLFVBQVU7UUFDaEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFFekUsSUFBSSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDeEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDNUIsQ0FBQzthQUFNLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQztJQUVPLGFBQWEsQ0FBQyxNQUFjO1FBQ2xDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25CLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLHdCQUF3QixDQUNyRCxJQUFJLENBQUMsSUFBMkIsRUFDaEMsTUFBNEIsQ0FDN0IsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FDbEQsSUFBSSxDQUFDLElBQTJCLEVBQ2hDLE1BQTRCLEVBQzVCLElBQUksQ0FBQyxlQUFlLENBQ3JCLENBQUM7SUFDSixDQUFDO0lBRU8sU0FBUztRQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7SUFDN0IsQ0FBQztJQUVPLGFBQWEsQ0FBQyxDQUFZLEVBQUUsQ0FBWTtRQUM5QyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDMUIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLE1BQU07WUFBRSxPQUFPLElBQUksQ0FBQztRQUN2QyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQzs4R0FoR1UsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dKQXFCZ0MsY0FBYztzQkFBNUMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBT00saUJBQWlCO3NCQUEvQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFPWiw0QkFBNEI7c0JBQXhDLEtBQUs7Z0JBT08sc0JBQXNCO3NCQUFsQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQZXJtaXNzaW9uc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFBlcm1pc3Npb25zQWN0aW9ucywgVXNlclBlcm1pc3Npb25zRW51bSB9IGZyb20gJy4uL2VudW1zJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1toYXNQZXJtaXNzaW9uc10nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIEhhc1Blcm1pc3Npb25zRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgX2FjdGlvbnM6IHN0cmluZ1tdO1xyXG4gIHByaXZhdGUgX2tleTogc3RyaW5nO1xyXG4gIHByaXZhdGUgX25ld1Blcm1pc3Npb25zOiBzdHJpbmdbXTtcclxuICBwcml2YXRlIF9pc0RvbWFpbjogYm9vbGVhbjtcclxuXHJcbiAgcHJpdmF0ZSBpc1ZpZXdDcmVhdGVkID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHBlcm1pc3Npb25zU2VydmljZTogUGVybWlzc2lvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj5cclxuICApIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqICBtYWtlIHN1cmUgdGhhdCB0aGUga2V5IHZhbHVlIGxvb2tzIGxpa2UgdGhlIFVzZXJQZXJtaXNzaW9uc0VudW0gZW51bVxyXG4gICAqICB1c2FnZTogKnBlcm1pc3Npb25zPVwiW1Blcm1pc3Npb25zQWN0aW9ucy5FRElUXTsga2V5OiBMT09LVVBTXHJcbiAgICovXHJcblxyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHNldCBoYXNQZXJtaXNzaW9ucyhhY3Rpb25zOiBzdHJpbmdbXSkge1xyXG4gICAgaWYgKHRoaXMuYXJyYXlzQ2hhbmdlZCh0aGlzLl9hY3Rpb25zLCBhY3Rpb25zKSkge1xyXG4gICAgICB0aGlzLl9hY3Rpb25zID0gYWN0aW9ucztcclxuICAgICAgdGhpcy51cGRhdGVWaWV3KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzZXQgaGFzUGVybWlzc2lvbnNLZXkoa2V5OiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLl9rZXkgIT09IGtleSkge1xyXG4gICAgICB0aGlzLl9rZXkgPSBrZXk7XHJcbiAgICAgIHRoaXMudXBkYXRlVmlldygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgc2V0IGhhc1Blcm1pc3Npb25zTmV3UGVybWlzc2lvbnMobmV3UGVybWlzc2lvbnM6IHN0cmluZ1tdKSB7XHJcbiAgICBpZiAodGhpcy5hcnJheXNDaGFuZ2VkKHRoaXMuX25ld1Blcm1pc3Npb25zLCBuZXdQZXJtaXNzaW9ucykpIHtcclxuICAgICAgdGhpcy5fbmV3UGVybWlzc2lvbnMgPSBuZXdQZXJtaXNzaW9ucztcclxuICAgICAgdGhpcy51cGRhdGVWaWV3KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgaGFzUGVybWlzc2lvbnNJc0RvbWFpbihpc0RvbWFpbjogYm9vbGVhbikge1xyXG4gICAgaWYgKHRoaXMuX2lzRG9tYWluICE9PSBpc0RvbWFpbikge1xyXG4gICAgICB0aGlzLl9pc0RvbWFpbiA9IGlzRG9tYWluO1xyXG4gICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnBlcm1pc3Npb25zU2VydmljZS5kb21haW5QZXJtaXNzaW9ucyQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMuX2lzRG9tYWluKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVWaWV3KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVmlldygpIHtcclxuICAgIGNvbnN0IGNhblNob3cgPSB0aGlzLl9hY3Rpb25zLnNvbWUoYWN0aW9uID0+IHRoaXMuaGFzUGVybWlzc2lvbihhY3Rpb24pKTtcclxuXHJcbiAgICBpZiAoY2FuU2hvdyAmJiAhdGhpcy5pc1ZpZXdDcmVhdGVkKSB7XHJcbiAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZik7XHJcbiAgICAgIHRoaXMuaXNWaWV3Q3JlYXRlZCA9IHRydWU7XHJcbiAgICB9IGVsc2UgaWYgKCFjYW5TaG93ICYmIHRoaXMuaXNWaWV3Q3JlYXRlZCkge1xyXG4gICAgICB0aGlzLmNsZWFyVmlldygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYXNQZXJtaXNzaW9uKGFjdGlvbjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5faXNEb21haW4pIHtcclxuICAgICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnNTZXJ2aWNlLmNoZWNrRG9tYWluSGFzUGVybWlzc2lvbihcclxuICAgICAgICB0aGlzLl9rZXkgYXMgVXNlclBlcm1pc3Npb25zRW51bSxcclxuICAgICAgICBhY3Rpb24gYXMgUGVybWlzc2lvbnNBY3Rpb25zXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnNTZXJ2aWNlLmNoZWNrS2V5SGFzUGVybWlzc2lvbihcclxuICAgICAgdGhpcy5fa2V5IGFzIFVzZXJQZXJtaXNzaW9uc0VudW0sXHJcbiAgICAgIGFjdGlvbiBhcyBQZXJtaXNzaW9uc0FjdGlvbnMsXHJcbiAgICAgIHRoaXMuX25ld1Blcm1pc3Npb25zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhclZpZXcoKSB7XHJcbiAgICB0aGlzLnZpZXdDb250YWluZXIuY2xlYXIoKTtcclxuICAgIHRoaXMuaXNWaWV3Q3JlYXRlZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhcnJheXNDaGFuZ2VkKGE/OiBzdHJpbmdbXSwgYj86IHN0cmluZ1tdKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoYSA9PT0gYikgcmV0dXJuIGZhbHNlO1xyXG4gICAgaWYgKCFhIHx8ICFiKSByZXR1cm4gdHJ1ZTtcclxuICAgIGlmIChhLmxlbmd0aCAhPT0gYi5sZW5ndGgpIHJldHVybiB0cnVlO1xyXG4gICAgcmV0dXJuIGEuc29tZSgodiwgaSkgPT4gdiAhPT0gYltpXSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './user-permissions.enum';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2VudW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3VzZXItcGVybWlzc2lvbnMuZW51bSc7XHJcbiJdfQ==
@@ -0,0 +1,38 @@
1
+ export var UserPermissionsEnum;
2
+ (function (UserPermissionsEnum) {
3
+ UserPermissionsEnum["BOD"] = "BOD";
4
+ UserPermissionsEnum["BOARD_COMMITTEES"] = "BOARD_COMMITTEES";
5
+ UserPermissionsEnum["BOARD_MEETINGS"] = "BOARD_MEETINGS";
6
+ UserPermissionsEnum["MEETING_INSIDE_THE_BOD"] = "MEETING_INSIDE_THE_BOD";
7
+ UserPermissionsEnum["COMMITTEE"] = "COMMITTEE";
8
+ UserPermissionsEnum["MEETING_INSIDE_THE_COMMITTEE"] = "MEETING_INSIDE_THE_COMMITTEE";
9
+ UserPermissionsEnum["MEETING"] = "MEETING";
10
+ UserPermissionsEnum["DECISION"] = "DECISION";
11
+ UserPermissionsEnum["RECOMMENDATION"] = "RECOMMENDATION";
12
+ UserPermissionsEnum["TASK"] = "TASK";
13
+ UserPermissionsEnum["VOTING"] = "VOTING";
14
+ UserPermissionsEnum["VOTING_SECRETARY_RESULTS"] = "VOTING_SECRETARY_RESULTS";
15
+ UserPermissionsEnum["VOTING_RESULTS"] = "VOTING_RESULTS";
16
+ UserPermissionsEnum["DRAFT_MOM"] = "DRAFT_MOM";
17
+ UserPermissionsEnum["FINAL_MOM"] = "FINAL_MOM";
18
+ UserPermissionsEnum["MOM"] = "MOM";
19
+ UserPermissionsEnum["AGENDA"] = "AGENDA";
20
+ UserPermissionsEnum["ATTENDEES"] = "ATTENDEES";
21
+ UserPermissionsEnum["COMMENT"] = "COMMENT";
22
+ })(UserPermissionsEnum || (UserPermissionsEnum = {}));
23
+ export var PermissionsActions;
24
+ (function (PermissionsActions) {
25
+ PermissionsActions["VIEW"] = "VIEW";
26
+ PermissionsActions["CREATE"] = "CREATE";
27
+ PermissionsActions["EDIT"] = "EDIT";
28
+ PermissionsActions["DELETE"] = "DELETE";
29
+ PermissionsActions["REORDER"] = "REORDER";
30
+ PermissionsActions["DOWNLOAD"] = "DOWNLOAD";
31
+ PermissionsActions["MARK"] = "MARK";
32
+ PermissionsActions["GENERATE"] = "GENERATE";
33
+ PermissionsActions["TERMINATE"] = "TERMINATE";
34
+ PermissionsActions["START"] = "START";
35
+ PermissionsActions["END"] = "END";
36
+ PermissionsActions["ACTIVATE"] = "ACTIVATE";
37
+ })(PermissionsActions || (PermissionsActions = {}));
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wZXJtaXNzaW9ucy5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9lbnVtcy91c2VyLXBlcm1pc3Npb25zLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksbUJBb0JYO0FBcEJELFdBQVksbUJBQW1CO0lBQzdCLGtDQUFXLENBQUE7SUFDWCw0REFBcUMsQ0FBQTtJQUNyQyx3REFBaUMsQ0FBQTtJQUNqQyx3RUFBaUQsQ0FBQTtJQUNqRCw4Q0FBdUIsQ0FBQTtJQUN2QixvRkFBNkQsQ0FBQTtJQUM3RCwwQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBcUIsQ0FBQTtJQUNyQix3REFBaUMsQ0FBQTtJQUNqQyxvQ0FBYSxDQUFBO0lBQ2Isd0NBQWlCLENBQUE7SUFDakIsNEVBQXFELENBQUE7SUFDckQsd0RBQWlDLENBQUE7SUFDakMsOENBQXVCLENBQUE7SUFDdkIsOENBQXVCLENBQUE7SUFDdkIsa0NBQVcsQ0FBQTtJQUNYLHdDQUFpQixDQUFBO0lBQ2pCLDhDQUF1QixDQUFBO0lBQ3ZCLDBDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFwQlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQW9COUI7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFhWDtBQWJELFdBQVksa0JBQWtCO0lBQzVCLG1DQUFhLENBQUE7SUFDYix1Q0FBaUIsQ0FBQTtJQUNqQixtQ0FBYSxDQUFBO0lBQ2IsdUNBQWlCLENBQUE7SUFDakIseUNBQW1CLENBQUE7SUFDbkIsMkNBQXFCLENBQUE7SUFDckIsbUNBQWEsQ0FBQTtJQUNiLDJDQUFxQixDQUFBO0lBQ3JCLDZDQUF1QixDQUFBO0lBQ3ZCLHFDQUFlLENBQUE7SUFDZixpQ0FBVyxDQUFBO0lBQ1gsMkNBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQWJXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFhN0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBVc2VyUGVybWlzc2lvbnNFbnVtIHtcclxuICBCT0QgPSBcIkJPRFwiLFxyXG4gIEJPQVJEX0NPTU1JVFRFRVMgPSBcIkJPQVJEX0NPTU1JVFRFRVNcIixcclxuICBCT0FSRF9NRUVUSU5HUyA9IFwiQk9BUkRfTUVFVElOR1NcIixcclxuICBNRUVUSU5HX0lOU0lERV9USEVfQk9EID0gXCJNRUVUSU5HX0lOU0lERV9USEVfQk9EXCIsXHJcbiAgQ09NTUlUVEVFID0gXCJDT01NSVRURUVcIixcclxuICBNRUVUSU5HX0lOU0lERV9USEVfQ09NTUlUVEVFID0gXCJNRUVUSU5HX0lOU0lERV9USEVfQ09NTUlUVEVFXCIsXHJcbiAgTUVFVElORyA9IFwiTUVFVElOR1wiLFxyXG4gIERFQ0lTSU9OID0gXCJERUNJU0lPTlwiLFxyXG4gIFJFQ09NTUVOREFUSU9OID0gXCJSRUNPTU1FTkRBVElPTlwiLFxyXG4gIFRBU0sgPSBcIlRBU0tcIixcclxuICBWT1RJTkcgPSBcIlZPVElOR1wiLFxyXG4gIFZPVElOR19TRUNSRVRBUllfUkVTVUxUUyA9IFwiVk9USU5HX1NFQ1JFVEFSWV9SRVNVTFRTXCIsXHJcbiAgVk9USU5HX1JFU1VMVFMgPSBcIlZPVElOR19SRVNVTFRTXCIsXHJcbiAgRFJBRlRfTU9NID0gXCJEUkFGVF9NT01cIixcclxuICBGSU5BTF9NT00gPSBcIkZJTkFMX01PTVwiLFxyXG4gIE1PTSA9IFwiTU9NXCIsXHJcbiAgQUdFTkRBID0gXCJBR0VOREFcIixcclxuICBBVFRFTkRFRVMgPSBcIkFUVEVOREVFU1wiLFxyXG4gIENPTU1FTlQgPSBcIkNPTU1FTlRcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQZXJtaXNzaW9uc0FjdGlvbnMge1xyXG4gIFZJRVcgPSBcIlZJRVdcIixcclxuICBDUkVBVEUgPSBcIkNSRUFURVwiLFxyXG4gIEVESVQgPSBcIkVESVRcIixcclxuICBERUxFVEUgPSBcIkRFTEVURVwiLFxyXG4gIFJFT1JERVIgPSBcIlJFT1JERVJcIixcclxuICBET1dOTE9BRCA9IFwiRE9XTkxPQURcIixcclxuICBNQVJLID0gXCJNQVJLXCIsXHJcbiAgR0VORVJBVEUgPSBcIkdFTkVSQVRFXCIsXHJcbiAgVEVSTUlOQVRFID0gXCJURVJNSU5BVEVcIixcclxuICBTVEFSVCA9IFwiU1RBUlRcIixcclxuICBFTkQgPSBcIkVORFwiLFxyXG4gIEFDVElWQVRFID0gXCJBQ1RJVkFURVwiXHJcbn1cclxuIl19
@@ -0,0 +1,14 @@
1
+ import { inject } from "@angular/core";
2
+ import { AuthService } from "../services";
3
+ import { CORE_CONFIG } from "../core-config";
4
+ export const authGuard = () => {
5
+ const appConfig = inject(CORE_CONFIG);
6
+ const authService = inject(AuthService);
7
+ const token = authService.getUserToken();
8
+ if (!token) {
9
+ window.location.href = appConfig.loginUrl;
10
+ return false;
11
+ }
12
+ return true;
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvcmUvZ3VhcmRzL2F1dGguZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQWMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQWtCLEdBQUcsRUFBRTtJQUMzQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQWEsV0FBVyxDQUFDLENBQUM7SUFDbEQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sS0FBSyxHQUFrQixXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFeEQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1gsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQztRQUMxQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENhbkFjdGl2YXRlRm4gfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7IENPUkVfQ09ORklHLCBDb3JlQ29uZmlnIH0gZnJvbSBcIi4uL2NvcmUtY29uZmlnXCI7XHJcblxyXG5leHBvcnQgY29uc3QgYXV0aEd1YXJkOiBDYW5BY3RpdmF0ZUZuID0gKCkgPT4ge1xyXG4gIGNvbnN0IGFwcENvbmZpZyA9IGluamVjdDxDb3JlQ29uZmlnPihDT1JFX0NPTkZJRyk7XHJcbiAgY29uc3QgYXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xyXG4gIGNvbnN0IHRva2VuOiBzdHJpbmcgfCBudWxsID0gYXV0aFNlcnZpY2UuZ2V0VXNlclRva2VuKCk7XHJcblxyXG4gIGlmICghdG9rZW4pIHtcclxuICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYXBwQ29uZmlnLmxvZ2luVXJsO1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './auth.guard';
2
+ export * from './permissions.guard';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2d1YXJkcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdXRoLmd1YXJkJztcclxuZXhwb3J0ICogZnJvbSAnLi9wZXJtaXNzaW9ucy5ndWFyZCc7XHJcbiJdfQ==
@@ -0,0 +1,16 @@
1
+ import { inject } from "@angular/core";
2
+ import { Router } from "@angular/router";
3
+ import { PermissionsService } from "../services";
4
+ export const permissionsGuard = (route) => {
5
+ const permissionsService = inject(PermissionsService);
6
+ const router = inject(Router);
7
+ const { key, action } = route.data["permissions"];
8
+ if (!route.data["permissions"] || (route.data["permissions"] && permissionsService.routeGuardChecker(key, action))) {
9
+ return true;
10
+ }
11
+ else {
12
+ router.navigate(["no-access"]);
13
+ return false;
14
+ }
15
+ };
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbnMuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2d1YXJkcy9wZXJtaXNzaW9ucy5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBaUIsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBR2pELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFrQixDQUFDLEtBQUssRUFBRSxFQUFFO0lBQ3ZELE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDdEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQXlCLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFeEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkgsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQy9CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENhbkFjdGl2YXRlRm4sIFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgUGVybWlzc2lvbnNTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7IFJvdXRlUGVybWlzc2lvbnNJbmZvIH0gZnJvbSBcIi4uL2ludGVyZmFjZXNcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBwZXJtaXNzaW9uc0d1YXJkOiBDYW5BY3RpdmF0ZUZuID0gKHJvdXRlKSA9PiB7XHJcbiAgY29uc3QgcGVybWlzc2lvbnNTZXJ2aWNlID0gaW5qZWN0KFBlcm1pc3Npb25zU2VydmljZSk7XHJcbiAgY29uc3Qgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XHJcbiAgY29uc3QgeyBrZXksIGFjdGlvbiB9OiBSb3V0ZVBlcm1pc3Npb25zSW5mbyA9IHJvdXRlLmRhdGFbXCJwZXJtaXNzaW9uc1wiXTtcclxuXHJcbiAgaWYgKCFyb3V0ZS5kYXRhW1wicGVybWlzc2lvbnNcIl0gfHwgKHJvdXRlLmRhdGFbXCJwZXJtaXNzaW9uc1wiXSAmJiBwZXJtaXNzaW9uc1NlcnZpY2Uucm91dGVHdWFyZENoZWNrZXIoa2V5LCBhY3Rpb24pKSkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJvdXRlci5uYXZpZ2F0ZShbXCJuby1hY2Nlc3NcIl0pO1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxufTtcclxuIl19
@@ -0,0 +1,12 @@
1
+ import { HttpContext, HttpContextToken } from "@angular/common/http";
2
+ export const IS_SYSTEM_LOADER = new HttpContextToken(() => true); // set default loader
3
+ export const USE_API_PREFIX = new HttpContextToken(() => true); // set default loader
4
+ export class HttpContextHandler {
5
+ static setLoaderType(isSystemLoader) {
6
+ return new HttpContext().set(IS_SYSTEM_LOADER, isSystemLoader);
7
+ }
8
+ static useApiPrefix(hasBaseSegment) {
9
+ return new HttpContext().set(USE_API_PREFIX, hasBaseSegment);
10
+ }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1jb250ZXh0LWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2hhbmRsZXJzL2h0dHAtY29udGV4dC1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixDQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMscUJBQXFCO0FBQ2hHLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxJQUFJLGdCQUFnQixDQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMscUJBQXFCO0FBRTlGLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxjQUF1QjtRQUMxQyxPQUFPLElBQUksV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxNQUFNLENBQUMsWUFBWSxDQUFDLGNBQXVCO1FBQ3pDLE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDb250ZXh0LCBIdHRwQ29udGV4dFRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcblxyXG5leHBvcnQgY29uc3QgSVNfU1lTVEVNX0xPQURFUiA9IG5ldyBIdHRwQ29udGV4dFRva2VuPGJvb2xlYW4+KCgpID0+IHRydWUpOyAvLyBzZXQgZGVmYXVsdCBsb2FkZXJcclxuZXhwb3J0IGNvbnN0IFVTRV9BUElfUFJFRklYID0gbmV3IEh0dHBDb250ZXh0VG9rZW48Ym9vbGVhbj4oKCkgPT4gdHJ1ZSk7IC8vIHNldCBkZWZhdWx0IGxvYWRlclxyXG5cclxuZXhwb3J0IGNsYXNzIEh0dHBDb250ZXh0SGFuZGxlciB7XHJcbiAgc3RhdGljIHNldExvYWRlclR5cGUoaXNTeXN0ZW1Mb2FkZXI6IGJvb2xlYW4pIHtcclxuICAgIHJldHVybiBuZXcgSHR0cENvbnRleHQoKS5zZXQoSVNfU1lTVEVNX0xPQURFUiwgaXNTeXN0ZW1Mb2FkZXIpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHVzZUFwaVByZWZpeChoYXNCYXNlU2VnbWVudDogYm9vbGVhbikge1xyXG4gICAgcmV0dXJuIG5ldyBIdHRwQ29udGV4dCgpLnNldChVU0VfQVBJX1BSRUZJWCwgaGFzQmFzZVNlZ21lbnQpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from "./http-context-handler";
2
+ export * from "./storage-handler";
3
+ export * from "./stortage";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2hhbmRsZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2h0dHAtY29udGV4dC1oYW5kbGVyXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL3N0b3JhZ2UtaGFuZGxlclwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9zdG9ydGFnZVwiO1xyXG4iXX0=
@@ -0,0 +1,33 @@
1
+ const setLocalStorage = (key, value) => localStorage.setItem(key, value);
2
+ const getLocalStorage = (key) => localStorage.getItem(key);
3
+ const clearLocalStorage = () => localStorage.clear();
4
+ const setSessionStorage = (key, value) => sessionStorage.setItem(key, value);
5
+ const getSessionStorage = (key) => sessionStorage.getItem(key);
6
+ const clearSessionStorage = () => sessionStorage.clear();
7
+ export class StorageHandler {
8
+ static { this.local = {
9
+ set: (key, value) => this.setItem(key, value, setLocalStorage),
10
+ get: (key) => this.getItem(key, getLocalStorage),
11
+ clear: () => this.clearStorage(clearLocalStorage)
12
+ }; }
13
+ static { this.session = {
14
+ set: (key, value) => this.setItem(key, value, setSessionStorage),
15
+ get: (key) => this.getItem(key, getSessionStorage),
16
+ clear: () => this.clearStorage(clearSessionStorage)
17
+ }; }
18
+ static setItem(key, value, set) {
19
+ if (!key)
20
+ return;
21
+ set(key, typeof value === "string" ? value : JSON.stringify(value));
22
+ }
23
+ static getItem(key, get, withParsing = false) {
24
+ const data = get(key) ?? null;
25
+ if (data)
26
+ return withParsing ? JSON.parse(data) : data;
27
+ return null;
28
+ }
29
+ static clearStorage(clear) {
30
+ clear();
31
+ }
32
+ }
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9oYW5kbGVycy9zdG9yYWdlLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFXLEVBQUUsS0FBYSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUN6RixNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNuRSxNQUFNLGlCQUFpQixHQUFHLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUNyRCxNQUFNLGlCQUFpQixHQUFHLENBQUMsR0FBVyxFQUFFLEtBQWEsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDN0YsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN2RSxNQUFNLG1CQUFtQixHQUFHLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUV6RCxNQUFNLE9BQU8sY0FBYzthQUNYLFVBQUssR0FBRztRQUNwQixHQUFHLEVBQUUsQ0FBQyxHQUFxQixFQUFFLEtBQWMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLGVBQWUsQ0FBQztRQUN6RixHQUFHLEVBQUUsQ0FBSSxHQUFxQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFJLEdBQUcsRUFBRSxlQUFlLENBQUM7UUFDeEUsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUM7S0FDbEQsQ0FBQzthQUNZLFlBQU8sR0FBRztRQUN0QixHQUFHLEVBQUUsQ0FBQyxHQUF1QixFQUFFLEtBQWMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixDQUFDO1FBQzdGLEdBQUcsRUFBRSxDQUFJLEdBQXVCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUksR0FBRyxFQUFFLGlCQUFpQixDQUFDO1FBQzVFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDO0tBQ3BELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQWdCLEVBQUUsS0FBYyxFQUFFLEdBQXlDO1FBQ2hHLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTztRQUNqQixHQUFHLENBQUMsR0FBYSxFQUFFLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVPLE1BQU0sQ0FBQyxPQUFPLENBQUksR0FBZ0IsRUFBRSxHQUFtQyxFQUFFLFdBQVcsR0FBRyxLQUFLO1FBQ2xHLE1BQU0sSUFBSSxHQUFrQixHQUFHLENBQUMsR0FBYSxDQUFDLElBQUksSUFBSSxDQUFDO1FBQ3ZELElBQUksSUFBSTtZQUFFLE9BQU8sV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdkQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFpQjtRQUMzQyxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRhbnQgZm9yIGdsb2JhbCBjb250ZXh0XHJcbmltcG9ydCB7IExvY2FsU3RvcmFnZUtleXMsIFNlc3Npb25TdG9yYWdlS2V5cywgU3RvcmFnZUVudW0gfSBmcm9tIFwiLi9zdG9ydGFnZVwiO1xyXG5cclxuY29uc3Qgc2V0TG9jYWxTdG9yYWdlID0gKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSA9PiBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKTtcclxuY29uc3QgZ2V0TG9jYWxTdG9yYWdlID0gKGtleTogc3RyaW5nKSA9PiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpO1xyXG5jb25zdCBjbGVhckxvY2FsU3RvcmFnZSA9ICgpID0+IGxvY2FsU3RvcmFnZS5jbGVhcigpO1xyXG5jb25zdCBzZXRTZXNzaW9uU3RvcmFnZSA9IChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykgPT4gc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKTtcclxuY29uc3QgZ2V0U2Vzc2lvblN0b3JhZ2UgPSAoa2V5OiBzdHJpbmcpID0+IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuY29uc3QgY2xlYXJTZXNzaW9uU3RvcmFnZSA9ICgpID0+IHNlc3Npb25TdG9yYWdlLmNsZWFyKCk7XHJcblxyXG5leHBvcnQgY2xhc3MgU3RvcmFnZUhhbmRsZXIge1xyXG4gIHB1YmxpYyBzdGF0aWMgbG9jYWwgPSB7XHJcbiAgICBzZXQ6IChrZXk6IExvY2FsU3RvcmFnZUtleXMsIHZhbHVlOiB1bmtub3duKSA9PiB0aGlzLnNldEl0ZW0oa2V5LCB2YWx1ZSwgc2V0TG9jYWxTdG9yYWdlKSxcclxuICAgIGdldDogPFQ+KGtleTogTG9jYWxTdG9yYWdlS2V5cykgPT4gdGhpcy5nZXRJdGVtPFQ+KGtleSwgZ2V0TG9jYWxTdG9yYWdlKSxcclxuICAgIGNsZWFyOiAoKSA9PiB0aGlzLmNsZWFyU3RvcmFnZShjbGVhckxvY2FsU3RvcmFnZSlcclxuICB9O1xyXG4gIHB1YmxpYyBzdGF0aWMgc2Vzc2lvbiA9IHtcclxuICAgIHNldDogKGtleTogU2Vzc2lvblN0b3JhZ2VLZXlzLCB2YWx1ZTogdW5rbm93bikgPT4gdGhpcy5zZXRJdGVtKGtleSwgdmFsdWUsIHNldFNlc3Npb25TdG9yYWdlKSxcclxuICAgIGdldDogPFQ+KGtleTogU2Vzc2lvblN0b3JhZ2VLZXlzKSA9PiB0aGlzLmdldEl0ZW08VD4oa2V5LCBnZXRTZXNzaW9uU3RvcmFnZSksXHJcbiAgICBjbGVhcjogKCkgPT4gdGhpcy5jbGVhclN0b3JhZ2UoY2xlYXJTZXNzaW9uU3RvcmFnZSlcclxuICB9O1xyXG5cclxuICBwcml2YXRlIHN0YXRpYyBzZXRJdGVtKGtleTogU3RvcmFnZUVudW0sIHZhbHVlOiB1bmtub3duLCBzZXQ6IChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgaWYgKCFrZXkpIHJldHVybjtcclxuICAgIHNldChrZXkgYXMgc3RyaW5nLCB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgPyB2YWx1ZSA6IEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXRpYyBnZXRJdGVtPFQ+KGtleTogU3RvcmFnZUVudW0sIGdldDogKGtleTogc3RyaW5nKSA9PiBzdHJpbmcgfCBudWxsLCB3aXRoUGFyc2luZyA9IGZhbHNlKTogVCB8IG51bGwge1xyXG4gICAgY29uc3QgZGF0YTogc3RyaW5nIHwgbnVsbCA9IGdldChrZXkgYXMgc3RyaW5nKSA/PyBudWxsO1xyXG4gICAgaWYgKGRhdGEpIHJldHVybiB3aXRoUGFyc2luZyA/IEpTT04ucGFyc2UoZGF0YSkgOiBkYXRhO1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXRpYyBjbGVhclN0b3JhZ2UoY2xlYXI6ICgpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIGNsZWFyKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,9 @@
1
+ export var LocalStorageKeys;
2
+ (function (LocalStorageKeys) {
3
+ LocalStorageKeys["LANGUAGE"] = "LANGUAGE";
4
+ LocalStorageKeys["TOKEN"] = "TOKEN";
5
+ })(LocalStorageKeys || (LocalStorageKeys = {}));
6
+ export var SessionStorageKeys;
7
+ (function (SessionStorageKeys) {
8
+ })(SessionStorageKeys || (SessionStorageKeys = {}));
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcnRhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2hhbmRsZXJzL3N0b3J0YWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDMUIseUNBQXFCLENBQUE7SUFDckIsbUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUczQjtBQUVELE1BQU0sQ0FBTixJQUFZLGtCQUFxQjtBQUFqQyxXQUFZLGtCQUFrQjtBQUFFLENBQUMsRUFBckIsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUFHIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gTG9jYWxTdG9yYWdlS2V5cyB7XHJcbiAgTEFOR1VBR0UgPSBcIkxBTkdVQUdFXCIsXHJcbiAgVE9LRU4gPSBcIlRPS0VOXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gU2Vzc2lvblN0b3JhZ2VLZXlzIHt9XHJcbmV4cG9ydCB0eXBlIFN0b3JhZ2VFbnVtID0gU2Vzc2lvblN0b3JhZ2VLZXlzIHwgTG9jYWxTdG9yYWdlS2V5cztcclxuIl19
@@ -0,0 +1,9 @@
1
+ export const COMMON_BASE_URL = "common/api/v1";
2
+ export const APP_HTTP_CONFIG = {
3
+ BOARD_BASE_URL: "board-acl/private/v1",
4
+ MEETING_BASE_URL: "meeting-acl/private/v1",
5
+ IGATE_BASE_URL: COMMON_BASE_URL + "/igate-users",
6
+ LOV_BASE_URL: COMMON_BASE_URL + "/lov",
7
+ ATTACHMENT_BASE_URL: COMMON_BASE_URL + "/attachment"
8
+ };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWh0dHAtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9pbnRlcmNlcHRvcnMvYXBwLWh0dHAtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxlQUFlLENBQUM7QUFDL0MsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzdCLGNBQWMsRUFBRSxzQkFBc0I7SUFDdEMsZ0JBQWdCLEVBQUUsd0JBQXdCO0lBQzFDLGNBQWMsRUFBRSxlQUFlLEdBQUcsY0FBYztJQUNoRCxZQUFZLEVBQUUsZUFBZSxHQUFHLE1BQU07SUFDdEMsbUJBQW1CLEVBQUUsZUFBZSxHQUFHLGFBQWE7Q0FDckQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBDT01NT05fQkFTRV9VUkwgPSBcImNvbW1vbi9hcGkvdjFcIjtcclxuZXhwb3J0IGNvbnN0IEFQUF9IVFRQX0NPTkZJRyA9IHtcclxuICBCT0FSRF9CQVNFX1VSTDogXCJib2FyZC1hY2wvcHJpdmF0ZS92MVwiLFxyXG4gIE1FRVRJTkdfQkFTRV9VUkw6IFwibWVldGluZy1hY2wvcHJpdmF0ZS92MVwiLFxyXG4gIElHQVRFX0JBU0VfVVJMOiBDT01NT05fQkFTRV9VUkwgKyBcIi9pZ2F0ZS11c2Vyc1wiLFxyXG4gIExPVl9CQVNFX1VSTDogQ09NTU9OX0JBU0VfVVJMICsgXCIvbG92XCIsXHJcbiAgQVRUQUNITUVOVF9CQVNFX1VSTDogQ09NTU9OX0JBU0VfVVJMICsgXCIvYXR0YWNobWVudFwiXHJcbn07XHJcbiJdfQ==
@@ -0,0 +1,55 @@
1
+ import { Inject, inject, Injectable } from "@angular/core";
2
+ import { catchError, finalize, tap } from "rxjs";
3
+ import { IS_SYSTEM_LOADER, USE_API_PREFIX } from "../handlers/http-context-handler";
4
+ import { AuthService } from "../services/auth.service";
5
+ import { LoaderService } from "../services/loader.service";
6
+ import { CORE_CONFIG } from "../core-config";
7
+ import * as i0 from "@angular/core";
8
+ export class HttpBaseInterceptor {
9
+ constructor(appConfig) {
10
+ this.appConfig = appConfig;
11
+ this.authService = inject(AuthService);
12
+ this.loaderService = inject(LoaderService);
13
+ }
14
+ intercept(request, next) {
15
+ const useApiPrefix = request.context.get(USE_API_PREFIX);
16
+ const URL = `${this.appConfig.gatewayUrl}${useApiPrefix ? this.appConfig.apiPrefix : ""}${request.url}`;
17
+ const token = this.authService.getUserToken();
18
+ const defaultHeader = {
19
+ Authorization: `Bearer ${token}`,
20
+ Language: "en"
21
+ };
22
+ //Handel Headers
23
+ for (const key in defaultHeader) {
24
+ request = request.clone({
25
+ setHeaders: { [key]: request.headers.get(key) ? request.headers.get(key) : defaultHeader[key] }
26
+ });
27
+ }
28
+ // Clone the request
29
+ request = request.clone({
30
+ url: URL
31
+ });
32
+ console.log("the request from interceptor", request);
33
+ // Handle loader
34
+ const IS_SYSTEM_LOADER_CHECK = request.context.get(IS_SYSTEM_LOADER);
35
+ this.loaderService.setLoading(true, IS_SYSTEM_LOADER_CHECK, request.url);
36
+ return next.handle(request).pipe(
37
+ // Handler Token
38
+ tap((event) => {
39
+ // if (event instanceof HttpResponse && request.url.includes(User_Token)) {
40
+ // Set user token ..
41
+ // }
42
+ }), catchError((error) => {
43
+ throw error;
44
+ }), finalize(() => this.loaderService.setLoading(false, IS_SYSTEM_LOADER_CHECK, request.url)));
45
+ }
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HttpBaseInterceptor, deps: [{ token: CORE_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
47
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HttpBaseInterceptor }); }
48
+ }
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HttpBaseInterceptor, decorators: [{
50
+ type: Injectable
51
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
52
+ type: Inject,
53
+ args: [CORE_CONFIG]
54
+ }] }] });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1odHRwLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9pbnRlcmNlcHRvcnMvYmFzZS1odHRwLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBYyxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBYyxNQUFNLGdCQUFnQixDQUFDOztBQUd6RCxNQUFNLE9BQU8sbUJBQW1CO0lBSTlCLFlBQTJDLFNBQXFCO1FBQXJCLGNBQVMsR0FBVCxTQUFTLENBQVk7UUFIaEUsZ0JBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEMsa0JBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFNkIsQ0FBQztJQUVwRSxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN4RCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6RCxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDeEcsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUU5QyxNQUFNLGFBQWEsR0FBUTtZQUN6QixhQUFhLEVBQUUsVUFBVSxLQUFLLEVBQUU7WUFDaEMsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO1FBRUYsZ0JBQWdCO1FBQ2hCLEtBQUssTUFBTSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7WUFDaEMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7Z0JBQ3RCLFVBQVUsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUU7YUFDaEcsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELG9CQUFvQjtRQUNwQixPQUFPLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUN0QixHQUFHLEVBQUUsR0FBRztTQUNULENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMsOEJBQThCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDckQsZ0JBQWdCO1FBQ2hCLE1BQU0sc0JBQXNCLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXpFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJO1FBQzlCLGdCQUFnQjtRQUNoQixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNaLDRFQUE0RTtZQUM1RSxvQkFBb0I7WUFDcEIsS0FBSztRQUNQLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25CLE1BQU0sS0FBSyxDQUFDO1FBQ2QsQ0FBQyxDQUFDLEVBQ0YsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDMUYsQ0FBQztJQUNKLENBQUM7OEdBNUNVLG1CQUFtQixrQkFJVixXQUFXO2tIQUpwQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVU7OzBCQUtJLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEhhbmRsZXIsIEh0dHBJbnRlcmNlcHRvciwgSHR0cFJlcXVlc3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0LCBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaW5hbGl6ZSwgT2JzZXJ2YWJsZSwgdGFwIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgSVNfU1lTVEVNX0xPQURFUiwgVVNFX0FQSV9QUkVGSVggfSBmcm9tIFwiLi4vaGFuZGxlcnMvaHR0cC1jb250ZXh0LWhhbmRsZXJcIjtcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IExvYWRlclNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvbG9hZGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ09SRV9DT05GSUcsIENvcmVDb25maWcgfSBmcm9tIFwiLi4vY29yZS1jb25maWdcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEh0dHBCYXNlSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcclxuICBsb2FkZXJTZXJ2aWNlID0gaW5qZWN0KExvYWRlclNlcnZpY2UpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KENPUkVfQ09ORklHKSBwcm90ZWN0ZWQgYXBwQ29uZmlnOiBDb3JlQ29uZmlnKSB7fVxyXG5cclxuICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcclxuICAgIGNvbnN0IHVzZUFwaVByZWZpeCA9IHJlcXVlc3QuY29udGV4dC5nZXQoVVNFX0FQSV9QUkVGSVgpO1xyXG4gICAgY29uc3QgVVJMID0gYCR7dGhpcy5hcHBDb25maWcuZ2F0ZXdheVVybH0ke3VzZUFwaVByZWZpeCA/IHRoaXMuYXBwQ29uZmlnLmFwaVByZWZpeCA6IFwiXCJ9JHtyZXF1ZXN0LnVybH1gO1xyXG4gICAgY29uc3QgdG9rZW4gPSB0aGlzLmF1dGhTZXJ2aWNlLmdldFVzZXJUb2tlbigpO1xyXG5cclxuICAgIGNvbnN0IGRlZmF1bHRIZWFkZXI6IGFueSA9IHtcclxuICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3Rva2VufWAsXHJcbiAgICAgIExhbmd1YWdlOiBcImVuXCJcclxuICAgIH07XHJcblxyXG4gICAgLy9IYW5kZWwgSGVhZGVyc1xyXG4gICAgZm9yIChjb25zdCBrZXkgaW4gZGVmYXVsdEhlYWRlcikge1xyXG4gICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgc2V0SGVhZGVyczogeyBba2V5XTogcmVxdWVzdC5oZWFkZXJzLmdldChrZXkpID8gcmVxdWVzdC5oZWFkZXJzLmdldChrZXkpIDogZGVmYXVsdEhlYWRlcltrZXldIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2xvbmUgdGhlIHJlcXVlc3RcclxuICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHtcclxuICAgICAgdXJsOiBVUkxcclxuICAgIH0pO1xyXG4gICAgY29uc29sZS5sb2coXCJ0aGUgcmVxdWVzdCBmcm9tIGludGVyY2VwdG9yXCIsIHJlcXVlc3QpO1xyXG4gICAgLy8gSGFuZGxlIGxvYWRlclxyXG4gICAgY29uc3QgSVNfU1lTVEVNX0xPQURFUl9DSEVDSyA9IHJlcXVlc3QuY29udGV4dC5nZXQoSVNfU1lTVEVNX0xPQURFUik7XHJcbiAgICB0aGlzLmxvYWRlclNlcnZpY2Uuc2V0TG9hZGluZyh0cnVlLCBJU19TWVNURU1fTE9BREVSX0NIRUNLLCByZXF1ZXN0LnVybCk7XHJcblxyXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpLnBpcGUoXHJcbiAgICAgIC8vIEhhbmRsZXIgVG9rZW5cclxuICAgICAgdGFwKChldmVudCkgPT4ge1xyXG4gICAgICAgIC8vICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UgJiYgcmVxdWVzdC51cmwuaW5jbHVkZXMoVXNlcl9Ub2tlbikpIHtcclxuICAgICAgICAvLyBTZXQgdXNlciB0b2tlbiAuLlxyXG4gICAgICAgIC8vICB9XHJcbiAgICAgIH0pLFxyXG4gICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xyXG4gICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICB9KSxcclxuICAgICAgZmluYWxpemUoKCkgPT4gdGhpcy5sb2FkZXJTZXJ2aWNlLnNldExvYWRpbmcoZmFsc2UsIElTX1NZU1RFTV9MT0FERVJfQ0hFQ0ssIHJlcXVlc3QudXJsKSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { retry, timer } from 'rxjs';
2
+ export class GlobalHttpErrorInterceptor {
3
+ // check if it is a server error to retry the request
4
+ shouldRetry(error) {
5
+ if (error.status >= 500) {
6
+ return timer(1000);
7
+ }
8
+ throw error;
9
+ }
10
+ intercept(request, next) {
11
+ return next.handle(request).pipe(retry({
12
+ count: 1,
13
+ delay: this.shouldRetry
14
+ }));
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWh0dHAtZXJyb3IuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2ludGVyY2VwdG9ycy9nbG9iYWwtaHR0cC1lcnJvci5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWMsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVoRCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLHFEQUFxRDtJQUNyRCxXQUFXLENBQUMsS0FBd0I7UUFDbEMsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JCLENBQUM7UUFDRCxNQUFNLEtBQUssQ0FBQztJQUNkLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN4RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM5QixLQUFLLENBQUM7WUFDSixLQUFLLEVBQUUsQ0FBQztZQUNSLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVztTQUN4QixDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCByZXRyeSwgdGltZXIgfSBmcm9tICdyeGpzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBHbG9iYWxIdHRwRXJyb3JJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgLy8gY2hlY2sgaWYgaXQgaXMgYSBzZXJ2ZXIgZXJyb3IgdG8gcmV0cnkgdGhlIHJlcXVlc3RcclxuICBzaG91bGRSZXRyeShlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpIHtcclxuICAgIGlmIChlcnJvci5zdGF0dXMgPj0gNTAwKSB7XHJcbiAgICAgIHJldHVybiB0aW1lcigxMDAwKTtcclxuICAgIH1cclxuICAgIHRocm93IGVycm9yO1xyXG4gIH1cclxuXHJcbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XHJcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShcclxuICAgICAgcmV0cnkoe1xyXG4gICAgICAgIGNvdW50OiAxLFxyXG4gICAgICAgIGRlbGF5OiB0aGlzLnNob3VsZFJldHJ5XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from "./app-http-config";
2
+ export * from "./base-http.interceptor";
3
+ export * from "./global-http-error.interceptor";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2ludGVyY2VwdG9ycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2FwcC1odHRwLWNvbmZpZ1wiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9iYXNlLWh0dHAuaW50ZXJjZXB0b3JcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vZ2xvYmFsLWh0dHAtZXJyb3IuaW50ZXJjZXB0b3JcIjtcclxuIl19
@@ -0,0 +1,4 @@
1
+ export * from "./router-data.interface";
2
+ export * from "./list-response.interface";
3
+ export * from "./user-info.interface";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2ludGVyZmFjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQTtBQUN2QyxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9yb3V0ZXItZGF0YS5pbnRlcmZhY2VcIlxyXG5leHBvcnQgKiBmcm9tIFwiLi9saXN0LXJlc3BvbnNlLmludGVyZmFjZVwiXHJcbmV4cG9ydCAqIGZyb20gXCIuL3VzZXItaW5mby5pbnRlcmZhY2VcIlxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LXRva2VuLWRlY29kZWQuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9pbnRlcmZhY2VzL2p3dC10b2tlbi1kZWNvZGVkLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSnd0UGF5bG9hZCB9IGZyb20gXCJqd3QtZGVjb2RlXCI7XHJcbmltcG9ydCB7IFVzZXJQcm9maWxlRGF0YSB9IGZyb20gXCIuL3VzZXItcHJvZmlsZS1kYXRhXCI7XHJcbmV4cG9ydCBpbnRlcmZhY2UgSldURGVjb2RlZCBleHRlbmRzIEp3dFBheWxvYWQge1xyXG4gIHBlcm1pc3Npb25zOiBzdHJpbmdbXTtcclxuICByb2xlOiBzdHJpbmc7XHJcbiAgcHJvZmlsZTogVXNlclByb2ZpbGVEYXRhO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1yZXNwb25zZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2ludGVyZmFjZXMvbGlzdC1yZXNwb25zZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTGlzdFJlc3BvbnNlPFQ+IHtcclxuICBkYXRhOiBUO1xyXG4gIHRvdGFsRWxlbWVudHM6IG51bWJlcjtcclxuICB0b3RhbFBhZ2VzOiBudW1iZXI7XHJcbn1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLWRhdGEuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9pbnRlcmZhY2VzL3JvdXRlci1kYXRhLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGUgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7UGVybWlzc2lvbnNBY3Rpb25zLCBVc2VyUGVybWlzc2lvbnNFbnVtfSBmcm9tIFwiLi4vZW51bXNcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUm91dGVEYXRhIHtcclxuICBicmVhZGNydW1iPzogKChkYXRhOiBSb3V0ZURhdGEpID0+IHN0cmluZykgfCBzdHJpbmc7XHJcbiAgc2hvd0JyZWFkY3J1bWI/OiBib29sZWFuO1xyXG4gIGlzQ2xpY2thYmxlSW5CcmVhZGNydW1iPzogYm9vbGVhbjtcclxuICBwZXJtaXNzaW9ucz86IFJvdXRlUGVybWlzc2lvbnNJbmZvO1xyXG5cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIFtrZXk6IHN0cmluZ106IGFueTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlUGVybWlzc2lvbnNJbmZvIHtcclxuICBrZXk6IFVzZXJQZXJtaXNzaW9uc0VudW07XHJcbiAgYWN0aW9uOiBQZXJtaXNzaW9uc0FjdGlvbnM7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBBcHBSb3V0ZSBleHRlbmRzIFJvdXRlIHtcclxuICBkYXRhPzogUm91dGVEYXRhO1xyXG4gIGNoaWxkcmVuPzogQXBwUm91dGVbXTtcclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1pbmZvLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvcmUvaW50ZXJmYWNlcy91c2VyLWluZm8uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFVzZXJJbmZvIHtcclxuICAgIHVzZXJOYW1lOnN0cmluZztcclxuICAgIGVtYWlsOnN0cmluZztcclxufSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb3JlL2ludGVyZmFjZXMvdXNlci1wcm9maWxlLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVXNlclByb2ZpbGVEYXRhIHtcclxuICBjb250YWN0OiBDb250YWN0O1xyXG4gIHBvc2l0aW9uOiBQb3NpdGlvbjtcclxuICBlbWFpbDogc3RyaW5nO1xyXG4gIHByb2ZpbGVJbWFnZTogc3RyaW5nO1xyXG4gIG5hbWVFbjogc3RyaW5nO1xyXG4gIG5hbWVBcjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhY3Qge1xyXG4gIG1vYmlsZTogc3RyaW5nO1xyXG4gIHdvcms6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQb3NpdGlvbiB7XHJcbiAgY29kZTogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxufVxyXG5cclxuIl19
@@ -0,0 +1,64 @@
1
+ import { Inject, Injectable } from "@angular/core";
2
+ import { BehaviorSubject } from "rxjs";
3
+ import { StorageHandler } from "../handlers/storage-handler";
4
+ import { LocalStorageKeys } from "../handlers/stortage";
5
+ import { BaseHttpService } from "./base-http-service";
6
+ import { CORE_CONFIG } from "../core-config";
7
+ import * as i0 from "@angular/core";
8
+ export class AuthService extends BaseHttpService {
9
+ constructor(appConfig) {
10
+ super();
11
+ this.appConfig = appConfig;
12
+ this.isUserLoggedIn$ = new BehaviorSubject(this.isLoggedIn());
13
+ }
14
+ setApiConfig() {
15
+ return {
16
+ apiUrl: "",
17
+ microServiceUrl: ""
18
+ };
19
+ }
20
+ initAuthentication() {
21
+ const token = new URLSearchParams(window.location.search).get("token");
22
+ if (token) {
23
+ this.setAuthentication(token);
24
+ window.location.search = "";
25
+ }
26
+ }
27
+ setAuthentication(token) {
28
+ this.isUserLoggedIn$.next(true);
29
+ this.setUserToken(token);
30
+ }
31
+ isLoggedIn() {
32
+ return !!this.getUserToken();
33
+ }
34
+ getUserToken() {
35
+ return StorageHandler.local.get(LocalStorageKeys.TOKEN);
36
+ }
37
+ setUserToken(token) {
38
+ return StorageHandler.local.set(LocalStorageKeys.TOKEN, token);
39
+ }
40
+ logoutFromSSO() {
41
+ const logoutUrl = this.appConfig.logoutEndpoint;
42
+ return this.single("", {
43
+ urlRewrite: logoutUrl
44
+ });
45
+ }
46
+ clearAuth() {
47
+ StorageHandler.local.clear();
48
+ StorageHandler.session.clear();
49
+ this.isUserLoggedIn$.next(false);
50
+ window.location.href = this.appConfig.loginUrl;
51
+ }
52
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AuthService, deps: [{ token: CORE_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
53
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AuthService, providedIn: "root" }); }
54
+ }
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AuthService, decorators: [{
56
+ type: Injectable,
57
+ args: [{
58
+ providedIn: "root"
59
+ }]
60
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
61
+ type: Inject,
62
+ args: [CORE_CONFIG]
63
+ }] }] });
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLHFCQUFxQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQWMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFLekQsTUFBTSxPQUFPLFdBQVksU0FBUSxlQUFlO0lBRzlDLFlBQTJDLFNBQXFCO1FBQzlELEtBQUssRUFBRSxDQUFDO1FBRGlDLGNBQVMsR0FBVCxTQUFTLENBQVk7UUFGekQsb0JBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUloRSxDQUFDO0lBRVEsWUFBWTtRQUNuQixPQUFPO1lBQ0wsTUFBTSxFQUFFLEVBQUU7WUFDVixlQUFlLEVBQUUsRUFBRTtTQUNwQixDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQjtRQUNoQixNQUFNLEtBQUssR0FBa0IsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdEYsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDOUIsQ0FBQztJQUNILENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFhO1FBQzdCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYztRQUN6QixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsYUFBYTtRQUNYLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDO1FBQ2hELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBVSxFQUFFLEVBQUU7WUFDOUIsVUFBVSxFQUFFLFNBQVM7U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVM7UUFDUCxjQUFjLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdCLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7SUFDakQsQ0FBQzs4R0FuRFUsV0FBVyxrQkFHRixXQUFXO2tIQUhwQixXQUFXLGNBRlYsTUFBTTs7MkZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUljLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IFN0b3JhZ2VIYW5kbGVyIH0gZnJvbSBcIi4uL2hhbmRsZXJzL3N0b3JhZ2UtaGFuZGxlclwiO1xyXG5pbXBvcnQgeyBMb2NhbFN0b3JhZ2VLZXlzIH0gZnJvbSBcIi4uL2hhbmRsZXJzL3N0b3J0YWdlXCI7XHJcbmltcG9ydCB7IEJhc2VIdHRwU2VydmljZSwgSHR0cENvbmZpZyB9IGZyb20gXCIuL2Jhc2UtaHR0cC1zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IENPUkVfQ09ORklHLCBDb3JlQ29uZmlnIH0gZnJvbSBcIi4uL2NvcmUtY29uZmlnXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogXCJyb290XCJcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dGhTZXJ2aWNlIGV4dGVuZHMgQmFzZUh0dHBTZXJ2aWNlIHtcclxuICBwdWJsaWMgaXNVc2VyTG9nZ2VkSW4kID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0aGlzLmlzTG9nZ2VkSW4oKSk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQ09SRV9DT05GSUcpIHByb3RlY3RlZCBhcHBDb25maWc6IENvcmVDb25maWcpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBzZXRBcGlDb25maWcoKTogSHR0cENvbmZpZyB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBhcGlVcmw6IFwiXCIsXHJcbiAgICAgIG1pY3JvU2VydmljZVVybDogXCJcIlxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGluaXRBdXRoZW50aWNhdGlvbigpIHtcclxuICAgIGNvbnN0IHRva2VuOiBzdHJpbmcgfCBudWxsID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKS5nZXQoXCJ0b2tlblwiKTtcclxuICAgIGlmICh0b2tlbikge1xyXG4gICAgICB0aGlzLnNldEF1dGhlbnRpY2F0aW9uKHRva2VuKTtcclxuICAgICAgd2luZG93LmxvY2F0aW9uLnNlYXJjaCA9IFwiXCI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRBdXRoZW50aWNhdGlvbih0b2tlbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmlzVXNlckxvZ2dlZEluJC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5zZXRVc2VyVG9rZW4odG9rZW4pO1xyXG4gIH1cclxuXHJcbiAgaXNMb2dnZWRJbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMuZ2V0VXNlclRva2VuKCk7XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyVG9rZW4oKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICByZXR1cm4gU3RvcmFnZUhhbmRsZXIubG9jYWwuZ2V0KExvY2FsU3RvcmFnZUtleXMuVE9LRU4pO1xyXG4gIH1cclxuXHJcbiAgc2V0VXNlclRva2VuKHRva2VuPzogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gU3RvcmFnZUhhbmRsZXIubG9jYWwuc2V0KExvY2FsU3RvcmFnZUtleXMuVE9LRU4sIHRva2VuKTtcclxuICB9XHJcblxyXG4gIGxvZ291dEZyb21TU08oKSB7XHJcbiAgICBjb25zdCBsb2dvdXRVcmwgPSB0aGlzLmFwcENvbmZpZy5sb2dvdXRFbmRwb2ludDtcclxuICAgIHJldHVybiB0aGlzLnNpbmdsZTx1bmtub3duPihcIlwiLCB7XHJcbiAgICAgIHVybFJld3JpdGU6IGxvZ291dFVybFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjbGVhckF1dGgoKSB7XHJcbiAgICBTdG9yYWdlSGFuZGxlci5sb2NhbC5jbGVhcigpO1xyXG4gICAgU3RvcmFnZUhhbmRsZXIuc2Vzc2lvbi5jbGVhcigpO1xyXG4gICAgdGhpcy5pc1VzZXJMb2dnZWRJbiQubmV4dChmYWxzZSk7XHJcbiAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHRoaXMuYXBwQ29uZmlnLmxvZ2luVXJsO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1odHRwLXJlc3BvbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9iYXNlLWh0dHAtc2VydmljZS9iYXNlLWh0dHAtcmVzcG9uc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQmFzZUh0dHBSZXNwb25zZTxUPiB7XHJcbiAgY29kZTogbnVtYmVyO1xyXG4gIGVycm9yczogQmFzZUVycm9yO1xyXG4gIHBheWxvYWQ6IFQ7XHJcbiAgc2VydmljZVRpbWU6IHN0cmluZztcclxuICBzdWNjZXNzOiBib29sZWFuO1xyXG59XHJcblxyXG5pbnRlcmZhY2UgQmFzZUVycm9yIHtcclxuICBlcnJvckNvZGU6IHN0cmluZztcclxuICB0eXBlOiBzdHJpbmc7XHJcbiAgdGltZXN0YW1wOiBzdHJpbmc7XHJcbiAgcGFyYW06IHN0cmluZ1tdO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export const HttpRequestOptionsKeys = ['headers', 'params', 'context', 'reportProgress', 'observe', 'responseType'];
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1odHRwLXR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9iYXNlLWh0dHAtc2VydmljZS9iYXNlLWh0dHAtdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0JBLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUNqQyxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDb250ZXh0LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgUGFyYW1zIGFzIFJvdXRlclBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBDb25maWcge1xyXG4gIGFwaVVybD86IHN0cmluZztcclxuICBtaWNyb1NlcnZpY2VVcmw6c3RyaW5nO1xyXG4gIGdsb2JhbE1hcEZuPzogKHJlczogYW55KSA9PiBhbnk7XHJcbiAgbWV0aG9kcz86IFNlcnZpY2VDb25maWc7XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFBhcmFtcyA9XHJcbiAgfCBIdHRwUGFyYW1zXHJcbiAgfCB7IFtwYXJhbTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmtub3duIH07XHJcbmV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0T3B0aW9ucyA9IHtcclxuICBoZWFkZXJzPzpcclxuICAgIHwgSHR0cEhlYWRlcnNcclxuICAgIHwgUm91dGVyUGFyYW1zXHJcbiAgICB8IHsgW2hlYWRlcjogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW10gfTtcclxuICBwYXJhbXM/OiBIdHRwUGFyYW1zIHwgeyBbcGFyYW06IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdIH0gfCBQYXJhbXM7XHJcbiAgY29udGV4dD86IEh0dHBDb250ZXh0O1xyXG4gIHJlcG9ydFByb2dyZXNzPzogYm9vbGVhbjtcclxuICBvYnNlcnZlPzogJ2V2ZW50cyc7XHJcbiAgcmVzcG9uc2VUeXBlPzogc3RyaW5nO1xyXG59O1xyXG5leHBvcnQgY29uc3QgSHR0cFJlcXVlc3RPcHRpb25zS2V5czogQXJyYXk8a2V5b2YgUmVxdWlyZWQ8SHR0cFJlcXVlc3RPcHRpb25zPj4gPVxyXG4gIFsnaGVhZGVycycsICdwYXJhbXMnLCAnY29udGV4dCcsICdyZXBvcnRQcm9ncmVzcycsICdvYnNlcnZlJywgJ3Jlc3BvbnNlVHlwZSddO1xyXG5cclxuZXhwb3J0IHR5cGUgSHR0cE9wdGlvbnM8VCA9IGFueT4gPSBIdHRwUmVxdWVzdE9wdGlvbnMgJiB7XHJcbiAgdXJsUmV3cml0ZT86IHN0cmluZztcclxuICB1cmxQb3N0Zml4Pzogc3RyaW5nO1xyXG4gIG1hcEZuPzogKHJlczogYW55KSA9PiBUO1xyXG59O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlQ29uZmlnIHtcclxuICBzaW5nbGU/OiBIdHRwT3B0aW9ucztcclxuICBnZXRBbGw/OiBIdHRwT3B0aW9ucztcclxuICBhZGQ/OiBIdHRwT3B0aW9ucztcclxuICB1cGRhdGU/OiBIdHRwT3B0aW9ucztcclxuICBkZWxldGU/OiBIdHRwT3B0aW9ucztcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSHR0cE1ldGhvZCA9ICdHRVQnIHwgJ1BPU1QnIHwgJ1BVVCcgfCAnREVMRVRFJztcclxuIl19