@yelon/bis 12.0.19 → 13.0.0-beta.1
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/bis.d.ts +1 -0
- package/{esm2015/bis.js → esm2020/bis.mjs} +0 -0
- package/esm2020/layout/act.guard.mjs +108 -0
- package/{esm2015/layout/bis.config.js → esm2020/layout/bis.config.mjs} +0 -0
- package/esm2020/layout/contact/contact.component.mjs +492 -0
- package/esm2020/layout/contact/contact.service.mjs +146 -0
- package/esm2020/layout/layout.mjs +5 -0
- package/esm2020/layout/layout.module.mjs +73 -0
- package/{esm2015/layout/path-to-regexp.service.js → esm2020/layout/path-to-regexp.service.mjs} +9 -8
- package/{esm2015/layout/public_api.js → esm2020/layout/public_api.mjs} +3 -3
- package/esm2020/layout/stomp.config.mjs +18 -0
- package/{esm2015/layout/widgets/index.js → esm2020/layout/widgets/index.mjs} +0 -0
- package/esm2020/layout/widgets/yz.application.component.mjs +271 -0
- package/esm2020/layout/widgets/yz.clear-storage.component.mjs +45 -0
- package/esm2020/layout/widgets/yz.fullscreen.component.mjs +45 -0
- package/esm2020/layout/widgets/yz.i18n.component.mjs +115 -0
- package/esm2020/layout/widgets/yz.notify.component.mjs +184 -0
- package/esm2020/layout/widgets/yz.them-btn.component.mjs +196 -0
- package/esm2020/layout/widgets/yz.user.component.mjs +112 -0
- package/esm2020/layout/yz.auth.service.mjs +156 -0
- package/esm2020/layout/yz.basic.component.mjs +207 -0
- package/esm2020/layout/yz.default.interceptor.mjs +203 -0
- package/esm2020/layout/yz.i18n.service.mjs +93 -0
- package/esm2020/layout/yz.startup.service.mjs +137 -0
- package/esm2020/layout/yz.stomp.service.mjs +88 -0
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/{esm2015/shared/public_api.js → esm2020/shared/public_api.mjs} +0 -0
- package/{esm2015/shared/shared-yelon.module.js → esm2020/shared/shared-yelon.module.mjs} +0 -0
- package/{esm2015/shared/shared-zorro.module.js → esm2020/shared/shared-zorro.module.mjs} +0 -0
- package/{esm2015/shared/shared.js → esm2020/shared/shared.mjs} +0 -0
- package/esm2020/shared/shared.module.mjs +116 -0
- package/{esm2015/shared/style-icons.js → esm2020/shared/style-icons.mjs} +0 -0
- package/fesm2015/{bis.js → bis.mjs} +1 -1
- package/fesm2015/bis.mjs.map +1 -0
- package/fesm2015/{layout.js → layout.mjs} +587 -278
- package/fesm2015/layout.mjs.map +1 -0
- package/fesm2015/{shared.js → shared.mjs} +101 -7
- package/fesm2015/shared.mjs.map +1 -0
- package/fesm2020/bis.mjs +6 -0
- package/fesm2020/bis.mjs.map +1 -0
- package/fesm2020/layout.mjs +2796 -0
- package/fesm2020/layout.mjs.map +1 -0
- package/fesm2020/shared.mjs +1106 -0
- package/fesm2020/shared.mjs.map +1 -0
- package/layout/act.guard.d.ts +3 -0
- package/layout/contact/contact.component.d.ts +4 -1
- package/layout/contact/contact.service.d.ts +4 -1
- package/layout/layout.d.ts +1 -3
- package/layout/layout.module.d.ts +18 -0
- package/layout/package.json +5 -6
- package/layout/path-to-regexp.service.d.ts +3 -0
- package/layout/public_api.d.ts +2 -0
- package/layout/widgets/yz.application.component.d.ts +3 -0
- package/layout/widgets/yz.clear-storage.component.d.ts +3 -0
- package/layout/widgets/yz.fullscreen.component.d.ts +3 -1
- package/layout/widgets/yz.i18n.component.d.ts +3 -0
- package/layout/widgets/yz.notify.component.d.ts +3 -0
- package/layout/widgets/yz.them-btn.component.d.ts +3 -0
- package/layout/widgets/yz.user.component.d.ts +3 -0
- package/layout/yz.auth.service.d.ts +3 -0
- package/layout/yz.basic.component.d.ts +3 -0
- package/layout/yz.default.interceptor.d.ts +3 -0
- package/layout/yz.i18n.service.d.ts +3 -0
- package/layout/yz.startup.service.d.ts +3 -0
- package/layout/yz.stomp.service.d.ts +6 -3
- package/package.json +46 -18
- package/shared/package.json +5 -6
- package/shared/shared-zorro.module.d.ts +2 -2
- package/shared/shared.d.ts +1 -0
- package/shared/shared.module.d.ts +93 -0
- package/bis.metadata.json +0 -1
- package/bundles/bis.umd.js +0 -18
- package/bundles/bis.umd.js.map +0 -1
- package/bundles/layout.umd.js +0 -2694
- package/bundles/layout.umd.js.map +0 -1
- package/bundles/shared.umd.js +0 -1249
- package/bundles/shared.umd.js.map +0 -1
- package/esm2015/layout/act.guard.js +0 -115
- package/esm2015/layout/contact/contact.component.js +0 -434
- package/esm2015/layout/contact/contact.service.js +0 -150
- package/esm2015/layout/layout.js +0 -8
- package/esm2015/layout/layout.module.js +0 -47
- package/esm2015/layout/stomp.config.js +0 -20
- package/esm2015/layout/widgets/yz.application.component.js +0 -200
- package/esm2015/layout/widgets/yz.clear-storage.component.js +0 -39
- package/esm2015/layout/widgets/yz.fullscreen.component.js +0 -36
- package/esm2015/layout/widgets/yz.i18n.component.js +0 -78
- package/esm2015/layout/widgets/yz.notify.component.js +0 -157
- package/esm2015/layout/widgets/yz.them-btn.component.js +0 -146
- package/esm2015/layout/widgets/yz.user.component.js +0 -81
- package/esm2015/layout/yz.auth.service.js +0 -158
- package/esm2015/layout/yz.basic.component.js +0 -123
- package/esm2015/layout/yz.default.interceptor.js +0 -204
- package/esm2015/layout/yz.i18n.service.js +0 -102
- package/esm2015/layout/yz.startup.service.js +0 -138
- package/esm2015/layout/yz.stomp.service.js +0 -91
- package/esm2015/shared/shared.module.js +0 -22
- package/fesm2015/bis.js.map +0 -1
- package/fesm2015/layout.js.map +0 -1
- package/fesm2015/shared.js.map +0 -1
- package/layout/layout.metadata.json +0 -1
- package/shared/shared.metadata.json +0 -1
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { WINDOW } from '@yelon/util';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@yelon/cache";
|
|
5
|
+
import * as i2 from "../yz.i18n.service";
|
|
6
|
+
import * as i3 from "@yelon/theme";
|
|
7
|
+
import * as i4 from "ng-zorro-antd/input";
|
|
8
|
+
import * as i5 from "ng-zorro-antd/grid";
|
|
9
|
+
import * as i6 from "ng-zorro-antd/core/transition-patch";
|
|
10
|
+
import * as i7 from "@angular/forms";
|
|
11
|
+
import * as i8 from "ng-zorro-antd/icon";
|
|
12
|
+
import * as i9 from "@angular/common";
|
|
13
|
+
export var TOPIC;
|
|
14
|
+
(function (TOPIC) {
|
|
15
|
+
TOPIC[TOPIC["FULL"] = 0] = "FULL";
|
|
16
|
+
TOPIC[TOPIC["OWN"] = 1] = "OWN";
|
|
17
|
+
TOPIC[TOPIC["EVERY"] = 2] = "EVERY";
|
|
18
|
+
})(TOPIC || (TOPIC = {}));
|
|
19
|
+
export class YzHeaderApplicationComponent {
|
|
20
|
+
constructor(inject, cacheService, i18n, http) {
|
|
21
|
+
this.inject = inject;
|
|
22
|
+
this.cacheService = cacheService;
|
|
23
|
+
this.i18n = i18n;
|
|
24
|
+
this.http = http;
|
|
25
|
+
this.T = TOPIC;
|
|
26
|
+
this.active = false;
|
|
27
|
+
this.topicData = [];
|
|
28
|
+
this.listData = [];
|
|
29
|
+
this.topic = TOPIC.FULL;
|
|
30
|
+
this.searchValue = null;
|
|
31
|
+
this.subs = [];
|
|
32
|
+
}
|
|
33
|
+
ngOnInit() {
|
|
34
|
+
this.topicData = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
35
|
+
this.listData = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
36
|
+
}
|
|
37
|
+
ngOnDestroy() {
|
|
38
|
+
this.subs.forEach(f => f.unsubscribe());
|
|
39
|
+
}
|
|
40
|
+
diffChange(flag) {
|
|
41
|
+
if (flag) {
|
|
42
|
+
this.active = flag;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
this.active = !this.active;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
initTopic(topic) {
|
|
49
|
+
this.searchValue = null;
|
|
50
|
+
this.listData = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
51
|
+
this.topic = topic;
|
|
52
|
+
}
|
|
53
|
+
full() {
|
|
54
|
+
this.initTopic(TOPIC.FULL);
|
|
55
|
+
}
|
|
56
|
+
own() {
|
|
57
|
+
this.initTopic(TOPIC.OWN);
|
|
58
|
+
const temp = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
59
|
+
this.listData = temp
|
|
60
|
+
.filter((topic) => {
|
|
61
|
+
topic.children = topic.children.filter((child) => {
|
|
62
|
+
return child.auth;
|
|
63
|
+
});
|
|
64
|
+
return topic;
|
|
65
|
+
})
|
|
66
|
+
.filter((topic) => {
|
|
67
|
+
return topic.children.length > 0;
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
every(e) {
|
|
71
|
+
this.initTopic(TOPIC.EVERY);
|
|
72
|
+
this.choosed = e;
|
|
73
|
+
const temp = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
74
|
+
this.listData = [...temp.filter(t => t.key === e.key)[0].children];
|
|
75
|
+
}
|
|
76
|
+
onSearch() {
|
|
77
|
+
const temp = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
78
|
+
// 如果搜索输入的有值
|
|
79
|
+
if (this.searchValue) {
|
|
80
|
+
// 过滤菜单过滤出搜索的值
|
|
81
|
+
this.listData = temp
|
|
82
|
+
.filter((topic) => {
|
|
83
|
+
if (this.i18n.fanyi(topic.name).includes(this.searchValue)) {
|
|
84
|
+
return topic;
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
topic.children = topic.children.filter((child) => {
|
|
88
|
+
return this.i18n.fanyi(child.name).includes(this.searchValue);
|
|
89
|
+
});
|
|
90
|
+
return topic;
|
|
91
|
+
}
|
|
92
|
+
})
|
|
93
|
+
.filter((topic) => {
|
|
94
|
+
return topic.children.length > 0;
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
// 如果没有值,取消搜索
|
|
99
|
+
this.listData = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
open(topic) {
|
|
103
|
+
if (topic.key) {
|
|
104
|
+
this.subs.push(this.http
|
|
105
|
+
.post(`/app-manager/web-scan/save`, {
|
|
106
|
+
appId: topic.key,
|
|
107
|
+
createDate: new Date()
|
|
108
|
+
})
|
|
109
|
+
.subscribe());
|
|
110
|
+
}
|
|
111
|
+
switch (topic.target) {
|
|
112
|
+
case 'href':
|
|
113
|
+
this.inject.get(WINDOW).location.href = topic.url;
|
|
114
|
+
break;
|
|
115
|
+
case 'blank':
|
|
116
|
+
this.inject.get(WINDOW).location.href = topic.url;
|
|
117
|
+
break;
|
|
118
|
+
case 'target':
|
|
119
|
+
this.inject.get(WINDOW).location.href = topic.url;
|
|
120
|
+
break;
|
|
121
|
+
default:
|
|
122
|
+
this.inject.get(WINDOW).location.href = topic.url;
|
|
123
|
+
break;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
YzHeaderApplicationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderApplicationComponent, deps: [{ token: i0.Injector }, { token: i1.CacheService }, { token: i2.YzI18NService }, { token: i3._HttpClient }], target: i0.ɵɵFactoryTarget.Component });
|
|
128
|
+
YzHeaderApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: YzHeaderApplicationComponent, selector: "yz-header-application", ngImport: i0, template: `
|
|
129
|
+
<!-- template start-->
|
|
130
|
+
<ng-template #search>
|
|
131
|
+
<div nz-row class="yz-application-list-search">
|
|
132
|
+
<nz-input-group [nzPrefix]="prefixTemplate">
|
|
133
|
+
<input
|
|
134
|
+
type="text"
|
|
135
|
+
nz-input
|
|
136
|
+
placeholder="{{ 'application.search' | i18n }}"
|
|
137
|
+
[(ngModel)]="searchValue"
|
|
138
|
+
(ngModelChange)="onSearch()"
|
|
139
|
+
/>
|
|
140
|
+
<ng-template #prefixTemplate>
|
|
141
|
+
<i nz-icon nzType="search" nzTheme="outline"></i>
|
|
142
|
+
</ng-template>
|
|
143
|
+
</nz-input-group>
|
|
144
|
+
</div>
|
|
145
|
+
</ng-template>
|
|
146
|
+
<ng-template #ld>
|
|
147
|
+
<div class="yz-application-list">
|
|
148
|
+
<ul>
|
|
149
|
+
<li *ngFor="let d of listData">
|
|
150
|
+
<h5>{{ d.name }}</h5>
|
|
151
|
+
<a href="javascript:;" *ngFor="let cd of d.children" (click)="open(cd)">{{ cd.name }}</a>
|
|
152
|
+
</li>
|
|
153
|
+
</ul>
|
|
154
|
+
</div>
|
|
155
|
+
</ng-template>
|
|
156
|
+
<!-- template end-->
|
|
157
|
+
|
|
158
|
+
<!-- button start-->
|
|
159
|
+
<div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
|
|
160
|
+
<!-- button end-->
|
|
161
|
+
|
|
162
|
+
<!-- header start-->
|
|
163
|
+
<div class="yz-application" nz-row *ngIf="active">
|
|
164
|
+
<div nz-col [nzSpan]="3" class="yz-application-topic">
|
|
165
|
+
<div class="yz-application-text" (click)="full()">{{ 'application.all' | i18n }}</div>
|
|
166
|
+
<div class="yz-application-text" (click)="own()">{{ 'application.mine' | i18n }}</div>
|
|
167
|
+
<div class="yz-application-text" *ngFor="let d of topicData" (click)="every(d)">
|
|
168
|
+
{{ d.name }}
|
|
169
|
+
</div>
|
|
170
|
+
</div>
|
|
171
|
+
<div nz-col [nzSpan]="21" [ngSwitch]="topic" class="yz-application-container">
|
|
172
|
+
<div *ngSwitchCase="T.FULL">
|
|
173
|
+
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
174
|
+
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
175
|
+
</div>
|
|
176
|
+
<div *ngSwitchCase="T.OWN">
|
|
177
|
+
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
178
|
+
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
179
|
+
</div>
|
|
180
|
+
<div *ngSwitchCase="T.EVERY" class="yz-application-list">
|
|
181
|
+
<div class="yz-application-list-item">
|
|
182
|
+
<ul>
|
|
183
|
+
<li *ngFor="let d of listData" (click)="open(d)">
|
|
184
|
+
<a href="javascript:;">
|
|
185
|
+
<h4>{{ d.name }}</h4>
|
|
186
|
+
<p>{{ d.intro }}</p>
|
|
187
|
+
</a>
|
|
188
|
+
</li>
|
|
189
|
+
</ul>
|
|
190
|
+
</div>
|
|
191
|
+
</div>
|
|
192
|
+
</div>
|
|
193
|
+
</div>
|
|
194
|
+
<!-- header end-->
|
|
195
|
+
`, isInline: true, components: [{ type: i4.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }], directives: [{ type: i5.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { type: i6.ɵ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"] }, { type: i4.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { type: i4.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "disabled"], exportAs: ["nzInput"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { type: i9.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i9.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i9.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "i18n": i3.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
196
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderApplicationComponent, decorators: [{
|
|
197
|
+
type: Component,
|
|
198
|
+
args: [{
|
|
199
|
+
selector: 'yz-header-application',
|
|
200
|
+
template: `
|
|
201
|
+
<!-- template start-->
|
|
202
|
+
<ng-template #search>
|
|
203
|
+
<div nz-row class="yz-application-list-search">
|
|
204
|
+
<nz-input-group [nzPrefix]="prefixTemplate">
|
|
205
|
+
<input
|
|
206
|
+
type="text"
|
|
207
|
+
nz-input
|
|
208
|
+
placeholder="{{ 'application.search' | i18n }}"
|
|
209
|
+
[(ngModel)]="searchValue"
|
|
210
|
+
(ngModelChange)="onSearch()"
|
|
211
|
+
/>
|
|
212
|
+
<ng-template #prefixTemplate>
|
|
213
|
+
<i nz-icon nzType="search" nzTheme="outline"></i>
|
|
214
|
+
</ng-template>
|
|
215
|
+
</nz-input-group>
|
|
216
|
+
</div>
|
|
217
|
+
</ng-template>
|
|
218
|
+
<ng-template #ld>
|
|
219
|
+
<div class="yz-application-list">
|
|
220
|
+
<ul>
|
|
221
|
+
<li *ngFor="let d of listData">
|
|
222
|
+
<h5>{{ d.name }}</h5>
|
|
223
|
+
<a href="javascript:;" *ngFor="let cd of d.children" (click)="open(cd)">{{ cd.name }}</a>
|
|
224
|
+
</li>
|
|
225
|
+
</ul>
|
|
226
|
+
</div>
|
|
227
|
+
</ng-template>
|
|
228
|
+
<!-- template end-->
|
|
229
|
+
|
|
230
|
+
<!-- button start-->
|
|
231
|
+
<div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
|
|
232
|
+
<!-- button end-->
|
|
233
|
+
|
|
234
|
+
<!-- header start-->
|
|
235
|
+
<div class="yz-application" nz-row *ngIf="active">
|
|
236
|
+
<div nz-col [nzSpan]="3" class="yz-application-topic">
|
|
237
|
+
<div class="yz-application-text" (click)="full()">{{ 'application.all' | i18n }}</div>
|
|
238
|
+
<div class="yz-application-text" (click)="own()">{{ 'application.mine' | i18n }}</div>
|
|
239
|
+
<div class="yz-application-text" *ngFor="let d of topicData" (click)="every(d)">
|
|
240
|
+
{{ d.name }}
|
|
241
|
+
</div>
|
|
242
|
+
</div>
|
|
243
|
+
<div nz-col [nzSpan]="21" [ngSwitch]="topic" class="yz-application-container">
|
|
244
|
+
<div *ngSwitchCase="T.FULL">
|
|
245
|
+
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
246
|
+
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
247
|
+
</div>
|
|
248
|
+
<div *ngSwitchCase="T.OWN">
|
|
249
|
+
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
250
|
+
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
251
|
+
</div>
|
|
252
|
+
<div *ngSwitchCase="T.EVERY" class="yz-application-list">
|
|
253
|
+
<div class="yz-application-list-item">
|
|
254
|
+
<ul>
|
|
255
|
+
<li *ngFor="let d of listData" (click)="open(d)">
|
|
256
|
+
<a href="javascript:;">
|
|
257
|
+
<h4>{{ d.name }}</h4>
|
|
258
|
+
<p>{{ d.intro }}</p>
|
|
259
|
+
</a>
|
|
260
|
+
</li>
|
|
261
|
+
</ul>
|
|
262
|
+
</div>
|
|
263
|
+
</div>
|
|
264
|
+
</div>
|
|
265
|
+
</div>
|
|
266
|
+
<!-- header end-->
|
|
267
|
+
`,
|
|
268
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
269
|
+
}]
|
|
270
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.CacheService }, { type: i2.YzI18NService }, { type: i3._HttpClient }]; } });
|
|
271
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXouYXBwbGljYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYmlzL2xheW91dC93aWRnZXRzL3l6LmFwcGxpY2F0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUErQixNQUFNLGVBQWUsQ0FBQztBQUtoRyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7OztBQUlyQyxNQUFNLENBQU4sSUFBWSxLQUlYO0FBSkQsV0FBWSxLQUFLO0lBQ2YsaUNBQUksQ0FBQTtJQUNKLCtCQUFHLENBQUE7SUFDSCxtQ0FBSyxDQUFBO0FBQ1AsQ0FBQyxFQUpXLEtBQUssS0FBTCxLQUFLLFFBSWhCO0FBK0ZELE1BQU0sT0FBTyw0QkFBNEI7SUFVdkMsWUFDVSxNQUFnQixFQUNoQixZQUEwQixFQUMxQixJQUFtQixFQUNuQixJQUFpQjtRQUhqQixXQUFNLEdBQU4sTUFBTSxDQUFVO1FBQ2hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFNBQUksR0FBSixJQUFJLENBQWU7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBYTtRQWIzQixNQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ1YsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUN4QixjQUFTLEdBQWtCLEVBQUUsQ0FBQztRQUM5QixhQUFRLEdBQWtCLEVBQUUsQ0FBQztRQUM3QixVQUFLLEdBQVUsS0FBSyxDQUFDLElBQUksQ0FBQztRQUUxQixnQkFBVyxHQUFrQixJQUFJLENBQUM7UUFDbEMsU0FBSSxHQUFtQixFQUFFLENBQUM7SUFPdkIsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxD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QUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7Z0JBQ2xELE1BQU07WUFDUixLQUFLLE9BQU87Z0JBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO2dCQUNsRCxNQUFNO1lBQ1IsS0FBSyxRQUFRO2dCQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztnQkFDbEQsTUFBTTtZQUNSO2dCQUNFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztnQkFDbEQsTUFBTTtTQUNUO0lBQ0gsQ0FBQzs7eUhBcEhVLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLDZEQXRFN0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtRVQ7MkZBR1UsNEJBQTRCO2tCQXhFeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtRVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnQHllbG9uL2NhY2hlJztcbmltcG9ydCB7IF9IdHRwQ2xpZW50IH0gZnJvbSAnQHllbG9uL3RoZW1lJztcbmltcG9ydCB7IFdJTkRPVyB9IGZyb20gJ0B5ZWxvbi91dGlsJztcblxuaW1wb3J0IHsgWXpJMThOU2VydmljZSB9IGZyb20gJy4uL3l6LmkxOG4uc2VydmljZSc7XG5cbmV4cG9ydCBlbnVtIFRPUElDIHtcbiAgRlVMTCxcbiAgT1dOLFxuICBFVkVSWVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhlYWRlclRvcGljIHtcbiAgLy8g5b+Y5LqGXG4gIGF0dHJpYnV0ZTogYW55O1xuICAvLyDlrZDoj5zljZVcbiAgY2hpbGRyZW46IEhlYWRlclRvcGljW107XG4gIC8vIOaPj+i/sFxuICBpbnRybzogc3RyaW5nO1xuICAvLyBrZXlcbiAga2V5OiBzdHJpbmc7XG4gIC8vIOWQjeensFxuICBuYW1lOiBzdHJpbmc7XG4gIC8vIOaJk+W8gOaWueW8j1xuICB0YXJnZXQ6IHN0cmluZztcbiAgLy8g5piv5ZCm5pyJ5p2D6ZmQ5omT5byAXG4gIGF1dGg6IGJvb2xlYW47XG4gIC8vIOi3r+W+hFxuICB1cmw6IHN0cmluZztcbiAgLy8g54mI5pysXG4gIHZlcnNpb246IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneXotaGVhZGVyLWFwcGxpY2F0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8IS0tICAgICAgdGVtcGxhdGUgc3RhcnQtLT5cbiAgICA8bmctdGVtcGxhdGUgI3NlYXJjaD5cbiAgICAgIDxkaXYgbnotcm93IGNsYXNzPVwieXotYXBwbGljYXRpb24tbGlzdC1zZWFyY2hcIj5cbiAgICAgICAgPG56LWlucHV0LWdyb3VwIFtuelByZWZpeF09XCJwcmVmaXhUZW1wbGF0ZVwiPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgbnotaW5wdXRcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ2FwcGxpY2F0aW9uLnNlYXJjaCcgfCBpMThuIH19XCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVmFsdWVcIlxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25TZWFyY2goKVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3ByZWZpeFRlbXBsYXRlPlxuICAgICAgICAgICAgPGkgbnotaWNvbiBuelR5cGU9XCJzZWFyY2hcIiBuelRoZW1lPVwib3V0bGluZVwiPjwvaT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L256LWlucHV0LWdyb3VwPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2xkPlxuICAgICAgPGRpdiBjbGFzcz1cInl6LWFwcGxpY2F0aW9uLWxpc3RcIj5cbiAgICAgICAgPHVsPlxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZCBvZiBsaXN0RGF0YVwiPlxuICAgICAgICAgICAgPGg1Pnt7IGQubmFtZSB9fTwvaDU+XG4gICAgICAgICAgICA8YSBocmVmPVwiamF2YXNjcmlwdDo7XCIgKm5nRm9yPVwibGV0IGNkIG9mIGQuY2hpbGRyZW5cIiAoY2xpY2spPVwib3BlbihjZClcIj57eyBjZC5uYW1lIH19PC9hPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwhLS0gICAgICB0ZW1wbGF0ZSBlbmQtLT5cblxuICAgIDwhLS0gICAgICBidXR0b24gc3RhcnQtLT5cbiAgICA8ZGl2IGNsYXNzPVwieXVuemFpLWRlZmF1bHRfX25hdi1pdGVtXCIgKGNsaWNrKT1cImRpZmZDaGFuZ2UoKVwiPiB7eyAnYXBwbGljYXRpb24uYnV0dG9uJyB8IGkxOG4gfX08L2Rpdj5cbiAgICA8IS0tICAgICAgYnV0dG9uIGVuZC0tPlxuXG4gICAgPCEtLSAgICAgIGhlYWRlciBzdGFydC0tPlxuICAgIDxkaXYgY2xhc3M9XCJ5ei1hcHBsaWNhdGlvblwiIG56LXJvdyAqbmdJZj1cImFjdGl2ZVwiPlxuICAgICAgPGRpdiBuei1jb2wgW256U3Bhbl09XCIzXCIgY2xhc3M9XCJ5ei1hcHBsaWNhdGlvbi10b3BpY1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwieXotYXBwbGljYXRpb24tdGV4dFwiIChjbGljayk9XCJmdWxsKClcIj57eyAnYXBwbGljYXRpb24uYWxsJyB8IGkxOG4gfX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInl6LWFwcGxpY2F0aW9uLXRleHRcIiAoY2xpY2spPVwib3duKClcIj57eyAnYXBwbGljYXRpb24ubWluZScgfCBpMThuIH19PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ5ei1hcHBsaWNhdGlvbi10ZXh0XCIgKm5nRm9yPVwibGV0IGQgb2YgdG9waWNEYXRhXCIgKGNsaWNrKT1cImV2ZXJ5KGQpXCI+XG4gICAgICAgICAge3sgZC5uYW1lIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IG56LWNvbCBbbnpTcGFuXT1cIjIxXCIgW25nU3dpdGNoXT1cInRvcGljXCIgY2xhc3M9XCJ5ei1hcHBsaWNhdGlvbi1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiVC5GVUxMXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNlYXJjaFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxkXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIlQuT1dOXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNlYXJjaFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxkXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIlQuRVZFUllcIiBjbGFzcz1cInl6LWFwcGxpY2F0aW9uLWxpc3RcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwieXotYXBwbGljYXRpb24tbGlzdC1pdGVtXCI+XG4gICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZCBvZiBsaXN0RGF0YVwiIChjbGljayk9XCJvcGVuKGQpXCI+XG4gICAgICAgICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6O1wiPlxuICAgICAgICAgICAgICAgICAgPGg0Pnt7IGQubmFtZSB9fTwvaDQ+XG4gICAgICAgICAgICAgICAgICA8cD57eyBkLmludHJvIH19PC9wPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSAgICAgIGhlYWRlciBlbmQtLT5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgWXpIZWFkZXJBcHBsaWNhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgVCA9IFRPUElDO1xuICBhY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgdG9waWNEYXRhOiBIZWFkZXJUb3BpY1tdID0gW107XG4gIGxpc3REYXRhOiBIZWFkZXJUb3BpY1tdID0gW107XG4gIHRvcGljOiBUT1BJQyA9IFRPUElDLkZVTEw7XG4gIGNob29zZWQ6IEhlYWRlclRvcGljIHwgdW5kZWZpbmVkO1xuICBzZWFyY2hWYWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHN1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBpbmplY3Q6IEluamVjdG9yLFxuICAgIHByaXZhdGUgY2FjaGVTZXJ2aWNlOiBDYWNoZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpMThuOiBZekkxOE5TZXJ2aWNlLFxuICAgIHByaXZhdGUgaHR0cDogX0h0dHBDbGllbnRcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudG9waWNEYXRhID0gdGhpcy5jYWNoZVNlcnZpY2UuZ2V0KCdfeXpfaGVhZGVyJywgeyBtb2RlOiAnbm9uZScgfSk7XG4gICAgdGhpcy5saXN0RGF0YSA9IHRoaXMuY2FjaGVTZXJ2aWNlLmdldCgnX3l6X2hlYWRlcicsIHsgbW9kZTogJ25vbmUnIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzLmZvckVhY2goZiA9PiBmLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgZGlmZkNoYW5nZShmbGFnPzogYm9vbGVhbikge1xuICAgIGlmIChmbGFnKSB7XG4gICAgICB0aGlzLmFjdGl2ZSA9IGZsYWc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWN0aXZlID0gIXRoaXMuYWN0aXZlO1xuICAgIH1cbiAgfVxuXG4gIGluaXRUb3BpYyh0b3BpYzogVE9QSUMpIHtcbiAgICB0aGlzLnNlYXJjaFZhbHVlID0gbnVsbDtcbiAgICB0aGlzLmxpc3REYXRhID0gdGhpcy5jYWNoZVNlcnZpY2UuZ2V0KCdfeXpfaGVhZGVyJywgeyBtb2RlOiAnbm9uZScgfSk7XG4gICAgdGhpcy50b3BpYyA9IHRvcGljO1xuICB9XG5cbiAgZnVsbCgpIHtcbiAgICB0aGlzLmluaXRUb3BpYyhUT1BJQy5GVUxMKTtcbiAgfVxuXG4gIG93bigpIHtcbiAgICB0aGlzLmluaXRUb3BpYyhUT1BJQy5PV04pO1xuICAgIGNvbnN0IHRlbXA6IEhlYWRlclRvcGljW10gPSB0aGlzLmNhY2hlU2VydmljZS5nZXQoJ195el9oZWFkZXInLCB7IG1vZGU6ICdub25lJyB9KTtcbiAgICB0aGlzLmxpc3REYXRhID0gdGVtcFxuICAgICAgLmZpbHRlcigodG9waWM6IEhlYWRlclRvcGljKSA9PiB7XG4gICAgICAgIHRvcGljLmNoaWxkcmVuID0gdG9waWMuY2hpbGRyZW4uZmlsdGVyKChjaGlsZDogSGVhZGVyVG9waWMpID0+IHtcbiAgICAgICAgICByZXR1cm4gY2hpbGQuYXV0aDtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0b3BpYztcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKCh0b3BpYzogSGVhZGVyVG9waWMpID0+IHtcbiAgICAgICAgcmV0dXJuIHRvcGljLmNoaWxkcmVuLmxlbmd0aCA+IDA7XG4gICAgICB9KTtcbiAgfVxuXG4gIGV2ZXJ5KGU6IEhlYWRlclRvcGljKSB7XG4gICAgdGhpcy5pbml0VG9waWMoVE9QSUMuRVZFUlkpO1xuICAgIHRoaXMuY2hvb3NlZCA9IGU7XG4gICAgY29uc3QgdGVtcDogSGVhZGVyVG9waWNbXSA9IHRoaXMuY2FjaGVTZXJ2aWNlLmdldCgnX3l6X2hlYWRlcicsIHsgbW9kZTogJ25vbmUnIH0pO1xuICAgIHRoaXMubGlzdERhdGEgPSBbLi4udGVtcC5maWx0ZXIodCA9PiB0LmtleSA9PT0gZS5rZXkpWzBdLmNoaWxkcmVuXTtcbiAgfVxuXG4gIG9uU2VhcmNoKCkge1xuICAgIGNvbnN0IHRlbXA6IEhlYWRlclRvcGljW10gPSB0aGlzLmNhY2hlU2VydmljZS5nZXQoJ195el9oZWFkZXInLCB7IG1vZGU6ICdub25lJyB9KTtcbiAgICAvLyDlpoLmnpzmkJzntKLovpPlhaXnmoTmnInlgLxcbiAgICBpZiAodGhpcy5zZWFyY2hWYWx1ZSkge1xuICAgICAgLy8g6L+H5ruk6I+c5Y2V6L+H5ruk5Ye65pCc57Si55qE5YC8XG4gICAgICB0aGlzLmxpc3REYXRhID0gdGVtcFxuICAgICAgICAuZmlsdGVyKCh0b3BpYzogSGVhZGVyVG9waWMpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5pMThuLmZhbnlpKHRvcGljLm5hbWUpLmluY2x1ZGVzKHRoaXMuc2VhcmNoVmFsdWUhKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRvcGljO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0b3BpYy5jaGlsZHJlbiA9IHRvcGljLmNoaWxkcmVuLmZpbHRlcigoY2hpbGQ6IEhlYWRlclRvcGljKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmkxOG4uZmFueWkoY2hpbGQubmFtZSkuaW5jbHVkZXModGhpcy5zZWFyY2hWYWx1ZSEpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gdG9waWM7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAuZmlsdGVyKCh0b3BpYzogSGVhZGVyVG9waWMpID0+IHtcbiAgICAgICAgICByZXR1cm4gdG9waWMuY2hpbGRyZW4ubGVuZ3RoID4gMDtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIOWmguaenOayoeacieWAvCzlj5bmtojmkJzntKJcbiAgICAgIHRoaXMubGlzdERhdGEgPSB0aGlzLmNhY2hlU2VydmljZS5nZXQoJ195el9oZWFkZXInLCB7IG1vZGU6ICdub25lJyB9KTtcbiAgICB9XG4gIH1cblxuICBvcGVuKHRvcGljOiBIZWFkZXJUb3BpYykge1xuICAgIGlmICh0b3BpYy5rZXkpIHtcbiAgICAgIHRoaXMuc3Vicy5wdXNoKFxuICAgICAgICB0aGlzLmh0dHBcbiAgICAgICAgICAucG9zdChgL2FwcC1tYW5hZ2VyL3dlYi1zY2FuL3NhdmVgLCB7XG4gICAgICAgICAgICBhcHBJZDogdG9waWMua2V5LFxuICAgICAgICAgICAgY3JlYXRlRGF0ZTogbmV3IERhdGUoKVxuICAgICAgICAgIH0pXG4gICAgICAgICAgLnN1YnNjcmliZSgpXG4gICAgICApO1xuICAgIH1cbiAgICBzd2l0Y2ggKHRvcGljLnRhcmdldCkge1xuICAgICAgY2FzZSAnaHJlZic6XG4gICAgICAgIHRoaXMuaW5qZWN0LmdldChXSU5ET1cpLmxvY2F0aW9uLmhyZWYgPSB0b3BpYy51cmw7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmxhbmsnOlxuICAgICAgICB0aGlzLmluamVjdC5nZXQoV0lORE9XKS5sb2NhdGlvbi5ocmVmID0gdG9waWMudXJsO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3RhcmdldCc6XG4gICAgICAgIHRoaXMuaW5qZWN0LmdldChXSU5ET1cpLmxvY2F0aW9uLmhyZWYgPSB0b3BpYy51cmw7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5pbmplY3QuZ2V0KFdJTkRPVykubG9jYXRpb24uaHJlZiA9IHRvcGljLnVybDtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, HostListener } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ng-zorro-antd/modal";
|
|
4
|
+
import * as i2 from "ng-zorro-antd/message";
|
|
5
|
+
import * as i3 from "ng-zorro-antd/core/transition-patch";
|
|
6
|
+
import * as i4 from "ng-zorro-antd/icon";
|
|
7
|
+
import * as i5 from "@yelon/theme";
|
|
8
|
+
export class YzHeaderClearStorageComponent {
|
|
9
|
+
constructor(modalSrv, messageSrv) {
|
|
10
|
+
this.modalSrv = modalSrv;
|
|
11
|
+
this.messageSrv = messageSrv;
|
|
12
|
+
}
|
|
13
|
+
_click() {
|
|
14
|
+
this.modalSrv.confirm({
|
|
15
|
+
nzTitle: 'Make sure clear all local storage?',
|
|
16
|
+
nzOnOk: () => {
|
|
17
|
+
localStorage.clear();
|
|
18
|
+
this.messageSrv.success('Clear Finished!');
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
YzHeaderClearStorageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderClearStorageComponent, deps: [{ token: i1.NzModalService }, { token: i2.NzMessageService }], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
YzHeaderClearStorageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: YzHeaderClearStorageComponent, selector: "yz-header-clear-storage", host: { listeners: { "click": "_click()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: `
|
|
25
|
+
<i nz-icon nzType="tool"></i>
|
|
26
|
+
{{ 'menu.clear.local.storage' | i18n }}
|
|
27
|
+
`, isInline: true, directives: [{ 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"] }, { type: i4.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], pipes: { "i18n": i5.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderClearStorageComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{
|
|
31
|
+
selector: 'yz-header-clear-storage',
|
|
32
|
+
template: `
|
|
33
|
+
<i nz-icon nzType="tool"></i>
|
|
34
|
+
{{ 'menu.clear.local.storage' | i18n }}
|
|
35
|
+
`,
|
|
36
|
+
host: {
|
|
37
|
+
'[class.d-block]': 'true'
|
|
38
|
+
},
|
|
39
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: function () { return [{ type: i1.NzModalService }, { type: i2.NzMessageService }]; }, propDecorators: { _click: [{
|
|
42
|
+
type: HostListener,
|
|
43
|
+
args: ['click']
|
|
44
|
+
}] } });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXouY2xlYXItc3RvcmFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iaXMvbGF5b3V0L3dpZGdldHMveXouY2xlYXItc3RvcmFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFnQmpGLE1BQU0sT0FBTyw2QkFBNkI7SUFDeEMsWUFBb0IsUUFBd0IsRUFBVSxVQUE0QjtRQUE5RCxhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUFVLGVBQVUsR0FBVixVQUFVLENBQWtCO0lBQUcsQ0FBQztJQUd0RixNQUFNO1FBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFDcEIsT0FBTyxFQUFFLG9DQUFvQztZQUM3QyxNQUFNLEVBQUUsR0FBRyxFQUFFO2dCQUNYLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUM3QyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEhBWlUsNkJBQTZCOzhHQUE3Qiw2QkFBNkIsc0pBVDlCOzs7R0FHVDsyRkFNVSw2QkFBNkI7a0JBWHpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsUUFBUSxFQUFFOzs7R0FHVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osaUJBQWlCLEVBQUUsTUFBTTtxQkFDMUI7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO29JQUtDLE1BQU07c0JBREwsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE56TWVzc2FnZVNlcnZpY2UgfSBmcm9tICduZy16b3Jyby1hbnRkL21lc3NhZ2UnO1xuaW1wb3J0IHsgTnpNb2RhbFNlcnZpY2UgfSBmcm9tICduZy16b3Jyby1hbnRkL21vZGFsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneXotaGVhZGVyLWNsZWFyLXN0b3JhZ2UnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpIG56LWljb24gbnpUeXBlPVwidG9vbFwiPjwvaT5cbiAgICB7eyAnbWVudS5jbGVhci5sb2NhbC5zdG9yYWdlJyB8IGkxOG4gfX1cbiAgYCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZC1ibG9ja10nOiAndHJ1ZSdcbiAgfSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgWXpIZWFkZXJDbGVhclN0b3JhZ2VDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vZGFsU3J2OiBOek1vZGFsU2VydmljZSwgcHJpdmF0ZSBtZXNzYWdlU3J2OiBOek1lc3NhZ2VTZXJ2aWNlKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgX2NsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMubW9kYWxTcnYuY29uZmlybSh7XG4gICAgICBuelRpdGxlOiAnTWFrZSBzdXJlIGNsZWFyIGFsbCBsb2NhbCBzdG9yYWdlPycsXG4gICAgICBuek9uT2s6ICgpID0+IHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLmNsZWFyKCk7XG4gICAgICAgIHRoaXMubWVzc2FnZVNydi5zdWNjZXNzKCdDbGVhciBGaW5pc2hlZCEnKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, HostListener } from '@angular/core';
|
|
2
|
+
import screenfull from 'screenfull';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "ng-zorro-antd/core/transition-patch";
|
|
5
|
+
import * as i2 from "ng-zorro-antd/icon";
|
|
6
|
+
import * as i3 from "@yelon/theme";
|
|
7
|
+
export class YzHeaderFullScreenComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.status = false;
|
|
10
|
+
}
|
|
11
|
+
_resize() {
|
|
12
|
+
this.status = screenfull.isFullscreen;
|
|
13
|
+
}
|
|
14
|
+
_click() {
|
|
15
|
+
if (screenfull.isEnabled) {
|
|
16
|
+
screenfull.toggle();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
YzHeaderFullScreenComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderFullScreenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
YzHeaderFullScreenComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: YzHeaderFullScreenComponent, selector: "yz-header-fullscreen", host: { listeners: { "window:resize": "_resize()", "click": "_click()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: `
|
|
22
|
+
<i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
|
|
23
|
+
{{ (status ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
|
|
24
|
+
`, isInline: true, directives: [{ type: i1.ɵ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"] }, { type: i2.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], pipes: { "i18n": i3.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderFullScreenComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{
|
|
28
|
+
selector: 'yz-header-fullscreen',
|
|
29
|
+
template: `
|
|
30
|
+
<i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
|
|
31
|
+
{{ (status ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
|
|
32
|
+
`,
|
|
33
|
+
host: {
|
|
34
|
+
'[class.d-block]': 'true'
|
|
35
|
+
},
|
|
36
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
37
|
+
}]
|
|
38
|
+
}], propDecorators: { _resize: [{
|
|
39
|
+
type: HostListener,
|
|
40
|
+
args: ['window:resize']
|
|
41
|
+
}], _click: [{
|
|
42
|
+
type: HostListener,
|
|
43
|
+
args: ['click']
|
|
44
|
+
}] } });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXouZnVsbHNjcmVlbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iaXMvbGF5b3V0L3dpZGdldHMveXouZnVsbHNjcmVlbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakYsT0FBTyxVQUFVLE1BQU0sWUFBWSxDQUFDOzs7OztBQWFwQyxNQUFNLE9BQU8sMkJBQTJCO0lBWHhDO1FBWUUsV0FBTSxHQUFHLEtBQUssQ0FBQztLQWFoQjtJQVZDLE9BQU87UUFDTCxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUM7SUFDeEMsQ0FBQztJQUdELE1BQU07UUFDSixJQUFJLFVBQVUsQ0FBQyxTQUFTLEVBQUU7WUFDeEIsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQzs7d0hBYlUsMkJBQTJCOzRHQUEzQiwyQkFBMkIsaUxBVDVCOzs7R0FHVDsyRkFNVSwyQkFBMkI7a0JBWHZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFOzs7R0FHVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osaUJBQWlCLEVBQUUsTUFBTTtxQkFDMUI7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzhCQUtDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxlQUFlO2dCQU03QixNQUFNO3NCQURMLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgc2NyZWVuZnVsbCBmcm9tICdzY3JlZW5mdWxsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneXotaGVhZGVyLWZ1bGxzY3JlZW4nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpIG56LWljb24gW256VHlwZV09XCJzdGF0dXMgPyAnZnVsbHNjcmVlbi1leGl0JyA6ICdmdWxsc2NyZWVuJ1wiPjwvaT5cbiAgICB7eyAoc3RhdHVzID8gJ21lbnUuZnVsbHNjcmVlbi5leGl0JyA6ICdtZW51LmZ1bGxzY3JlZW4nKSB8IGkxOG4gfX1cbiAgYCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZC1ibG9ja10nOiAndHJ1ZSdcbiAgfSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgWXpIZWFkZXJGdWxsU2NyZWVuQ29tcG9uZW50IHtcbiAgc3RhdHVzID0gZmFsc2U7XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXG4gIF9yZXNpemUoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0dXMgPSBzY3JlZW5mdWxsLmlzRnVsbHNjcmVlbjtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgX2NsaWNrKCk6IHZvaWQge1xuICAgIGlmIChzY3JlZW5mdWxsLmlzRW5hYmxlZCkge1xuICAgICAgc2NyZWVuZnVsbC50b2dnbGUoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { DOCUMENT } from '@angular/common';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core';
|
|
4
|
+
import { YUNZAI_I18N_TOKEN } from '@yelon/theme';
|
|
5
|
+
import { InputBoolean } from '@yelon/util/decorator';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@yelon/theme";
|
|
8
|
+
import * as i2 from "ng-zorro-antd/dropdown";
|
|
9
|
+
import * as i3 from "@angular/common";
|
|
10
|
+
import * as i4 from "ng-zorro-antd/core/transition-patch";
|
|
11
|
+
import * as i5 from "ng-zorro-antd/icon";
|
|
12
|
+
import * as i6 from "ng-zorro-antd/menu";
|
|
13
|
+
import * as i7 from "../yz.i18n.service";
|
|
14
|
+
export class YzHeaderI18NComponent {
|
|
15
|
+
constructor(settings, i18n, doc) {
|
|
16
|
+
this.settings = settings;
|
|
17
|
+
this.i18n = i18n;
|
|
18
|
+
this.doc = doc;
|
|
19
|
+
/** Whether to display language text */
|
|
20
|
+
this.showLangText = true;
|
|
21
|
+
}
|
|
22
|
+
get langs() {
|
|
23
|
+
return this.i18n.getLangs();
|
|
24
|
+
}
|
|
25
|
+
get curLangCode() {
|
|
26
|
+
return this.settings.layout.lang;
|
|
27
|
+
}
|
|
28
|
+
change(lang) {
|
|
29
|
+
const spinEl = this.doc.createElement('div');
|
|
30
|
+
spinEl.setAttribute('class', `page-loading ant-spin ant-spin-lg ant-spin-spinning`);
|
|
31
|
+
spinEl.innerHTML = `<span class="ant-spin-dot ant-spin-dot-spin"><i></i><i></i><i></i><i></i></span>`;
|
|
32
|
+
this.doc.body.appendChild(spinEl);
|
|
33
|
+
this.i18n.loadLangData(lang).subscribe(res => {
|
|
34
|
+
this.i18n.use(lang, res);
|
|
35
|
+
this.settings.setLayout('lang', lang);
|
|
36
|
+
setTimeout(() => this.doc.location.reload());
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
YzHeaderI18NComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderI18NComponent, deps: [{ token: i1.SettingsService }, { token: YUNZAI_I18N_TOKEN }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
+
YzHeaderI18NComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: YzHeaderI18NComponent, selector: "yz-header-i18n", inputs: { showLangText: "showLangText" }, ngImport: i0, template: `
|
|
42
|
+
<div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
|
|
43
|
+
<i nz-icon nzType="global"></i>
|
|
44
|
+
{{ 'menu.lang' | i18n }}
|
|
45
|
+
<i nz-icon nzType="down"></i>
|
|
46
|
+
</div>
|
|
47
|
+
<i
|
|
48
|
+
*ngIf="!showLangText"
|
|
49
|
+
nz-dropdown
|
|
50
|
+
[nzDropdownMenu]="langMenu"
|
|
51
|
+
nzPlacement="bottomRight"
|
|
52
|
+
nz-icon
|
|
53
|
+
nzType="global"
|
|
54
|
+
></i>
|
|
55
|
+
<nz-dropdown-menu #langMenu="nzDropdownMenu">
|
|
56
|
+
<ul nz-menu>
|
|
57
|
+
<li
|
|
58
|
+
nz-menu-item
|
|
59
|
+
*ngFor="let item of langs"
|
|
60
|
+
[nzSelected]="item.code === curLangCode"
|
|
61
|
+
(click)="change(item.code)"
|
|
62
|
+
>
|
|
63
|
+
<span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
|
|
64
|
+
{{ item.text }}
|
|
65
|
+
</li>
|
|
66
|
+
</ul>
|
|
67
|
+
</nz-dropdown-menu>
|
|
68
|
+
`, isInline: true, components: [{ type: i2.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { type: i4.ɵ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"] }, { type: i5.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { type: i6.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NzMenuItemDirective, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }], pipes: { "i18n": i1.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
69
|
+
__decorate([
|
|
70
|
+
InputBoolean()
|
|
71
|
+
], YzHeaderI18NComponent.prototype, "showLangText", void 0);
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: YzHeaderI18NComponent, decorators: [{
|
|
73
|
+
type: Component,
|
|
74
|
+
args: [{
|
|
75
|
+
selector: 'yz-header-i18n',
|
|
76
|
+
template: `
|
|
77
|
+
<div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
|
|
78
|
+
<i nz-icon nzType="global"></i>
|
|
79
|
+
{{ 'menu.lang' | i18n }}
|
|
80
|
+
<i nz-icon nzType="down"></i>
|
|
81
|
+
</div>
|
|
82
|
+
<i
|
|
83
|
+
*ngIf="!showLangText"
|
|
84
|
+
nz-dropdown
|
|
85
|
+
[nzDropdownMenu]="langMenu"
|
|
86
|
+
nzPlacement="bottomRight"
|
|
87
|
+
nz-icon
|
|
88
|
+
nzType="global"
|
|
89
|
+
></i>
|
|
90
|
+
<nz-dropdown-menu #langMenu="nzDropdownMenu">
|
|
91
|
+
<ul nz-menu>
|
|
92
|
+
<li
|
|
93
|
+
nz-menu-item
|
|
94
|
+
*ngFor="let item of langs"
|
|
95
|
+
[nzSelected]="item.code === curLangCode"
|
|
96
|
+
(click)="change(item.code)"
|
|
97
|
+
>
|
|
98
|
+
<span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
|
|
99
|
+
{{ item.text }}
|
|
100
|
+
</li>
|
|
101
|
+
</ul>
|
|
102
|
+
</nz-dropdown-menu>
|
|
103
|
+
`,
|
|
104
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
105
|
+
}]
|
|
106
|
+
}], ctorParameters: function () { return [{ type: i1.SettingsService }, { type: i7.YzI18NService, decorators: [{
|
|
107
|
+
type: Inject,
|
|
108
|
+
args: [YUNZAI_I18N_TOKEN]
|
|
109
|
+
}] }, { type: undefined, decorators: [{
|
|
110
|
+
type: Inject,
|
|
111
|
+
args: [DOCUMENT]
|
|
112
|
+
}] }]; }, propDecorators: { showLangText: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}] } });
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXouaTE4bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iaXMvbGF5b3V0L3dpZGdldHMveXouaTE4bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLGlCQUFpQixFQUFtQixNQUFNLGNBQWMsQ0FBQztBQUNsRSxPQUFPLEVBQWdCLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7QUFvQ25FLE1BQU0sT0FBTyxxQkFBcUI7SUFhaEMsWUFDVSxRQUF5QixFQUNFLElBQW1CLEVBQzVCLEdBQVE7UUFGMUIsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDRSxTQUFJLEdBQUosSUFBSSxDQUFlO1FBQzVCLFFBQUcsR0FBSCxHQUFHLENBQUs7UUFkcEMsdUNBQXVDO1FBQ2QsaUJBQVksR0FBRyxJQUFJLENBQUM7SUFjMUMsQ0FBQztJQVpKLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDbkMsQ0FBQztJQVFELE1BQU0sQ0FBQyxJQUFZO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdDLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLHFEQUFxRCxDQUFDLENBQUM7UUFDcEYsTUFBTSxDQUFDLFNBQVMsR0FBRyxrRkFBa0YsQ0FBQztRQUN0RyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDdEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztrSEE5QlUscUJBQXFCLGlEQWV0QixpQkFBaUIsYUFDakIsUUFBUTtzR0FoQlAscUJBQXFCLGdHQTlCdEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJCVDtBQU13QjtJQUFmLFlBQVksRUFBRTsyREFBcUI7MkZBSGxDLHFCQUFxQjtrQkFoQ2pDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQlQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzswQkFnQkksTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLFFBQVE7NENBYk8sWUFBWTtzQkFBcEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgWVVOWkFJX0kxOE5fVE9LRU4sIFNldHRpbmdzU2VydmljZSB9IGZyb20gJ0B5ZWxvbi90aGVtZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIElucHV0Qm9vbGVhbiB9IGZyb20gJ0B5ZWxvbi91dGlsL2RlY29yYXRvcic7XG5cbmltcG9ydCB7IFl6STE4TlNlcnZpY2UgfSBmcm9tICcuLi95ei5pMThuLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd5ei1oZWFkZXItaTE4bicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiAqbmdJZj1cInNob3dMYW5nVGV4dFwiIG56LWRyb3Bkb3duIFtuekRyb3Bkb3duTWVudV09XCJsYW5nTWVudVwiIG56UGxhY2VtZW50PVwiYm90dG9tUmlnaHRcIj5cbiAgICAgIDxpIG56LWljb24gbnpUeXBlPVwiZ2xvYmFsXCI+PC9pPlxuICAgICAge3sgJ21lbnUubGFuZycgfCBpMThuIH19XG4gICAgICA8aSBuei1pY29uIG56VHlwZT1cImRvd25cIj48L2k+XG4gICAgPC9kaXY+XG4gICAgPGlcbiAgICAgICpuZ0lmPVwiIXNob3dMYW5nVGV4dFwiXG4gICAgICBuei1kcm9wZG93blxuICAgICAgW256RHJvcGRvd25NZW51XT1cImxhbmdNZW51XCJcbiAgICAgIG56UGxhY2VtZW50PVwiYm90dG9tUmlnaHRcIlxuICAgICAgbnotaWNvblxuICAgICAgbnpUeXBlPVwiZ2xvYmFsXCJcbiAgICA+PC9pPlxuICAgIDxuei1kcm9wZG93bi1tZW51ICNsYW5nTWVudT1cIm56RHJvcGRvd25NZW51XCI+XG4gICAgICA8dWwgbnotbWVudT5cbiAgICAgICAgPGxpXG4gICAgICAgICAgbnotbWVudS1pdGVtXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGFuZ3NcIlxuICAgICAgICAgIFtuelNlbGVjdGVkXT1cIml0ZW0uY29kZSA9PT0gY3VyTGFuZ0NvZGVcIlxuICAgICAgICAgIChjbGljayk9XCJjaGFuZ2UoaXRlbS5jb2RlKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiByb2xlPVwiaW1nXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtLnRleHRcIiBjbGFzcz1cInByLXhzXCI+e3sgaXRlbS5hYmJyIH19PC9zcGFuPlxuICAgICAgICAgIHt7IGl0ZW0udGV4dCB9fVxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L256LWRyb3Bkb3duLW1lbnU+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFl6SGVhZGVySTE4TkNvbXBvbmVudCB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zaG93TGFuZ1RleHQ6IEJvb2xlYW5JbnB1dDtcbiAgLyoqIFdoZXRoZXIgdG8gZGlzcGxheSBsYW5ndWFnZSB0ZXh0ICovXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzaG93TGFuZ1RleHQgPSB0cnVlO1xuXG4gIGdldCBsYW5ncygpOiBBcnJheTx7IGNvZGU6IHN0cmluZzsgdGV4dDogc3RyaW5nOyBhYmJyOiBzdHJpbmcgfT4ge1xuICAgIHJldHVybiB0aGlzLmkxOG4uZ2V0TGFuZ3MoKTtcbiAgfVxuXG4gIGdldCBjdXJMYW5nQ29kZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnNldHRpbmdzLmxheW91dC5sYW5nO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZXR0aW5nczogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIEBJbmplY3QoWVVOWkFJX0kxOE5fVE9LRU4pIHByaXZhdGUgaTE4bjogWXpJMThOU2VydmljZSxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvYzogYW55XG4gICkge31cblxuICBjaGFuZ2UobGFuZzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc3BpbkVsID0gdGhpcy5kb2MuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgc3BpbkVsLnNldEF0dHJpYnV0ZSgnY2xhc3MnLCBgcGFnZS1sb2FkaW5nIGFudC1zcGluIGFudC1zcGluLWxnIGFudC1zcGluLXNwaW5uaW5nYCk7XG4gICAgc3BpbkVsLmlubmVySFRNTCA9IGA8c3BhbiBjbGFzcz1cImFudC1zcGluLWRvdCBhbnQtc3Bpbi1kb3Qtc3BpblwiPjxpPjwvaT48aT48L2k+PGk+PC9pPjxpPjwvaT48L3NwYW4+YDtcbiAgICB0aGlzLmRvYy5ib2R5LmFwcGVuZENoaWxkKHNwaW5FbCk7XG5cbiAgICB0aGlzLmkxOG4ubG9hZExhbmdEYXRhKGxhbmcpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgdGhpcy5pMThuLnVzZShsYW5nLCByZXMpO1xuICAgICAgdGhpcy5zZXR0aW5ncy5zZXRMYXlvdXQoJ2xhbmcnLCBsYW5nKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5kb2MubG9jYXRpb24ucmVsb2FkKCkpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|