aril 0.0.26 → 0.0.27

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 (74) hide show
  1. package/boot/host/src/bootstrap.d.ts +2 -2
  2. package/boot/mfe/src/app.component.d.ts +2 -0
  3. package/boot/mfe/src/appComponentLoader.d.ts +1 -0
  4. package/boot/mfe/src/bootstrap.d.ts +2 -2
  5. package/boot/mfe/src/loadStyles.d.ts +3 -0
  6. package/esm2022/boot/host/src/bootstrap.mjs +5 -4
  7. package/esm2022/boot/mfe/src/app.component.mjs +10 -3
  8. package/esm2022/boot/mfe/src/appComponentLoader.mjs +5 -0
  9. package/esm2022/boot/mfe/src/bootstrap.mjs +8 -24
  10. package/esm2022/boot/mfe/src/loadStyles.mjs +16 -0
  11. package/esm2022/http/index.mjs +2 -1
  12. package/esm2022/http/lib/enums.mjs +2 -1
  13. package/esm2022/http/src/httpClient.mjs +5 -1
  14. package/esm2022/http/src/serviceBase.mjs +10 -42
  15. package/esm2022/http/src/serviceMockBase.mjs +5 -0
  16. package/esm2022/http/src/serviceRequest.mjs +26 -0
  17. package/esm2022/http/src/serviceStateMethods.mjs +79 -3
  18. package/esm2022/keycloak/src/keycloak.manager.mjs +21 -2
  19. package/esm2022/theme/layout/app/profileSidebar/app.profilesidebar.component.mjs +8 -5
  20. package/esm2022/theme/layout/app/topbar/app.topbar.component.mjs +3 -3
  21. package/esm2022/theme/layout/service/app.layout.service.mjs +1 -1
  22. package/esm2022/theme/layout/service/app.menu.service.mjs +3 -1
  23. package/esm2022/util/block/aril-util-block.mjs +5 -0
  24. package/esm2022/util/block/index.mjs +2 -0
  25. package/esm2022/util/block/src/block.mjs +64 -0
  26. package/esm2022/util/custom_pages/src/notFound.component.mjs +31 -110
  27. package/esm2022/util/pub-sub/src/pub-sub.service.mjs +1 -2
  28. package/fesm2022/{aril-app.component-sZDpvJDM.mjs → aril-app.component-mPKUWoW1.mjs} +11 -4
  29. package/fesm2022/aril-app.component-mPKUWoW1.mjs.map +1 -0
  30. package/fesm2022/{aril-aril-D__IXMsf.mjs → aril-aril-wl8K3sNg.mjs} +19 -17
  31. package/fesm2022/aril-aril-wl8K3sNg.mjs.map +1 -0
  32. package/fesm2022/aril-boot-host.mjs +5 -5
  33. package/fesm2022/aril-boot-host.mjs.map +1 -1
  34. package/fesm2022/{aril-boot-mfe-app.component-zro0FnKY.mjs → aril-boot-mfe-app.component-KNYNmuuQ.mjs} +10 -3
  35. package/fesm2022/aril-boot-mfe-app.component-KNYNmuuQ.mjs.map +1 -0
  36. package/fesm2022/aril-boot-mfe.mjs +14 -11
  37. package/fesm2022/aril-boot-mfe.mjs.map +1 -1
  38. package/fesm2022/aril-http.mjs +117 -40
  39. package/fesm2022/aril-http.mjs.map +1 -1
  40. package/fesm2022/aril-keycloak.mjs +20 -1
  41. package/fesm2022/aril-keycloak.mjs.map +1 -1
  42. package/fesm2022/aril-theme-layout.mjs +11 -7
  43. package/fesm2022/aril-theme-layout.mjs.map +1 -1
  44. package/fesm2022/aril-util-block.mjs +71 -0
  45. package/fesm2022/aril-util-block.mjs.map +1 -0
  46. package/fesm2022/aril-util-custom_pages.mjs +30 -109
  47. package/fesm2022/aril-util-custom_pages.mjs.map +1 -1
  48. package/fesm2022/aril-util-pub-sub.mjs +0 -1
  49. package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
  50. package/fesm2022/aril.mjs +2 -2
  51. package/http/index.d.ts +1 -0
  52. package/http/lib/enums.d.ts +2 -1
  53. package/http/src/httpClient.d.ts +2 -0
  54. package/http/src/serviceBase.d.ts +5 -2
  55. package/http/src/serviceMockBase.d.ts +6 -0
  56. package/http/src/serviceRequest.d.ts +4 -0
  57. package/http/src/serviceStateMethods.d.ts +12 -2
  58. package/keycloak/src/keycloak.manager.d.ts +1 -0
  59. package/package.json +19 -13
  60. package/scripts/util/blockui.min.js +7 -0
  61. package/styles/util/blockui.css +56 -0
  62. package/theme/layout/app/profileSidebar/app.profilesidebar.component.d.ts +3 -0
  63. package/theme/layout/app/profileSidebar/app.profilesidebar.component.html +151 -152
  64. package/theme/layout/app/profileSidebar/app.profilesidebar.component.ts +31 -24
  65. package/theme/layout/app/topbar/app.topbar.component.html +45 -45
  66. package/theme/layout/app/topbar/app.topbar.component.ts +32 -32
  67. package/theme/layout/service/app.layout.service.ts +178 -178
  68. package/theme/layout/service/app.menu.service.ts +2 -0
  69. package/util/block/index.d.ts +1 -0
  70. package/util/block/src/block.d.ts +28 -0
  71. package/util/pub-sub/src/pub-sub.service.d.ts +0 -1
  72. package/fesm2022/aril-app.component-sZDpvJDM.mjs.map +0 -1
  73. package/fesm2022/aril-aril-D__IXMsf.mjs.map +0 -1
  74. package/fesm2022/aril-boot-mfe-app.component-zro0FnKY.mjs.map +0 -1
@@ -1,122 +1,43 @@
1
1
  import { Component } from '@angular/core';
2
+ import { RouterModule } from '@angular/router';
3
+ import { ButtonModule } from 'primeng/button';
2
4
  import * as i0 from "@angular/core";
5
+ import * as i1 from "primeng/button";
6
+ import * as i2 from "@angular/router";
3
7
  export class NotFoundComponent {
4
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: NotFoundComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
6
- <div
7
- class="surface-ground flex align-items-center justify-content-center min-h-screen min-w-screen overflow-hidden">
8
- <div class="flex flex-column align-items-center justify-content-center">
9
- <img src="assets/demo/images/notfound/logo-blue.svg" alt="Sakai logo" class="mb-5 w-6rem flex-shrink-0" />
10
- <div
11
- style="
12
- border-radius: 56px;
13
- padding: 0.3rem;
14
- background: linear-gradient(180deg, rgba(33, 150, 243, 0.4) 10%, rgba(33, 150, 243, 0) 30%);
15
- ">
16
- <div
17
- class="w-full surface-card py-8 px-5 sm:px-8 flex flex-column align-items-center"
18
- style="border-radius: 53px">
19
- <span class="text-blue-500 font-bold text-3xl">404</span>
20
- <h1 class="text-900 font-bold text-3xl lg:text-5xl mb-2">Not Found</h1>
21
- <div class="text-600 mb-5">Requested resource is not available.</div>
22
- <a routerLink="/" class="w-full flex align-items-center py-5 border-300 border-bottom-1">
23
- <span
24
- class="flex justify-content-center align-items-center bg-cyan-400 border-round"
25
- style="height: 3.5rem; width: 3.5rem">
26
- <i class="text-50 pi pi-fw pi-table text-2xl"></i>
27
- </span>
28
- <span class="ml-4 flex flex-column">
29
- <span class="text-900 lg:text-xl font-medium mb-0 block">Frequently Asked Questions</span>
30
- <span class="text-600 lg:text-xl">Ultricies mi quis hendrerit dolor.</span>
31
- </span>
32
- </a>
33
- <a routerLink="/" class="w-full flex align-items-center py-5 border-300 border-bottom-1">
34
- <span
35
- class="flex justify-content-center align-items-center bg-orange-400 border-round"
36
- style="height: 3.5rem; width: 3.5rem">
37
- <i class="pi pi-fw pi-question-circle text-50 text-2xl"></i>
38
- </span>
39
- <span class="ml-4 flex flex-column">
40
- <span class="text-900 lg:text-xl font-medium mb-0">Solution Center</span>
41
- <span class="text-600 lg:text-xl">Phasellus faucibus scelerisque eleifend.</span>
42
- </span>
43
- </a>
44
- <a routerLink="/" class="w-full flex align-items-center mb-5 py-5 border-300 border-bottom-1">
45
- <span
46
- class="flex justify-content-center align-items-center bg-indigo-400 border-round"
47
- style="height: 3.5rem; width: 3.5rem">
48
- <i class="pi pi-fw pi-unlock text-50 text-2xl"></i>
49
- </span>
50
- <span class="ml-4 flex flex-column">
51
- <span class="text-900 lg:text-xl font-medium mb-0">Permission Manager</span>
52
- <span class="text-600 lg:text-xl">Accumsan in nisl nisi scelerisque</span>
53
- </span>
54
- </a>
55
- </div>
56
- </div>
57
- </div>
58
- </div>
59
- `, isInline: true }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: NotFoundComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
10
+ <svg viewBox="0 0 960 540" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" class="min-h-screen min-w-screen fixed left-0" style="bottom:-10rem" preserveAspectRatio="none">
11
+ <rect x="0" y="0" width="960" height="540" fill="var(--surface-ground)"></rect>
12
+ <path d="M0 331L26.7 321C53.3 311 106.7 291 160 291C213.3 291 266.7 311 320 329.5C373.3 348 426.7 365 480 373.2C533.3 381.3 586.7 380.7 640 373.8C693.3 367 746.7 354 800 341.2C853.3 328.3 906.7 315.7 933.3 309.3L960 303L960 541L933.3 541C906.7 541 853.3 541 800 541C746.7 541 693.3 541 640 541C586.7 541 533.3 541 480 541C426.7 541 373.3 541 320 541C266.7 541 213.3 541 160 541C106.7 541 53.3 541 26.7 541L0 541Z" fill="var(--primary-color)" stroke-linecap="round" stroke-linejoin="miter"></path>
13
+ </svg>
14
+ <div class="px-5 min-h-screen flex justify-content-center align-items-center">
15
+ <div class="z-1 text-center">
16
+ <div class="text-900 font-bold text-8xl mb-4">Oops!</div>
17
+ <p class="line-height-3 mt-0 mb-5 text-700 text-xl font-medium">Sayfa Bulunamadı</p>
18
+ <p-button routerLink="/" styleClass="p-button-dark font-medium p-button-raised">Anasayfaya Git</p-button>
19
+ </div>
20
+ </div>
21
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "size", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
60
22
  }
61
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: NotFoundComponent, decorators: [{
62
24
  type: Component,
63
25
  args: [{
64
26
  standalone: true,
65
- template: `
66
- <div
67
- class="surface-ground flex align-items-center justify-content-center min-h-screen min-w-screen overflow-hidden">
68
- <div class="flex flex-column align-items-center justify-content-center">
69
- <img src="assets/demo/images/notfound/logo-blue.svg" alt="Sakai logo" class="mb-5 w-6rem flex-shrink-0" />
70
- <div
71
- style="
72
- border-radius: 56px;
73
- padding: 0.3rem;
74
- background: linear-gradient(180deg, rgba(33, 150, 243, 0.4) 10%, rgba(33, 150, 243, 0) 30%);
75
- ">
76
- <div
77
- class="w-full surface-card py-8 px-5 sm:px-8 flex flex-column align-items-center"
78
- style="border-radius: 53px">
79
- <span class="text-blue-500 font-bold text-3xl">404</span>
80
- <h1 class="text-900 font-bold text-3xl lg:text-5xl mb-2">Not Found</h1>
81
- <div class="text-600 mb-5">Requested resource is not available.</div>
82
- <a routerLink="/" class="w-full flex align-items-center py-5 border-300 border-bottom-1">
83
- <span
84
- class="flex justify-content-center align-items-center bg-cyan-400 border-round"
85
- style="height: 3.5rem; width: 3.5rem">
86
- <i class="text-50 pi pi-fw pi-table text-2xl"></i>
87
- </span>
88
- <span class="ml-4 flex flex-column">
89
- <span class="text-900 lg:text-xl font-medium mb-0 block">Frequently Asked Questions</span>
90
- <span class="text-600 lg:text-xl">Ultricies mi quis hendrerit dolor.</span>
91
- </span>
92
- </a>
93
- <a routerLink="/" class="w-full flex align-items-center py-5 border-300 border-bottom-1">
94
- <span
95
- class="flex justify-content-center align-items-center bg-orange-400 border-round"
96
- style="height: 3.5rem; width: 3.5rem">
97
- <i class="pi pi-fw pi-question-circle text-50 text-2xl"></i>
98
- </span>
99
- <span class="ml-4 flex flex-column">
100
- <span class="text-900 lg:text-xl font-medium mb-0">Solution Center</span>
101
- <span class="text-600 lg:text-xl">Phasellus faucibus scelerisque eleifend.</span>
102
- </span>
103
- </a>
104
- <a routerLink="/" class="w-full flex align-items-center mb-5 py-5 border-300 border-bottom-1">
105
- <span
106
- class="flex justify-content-center align-items-center bg-indigo-400 border-round"
107
- style="height: 3.5rem; width: 3.5rem">
108
- <i class="pi pi-fw pi-unlock text-50 text-2xl"></i>
109
- </span>
110
- <span class="ml-4 flex flex-column">
111
- <span class="text-900 lg:text-xl font-medium mb-0">Permission Manager</span>
112
- <span class="text-600 lg:text-xl">Accumsan in nisl nisi scelerisque</span>
113
- </span>
114
- </a>
115
- </div>
116
- </div>
117
- </div>
118
- </div>
27
+ imports: [ButtonModule, RouterModule],
28
+ template: `
29
+ <svg viewBox="0 0 960 540" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" class="min-h-screen min-w-screen fixed left-0" style="bottom:-10rem" preserveAspectRatio="none">
30
+ <rect x="0" y="0" width="960" height="540" fill="var(--surface-ground)"></rect>
31
+ <path d="M0 331L26.7 321C53.3 311 106.7 291 160 291C213.3 291 266.7 311 320 329.5C373.3 348 426.7 365 480 373.2C533.3 381.3 586.7 380.7 640 373.8C693.3 367 746.7 354 800 341.2C853.3 328.3 906.7 315.7 933.3 309.3L960 303L960 541L933.3 541C906.7 541 853.3 541 800 541C746.7 541 693.3 541 640 541C586.7 541 533.3 541 480 541C426.7 541 373.3 541 320 541C266.7 541 213.3 541 160 541C106.7 541 53.3 541 26.7 541L0 541Z" fill="var(--primary-color)" stroke-linecap="round" stroke-linejoin="miter"></path>
32
+ </svg>
33
+ <div class="px-5 min-h-screen flex justify-content-center align-items-center">
34
+ <div class="z-1 text-center">
35
+ <div class="text-900 font-bold text-8xl mb-4">Oops!</div>
36
+ <p class="line-height-3 mt-0 mb-5 text-700 text-xl font-medium">Sayfa Bulunamadı</p>
37
+ <p-button routerLink="/" styleClass="p-button-dark font-medium p-button-raised">Anasayfaya Git</p-button>
38
+ </div>
39
+ </div>
119
40
  `
120
41
  }]
