aril 0.0.26 → 0.0.28
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.
- package/README.md +2 -2
- package/boot/config/config.sample.json +19 -0
- package/boot/config/index.d.ts +2 -0
- package/boot/config/src/app.configs.d.ts +13 -0
- package/boot/{host/src/services/custom-manifest.d.ts → config/src/custom-remote.d.ts} +2 -2
- package/boot/host/index.d.ts +0 -1
- package/boot/host/src/bootstrap.d.ts +2 -2
- package/boot/host/src/services/microFrontEnd.service.d.ts +1 -1
- package/boot/mfe/index.d.ts +1 -1
- package/boot/mfe/src/app.component.d.ts +2 -0
- package/boot/mfe/src/appComponentLoader.d.ts +1 -0
- package/boot/mfe/src/bootstrap.d.ts +5 -2
- package/boot/mfe/src/loadStyles.d.ts +3 -0
- package/esm2022/boot/config/aril-boot-config.mjs +5 -0
- package/esm2022/boot/config/index.mjs +3 -0
- package/esm2022/boot/config/src/app.configs.mjs +19 -0
- package/esm2022/boot/config/src/custom-remote.mjs +2 -0
- package/esm2022/boot/host/index.mjs +1 -2
- package/esm2022/boot/host/src/bootstrap.mjs +14 -12
- package/esm2022/boot/host/src/services/microFrontEnd.service.mjs +1 -1
- package/esm2022/boot/mfe/index.mjs +2 -2
- package/esm2022/boot/mfe/src/app.component.mjs +10 -3
- package/esm2022/boot/mfe/src/appComponentLoader.mjs +5 -0
- package/esm2022/boot/mfe/src/bootstrap.mjs +24 -33
- package/esm2022/boot/mfe/src/loadStyles.mjs +16 -0
- package/esm2022/http/index.mjs +2 -1
- package/esm2022/http/lib/enums.mjs +3 -1
- package/esm2022/http/src/httpClient.mjs +6 -4
- package/esm2022/http/src/serviceBase.mjs +12 -43
- package/esm2022/http/src/serviceMockBase.mjs +5 -0
- package/esm2022/http/src/serviceRequest.mjs +26 -0
- package/esm2022/http/src/serviceStateMethods.mjs +97 -3
- package/esm2022/i18n/index.mjs +2 -2
- package/esm2022/i18n/src/folder-name-token.mjs +3 -0
- package/esm2022/i18n/src/loader.mjs +3 -3
- package/esm2022/i18n/src/provideScope.mjs +2 -2
- package/esm2022/keycloak/index.mjs +2 -1
- package/esm2022/keycloak/src/auth.guard.mjs +39 -0
- package/esm2022/keycloak/src/keycloak.manager.mjs +21 -2
- package/esm2022/public-api.mjs +1 -2
- package/esm2022/theme/layout/app/profileSidebar/app.profilesidebar.component.mjs +8 -5
- package/esm2022/theme/layout/app/topbar/app.topbar.component.mjs +3 -3
- package/esm2022/theme/layout/service/app.layout.service.mjs +1 -1
- package/esm2022/theme/layout/service/app.menu.service.mjs +3 -1
- package/esm2022/ui/button/src/button.component.mjs +1 -1
- package/esm2022/ui/lib/src/input/common-input-validators.service.mjs +1 -1
- package/esm2022/util/block/aril-util-block.mjs +5 -0
- package/esm2022/util/block/index.mjs +2 -0
- package/esm2022/util/block/src/block.mjs +64 -0
- package/esm2022/util/custom_pages/src/notFound.component.mjs +53 -110
- package/esm2022/util/pub-sub/src/pub-sub.service.mjs +2 -3
- package/fesm2022/{aril-boot-mfe-app.component-zro0FnKY.mjs → aril-app.component-pGPjpk8x.mjs} +14 -7
- package/fesm2022/aril-app.component-pGPjpk8x.mjs.map +1 -0
- package/fesm2022/aril-boot-config.mjs +26 -0
- package/fesm2022/aril-boot-config.mjs.map +1 -0
- package/fesm2022/aril-boot-host.mjs +14 -13
- package/fesm2022/aril-boot-host.mjs.map +1 -1
- package/fesm2022/{aril-app.component-sZDpvJDM.mjs → aril-boot-mfe-app.component-h5TW-GVW.mjs} +13 -6
- package/fesm2022/aril-boot-mfe-app.component-h5TW-GVW.mjs.map +1 -0
- package/fesm2022/aril-boot-mfe-aril-boot-mfe-7ZwVVddO.mjs +92 -0
- package/fesm2022/aril-boot-mfe-aril-boot-mfe-7ZwVVddO.mjs.map +1 -0
- package/fesm2022/aril-boot-mfe.mjs +13 -81
- package/fesm2022/aril-boot-mfe.mjs.map +1 -1
- package/fesm2022/aril-http.mjs +140 -45
- package/fesm2022/aril-http.mjs.map +1 -1
- package/fesm2022/aril-i18n.mjs +3 -3
- package/fesm2022/aril-i18n.mjs.map +1 -1
- package/fesm2022/aril-keycloak.mjs +58 -3
- package/fesm2022/aril-keycloak.mjs.map +1 -1
- package/fesm2022/aril-theme-layout.mjs +11 -7
- package/fesm2022/aril-theme-layout.mjs.map +1 -1
- package/fesm2022/aril-ui-button.mjs.map +1 -1
- package/fesm2022/aril-ui-lib.mjs.map +1 -1
- package/fesm2022/aril-util-block.mjs +71 -0
- package/fesm2022/aril-util-block.mjs.map +1 -0
- package/fesm2022/aril-util-custom_pages.mjs +52 -109
- package/fesm2022/aril-util-custom_pages.mjs.map +1 -1
- package/fesm2022/aril-util-pub-sub.mjs +1 -2
- package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
- package/fesm2022/aril.mjs +215 -16
- package/fesm2022/aril.mjs.map +1 -1
- package/http/index.d.ts +1 -0
- package/http/lib/enums.d.ts +4 -2
- package/http/src/httpClient.d.ts +2 -4
- package/http/src/serviceBase.d.ts +4 -2
- package/http/src/serviceMockBase.d.ts +6 -0
- package/http/src/serviceRequest.d.ts +4 -0
- package/http/src/serviceStateMethods.d.ts +11 -2
- package/i18n/index.d.ts +1 -1
- package/i18n/src/folder-name-token.d.ts +2 -0
- package/i18n/src/provideScope.d.ts +0 -4
- package/keycloak/index.d.ts +1 -0
- package/keycloak/src/auth.guard.d.ts +11 -0
- package/keycloak/src/keycloak.manager.d.ts +1 -0
- package/package.json +13 -1
- package/public-api.d.ts +0 -1
- package/scripts/util/blockui.min.js +7 -0
- package/styles/util/blockui.css +56 -0
- package/theme/layout/app/profileSidebar/app.profilesidebar.component.d.ts +3 -0
- package/theme/layout/app/profileSidebar/app.profilesidebar.component.html +151 -152
- package/theme/layout/app/profileSidebar/app.profilesidebar.component.ts +31 -24
- package/theme/layout/app/topbar/app.topbar.component.html +45 -45
- package/theme/layout/app/topbar/app.topbar.component.ts +32 -32
- package/theme/layout/service/app.layout.service.ts +178 -178
- package/theme/layout/service/app.menu.service.ts +2 -0
- package/ui/button/src/button.component.d.ts +1 -1
- package/ui/lib/src/input/common-input-validators.service.d.ts +2 -1
- package/util/block/index.d.ts +1 -0
- package/util/block/src/block.d.ts +28 -0
- package/util/pub-sub/src/pub-sub.service.d.ts +1 -2
- package/esm2022/boot/host/src/services/custom-manifest.mjs +0 -2
- package/esm2022/i18n/src/file-url-token.mjs +0 -3
- package/fesm2022/aril-app.component-sZDpvJDM.mjs.map +0 -1
- package/fesm2022/aril-aril-D__IXMsf.mjs +0 -207
- package/fesm2022/aril-aril-D__IXMsf.mjs.map +0 -1
- package/fesm2022/aril-boot-mfe-app.component-zro0FnKY.mjs.map +0 -1
- package/i18n/src/file-url-token.d.ts +0 -2
package/fesm2022/aril.mjs
CHANGED
|
@@ -1,17 +1,216 @@
|
|
|
1
|
-
|
|
2
|
-
import '@angular/
|
|
3
|
-
import '@angular/core';
|
|
4
|
-
import '@angular/platform-browser';
|
|
5
|
-
import '@angular/platform-browser/animations';
|
|
6
|
-
import '
|
|
7
|
-
import '
|
|
8
|
-
import '
|
|
9
|
-
import 'aril/
|
|
10
|
-
import 'aril/
|
|
11
|
-
import '
|
|
12
|
-
import '@angular-architects/module-federation-tools';
|
|
13
|
-
import 'aril/theme/layout';
|
|
14
|
-
import 'aril/util/pub-sub';
|
|
15
|
-
import '@angular/elements';
|
|
16
|
-
import '
|
|
1
|
+
import { provideHttpClient, withInterceptors, HttpClient } from '@angular/common/http';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { inject, Renderer2, ElementRef, Component, ViewEncapsulation, ViewChild, NgZone, importProvidersFrom, APP_INITIALIZER, Injectable } from '@angular/core';
|
|
4
|
+
import { bootstrapApplication, createApplication } from '@angular/platform-browser';
|
|
5
|
+
import { provideAnimations } from '@angular/platform-browser/animations';
|
|
6
|
+
import * as i1 from '@angular/router';
|
|
7
|
+
import { RouterOutlet, provideRouter, withComponentInputBinding, withHashLocation } from '@angular/router';
|
|
8
|
+
import { MessageService, ConfirmationService } from 'primeng/api';
|
|
9
|
+
import { loadAppConfigs } from 'aril/boot/config';
|
|
10
|
+
import { i18nModule, i18nFolderName } from 'aril/i18n';
|
|
11
|
+
import { authInterceptor, KeycloakManager } from 'aril/keycloak';
|
|
12
|
+
import { WebComponentWrapper, ModuleFederationToolsModule, startsWith } from '@angular-architects/module-federation-tools';
|
|
13
|
+
import { AppLayoutComponent, AppMenuService } from 'aril/theme/layout';
|
|
14
|
+
import * as i2 from 'aril/util/pub-sub';
|
|
15
|
+
import { createCustomElement } from '@angular/elements';
|
|
16
|
+
import { KeycloakAngularModule } from 'keycloak-angular';
|
|
17
|
+
import { StyleLoaderService } from 'aril/util/loaders';
|
|
18
|
+
|
|
19
|
+
class ShadowDOMWrapperComponent extends WebComponentWrapper {
|
|
20
|
+
constructor() {
|
|
21
|
+
super(...arguments);
|
|
22
|
+
this.renderer = inject(Renderer2);
|
|
23
|
+
}
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
const shadowRoot = this.vc.nativeElement.parentNode;
|
|
26
|
+
const styleUrls = this['route'].snapshot.data.styleUrls || [];
|
|
27
|
+
// Inject styles into the Shadow DOM
|
|
28
|
+
styleUrls.forEach((url) => {
|
|
29
|
+
const link = this.renderer.createElement('link');
|
|
30
|
+
link.setAttribute('rel', 'stylesheet');
|
|
31
|
+
link.setAttribute('type', 'text/css');
|
|
32
|
+
link.setAttribute('href', url);
|
|
33
|
+
this.renderer.appendChild(shadowRoot, link);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ShadowDOMWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: ShadowDOMWrapperComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "vc", first: true, predicate: ["vc"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: '<div #vc></div>', isInline: true, encapsulation: i0.ViewEncapsulation.ShadowDom }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ShadowDOMWrapperComponent, decorators: [{
|
|
40
|
+
type: Component,
|
|
41
|
+
args: [{
|
|
42
|
+
standalone: true,
|
|
43
|
+
template: '<div #vc></div>',
|
|
44
|
+
encapsulation: ViewEncapsulation.ShadowDom
|
|
45
|
+
}]
|
|
46
|
+
}], propDecorators: { vc: [{
|
|
47
|
+
type: ViewChild,
|
|
48
|
+
args: ['vc', { read: ElementRef, static: true }]
|
|
49
|
+
}] } });
|
|
50
|
+
|
|
51
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
52
|
+
class AppComponent {
|
|
53
|
+
constructor(router, pubSubService) {
|
|
54
|
+
globalThis.ngZone = inject(NgZone);
|
|
55
|
+
globalThis.isMFEMode = true;
|
|
56
|
+
pubSubService.subscribe('navigateBetweenApps', (data) => {
|
|
57
|
+
router.navigateByUrl(data.path);
|
|
58
|
+
pubSubService.publish({
|
|
59
|
+
name: 'navigateInApps',
|
|
60
|
+
data: data
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppComponent, deps: [{ token: i1.Router }, { token: i2.PubSubService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
65
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AppComponent, isStandalone: true, selector: "aril-root", ngImport: i0, template: ` <app-layout></app-layout> `, isInline: true, dependencies: [{ kind: "ngmodule", type: ModuleFederationToolsModule }, { kind: "component", type: AppLayoutComponent, selector: "app-layout" }] }); }
|
|
66
|
+
}
|
|
67
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppComponent, decorators: [{
|
|
68
|
+
type: Component,
|
|
69
|
+
args: [{
|
|
70
|
+
standalone: true,
|
|
71
|
+
selector: 'aril-root',
|
|
72
|
+
template: ` <app-layout></app-layout> `,
|
|
73
|
+
imports: [RouterOutlet, ModuleFederationToolsModule, ShadowDOMWrapperComponent, AppLayoutComponent]
|
|
74
|
+
}]
|
|
75
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.PubSubService }] });
|
|
76
|
+
|
|
77
|
+
const boot$1 = (routes, pluginInitializer, keycloakConfig) => {
|
|
78
|
+
const appConfig = {
|
|
79
|
+
providers: [
|
|
80
|
+
provideAnimations(),
|
|
81
|
+
provideHttpClient(withInterceptors([authInterceptor])),
|
|
82
|
+
provideRouter(routes, withComponentInputBinding(), withHashLocation()),
|
|
83
|
+
importProvidersFrom(i18nModule),
|
|
84
|
+
MessageService,
|
|
85
|
+
ConfirmationService,
|
|
86
|
+
pluginInitializer,
|
|
87
|
+
{
|
|
88
|
+
provide: APP_INITIALIZER,
|
|
89
|
+
useFactory: (keycloak) => keycloak.init(keycloakConfig),
|
|
90
|
+
multi: true,
|
|
91
|
+
deps: [KeycloakManager]
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
provide: APP_INITIALIZER,
|
|
95
|
+
useFactory: loadAppConfigs,
|
|
96
|
+
multi: true,
|
|
97
|
+
deps: [HttpClient]
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
provide: i18nFolderName,
|
|
101
|
+
useValue: 'host'
|
|
102
|
+
}
|
|
103
|
+
]
|
|
104
|
+
};
|
|
105
|
+
bootstrapApplication(AppComponent, appConfig).catch((err) => console.error(err));
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
class MicroFrontendService {
|
|
109
|
+
constructor() {
|
|
110
|
+
this.appMenuService = inject(AppMenuService);
|
|
111
|
+
}
|
|
112
|
+
buildRoutes(plugins) {
|
|
113
|
+
const mfeRoutes = plugins.map((config) => ({
|
|
114
|
+
matcher: startsWith(config.remoteName),
|
|
115
|
+
component: config.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,
|
|
116
|
+
data: config
|
|
117
|
+
}));
|
|
118
|
+
return mfeRoutes;
|
|
119
|
+
}
|
|
120
|
+
setMenuItems(plugins) {
|
|
121
|
+
const menuItems = plugins.map((config) => {
|
|
122
|
+
return {
|
|
123
|
+
label: config.remoteName,
|
|
124
|
+
icon: 'pi pi-fw pi-bars',
|
|
125
|
+
routerLink: config.remoteName
|
|
126
|
+
};
|
|
127
|
+
});
|
|
128
|
+
this.appMenuService.menuConfig.set({ items: menuItems });
|
|
129
|
+
}
|
|
130
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MicroFrontendService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
131
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MicroFrontendService, providedIn: 'root' }); }
|
|
132
|
+
}
|
|
133
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MicroFrontendService, decorators: [{
|
|
134
|
+
type: Injectable,
|
|
135
|
+
args: [{ providedIn: 'root' }]
|
|
136
|
+
}] });
|
|
137
|
+
|
|
138
|
+
const appComponentLoader = async () => {
|
|
139
|
+
const { AppComponent } = await import('./aril-app.component-pGPjpk8x.mjs');
|
|
140
|
+
return AppComponent;
|
|
141
|
+
};
|
|
142
|
+
|
|
143
|
+
function loadStylesheets(styleLoaderService, appName) {
|
|
144
|
+
const styles = [
|
|
145
|
+
'layout.css',
|
|
146
|
+
'ui.common.css',
|
|
147
|
+
'preloading.css',
|
|
148
|
+
'primeng.min.css',
|
|
149
|
+
'theme.light.indigo.css',
|
|
150
|
+
'dx.fluent.saas.light.css',
|
|
151
|
+
`assets/${appName}/styles/primeflex/primeflex.min.css`,
|
|
152
|
+
`assets/${appName}/styles/primeicons/primeicons.css`
|
|
153
|
+
];
|
|
154
|
+
if (globalThis.isMFEMode)
|
|
155
|
+
return () => Promise.resolve();
|
|
156
|
+
return () => styleLoaderService.load(styles);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
var appName;
|
|
160
|
+
var menuItems = [];
|
|
161
|
+
const boot = (_appName, _routes, _menuItems, _keycloakOptions, _federatedComponents) => {
|
|
162
|
+
appName = _appName;
|
|
163
|
+
menuItems = _menuItems;
|
|
164
|
+
const appBootConfig = {
|
|
165
|
+
providers: [
|
|
166
|
+
provideAnimations(),
|
|
167
|
+
provideHttpClient(withInterceptors([authInterceptor])),
|
|
168
|
+
provideRouter(_routes, withComponentInputBinding(), withHashLocation()),
|
|
169
|
+
importProvidersFrom(i18nModule, KeycloakAngularModule),
|
|
170
|
+
MessageService,
|
|
171
|
+
ConfirmationService,
|
|
172
|
+
globalThis.ngZone ? { provide: NgZone, useValue: globalThis.ngZone } : [],
|
|
173
|
+
{
|
|
174
|
+
provide: APP_INITIALIZER,
|
|
175
|
+
useFactory: (keycloak) => keycloak.init(_keycloakOptions),
|
|
176
|
+
multi: true,
|
|
177
|
+
deps: [KeycloakManager]
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
provide: APP_INITIALIZER,
|
|
181
|
+
useFactory: loadStylesheets,
|
|
182
|
+
multi: true,
|
|
183
|
+
deps: [StyleLoaderService, i18nFolderName]
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
provide: APP_INITIALIZER,
|
|
187
|
+
useFactory: loadAppConfigs,
|
|
188
|
+
multi: true,
|
|
189
|
+
deps: [HttpClient]
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
provide: i18nFolderName,
|
|
193
|
+
useValue: _appName
|
|
194
|
+
}
|
|
195
|
+
]
|
|
196
|
+
};
|
|
197
|
+
createApplication(appBootConfig).then((appRef) => {
|
|
198
|
+
appComponentLoader().then((AppComponent) => {
|
|
199
|
+
const app = createCustomElement(AppComponent, { injector: appRef.injector });
|
|
200
|
+
customElements.define(`app-${appName}`, app);
|
|
201
|
+
if (_federatedComponents) {
|
|
202
|
+
Object.entries(_federatedComponents).forEach(([selector, component]) => {
|
|
203
|
+
const fdc = createCustomElement(component, { injector: appRef.injector });
|
|
204
|
+
customElements.define(selector, fdc);
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
});
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Generated bundle index. Do not edit.
|
|
213
|
+
*/
|
|
214
|
+
|
|
215
|
+
export { appName as a, menuItems as m };
|
|
17
216
|
//# sourceMappingURL=aril.mjs.map
|
package/fesm2022/aril.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"aril.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/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 { HttpClient, provideHttpClient, withInterceptors } from '@angular/common/http';\r\nimport { APP_INITIALIZER, ApplicationConfig, importProvidersFrom } from '@angular/core';\r\nimport { bootstrapApplication } 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, MessageService } from 'primeng/api';\r\n\r\nimport { KeycloakAngularModule, KeycloakOptions } from 'keycloak-angular';\r\n\r\nimport { loadAppConfigs } from 'aril/boot/config';\r\nimport { i18nFolderName, i18nModule } from 'aril/i18n';\r\nimport { KeycloakManager, authInterceptor } from 'aril/keycloak';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { PluginInitializer } from './services/plugin-init.token';\r\n\r\nexport const boot = (routes: Routes, pluginInitializer: PluginInitializer, keycloakConfig: KeycloakOptions) => {\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),\r\n\t\t\tMessageService,\r\n\t\t\tConfirmationService,\r\n\t\t\tpluginInitializer,\r\n\t\t\t{\r\n\t\t\t\tprovide: APP_INITIALIZER,\r\n\t\t\t\tuseFactory: (keycloak: KeycloakManager) => keycloak.init(keycloakConfig),\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: loadAppConfigs,\r\n\t\t\t\tmulti: true,\r\n\t\t\t\tdeps: [HttpClient]\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tprovide: i18nFolderName,\r\n\t\t\t\tuseValue: 'host'\r\n\t\t\t}\r\n\t\t]\r\n\t};\r\n\r\n\tbootstrapApplication(AppComponent, appConfig).catch((err) => console.error(err));\r\n};\r\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 { CustomRemoteConfig } from 'aril/boot/config';\nimport { AppMenuService } from 'aril/theme/layout';\n\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 { HttpClient, provideHttpClient, withInterceptors } from '@angular/common/http';\r\nimport { APP_INITIALIZER, ApplicationConfig, NgZone, Type, importProvidersFrom } 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 { loadAppConfigs } from 'aril/boot/config';\r\nimport { APIs } from 'aril/http';\r\nimport { i18nFolderName, i18nModule } 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_federatedComponents?: { [selector: string]: Type<any> }\r\n) => {\r\n\tappName = _appName;\r\n\tmenuItems = _menuItems;\r\n\r\n\tconst appBootConfig: 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, i18nFolderName]\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tprovide: APP_INITIALIZER,\r\n\t\t\t\tuseFactory: loadAppConfigs,\r\n\t\t\t\tmulti: true,\r\n\t\t\t\tdeps: [HttpClient]\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tprovide: i18nFolderName,\r\n\t\t\t\tuseValue: _appName\r\n\t\t\t}\r\n\t\t]\r\n\t};\r\n\r\n\tcreateApplication(appBootConfig).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\r\n\t\t\tif (_federatedComponents) {\r\n\t\t\t\tObject.entries(_federatedComponents).forEach(([selector, component]) => {\r\n\t\t\t\t\tconst fdc = createCustomElement(component, { injector: appRef.injector });\r\n\t\t\t\t\tcustomElements.define(selector, fdc);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n};\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["boot"],"mappings":"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"}
|
package/http/index.d.ts
CHANGED
package/http/lib/enums.d.ts
CHANGED
|
@@ -3,7 +3,8 @@ export declare enum HTTPMethods {
|
|
|
3
3
|
GETBYPARAMS = "GETBYPARAMS",
|
|
4
4
|
POST = "POST",
|
|
5
5
|
PUT = "PUT",
|
|
6
|
-
DELETE = "DELETE"
|
|
6
|
+
DELETE = "DELETE",
|
|
7
|
+
DELETEBYPARAMS = "DELETEBYPARAMS"
|
|
7
8
|
}
|
|
8
9
|
export declare enum APIs {
|
|
9
10
|
THOR = "thor",
|
|
@@ -17,7 +18,8 @@ export declare enum APIs {
|
|
|
17
18
|
LENA = "lena",
|
|
18
19
|
HES = "hes",
|
|
19
20
|
MTH = "mth",
|
|
20
|
-
SIS = "sis"
|
|
21
|
+
SIS = "sis",
|
|
22
|
+
MNG = "mng"
|
|
21
23
|
}
|
|
22
24
|
export declare enum ProxyTypes {
|
|
23
25
|
Native = 0,
|
package/http/src/httpClient.d.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import { APIs } from '../lib/enums';
|
|
3
1
|
import { ServiceCallStateMap } from '../lib/interfaces';
|
|
4
|
-
export declare const API_TOKEN: InjectionToken<APIs>;
|
|
5
2
|
export declare abstract class RestClient {
|
|
6
3
|
private readonly httpClient;
|
|
7
|
-
private readonly baseAPI;
|
|
8
4
|
private readonly injector;
|
|
5
|
+
private readonly messageService;
|
|
6
|
+
private readonly translocoService;
|
|
9
7
|
abstract states: ServiceCallStateMap<any>;
|
|
10
8
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { APIs, HTTPMethods, ProxyTypes } from '../lib/enums';
|
|
2
|
-
export declare function ServiceCall(httpMethod: HTTPMethods, proxy: ProxyTypes, serviceURL: string,
|
|
3
|
-
|
|
2
|
+
export declare function ServiceCall(httpMethod: HTTPMethods, proxy: ProxyTypes, serviceURL: string, message?: {
|
|
3
|
+
success?: string;
|
|
4
|
+
error?: string;
|
|
5
|
+
}, remoteAPI?: APIs): MethodDecorator;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { HTTPMethods, ProxyTypes } from '../lib/enums';
|
|
2
|
+
export declare function ServiceCallMock(httpMethod: HTTPMethods, proxy: ProxyTypes, serviceURL: string, mockAPI: string, message?: {
|
|
3
|
+
success?: string;
|
|
4
|
+
error?: string;
|
|
5
|
+
useDefault: boolean;
|
|
6
|
+
}): MethodDecorator;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
|
2
|
+
import { Interfaces } from 'aril/util/lib';
|
|
3
|
+
import { HTTPMethods } from '../lib/enums';
|
|
4
|
+
export declare function getRequest(httpMethod: HTTPMethods, fn: () => any, args: any[]): HttpParams | Interfaces.MapStringString | undefined;
|
|
@@ -1,4 +1,13 @@
|
|
|
1
|
+
import { HttpErrorResponse } from '@angular/common/http';
|
|
2
|
+
import { MessageService } from 'primeng/api';
|
|
3
|
+
import { TranslocoService } from '@ngneat/transloco';
|
|
1
4
|
import { ServiceCallStateMap } from '../lib/interfaces';
|
|
2
5
|
export declare const callState: (states: ServiceCallStateMap<any>, serviceName: any) => void;
|
|
3
|
-
export declare const successState: (states: ServiceCallStateMap<any>, serviceName: any
|
|
4
|
-
|
|
6
|
+
export declare const successState: (states: ServiceCallStateMap<any>, serviceName: any, translocoService: TranslocoService, messageService: MessageService, message?: {
|
|
7
|
+
success?: string;
|
|
8
|
+
error?: string;
|
|
9
|
+
}, response?: any) => void;
|
|
10
|
+
export declare const errorState: (states: ServiceCallStateMap<any>, serviceName: any, error: HttpErrorResponse, translocoService: TranslocoService, messageService: MessageService, message?: {
|
|
11
|
+
success?: string | undefined;
|
|
12
|
+
error?: string | undefined;
|
|
13
|
+
} | undefined) => void;
|
package/i18n/index.d.ts
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @param loader `(lang: string) => import(`./i18n/${lang}.json`)` to create a relative import to the correct dir
|
|
3
|
-
*/
|
|
4
|
-
export declare function i18nLoaderFactory(loader: (lang: string) => Promise<any>): any;
|
|
5
1
|
export declare const providei18nScope: (scopeName: string, loader: (lang: string) => Promise<any>) => {
|
|
6
2
|
provide: import("@angular/core").InjectionToken<import("@ngneat/transloco").TranslocoScope>;
|
|
7
3
|
useValue: import("@ngneat/transloco").TranslocoScope;
|
package/keycloak/index.d.ts
CHANGED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';
|
|
2
|
+
import { KeycloakAuthGuard, KeycloakService } from 'keycloak-angular';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class AuthGuard extends KeycloakAuthGuard {
|
|
5
|
+
protected readonly router: Router;
|
|
6
|
+
protected readonly keycloak: KeycloakService;
|
|
7
|
+
constructor(router: Router, keycloak: KeycloakService);
|
|
8
|
+
isAccessAllowed(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise<boolean>;
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AuthGuard, never>;
|
|
10
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AuthGuard>;
|
|
11
|
+
}
|
|
@@ -4,6 +4,7 @@ import { KeycloakLoginOptions } from 'keycloak-js';
|
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class KeycloakManager {
|
|
7
|
+
constructor();
|
|
7
8
|
readonly keycloak: KeycloakService;
|
|
8
9
|
private defaultOptions;
|
|
9
10
|
init(options: KeycloakOptions): () => Promise<any>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aril",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.28",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^17.1.0",
|
|
6
6
|
"@angular/core": "^17.1.0",
|
|
@@ -74,6 +74,12 @@
|
|
|
74
74
|
"esm": "./esm2022/util/aril-util.mjs",
|
|
75
75
|
"default": "./fesm2022/aril-util.mjs"
|
|
76
76
|
},
|
|
77
|
+
"./boot/config": {
|
|
78
|
+
"types": "./boot/config/index.d.ts",
|
|
79
|
+
"esm2022": "./esm2022/boot/config/aril-boot-config.mjs",
|
|
80
|
+
"esm": "./esm2022/boot/config/aril-boot-config.mjs",
|
|
81
|
+
"default": "./fesm2022/aril-boot-config.mjs"
|
|
82
|
+
},
|
|
77
83
|
"./boot/host": {
|
|
78
84
|
"types": "./boot/host/index.d.ts",
|
|
79
85
|
"esm2022": "./esm2022/boot/host/aril-boot-host.mjs",
|
|
@@ -236,6 +242,12 @@
|
|
|
236
242
|
"esm": "./esm2022/ui/value/aril-ui-value.mjs",
|
|
237
243
|
"default": "./fesm2022/aril-ui-value.mjs"
|
|
238
244
|
},
|
|
245
|
+
"./util/block": {
|
|
246
|
+
"types": "./util/block/index.d.ts",
|
|
247
|
+
"esm2022": "./esm2022/util/block/aril-util-block.mjs",
|
|
248
|
+
"esm": "./esm2022/util/block/aril-util-block.mjs",
|
|
249
|
+
"default": "./fesm2022/aril-util-block.mjs"
|
|
250
|
+
},
|
|
239
251
|
"./util/custom_pages": {
|
|
240
252
|
"types": "./util/custom_pages/index.d.ts",
|
|
241
253
|
"esm2022": "./esm2022/util/custom_pages/aril-util-custom_pages.mjs",
|
package/public-api.d.ts
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";Element.prototype.matches||(Element.prototype.matches=function(t){for(var e=(this.document||this.ownerDocument).querySelectorAll(t),n=e.length;--n>=0&&e.item(n)!==this;);return n>-1}),Element.prototype.closest||(Element.prototype.closest=function(t){var e=this;if(!document.documentElement.contains(this))return null;do{if(e.matches(t))return e;e=e.parentElement}while(null!==e);return null})
|
|
2
|
+
/**
|
|
3
|
+
* ChildNode.remove() polyfill
|
|
4
|
+
* https://gomakethings.com/removing-an-element-from-the-dom-the-es6-way/
|
|
5
|
+
* @author Chris Ferdinandi
|
|
6
|
+
* @license MIT
|
|
7
|
+
*/,function(t){for(var e=0;e<t.length;e++)window[t[e]]&&!("remove"in window[t[e]].prototype)&&(window[t[e]].prototype.remove=function(){this.parentNode.removeChild(this)})}(["Element","CharacterData","DocumentType"]),function(){for(var t=0,e=["webkit","moz"],n=0;n<e.length&&!window.requestAnimationFrame;++n)window.requestAnimationFrame=window[e[n]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[e[n]+"CancelAnimationFrame"]||window[e[n]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(e){var n=(new Date).getTime(),i=Math.max(0,16-(n-t)),o=window.setTimeout((function(){e(n+i)}),i);return t=n+i,o}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(t){clearTimeout(t)})}(),[Element.prototype,Document.prototype,DocumentFragment.prototype].forEach((function(t){t.hasOwnProperty("prepend")||Object.defineProperty(t,"prepend",{configurable:!0,enumerable:!0,writable:!0,value:function(){var t=Array.prototype.slice.call(arguments),e=document.createDocumentFragment();t.forEach((function(t){var n=t instanceof Node;e.appendChild(n?t:document.createTextNode(String(t)))})),this.insertBefore(e,this.firstChild)}})})),null==Element.prototype.getAttributeNames&&(Element.prototype.getAttributeNames=function(){for(var t=this.attributes,e=t.length,n=new Array(e),i=0;i<e;i++)n[i]=t[i].name;return n}),window.KTUtilElementDataStore={},window.KTUtilElementDataStoreID=0,window.KTUtilDelegatedEventHandlers={};var KTUtil=function(){var t=[],e=function(){window.addEventListener("resize",(function(){KTUtil.throttle(undefined,(function(){!function(){for(var e=0;e<t.length;e++)t[e].call()}()}),200)}))};return{init:function(t){e()},addResizeHandler:function(e){t.push(e)},removeResizeHandler:function(e){for(var n=0;n<t.length;n++)e===t[n]&&delete t[n]},runResizeHandlers:function(){_runResizeHandlers()},resize:function(){if("function"==typeof Event)window.dispatchEvent(new Event("resize"));else{var t=window.document.createEvent("UIEvents");t.initUIEvent("resize",!0,!1,window,0),window.dispatchEvent(t)}},getURLParam:function(t){var e,n,i=window.location.search.substring(1).split("&");for(e=0;e<i.length;e++)if((n=i[e].split("="))[0]==t)return unescape(n[1]);return null},isMobileDevice:function(){var t=this.getViewPort().width<this.getBreakpoint("lg");return!1===t&&(t=null!=navigator.userAgent.match(/iPad/i)),t},isDesktopDevice:function(){return!KTUtil.isMobileDevice()},getViewPort:function(){var t=window,e="inner";return"innerWidth"in window||(e="client",t=document.documentElement||document.body),{width:t[e+"Width"],height:t[e+"Height"]}},isBreakpointUp:function(t){return this.getViewPort().width>=this.getBreakpoint(t)},isBreakpointDown:function(t){return this.getViewPort().width<this.getBreakpoint(t)},getViewportWidth:function(){return this.getViewPort().width},getUniqueId:function(t){return t+Math.floor(Math.random()*(new Date).getTime())},getBreakpoint:function(t){var e=this.getCssVariableValue("--kt-"+t);return e&&(e=parseInt(e.trim())),e},isset:function(t,e){var n;if(-1!==(e=e||"").indexOf("["))throw new Error("Unsupported object path notation.");e=e.split(".");do{if(void 0===t)return!1;if(n=e.shift(),!t.hasOwnProperty(n))return!1;t=t[n]}while(e.length);return!0},getHighestZindex:function(t){for(var e,n;t&&t!==document;){if(("absolute"===(e=KTUtil.css(t,"position"))||"relative"===e||"fixed"===e)&&(n=parseInt(KTUtil.css(t,"z-index")),!isNaN(n)&&0!==n))return n;t=t.parentNode}return 1},hasFixedPositionedParent:function(t){for(;t&&t!==document;){if("fixed"===KTUtil.css(t,"position"))return!0;t=t.parentNode}return!1},sleep:function(t){for(var e=(new Date).getTime(),n=0;n<1e7&&!((new Date).getTime()-e>t);n++);},getRandomInt:function(t,e){return Math.floor(Math.random()*(e-t+1))+t},isAngularVersion:function(){return void 0!==window.Zone},deepExtend:function(t){t=t||{};for(var e=1;e<arguments.length;e++){var n=arguments[e];if(n)for(var i in n)n.hasOwnProperty(i)&&("[object Object]"!==Object.prototype.toString.call(n[i])?t[i]=n[i]:t[i]=KTUtil.deepExtend(t[i],n[i]))}return t},extend:function(t){t=t||{};for(var e=1;e<arguments.length;e++)if(arguments[e])for(var n in arguments[e])arguments[e].hasOwnProperty(n)&&(t[n]=arguments[e][n]);return t},getBody:function(){return document.getElementsByTagName("body")[0]},hasClasses:function(t,e){if(t){for(var n=e.split(" "),i=0;i<n.length;i++)if(0==KTUtil.hasClass(t,KTUtil.trim(n[i])))return!1;return!0}},hasClass:function(t,e){if(t)return t.classList?t.classList.contains(e):new RegExp("\\b"+e+"\\b").test(t.className)},addClass:function(t,e){if(t&&void 0!==e){var n=e.split(" ");if(t.classList)for(var i=0;i<n.length;i++)n[i]&&n[i].length>0&&t.classList.add(KTUtil.trim(n[i]));else if(!KTUtil.hasClass(t,e))for(var o=0;o<n.length;o++)t.className+=" "+KTUtil.trim(n[o])}},removeClass:function(t,e){if(t&&void 0!==e){var n=e.split(" ");if(t.classList)for(var i=0;i<n.length;i++)t.classList.remove(KTUtil.trim(n[i]));else if(KTUtil.hasClass(t,e))for(var o=0;o<n.length;o++)t.className=t.className.replace(new RegExp("\\b"+KTUtil.trim(n[o])+"\\b","g"),"")}},triggerCustomEvent:function(t,e,n){var i;window.CustomEvent?i=new CustomEvent(e,{detail:n}):(i=document.createEvent("CustomEvent")).initCustomEvent(e,!0,!0,n),t.dispatchEvent(i)},triggerEvent:function(t,e){var n;if(t.ownerDocument)n=t.ownerDocument;else{if(9!=t.nodeType)throw new Error("Invalid node passed to fireEvent: "+t.id);n=t}if(t.dispatchEvent){var i="";switch(e){case"click":case"mouseenter":case"mouseleave":case"mousedown":case"mouseup":i="MouseEvents";break;case"focus":case"change":case"blur":case"select":i="HTMLEvents";break;default:throw"fireEvent: Couldn't find an event class for event '"+e+"'."}var o="change"!=e;(r=n.createEvent(i)).initEvent(e,o,!0),r.synthetic=!0,t.dispatchEvent(r,!0)}else if(t.fireEvent){var r;(r=n.createEventObject()).synthetic=!0,t.fireEvent("on"+e,r)}},index:function(t){for(var e=t.parentNode.children,n=0;n<e.length;n++)if(e[n]==t)return n},trim:function(t){return t.trim()},eventTriggered:function(t){return!!t.currentTarget.dataset.triggered||(t.currentTarget.dataset.triggered=!0,!1)},remove:function(t){t&&t.parentNode&&t.parentNode.removeChild(t)},find:function(t,e){return null!==t?t.querySelector(e):null},findAll:function(t,e){return null!==t?t.querySelectorAll(e):null},insertAfter:function(t,e){return e.parentNode.insertBefore(t,e.nextSibling)},parents:function(t,e){for(var n=[];t&&t!==document;t=t.parentNode)e?t.matches(e)&&n.push(t):n.push(t);return n},children:function(t,e,n){if(!t||!t.childNodes)return null;for(var i=[],o=0,r=t.childNodes.length;o<r;++o)1==t.childNodes[o].nodeType&&KTUtil.matches(t.childNodes[o],e,n)&&i.push(t.childNodes[o]);return i},child:function(t,e,n){var i=KTUtil.children(t,e,n);return i?i[0]:null},matches:function(t,e,n){var i=Element.prototype,o=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.msMatchesSelector||function(t){return-1!==[].indexOf.call(document.querySelectorAll(t),this)};return!(!t||!t.tagName)&&o.call(t,e)},data:function(t){return{set:function(e,n){t&&(void 0===t.customDataTag&&(window.KTUtilElementDataStoreID++,t.customDataTag=window.KTUtilElementDataStoreID),void 0===window.KTUtilElementDataStore[t.customDataTag]&&(window.KTUtilElementDataStore[t.customDataTag]={}),window.KTUtilElementDataStore[t.customDataTag][e]=n)},get:function(e){if(t)return void 0===t.customDataTag?null:this.has(e)?window.KTUtilElementDataStore[t.customDataTag][e]:null},has:function(e){return!!t&&(void 0!==t.customDataTag&&!(!window.KTUtilElementDataStore[t.customDataTag]||!window.KTUtilElementDataStore[t.customDataTag][e]))},remove:function(e){t&&this.has(e)&&delete window.KTUtilElementDataStore[t.customDataTag][e]}}},outerWidth:function(t,e){var n;return!0===e?(n=parseFloat(t.offsetWidth),n+=parseFloat(KTUtil.css(t,"margin-left"))+parseFloat(KTUtil.css(t,"margin-right")),parseFloat(n)):n=parseFloat(t.offsetWidth)},offset:function(t){var e,n;if(t)return t.getClientRects().length?(e=t.getBoundingClientRect(),n=t.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset,right:window.innerWidth-(t.offsetLeft+t.offsetWidth)}):{top:0,left:0}},height:function(t){return KTUtil.css(t,"height")},outerHeight:function(t,e){var n,i=t.offsetHeight;return void 0!==e&&!0===e?(n=getComputedStyle(t),i+=parseInt(n.marginTop)+parseInt(n.marginBottom)):i},visible:function(t){return!(0===t.offsetWidth&&0===t.offsetHeight)},isVisibleInContainer:function(t,e){const n=t.offsetTop,i=n+t.clientHeight,o=e.scrollTop,r=o+e.clientHeight;return n>=o&&i<=r||n<o&&o<i||n<r&&r<i},getRelativeTopPosition:function(t,e){return t.offsetTop-e.offsetTop},attr:function(t,e,n){if(null!=t)return void 0===n?t.getAttribute(e):void t.setAttribute(e,n)},hasAttr:function(t,e){if(null!=t)return!!t.getAttribute(e)},removeAttr:function(t,e){null!=t&&t.removeAttribute(e)},animate:function(t,e,n,i,o,r){var a={};if(a.linear=function(t,e,n,i){return n*t/i+e},o=a.linear,"number"==typeof t&&"number"==typeof e&&"number"==typeof n&&"function"==typeof i){"function"!=typeof r&&(r=function(){});var l=window.requestAnimationFrame||function(t){window.setTimeout(t,20)},s=e-t;i(t);var u=window.performance&&window.performance.now?window.performance.now():+new Date;l((function a(c){var d=(c||+new Date)-u;d>=0&&i(o(d,t,s,n)),d>=0&&d>=n?(i(e),r()):l(a)}))}},actualCss:function(t,e,n){var i,o="";if(t instanceof HTMLElement!=!1)return t.getAttribute("kt-hidden-"+e)&&!1!==n?parseFloat(t.getAttribute("kt-hidden-"+e)):(o=t.style.cssText,t.style.cssText="position: absolute; visibility: hidden; display: block;","width"==e?i=t.offsetWidth:"height"==e&&(i=t.offsetHeight),t.style.cssText=o,t.setAttribute("kt-hidden-"+e,i),parseFloat(i))},actualHeight:function(t,e){return KTUtil.actualCss(t,"height",e)},actualWidth:function(t,e){return KTUtil.actualCss(t,"width",e)},getScroll:function(t,e){return e="scroll"+e,t==window||t==document?self["scrollTop"==e?"pageYOffset":"pageXOffset"]||browserSupportsBoxModel&&document.documentElement[e]||document.body[e]:t[e]},css:function(t,e,n,i){if(t)if(void 0!==n)!0===i?t.style.setProperty(e,n,"important"):t.style[e]=n;else{var o=(t.ownerDocument||document).defaultView;if(o&&o.getComputedStyle)return e=e.replace(/([A-Z])/g,"-$1").toLowerCase(),o.getComputedStyle(t,null).getPropertyValue(e);if(t.currentStyle)return e=e.replace(/\-(\w)/g,(function(t,e){return e.toUpperCase()})),n=t.currentStyle[e],/^\d+(em|pt|%|ex)?$/i.test(n)?function(e){var n=t.style.left,i=t.runtimeStyle.left;return t.runtimeStyle.left=t.currentStyle.left,t.style.left=e||0,e=t.style.pixelLeft+"px",t.style.left=n,t.runtimeStyle.left=i,e}(n):n}},slide:function(t,e,n,i,o){if(!(!t||"up"==e&&!1===KTUtil.visible(t)||"down"==e&&!0===KTUtil.visible(t))){n=n||600;var r=KTUtil.actualHeight(t),a=!1,l=!1;KTUtil.css(t,"padding-top")&&!0!==KTUtil.data(t).has("slide-padding-top")&&KTUtil.data(t).set("slide-padding-top",KTUtil.css(t,"padding-top")),KTUtil.css(t,"padding-bottom")&&!0!==KTUtil.data(t).has("slide-padding-bottom")&&KTUtil.data(t).set("slide-padding-bottom",KTUtil.css(t,"padding-bottom")),KTUtil.data(t).has("slide-padding-top")&&(a=parseInt(KTUtil.data(t).get("slide-padding-top"))),KTUtil.data(t).has("slide-padding-bottom")&&(l=parseInt(KTUtil.data(t).get("slide-padding-bottom"))),"up"==e?(t.style.cssText="display: block; overflow: hidden;",a&&KTUtil.animate(0,a,n,(function(e){t.style.paddingTop=a-e+"px"}),"linear"),l&&KTUtil.animate(0,l,n,(function(e){t.style.paddingBottom=l-e+"px"}),"linear"),KTUtil.animate(0,r,n,(function(e){t.style.height=r-e+"px"}),"linear",(function(){t.style.height="",t.style.display="none","function"==typeof i&&i()}))):"down"==e&&(t.style.cssText="display: block; overflow: hidden;",a&&KTUtil.animate(0,a,n,(function(e){t.style.paddingTop=e+"px"}),"linear",(function(){t.style.paddingTop=""})),l&&KTUtil.animate(0,l,n,(function(e){t.style.paddingBottom=e+"px"}),"linear",(function(){t.style.paddingBottom=""})),KTUtil.animate(0,r,n,(function(e){t.style.height=e+"px"}),"linear",(function(){t.style.height="",t.style.display="",t.style.overflow="","function"==typeof i&&i()})))}},slideUp:function(t,e,n){KTUtil.slide(t,"up",e,n)},slideDown:function(t,e,n){KTUtil.slide(t,"down",e,n)},show:function(t,e){void 0!==t&&(t.style.display=e||"block")},hide:function(t){void 0!==t&&(t.style.display="none")},addEvent:function(t,e,n,i){null!=t&&t.addEventListener(e,n)},removeEvent:function(t,e,n){null!==t&&t.removeEventListener(e,n)},on:function(t,e,n,i){if(null!==t){var o=KTUtil.getUniqueId("event");return window.KTUtilDelegatedEventHandlers[o]=function(n){for(var o=t.querySelectorAll(e),r=n.target;r&&r!==t;){for(var a=0,l=o.length;a<l;a++)r===o[a]&&i.call(r,n);r=r.parentNode}},KTUtil.addEvent(t,n,window.KTUtilDelegatedEventHandlers[o]),o}},off:function(t,e,n){t&&window.KTUtilDelegatedEventHandlers[n]&&(KTUtil.removeEvent(t,e,window.KTUtilDelegatedEventHandlers[n]),delete window.KTUtilDelegatedEventHandlers[n])},one:function(t,e,n){t.addEventListener(e,(function e(i){return i.target&&i.target.removeEventListener&&i.target.removeEventListener(i.type,e),t&&t.removeEventListener&&i.currentTarget.removeEventListener(i.type,e),n(i)}))},hash:function(t){var e,n=0;if(0===t.length)return n;for(e=0;e<t.length;e++)n=(n<<5)-n+t.charCodeAt(e),n|=0;return n},animateClass:function(t,e,n){var i,o={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"mozAnimationEnd",WebkitAnimation:"webkitAnimationEnd",msAnimation:"msAnimationEnd"};for(var r in o)void 0!==t.style[r]&&(i=o[r]);KTUtil.addClass(t,e),KTUtil.one(t,i,(function(){KTUtil.removeClass(t,e)})),n&&KTUtil.one(t,i,n)},transitionEnd:function(t,e){var n,i={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"mozTransitionEnd",WebkitTransition:"webkitTransitionEnd",msTransition:"msTransitionEnd"};for(var o in i)void 0!==t.style[o]&&(n=i[o]);KTUtil.one(t,n,e)},animationEnd:function(t,e){var n,i={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"mozAnimationEnd",WebkitAnimation:"webkitAnimationEnd",msAnimation:"msAnimationEnd"};for(var o in i)void 0!==t.style[o]&&(n=i[o]);KTUtil.one(t,n,e)},animateDelay:function(t,e){for(var n=["webkit-","moz-","ms-","o-",""],i=0;i<n.length;i++)KTUtil.css(t,n[i]+"animation-delay",e)},animateDuration:function(t,e){for(var n=["webkit-","moz-","ms-","o-",""],i=0;i<n.length;i++)KTUtil.css(t,n[i]+"animation-duration",e)},scrollTo:function(t,e,n){n=n||500;var i,o,r=t?KTUtil.offset(t).top:0;e&&(r-=e),i=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,o=r,KTUtil.animate(i,o,n,(function(t){document.documentElement.scrollTop=t,document.body.parentNode.scrollTop=t,document.body.scrollTop=t}))},scrollTop:function(t,e){KTUtil.scrollTo(null,t,e)},isArray:function(t){return t&&Array.isArray(t)},isEmpty:function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0},numberString:function(t){for(var e=(t+="").split("."),n=e[0],i=e.length>1?"."+e[1]:"",o=/(\d+)(\d{3})/;o.test(n);)n=n.replace(o,"$1,$2");return n+i},isRTL:function(){return"rtl"===document.querySelector("html").getAttribute("direction")},snakeToCamel:function(t){return t.replace(/(\-\w)/g,(function(t){return t[1].toUpperCase()}))},filterBoolean:function(t){return!0===t||"true"===t||!1!==t&&"false"!==t&&t},setHTML:function(t,e){t.innerHTML=e},getHTML:function(t){if(t)return t.innerHTML},getDocumentHeight:function(){var t=document.body,e=document.documentElement;return Math.max(t.scrollHeight,t.offsetHeight,e.clientHeight,e.scrollHeight,e.offsetHeight)},getScrollTop:function(){return(document.scrollingElement||document.documentElement).scrollTop},colorLighten:function(t,e){const n=function(t,e){let n=parseInt(t,16)+e,i=n>255?255:n;return i=i.toString(16).length>1?i.toString(16):`0${i.toString(16)}`,i};return t=t.indexOf("#")>=0?t.substring(1,t.length):t,e=parseInt(255*e/100),`#${n(t.substring(0,2),e)}${n(t.substring(2,4),e)}${n(t.substring(4,6),e)}`},colorDarken:function(t,e){const n=function(t,e){let n=parseInt(t,16)-e,i=n<0?0:n;return i=i.toString(16).length>1?i.toString(16):`0${i.toString(16)}`,i};return t=t.indexOf("#")>=0?t.substring(1,t.length):t,e=parseInt(255*e/100),`#${n(t.substring(0,2),e)}${n(t.substring(2,4),e)}${n(t.substring(4,6),e)}`},throttle:function(t,e,n){t||(t=setTimeout((function(){e(),t=void 0}),n))},debounce:function(t,e,n){clearTimeout(t),t=setTimeout(e,n)},parseJson:function(t){if("string"==typeof t){var e=(t=t.replace(/'/g,'"')).replace(/(\w+:)|(\w+ :)/g,(function(t){return'"'+t.substring(0,t.length-1)+'":'}));try{t=JSON.parse(e)}catch(t){}}return t},getResponsiveValue:function(t,e){var n,i=this.getViewPort().width;if("object"==typeof(t=KTUtil.parseJson(t))){var o,r,a=-1;for(var l in t)(r="default"===l?0:this.getBreakpoint(l)?this.getBreakpoint(l):parseInt(l))<=i&&r>a&&(o=l,a=r);n=o?t[o]:t}else n=t;return n},each:function(t,e){return[].slice.call(t).map(e)},getSelectorMatchValue:function(t){var e=null;if("object"==typeof(t=KTUtil.parseJson(t))){if(void 0!==t.match){var n=Object.keys(t.match)[0];t=Object.values(t.match)[0],null!==document.querySelector(n)&&(e=t)}}else e=t;return e},getConditionalValue:function(t){t=KTUtil.parseJson(t);var e=KTUtil.getResponsiveValue(t);return null!==e&&void 0!==e.match&&(e=KTUtil.getSelectorMatchValue(e)),null===e&&null!==t&&void 0!==t.default&&(e=t.default),e},getCssVariableValue:function(t){var e=getComputedStyle(document.documentElement).getPropertyValue(t);return e&&e.length>0&&(e=e.trim()),e},isInViewport:function(t){var e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)},onDOMContentLoaded:function(t){"loading"===document.readyState?document.addEventListener("DOMContentLoaded",t):t()},inIframe:function(){try{return window.self!==window.top}catch(t){return!0}},isHexColor:t=>/^#[0-9A-F]{6}$/i.test(t)}}();"undefined"!=typeof module&&void 0!==module.exports&&(module.exports=KTUtil);var KTEventHandler=function(){var t={},e=function(e,n,i,o){var r=KTUtil.getUniqueId("event"),a=KTUtil.data(e).get(n);return a||(a=[]),a.push(r),KTUtil.data(e).set(n,a),t[n]||(t[n]={}),t[n][r]={name:n,callback:i,one:o,fired:!1},r};return{trigger:function(e,n,i){return function(e,n,i){var o,r=!0;if(!0===KTUtil.data(e).has(n))for(var a,l=KTUtil.data(e).get(n),s=0;s<l.length;s++)if(a=l[s],t[n]&&t[n][a]){var u=t[n][a];u.name===n&&(1==u.one?0==u.fired&&(t[n][a].fired=!0,o=u.callback.call(this,i)):o=u.callback.call(this,i),!1===o&&(r=!1))}return r}(e,n,i)},on:function(t,n,i){return e(t,n,i)},one:function(t,n,i){return e(t,n,i,!0)},off:function(e,n,i){return function(e,n,i){var o=KTUtil.data(e).get(n),r=o&&o.indexOf(i);-1!==r&&(o.splice(r,1),KTUtil.data(e).set(n,o)),t[n]&&t[n][i]&&delete t[n][i]}(e,n,i)},debug:function(){for(var e in t)t.hasOwnProperty(e)&&console.log(e)}}}();"undefined"!=typeof module&&void 0!==module.exports&&(module.exports=KTEventHandler);var KTBlockUI=function(t,e){var n=this;if(null!=t){var i={zIndex:!1,overlayClass:"",overflow:"hidden",message:'<span class="spinner-border text-primary"></span>'},o=function(){n.options=KTUtil.deepExtend({},i,e),n.element=t,n.overlayElement=null,n.blocked=!1,n.positionChanged=!1,n.overflowChanged=!1,KTUtil.data(n.element).set("blockui",n)};return KTUtil.data(t).has("blockui")?n=KTUtil.data(t).get("blockui"):o(),n.block=function(){!function(){if(!1!==KTEventHandler.trigger(n.element,"kt.blockui.block",n)){var t="BODY"===n.element.tagName,e=KTUtil.css(n.element,"position"),i=KTUtil.css(n.element,"overflow"),o=t?1e4:1;n.options.zIndex>0?o=n.options.zIndex:"auto"!=KTUtil.css(n.element,"z-index")&&(o=KTUtil.css(n.element,"z-index")),n.element.classList.add("blockui"),"absolute"!==e&&"relative"!==e&&"fixed"!==e||(KTUtil.css(n.element,"position","relative"),n.positionChanged=!0),"hidden"===n.options.overflow&&"visible"===i&&(KTUtil.css(n.element,"overflow","hidden"),n.overflowChanged=!0),n.overlayElement=document.createElement("DIV"),n.overlayElement.setAttribute("class","blockui-overlay "+n.options.overlayClass),n.overlayElement.innerHTML=n.options.message,KTUtil.css(n.overlayElement,"z-index",o),n.element.append(n.overlayElement),n.blocked=!0,KTEventHandler.trigger(n.element,"kt.blockui.after.blocked",n)}}()},n.release=function(){!1!==KTEventHandler.trigger(n.element,"kt.blockui.release",n)&&(n.element.classList.add("blockui"),n.positionChanged&&KTUtil.css(n.element,"position",""),n.overflowChanged&&KTUtil.css(n.element,"overflow",""),n.overlayElement&&KTUtil.remove(n.overlayElement),n.blocked=!1,KTEventHandler.trigger(n.element,"kt.blockui.released",n))},n.isBlocked=function(){return n.blocked},n.destroy=function(){KTUtil.data(n.element).remove("blockui")},n.on=function(t,e){return KTEventHandler.on(n.element,t,e)},n.one=function(t,e){return KTEventHandler.one(n.element,t,e)},n.off=function(t,e){return KTEventHandler.off(n.element,t,e)},n.trigger=function(t,e){return KTEventHandler.trigger(n.element,t,e,n,e)},n}};KTBlockUI.getInstance=function(t){return null!==t&&KTUtil.data(t).has("blockui")?KTUtil.data(t).get("blockui"):null},"undefined"!=typeof module&&void 0!==module.exports&&(module.exports=KTBlockUI);
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
.blockui {
|
|
2
|
+
position: relative;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.blockui .blockui-overlay {
|
|
6
|
+
transition: all 0.3s ease;
|
|
7
|
+
position: absolute;
|
|
8
|
+
top: 0;
|
|
9
|
+
bottom: 0;
|
|
10
|
+
left: 0;
|
|
11
|
+
right: 0;
|
|
12
|
+
display: flex;
|
|
13
|
+
justify-content: center;
|
|
14
|
+
align-items: center;
|
|
15
|
+
background-color: rgba(255, 255, 255, 0.05);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.blockui .blockui-overlay .spinner-border {
|
|
19
|
+
height: 1.5rem;
|
|
20
|
+
width: 1.5rem;
|
|
21
|
+
color: #6366f1 !important;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.blockui .blockui-message {
|
|
25
|
+
display: flex;
|
|
26
|
+
align-items: center;
|
|
27
|
+
border-radius: 0.475rem;
|
|
28
|
+
box-shadow: 0px 0px 50px 0px rgba(82, 63, 105, 0.15);
|
|
29
|
+
background-color: #ffffff;
|
|
30
|
+
color: #92929f;
|
|
31
|
+
font-weight: 600;
|
|
32
|
+
margin: 0 !important;
|
|
33
|
+
width: auto;
|
|
34
|
+
padding: 0.85rem 1.75rem !important;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.blockui .blockui-message .spinner-border {
|
|
38
|
+
margin-right: 0.65rem;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@keyframes spinner-border {
|
|
42
|
+
to {
|
|
43
|
+
transform: rotate(360deg);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.spinner-border {
|
|
48
|
+
display: inline-block;
|
|
49
|
+
width: 2rem;
|
|
50
|
+
height: 2rem;
|
|
51
|
+
vertical-align: -0.125em;
|
|
52
|
+
border: 0.3rem solid currentcolor;
|
|
53
|
+
border-right-color: transparent;
|
|
54
|
+
border-radius: 50%;
|
|
55
|
+
animation: 0.65s linear infinite spinner-border;
|
|
56
|
+
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { LayoutService } from '../../service/app.layout.service';
|
|
2
|
+
import { KeycloakManager } from 'aril/keycloak';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export declare class AppProfileSidebarComponent {
|
|
4
5
|
layoutService: LayoutService;
|
|
6
|
+
keyCloakManager: KeycloakManager;
|
|
7
|
+
username: any;
|
|
5
8
|
constructor(layoutService: LayoutService);
|
|
6
9
|
get visible(): boolean;
|
|
7
10
|
set visible(_val: boolean);
|