@acorex/platform 20.8.21 → 20.8.23
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/auth/index.d.ts +2 -0
- package/common/index.d.ts +41 -13
- package/core/index.d.ts +2 -0
- package/fesm2022/acorex-platform-auth.mjs +10 -2
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common.mjs +81 -41
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +13 -4
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components.mjs +50 -20
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-ChCmvD9Z.mjs +48 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-ChCmvD9Z.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/layout/components/index.d.ts +14 -7
- package/package.json +9 -9
- package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs +0 -31
- package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map +0 -1
|
@@ -1816,7 +1816,7 @@ declare class AXPUserAvatarComponent implements OnInit, OnDestroy {
|
|
|
1816
1816
|
protected userInfo: _angular_core.WritableSignal<AXPUserAvatarData | null>;
|
|
1817
1817
|
size: _angular_core.InputSignal<number>;
|
|
1818
1818
|
userId: _angular_core.InputSignal<string>;
|
|
1819
|
-
|
|
1819
|
+
avatarUrl: _angular_core.WritableSignal<string>;
|
|
1820
1820
|
userName: _angular_core.Signal<string>;
|
|
1821
1821
|
firstName: _angular_core.Signal<string>;
|
|
1822
1822
|
lastName: _angular_core.Signal<string>;
|
|
@@ -1824,19 +1824,26 @@ declare class AXPUserAvatarComponent implements OnInit, OnDestroy {
|
|
|
1824
1824
|
isOnline: _angular_core.Signal<boolean>;
|
|
1825
1825
|
avatarText: _angular_core.Signal<string>;
|
|
1826
1826
|
avatarColor: _angular_core.Signal<string>;
|
|
1827
|
-
protected
|
|
1827
|
+
protected hasAvatarUrl: _angular_core.Signal<boolean>;
|
|
1828
1828
|
protected isAvatarLoaded: _angular_core.WritableSignal<boolean>;
|
|
1829
|
-
protected
|
|
1830
|
-
protected
|
|
1831
|
-
protected
|
|
1829
|
+
protected hasImageError: _angular_core.WritableSignal<boolean>;
|
|
1830
|
+
protected showImage: _angular_core.Signal<boolean>;
|
|
1831
|
+
protected showPlaceholder: _angular_core.Signal<boolean>;
|
|
1832
|
+
protected onImageError(_event: AXHtmlEvent<ErrorEvent>): void;
|
|
1833
|
+
protected onImageLoad(_event: AXHtmlEvent<Event>): void;
|
|
1832
1834
|
ngOnInit(): void;
|
|
1833
1835
|
ngOnDestroy(): void;
|
|
1834
1836
|
private loadUserData;
|
|
1835
1837
|
/**
|
|
1836
|
-
*
|
|
1837
|
-
* This is a placeholder - implement based on your actual requirements
|
|
1838
|
+
* Resolves avatar image URL from user data and resets load state.
|
|
1838
1839
|
*/
|
|
1839
1840
|
private generateAvatarSrc;
|
|
1841
|
+
/**
|
|
1842
|
+
* Preloads avatar image without breaking ax-avatar content projection.
|
|
1843
|
+
*/
|
|
1844
|
+
private preloadAvatar;
|
|
1845
|
+
private markImageAsLoaded;
|
|
1846
|
+
private markImageAsFailed;
|
|
1840
1847
|
/**
|
|
1841
1848
|
* Get initials from first and last name
|
|
1842
1849
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/platform",
|
|
3
|
-
"version": "20.8.
|
|
3
|
+
"version": "20.8.23",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@acorex/cdk": "^19.0.0 || ^20.0.0 || ^21.0.0-next.0 || ^21.0.2-next.0",
|
|
6
6
|
"@acorex/core": "^19.0.0 || ^20.0.0 || ^21.0.0-next.0 || ^21.0.2-next.0",
|
|
@@ -43,14 +43,14 @@
|
|
|
43
43
|
"types": "./domain/index.d.ts",
|
|
44
44
|
"default": "./fesm2022/acorex-platform-domain.mjs"
|
|
45
45
|
},
|
|
46
|
-
"./native": {
|
|
47
|
-
"types": "./native/index.d.ts",
|
|
48
|
-
"default": "./fesm2022/acorex-platform-native.mjs"
|
|
49
|
-
},
|
|
50
46
|
"./runtime": {
|
|
51
47
|
"types": "./runtime/index.d.ts",
|
|
52
48
|
"default": "./fesm2022/acorex-platform-runtime.mjs"
|
|
53
49
|
},
|
|
50
|
+
"./native": {
|
|
51
|
+
"types": "./native/index.d.ts",
|
|
52
|
+
"default": "./fesm2022/acorex-platform-native.mjs"
|
|
53
|
+
},
|
|
54
54
|
"./workflow": {
|
|
55
55
|
"types": "./workflow/index.d.ts",
|
|
56
56
|
"default": "./fesm2022/acorex-platform-workflow.mjs"
|
|
@@ -83,13 +83,13 @@
|
|
|
83
83
|
"types": "./layout/widgets/index.d.ts",
|
|
84
84
|
"default": "./fesm2022/acorex-platform-layout-widgets.mjs"
|
|
85
85
|
},
|
|
86
|
-
"./themes/shared": {
|
|
87
|
-
"types": "./themes/shared/index.d.ts",
|
|
88
|
-
"default": "./fesm2022/acorex-platform-themes-shared.mjs"
|
|
89
|
-
},
|
|
90
86
|
"./themes/default": {
|
|
91
87
|
"types": "./themes/default/index.d.ts",
|
|
92
88
|
"default": "./fesm2022/acorex-platform-themes-default.mjs"
|
|
89
|
+
},
|
|
90
|
+
"./themes/shared": {
|
|
91
|
+
"types": "./themes/shared/index.d.ts",
|
|
92
|
+
"default": "./fesm2022/acorex-platform-themes-shared.mjs"
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
95
|
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import * as i3 from '@acorex/components/button';
|
|
2
|
-
import { AXButtonModule } from '@acorex/components/button';
|
|
3
|
-
import { AXPSessionService } from '@acorex/platform/auth';
|
|
4
|
-
import * as i1 from '@angular/common';
|
|
5
|
-
import { CommonModule } from '@angular/common';
|
|
6
|
-
import * as i0 from '@angular/core';
|
|
7
|
-
import { inject, Component } from '@angular/core';
|
|
8
|
-
import { Router } from '@angular/router';
|
|
9
|
-
|
|
10
|
-
class AXPError401Component {
|
|
11
|
-
constructor() {
|
|
12
|
-
this.sessionService = inject(AXPSessionService);
|
|
13
|
-
this.router = inject(Router);
|
|
14
|
-
this.isAuthorized$ = this.sessionService.isAuthorized$;
|
|
15
|
-
}
|
|
16
|
-
handleHomeClick() {
|
|
17
|
-
this.router.navigate([`/${this.sessionService.application?.name}/home`]);
|
|
18
|
-
}
|
|
19
|
-
handleSignInClick() {
|
|
20
|
-
this.router.navigate([`/auth/login`]);
|
|
21
|
-
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPError401Component, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: AXPError401Component, isStandalone: true, selector: "axp-error-401", ngImport: i0, template: "<div class=\"ax-h-full ax-flex ax-flex-col ax-gap-8 ax-items-center ax-justify-center\">\n <img class=\"ax-w-3/4 md:ax-w-1/2 lg:ax-w-1/3 xl:ax-w-1/4\" src=\"/assets/images/error/error-401.svg\"\n alt=\"Oops! Error 404. No result found.\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-gap-2 md:ax-gap-4\">\n <h1 class=\"ax-font-bold ax-text-2xl md:ax-text-4xl\">Hold on a second!</h1>\n <p class=\"md:ax-text-lg ax-text-neutral-400\">Sorry, but you are not authorized to view this page.</p>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 md:ax-gap-4 md:ax-flex-row\">\n @if((isAuthorized$ | async))\n {\n <ax-button (onClick)=\"handleHomeClick()\" class=\"ax-px-4\" color=\"primary\" text=\"Go back to home\"></ax-button>\n } @else {\n <ax-button (onClick)=\"handleSignInClick()\" class=\"ax-px-4\" color=\"primary\" text=\"Sign Up / Sign In\"></ax-button>\n }\n <ax-button class=\"ax-px-4\" [color]=\"'default'\" text=\"Contact us\"></ax-button>\n </div>\n</div>", dependencies: [{ kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPError401Component, decorators: [{
|
|
26
|
-
type: Component,
|
|
27
|
-
args: [{ selector: 'axp-error-401', imports: [AXButtonModule, CommonModule], template: "<div class=\"ax-h-full ax-flex ax-flex-col ax-gap-8 ax-items-center ax-justify-center\">\n <img class=\"ax-w-3/4 md:ax-w-1/2 lg:ax-w-1/3 xl:ax-w-1/4\" src=\"/assets/images/error/error-401.svg\"\n alt=\"Oops! Error 404. No result found.\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-gap-2 md:ax-gap-4\">\n <h1 class=\"ax-font-bold ax-text-2xl md:ax-text-4xl\">Hold on a second!</h1>\n <p class=\"md:ax-text-lg ax-text-neutral-400\">Sorry, but you are not authorized to view this page.</p>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 md:ax-gap-4 md:ax-flex-row\">\n @if((isAuthorized$ | async))\n {\n <ax-button (onClick)=\"handleHomeClick()\" class=\"ax-px-4\" color=\"primary\" text=\"Go back to home\"></ax-button>\n } @else {\n <ax-button (onClick)=\"handleSignInClick()\" class=\"ax-px-4\" color=\"primary\" text=\"Sign Up / Sign In\"></ax-button>\n }\n <ax-button class=\"ax-px-4\" [color]=\"'default'\" text=\"Contact us\"></ax-button>\n </div>\n</div>" }]
|
|
28
|
-
}] });
|
|
29
|
-
|
|
30
|
-
export { AXPError401Component };
|
|
31
|
-
//# sourceMappingURL=acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-themes-default-error-401.component-53VB-PS_.mjs","sources":["../tmp-esm2022/themes/default/lib/pages/errors/error-401/error-401.component.js"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@angular/common\";\nexport class AXPError401Component {\n constructor() {\n this.sessionService = inject(AXPSessionService);\n this.router = inject(Router);\n this.isAuthorized$ = this.sessionService.isAuthorized$;\n }\n handleHomeClick() {\n this.router.navigate([`/${this.sessionService.application?.name}/home`]);\n }\n handleSignInClick() {\n this.router.navigate([`/auth/login`]);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.19\", ngImport: i0, type: AXPError401Component, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.19\", type: AXPError401Component, isStandalone: true, selector: \"axp-error-401\", ngImport: i0, template: \"<div class=\\\"ax-h-full ax-flex ax-flex-col ax-gap-8 ax-items-center ax-justify-center\\\">\\n <img class=\\\"ax-w-3/4 md:ax-w-1/2 lg:ax-w-1/3 xl:ax-w-1/4\\\" src=\\\"/assets/images/error/error-401.svg\\\"\\n alt=\\\"Oops! Error 404. No result found.\\\">\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-gap-2 md:ax-gap-4\\\">\\n <h1 class=\\\"ax-font-bold ax-text-2xl md:ax-text-4xl\\\">Hold on a second!</h1>\\n <p class=\\\"md:ax-text-lg ax-text-neutral-400\\\">Sorry, but you are not authorized to view this page.</p>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-gap-2 md:ax-gap-4 md:ax-flex-row\\\">\\n @if((isAuthorized$ | async))\\n {\\n <ax-button (onClick)=\\\"handleHomeClick()\\\" class=\\\"ax-px-4\\\" color=\\\"primary\\\" text=\\\"Go back to home\\\"></ax-button>\\n } @else {\\n <ax-button (onClick)=\\\"handleSignInClick()\\\" class=\\\"ax-px-4\\\" color=\\\"primary\\\" text=\\\"Sign Up / Sign In\\\"></ax-button>\\n }\\n <ax-button class=\\\"ax-px-4\\\" [color]=\\\"'default'\\\" text=\\\"Contact us\\\"></ax-button>\\n </div>\\n</div>\", dependencies: [{ kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: CommonModule }, { kind: \"pipe\", type: i2.AsyncPipe, name: \"async\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.19\", ngImport: i0, type: AXPError401Component, decorators: [{\n type: Component,\n args: [{ selector: 'axp-error-401', imports: [AXButtonModule, CommonModule], template: \"<div class=\\\"ax-h-full ax-flex ax-flex-col ax-gap-8 ax-items-center ax-justify-center\\\">\\n <img class=\\\"ax-w-3/4 md:ax-w-1/2 lg:ax-w-1/3 xl:ax-w-1/4\\\" src=\\\"/assets/images/error/error-401.svg\\\"\\n alt=\\\"Oops! Error 404. No result found.\\\">\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-gap-2 md:ax-gap-4\\\">\\n <h1 class=\\\"ax-font-bold ax-text-2xl md:ax-text-4xl\\\">Hold on a second!</h1>\\n <p class=\\\"md:ax-text-lg ax-text-neutral-400\\\">Sorry, but you are not authorized to view this page.</p>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-gap-2 md:ax-gap-4 md:ax-flex-row\\\">\\n @if((isAuthorized$ | async))\\n {\\n <ax-button (onClick)=\\\"handleHomeClick()\\\" class=\\\"ax-px-4\\\" color=\\\"primary\\\" text=\\\"Go back to home\\\"></ax-button>\\n } @else {\\n <ax-button (onClick)=\\\"handleSignInClick()\\\" class=\\\"ax-px-4\\\" color=\\\"primary\\\" text=\\\"Sign Up / Sign In\\\"></ax-button>\\n }\\n <ax-button class=\\\"ax-px-4\\\" [color]=\\\"'default'\\\" text=\\\"Contact us\\\"></ax-button>\\n </div>\\n</div>\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItNDAxLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL2RlZmF1bHQvc3JjL2xpYi9wYWdlcy9lcnJvcnMvZXJyb3ItNDAxL2Vycm9yLTQwMS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9kZWZhdWx0L3NyYy9saWIvcGFnZXMvZXJyb3JzL2Vycm9yLTQwMS9lcnJvci00MDEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFPekMsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQU9VLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDM0MsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QixrQkFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDO0tBUzdEO0lBUFcsZUFBZTtRQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFUyxpQkFBaUI7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7K0dBWlUsb0JBQW9CO21HQUFwQixvQkFBb0IseUVDWmpDLHdpQ0FnQk0sMkNETlEsY0FBYyw2WEFBRSxZQUFZOzs0RkFFN0Isb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNJLGVBQWUsV0FFaEIsQ0FBQyxjQUFjLEVBQUUsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYUFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXhwLWVycm9yLTQwMScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Vycm9yLTQwMS5jb21wb25lbnQuaHRtbCcsXG4gICAgaW1wb3J0czogW0FYQnV0dG9uTW9kdWxlLCBDb21tb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEFYUEVycm9yNDAxQ29tcG9uZW50IHtcblxuICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlID0gaW5qZWN0KEFYUFNlc3Npb25TZXJ2aWNlKTtcbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJvdGVjdGVkIGlzQXV0aG9yaXplZCQgPSB0aGlzLnNlc3Npb25TZXJ2aWNlLmlzQXV0aG9yaXplZCQ7XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUhvbWVDbGljaygpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYC8ke3RoaXMuc2Vzc2lvblNlcnZpY2UuYXBwbGljYXRpb24/Lm5hbWV9L2hvbWVgXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlU2lnbkluQ2xpY2soKSB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvYXV0aC9sb2dpbmBdKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LWgtZnVsbCBheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC04IGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlclwiPlxuICAgIDxpbWcgY2xhc3M9XCJheC13LTMvNCBtZDpheC13LTEvMiBsZzpheC13LTEvMyB4bDpheC13LTEvNFwiIHNyYz1cIi9hc3NldHMvaW1hZ2VzL2Vycm9yL2Vycm9yLTQwMS5zdmdcIlxuICAgICAgICBhbHQ9XCJPb3BzISBFcnJvciA0MDQuIE5vIHJlc3VsdCBmb3VuZC5cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTIgbWQ6YXgtZ2FwLTRcIj5cbiAgICAgICAgPGgxIGNsYXNzPVwiYXgtZm9udC1ib2xkIGF4LXRleHQtMnhsIG1kOmF4LXRleHQtNHhsXCI+SG9sZCBvbiBhIHNlY29uZCE8L2gxPlxuICAgICAgICA8cCBjbGFzcz1cIm1kOmF4LXRleHQtbGcgYXgtdGV4dC1uZXV0cmFsLTQwMFwiPlNvcnJ5LCBidXQgeW91IGFyZSBub3QgYXV0aG9yaXplZCB0byB2aWV3IHRoaXMgcGFnZS48L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTIgbWQ6YXgtZ2FwLTQgbWQ6YXgtZmxleC1yb3dcIj5cbiAgICAgICAgQGlmKChpc0F1dGhvcml6ZWQkIHwgYXN5bmMpKVxuICAgICAgICB7XG4gICAgICAgIDxheC1idXR0b24gKG9uQ2xpY2spPVwiaGFuZGxlSG9tZUNsaWNrKClcIiBjbGFzcz1cImF4LXB4LTRcIiBjb2xvcj1cInByaW1hcnlcIiB0ZXh0PVwiR28gYmFjayB0byBob21lXCI+PC9heC1idXR0b24+XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YXgtYnV0dG9uIChvbkNsaWNrKT1cImhhbmRsZVNpZ25JbkNsaWNrKClcIiBjbGFzcz1cImF4LXB4LTRcIiBjb2xvcj1cInByaW1hcnlcIiB0ZXh0PVwiU2lnbiBVcCAvIFNpZ24gSW5cIj48L2F4LWJ1dHRvbj5cbiAgICAgICAgfVxuICAgICAgICA8YXgtYnV0dG9uIGNsYXNzPVwiYXgtcHgtNFwiIFtjb2xvcl09XCInZGVmYXVsdCdcIiB0ZXh0PVwiQ29udGFjdCB1c1wiPjwvYXgtYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+Il19"],"names":["i1","i2"],"mappings":";;;;;;;;;AAQO,MAAM,oBAAoB,CAAC;AAClC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC;AACvD,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACpC,QAAQ,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa;AAC9D,IAAI;AACJ,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAChF,IAAI;AACJ,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7C,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACvL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,wiCAAwiC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAEA,EAAE,CAAC,iBAAiB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAEC,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;AACtuD;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC;AAC/H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC,EAAE,QAAQ,EAAE,wiCAAwiC,EAAE;AAC7oC,SAAS,CAAC,EAAE,CAAC;;;;"}
|