121
42
  }] });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90Rm91bmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91dGlsL2N1c3RvbV9wYWdlcy9zcmMvbm90Rm91bmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBNEQxQyxNQUFNLE9BQU8saUJBQWlCOzhHQUFqQixpQkFBaUI7a0dBQWpCLGlCQUFpQix3RUF4RG5COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFzRFQ7OzJGQUVXLGlCQUFpQjtrQkExRDdCLFNBQVM7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBc0RUO2lCQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxkaXZcblx0XHRcdGNsYXNzPVwic3VyZmFjZS1ncm91bmQgZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBtaW4taC1zY3JlZW4gbWluLXctc2NyZWVuIG92ZXJmbG93LWhpZGRlblwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cblx0XHRcdFx0PGltZyBzcmM9XCJhc3NldHMvZGVtby9pbWFnZXMvbm90Zm91bmQvbG9nby1ibHVlLnN2Z1wiIGFsdD1cIlNha2FpIGxvZ29cIiBjbGFzcz1cIm1iLTUgdy02cmVtIGZsZXgtc2hyaW5rLTBcIiAvPlxuXHRcdFx0XHQ8ZGl2XG5cdFx0XHRcdFx0c3R5bGU9XCJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTZweDtcblx0XHRcdFx0cGFkZGluZzogMC4zcmVtO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDMzLCAxNTAsIDI0MywgMC40KSAxMCUsIHJnYmEoMzMsIDE1MCwgMjQzLCAwKSAzMCUpO1xuXHRcdFx0XCI+XG5cdFx0XHRcdFx0PGRpdlxuXHRcdFx0XHRcdFx0Y2xhc3M9XCJ3LWZ1bGwgc3VyZmFjZS1jYXJkIHB5LTggcHgtNSBzbTpweC04IGZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyXCJcblx0XHRcdFx0XHRcdHN0eWxlPVwiYm9yZGVyLXJhZGl1czogNTNweFwiPlxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LWJsdWUtNTAwIGZvbnQtYm9sZCB0ZXh0LTN4bFwiPjQwNDwvc3Bhbj5cblx0XHRcdFx0XHRcdDxoMSBjbGFzcz1cInRleHQtOTAwIGZvbnQtYm9sZCB0ZXh0LTN4bCBsZzp0ZXh0LTV4bCBtYi0yXCI+Tm90IEZvdW5kPC9oMT5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJ0ZXh0LTYwMCBtYi01XCI+UmVxdWVzdGVkIHJlc291cmNlIGlzIG5vdCBhdmFpbGFibGUuPC9kaXY+XG5cdFx0XHRcdFx0XHQ8YSByb3V0ZXJMaW5rPVwiL1wiIGNsYXNzPVwidy1mdWxsIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB5LTUgYm9yZGVyLTMwMCBib3JkZXItYm90dG9tLTFcIj5cblx0XHRcdFx0XHRcdFx0PHNwYW5cblx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgYmctY3lhbi00MDAgYm9yZGVyLXJvdW5kXCJcblx0XHRcdFx0XHRcdFx0XHRzdHlsZT1cImhlaWdodDogMy41cmVtOyB3aWR0aDogMy41cmVtXCI+XG5cdFx0XHRcdFx0XHRcdFx0PGkgY2xhc3M9XCJ0ZXh0LTUwIHBpIHBpLWZ3IHBpLXRhYmxlIHRleHQtMnhsXCI+PC9pPlxuXHRcdFx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibWwtNCBmbGV4IGZsZXgtY29sdW1uXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LTkwMCBsZzp0ZXh0LXhsIGZvbnQtbWVkaXVtIG1iLTAgYmxvY2tcIj5GcmVxdWVudGx5IEFza2VkIFF1ZXN0aW9uczwvc3Bhbj5cblx0XHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRleHQtNjAwIGxnOnRleHQteGxcIj5VbHRyaWNpZXMgbWkgcXVpcyBoZW5kcmVyaXQgZG9sb3IuPC9zcGFuPlxuXHRcdFx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0XHQ8L2E+XG5cdFx0XHRcdFx0XHQ8YSByb3V0ZXJMaW5rPVwiL1wiIGNsYXNzPVwidy1mdWxsIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB5LTUgYm9yZGVyLTMwMCBib3JkZXItYm90dG9tLTFcIj5cblx0XHRcdFx0XHRcdFx0PHNwYW5cblx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgYmctb3JhbmdlLTQwMCBib3JkZXItcm91bmRcIlxuXHRcdFx0XHRcdFx0XHRcdHN0eWxlPVwiaGVpZ2h0OiAzLjVyZW07IHdpZHRoOiAzLjVyZW1cIj5cblx0XHRcdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWZ3IHBpLXF1ZXN0aW9uLWNpcmNsZSB0ZXh0LTUwIHRleHQtMnhsXCI+PC9pPlxuXHRcdFx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibWwtNCBmbGV4IGZsZXgtY29sdW1uXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LTkwMCBsZzp0ZXh0LXhsIGZvbnQtbWVkaXVtIG1iLTBcIj5Tb2x1dGlvbiBDZW50ZXI8L3NwYW4+XG5cdFx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LTYwMCBsZzp0ZXh0LXhsXCI+UGhhc2VsbHVzIGZhdWNpYnVzIHNjZWxlcmlzcXVlIGVsZWlmZW5kLjwvc3Bhbj5cblx0XHRcdFx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHRcdFx0PC9hPlxuXHRcdFx0XHRcdFx0PGEgcm91dGVyTGluaz1cIi9cIiBjbGFzcz1cInctZnVsbCBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtYi01IHB5LTUgYm9yZGVyLTMwMCBib3JkZXItYm90dG9tLTFcIj5cblx0XHRcdFx0XHRcdFx0PHNwYW5cblx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgYmctaW5kaWdvLTQwMCBib3JkZXItcm91bmRcIlxuXHRcdFx0XHRcdFx0XHRcdHN0eWxlPVwiaGVpZ2h0OiAzLjVyZW07IHdpZHRoOiAzLjVyZW1cIj5cblx0XHRcdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWZ3IHBpLXVubG9jayB0ZXh0LTUwIHRleHQtMnhsXCI+PC9pPlxuXHRcdFx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibWwtNCBmbGV4IGZsZXgtY29sdW1uXCI+XG5cdFx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LTkwMCBsZzp0ZXh0LXhsIGZvbnQtbWVkaXVtIG1iLTBcIj5QZXJtaXNzaW9uIE1hbmFnZXI8L3NwYW4+XG5cdFx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LTYwMCBsZzp0ZXh0LXhsXCI+QWNjdW1zYW4gaW4gbmlzbCBuaXNpIHNjZWxlcmlzcXVlPC9zcGFuPlxuXHRcdFx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0XHQ8L2E+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdGBcbn0pXG5leHBvcnQgY2xhc3MgTm90Rm91bmRDb21wb25lbnQge31cbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90Rm91bmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91dGlsL2N1c3RvbV9wYWdlcy9zcmMvbm90Rm91bmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQW1COUMsTUFBTSxPQUFPLGlCQUFpQjs4R0FBakIsaUJBQWlCO2tHQUFqQixpQkFBaUIsd0VBZG5COzs7Ozs7Ozs7Ozs7RUFZVCwyREFiUyxZQUFZLG9XQUFDLFlBQVk7OzJGQWV2QixpQkFBaUI7a0JBakI3QixTQUFTO21CQUFDO29CQUNWLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUMsWUFBWSxDQUFDO29CQUNwQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7OztFQVlUO2lCQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciwgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9idXR0b24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRpbXBvcnRzOiBbQnV0dG9uTW9kdWxlLFJvdXRlck1vZHVsZV0sXHJcblx0dGVtcGxhdGU6IGBcclxuXHRcdDxzdmcgdmlld0JveD1cIjAgMCA5NjAgNTQwXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHZlcnNpb249XCIxLjFcIiBjbGFzcz1cIm1pbi1oLXNjcmVlbiBtaW4tdy1zY3JlZW4gZml4ZWQgbGVmdC0wXCIgc3R5bGU9XCJib3R0b206LTEwcmVtXCIgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIj5cclxuICAgIDxyZWN0IHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjk2MFwiIGhlaWdodD1cIjU0MFwiIGZpbGw9XCJ2YXIoLS1zdXJmYWNlLWdyb3VuZClcIj48L3JlY3Q+XHJcbiAgICA8cGF0aCBkPVwiTTAgMzMxTDI2LjcgMzIxQzUzLjMgMzExIDEwNi43IDI5MSAxNjAgMjkxQzIxMy4zIDI5MSAyNjYuNyAzMTEgMzIwIDMyOS41QzM3My4zIDM0OCA0MjYuNyAzNjUgNDgwIDM3My4yQzUzMy4zIDM4MS4zIDU4Ni43IDM4MC43IDY0MCAzNzMuOEM2OTMuMyAzNjcgNzQ2LjcgMzU0IDgwMCAzNDEuMkM4NTMuMyAzMjguMyA5MDYuNyAzMTUuNyA5MzMuMyAzMDkuM0w5NjAgMzAzTDk2MCA1NDFMOTMzLjMgNTQxQzkwNi43IDU0MSA4NTMuMyA1NDEgODAwIDU0MUM3NDYuNyA1NDEgNjkzLjMgNTQxIDY0MCA1NDFDNTg2LjcgNTQxIDUzMy4zIDU0MSA0ODAgNTQxQzQyNi43IDU0MSAzNzMuMyA1NDEgMzIwIDU0MUMyNjYuNyA1NDEgMjEzLjMgNTQxIDE2MCA1NDFDMTA2LjcgNTQxIDUzLjMgNTQxIDI2LjcgNTQxTDAgNTQxWlwiIGZpbGw9XCJ2YXIoLS1wcmltYXJ5LWNvbG9yKVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJtaXRlclwiPjwvcGF0aD5cclxuPC9zdmc+XHJcbjxkaXYgY2xhc3M9XCJweC01IG1pbi1oLXNjcmVlbiBmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiei0xIHRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtOTAwIGZvbnQtYm9sZCB0ZXh0LTh4bCBtYi00XCI+T29wcyE8L2Rpdj5cclxuICAgICAgICA8cCBjbGFzcz1cImxpbmUtaGVpZ2h0LTMgbXQtMCBtYi01IHRleHQtNzAwIHRleHQteGwgZm9udC1tZWRpdW1cIj5TYXlmYSBCdWx1bmFtYWTEsTwvcD5cclxuICAgICAgICA8cC1idXR0b24gcm91dGVyTGluaz1cIi9cIiBzdHlsZUNsYXNzPVwicC1idXR0b24tZGFyayBmb250LW1lZGl1bSBwLWJ1dHRvbi1yYWlzZWRcIj5BbmFzYXlmYXlhIEdpdDwvcC1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcblx0YFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTm90Rm91bmRDb21wb25lbnQge31cclxuIl19
