@yelon/bis 15.2.6 → 16.0.0
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/LICENSE +21 -21
- package/README.md +23 -23
- package/{esm2020 → esm2022}/bis.mjs +4 -4
- package/{esm2020 → esm2022}/index.mjs +1 -1
- package/{esm2020 → esm2022}/layout/bis.config.mjs +10 -10
- package/{esm2020 → esm2022}/layout/html-names.mjs +32 -32
- package/{esm2020 → esm2022}/layout/icon/style-icons.mjs +795 -795
- package/{esm2020 → esm2022}/layout/layout-basic/index.mjs +2 -2
- package/{esm2020 → esm2022}/layout/layout-basic/interface.mjs +6 -6
- package/{esm2020 → esm2022}/layout/layout-basic/layout-basic.component.mjs +356 -356
- package/{esm2020 → esm2022}/layout/layout-nav/index.mjs +4 -4
- package/esm2022/layout/layout-nav/layout-nav-application.component.mjs +328 -0
- package/{esm2020 → esm2022}/layout/layout-nav/layout-nav-group.component.mjs +125 -124
- package/esm2022/layout/layout-nav/layout-nav-tile.component.mjs +16 -0
- package/{esm2020 → esm2022}/layout/layout-nav/types.mjs +1 -1
- package/{esm2020 → esm2022}/layout/layout.mjs +4 -4
- package/{esm2020 → esm2022}/layout/public_api.mjs +12 -12
- package/{esm2020 → esm2022}/layout/widgets/index.mjs +6 -6
- package/esm2022/layout/widgets/yunzai-clear-storage.component.mjs +46 -0
- package/esm2022/layout/widgets/yunzai-fullscreen.component.mjs +46 -0
- package/{esm2020 → esm2022}/layout/widgets/yunzai-i18n.component.mjs +147 -146
- package/esm2022/layout/widgets/yunzai-notify.component.mjs +184 -0
- package/esm2022/layout/widgets/yunzai-theme-btn.component.mjs +202 -0
- package/esm2022/layout/widgets/yunzai-user.component.mjs +131 -0
- package/esm2022/layout/yunzai-act.guard.mjs +108 -0
- package/{esm2020 → esm2022}/layout/yunzai-auth.service.mjs +174 -174
- package/{esm2020 → esm2022}/layout/yunzai-default.interceptor.mjs +209 -209
- package/{esm2020 → esm2022}/layout/yunzai-i18n.service.mjs +131 -131
- package/{esm2020 → esm2022}/layout/yunzai-lang.mjs +113 -113
- package/esm2022/layout/yunzai-layout.module.mjs +77 -0
- package/{esm2020 → esm2022}/layout/yunzai-startup.service.mjs +157 -157
- package/{esm2020 → esm2022}/public_api.mjs +1 -1
- package/{fesm2015 → fesm2022}/bis.mjs +6 -6
- package/{fesm2020 → fesm2022}/layout.mjs +3245 -3245
- package/{fesm2015 → fesm2022}/layout.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/index.less +1 -1
- package/layout/bis.config.d.ts +3 -3
- package/layout/html-names.d.ts +31 -31
- package/layout/icon/style-icons.d.ts +1 -1
- package/layout/index.d.ts +5 -5
- package/layout/layout-basic/index.d.ts +2 -2
- package/layout/layout-basic/interface.d.ts +24 -24
- package/layout/layout-basic/layout-basic.component.d.ts +32 -32
- package/layout/layout-nav/index.d.ts +4 -4
- package/layout/layout-nav/layout-nav-application.component.d.ts +27 -27
- package/layout/layout-nav/layout-nav-group.component.d.ts +17 -17
- package/layout/layout-nav/layout-nav-tile.component.d.ts +6 -6
- package/layout/layout-nav/types.d.ts +15 -15
- package/layout/public_api.d.ts +12 -12
- package/layout/style/index.less +154 -154
- package/layout/widgets/index.d.ts +6 -6
- package/layout/widgets/yunzai-clear-storage.component.d.ts +11 -11
- package/layout/widgets/yunzai-fullscreen.component.d.ts +8 -8
- package/layout/widgets/yunzai-i18n.component.d.ts +21 -21
- package/layout/widgets/yunzai-notify.component.d.ts +30 -30
- package/layout/widgets/yunzai-theme-btn.component.d.ts +32 -32
- package/layout/widgets/yunzai-user.component.d.ts +28 -28
- package/layout/yunzai-act.guard.d.ts +22 -22
- package/layout/yunzai-auth.service.d.ts +21 -21
- package/layout/yunzai-default.interceptor.d.ts +27 -27
- package/layout/yunzai-i18n.service.d.ts +33 -33
- package/layout/yunzai-lang.d.ts +11 -11
- package/layout/yunzai-layout.module.d.ts +21 -21
- package/layout/yunzai-startup.service.d.ts +37 -37
- package/package.json +39 -47
- package/public_api.d.ts +2 -2
- package/theme-compact.less +3 -3
- package/theme-dark.less +46 -46
- package/theme-default.less +46 -46
- package/esm2020/layout/layout-nav/layout-nav-application.component.mjs +0 -327
- package/esm2020/layout/layout-nav/layout-nav-tile.component.mjs +0 -15
- package/esm2020/layout/widgets/yunzai-clear-storage.component.mjs +0 -45
- package/esm2020/layout/widgets/yunzai-fullscreen.component.mjs +0 -45
- package/esm2020/layout/widgets/yunzai-notify.component.mjs +0 -183
- package/esm2020/layout/widgets/yunzai-theme-btn.component.mjs +0 -201
- package/esm2020/layout/widgets/yunzai-user.component.mjs +0 -130
- package/esm2020/layout/yunzai-act.guard.mjs +0 -107
- package/esm2020/layout/yunzai-layout.module.mjs +0 -76
- package/fesm2015/layout.mjs +0 -3236
- package/fesm2020/bis.mjs +0 -6
- package/fesm2020/bis.mjs.map +0 -1
- package/fesm2020/layout.mjs.map +0 -1
- /package/{fesm2015 → fesm2022}/bis.mjs.map +0 -0
|
@@ -1,146 +1,147 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { DOCUMENT } from '@angular/common';
|
|
3
|
-
import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core';
|
|
4
|
-
import { Subject, takeUntil } from 'rxjs';
|
|
5
|
-
import { YUNZAI_I18N_TOKEN } from '@yelon/theme';
|
|
6
|
-
import { InputBoolean } from '@yelon/util/decorator';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@yelon/theme";
|
|
9
|
-
import * as i2 from "@angular/common";
|
|
10
|
-
import * as i3 from "ng-zorro-antd/core/transition-patch";
|
|
11
|
-
import * as i4 from "ng-zorro-antd/menu";
|
|
12
|
-
import * as i5 from "ng-zorro-antd/dropdown";
|
|
13
|
-
import * as i6 from "ng-zorro-antd/icon";
|
|
14
|
-
import * as i7 from "../yunzai-i18n.service";
|
|
15
|
-
|
|
16
|
-
get curLangCode() {
|
|
17
|
-
return this.settings.layout.lang;
|
|
18
|
-
}
|
|
19
|
-
constructor(settings, i18n, doc) {
|
|
20
|
-
this.settings = settings;
|
|
21
|
-
this.i18n = i18n;
|
|
22
|
-
this.doc = doc;
|
|
23
|
-
this.destroy$ = new Subject();
|
|
24
|
-
/** Whether to display language text */
|
|
25
|
-
this.showLangText = true;
|
|
26
|
-
this.langs = [];
|
|
27
|
-
this.i18n
|
|
28
|
-
.getLangs()
|
|
29
|
-
.pipe(takeUntil(this.destroy$))
|
|
30
|
-
.subscribe(langs => {
|
|
31
|
-
this.langs = langs;
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
change(lang) {
|
|
35
|
-
const spinEl = this.doc.createElement('div');
|
|
36
|
-
spinEl.setAttribute('class', `page-loading ant-spin ant-spin-lg ant-spin-spinning`);
|
|
37
|
-
spinEl.innerHTML = `<span class="ant-spin-dot ant-spin-dot-spin"><i></i><i></i><i></i><i></i></span>`;
|
|
38
|
-
this.doc.body.appendChild(spinEl);
|
|
39
|
-
this.i18n.loadLangData(lang).subscribe(res => {
|
|
40
|
-
this.i18n.use(lang, res);
|
|
41
|
-
this.settings.setLayout('lang', lang);
|
|
42
|
-
setTimeout(() => this.doc.location.reload());
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
ngOnDestroy() {
|
|
46
|
-
this.destroy$.complete();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
data-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
<
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
[
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
__decorate([
|
|
90
|
-
InputBoolean()
|
|
91
|
-
], YunzaiI18NComponent.prototype, "showLangText", void 0);
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
<img
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
[
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { DOCUMENT } from '@angular/common';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core';
|
|
4
|
+
import { Subject, takeUntil } from 'rxjs';
|
|
5
|
+
import { YUNZAI_I18N_TOKEN } from '@yelon/theme';
|
|
6
|
+
import { InputBoolean } from '@yelon/util/decorator';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@yelon/theme";
|
|
9
|
+
import * as i2 from "@angular/common";
|
|
10
|
+
import * as i3 from "ng-zorro-antd/core/transition-patch";
|
|
11
|
+
import * as i4 from "ng-zorro-antd/menu";
|
|
12
|
+
import * as i5 from "ng-zorro-antd/dropdown";
|
|
13
|
+
import * as i6 from "ng-zorro-antd/icon";
|
|
14
|
+
import * as i7 from "../yunzai-i18n.service";
|
|
15
|
+
class YunzaiI18NComponent {
|
|
16
|
+
get curLangCode() {
|
|
17
|
+
return this.settings.layout.lang;
|
|
18
|
+
}
|
|
19
|
+
constructor(settings, i18n, doc) {
|
|
20
|
+
this.settings = settings;
|
|
21
|
+
this.i18n = i18n;
|
|
22
|
+
this.doc = doc;
|
|
23
|
+
this.destroy$ = new Subject();
|
|
24
|
+
/** Whether to display language text */
|
|
25
|
+
this.showLangText = true;
|
|
26
|
+
this.langs = [];
|
|
27
|
+
this.i18n
|
|
28
|
+
.getLangs()
|
|
29
|
+
.pipe(takeUntil(this.destroy$))
|
|
30
|
+
.subscribe(langs => {
|
|
31
|
+
this.langs = langs;
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
change(lang) {
|
|
35
|
+
const spinEl = this.doc.createElement('div');
|
|
36
|
+
spinEl.setAttribute('class', `page-loading ant-spin ant-spin-lg ant-spin-spinning`);
|
|
37
|
+
spinEl.innerHTML = `<span class="ant-spin-dot ant-spin-dot-spin"><i></i><i></i><i></i><i></i></span>`;
|
|
38
|
+
this.doc.body.appendChild(spinEl);
|
|
39
|
+
this.i18n.loadLangData(lang).subscribe(res => {
|
|
40
|
+
this.i18n.use(lang, res);
|
|
41
|
+
this.settings.setLayout('lang', lang);
|
|
42
|
+
setTimeout(() => this.doc.location.reload());
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
ngOnDestroy() {
|
|
46
|
+
this.destroy$.complete();
|
|
47
|
+
}
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: YunzaiI18NComponent, deps: [{ token: i1.SettingsService }, { token: YUNZAI_I18N_TOKEN }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
49
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: YunzaiI18NComponent, selector: "yunzai-i18n", inputs: { showLangText: "showLangText" }, ngImport: i0, template: `
|
|
50
|
+
<div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
|
|
51
|
+
<i nz-icon nzType="global"></i>
|
|
52
|
+
{{ 'lang.nav' | i18n }}
|
|
53
|
+
<i nz-icon nzType="down"></i>
|
|
54
|
+
</div>
|
|
55
|
+
<i
|
|
56
|
+
*ngIf="!showLangText"
|
|
57
|
+
nz-dropdown
|
|
58
|
+
[nzDropdownMenu]="langMenu"
|
|
59
|
+
nzPlacement="bottomRight"
|
|
60
|
+
nz-icon
|
|
61
|
+
nzType="global"
|
|
62
|
+
></i>
|
|
63
|
+
<nz-dropdown-menu data-event-id="_nav_lang" #langMenu="nzDropdownMenu">
|
|
64
|
+
<ul nz-menu>
|
|
65
|
+
<li
|
|
66
|
+
data-event-id="_nav_lang"
|
|
67
|
+
[attr.data-text]="item.text"
|
|
68
|
+
nz-menu-item
|
|
69
|
+
*ngFor="let item of langs"
|
|
70
|
+
[nzSelected]="item.code === curLangCode"
|
|
71
|
+
(click)="change(item.code)"
|
|
72
|
+
>
|
|
73
|
+
<span *ngIf="!item.icon" role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
|
|
74
|
+
<img
|
|
75
|
+
*ngIf="item.icon"
|
|
76
|
+
style="margin-right:4px"
|
|
77
|
+
width="50px"
|
|
78
|
+
height="30px"
|
|
79
|
+
[src]="'data:image/png;base64,' + item.icon"
|
|
80
|
+
[alt]="item.abbr"
|
|
81
|
+
class="pr-xs"
|
|
82
|
+
/>
|
|
83
|
+
{{ item.text }}
|
|
84
|
+
</li>
|
|
85
|
+
</ul>
|
|
86
|
+
</nz-dropdown-menu>
|
|
87
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i4.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "directive", type: i4.NzMenuItemDirective, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "directive", type: i5.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "component", type: i5.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "directive", type: i6.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
88
|
+
}
|
|
89
|
+
__decorate([
|
|
90
|
+
InputBoolean()
|
|
91
|
+
], YunzaiI18NComponent.prototype, "showLangText", void 0);
|
|
92
|
+
export { YunzaiI18NComponent };
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: YunzaiI18NComponent, decorators: [{
|
|
94
|
+
type: Component,
|
|
95
|
+
args: [{
|
|
96
|
+
selector: 'yunzai-i18n',
|
|
97
|
+
template: `
|
|
98
|
+
<div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
|
|
99
|
+
<i nz-icon nzType="global"></i>
|
|
100
|
+
{{ 'lang.nav' | i18n }}
|
|
101
|
+
<i nz-icon nzType="down"></i>
|
|
102
|
+
</div>
|
|
103
|
+
<i
|
|
104
|
+
*ngIf="!showLangText"
|
|
105
|
+
nz-dropdown
|
|
106
|
+
[nzDropdownMenu]="langMenu"
|
|
107
|
+
nzPlacement="bottomRight"
|
|
108
|
+
nz-icon
|
|
109
|
+
nzType="global"
|
|
110
|
+
></i>
|
|
111
|
+
<nz-dropdown-menu data-event-id="_nav_lang" #langMenu="nzDropdownMenu">
|
|
112
|
+
<ul nz-menu>
|
|
113
|
+
<li
|
|
114
|
+
data-event-id="_nav_lang"
|
|
115
|
+
[attr.data-text]="item.text"
|
|
116
|
+
nz-menu-item
|
|
117
|
+
*ngFor="let item of langs"
|
|
118
|
+
[nzSelected]="item.code === curLangCode"
|
|
119
|
+
(click)="change(item.code)"
|
|
120
|
+
>
|
|
121
|
+
<span *ngIf="!item.icon" role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
|
|
122
|
+
<img
|
|
123
|
+
*ngIf="item.icon"
|
|
124
|
+
style="margin-right:4px"
|
|
125
|
+
width="50px"
|
|
126
|
+
height="30px"
|
|
127
|
+
[src]="'data:image/png;base64,' + item.icon"
|
|
128
|
+
[alt]="item.abbr"
|
|
129
|
+
class="pr-xs"
|
|
130
|
+
/>
|
|
131
|
+
{{ item.text }}
|
|
132
|
+
</li>
|
|
133
|
+
</ul>
|
|
134
|
+
</nz-dropdown-menu>
|
|
135
|
+
`,
|
|
136
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
137
|
+
}]
|
|
138
|
+
}], ctorParameters: function () { return [{ type: i1.SettingsService }, { type: i7.YunzaiI18NService, decorators: [{
|
|
139
|
+
type: Inject,
|
|
140
|
+
args: [YUNZAI_I18N_TOKEN]
|
|
141
|
+
}] }, { type: undefined, decorators: [{
|
|
142
|
+
type: Inject,
|
|
143
|
+
args: [DOCUMENT]
|
|
144
|
+
}] }]; }, propDecorators: { showLangText: [{
|
|
145
|
+
type: Input
|
|
146
|
+
}] } });
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLWkxOG4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYmlzL2xheW91dC93aWRnZXRzL3l1bnphaS1pMThuLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQW1DLE1BQU0sY0FBYyxDQUFDO0FBQ2xGLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7OztBQUluRSxNQTJDYSxtQkFBbUI7SUFROUIsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDbkMsQ0FBQztJQUVELFlBQ1UsUUFBeUIsRUFDRSxJQUF1QixFQUNoQyxHQUFRO1FBRjFCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ0UsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDaEMsUUFBRyxHQUFILEdBQUcsQ0FBSztRQWI1QixhQUFRLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7UUFDL0MsdUNBQXVDO1FBQ2QsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFFN0MsVUFBSyxHQUFxQixFQUFFLENBQUM7UUFXM0IsSUFBSSxDQUFDLElBQUk7YUFDTixRQUFRLEVBQUU7YUFDVixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUscURBQXFELENBQUMsQ0FBQztRQUNwRixNQUFNLENBQUMsU0FBUyxHQUFHLGtGQUFrRixDQUFDO1FBQ3RHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0QyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQXhDVSxtQkFBbUIsaURBY3BCLGlCQUFpQixhQUNqQixRQUFRO2tHQWZQLG1CQUFtQiw2RkF6Q3BCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNDVDs7QUFPd0I7SUFBZixZQUFZLEVBQUU7eURBQXFCO1NBSmxDLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQTNDL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNDVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQWVJLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDeEIsTUFBTTsyQkFBQyxRQUFROzRDQVhPLFlBQVk7c0JBQXBDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBZVU5aQUlfSTE4Tl9UT0tFTiwgU2V0dGluZ3NTZXJ2aWNlLCBZdW56YWlJMThOVHlwZSB9IGZyb20gJ0B5ZWxvbi90aGVtZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIElucHV0Qm9vbGVhbiB9IGZyb20gJ0B5ZWxvbi91dGlsL2RlY29yYXRvcic7XG5cbmltcG9ydCB7IFl1bnphaUkxOE5TZXJ2aWNlIH0gZnJvbSAnLi4veXVuemFpLWkxOG4uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1bnphaS1pMThuJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2ICpuZ0lmPVwic2hvd0xhbmdUZXh0XCIgbnotZHJvcGRvd24gW256RHJvcGRvd25NZW51XT1cImxhbmdNZW51XCIgbnpQbGFjZW1lbnQ9XCJib3R0b21SaWdodFwiPlxuICAgICAgPGkgbnotaWNvbiBuelR5cGU9XCJnbG9iYWxcIj48L2k+XG4gICAgICB7eyAnbGFuZy5uYXYnIHwgaTE4biB9fVxuICAgICAgPGkgbnotaWNvbiBuelR5cGU9XCJkb3duXCI+PC9pPlxuICAgIDwvZGl2PlxuICAgIDxpXG4gICAgICAqbmdJZj1cIiFzaG93TGFuZ1RleHRcIlxuICAgICAgbnotZHJvcGRvd25cbiAgICAgIFtuekRyb3Bkb3duTWVudV09XCJsYW5nTWVudVwiXG4gICAgICBuelBsYWNlbWVudD1cImJvdHRvbVJpZ2h0XCJcbiAgICAgIG56LWljb25cbiAgICAgIG56VHlwZT1cImdsb2JhbFwiXG4gICAgPjwvaT5cbiAgICA8bnotZHJvcGRvd24tbWVudSBkYXRhLWV2ZW50LWlkPVwiX25hdl9sYW5nXCIgI2xhbmdNZW51PVwibnpEcm9wZG93bk1lbnVcIj5cbiAgICAgIDx1bCBuei1tZW51PlxuICAgICAgICA8bGlcbiAgICAgICAgICBkYXRhLWV2ZW50LWlkPVwiX25hdl9sYW5nXCJcbiAgICAgICAgICBbYXR0ci5kYXRhLXRleHRdPVwiaXRlbS50ZXh0XCJcbiAgICAgICAgICBuei1tZW51LWl0ZW1cbiAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBsYW5nc1wiXG4gICAgICAgICAgW256U2VsZWN0ZWRdPVwiaXRlbS5jb2RlID09PSBjdXJMYW5nQ29kZVwiXG4gICAgICAgICAgKGNsaWNrKT1cImNoYW5nZShpdGVtLmNvZGUpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0uaWNvblwiIHJvbGU9XCJpbWdcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0udGV4dFwiIGNsYXNzPVwicHIteHNcIj57eyBpdGVtLmFiYnIgfX08L3NwYW4+XG4gICAgICAgICAgPGltZ1xuICAgICAgICAgICAgKm5nSWY9XCJpdGVtLmljb25cIlxuICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6NHB4XCJcbiAgICAgICAgICAgIHdpZHRoPVwiNTBweFwiXG4gICAgICAgICAgICBoZWlnaHQ9XCIzMHB4XCJcbiAgICAgICAgICAgIFtzcmNdPVwiJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCwnICsgaXRlbS5pY29uXCJcbiAgICAgICAgICAgIFthbHRdPVwiaXRlbS5hYmJyXCJcbiAgICAgICAgICAgIGNsYXNzPVwicHIteHNcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAge3sgaXRlbS50ZXh0IH19XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgIDwvbnotZHJvcGRvd24tbWVudT5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgWXVuemFpSTE4TkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zaG93TGFuZ1RleHQ6IEJvb2xlYW5JbnB1dDtcbiAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcbiAgLyoqIFdoZXRoZXIgdG8gZGlzcGxheSBsYW5ndWFnZSB0ZXh0ICovXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzaG93TGFuZ1RleHQgPSB0cnVlO1xuXG4gIGxhbmdzOiBZdW56YWlJMThOVHlwZVtdID0gW107XG5cbiAgZ2V0IGN1ckxhbmdDb2RlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuc2V0dGluZ3MubGF5b3V0Lmxhbmc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNldHRpbmdzOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgQEluamVjdChZVU5aQUlfSTE4Tl9UT0tFTikgcHJpdmF0ZSBpMThuOiBZdW56YWlJMThOU2VydmljZSxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvYzogYW55XG4gICkge1xuICAgIHRoaXMuaTE4blxuICAgICAgLmdldExhbmdzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUobGFuZ3MgPT4ge1xuICAgICAgICB0aGlzLmxhbmdzID0gbGFuZ3M7XG4gICAgICB9KTtcbiAgfVxuXG4gIGNoYW5nZShsYW5nOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBzcGluRWwgPSB0aGlzLmRvYy5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBzcGluRWwuc2V0QXR0cmlidXRlKCdjbGFzcycsIGBwYWdlLWxvYWRpbmcgYW50LXNwaW4gYW50LXNwaW4tbGcgYW50LXNwaW4tc3Bpbm5pbmdgKTtcbiAgICBzcGluRWwuaW5uZXJIVE1MID0gYDxzcGFuIGNsYXNzPVwiYW50LXNwaW4tZG90IGFudC1zcGluLWRvdC1zcGluXCI+PGk+PC9pPjxpPjwvaT48aT48L2k+PGk+PC9pPjwvc3Bhbj5gO1xuICAgIHRoaXMuZG9jLmJvZHkuYXBwZW5kQ2hpbGQoc3BpbkVsKTtcblxuICAgIHRoaXMuaTE4bi5sb2FkTGFuZ0RhdGEobGFuZykuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICB0aGlzLmkxOG4udXNlKGxhbmcsIHJlcyk7XG4gICAgICB0aGlzLnNldHRpbmdzLnNldExheW91dCgnbGFuZycsIGxhbmcpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmRvYy5sb2NhdGlvbi5yZWxvYWQoKSk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
|
|
2
|
+
import { forkJoin, map } from 'rxjs';
|
|
3
|
+
import { formatDistanceToNow } from 'date-fns';
|
|
4
|
+
import { YUNZAI_I18N_TOKEN } from '@yelon/theme';
|
|
5
|
+
import { WINDOW } from '@yelon/util';
|
|
6
|
+
import { log } from '@yelon/util/other';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "ng-zorro-antd/message";
|
|
9
|
+
import * as i2 from "ng-zorro-antd/i18n";
|
|
10
|
+
import * as i3 from "@yelon/theme";
|
|
11
|
+
import * as i4 from "@yelon/abc/notice-icon";
|
|
12
|
+
import * as i5 from "../yunzai-i18n.service";
|
|
13
|
+
class YunzaiNotifyComponent {
|
|
14
|
+
constructor(injector, msg, y18n, nzI18n, cdr, httpClient) {
|
|
15
|
+
this.injector = injector;
|
|
16
|
+
this.msg = msg;
|
|
17
|
+
this.y18n = y18n;
|
|
18
|
+
this.nzI18n = nzI18n;
|
|
19
|
+
this.cdr = cdr;
|
|
20
|
+
this.httpClient = httpClient;
|
|
21
|
+
this.data = [
|
|
22
|
+
{
|
|
23
|
+
key: 'msg',
|
|
24
|
+
title: this.y18n.fanyi('notify.message'),
|
|
25
|
+
list: [],
|
|
26
|
+
emptyText: this.y18n.fanyi('notify.message.empty'),
|
|
27
|
+
emptyImage: './assets/tmp/img/message.svg',
|
|
28
|
+
clearText: this.y18n.fanyi('notify.message.clear')
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
key: 'todo',
|
|
32
|
+
title: this.y18n.fanyi('notify.todo'),
|
|
33
|
+
list: [],
|
|
34
|
+
emptyText: this.y18n.fanyi('notify.todo.empty'),
|
|
35
|
+
emptyImage: './assets/tmp/img/todo.svg',
|
|
36
|
+
clearText: this.y18n.fanyi('notify.todo.clear')
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
key: 'notice',
|
|
40
|
+
title: this.y18n.fanyi('notify.notice'),
|
|
41
|
+
list: [],
|
|
42
|
+
emptyText: this.y18n.fanyi('notify.notice.empty'),
|
|
43
|
+
emptyImage: './assets/tmp/img/notice.svg',
|
|
44
|
+
clearText: this.y18n.fanyi('notify.notice.clear')
|
|
45
|
+
}
|
|
46
|
+
];
|
|
47
|
+
this.loading = false;
|
|
48
|
+
this.count = 0;
|
|
49
|
+
this.subs = [];
|
|
50
|
+
}
|
|
51
|
+
ngOnInit() {
|
|
52
|
+
this.loadData();
|
|
53
|
+
}
|
|
54
|
+
loadData() {
|
|
55
|
+
this.count = 0;
|
|
56
|
+
this.loading = true;
|
|
57
|
+
this.subs.push(forkJoin(this.loadTodo(), this.loadMessage()).subscribe(() => {
|
|
58
|
+
this.loading = false;
|
|
59
|
+
this.cdr.detectChanges();
|
|
60
|
+
}));
|
|
61
|
+
}
|
|
62
|
+
loadMessage() {
|
|
63
|
+
log('notify.component: ', 'fetch message list');
|
|
64
|
+
const formatMessageStatus = (status) => {
|
|
65
|
+
switch (status) {
|
|
66
|
+
case '0':
|
|
67
|
+
return { extra: this.y18n.fanyi('notify.unread'), color: 'red' };
|
|
68
|
+
case '1':
|
|
69
|
+
return { extra: this.y18n.fanyi('notify.readed'), color: 'green' };
|
|
70
|
+
default:
|
|
71
|
+
return { extra: this.y18n.fanyi('notify.nostatus'), color: 'primary' };
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
return this.httpClient
|
|
75
|
+
.post(`/message-center-3/my-msg-and-todo/msg-list`, {
|
|
76
|
+
pageNum: 1,
|
|
77
|
+
pageSize: 10,
|
|
78
|
+
status: '0'
|
|
79
|
+
})
|
|
80
|
+
.pipe(map((response) => {
|
|
81
|
+
const viewMessage = this.data.filter(d => d.key === 'msg')[0];
|
|
82
|
+
viewMessage.list = response.data.list.map((m) => {
|
|
83
|
+
return {
|
|
84
|
+
...m,
|
|
85
|
+
avatar: m?.imgUrl || './assets/tmp/img/message.png',
|
|
86
|
+
title: m.systemName,
|
|
87
|
+
description: m.content,
|
|
88
|
+
extra: formatMessageStatus(m.status).extra,
|
|
89
|
+
color: formatMessageStatus(m.status).color,
|
|
90
|
+
datetime: formatDistanceToNow(new Date(m.date), { locale: this.nzI18n.getDateLocale() })
|
|
91
|
+
};
|
|
92
|
+
});
|
|
93
|
+
this.count += viewMessage.list.length;
|
|
94
|
+
}));
|
|
95
|
+
}
|
|
96
|
+
loadTodo() {
|
|
97
|
+
log('notify.component: ', 'fetch todo list');
|
|
98
|
+
const formatTodoStatus = (status) => {
|
|
99
|
+
switch (status) {
|
|
100
|
+
case '0':
|
|
101
|
+
return { extra: this.y18n.fanyi('notify.unstart'), color: 'red' };
|
|
102
|
+
case '1':
|
|
103
|
+
return { extra: this.y18n.fanyi('notify.started'), color: 'green' };
|
|
104
|
+
default:
|
|
105
|
+
return { extra: this.y18n.fanyi('notify.nostatus'), color: 'primary' };
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
return this.httpClient
|
|
109
|
+
.post(`/message-center-3/my-msg-and-todo/todo-list`, {
|
|
110
|
+
pageNum: 1,
|
|
111
|
+
pageSize: 10,
|
|
112
|
+
status: '0'
|
|
113
|
+
})
|
|
114
|
+
.pipe(map((response) => {
|
|
115
|
+
const viewTodo = this.data.filter(d => d.key === 'todo')[0];
|
|
116
|
+
viewTodo.list = response.data.list.map((t) => {
|
|
117
|
+
return {
|
|
118
|
+
...t,
|
|
119
|
+
avatar: t?.imgUrl || './assets/tmp/img/todo.png',
|
|
120
|
+
title: t.systemName,
|
|
121
|
+
description: t.content,
|
|
122
|
+
datetime: formatDistanceToNow(new Date(t.date), { locale: this.nzI18n.getDateLocale() }),
|
|
123
|
+
extra: formatTodoStatus(t.status).extra,
|
|
124
|
+
color: formatTodoStatus(t.status).color
|
|
125
|
+
};
|
|
126
|
+
});
|
|
127
|
+
this.count += viewTodo.list.length;
|
|
128
|
+
}));
|
|
129
|
+
}
|
|
130
|
+
clear(type) {
|
|
131
|
+
const t = this.data.filter(d => d.title === type)[0];
|
|
132
|
+
if (t.key == 'msg' || t.key == 'notice') {
|
|
133
|
+
this.subs.push(this.httpClient.post(`/message-center-3/my-msg-and-todo/msg-clear`, {}).subscribe(_ => {
|
|
134
|
+
this.msg.success(`${this.y18n.fanyi('notify.clear')} ${type}`);
|
|
135
|
+
this.loadData();
|
|
136
|
+
}));
|
|
137
|
+
}
|
|
138
|
+
if (t.key == 'todo') {
|
|
139
|
+
this.loadData();
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
select(res) {
|
|
143
|
+
this.injector.get(WINDOW).open(res.item.url);
|
|
144
|
+
this.loadData();
|
|
145
|
+
}
|
|
146
|
+
ngOnDestroy() {
|
|
147
|
+
this.subs.forEach(a => a.unsubscribe());
|
|
148
|
+
}
|
|
149
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: YunzaiNotifyComponent, deps: [{ token: i0.Injector }, { token: i1.NzMessageService }, { token: YUNZAI_I18N_TOKEN }, { token: i2.NzI18nService }, { token: i0.ChangeDetectorRef }, { token: i3._HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
150
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: YunzaiNotifyComponent, selector: "yunzai-notify", ngImport: i0, template: `
|
|
151
|
+
<notice-icon
|
|
152
|
+
[data]="data"
|
|
153
|
+
[count]="count"
|
|
154
|
+
[loading]="loading"
|
|
155
|
+
btnClass="yunzai-default__nav-item"
|
|
156
|
+
btnIconClass="yunzai-default__nav-item-icon"
|
|
157
|
+
(select)="select($event)"
|
|
158
|
+
(clear)="clear($event)"
|
|
159
|
+
></notice-icon>
|
|
160
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i4.NoticeIconComponent, selector: "notice-icon", inputs: ["data", "count", "loading", "popoverVisible", "btnClass", "btnIconClass", "centered"], outputs: ["select", "clear", "popoverVisibleChange"], exportAs: ["noticeIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
161
|
+
}
|
|
162
|
+
export { YunzaiNotifyComponent };
|
|
163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: YunzaiNotifyComponent, decorators: [{
|
|
164
|
+
type: Component,
|
|
165
|
+
args: [{
|
|
166
|
+
selector: 'yunzai-notify',
|
|
167
|
+
template: `
|
|
168
|
+
<notice-icon
|
|
169
|
+
[data]="data"
|
|
170
|
+
[count]="count"
|
|
171
|
+
[loading]="loading"
|
|
172
|
+
btnClass="yunzai-default__nav-item"
|
|
173
|
+
btnIconClass="yunzai-default__nav-item-icon"
|
|
174
|
+
(select)="select($event)"
|
|
175
|
+
(clear)="clear($event)"
|
|
176
|
+
></notice-icon>
|
|
177
|
+
`,
|
|
178
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
179
|
+
}]
|
|
180
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.NzMessageService }, { type: i5.YunzaiI18NService, decorators: [{
|
|
181
|
+
type: Inject,
|
|
182
|
+
args: [YUNZAI_I18N_TOKEN]
|
|
183
|
+
}] }, { type: i2.NzI18nService }, { type: i0.ChangeDetectorRef }, { type: i3._HttpClient }]; } });
|
|
184
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLW5vdGlmeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iaXMvbGF5b3V0L3dpZGdldHMveXVuemFpLW5vdGlmeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsTUFBTSxFQUlQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQTRCLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFlLE1BQU0sY0FBYyxDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7O0FBT3hDLE1BZWEscUJBQXFCO0lBK0JoQyxZQUNVLFFBQWtCLEVBQ2xCLEdBQXFCLEVBQ00sSUFBdUIsRUFDbEQsTUFBcUIsRUFDckIsR0FBc0IsRUFDdEIsVUFBdUI7UUFMdkIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQUNNLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ2xELFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsZUFBVSxHQUFWLFVBQVUsQ0FBYTtRQXBDakMsU0FBSSxHQUFpQjtZQUNuQjtnQkFDRSxHQUFHLEVBQUUsS0FBSztnQkFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ3hDLElBQUksRUFBRSxFQUFFO2dCQUNSLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQztnQkFDbEQsVUFBVSxFQUFFLDhCQUE4QjtnQkFDMUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQixDQUFDO2FBQ25EO1lBQ0Q7Z0JBQ0UsR0FBRyxFQUFFLE1BQU07Z0JBQ1gsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQztnQkFDckMsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDO2dCQUMvQyxVQUFVLEVBQUUsMkJBQTJCO2dCQUN2QyxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUM7YUFDaEQ7WUFDRDtnQkFDRSxHQUFHLEVBQUUsUUFBUTtnQkFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDO2dCQUN2QyxJQUFJLEVBQUUsRUFBRTtnQkFDUixTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUM7Z0JBQ2pELFVBQVUsRUFBRSw2QkFBNkI7Z0JBQ3pDLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQzthQUNsRDtTQUNGLENBQUM7UUFDRixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixTQUFJLEdBQW1CLEVBQUUsQ0FBQztJQVN2QixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ1osUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzNELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXO1FBQ1QsR0FBRyxDQUFDLG9CQUFvQixFQUFFLG9CQUFvQixDQUFDLENBQUM7UUFDaEQsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLE1BQWMsRUFBYSxFQUFFO1lBQ3hELFFBQVEsTUFBTSxFQUFFO2dCQUNkLEtBQUssR0FBRztvQkFDTixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztnQkFDbkUsS0FBSyxHQUFHO29CQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO2dCQUNyRTtvQkFDRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDO2FBQzFFO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsVUFBVTthQUNuQixJQUFJLENBQUMsNENBQTRDLEVBQUU7WUFDbEQsT0FBTyxFQUFFLENBQUM7WUFDVixRQUFRLEVBQUUsRUFBRTtZQUNaLE1BQU0sRUFBRSxHQUFHO1NBQ1osQ0FBQzthQUNELElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxRQUFtQixFQUFFLEVBQUU7WUFDMUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzlELFdBQVcsQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBWSxFQUFFLEVBQUU7Z0JBQ3pELE9BQU87b0JBQ0wsR0FBRyxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxJQUFJLDhCQUE4QjtvQkFDbkQsS0FBSyxFQUFFLENBQUMsQ0FBQyxVQUFVO29CQUNuQixXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU87b0JBQ3RCLEtBQUssRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSztvQkFDMUMsS0FBSyxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLO29CQUMxQyxRQUFRLEVBQUUsbUJBQW1CLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQztpQkFDekYsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLEtBQUssSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVELFFBQVE7UUFDTixHQUFHLENBQUMsb0JBQW9CLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUM3QyxNQUFNLGdCQUFnQixHQUFHLENBQUMsTUFBYyxFQUFhLEVBQUU7WUFDckQsUUFBUSxNQUFNLEVBQUU7Z0JBQ2QsS0FBSyxHQUFHO29CQUNOLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7Z0JBQ3BFLEtBQUssR0FBRztvQkFDTixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO2dCQUN0RTtvQkFDRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDO2FBQzFFO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsVUFBVTthQUNuQixJQUFJLENBQUMsNkNBQTZDLEVBQUU7WUFDbkQsT0FBTyxFQUFFLENBQUM7WUFDVixRQUFRLEVBQUUsRUFBRTtZQUNaLE1BQU0sRUFBRSxHQUFHO1NBQ1osQ0FBQzthQUNELElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxRQUFtQixFQUFFLEVBQUU7WUFDMUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVELFFBQVEsQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBWSxFQUFFLEVBQUU7Z0JBQ3RELE9BQU87b0JBQ0wsR0FBRyxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxJQUFJLDJCQUEyQjtvQkFDaEQsS0FBSyxFQUFFLENBQUMsQ0FBQyxVQUFVO29CQUNuQixXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU87b0JBQ3RCLFFBQVEsRUFBRSxtQkFBbUIsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDO29CQUN4RixLQUFLLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUs7b0JBQ3ZDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSztpQkFDeEMsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFZO1FBQ2hCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksUUFBUSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLDZDQUE2QyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDcEYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUMvRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztTQUNIO1FBQ0QsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLE1BQU0sRUFBRTtZQUNuQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDakI7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQXFCO1FBQzFCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs4R0F2SlUscUJBQXFCLDBFQWtDdEIsaUJBQWlCO2tHQWxDaEIscUJBQXFCLHFEQWJ0Qjs7Ozs7Ozs7OztHQVVUOztTQUdVLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQWZqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7R0FVVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQW1DSSxNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIEluamVjdG9yLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIG1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBmb3JtYXREaXN0YW5jZVRvTm93IH0gZnJvbSAnZGF0ZS1mbnMnO1xuXG5pbXBvcnQgeyBOb3RpY2VJY29uU2VsZWN0LCBOb3RpY2VJdGVtIH0gZnJvbSAnQHllbG9uL2FiYy9ub3RpY2UtaWNvbic7XG5pbXBvcnQgeyBZVU5aQUlfSTE4Tl9UT0tFTiwgX0h0dHBDbGllbnQgfSBmcm9tICdAeWVsb24vdGhlbWUnO1xuaW1wb3J0IHsgV0lORE9XIH0gZnJvbSAnQHllbG9uL3V0aWwnO1xuaW1wb3J0IHsgbG9nIH0gZnJvbSAnQHllbG9uL3V0aWwvb3RoZXInO1xuaW1wb3J0IHsgTnpTYWZlQW55IH0gZnJvbSAnbmctem9ycm8tYW50ZC9jb3JlL3R5cGVzJztcbmltcG9ydCB7IE56STE4blNlcnZpY2UgfSBmcm9tICduZy16b3Jyby1hbnRkL2kxOG4nO1xuaW1wb3J0IHsgTnpNZXNzYWdlU2VydmljZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvbWVzc2FnZSc7XG5cbmltcG9ydCB7IFl1bnphaUkxOE5TZXJ2aWNlIH0gZnJvbSAnLi4veXVuemFpLWkxOG4uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1bnphaS1ub3RpZnknLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxub3RpY2UtaWNvblxuICAgICAgW2RhdGFdPVwiZGF0YVwiXG4gICAgICBbY291bnRdPVwiY291bnRcIlxuICAgICAgW2xvYWRpbmddPVwibG9hZGluZ1wiXG4gICAgICBidG5DbGFzcz1cInl1bnphaS1kZWZhdWx0X19uYXYtaXRlbVwiXG4gICAgICBidG5JY29uQ2xhc3M9XCJ5dW56YWktZGVmYXVsdF9fbmF2LWl0ZW0taWNvblwiXG4gICAgICAoc2VsZWN0KT1cInNlbGVjdCgkZXZlbnQpXCJcbiAgICAgIChjbGVhcik9XCJjbGVhcigkZXZlbnQpXCJcbiAgICA+PC9ub3RpY2UtaWNvbj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgWXVuemFpTm90aWZ5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBkYXRhOiBOb3RpY2VJdGVtW10gPSBbXG4gICAge1xuICAgICAga2V5OiAnbXNnJyxcbiAgICAgIHRpdGxlOiB0aGlzLnkxOG4uZmFueWkoJ25vdGlmeS5tZXNzYWdlJyksXG4gICAgICBsaXN0OiBbXSxcbiAgICAgIGVtcHR5VGV4dDogdGhpcy55MThuLmZhbnlpKCdub3RpZnkubWVzc2FnZS5lbXB0eScpLFxuICAgICAgZW1wdHlJbWFnZTogJy4vYXNzZXRzL3RtcC9pbWcvbWVzc2FnZS5zdmcnLFxuICAgICAgY2xlYXJUZXh0OiB0aGlzLnkxOG4uZmFueWkoJ25vdGlmeS5tZXNzYWdlLmNsZWFyJylcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ3RvZG8nLFxuICAgICAgdGl0bGU6IHRoaXMueTE4bi5mYW55aSgnbm90aWZ5LnRvZG8nKSxcbiAgICAgIGxpc3Q6IFtdLFxuICAgICAgZW1wdHlUZXh0OiB0aGlzLnkxOG4uZmFueWkoJ25vdGlmeS50b2RvLmVtcHR5JyksXG4gICAgICBlbXB0eUltYWdlOiAnLi9hc3NldHMvdG1wL2ltZy90b2RvLnN2ZycsXG4gICAgICBjbGVhclRleHQ6IHRoaXMueTE4bi5mYW55aSgnbm90aWZ5LnRvZG8uY2xlYXInKVxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAnbm90aWNlJyxcbiAgICAgIHRpdGxlOiB0aGlzLnkxOG4uZmFueWkoJ25vdGlmeS5ub3RpY2UnKSxcbiAgICAgIGxpc3Q6IFtdLFxuICAgICAgZW1wdHlUZXh0OiB0aGlzLnkxOG4uZmFueWkoJ25vdGlmeS5ub3RpY2UuZW1wdHknKSxcbiAgICAgIGVtcHR5SW1hZ2U6ICcuL2Fzc2V0cy90bXAvaW1nL25vdGljZS5zdmcnLFxuICAgICAgY2xlYXJUZXh0OiB0aGlzLnkxOG4uZmFueWkoJ25vdGlmeS5ub3RpY2UuY2xlYXInKVxuICAgIH1cbiAgXTtcbiAgbG9hZGluZyA9IGZhbHNlO1xuICBjb3VudCA9IDA7XG4gIHN1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBtc2c6IE56TWVzc2FnZVNlcnZpY2UsXG4gICAgQEluamVjdChZVU5aQUlfSTE4Tl9UT0tFTikgcHJpdmF0ZSB5MThuOiBZdW56YWlJMThOU2VydmljZSxcbiAgICBwcml2YXRlIG56STE4bjogTnpJMThuU2VydmljZSxcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBfSHR0cENsaWVudFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sb2FkRGF0YSgpO1xuICB9XG5cbiAgbG9hZERhdGEoKTogdm9pZCB7XG4gICAgdGhpcy5jb3VudCA9IDA7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnN1YnMucHVzaChcbiAgICAgIGZvcmtKb2luKHRoaXMubG9hZFRvZG8oKSwgdGhpcy5sb2FkTWVzc2FnZSgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbG9hZE1lc3NhZ2UoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgbG9nKCdub3RpZnkuY29tcG9uZW50OiAnLCAnZmV0Y2ggbWVzc2FnZSBsaXN0Jyk7XG4gICAgY29uc3QgZm9ybWF0TWVzc2FnZVN0YXR1cyA9IChzdGF0dXM6IHN0cmluZyk6IE56U2FmZUFueSA9PiB7XG4gICAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgICBjYXNlICcwJzpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy55MThuLmZhbnlpKCdub3RpZnkudW5yZWFkJyksIGNvbG9yOiAncmVkJyB9O1xuICAgICAgICBjYXNlICcxJzpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy55MThuLmZhbnlpKCdub3RpZnkucmVhZGVkJyksIGNvbG9yOiAnZ3JlZW4nIH07XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIHsgZXh0cmE6IHRoaXMueTE4bi5mYW55aSgnbm90aWZ5Lm5vc3RhdHVzJyksIGNvbG9yOiAncHJpbWFyeScgfTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0KGAvbWVzc2FnZS1jZW50ZXItMy9teS1tc2ctYW5kLXRvZG8vbXNnLWxpc3RgLCB7XG4gICAgICAgIHBhZ2VOdW06IDEsXG4gICAgICAgIHBhZ2VTaXplOiAxMCxcbiAgICAgICAgc3RhdHVzOiAnMCdcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogTnpTYWZlQW55KSA9PiB7XG4gICAgICAgICAgY29uc3Qgdmlld01lc3NhZ2UgPSB0aGlzLmRhdGEuZmlsdGVyKGQgPT4gZC5rZXkgPT09ICdtc2cnKVswXTtcbiAgICAgICAgICB2aWV3TWVzc2FnZS5saXN0ID0gcmVzcG9uc2UuZGF0YS5saXN0Lm1hcCgobTogTnpTYWZlQW55KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAuLi5tLFxuICAgICAgICAgICAgICBhdmF0YXI6IG0/LmltZ1VybCB8fCAnLi9hc3NldHMvdG1wL2ltZy9tZXNzYWdlLnBuZycsXG4gICAgICAgICAgICAgIHRpdGxlOiBtLnN5c3RlbU5hbWUsXG4gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBtLmNvbnRlbnQsXG4gICAgICAgICAgICAgIGV4dHJhOiBmb3JtYXRNZXNzYWdlU3RhdHVzKG0uc3RhdHVzKS5leHRyYSxcbiAgICAgICAgICAgICAgY29sb3I6IGZvcm1hdE1lc3NhZ2VTdGF0dXMobS5zdGF0dXMpLmNvbG9yLFxuICAgICAgICAgICAgICBkYXRldGltZTogZm9ybWF0RGlzdGFuY2VUb05vdyhuZXcgRGF0ZShtLmRhdGUpLCB7IGxvY2FsZTogdGhpcy5uekkxOG4uZ2V0RGF0ZUxvY2FsZSgpIH0pXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuY291bnQgKz0gdmlld01lc3NhZ2UubGlzdC5sZW5ndGg7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgbG9hZFRvZG8oKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgbG9nKCdub3RpZnkuY29tcG9uZW50OiAnLCAnZmV0Y2ggdG9kbyBsaXN0Jyk7XG4gICAgY29uc3QgZm9ybWF0VG9kb1N0YXR1cyA9IChzdGF0dXM6IHN0cmluZyk6IE56U2FmZUFueSA9PiB7XG4gICAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgICBjYXNlICcwJzpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy55MThuLmZhbnlpKCdub3RpZnkudW5zdGFydCcpLCBjb2xvcjogJ3JlZCcgfTtcbiAgICAgICAgY2FzZSAnMSc6XG4gICAgICAgICAgcmV0dXJuIHsgZXh0cmE6IHRoaXMueTE4bi5mYW55aSgnbm90aWZ5LnN0YXJ0ZWQnKSwgY29sb3I6ICdncmVlbicgfTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy55MThuLmZhbnlpKCdub3RpZnkubm9zdGF0dXMnKSwgY29sb3I6ICdwcmltYXJ5JyB9O1xuICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3QoYC9tZXNzYWdlLWNlbnRlci0zL215LW1zZy1hbmQtdG9kby90b2RvLWxpc3RgLCB7XG4gICAgICAgIHBhZ2VOdW06IDEsXG4gICAgICAgIHBhZ2VTaXplOiAxMCxcbiAgICAgICAgc3RhdHVzOiAnMCdcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogTnpTYWZlQW55KSA9PiB7XG4gICAgICAgICAgY29uc3Qgdmlld1RvZG8gPSB0aGlzLmRhdGEuZmlsdGVyKGQgPT4gZC5rZXkgPT09ICd0b2RvJylbMF07XG4gICAgICAgICAgdmlld1RvZG8ubGlzdCA9IHJlc3BvbnNlLmRhdGEubGlzdC5tYXAoKHQ6IE56U2FmZUFueSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgLi4udCxcbiAgICAgICAgICAgICAgYXZhdGFyOiB0Py5pbWdVcmwgfHwgJy4vYXNzZXRzL3RtcC9pbWcvdG9kby5wbmcnLFxuICAgICAgICAgICAgICB0aXRsZTogdC5zeXN0ZW1OYW1lLFxuICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdC5jb250ZW50LFxuICAgICAgICAgICAgICBkYXRldGltZTogZm9ybWF0RGlzdGFuY2VUb05vdyhuZXcgRGF0ZSh0LmRhdGUpLCB7IGxvY2FsZTogdGhpcy5uekkxOG4uZ2V0RGF0ZUxvY2FsZSgpIH0pLFxuICAgICAgICAgICAgICBleHRyYTogZm9ybWF0VG9kb1N0YXR1cyh0LnN0YXR1cykuZXh0cmEsXG4gICAgICAgICAgICAgIGNvbG9yOiBmb3JtYXRUb2RvU3RhdHVzKHQuc3RhdHVzKS5jb2xvclxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICB0aGlzLmNvdW50ICs9IHZpZXdUb2RvLmxpc3QubGVuZ3RoO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIGNsZWFyKHR5cGU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHQgPSB0aGlzLmRhdGEuZmlsdGVyKGQgPT4gZC50aXRsZSA9PT0gdHlwZSlbMF07XG4gICAgaWYgKHQua2V5ID09ICdtc2cnIHx8IHQua2V5ID09ICdub3RpY2UnKSB7XG4gICAgICB0aGlzLnN1YnMucHVzaChcbiAgICAgICAgdGhpcy5odHRwQ2xpZW50LnBvc3QoYC9tZXNzYWdlLWNlbnRlci0zL215LW1zZy1hbmQtdG9kby9tc2ctY2xlYXJgLCB7fSkuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgICAgIHRoaXMubXNnLnN1Y2Nlc3MoYCR7dGhpcy55MThuLmZhbnlpKCdub3RpZnkuY2xlYXInKX0gJHt0eXBlfWApO1xuICAgICAgICAgIHRoaXMubG9hZERhdGEoKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICh0LmtleSA9PSAndG9kbycpIHtcbiAgICAgIHRoaXMubG9hZERhdGEoKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3QocmVzOiBOb3RpY2VJY29uU2VsZWN0KTogdm9pZCB7XG4gICAgdGhpcy5pbmplY3Rvci5nZXQoV0lORE9XKS5vcGVuKHJlcy5pdGVtLnVybCk7XG4gICAgdGhpcy5sb2FkRGF0YSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzLmZvckVhY2goYSA9PiBhLnVuc3Vic2NyaWJlKCkpO1xuICB9XG59XG4iXX0=
|