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,178 +1,178 @@
1
- import { Injectable, effect, signal } from '@angular/core';
2
-
3
- import { Subject } from 'rxjs';
4
-
5
- export type MenuMode = 'static' | 'overlay' | 'horizontal' | 'slim' | 'slim-plus' | 'reveal' | 'drawer';
6
-
7
- export type ColorScheme = 'light' | 'dark' | 'dim';
8
-
9
- export type MenuColorScheme = 'colorScheme' | 'primaryColor' | 'transparent';
10
-
11
- export interface AppConfig {
12
- inputStyle: string;
13
- colorScheme: ColorScheme;
14
- theme: string;
15
- ripple: boolean;
16
- menuMode: MenuMode;
17
- scale: number;
18
- menuTheme: MenuColorScheme;
19
- }
20
-
21
- interface LayoutState {
22
- staticMenuDesktopInactive: boolean;
23
- overlayMenuActive: boolean;
24
- profileSidebarVisible: boolean;
25
- configSidebarVisible: boolean;
26
- staticMenuMobileActive: boolean;
27
- menuHoverActive: boolean;
28
- sidebarActive: boolean;
29
- anchored: boolean;
30
- }
31
-
32
- @Injectable({
33
- providedIn: 'root'
34
- })
35
- export class LayoutService {
36
- _config: AppConfig = {
37
- ripple: false,
38
- inputStyle: 'outlined',
39
- menuMode: 'horizontal',
40
- colorScheme: 'light',
41
- theme: 'indigo',
42
- scale: 12,
43
- menuTheme: 'colorScheme'
44
- };
45
-
46
- // TODO: Set User Config
47
- config = signal<AppConfig>(this._config);
48
-
49
- state: LayoutState = {
50
- staticMenuDesktopInactive: false,
51
- overlayMenuActive: false,
52
- profileSidebarVisible: false,
53
- configSidebarVisible: false,
54
- staticMenuMobileActive: false,
55
- menuHoverActive: false,
56
- sidebarActive: false,
57
- anchored: false
58
- };
59
-
60
- private configUpdate = new Subject<AppConfig>();
61
-
62
- private overlayOpen = new Subject<any>();
63
-
64
- configUpdate$ = this.configUpdate.asObservable();
65
-
66
- overlayOpen$ = this.overlayOpen.asObservable();
67
-
68
- constructor() {
69
- effect(() => {
70
- const config = this.config();
71
- if (this.updateStyle(config)) {
72
- this.changeTheme();
73
- }
74
- this.changeScale(config.scale);
75
- this.onConfigUpdate();
76
- });
77
- }
78
-
79
- updateStyle(config: AppConfig) {
80
- return config.theme !== this._config.theme || config.colorScheme !== this._config.colorScheme;
81
- }
82
-
83
- onMenuToggle() {
84
- if (this.isOverlay()) {
85
- this.state.overlayMenuActive = !this.state.overlayMenuActive;
86
-
87
- if (this.state.overlayMenuActive) {
88
- this.overlayOpen.next(null);
89
- }
90
- }
91
-
92
- if (this.isDesktop()) {
93
- this.state.staticMenuDesktopInactive = !this.state.staticMenuDesktopInactive;
94
- } else {
95
- this.state.staticMenuMobileActive = !this.state.staticMenuMobileActive;
96
-
97
- if (this.state.staticMenuMobileActive) {
98
- this.overlayOpen.next(null);
99
- }
100
- }
101
- }
102
-
103
- onOverlaySubmenuOpen() {
104
- this.overlayOpen.next(null);
105
- }
106
-
107
- showProfileSidebar() {
108
- this.state.profileSidebarVisible = true;
109
- }
110
-
111
- showConfigSidebar() {
112
- this.state.configSidebarVisible = true;
113
- }
114
-
115
- isOverlay() {
116
- return this.config().menuMode === 'overlay';
117
- }
118
-
119
- isDesktop() {
120
- return window.innerWidth > 991;
121
- }
122
-
123
- isSlim() {
124
- return this.config().menuMode === 'slim';
125
- }
126
-
127
- isSlimPlus() {
128
- return this.config().menuMode === 'slim-plus';
129
- }
130
-
131
- isHorizontal() {
132
- return this.config().menuMode === 'horizontal';
133
- }
134
-
135
- isMobile() {
136
- return !this.isDesktop();
137
- }
138
-
139
- onConfigUpdate() {
140
- this._config = { ...this.config() };
141
- this.configUpdate.next(this.config());
142
- }
143
-
144
- changeTheme() {
145
- const config = this.config();
146
- const themeLink = <HTMLLinkElement>document.getElementById('theme-link');
147
- const themeLinkHref = themeLink.getAttribute('href')!;
148
- const newHref = themeLinkHref
149
- .split('/')
150
- .map((el) =>
151
- el == this._config.theme ? (el = config.theme)
152
- : el == `theme-${this._config.colorScheme}` ? (el = `theme-${config.colorScheme}`)
153
- : el
154
- )
155
- .join('/');
156
-
157
- this.replaceThemeLink(newHref);
158
- }
159
-
160
- replaceThemeLink(href: string) {
161
- const id = 'theme-link';
162
- let themeLink = <HTMLLinkElement>document.getElementById(id);
163
- const cloneLinkElement = <HTMLLinkElement>themeLink.cloneNode(true);
164
-
165
- cloneLinkElement.setAttribute('href', href);
166
- cloneLinkElement.setAttribute('id', id + '-clone');
167
-
168
- themeLink.parentNode!.insertBefore(cloneLinkElement, themeLink.nextSibling);
169
- cloneLinkElement.addEventListener('load', () => {
170
- themeLink.remove();
171
- cloneLinkElement.setAttribute('id', id);
172
- });
173
- }
174
-
175
- changeScale(value: number) {
176
- document.documentElement.style.fontSize = `${value}px`;
177
- }
178
- }
1
+ import { Injectable, effect, signal } from '@angular/core';
2
+
3
+ import { Subject } from 'rxjs';
4
+
5
+ export type MenuMode = 'static' | 'overlay' | 'horizontal' | 'slim' | 'slim-plus' | 'reveal' | 'drawer';
6
+
7
+ export type ColorScheme = 'light' | 'dark' | 'dim';
8
+
9
+ export type MenuColorScheme = 'colorScheme' | 'primaryColor' | 'transparent';
10
+
11
+ export interface AppConfig {
12
+ inputStyle: string;
13
+ colorScheme: ColorScheme;
14
+ theme: string;
15
+ ripple: boolean;
16
+ menuMode: MenuMode;
17
+ scale: number;
18
+ menuTheme: MenuColorScheme;
19
+ }
20
+
21
+ interface LayoutState {
22
+ staticMenuDesktopInactive: boolean;
23
+ overlayMenuActive: boolean;
24
+ profileSidebarVisible: boolean;
25
+ configSidebarVisible: boolean;
26
+ staticMenuMobileActive: boolean;
27
+ menuHoverActive: boolean;
28
+ sidebarActive: boolean;
29
+ anchored: boolean;
30
+ }
31
+
32
+ @Injectable({
33
+ providedIn: 'root'
34
+ })
35
+ export class LayoutService {
36
+ _config: AppConfig = {
37
+ ripple: false,
38
+ inputStyle: 'outlined',
39
+ menuMode: 'horizontal',
40
+ colorScheme: 'light',
41
+ theme: 'indigo',
42
+ scale: 12,
43
+ menuTheme: 'colorScheme'
44
+ };
45
+
46
+ // TODO: Set User Config
47
+ config = signal<AppConfig>(this._config);
48
+
49
+ state: LayoutState = {
50
+ staticMenuDesktopInactive: false,
51
+ overlayMenuActive: false,
52
+ profileSidebarVisible: false,
53
+ configSidebarVisible: false,
54
+ staticMenuMobileActive: false,
55
+ menuHoverActive: false,
56
+ sidebarActive: false,
57
+ anchored: false
58
+ };
59
+
60
+ private configUpdate = new Subject<AppConfig>();
61
+
62
+ private overlayOpen = new Subject<any>();
63
+
64
+ configUpdate$ = this.configUpdate.asObservable();
65
+
66
+ overlayOpen$ = this.overlayOpen.asObservable();
67
+
68
+ constructor() {
69
+ effect(() => {
70
+ const config = this.config();
71
+ if (this.updateStyle(config)) {
72
+ this.changeTheme();
73
+ }
74
+ this.changeScale(config.scale);
75
+ this.onConfigUpdate();
76
+ });
77
+ }
78
+
79
+ updateStyle(config: AppConfig) {
80
+ return config.theme !== this._config.theme || config.colorScheme !== this._config.colorScheme;
81
+ }
82
+
83
+ onMenuToggle() {
84
+ if (this.isOverlay()) {
85
+ this.state.overlayMenuActive = !this.state.overlayMenuActive;
86
+
87
+ if (this.state.overlayMenuActive) {
88
+ this.overlayOpen.next(null);
89
+ }
90
+ }
91
+
92
+ if (this.isDesktop()) {
93
+ this.state.staticMenuDesktopInactive = !this.state.staticMenuDesktopInactive;
94
+ } else {
95
+ this.state.staticMenuMobileActive = !this.state.staticMenuMobileActive;
96
+
97
+ if (this.state.staticMenuMobileActive) {
98
+ this.overlayOpen.next(null);
99
+ }
100
+ }
101
+ }
102
+
103
+ onOverlaySubmenuOpen() {
104
+ this.overlayOpen.next(null);
105
+ }
106
+
107
+ showProfileSidebar() {
108
+ this.state.profileSidebarVisible = true;
109
+ }
110
+
111
+ showConfigSidebar() {
112
+ this.state.configSidebarVisible = true;
113
+ }
114
+
115
+ isOverlay() {
116
+ return this.config().menuMode === 'overlay';
117
+ }
118
+
119
+ isDesktop() {
120
+ return window.innerWidth > 991;
121
+ }
122
+
123
+ isSlim() {
124
+ return this.config().menuMode === 'slim';
125
+ }
126
+
127
+ isSlimPlus() {
128
+ return this.config().menuMode === 'slim-plus';
129
+ }
130
+
131
+ isHorizontal() {
132
+ return this.config().menuMode === 'horizontal';
133
+ }
134
+
135
+ isMobile() {
136
+ return !this.isDesktop();
137
+ }
138
+
139
+ onConfigUpdate() {
140
+ this._config = { ...this.config() };
141
+ this.configUpdate.next(this.config());
142
+ }
143
+
144
+ changeTheme() {
145
+ const config = this.config();
146
+ const themeLink = <HTMLLinkElement>document.getElementById('theme-link');
147
+ const themeLinkHref = themeLink.getAttribute('href')!;
148
+ const newHref = themeLinkHref
149
+ .split('/')
150
+ .map((el) =>
151
+ el == this._config.theme ? (el = config.theme)
152
+ : el == `theme-${this._config.colorScheme}` ? (el = `theme-${config.colorScheme}`)
153
+ : el
154
+ )
155
+ .join('/');
156
+
157
+ this.replaceThemeLink(newHref);
158
+ }
159
+
160
+ replaceThemeLink(href: string) {
161
+ const id = 'theme-link';
162
+ let themeLink = <HTMLLinkElement>document.getElementById(id);
163
+ const cloneLinkElement = <HTMLLinkElement>themeLink.cloneNode(true);
164
+
165
+ cloneLinkElement.setAttribute('href', href);
166
+ cloneLinkElement.setAttribute('id', id + '-clone');
167
+
168
+ themeLink.parentNode!.insertBefore(cloneLinkElement, themeLink.nextSibling);
169
+ cloneLinkElement.addEventListener('load', () => {
170
+ themeLink.remove();
171
+ cloneLinkElement.setAttribute('id', id);
172
+ });
173
+ }
174
+
175
+ changeScale(value: number) {
176
+ document.documentElement.style.fontSize = `${value}px`;
177
+ }
178
+ }
@@ -25,6 +25,7 @@ export class AppMenuService {
25
25
 
26
26
  public menuItems = computed(() => {
27
27
  const config = this.menuConfig();
28
+ config.items.unshift({ label: 'Home', icon: 'pi pi-fw pi-home', routerLink: '' });
28
29
 
29
30
  if (config.prefix) return config.items.map((item) => this.addPrefix(item, config.prefix));
30
31
  else return config.items;
@@ -32,6 +33,7 @@ export class AppMenuService {
32
33
 
33
34
  public subMenuItems = computed(() => {
34
35
  const config = this.subMenuConfig();
36
+ config.items.unshift({ label: `${config.prefix?.toUpperCase()} Home`, icon: 'pi pi-fw pi-home', routerLink: '' });
35
37
 
36
38
  if (config.prefix) return config.items.map((item) => this.addPrefix(item, config.prefix));
37
39
  else return config.items;
@@ -0,0 +1 @@
1
+ export * from './src/block';
@@ -0,0 +1,28 @@
1
+ import { AfterViewInit, ElementRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ declare const KTBlockUI: any;
4
+ interface BlockOptions {
5
+ zIndex?: number;
6
+ overlayClass?: string;
7
+ message?: string;
8
+ }
9
+ export declare class Block implements AfterViewInit {
10
+ private element;
11
+ constructor(element: ElementRef);
12
+ arilBlock: import("@angular/core").InputSignal<boolean, boolean>;
13
+ blockOptions: import("@angular/core").InputSignal<BlockOptions, BlockOptions>;
14
+ blockUI: typeof KTBlockUI;
15
+ target: import("@angular/core").WritableSignal<HTMLElement>;
16
+ ngAfterViewInit(): void;
17
+ getTarget(element: ElementRef): HTMLElement;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<Block, never>;
19
+ static ɵdir: i0.ɵɵDirectiveDeclaration<Block, "[arilBlock]", never, { "arilBlock": { "alias": "arilBlock"; "required": true; "isSignal": true; }; "blockOptions": { "alias": "blockOptions"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
20
+ }
21
+ export declare class BlockPage {
22
+ constructor();
23
+ arilBlockPage: import("@angular/core").InputSignal<boolean, boolean>;
24
+ blockOptions: import("@angular/core").InputSignal<BlockOptions, BlockOptions>;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<BlockPage, never>;
26
+ static ɵdir: i0.ɵɵDirectiveDeclaration<BlockPage, "[arilBlockPage]", never, { "arilBlockPage": { "alias": "arilBlockPage"; "required": true; "isSignal": true; }; "blockOptions": { "alias": "blockOptions"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
27
+ }
28
+ export {};
@@ -7,7 +7,6 @@ type CustomEvent = {
7
7
  };
8
8
  };
9
9
  export declare const PubSubEvents: {
10
- popstate: string;
11
10
  navigateBetweenApps: string;
12
11
  navigateInApps: string;
13
12
  };
@@ -1 +0,0 @@
1
- {"version":3,"file":"aril-app.component-sZDpvJDM.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, connectRouter } 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(router: Router, pubSubService: PubSubService, appMenuService: AppMenuService) {\n\t\tconnectRouter(router);\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"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;MAsBa,YAAY,CAAA;AACxB,IAAA,WAAA,CAAY,MAAc,EAAE,aAA4B,EAAE,cAA8B,EAAA;AAgBxF,QAAA,IAAA,CAAA,SAAS,GAAS,UAAW,CAAC,SAAS,CAAC;QAfvC,aAAa,CAAC,MAAM,CAAC,CAAC;AAEhB,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;8GAfW,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;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"aril-aril-D__IXMsf.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/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, 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","import { provideHttpClient, withInterceptors } from '@angular/common/http';\r\nimport {\r\n\tAPP_INITIALIZER,\r\n\tApplicationConfig,\r\n\tEnvironmentProviders,\r\n\tNgZone,\r\n\timportProvidersFrom,\r\n\tisDevMode\r\n} 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\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\nexport var appName: APIs | undefined;\r\nexport var menuItems: MenuItem[] = [];\r\n\r\nconst appComponentLoader = async () => {\r\n\tconst { AppComponent } = await import('./app.component');\r\n\treturn AppComponent;\r\n};\r\n\r\nfunction loadStylesheets(styleLoaderService: StyleLoaderService): () => 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'theme.light.indigo.css',\r\n\t\t`assets/${appName}/styles/primeng.min.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\t`assets/${appName}/styles/dx.fluent.saas.light.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\r\nexport const boot = (\r\n\t_appName: APIs | undefined,\r\n\t_routerProvider: EnvironmentProviders,\r\n\t_menuItems: MenuItem[],\r\n\t_options: 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\t_routerProvider,\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(_options),\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]\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":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"aril-boot-mfe-app.component-zro0FnKY.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, connectRouter } 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(router: Router, pubSubService: PubSubService, appMenuService: AppMenuService) {\n\t\tconnectRouter(router);\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"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;MAsBa,YAAY,CAAA;AACxB,IAAA,WAAA,CAAY,MAAc,EAAE,aAA4B,EAAE,cAA8B,EAAA;AAgBxF,QAAA,IAAA,CAAA,SAAS,GAAS,UAAW,CAAC,SAAS,CAAC;QAfvC,aAAa,CAAC,MAAM,CAAC,CAAC;AAEhB,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;8GAfW,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;;;;;"}