@@ -2,7 +2,6 @@
2
2
  import { Injectable } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export const PubSubEvents = {
5
- popstate: 'popstate',
6
5
  navigateBetweenApps: 'navigateBetweenApps',
7
6
  navigateInApps: 'navigateInApps'
8
7
  };
@@ -27,4 +26,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
27
26
  providedIn: 'root'
28
27
  }]
29
28
  }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHViLXN1Yi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91dGlsL3B1Yi1zdWIvc3JjL3B1Yi1zdWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVM0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHO0lBQzNCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLG1CQUFtQixFQUFFLHFCQUFxQjtJQUMxQyxjQUFjLEVBQUUsZ0JBQWdCO0NBQ2hDLENBQUM7QUFLRixNQUFNLE9BQU8sYUFBYTtJQUN6QixPQUFPLENBQUMsQ0FBYztRQUNyQixhQUFhLENBQUMsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxTQUFTLENBQUMsU0FBb0MsRUFBRSxRQUE2QjtRQUM1RSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUMxQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVcsQ0FBQyxTQUFvQyxFQUFFLFFBQW9CO1FBQ3JFLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDOzhHQWJXLGFBQWE7a0hBQWIsYUFBYSxjQUZiLE1BQU07OzJGQUVOLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG50eXBlIEN1c3RvbUV2ZW50ID0ge1xuXHRuYW1lOiBrZXlvZiB0eXBlb2YgUHViU3ViRXZlbnRzO1xuXHRkYXRhOiB7XG5cdFx0cGF0aDogc3RyaW5nO1xuXHRcdGN1c3RvbT86IGFueTtcblx0fTtcbn07XG5cbmV4cG9ydCBjb25zdCBQdWJTdWJFdmVudHMgPSB7XG5cdHBvcHN0YXRlOiAncG9wc3RhdGUnLFxuXHRuYXZpZ2F0ZUJldHdlZW5BcHBzOiAnbmF2aWdhdGVCZXR3ZWVuQXBwcycsXG5cdG5hdmlnYXRlSW5BcHBzOiAnbmF2aWdhdGVJbkFwcHMnXG59O1xuXG5ASW5qZWN0YWJsZSh7XG5cdHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQdWJTdWJTZXJ2aWNlIHtcblx0cHVibGlzaChlOiBDdXN0b21FdmVudCkge1xuXHRcdGRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KGUubmFtZSwgeyBkZXRhaWw6IGUuZGF0YSB9KSk7XG5cdH1cblxuXHRzdWJzY3JpYmUoZXZlbnROYW1lOiBrZXlvZiB0eXBlb2YgUHViU3ViRXZlbnRzLCBsaXN0ZW5lcjogKGRhdGE6IGFueSkgPT4gdm9pZCkge1xuXHRcdGFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCAoZXZlbnQ6IGFueSkgPT4ge1xuXHRcdFx0bGlzdGVuZXIoZXZlbnQuZGV0YWlsKTtcblx0XHR9KTtcblx0fVxuXG5cdHVuU3Vic2NyaWJlKGV2ZW50TmFtZToga2V5b2YgdHlwZW9mIFB1YlN1YkV2ZW50cywgbGlzdGVuZXI6ICgpID0+IHZvaWQpIHtcblx0XHRyZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgbGlzdGVuZXIpO1xuXHR9XG59XG4iXX0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHViLXN1Yi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91dGlsL3B1Yi1zdWIvc3JjL3B1Yi1zdWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVM0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHO0lBQzNCLG1CQUFtQixFQUFFLHFCQUFxQjtJQUMxQyxjQUFjLEVBQUUsZ0JBQWdCO0NBQ2hDLENBQUM7QUFLRixNQUFNLE9BQU8sYUFBYTtJQUN6QixPQUFPLENBQUMsQ0FBYztRQUNyQixhQUFhLENBQUMsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxTQUFTLENBQUMsU0FBb0MsRUFBRSxRQUE2QjtRQUM1RSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUMxQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVcsQ0FBQyxTQUFvQyxFQUFFLFFBQW9CO1FBQ3JFLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDOzhHQWJXLGFBQWE7a0hBQWIsYUFBYSxjQUZiLE1BQU07OzJGQUVOLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG50eXBlIEN1c3RvbUV2ZW50ID0ge1xuXHRuYW1lOiBrZXlvZiB0eXBlb2YgUHViU3ViRXZlbnRzO1xuXHRkYXRhOiB7XG5cdFx0cGF0aDogc3RyaW5nO1xuXHRcdGN1c3RvbT86IGFueTtcblx0fTtcbn07XG5cbmV4cG9ydCBjb25zdCBQdWJTdWJFdmVudHMgPSB7XG5cdG5hdmlnYXRlQmV0d2VlbkFwcHM6ICduYXZpZ2F0ZUJldHdlZW5BcHBzJyxcblx0bmF2aWdhdGVJbkFwcHM6ICduYXZpZ2F0ZUluQXBwcydcbn07XG5cbkBJbmplY3RhYmxlKHtcblx0cHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFB1YlN1YlNlcnZpY2Uge1xuXHRwdWJsaXNoKGU6IEN1c3RvbUV2ZW50KSB7XG5cdFx0ZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoZS5uYW1lLCB7IGRldGFpbDogZS5kYXRhIH0pKTtcblx0fVxuXG5cdHN1YnNjcmliZShldmVudE5hbWU6IGtleW9mIHR5cGVvZiBQdWJTdWJFdmVudHMsIGxpc3RlbmVyOiAoZGF0YTogYW55KSA9PiB2b2lkKSB7XG5cdFx0YWRkRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIChldmVudDogYW55KSA9PiB7XG5cdFx0XHRsaXN0ZW5lcihldmVudC5kZXRhaWwpO1xuXHRcdH0pO1xuXHR9XG5cblx0dW5TdWJzY3JpYmUoZXZlbnROYW1lOiBrZXlvZiB0eXBlb2YgUHViU3ViRXZlbnRzLCBsaXN0ZW5lcjogKCkgPT4gdm9pZCkge1xuXHRcdHJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBsaXN0ZW5lcik7XG5cdH1cbn1cbiJdfQ==
@@ -2,10 +2,10 @@ import * as i0 from '@angular/core';
2
2
  import { Component } from '@angular/core';
3
3
  import * as i1 from '@angular/router';
4
4
  import { RouterOutlet } from '@angular/router';
5
- import { connectRouter, ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';
5
+ import { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';
6
6
  import * as i3 from 'aril/theme/layout';
7
7
  import { AppLayoutComponent, MFELayoutComponent } from 'aril/theme/layout';
8
- import { a as appName, m as menuItems } from './aril-aril-D__IXMsf.mjs';
8
+ import { a as appName, m as menuItems } from './aril-aril-wl8K3sNg.mjs';
9
9
  import * as i2 from 'aril/util/pub-sub';
10
10
  import '@angular/common/http';
11
11
  import '@angular/platform-browser';
@@ -21,8 +21,9 @@ import 'aril/util/loaders';
21
21
  /* eslint-disable @typescript-eslint/no-explicit-any */
22
22
  class AppComponent {
23
23
  constructor(router, pubSubService, appMenuService) {
24
+ this.router = router;
24
25
  this.isMFEMode = globalThis.isMFEMode;
25
- connectRouter(router);
26
+ this.connectRouter();
26
27
  globalThis.activeMF = appName;
27
28
  pubSubService.subscribe('navigateInApps', (data) => {
28
29
  if (data.path.startsWith(appName, 1))
@@ -35,6 +36,12 @@ class AppComponent {
35
36
  appMenuService.menuConfig.set({ items: structuredClone(menuItems), prefix: appName });
36
37
  }
37
38
  }
39
+ connectRouter() {
40
+ this.router.initialNavigation();
41
+ window.addEventListener('popstate', () => {
42
+ this.router.initialNavigation();
43
+ });
44
+ }
38
45
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppComponent, deps: [{ token: i1.Router }, { token: i2.PubSubService }, { token: i3.AppMenuService }], target: i0.ɵɵFactoryTarget.Component }); }
39
46
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AppComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
40
47
  @if (isMFEMode) {
@@ -60,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
60
67
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.PubSubService }, { type: i3.AppMenuService }] });
61
68
 
62
69
  export { AppComponent };
63
- //# sourceMappingURL=aril-app.component-sZDpvJDM.mjs.map
70
+ //# sourceMappingURL=aril-app.component-mPKUWoW1.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aril-app.component-mPKUWoW1.mjs","sources":["../../projects/aril/boot/mfe/src/app.component.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Component } from '@angular/core';\nimport { Router, RouterOutlet } from '@angular/router';\n\nimport { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';\n\nimport { AppLayoutComponent, AppMenuService, MFELayoutComponent } from 'aril/theme/layout';\nimport { PubSubService } from 'aril/util/pub-sub';\n\nimport { appName, menuItems } from './bootstrap';\n\n@Component({\n\tstandalone: true,\n\ttemplate: `\n\t\t@if (isMFEMode) {\n\t\t\t<mfe-layout></mfe-layout>\n\t\t} @else {\n\t\t\t<app-layout></app-layout>\n\t\t}\n\t`,\n\timports: [RouterOutlet, ModuleFederationToolsModule, AppLayoutComponent, MFELayoutComponent]\n})\nexport class AppComponent {\n\tconstructor(\n\t\tprivate router: Router,\n\t\tpubSubService: PubSubService,\n\t\tappMenuService: AppMenuService\n\t) {\n\t\tthis.connectRouter();\n\n\t\t(<any>globalThis).activeMF = appName;\n\n\t\tpubSubService.subscribe('navigateInApps', (data: any) => {\n\t\t\tif (data.path.startsWith(appName, 1)) router.navigateByUrl(data.path);\n\t\t});\n\n\t\tif (this.isMFEMode) {\n\t\t\tappMenuService.subMenuConfig.set({ items: structuredClone(menuItems), prefix: appName });\n\t\t} else {\n\t\t\tappMenuService.menuConfig.set({ items: structuredClone(menuItems), prefix: appName });\n\t\t}\n\t}\n\n\tisMFEMode = (<any>globalThis).isMFEMode;\n\n\tconnectRouter() {\n\t\tthis.router.initialNavigation();\n\n\t\twindow.addEventListener('popstate', () => {\n\t\t\tthis.router.initialNavigation();\n\t\t});\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;MAsBa,YAAY,CAAA;AACxB,IAAA,WAAA,CACS,MAAc,EACtB,aAA4B,EAC5B,cAA8B,EAAA;QAFtB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;AAmBvB,QAAA,IAAA,CAAA,SAAS,GAAS,UAAW,CAAC,SAAS,CAAC;QAfvC,IAAI,CAAC,aAAa,EAAE,CAAC;AAEf,QAAA,UAAW,CAAC,QAAQ,GAAG,OAAO,CAAC;QAErC,aAAa,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,IAAS,KAAI;YACvD,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;AAAE,gBAAA,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvE,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AACnB,YAAA,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;SACzF;aAAM;AACN,YAAA,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;SACtF;KACD;IAID,aAAa,GAAA;AACZ,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;AAEhC,QAAA,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAK;AACxC,YAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;AACjC,SAAC,CAAC,CAAC;KACH;8GA7BW,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,EATd,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;AAMT,CAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACuB,2BAA2B,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,QAAA,EAAA,YAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAE/E,YAAY,EAAA,UAAA,EAAA,CAAA;kBAXxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,CAAA;;;;;;AAMT,CAAA,CAAA;oBACD,OAAO,EAAE,CAAC,YAAY,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,kBAAkB,CAAC;AAC5F,iBAAA,CAAA;;;;;"}
@@ -3,13 +3,13 @@ import * as i0 from '@angular/core';
3
3
  import { inject, Renderer2, ElementRef, Component, ViewEncapsulation, ViewChild, NgZone, importProvidersFrom, APP_INITIALIZER, Injectable } from '@angular/core';
4
4
  import { bootstrapApplication, createApplication } from '@angular/platform-browser';
5
5
  import { provideAnimations } from '@angular/platform-browser/animations';
6
+ import * as i1 from '@angular/router';
7
+ import { RouterOutlet, provideRouter, withComponentInputBinding, withHashLocation } from '@angular/router';
6
8
  import { MessageService, ConfirmationService } from 'primeng/api';
7
9
  import { KeycloakAngularModule } from 'keycloak-angular';
8
10
  import { API_TOKEN } from 'aril/http';
9
11
  import { i18nModule, i18nRootFileUrl } from 'aril/i18n';
10
12
  import { authInterceptor, KeycloakManager } from 'aril/keycloak';
11
- import * as i1 from '@angular/router';
12
- import { RouterOutlet } from '@angular/router';
13
13
  import { WebComponentWrapper, ModuleFederationToolsModule, startsWith } from '@angular-architects/module-federation-tools';
14
14
  import { AppLayoutComponent, AppMenuService } from 'aril/theme/layout';
15
15
  import * as i2 from 'aril/util/pub-sub';
@@ -74,19 +74,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
74
74
  }]
75
75
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.PubSubService }] });
76
76
 
77
- const boot$1 = (routerProvider, pluginInitializer, options, apiURL = '') => {
77
+ const boot$1 = (routes, pluginInitializer, keycloakConfig, apiURL = '') => {
78
78
  const appConfig = {
79
79
  providers: [
80
80
  provideAnimations(),
81
81
  provideHttpClient(withInterceptors([authInterceptor])),
82
- routerProvider,
82
+ provideRouter(routes, withComponentInputBinding(), withHashLocation()),
83
83
  importProvidersFrom(i18nModule, KeycloakAngularModule),
84
84
  MessageService,
85
85
  ConfirmationService,
86
86
  pluginInitializer,
87
87
  {
88
88
  provide: APP_INITIALIZER,
89
- useFactory: (keycloak) => keycloak.init(options),
89
+ useFactory: (keycloak) => keycloak.init(keycloakConfig),
90
90
  multi: true,
91
91
  deps: [KeycloakManager]
92
92
  },
@@ -133,42 +133,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
133
133
  args: [{ providedIn: 'root' }]
134
134
  }] });
135
135
 
136
- var appName;
137
- var menuItems = [];
138
136
  const appComponentLoader = async () => {
139
- const { AppComponent } = await import('./aril-app.component-sZDpvJDM.mjs');
137
+ const { AppComponent } = await import('./aril-app.component-mPKUWoW1.mjs');
140
138
  return AppComponent;
141
139
  };
142
- function loadStylesheets(styleLoaderService) {
140
+
141
+ function loadStylesheets(styleLoaderService, appName) {
143
142
  const styles = [
144
143
  'layout.css',
145
144
  'ui.common.css',
146
145
  'preloading.css',
146
+ 'primeng.min.css',
147
147
  'theme.light.indigo.css',
148
- `assets/${appName}/styles/primeng.min.css`,
148
+ 'dx.fluent.saas.light.css',
149
149
  `assets/${appName}/styles/primeflex/primeflex.min.css`,
150
- `assets/${appName}/styles/primeicons/primeicons.css`,
151
- `assets/${appName}/styles/dx.fluent.saas.light.css`
150
+ `assets/${appName}/styles/primeicons/primeicons.css`
152
151
  ];
153
152
  if (globalThis.isMFEMode)
154
153
  return () => Promise.resolve();
155
154
  return () => styleLoaderService.load(styles);
156
155
  }
157
- const boot = (_appName, _routerProvider, _menuItems, _options, _apiURL = '') => {
156
+
157
+ var appName;
158
+ var menuItems = [];
159
+ const boot = (_appName, _routes, _menuItems, _keycloakOptions, _apiURL = '') => {
158
160
  appName = _appName;
159
161
  menuItems = _menuItems;
160
162
  const appConfig = {
161
163
  providers: [
162
164
  provideAnimations(),
163
165
  provideHttpClient(withInterceptors([authInterceptor])),
164
- _routerProvider,
166
+ provideRouter(_routes, withComponentInputBinding(), withHashLocation()),
165
167
  importProvidersFrom(i18nModule, KeycloakAngularModule),
166
168
  MessageService,
167
169
  ConfirmationService,
168
170
  globalThis.ngZone ? { provide: NgZone, useValue: globalThis.ngZone } : [],
169
171
  {
170
172
  provide: APP_INITIALIZER,
171
- useFactory: (keycloak) => keycloak.init(_options),
173
+ useFactory: (keycloak) => keycloak.init(_keycloakOptions),
172
174
  multi: true,
173
175
  deps: [KeycloakManager]
174
176
  },
@@ -176,7 +178,7 @@ const boot = (_appName, _routerProvider, _menuItems, _options, _apiURL = '') =>
176
178
  provide: APP_INITIALIZER,
177
179
  useFactory: loadStylesheets,
178
180
  multi: true,
179
- deps: [StyleLoaderService]
181
+ deps: [StyleLoaderService, i18nRootFileUrl]
180
182
  },
181
183
  {
182
184
  provide: API_TOKEN,
@@ -204,4 +206,4 @@ const aril = 'ARiL-UI-LIB';
204
206
  */
205
207
 
206
208
  export { appName as a, aril as b, menuItems as m };
207
- //# sourceMappingURL=aril-aril-D__IXMsf.mjs.map
209
+ //# sourceMappingURL=aril-aril-wl8K3sNg.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aril-aril-wl8K3sNg.mjs","sources":["../../projects/aril/boot/host/src/services/showdowDOMWrapper.ts","../../projects/aril/boot/host/src/app.component.ts","../../projects/aril/boot/host/src/bootstrap.ts","../../projects/aril/boot/host/src/services/microFrontEnd.service.ts","../../projects/aril/boot/mfe/src/appComponentLoader.ts","../../projects/aril/boot/mfe/src/loadStyles.ts","../../projects/aril/boot/mfe/src/bootstrap.ts","../../projects/aril/public-api.ts","../../projects/aril/aril.ts"],"sourcesContent":["import { Component, ElementRef, OnInit, Renderer2, ViewChild, ViewEncapsulation, inject } from '@angular/core';\n\nimport { WebComponentWrapper } from '@angular-architects/module-federation-tools';\n\n@Component({\n\tstandalone: true,\n\ttemplate: '<div #vc></div>',\n\tencapsulation: ViewEncapsulation.ShadowDom\n})\nexport class ShadowDOMWrapperComponent extends WebComponentWrapper implements OnInit {\n\t@ViewChild('vc', { read: ElementRef, static: true }) override vc!: ElementRef;\n\n\tprivate renderer = inject(Renderer2);\n\n\tngOnInit(): void {\n\t\tconst shadowRoot = this.vc.nativeElement.parentNode;\n\t\tconst styleUrls = this['route'].snapshot.data.styleUrls || [];\n\n\t\t// Inject styles into the Shadow DOM\n\t\tstyleUrls.forEach((url: string) => {\n\t\t\tconst link = this.renderer.createElement('link');\n\t\t\tlink.setAttribute('rel', 'stylesheet');\n\t\t\tlink.setAttribute('type', 'text/css');\n\t\t\tlink.setAttribute('href', url);\n\t\t\tthis.renderer.appendChild(shadowRoot, link);\n\t\t});\n\t}\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Component, NgZone, inject } from '@angular/core';\nimport { Router, RouterOutlet } from '@angular/router';\n\nimport { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';\n\nimport { AppLayoutComponent } from 'aril/theme/layout';\nimport { PubSubService } from 'aril/util/pub-sub';\n\nimport { ShadowDOMWrapperComponent } from './services/showdowDOMWrapper';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-root',\n\ttemplate: ` <app-layout></app-layout> `,\n\timports: [RouterOutlet, ModuleFederationToolsModule, ShadowDOMWrapperComponent, AppLayoutComponent]\n})\nexport class AppComponent {\n\tconstructor(router: Router, pubSubService: PubSubService) {\n\t\t(<any>globalThis).ngZone = inject(NgZone);\n\t\t(<any>globalThis).isMFEMode = true;\n\n\t\tpubSubService.subscribe('navigateBetweenApps', (data: any) => {\n\t\t\trouter.navigateByUrl(data.path);\n\t\t\tpubSubService.publish({\n\t\t\t\tname: 'navigateInApps',\n\t\t\t\tdata: data\n\t\t\t});\n\t\t});\n\t}\n}\n","import { provideHttpClient, withInterceptors } from '@angular/common/http';\nimport { APP_INITIALIZER, ApplicationConfig, importProvidersFrom } from '@angular/core';\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { provideAnimations } from '@angular/platform-browser/animations';\nimport { Routes, provideRouter, withComponentInputBinding, withHashLocation } from '@angular/router';\n\nimport { ConfirmationService, MessageService } from 'primeng/api';\n\nimport { KeycloakAngularModule, KeycloakOptions } from 'keycloak-angular';\n\nimport { API_TOKEN } from 'aril/http';\nimport { i18nModule, i18nRootFileUrl } from 'aril/i18n';\nimport { KeycloakManager, authInterceptor } from 'aril/keycloak';\n\nimport { AppComponent } from './app.component';\nimport { PluginInitializer } from './services/plugin-init.token';\n\nexport const boot = (\n\troutes: Routes,\n\tpluginInitializer: PluginInitializer,\n\tkeycloakConfig: KeycloakOptions,\n\tapiURL: string = ''\n) => {\n\tconst appConfig: ApplicationConfig = {\n\t\tproviders: [\n\t\t\tprovideAnimations(),\n\t\t\tprovideHttpClient(withInterceptors([authInterceptor])),\n\t\t\tprovideRouter(routes, withComponentInputBinding(), withHashLocation()),\n\t\t\timportProvidersFrom(i18nModule, KeycloakAngularModule),\n\t\t\tMessageService,\n\t\t\tConfirmationService,\n\t\t\tpluginInitializer,\n\t\t\t{\n\t\t\t\tprovide: APP_INITIALIZER,\n\t\t\t\tuseFactory: (keycloak: KeycloakManager) => keycloak.init(keycloakConfig),\n\t\t\t\tmulti: true,\n\t\t\t\tdeps: [KeycloakManager]\n\t\t\t},\n\t\t\t{\n\t\t\t\tprovide: API_TOKEN,\n\t\t\t\tuseValue: apiURL\n\t\t\t},\n\t\t\t{\n\t\t\t\tprovide: i18nRootFileUrl,\n\t\t\t\tuseValue: 'host'\n\t\t\t}\n\t\t]\n\t};\n\n\tbootstrapApplication(AppComponent, appConfig).catch((err) => console.error(err));\n};\n","import { Injectable, inject } from '@angular/core';\nimport { Routes } from '@angular/router';\n\nimport { MenuItem } from 'primeng/api';\n\nimport {\n\tWebComponentWrapper,\n\tWebComponentWrapperOptions,\n\tstartsWith\n} from '@angular-architects/module-federation-tools';\n\nimport { AppMenuService } from 'aril/theme/layout';\n\nimport { CustomRemoteConfig } from './custom-manifest';\nimport { ShadowDOMWrapperComponent } from './showdowDOMWrapper';\n\n@Injectable({ providedIn: 'root' })\nexport class MicroFrontendService {\n\tprivate appMenuService = inject(AppMenuService);\n\n\tbuildRoutes(plugins: CustomRemoteConfig[]): Routes {\n\t\tconst mfeRoutes: Routes = plugins.map((config) => ({\n\t\t\tmatcher: startsWith(config.remoteName),\n\t\t\tcomponent: config.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,\n\t\t\tdata: config as WebComponentWrapperOptions\n\t\t}));\n\n\t\treturn mfeRoutes;\n\t}\n\n\tsetMenuItems(plugins: CustomRemoteConfig[]): void {\n\t\tconst menuItems: MenuItem[] = plugins.map((config) => {\n\t\t\treturn {\n\t\t\t\tlabel: config.remoteName,\n\t\t\t\ticon: 'pi pi-fw pi-bars',\n\t\t\t\trouterLink: config.remoteName\n\t\t\t};\n\t\t});\n\n\t\tthis.appMenuService.menuConfig.set({ items: menuItems });\n\t}\n}\n","export const appComponentLoader = async () => {\r\n\tconst { AppComponent } = await import('./app.component');\r\n\treturn AppComponent;\r\n};","import { APIs } from 'aril/http';\r\nimport { StyleLoaderService } from 'aril/util/loaders';\r\n\r\nexport function loadStylesheets(styleLoaderService: StyleLoaderService, appName: APIs): () => Promise<any> {\r\n\tconst styles = [\r\n\t\t'layout.css',\r\n\t\t'ui.common.css',\r\n\t\t'preloading.css',\r\n\t\t'primeng.min.css',\r\n\t\t'theme.light.indigo.css',\r\n\t\t'dx.fluent.saas.light.css',\r\n\t\t`assets/${appName}/styles/primeflex/primeflex.min.css`,\r\n\t\t`assets/${appName}/styles/primeicons/primeicons.css`\r\n\t];\r\n\r\n\tif ((<any>globalThis).isMFEMode) return () => Promise.resolve();\r\n\r\n\treturn () => styleLoaderService.load(styles);\r\n}\r\n","import { provideHttpClient, withInterceptors } from '@angular/common/http';\r\nimport { APP_INITIALIZER, ApplicationConfig, NgZone, importProvidersFrom, isDevMode } from '@angular/core';\r\nimport { createCustomElement } from '@angular/elements';\r\nimport { createApplication } from '@angular/platform-browser';\r\nimport { provideAnimations } from '@angular/platform-browser/animations';\r\nimport { Routes, provideRouter, withComponentInputBinding, withHashLocation } from '@angular/router';\r\n\r\nimport { ConfirmationService, MenuItem, MessageService } from 'primeng/api';\r\n\r\nimport { KeycloakAngularModule, KeycloakOptions } from 'keycloak-angular';\r\n\r\nimport { API_TOKEN, APIs } from 'aril/http';\r\nimport { i18nModule, i18nRootFileUrl } from 'aril/i18n';\r\nimport { KeycloakManager, authInterceptor } from 'aril/keycloak';\r\nimport { StyleLoaderService } from 'aril/util/loaders';\r\n\r\nimport { appComponentLoader } from './appComponentLoader';\r\nimport { loadStylesheets } from './loadStyles';\r\n\r\nexport var appName: APIs | undefined;\r\nexport var menuItems: MenuItem[] = [];\r\n\r\nexport const boot = (\r\n\t_appName: APIs | undefined,\r\n\t_routes: Routes,\r\n\t_menuItems: MenuItem[],\r\n\t_keycloakOptions: KeycloakOptions,\r\n\t_apiURL: string = ''\r\n) => {\r\n\tappName = _appName;\r\n\tmenuItems = _menuItems;\r\n\r\n\tconst appConfig: ApplicationConfig = {\r\n\t\tproviders: [\r\n\t\t\tprovideAnimations(),\r\n\t\t\tprovideHttpClient(withInterceptors([authInterceptor])),\r\n\t\t\tprovideRouter(_routes, withComponentInputBinding(), withHashLocation()),\r\n\t\t\timportProvidersFrom(i18nModule, KeycloakAngularModule),\r\n\t\t\tMessageService,\r\n\t\t\tConfirmationService,\r\n\t\t\t(<any>globalThis).ngZone ? { provide: NgZone, useValue: (<any>globalThis).ngZone } : [],\r\n\t\t\t{\r\n\t\t\t\tprovide: APP_INITIALIZER,\r\n\t\t\t\tuseFactory: (keycloak: KeycloakManager) => keycloak.init(_keycloakOptions),\r\n\t\t\t\tmulti: true,\r\n\t\t\t\tdeps: [KeycloakManager]\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tprovide: APP_INITIALIZER,\r\n\t\t\t\tuseFactory: loadStylesheets,\r\n\t\t\t\tmulti: true,\r\n\t\t\t\tdeps: [StyleLoaderService, i18nRootFileUrl]\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tprovide: API_TOKEN,\r\n\t\t\t\tuseValue: _apiURL\r\n\t\t\t\t// useValue: isDevMode() ? 'http://thor.edas1.com/crm/v1' : _appName + '/v1'\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tprovide: i18nRootFileUrl,\r\n\t\t\t\tuseValue: _appName\r\n\t\t\t}\r\n\t\t]\r\n\t};\r\n\r\n\tcreateApplication(appConfig).then((appRef) => {\r\n\t\tappComponentLoader().then((AppComponent) => {\r\n\t\t\tconst app = createCustomElement(AppComponent, { injector: appRef.injector });\r\n\t\t\tcustomElements.define(`app-${appName}`, app);\r\n\t\t});\r\n\t});\r\n};\r\n","import './boot/host/index';\nimport './boot/mfe/index';\n\nexport const aril = 'ARiL-UI-LIB';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["boot"],"mappings":";;;;;;;;;;;;;;;;;;AASM,MAAO,yBAA0B,SAAQ,mBAAmB,CAAA;AALlE,IAAA,WAAA,GAAA;;AAQS,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAerC,KAAA;IAbA,QAAQ,GAAA;QACP,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC;AACpD,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;;AAG9D,QAAA,SAAS,CAAC,OAAO,CAAC,CAAC,GAAW,KAAI;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACjD,YAAA,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACvC,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACtC,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC7C,SAAC,CAAC,CAAC;KACH;8GAjBW,yBAAyB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,IAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EACZ,UAAU,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJzB,iBAAiB,EAAA,QAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;;2FAGf,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBALrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;oBAC3B,aAAa,EAAE,iBAAiB,CAAC,SAAS;AAC1C,iBAAA,CAAA;8BAE8D,EAAE,EAAA,CAAA;sBAA/D,SAAS;uBAAC,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;;;ACVpD;MAiBa,YAAY,CAAA;IACxB,WAAY,CAAA,MAAc,EAAE,aAA4B,EAAA;AACjD,QAAA,UAAW,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACpC,QAAA,UAAW,CAAC,SAAS,GAAG,IAAI,CAAC;QAEnC,aAAa,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAAC,IAAS,KAAI;AAC5D,YAAA,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChC,aAAa,CAAC,OAAO,CAAC;AACrB,gBAAA,IAAI,EAAE,gBAAgB;AACtB,gBAAA,IAAI,EAAE,IAAI;AACV,aAAA,CAAC,CAAC;AACJ,SAAC,CAAC,CAAC;KACH;8GAZW,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,EAHd,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,2BAAA,CAA6B,EACf,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,2BAA2B,+BAA6B,kBAAkB,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAEtF,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,QAAQ,EAAE,CAA6B,2BAAA,CAAA;oBACvC,OAAO,EAAE,CAAC,YAAY,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,kBAAkB,CAAC;AACnG,iBAAA,CAAA;;;ACCM,MAAMA,MAAI,GAAG,CACnB,MAAc,EACd,iBAAoC,EACpC,cAA+B,EAC/B,MAAiB,GAAA,EAAE,KAChB;AACH,IAAA,MAAM,SAAS,GAAsB;AACpC,QAAA,SAAS,EAAE;AACV,YAAA,iBAAiB,EAAE;AACnB,YAAA,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;YACtD,aAAa,CAAC,MAAM,EAAE,yBAAyB,EAAE,EAAE,gBAAgB,EAAE,CAAC;AACtE,YAAA,mBAAmB,CAAC,UAAU,EAAE,qBAAqB,CAAC;YACtD,cAAc;YACd,mBAAmB;YACnB,iBAAiB;AACjB,YAAA;AACC,gBAAA,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,CAAC,QAAyB,KAAK,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC;AACxE,gBAAA,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,CAAC,eAAe,CAAC;AACvB,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,SAAS;AAClB,gBAAA,QAAQ,EAAE,MAAM;AAChB,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,eAAe;AACxB,gBAAA,QAAQ,EAAE,MAAM;AAChB,aAAA;AACD,SAAA;KACD,CAAC;IAEF,oBAAoB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAClF,CAAC;;MCjCY,oBAAoB,CAAA;AADjC,IAAA,WAAA,GAAA;AAES,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAuBhD,KAAA;AArBA,IAAA,WAAW,CAAC,OAA6B,EAAA;QACxC,MAAM,SAAS,GAAW,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,MAAM;AAClD,YAAA,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;YACtC,SAAS,EAAE,MAAM,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,yBAAyB;AACpF,YAAA,IAAI,EAAE,MAAoC;AAC1C,SAAA,CAAC,CAAC,CAAC;AAEJ,QAAA,OAAO,SAAS,CAAC;KACjB;AAED,IAAA,YAAY,CAAC,OAA6B,EAAA;QACzC,MAAM,SAAS,GAAe,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;YACpD,OAAO;gBACN,KAAK,EAAE,MAAM,CAAC,UAAU;AACxB,gBAAA,IAAI,EAAE,kBAAkB;gBACxB,UAAU,EAAE,MAAM,CAAC,UAAU;aAC7B,CAAC;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;KACzD;8GAvBW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cADP,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;AChB3B,MAAM,kBAAkB,GAAG,YAAW;IAC5C,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,OAAO,mCAAiB,CAAC,CAAC;AACzD,IAAA,OAAO,YAAY,CAAC;AACrB,CAAC;;ACAe,SAAA,eAAe,CAAC,kBAAsC,EAAE,OAAa,EAAA;AACpF,IAAA,MAAM,MAAM,GAAG;QACd,YAAY;QACZ,eAAe;QACf,gBAAgB;QAChB,iBAAiB;QACjB,wBAAwB;QACxB,0BAA0B;AAC1B,QAAA,CAAA,OAAA,EAAU,OAAO,CAAqC,mCAAA,CAAA;AACtD,QAAA,CAAA,OAAA,EAAU,OAAO,CAAmC,iCAAA,CAAA;KACpD,CAAC;IAEF,IAAU,UAAW,CAAC,SAAS;AAAE,QAAA,OAAO,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAEhE,OAAO,MAAM,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9C;;ACCW,IAAA,QAA0B;AAC9B,IAAI,SAAS,GAAe,GAAG;AAE/B,MAAM,IAAI,GAAG,CACnB,QAA0B,EAC1B,OAAe,EACf,UAAsB,EACtB,gBAAiC,EACjC,OAAkB,GAAA,EAAE,KACjB;IACH,OAAO,GAAG,QAAQ,CAAC;IACnB,SAAS,GAAG,UAAU,CAAC;AAEvB,IAAA,MAAM,SAAS,GAAsB;AACpC,QAAA,SAAS,EAAE;AACV,YAAA,iBAAiB,EAAE;AACnB,YAAA,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;YACtD,aAAa,CAAC,OAAO,EAAE,yBAAyB,EAAE,EAAE,gBAAgB,EAAE,CAAC;AACvE,YAAA,mBAAmB,CAAC,UAAU,EAAE,qBAAqB,CAAC;YACtD,cAAc;YACd,mBAAmB;AACb,YAAA,UAAW,CAAC,MAAM,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAQ,UAAW,CAAC,MAAM,EAAE,GAAG,EAAE;AACvF,YAAA;AACC,gBAAA,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,CAAC,QAAyB,KAAK,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC;AAC1E,gBAAA,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,CAAC,eAAe,CAAC;AACvB,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,eAAe;AACxB,gBAAA,UAAU,EAAE,eAAe;AAC3B,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,IAAI,EAAE,CAAC,kBAAkB,EAAE,eAAe,CAAC;AAC3C,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,SAAS;AAClB,gBAAA,QAAQ,EAAE,OAAO;;AAEjB,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,eAAe;AACxB,gBAAA,QAAQ,EAAE,QAAQ;AAClB,aAAA;AACD,SAAA;KACD,CAAC;IAEF,iBAAiB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAI;AAC5C,QAAA,kBAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,YAAY,KAAI;AAC1C,YAAA,MAAM,GAAG,GAAG,mBAAmB,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7E,cAAc,CAAC,MAAM,CAAC,CAAA,IAAA,EAAO,OAAO,CAAE,CAAA,EAAE,GAAG,CAAC,CAAC;AAC9C,SAAC,CAAC,CAAC;AACJ,KAAC,CAAC,CAAC;AACJ,CAAC;;ACpEM,MAAM,IAAI,GAAG;;ACHpB;;AAEG;;;;"}
@@ -3,13 +3,13 @@ import * as i0 from '@angular/core';
3
3
  import { inject, Renderer2, ElementRef, Component, ViewEncapsulation, ViewChild, NgZone, importProvidersFrom, APP_INITIALIZER, Injectable } from '@angular/core';
4
4
  import { bootstrapApplication } from '@angular/platform-browser';
5
5
  import { provideAnimations } from '@angular/platform-browser/animations';
6
+ import * as i1 from '@angular/router';
7
+ import { RouterOutlet, provideRouter, withComponentInputBinding, withHashLocation } from '@angular/router';
6
8
  import { MessageService, ConfirmationService } from 'primeng/api';
7
9
  import { KeycloakAngularModule } from 'keycloak-angular';
8
10
  import { API_TOKEN } from 'aril/http';
9
11
  import { i18nModule, i18nRootFileUrl } from 'aril/i18n';
10
12
  import { authInterceptor, KeycloakManager } from 'aril/keycloak';
11
- import * as i1 from '@angular/router';
12
- import { RouterOutlet } from '@angular/router';
13
13
  import { WebComponentWrapper, ModuleFederationToolsModule, startsWith } from '@angular-architects/module-federation-tools';
14
14
  import { AppLayoutComponent, AppMenuService } from 'aril/theme/layout';
15
15
  import * as i2 from 'aril/util/pub-sub';
@@ -72,19 +72,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
72
72
  }]
73
73
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.PubSubService }] });
74
74
 
75
- const boot = (routerProvider, pluginInitializer, options, apiURL = '') => {
75
+ const boot = (routes, pluginInitializer, keycloakConfig, apiURL = '') => {
76
76
  const appConfig = {
77
77
  providers: [
78
78
  provideAnimations(),
79
79
  provideHttpClient(withInterceptors([authInterceptor])),
80
- routerProvider,
80
+ provideRouter(routes, withComponentInputBinding(), withHashLocation()),
81
81
  importProvidersFrom(i18nModule, KeycloakAngularModule),
82
82
  MessageService,
83
83
  ConfirmationService,
84
84
  pluginInitializer,
85
85
  {
86
86
  provide: APP_INITIALIZER,
87
- useFactory: (keycloak) => keycloak.init(options),
87
+ useFactory: (keycloak) => keycloak.init(keycloakConfig),
88
88
  multi: true,
89
89
  deps: [KeycloakManager]
90
90
  },
@@ -1 +1 @@
1
- {"version":3,"file":"aril-boot-host.mjs","sources":["../../projects/aril/boot/host/src/services/showdowDOMWrapper.ts","../../projects/aril/boot/host/src/app.component.ts","../../projects/aril/boot/host/src/bootstrap.ts","../../projects/aril/boot/host/src/services/microFrontEnd.service.ts","../../projects/aril/boot/host/aril-boot-host.ts"],"sourcesContent":["import { Component, ElementRef, OnInit, Renderer2, ViewChild, ViewEncapsulation, inject } from '@angular/core';\n\nimport { WebComponentWrapper } from '@angular-architects/module-federation-tools';\n\n@Component({\n\tstandalone: true,\n\ttemplate: '<div #vc></div>',\n\tencapsulation: ViewEncapsulation.ShadowDom\n})\nexport class ShadowDOMWrapperComponent extends WebComponentWrapper implements OnInit {\n\t@ViewChild('vc', { read: ElementRef, static: true }) override vc!: ElementRef;\n\n\tprivate renderer = inject(Renderer2);\n\n\tngOnInit(): void {\n\t\tconst shadowRoot = this.vc.nativeElement.parentNode;\n\t\tconst styleUrls = this['route'].snapshot.data.styleUrls || [];\n\n\t\t// Inject styles into the Shadow DOM\n\t\tstyleUrls.forEach((url: string) => {\n\t\t\tconst link = this.renderer.createElement('link');\n\t\t\tlink.setAttribute('rel', 'stylesheet');\n\t\t\tlink.setAttribute('type', 'text/css');\n\t\t\tlink.setAttribute('href', url);\n\t\t\tthis.renderer.appendChild(shadowRoot, link);\n\t\t});\n\t}\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Component, NgZone, inject } from '@angular/core';\nimport { Router, RouterOutlet } from '@angular/router';\n\nimport { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';\n\nimport { AppLayoutComponent } from 'aril/theme/layout';\nimport { PubSubService } from 'aril/util/pub-sub';\n\nimport { ShadowDOMWrapperComponent } from './services/showdowDOMWrapper';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-root',\n\ttemplate: ` <app-layout></app-layout> `,\n\timports: [RouterOutlet, ModuleFederationToolsModule, ShadowDOMWrapperComponent, AppLayoutComponent]\n})\nexport class AppComponent {\n\tconstructor(router: Router, pubSubService: PubSubService) {\n\t\t(<any>globalThis).ngZone = inject(NgZone);\n\t\t(<any>globalThis).isMFEMode = true;\n\n\t\tpubSubService.subscribe('navigateBetweenApps', (data: any) => {\n\t\t\trouter.navigateByUrl(data.path);\n\t\t\tpubSubService.publish({\n\t\t\t\tname: 'navigateInApps',\n\t\t\t\tdata: data\n\t\t\t});\n\t\t});\n\t}\n}\n","import { provideHttpClient, withInterceptors } from '@angular/common/http';\nimport { APP_INITIALIZER, ApplicationConfig, EnvironmentProviders, importProvidersFrom } from '@angular/core';\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { provideAnimations } from '@angular/platform-browser/animations';\n\nimport { ConfirmationService, MessageService } from 'primeng/api';\n\nimport { KeycloakAngularModule, KeycloakOptions } from 'keycloak-angular';\n\nimport { API_TOKEN } from 'aril/http';\nimport { i18nModule, i18nRootFileUrl } from 'aril/i18n';\nimport { KeycloakManager, authInterceptor } from 'aril/keycloak';\n\nimport { AppComponent } from './app.component';\nimport { PluginInitializer } from './services/plugin-init.token';\n\nexport const boot = (\n\trouterProvider: EnvironmentProviders,\n\tpluginInitializer: PluginInitializer,\n\toptions: KeycloakOptions,\n\tapiURL: string = ''\n) => {\n\tconst appConfig: ApplicationConfig = {\n\t\tproviders: [\n\t\t\tprovideAnimations(),\n\t\t\tprovideHttpClient(withInterceptors([authInterceptor])),\n\t\t\trouterProvider,\n\t\t\timportProvidersFrom(i18nModule, KeycloakAngularModule),\n\t\t\tMessageService,\n\t\t\tConfirmationService,\n\t\t\tpluginInitializer,\n\t\t\t{\n\t\t\t\tprovide: APP_INITIALIZER,\n\t\t\t\tuseFactory: (keycloak: KeycloakManager) => keycloak.init(options),\n\t\t\t\tmulti: true,\n\t\t\t\tdeps: [KeycloakManager]\n\t\t\t},\n\t\t\t{\n\t\t\t\tprovide: API_TOKEN,\n\t\t\t\tuseValue: apiURL\n\t\t\t},\n\t\t\t{\n\t\t\t\tprovide: i18nRootFileUrl,\n\t\t\t\tuseValue: 'host'\n\t\t\t}\n\t\t]\n\t};\n\n\tbootstrapApplication(AppComponent, appConfig).catch((err) => console.error(err));\n};\n","import { Injectable, inject } from '@angular/core';\nimport { Routes } from '@angular/router';\n\nimport { MenuItem } from 'primeng/api';\n\nimport {\n\tWebComponentWrapper,\n\tWebComponentWrapperOptions,\n\tstartsWith\n} from '@angular-architects/module-federation-tools';\n\nimport { AppMenuService } from 'aril/theme/layout';\n\nimport { CustomRemoteConfig } from './custom-manifest';\nimport { ShadowDOMWrapperComponent } from './showdowDOMWrapper';\n\n@Injectable({ providedIn: 'root' })\nexport class MicroFrontendService {\n\tprivate appMenuService = inject(AppMenuService);\n\n\tbuildRoutes(plugins: CustomRemoteConfig[]): Routes {\n\t\tconst mfeRoutes: Routes = plugins.map((config) => ({\n\t\t\tmatcher: startsWith(config.remoteName),\n\t\t\tcomponent: config.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,\n\t\t\tdata: config as WebComponentWrapperOptions\n\t\t}));\n\n\t\treturn mfeRoutes;\n\t}\n\n\tsetMenuItems(plugins: CustomRemoteConfig[]): void {\n\t\tconst menuItems: MenuItem[] = plugins.map((config) => {\n\t\t\treturn {\n\t\t\t\tlabel: config.remoteName,\n\t\t\t\ticon: 'pi pi-fw pi-bars',\n\t\t\t\trouterLink: config.remoteName\n\t\t\t};\n\t\t});\n\n\t\tthis.appMenuService.menuConfig.set({ items: menuItems });\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aril-boot-host.mjs","sources":["../../projects/aril/boot/host/src/services/showdowDOMWrapper.ts","../../projects/aril/boot/host/src/app.component.ts","../../projects/aril/boot/host/src/bootstrap.ts","../../projects/aril/boot/host/src/services/microFrontEnd.service.ts","../../projects/aril/boot/host/aril-boot-host.ts"],"sourcesContent":["import { Component, ElementRef, OnInit, Renderer2, ViewChild, ViewEncapsulation, inject } from '@angular/core';\n\nimport { WebComponentWrapper } from '@angular-architects/module-federation-tools';\n\n@Component({\n\tstandalone: true,\n\ttemplate: '<div #vc></div>',\n\tencapsulation: ViewEncapsulation.ShadowDom\n})\nexport class ShadowDOMWrapperComponent extends WebComponentWrapper implements OnInit {\n\t@ViewChild('vc', { read: ElementRef, static: true }) override vc!: ElementRef;\n\n\tprivate renderer = inject(Renderer2);\n\n\tngOnInit(): void {\n\t\tconst shadowRoot = this.vc.nativeElement.parentNode;\n\t\tconst styleUrls = this['route'].snapshot.data.styleUrls || [];\n\n\t\t// Inject styles into the Shadow DOM\n\t\tstyleUrls.forEach((url: string) => {\n\t\t\tconst link = this.renderer.createElement('link');\n\t\t\tlink.setAttribute('rel', 'stylesheet');\n\t\t\tlink.setAttribute('type', 'text/css');\n\t\t\tlink.setAttribute('href', url);\n\t\t\tthis.renderer.appendChild(shadowRoot, link);\n\t\t});\n\t}\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Component, NgZone, inject } from '@angular/core';\nimport { Router, RouterOutlet } from '@angular/router';\n\nimport { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';\n\nimport { AppLayoutComponent } from 'aril/theme/layout';\nimport { PubSubService } from 'aril/util/pub-sub';\n\nimport { ShadowDOMWrapperComponent } from './services/showdowDOMWrapper';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-root',\n\ttemplate: ` <app-layout></app-layout> `,\n\timports: [RouterOutlet, ModuleFederationToolsModule, ShadowDOMWrapperComponent, AppLayoutComponent]\n})\nexport class AppComponent {\n\tconstructor(router: Router, pubSubService: PubSubService) {\n\t\t(<any>globalThis).ngZone = inject(NgZone);\n\t\t(<any>globalThis).isMFEMode = true;\n\n\t\tpubSubService.subscribe('navigateBetweenApps', (data: any) => {\n\t\t\trouter.navigateByUrl(data.path);\n\t\t\tpubSubService.publish({\n\t\t\t\tname: 'navigateInApps',\n\t\t\t\tdata: data\n\t\t\t});\n\t\t});\n\t}\n}\n","import { provideHttpClient, withInterceptors } from '@angular/common/http';\nimport { APP_INITIALIZER, ApplicationConfig, importProvidersFrom } from '@angular/core';\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { provideAnimations } from '@angular/platform-browser/animations';\nimport { Routes, provideRouter, withComponentInputBinding, withHashLocation } from '@angular/router';\n\nimport { ConfirmationService, MessageService } from 'primeng/api';\n\nimport { KeycloakAngularModule, KeycloakOptions } from 'keycloak-angular';\n\nimport { API_TOKEN } from 'aril/http';\nimport { i18nModule, i18nRootFileUrl } from 'aril/i18n';\nimport { KeycloakManager, authInterceptor } from 'aril/keycloak';\n\nimport { AppComponent } from './app.component';\nimport { PluginInitializer } from './services/plugin-init.token';\n\nexport const boot = (\n\troutes: Routes,\n\tpluginInitializer: PluginInitializer,\n\tkeycloakConfig: KeycloakOptions,\n\tapiURL: string = ''\n) => {\n\tconst appConfig: ApplicationConfig = {\n\t\tproviders: [\n\t\t\tprovideAnimations(),\n\t\t\tprovideHttpClient(withInterceptors([authInterceptor])),\n\t\t\tprovideRouter(routes, withComponentInputBinding(), withHashLocation()),\n\t\t\timportProvidersFrom(i18nModule, KeycloakAngularModule),\n\t\t\tMessageService,\n\t\t\tConfirmationService,\n\t\t\tpluginInitializer,\n\t\t\t{\n\t\t\t\tprovide: APP_INITIALIZER,\n\t\t\t\tuseFactory: (keycloak: KeycloakManager) => keycloak.init(keycloakConfig),\n\t\t\t\tmulti: true,\n\t\t\t\tdeps: [KeycloakManager]\n\t\t\t},\n\t\t\t{\n\t\t\t\tprovide: API_TOKEN,\n\t\t\t\tuseValue: apiURL\n\t\t\t},\n\t\t\t{\n\t\t\t\tprovide: i18nRootFileUrl,\n\t\t\t\tuseValue: 'host'\n\t\t\t}\n\t\t]\n\t};\n\n\tbootstrapApplication(AppComponent, appConfig).catch((err) => console.error(err));\n};\n","import { Injectable, inject } from '@angular/core';\nimport { Routes } from '@angular/router';\n\nimport { MenuItem } from 'primeng/api';\n\nimport {\n\tWebComponentWrapper,\n\tWebComponentWrapperOptions,\n\tstartsWith\n} from '@angular-architects/module-federation-tools';\n\nimport { AppMenuService } from 'aril/theme/layout';\n\nimport { CustomRemoteConfig } from './custom-manifest';\nimport { ShadowDOMWrapperComponent } from './showdowDOMWrapper';\n\n@Injectable({ providedIn: 'root' })\nexport class MicroFrontendService {\n\tprivate appMenuService = inject(AppMenuService);\n\n\tbuildRoutes(plugins: CustomRemoteConfig[]): Routes {\n\t\tconst mfeRoutes: Routes = plugins.map((config) => ({\n\t\t\tmatcher: startsWith(config.remoteName),\n\t\t\tcomponent: config.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,\n\t\t\tdata: config as WebComponentWrapperOptions\n\t\t}));\n\n\t\treturn mfeRoutes;\n\t}\n\n\tsetMenuItems(plugins: CustomRemoteConfig[]): void {\n\t\tconst menuItems: MenuItem[] = plugins.map((config) => {\n\t\t\treturn {\n\t\t\t\tlabel: config.remoteName,\n\t\t\t\ticon: 'pi pi-fw pi-bars',\n\t\t\t\trouterLink: config.remoteName\n\t\t\t};\n\t\t});\n\n\t\tthis.appMenuService.menuConfig.set({ items: menuItems });\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASM,MAAO,yBAA0B,SAAQ,mBAAmB,CAAA;AALlE,IAAA,WAAA,GAAA;;AAQS,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAerC,KAAA;IAbA,QAAQ,GAAA;QACP,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC;AACpD,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;;AAG9D,QAAA,SAAS,CAAC,OAAO,CAAC,CAAC,GAAW,KAAI;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACjD,YAAA,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACvC,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACtC,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC7C,SAAC,CAAC,CAAC;KACH;8GAjBW,yBAAyB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,IAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EACZ,UAAU,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJzB,iBAAiB,EAAA,QAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;;2FAGf,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBALrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;oBAC3B,aAAa,EAAE,iBAAiB,CAAC,SAAS;AAC1C,iBAAA,CAAA;8BAE8D,EAAE,EAAA,CAAA;sBAA/D,SAAS;uBAAC,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;;;ACVpD;MAiBa,YAAY,CAAA;IACxB,WAAY,CAAA,MAAc,EAAE,aAA4B,EAAA;AACjD,QAAA,UAAW,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACpC,QAAA,UAAW,CAAC,SAAS,GAAG,IAAI,CAAC;QAEnC,aAAa,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAAC,IAAS,KAAI;AAC5D,YAAA,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChC,aAAa,CAAC,OAAO,CAAC;AACrB,gBAAA,IAAI,EAAE,gBAAgB;AACtB,gBAAA,IAAI,EAAE,IAAI;AACV,aAAA,CAAC,CAAC;AACJ,SAAC,CAAC,CAAC;KACH;8GAZW,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,EAHd,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,2BAAA,CAA6B,EACf,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,2BAA2B,+BAA6B,kBAAkB,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAEtF,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,QAAQ,EAAE,CAA6B,2BAAA,CAAA;oBACvC,OAAO,EAAE,CAAC,YAAY,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,kBAAkB,CAAC;AACnG,iBAAA,CAAA;;;ACCM,MAAM,IAAI,GAAG,CACnB,MAAc,EACd,iBAAoC,EACpC,cAA+B,EAC/B,MAAiB,GAAA,EAAE,KAChB;AACH,IAAA,MAAM,SAAS,GAAsB;AACpC,QAAA,SAAS,EAAE;AACV,YAAA,iBAAiB,EAAE;AACnB,YAAA,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;YACtD,aAAa,CAAC,MAAM,EAAE,yBAAyB,EAAE,EAAE,gBAAgB,EAAE,CAAC;AACtE,YAAA,mBAAmB,CAAC,UAAU,EAAE,qBAAqB,CAAC;YACtD,cAAc;YACd,mBAAmB;YACnB,iBAAiB;AACjB,YAAA;AACC,gBAAA,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,CAAC,QAAyB,KAAK,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC;AACxE,gBAAA,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,CAAC,eAAe,CAAC;AACvB,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,SAAS;AAClB,gBAAA,QAAQ,EAAE,MAAM;AAChB,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,eAAe;AACxB,gBAAA,QAAQ,EAAE,MAAM;AAChB,aAAA;AACD,SAAA;KACD,CAAC;IAEF,oBAAoB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAClF;;MCjCa,oBAAoB,CAAA;AADjC,IAAA,WAAA,GAAA;AAES,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAuBhD,KAAA;AArBA,IAAA,WAAW,CAAC,OAA6B,EAAA;QACxC,MAAM,SAAS,GAAW,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,MAAM;AAClD,YAAA,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;YACtC,SAAS,EAAE,MAAM,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,yBAAyB;AACpF,YAAA,IAAI,EAAE,MAAoC;AAC1C,SAAA,CAAC,CAAC,CAAC;AAEJ,QAAA,OAAO,SAAS,CAAC;KACjB;AAED,IAAA,YAAY,CAAC,OAA6B,EAAA;QACzC,MAAM,SAAS,GAAe,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;YACpD,OAAO;gBACN,KAAK,EAAE,MAAM,CAAC,UAAU;AACxB,gBAAA,IAAI,EAAE,kBAAkB;gBACxB,UAAU,EAAE,MAAM,CAAC,UAAU;aAC7B,CAAC;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;KACzD;8GAvBW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cADP,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;AChBlC;;AAEG;;;;"}
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { Component } from '@angular/core';
3
3
  import * as i1 from '@angular/router';
4
4
  import { RouterOutlet } from '@angular/router';
5
- import { connectRouter, ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';
5
+ import { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';
6
6
  import * as i3 from 'aril/theme/layout';
7
7
  import { AppLayoutComponent, MFELayoutComponent } from 'aril/theme/layout';
8
8
  import { appName, menuItems } from './aril-boot-mfe.mjs';
@@ -21,8 +21,9 @@ import 'aril/util/loaders';
21
21
  /* eslint-disable @typescript-eslint/no-explicit-any */
22
22
  class AppComponent {
23
23
  constructor(router, pubSubService, appMenuService) {
24
+ this.router = router;
24
25
  this.isMFEMode = globalThis.isMFEMode;
25
- connectRouter(router);
26
+ this.connectRouter();
26
27
  globalThis.activeMF = appName;
27
28
  pubSubService.subscribe('navigateInApps', (data) => {
28
29
  if (data.path.startsWith(appName, 1))
@@ -35,6 +36,12 @@ class AppComponent {
35
36
  appMenuService.menuConfig.set({ items: structuredClone(menuItems), prefix: appName });
36
37
  }
37
38
  }
39
+ connectRouter() {
40
+ this.router.initialNavigation();
41
+ window.addEventListener('popstate', () => {
42
+ this.router.initialNavigation();
43
+ });
44
+ }
38
45
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppComponent, deps: [{ token: i1.Router }, { token: i2.PubSubService }, { token: i3.AppMenuService }], target: i0.ɵɵFactoryTarget.Component }); }
39
46
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AppComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
40
47
  @if (isMFEMode) {
@@ -60,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
60
67
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.PubSubService }, { type: i3.AppMenuService }] });
61
68
 
62
69
  export { AppComponent };
63
- //# sourceMappingURL=aril-boot-mfe-app.component-zro0FnKY.mjs.map
70
+ //# sourceMappingURL=aril-boot-mfe-app.component-KNYNmuuQ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aril-boot-mfe-app.component-KNYNmuuQ.mjs","sources":["../../projects/aril/boot/mfe/src/app.component.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Component } from '@angular/core';\nimport { Router, RouterOutlet } from '@angular/router';\n\nimport { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';\n\nimport { AppLayoutComponent, AppMenuService, MFELayoutComponent } from 'aril/theme/layout';\nimport { PubSubService } from 'aril/util/pub-sub';\n\nimport { appName, menuItems } from './bootstrap';\n\n@Component({\n\tstandalone: true,\n\ttemplate: `\n\t\t@if (isMFEMode) {\n\t\t\t<mfe-layout></mfe-layout>\n\t\t} @else {\n\t\t\t<app-layout></app-layout>\n\t\t}\n\t`,\n\timports: [RouterOutlet, ModuleFederationToolsModule, AppLayoutComponent, MFELayoutComponent]\n})\nexport class AppComponent {\n\tconstructor(\n\t\tprivate router: Router,\n\t\tpubSubService: PubSubService,\n\t\tappMenuService: AppMenuService\n\t) {\n\t\tthis.connectRouter();\n\n\t\t(<any>globalThis).activeMF = appName;\n\n\t\tpubSubService.subscribe('navigateInApps', (data: any) => {\n\t\t\tif (data.path.startsWith(appName, 1)) router.navigateByUrl(data.path);\n\t\t});\n\n\t\tif (this.isMFEMode) {\n\t\t\tappMenuService.subMenuConfig.set({ items: structuredClone(menuItems), prefix: appName });\n\t\t} else {\n\t\t\tappMenuService.menuConfig.set({ items: structuredClone(menuItems), prefix: appName });\n\t\t}\n\t}\n\n\tisMFEMode = (<any>globalThis).isMFEMode;\n\n\tconnectRouter() {\n\t\tthis.router.initialNavigation();\n\n\t\twindow.addEventListener('popstate', () => {\n\t\t\tthis.router.initialNavigation();\n\t\t});\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;MAsBa,YAAY,CAAA;AACxB,IAAA,WAAA,CACS,MAAc,EACtB,aAA4B,EAC5B,cAA8B,EAAA;QAFtB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;AAmBvB,QAAA,IAAA,CAAA,SAAS,GAAS,UAAW,CAAC,SAAS,CAAC;QAfvC,IAAI,CAAC,aAAa,EAAE,CAAC;AAEf,QAAA,UAAW,CAAC,QAAQ,GAAG,OAAO,CAAC;QAErC,aAAa,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,IAAS,KAAI;YACvD,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;AAAE,gBAAA,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvE,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AACnB,YAAA,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;SACzF;aAAM;AACN,YAAA,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;SACtF;KACD;IAID,aAAa,GAAA;AACZ,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;AAEhC,QAAA,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAK;AACxC,YAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;AACjC,SAAC,CAAC,CAAC;KACH;8GA7BW,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,EATd,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;AAMT,CAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACuB,2BAA2B,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,QAAA,EAAA,YAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAE/E,YAAY,EAAA,UAAA,EAAA,CAAA;kBAXxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,CAAA;;;;;;AAMT,CAAA,CAAA;oBACD,OAAO,EAAE,CAAC,YAAY,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,kBAAkB,CAAC;AAC5F,iBAAA,CAAA;;;;;"}
@@ -3,6 +3,7 @@ import { importProvidersFrom, NgZone, APP_INITIALIZER } from '@angular/core';
3
3
  import { createCustomElement } from '@angular/elements';
4
4
  import { createApplication } from '@angular/platform-browser';
5
5
  import { provideAnimations } from '@angular/platform-browser/animations';
6
+ import { provideRouter, withComponentInputBinding, withHashLocation } from '@angular/router';
6
7
  import { MessageService, ConfirmationService } from 'primeng/api';
7
8
  import { KeycloakAngularModule } from 'keycloak-angular';
8
9
  import { API_TOKEN } from 'aril/http';
@@ -10,42 +11,44 @@ import { i18nModule, i18nRootFileUrl } from 'aril/i18n';
10
11
  import { authInterceptor, KeycloakManager } from 'aril/keycloak';
11
12
  import { StyleLoaderService } from 'aril/util/loaders';
12
13
 
13
- var appName;
14
- var menuItems = [];
15
14
  const appComponentLoader = async () => {
16
- const { AppComponent } = await import('./aril-boot-mfe-app.component-zro0FnKY.mjs');
15
+ const { AppComponent } = await import('./aril-boot-mfe-app.component-KNYNmuuQ.mjs');
17
16
  return AppComponent;
18
17
  };
19
- function loadStylesheets(styleLoaderService) {
18
+
19
+ function loadStylesheets(styleLoaderService, appName) {
20
20
  const styles = [
21
21
  'layout.css',
22
22
  'ui.common.css',
23
23
  'preloading.css',
24
+ 'primeng.min.css',
24
25
  'theme.light.indigo.css',
25
- `assets/${appName}/styles/primeng.min.css`,
26
+ 'dx.fluent.saas.light.css',
26
27
  `assets/${appName}/styles/primeflex/primeflex.min.css`,
27
- `assets/${appName}/styles/primeicons/primeicons.css`,
28
- `assets/${appName}/styles/dx.fluent.saas.light.css`
28
+ `assets/${appName}/styles/primeicons/primeicons.css`
29
29
  ];
30
30
  if (globalThis.isMFEMode)
31
31
  return () => Promise.resolve();
32
32
  return () => styleLoaderService.load(styles);
33
33
  }
34
- const boot = (_appName, _routerProvider, _menuItems, _options, _apiURL = '') => {
34
+
35
+ var appName;
36
+ var menuItems = [];
37
+ const boot = (_appName, _routes, _menuItems, _keycloakOptions, _apiURL = '') => {
35
38
  appName = _appName;
36
39
  menuItems = _menuItems;
37
40
  const appConfig = {
38
41
  providers: [
39
42
  provideAnimations(),
40
43
  provideHttpClient(withInterceptors([authInterceptor])),
41
- _routerProvider,
44
+ provideRouter(_routes, withComponentInputBinding(), withHashLocation()),
42
45
  importProvidersFrom(i18nModule, KeycloakAngularModule),
43
46
  MessageService,
44
47
  ConfirmationService,
45
48
  globalThis.ngZone ? { provide: NgZone, useValue: globalThis.ngZone } : [],
46
49
  {
47
50
  provide: APP_INITIALIZER,
48
- useFactory: (keycloak) => keycloak.init(_options),
51
+ useFactory: (keycloak) => keycloak.init(_keycloakOptions),
49
52
  multi: true,
50
53
  deps: [KeycloakManager]
51
54
  },
@@ -53,7 +56,7 @@ const boot = (_appName, _routerProvider, _menuItems, _options, _apiURL = '') =>
53
56
  provide: APP_INITIALIZER,
54
57
  useFactory: loadStylesheets,
55
58
  multi: true,
56
- deps: [StyleLoaderService]
59
+ deps: [StyleLoaderService, i18nRootFileUrl]
57
60
  },
58
61
  {
59
62
  provide: API_TOKEN,