atr-components 0.2.417 → 2.0.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/atr-components.module.d.ts +9 -9
- package/atr-public-api.d.ts +53 -53
- package/core/animations/animations.d.ts +1 -1
- package/core/animations/fly-in.d.ts +1 -1
- package/core/animations/scroll-screen.d.ts +1 -1
- package/core/auth/auth.guard.d.ts +11 -11
- package/core/base/atr-common.d.ts +347 -347
- package/core/directive/error-img.directive.d.ts +10 -10
- package/core/directive/hq-spin.directive.d.ts +13 -13
- package/core/directive/role.directive.d.ts +16 -16
- package/core/interceptor/base.interceptor.d.ts +17 -17
- package/core/ngz-module/cus-zorro-antd.module.d.ts +75 -75
- package/core/pipe/china-num.pipe.d.ts +7 -7
- package/core/pipe/count.pipe.d.ts +7 -7
- package/core/pipe/day.pipe.d.ts +8 -8
- package/core/pipe/defaultVal.pipe.d.ts +7 -7
- package/core/pipe/dicts.pipe.d.ts +10 -10
- package/core/pipe/image-pipe.pipe.d.ts +8 -8
- package/core/pipe/is-empty.pipe.d.ts +7 -7
- package/core/pipe/is-not-empty.pipe.d.ts +7 -7
- package/core/pipe/oss.pipe.d.ts +7 -7
- package/core/pipe/ossStatic.pipe.d.ts +7 -7
- package/core/pipe/pipe-module.module.d.ts +21 -21
- package/core/pipe/remove-html.pipe.d.ts +10 -10
- package/core/pipe/safe-compute.pipe.d.ts +7 -7
- package/core/pipe/safe-html.pipe.d.ts +10 -10
- package/core/pipe/safe-url.pipe.d.ts +10 -10
- package/core/routereuse/atr-reuse-strategy.d.ts +19 -19
- package/core/services/dict/dict.service.d.ts +20 -20
- package/core/services/http.service.d.ts +31 -31
- package/core/services/menu.service.d.ts +29 -29
- package/core/services/upload-oss.service.d.ts +14 -14
- package/core/utils/ToolsUtil.d.ts +180 -180
- package/core/utils/localstorage.util.d.ts +15 -15
- package/core/utils/sessionstorage.util.d.ts +15 -15
- package/{esm2020 → esm2022}/atr-components.mjs +4 -4
- package/esm2022/atr-components.module.mjs +36 -0
- package/{esm2020 → esm2022}/atr-public-api.mjs +54 -54
- package/{esm2020 → esm2022}/core/animations/animations.mjs +9 -9
- package/{esm2020 → esm2022}/core/animations/fly-in.mjs +18 -18
- package/{esm2020 → esm2022}/core/animations/scroll-screen.mjs +22 -22
- package/{esm2020 → esm2022}/core/auth/auth.guard.mjs +37 -37
- package/esm2022/core/base/atr-common.mjs +47 -0
- package/{esm2020 → esm2022}/core/directive/error-img.directive.mjs +31 -31
- package/{esm2020 → esm2022}/core/directive/hq-spin.directive.mjs +48 -48
- package/esm2022/core/directive/role.directive.mjs +69 -0
- package/{esm2020 → esm2022}/core/interceptor/base.interceptor.mjs +165 -165
- package/{esm2020 → esm2022}/core/ngz-module/cus-zorro-antd.module.mjs +292 -292
- package/{esm2020 → esm2022}/core/pipe/china-num.pipe.mjs +36 -36
- package/{esm2020 → esm2022}/core/pipe/count.pipe.mjs +34 -34
- package/{esm2020 → esm2022}/core/pipe/day.pipe.mjs +24 -24
- package/{esm2020 → esm2022}/core/pipe/defaultVal.pipe.mjs +23 -23
- package/{esm2020 → esm2022}/core/pipe/dicts.pipe.mjs +28 -28
- package/{esm2020 → esm2022}/core/pipe/image-pipe.pipe.mjs +17 -17
- package/{esm2020 → esm2022}/core/pipe/is-empty.pipe.mjs +20 -20
- package/{esm2020 → esm2022}/core/pipe/is-not-empty.pipe.mjs +17 -17
- package/{esm2020 → esm2022}/core/pipe/oss.pipe.mjs +17 -17
- package/{esm2020 → esm2022}/core/pipe/ossStatic.pipe.mjs +17 -17
- package/esm2022/core/pipe/pipe-module.module.mjs +38 -0
- package/{esm2020 → esm2022}/core/pipe/remove-html.pipe.mjs +21 -21
- package/{esm2020 → esm2022}/core/pipe/safe-compute.pipe.mjs +23 -23
- package/{esm2020 → esm2022}/core/pipe/safe-html.pipe.mjs +20 -20
- package/{esm2020 → esm2022}/core/pipe/safe-url.pipe.mjs +20 -20
- package/esm2022/core/routereuse/atr-reuse-strategy.mjs +79 -0
- package/esm2022/core/services/dict/dict.service.mjs +152 -0
- package/{esm2020 → esm2022}/core/services/http.service.mjs +306 -306
- package/{esm2020 → esm2022}/core/services/menu.service.mjs +130 -130
- package/{esm2020 → esm2022}/core/services/upload-oss.service.mjs +74 -74
- package/esm2022/core/utils/ToolsUtil.mjs +622 -0
- package/{esm2020 → esm2022}/core/utils/localstorage.util.mjs +94 -94
- package/{esm2020 → esm2022}/core/utils/sessionstorage.util.mjs +72 -72
- package/{esm2020 → esm2022}/lib/hello/hello.component.mjs +15 -15
- package/esm2022/lib/hello/hello.module.mjs +20 -0
- package/esm2022/lib/shared/atr-shared.module.mjs +204 -0
- package/esm2022/lib/shared/echarts/echarts.component.mjs +77 -0
- package/esm2022/lib/shared/form/form.component.mjs +574 -0
- package/esm2022/lib/shared/img-canvas/img-canvas.component.mjs +132 -0
- package/esm2022/lib/shared/local-upload/local-upload.component.mjs +68 -0
- package/esm2022/lib/shared/quill-editor/quill-editor.component.mjs +248 -0
- package/esm2022/lib/shared/select-icons/select-icons.component.mjs +90 -0
- package/{esm2020 → esm2022}/lib/shared/select-tree/select-tree.component.mjs +55 -55
- package/{esm2020 → esm2022}/lib/shared/service/busi.service.mjs +69 -69
- package/{esm2020 → esm2022}/lib/shared/share.service.mjs +107 -107
- package/esm2022/lib/shared/table/table-form-item/table-form-item.component.mjs +96 -0
- package/esm2022/lib/shared/table/table-td/table-td.component.mjs +165 -0
- package/esm2022/lib/shared/table/table.component.mjs +749 -0
- package/{esm2020 → esm2022}/lib/shared/upload/upload.component.mjs +274 -274
- package/{esm2020 → esm2022}/lib/shared/validators/atr-validtors.mjs +8 -8
- package/esm2022/lib/shared/video/video.component.mjs +16 -0
- package/esm2022/lib/shared/view-form/view-form.component.mjs +181 -0
- package/{fesm2020 → fesm2022}/atr-components.mjs +5311 -5312
- package/fesm2022/atr-components.mjs.map +1 -0
- package/{atr-components.d.ts → index.d.ts} +5 -5
- package/lib/hello/hello.component.d.ts +8 -8
- package/lib/hello/hello.module.d.ts +8 -8
- package/lib/shared/atr-shared.module.d.ts +36 -33
- package/lib/shared/echarts/echarts.component.d.ts +34 -34
- package/lib/shared/form/form.component.d.ts +45 -45
- package/lib/shared/img-canvas/img-canvas.component.d.ts +28 -28
- package/lib/shared/local-upload/local-upload.component.d.ts +22 -22
- package/lib/shared/quill-editor/quill-editor.component.d.ts +45 -45
- package/lib/shared/select-icons/select-icons.component.d.ts +24 -24
- package/lib/shared/select-tree/select-tree.component.d.ts +23 -23
- package/lib/shared/service/busi.service.d.ts +20 -20
- package/lib/shared/share.service.d.ts +14 -14
- package/lib/shared/table/table-form-item/table-form-item.component.d.ts +25 -25
- package/lib/shared/table/table-td/table-td.component.d.ts +26 -26
- package/lib/shared/table/table.component.d.ts +94 -94
- package/lib/shared/upload/upload.component.d.ts +53 -53
- package/lib/shared/validators/atr-validtors.d.ts +2 -2
- package/lib/shared/video/video.component.d.ts +7 -7
- package/lib/shared/view-form/view-form.component.d.ts +28 -28
- package/package.json +14 -22
- package/esm2020/atr-components.module.mjs +0 -38
- package/esm2020/core/base/atr-common.mjs +0 -47
- package/esm2020/core/directive/role.directive.mjs +0 -69
- package/esm2020/core/pipe/pipe-module.module.mjs +0 -40
- package/esm2020/core/routereuse/atr-reuse-strategy.mjs +0 -79
- package/esm2020/core/services/dict/dict.service.mjs +0 -152
- package/esm2020/core/utils/ToolsUtil.mjs +0 -622
- package/esm2020/lib/hello/hello.module.mjs +0 -22
- package/esm2020/lib/shared/atr-shared.module.mjs +0 -199
- package/esm2020/lib/shared/echarts/echarts.component.mjs +0 -77
- package/esm2020/lib/shared/form/form.component.mjs +0 -574
- package/esm2020/lib/shared/img-canvas/img-canvas.component.mjs +0 -132
- package/esm2020/lib/shared/local-upload/local-upload.component.mjs +0 -68
- package/esm2020/lib/shared/quill-editor/quill-editor.component.mjs +0 -248
- package/esm2020/lib/shared/select-icons/select-icons.component.mjs +0 -90
- package/esm2020/lib/shared/table/table-form-item/table-form-item.component.mjs +0 -96
- package/esm2020/lib/shared/table/table-td/table-td.component.mjs +0 -165
- package/esm2020/lib/shared/table/table.component.mjs +0 -749
- package/esm2020/lib/shared/video/video.component.mjs +0 -15
- package/esm2020/lib/shared/view-form/view-form.component.mjs +0 -181
- package/fesm2015/atr-components.mjs +0 -5522
- package/fesm2015/atr-components.mjs.map +0 -1
- package/fesm2020/atr-components.mjs.map +0 -1
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
3
|
+
import { RouterModule } from '@angular/router';
|
|
4
|
+
import { AtrTableComponent } from './table/table.component';
|
|
5
|
+
import { UploadComponent } from './upload/upload.component';
|
|
6
|
+
import { AtrFormComponent } from './form/form.component';
|
|
7
|
+
import { NzResizableModule } from 'ng-zorro-antd/resizable';
|
|
8
|
+
import { registerLocaleData } from '@angular/common';
|
|
9
|
+
import zh from '@angular/common/locales/zh';
|
|
10
|
+
import { LocalUploadComponent } from './local-upload/local-upload.component';
|
|
11
|
+
import { NgModule } from "@angular/core";
|
|
12
|
+
import { SelectTreeComponent } from './select-tree/select-tree.component';
|
|
13
|
+
import { VideoComponent } from './video/video.component';
|
|
14
|
+
import { DragDropModule } from "@angular/cdk/drag-drop";
|
|
15
|
+
import { TableTdComponent } from "./table/table-td/table-td.component";
|
|
16
|
+
import { TableFormItemComponent } from "./table/table-form-item/table-form-item.component";
|
|
17
|
+
import { PipeModuleModule } from "../../core/pipe/pipe-module.module";
|
|
18
|
+
import { AtrComponentsModule } from "../../atr-components.module";
|
|
19
|
+
import { CusNgZorroAntdModule } from "../../core/ngz-module/cus-zorro-antd.module";
|
|
20
|
+
import { QuillEditorComponent } from "./quill-editor/quill-editor.component";
|
|
21
|
+
import { QuillModule } from "ngx-quill";
|
|
22
|
+
import { SelectIconsComponent } from "./select-icons/select-icons.component";
|
|
23
|
+
import { EchartsComponent } from "./echarts/echarts.component";
|
|
24
|
+
import { ViewFormComponent } from "./view-form/view-form.component";
|
|
25
|
+
import { DragulaModule } from 'ng2-dragula';
|
|
26
|
+
import { AtrRoleDirective } from "../../core/directive/role.directive";
|
|
27
|
+
import { AtrErrorImgDirective } from "../../core/directive/error-img.directive";
|
|
28
|
+
import { HqSpinDirective } from "../../core/directive/hq-spin.directive";
|
|
29
|
+
import { ImgCanvasComponent } from "./img-canvas/img-canvas.component";
|
|
30
|
+
import { VgCoreModule } from '@videogular/ngx-videogular/core';
|
|
31
|
+
import { VgControlsModule } from '@videogular/ngx-videogular/controls';
|
|
32
|
+
import { VgOverlayPlayModule } from '@videogular/ngx-videogular/overlay-play';
|
|
33
|
+
import { VgBufferingModule } from '@videogular/ngx-videogular/buffering';
|
|
34
|
+
import ResizeModule from "@ssumo/quill-resize-module";
|
|
35
|
+
import * as i0 from "@angular/core";
|
|
36
|
+
import * as i1 from "ng2-dragula";
|
|
37
|
+
import * as i2 from "ngx-quill";
|
|
38
|
+
const THIRDMODULES = [
|
|
39
|
+
CusNgZorroAntdModule,
|
|
40
|
+
NzResizableModule,
|
|
41
|
+
];
|
|
42
|
+
const SERVICE_PROVIDES = [];
|
|
43
|
+
registerLocaleData(zh);
|
|
44
|
+
// #endregion
|
|
45
|
+
// #region your componets & directives
|
|
46
|
+
const COMPONENTS = [ImgCanvasComponent, QuillEditorComponent, TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
|
|
47
|
+
SelectTreeComponent, VideoComponent, SelectIconsComponent, EchartsComponent, ViewFormComponent];
|
|
48
|
+
const DIRECTIVES = [AtrRoleDirective, AtrErrorImgDirective, HqSpinDirective,];
|
|
49
|
+
//SharedModule
|
|
50
|
+
// 应 包含定义:
|
|
51
|
+
// 应用通用自定义业务组件
|
|
52
|
+
// 应 导出所有包含的模块。
|
|
53
|
+
// 不应 有 providers 属性。
|
|
54
|
+
export class AtrSharedModule {
|
|
55
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: AtrSharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
56
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.9", ngImport: i0, type: AtrSharedModule, declarations: [ImgCanvasComponent, QuillEditorComponent, TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
|
|
57
|
+
SelectTreeComponent, VideoComponent, SelectIconsComponent, EchartsComponent, ViewFormComponent, AtrRoleDirective, AtrErrorImgDirective, HqSpinDirective], imports: [PipeModuleModule,
|
|
58
|
+
CommonModule,
|
|
59
|
+
FormsModule,
|
|
60
|
+
ReactiveFormsModule,
|
|
61
|
+
RouterModule, CusNgZorroAntdModule,
|
|
62
|
+
NzResizableModule, VgCoreModule,
|
|
63
|
+
VgControlsModule,
|
|
64
|
+
VgOverlayPlayModule,
|
|
65
|
+
VgBufferingModule,
|
|
66
|
+
DragDropModule, i1.DragulaModule, AtrComponentsModule, i2.QuillModule], exports: [DragDropModule,
|
|
67
|
+
CommonModule,
|
|
68
|
+
FormsModule,
|
|
69
|
+
ReactiveFormsModule,
|
|
70
|
+
RouterModule, CusNgZorroAntdModule,
|
|
71
|
+
NzResizableModule, ImgCanvasComponent, QuillEditorComponent, TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
|
|
72
|
+
SelectTreeComponent, VideoComponent, SelectIconsComponent, EchartsComponent, ViewFormComponent, PipeModuleModule, AtrRoleDirective, AtrErrorImgDirective, HqSpinDirective] }); }
|
|
73
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: AtrSharedModule, providers: SERVICE_PROVIDES, imports: [PipeModuleModule,
|
|
74
|
+
CommonModule,
|
|
75
|
+
FormsModule,
|
|
76
|
+
ReactiveFormsModule,
|
|
77
|
+
RouterModule, THIRDMODULES, VgCoreModule,
|
|
78
|
+
VgControlsModule,
|
|
79
|
+
VgOverlayPlayModule,
|
|
80
|
+
VgBufferingModule,
|
|
81
|
+
DragDropModule,
|
|
82
|
+
DragulaModule.forRoot(),
|
|
83
|
+
AtrComponentsModule,
|
|
84
|
+
QuillModule.forRoot({
|
|
85
|
+
customModules: [
|
|
86
|
+
{ path: 'modules/resize', implementation: ResizeModule }
|
|
87
|
+
],
|
|
88
|
+
modules: {
|
|
89
|
+
syntax: false,
|
|
90
|
+
// imageResize: {},
|
|
91
|
+
resize: {},
|
|
92
|
+
toolbar: {
|
|
93
|
+
container: [
|
|
94
|
+
['undo', 'redo'],
|
|
95
|
+
['bold', 'italic', 'underline'],
|
|
96
|
+
// ['code-block'], // blockquote
|
|
97
|
+
// [{ header: 1 }, { header: 2 }], // custom button values
|
|
98
|
+
[{ list: 'ordered' }, { list: 'bullet' }],
|
|
99
|
+
// [{ script: 'sub' }, { script: 'super' }], // superscript/subscript
|
|
100
|
+
[{ indent: '-1' }, { indent: '+1' }],
|
|
101
|
+
// [{ direction: 'rtl' }], // text direction
|
|
102
|
+
// [{ size: ['small', false, 'large', 'huge'] }], // custom dropdown
|
|
103
|
+
[{ header: [1, 2, 3, 4, 5, 6, false] }],
|
|
104
|
+
[{ color: [] }, { background: [] }],
|
|
105
|
+
// [{ font: [] }],
|
|
106
|
+
[{ align: [] }],
|
|
107
|
+
['clean'],
|
|
108
|
+
['image'], // link and image, video
|
|
109
|
+
],
|
|
110
|
+
handlers: {
|
|
111
|
+
redo() {
|
|
112
|
+
this['quill'].history.redo();
|
|
113
|
+
},
|
|
114
|
+
undo() {
|
|
115
|
+
this['quill'].history.undo();
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}), DragDropModule,
|
|
121
|
+
CommonModule,
|
|
122
|
+
FormsModule,
|
|
123
|
+
ReactiveFormsModule,
|
|
124
|
+
RouterModule, CusNgZorroAntdModule,
|
|
125
|
+
NzResizableModule, PipeModuleModule] }); }
|
|
126
|
+
}
|
|
127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: AtrSharedModule, decorators: [{
|
|
128
|
+
type: NgModule,
|
|
129
|
+
args: [{
|
|
130
|
+
imports: [
|
|
131
|
+
PipeModuleModule,
|
|
132
|
+
CommonModule,
|
|
133
|
+
FormsModule,
|
|
134
|
+
ReactiveFormsModule,
|
|
135
|
+
RouterModule,
|
|
136
|
+
// third libs
|
|
137
|
+
...THIRDMODULES,
|
|
138
|
+
VgCoreModule,
|
|
139
|
+
VgControlsModule,
|
|
140
|
+
VgOverlayPlayModule,
|
|
141
|
+
VgBufferingModule,
|
|
142
|
+
DragDropModule,
|
|
143
|
+
DragulaModule.forRoot(),
|
|
144
|
+
AtrComponentsModule,
|
|
145
|
+
QuillModule.forRoot({
|
|
146
|
+
customModules: [
|
|
147
|
+
{ path: 'modules/resize', implementation: ResizeModule }
|
|
148
|
+
],
|
|
149
|
+
modules: {
|
|
150
|
+
syntax: false,
|
|
151
|
+
// imageResize: {},
|
|
152
|
+
resize: {},
|
|
153
|
+
toolbar: {
|
|
154
|
+
container: [
|
|
155
|
+
['undo', 'redo'],
|
|
156
|
+
['bold', 'italic', 'underline'],
|
|
157
|
+
// ['code-block'], // blockquote
|
|
158
|
+
// [{ header: 1 }, { header: 2 }], // custom button values
|
|
159
|
+
[{ list: 'ordered' }, { list: 'bullet' }],
|
|
160
|
+
// [{ script: 'sub' }, { script: 'super' }], // superscript/subscript
|
|
161
|
+
[{ indent: '-1' }, { indent: '+1' }],
|
|
162
|
+
// [{ direction: 'rtl' }], // text direction
|
|
163
|
+
// [{ size: ['small', false, 'large', 'huge'] }], // custom dropdown
|
|
164
|
+
[{ header: [1, 2, 3, 4, 5, 6, false] }],
|
|
165
|
+
[{ color: [] }, { background: [] }],
|
|
166
|
+
// [{ font: [] }],
|
|
167
|
+
[{ align: [] }],
|
|
168
|
+
['clean'],
|
|
169
|
+
['image'], // link and image, video
|
|
170
|
+
],
|
|
171
|
+
handlers: {
|
|
172
|
+
redo() {
|
|
173
|
+
this['quill'].history.redo();
|
|
174
|
+
},
|
|
175
|
+
undo() {
|
|
176
|
+
this['quill'].history.undo();
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}),
|
|
182
|
+
],
|
|
183
|
+
declarations: [
|
|
184
|
+
// your components
|
|
185
|
+
...COMPONENTS,
|
|
186
|
+
...DIRECTIVES
|
|
187
|
+
],
|
|
188
|
+
exports: [
|
|
189
|
+
DragDropModule,
|
|
190
|
+
CommonModule,
|
|
191
|
+
FormsModule,
|
|
192
|
+
ReactiveFormsModule,
|
|
193
|
+
RouterModule,
|
|
194
|
+
// third libs
|
|
195
|
+
...THIRDMODULES,
|
|
196
|
+
// your components
|
|
197
|
+
...COMPONENTS,
|
|
198
|
+
PipeModuleModule,
|
|
199
|
+
...DIRECTIVES
|
|
200
|
+
],
|
|
201
|
+
providers: SERVICE_PROVIDES
|
|
202
|
+
}]
|
|
203
|
+
}] });
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLXNoYXJlZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL2F0ci1zaGFyZWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDekYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1B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Yzt3QkFDZCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsR0FBRyxZQUFZO3dCQUNmLGtCQUFrQjt3QkFDbEIsR0FBRyxVQUFVO3dCQUNiLGdCQUFnQjt3QkFDaEIsR0FBRyxVQUFVO3FCQUNkO29CQUNELFNBQVMsRUFBQyxnQkFBZ0I7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEF0clRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS90YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL3VwbG9hZC91cGxvYWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXRyRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE56UmVzaXphYmxlTW9kdWxlIH0gZnJvbSAnbmctem9ycm8tYW50ZC9yZXNpemFibGUnO1xyXG5pbXBvcnQgeyByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgemggZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvemgnO1xyXG5pbXBvcnQgeyBMb2NhbFVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4vbG9jYWwtdXBsb2FkL2xvY2FsLXVwbG9hZC5jb21wb25lbnQnO1xyXG5pbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBTZWxlY3RUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtdHJlZS9zZWxlY3QtdHJlZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWRlb0NvbXBvbmVudCB9IGZyb20gJy4vdmlkZW8vdmlkZW8uY29tcG9uZW50JztcclxuaW1wb3J0IHtEcmFnRHJvcE1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2Nkay9kcmFnLWRyb3BcIjtcclxuaW1wb3J0IHtUYWJsZVRkQ29tcG9uZW50fSBmcm9tIFwiLi90YWJsZS90YWJsZS10ZC90YWJsZS10ZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtUYWJsZUZvcm1JdGVtQ29tcG9uZW50fSBmcm9tIFwiLi90YWJsZS90YWJsZS1mb3JtLWl0ZW0vdGFibGUtZm9ybS1pdGVtLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1BpcGVNb2R1bGVNb2R1bGV9IGZyb20gXCIuLi8uLi9jb3JlL3BpcGUvcGlwZS1tb2R1bGUubW9kdWxlXCI7XHJcbmltcG9ydCB7QXRyQ29tcG9uZW50c01vZHVsZX0gZnJvbSBcIi4uLy4uL2F0ci1jb21wb25lbnRzLm1vZHVsZVwiO1xyXG5pbXBvcnQge0N1c05nWm9ycm9BbnRkTW9kdWxlfSBmcm9tIFwiLi4vLi4vY29yZS9uZ3otbW9kdWxlL2N1cy16b3Jyby1hbnRkLm1vZHVsZVwiO1xyXG5pbXBvcnQge1F1aWxsRWRpdG9yQ29tcG9uZW50fSBmcm9tIFwiLi9xdWlsbC1lZGl0b3IvcXVpbGwtZWRpdG9yLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1F1aWxsTW9kdWxlfSBmcm9tIFwibmd4LXF1aWxsXCI7XHJcbmltcG9ydCB7U2VsZWN0SWNvbnNDb21wb25lbnR9IGZyb20gXCIuL3NlbGVjdC1pY29ucy9zZWxlY3QtaWNvbnMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7RWNoYXJ0c0NvbXBvbmVudH0gZnJvbSBcIi4vZWNoYXJ0cy9lY2hhcnRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1ZpZXdGb3JtQ29tcG9uZW50fSBmcm9tIFwiLi92aWV3LWZvcm0vdmlldy1mb3JtLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBEcmFndWxhTW9kdWxlIH0gZnJvbSAnbmcyLWRyYWd1bGEnO1xyXG5pbXBvcnQge0F0clJvbGVEaXJlY3RpdmV9IGZyb20gXCIuLi8uLi9jb3JlL2RpcmVjdGl2ZS9yb2xlLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge0F0ckVycm9ySW1nRGlyZWN0aXZlfSBmcm9tIFwiLi4vLi4vY29yZS9kaXJlY3RpdmUvZXJyb3ItaW1nLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge0hxU3BpbkRpcmVjdGl2ZX0gZnJvbSBcIi4uLy4uL2NvcmUvZGlyZWN0aXZlL2hxLXNwaW4uZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7SW1nQ2FudmFzQ29tcG9uZW50fSBmcm9tIFwiLi9pbWctY2FudmFzL2ltZy1jYW52YXMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7VmdDb3JlTW9kdWxlfSBmcm9tICdAdmlkZW9ndWxhci9uZ3gtdmlkZW9ndWxhci9jb3JlJztcclxuaW1wb3J0IHtWZ0NvbnRyb2xzTW9kdWxlfSBmcm9tICdAdmlkZW9ndWxhci9uZ3gtdmlkZW9ndWxhci9jb250cm9scyc7XHJcbmltcG9ydCB7VmdPdmVybGF5UGxheU1vZHVsZX0gZnJvbSAnQHZpZGVvZ3VsYXIvbmd4LXZpZGVvZ3VsYXIvb3ZlcmxheS1wbGF5JztcclxuaW1wb3J0IHtWZ0J1ZmZlcmluZ01vZHVsZX0gZnJvbSAnQHZpZGVvZ3VsYXIvbmd4LXZpZGVvZ3VsYXIvYnVmZmVyaW5nJztcclxuaW1wb3J0IFJlc2l6ZU1vZHVsZSBmcm9tIFwiQHNzdW1vL3F1aWxsLXJlc2l6ZS1tb2R1bGVcIjtcclxuXHJcbmNvbnN0IFRISVJETU9EVUxFUyA9IFtcclxuICBDdXNOZ1pvcnJvQW50ZE1vZHVsZSxcclxuICBOelJlc2l6YWJsZU1vZHVsZSxcclxuXHJcbl07XHJcblxyXG5jb25zdCBTRVJWSUNFX1BST1ZJREVTOmFueSA9IFtdO1xyXG5yZWdpc3RlckxvY2FsZURhdGEoemgpO1xyXG4vLyAjZW5kcmVnaW9uXHJcblxyXG4vLyAjcmVnaW9uIHlvdXIgY29tcG9uZXRzICYgZGlyZWN0aXZlc1xyXG5jb25zdCBDT01QT05FTlRTID0gW0ltZ0NhbnZhc0NvbXBvbmVudCxRdWlsbEVkaXRvckNvbXBvbmVudCxUYWJsZUZvcm1JdGVtQ29tcG9uZW50LFRhYmxlVGRDb21wb25lbnQsQXRyVGFibGVDb21wb25lbnQsVXBsb2FkQ29tcG9uZW50LEF0ckZvcm1Db21wb25lbnQsTG9jYWxVcGxvYWRDb21wb25lbnQsXHJcbiAgU2VsZWN0VHJlZUNvbXBvbmVudCxWaWRlb0NvbXBvbmVudCxTZWxlY3RJY29uc0NvbXBvbmVudCxFY2hhcnRzQ29tcG9uZW50LFZpZXdGb3JtQ29tcG9uZW50XTtcclxuY29uc3QgRElSRUNUSVZFUyA9IFtBdHJSb2xlRGlyZWN0aXZlLCBBdHJFcnJvckltZ0RpcmVjdGl2ZSwgSHFTcGluRGlyZWN0aXZlLF07XHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgUGlwZU1vZHVsZU1vZHVsZSxcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIC8vIHRoaXJkIGxpYnNcclxuICAgIC4uLlRISVJETU9EVUxFUyxcclxuICAgIFZnQ29yZU1vZHVsZSxcclxuICAgIFZnQ29udHJvbHNNb2R1bGUsXHJcbiAgICBWZ092ZXJsYXlQbGF5TW9kdWxlLFxyXG4gICAgVmdCdWZmZXJpbmdNb2R1bGUsXHJcbiAgICBEcmFnRHJvcE1vZHVsZSxcclxuICAgIERyYWd1bGFNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgQXRyQ29tcG9uZW50c01vZHVsZSxcclxuICAgIFF1aWxsTW9kdWxlLmZvclJvb3Qoe1xyXG4gICAgICBjdXN0b21Nb2R1bGVzIDogW1xyXG4gICAgICAgIHsgcGF0aDogJ21vZHVsZXMvcmVzaXplJywgaW1wbGVtZW50YXRpb246IFJlc2l6ZU1vZHVsZSB9XHJcbiAgICAgIF0sXHJcbiAgICAgIG1vZHVsZXM6IHtcclxuICAgICAgICBzeW50YXg6IGZhbHNlLFxyXG4gICAgICAgIC8vIGltYWdlUmVzaXplOiB7fSxcclxuICAgICAgICByZXNpemU6IHtcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRvb2xiYXI6IHtcclxuICAgICAgICAgIGNvbnRhaW5lcjogW1xyXG4gICAgICAgICAgICBbJ3VuZG8nLCAncmVkbyddLFxyXG4gICAgICAgICAgICBbJ2JvbGQnLCAnaXRhbGljJywgJ3VuZGVybGluZSddLCAgICAgICAgLy8gdG9nZ2xlZCBidXR0b25zXHJcbiAgICAgICAgICAgIC8vIFsnY29kZS1ibG9jayddLCAvLyBibG9ja3F1b3RlXHJcbiAgICAgICAgICAgIC8vIFt7IGhlYWRlcjogMSB9LCB7IGhlYWRlcjogMiB9XSwgICAgICAgICAgICAgICAvLyBjdXN0b20gYnV0dG9uIHZhbHVlc1xyXG4gICAgICAgICAgICBbe2xpc3Q6ICdvcmRlcmVkJ30sIHtsaXN0OiAnYnVsbGV0J31dLFxyXG4gICAgICAgICAgICAvLyBbeyBzY3JpcHQ6ICdzdWInIH0sIHsgc2NyaXB0OiAnc3VwZXInIH1dLCAgICAgIC8vIHN1cGVyc2NyaXB0L3N1YnNjcmlwdFxyXG4gICAgICAgICAgICBbe2luZGVudDogJy0xJ30sIHtpbmRlbnQ6ICcrMSd9XSwgICAgICAgICAgLy8gb3V0ZGVudC9pbmRlbnRcclxuICAgICAgICAgICAgLy8gW3sgZGlyZWN0aW9uOiAncnRsJyB9XSwgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGV4dCBkaXJlY3Rpb25cclxuICAgICAgICAgICAgLy8gW3sgc2l6ZTogWydzbWFsbCcsIGZhbHNlLCAnbGFyZ2UnLCAnaHVnZSddIH1dLCAgLy8gY3VzdG9tIGRyb3Bkb3duXHJcbiAgICAgICAgICAgIFt7aGVhZGVyOiBbMSwgMiwgMywgNCwgNSwgNiwgZmFsc2VdfV0sXHJcbiAgICAgICAgICAgIFt7Y29sb3I6IFtdfSwge2JhY2tncm91bmQ6IFtdfV0sICAgICAgICAgIC8vIGRyb3Bkb3duIHdpdGggZGVmYXVsdHMgZnJvbSB0aGVtZVxyXG4gICAgICAgICAgICAvLyBbeyBmb250OiBbXSB9XSxcclxuICAgICAgICAgICAgW3thbGlnbjogW119XSxcclxuICAgICAgICAgICAgWydjbGVhbiddLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcmVtb3ZlIGZvcm1hdHRpbmcgYnV0dG9uXHJcbiAgICAgICAgICAgIFsnaW1hZ2UnXSwgICAgICAgICAgICAgICAgICAgICAgLy8gbGluayBhbmQgaW1hZ2UsIHZpZGVvXHJcbiAgICAgICAgICBdLFxyXG4gICAgICAgICAgaGFuZGxlcnM6IHtcclxuICAgICAgICAgICAgcmVkbygpIHtcclxuICAgICAgICAgICAgICB0aGlzWydxdWlsbCddLmhpc3RvcnkucmVkbygpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB1bmRvKCkge1xyXG4gICAgICAgICAgICAgIHRoaXNbJ3F1aWxsJ10uaGlzdG9yeS51bmRvKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKSxcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgLy8geW91ciBjb21wb25lbnRzXHJcbiAgICAuLi5DT01QT05FTlRTLFxyXG4gICAgLi4uRElSRUNUSVZFU1xyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICAvLyB0aGlyZCBsaWJzXHJcbiAgICAuLi5USElSRE1PRFVMRVMsXHJcbiAgICAvLyB5b3VyIGNvbXBvbmVudHNcclxuICAgIC4uLkNPTVBPTkVOVFMsXHJcbiAgICBQaXBlTW9kdWxlTW9kdWxlLFxyXG4gICAgLi4uRElSRUNUSVZFU1xyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOlNFUlZJQ0VfUFJPVklERVNcclxufSlcclxuLy9TaGFyZWRNb2R1bGVcclxuLy8g5bqUIOWMheWQq+WumuS5ie+8mlxyXG4vLyDlupTnlKjpgJrnlKjoh6rlrprkuYnkuJrliqHnu4Tku7ZcclxuLy8g5bqUIOWvvOWHuuaJgOacieWMheWQq+eahOaooeWdl+OAglxyXG4vLyDkuI3lupQg5pyJIHByb3ZpZGVycyDlsZ7mgKfjgIJcclxuZXhwb3J0IGNsYXNzIEF0clNoYXJlZE1vZHVsZSB7IH1cclxuIl19
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { Component, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import * as echarts from 'echarts';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
export class EchartsComponent {
|
|
6
|
+
set userOption(userOption) {
|
|
7
|
+
if (userOption) {
|
|
8
|
+
this.initOption(userOption, this.option);
|
|
9
|
+
this.option = Object.assign(this.option, userOption);
|
|
10
|
+
console.log('option', this.option);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
initOption(userOption, target) {
|
|
14
|
+
for (let key of Object.keys(userOption)) {
|
|
15
|
+
let value = userOption[key];
|
|
16
|
+
if (value) {
|
|
17
|
+
if (!target[key]) {
|
|
18
|
+
target[key] = value;
|
|
19
|
+
}
|
|
20
|
+
else if (value instanceof Array) {
|
|
21
|
+
target[key] = value;
|
|
22
|
+
}
|
|
23
|
+
else if (typeof value === 'object') {
|
|
24
|
+
target = this.initOption(value, target[key]);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
target[key] = value;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return target;
|
|
32
|
+
}
|
|
33
|
+
constructor() {
|
|
34
|
+
this.option = {
|
|
35
|
+
xAxis: {
|
|
36
|
+
type: 'category',
|
|
37
|
+
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
|
|
38
|
+
},
|
|
39
|
+
yAxis: {
|
|
40
|
+
type: 'value',
|
|
41
|
+
minInterval: 1,
|
|
42
|
+
},
|
|
43
|
+
series: [{
|
|
44
|
+
data: [120, 200, 150, 80, 70, 110, 130],
|
|
45
|
+
type: 'bar',
|
|
46
|
+
showBackground: true,
|
|
47
|
+
backgroundStyle: {
|
|
48
|
+
color: 'rgba(180, 180, 180, 0.2)'
|
|
49
|
+
}
|
|
50
|
+
}]
|
|
51
|
+
};
|
|
52
|
+
this.width = '20rem';
|
|
53
|
+
this.height = '20rem';
|
|
54
|
+
}
|
|
55
|
+
ngOnInit() {
|
|
56
|
+
}
|
|
57
|
+
ngAfterViewInit() {
|
|
58
|
+
this.myEchart = echarts.init(this.echart.nativeElement);
|
|
59
|
+
this.myEchart.setOption(this.option);
|
|
60
|
+
}
|
|
61
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: EchartsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: EchartsComponent, selector: "app-echarts", inputs: { userOption: "userOption", width: "width", height: "height" }, viewQueries: [{ propertyName: "echart", first: true, predicate: ["echart"], descendants: true }], ngImport: i0, template: "<div [ngStyle]=\"{width:width,height:height}\" #echart></div>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
63
|
+
}
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: EchartsComponent, decorators: [{
|
|
65
|
+
type: Component,
|
|
66
|
+
args: [{ selector: 'app-echarts', template: "<div [ngStyle]=\"{width:width,height:height}\" #echart></div>" }]
|
|
67
|
+
}], ctorParameters: () => [], propDecorators: { echart: [{
|
|
68
|
+
type: ViewChild,
|
|
69
|
+
args: ['echart']
|
|
70
|
+
}], userOption: [{
|
|
71
|
+
type: Input
|
|
72
|
+
}], width: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], height: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}] } });
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNoYXJ0cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL2VjaGFydHMvZWNoYXJ0cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL2VjaGFydHMvZWNoYXJ0cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdGLE9BQU8sS0FBSyxPQUFPLE1BQU0sU0FBUyxDQUFDOzs7QUFVbkMsTUFBTSxPQUFPLGdCQUFnQjtJQUkzQixJQUFhLFVBQVUsQ0FBQyxVQUF5QjtRQUMvQyxJQUFJLFVBQVUsRUFBRTtZQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNyRCxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7U0FDbkM7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLFVBQWMsRUFBRSxNQUFVO1FBQ25DLEtBQUssSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUV2QyxJQUFJLEtBQUssR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFNUIsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDaEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQTtpQkFDcEI7cUJBQU0sSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO29CQUNqQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO2lCQUNyQjtxQkFBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtvQkFDcEMsTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO2lCQUU3QztxQkFBTTtvQkFDTCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFBO2lCQUNwQjthQUNGO1NBQ0Y7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBd0JEO1FBdEJBLFdBQU0sR0FBRztZQUNQLEtBQUssRUFBRTtnQkFDTCxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDO2FBQ3hEO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLElBQUksRUFBRSxPQUFPO2dCQUNiLFdBQVcsRUFBRSxDQUFDO2FBQ2Y7WUFDRCxNQUFNLEVBQUUsQ0FBQztvQkFDUCxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7b0JBQ3ZDLElBQUksRUFBRSxLQUFLO29CQUNYLGNBQWMsRUFBRSxJQUFJO29CQUNwQixlQUFlLEVBQUU7d0JBQ2YsS0FBSyxFQUFFLDBCQUEwQjtxQkFDbEM7aUJBQ0YsQ0FBQztTQUNILENBQUM7UUFFTyxVQUFLLEdBQUcsT0FBTyxDQUFDO1FBQ2hCLFdBQU0sR0FBRyxPQUFPLENBQUM7SUFJMUIsQ0FBQztJQUVELFFBQVE7SUFFUixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUN0QyxDQUFDOzhHQWxFVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQiw2TkNYN0IsK0RBQTJEOzsyRkRXOUMsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNFLGFBQWE7d0RBT0YsTUFBTTtzQkFBMUIsU0FBUzt1QkFBQyxRQUFRO2dCQUVOLFVBQVU7c0JBQXRCLEtBQUs7Z0JBZ0RHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgZWNoYXJ0cyBmcm9tICdlY2hhcnRzJztcclxuaW1wb3J0IHtFQ2hhcnRzT3B0aW9ufSBmcm9tIFwiLi4vLi4vLi4vY29yZS9iYXNlL2F0ci1jb21tb25cIjtcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1lY2hhcnRzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNoYXJ0cy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZWNoYXJ0cy5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRWNoYXJ0c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgLy8gQHRzLWlnbm9yZVxyXG4gIEBWaWV3Q2hpbGQoJ2VjaGFydCcpIGVjaGFydDogRWxlbWVudFJlZjtcclxuXHJcbiAgQElucHV0KCkgc2V0IHVzZXJPcHRpb24odXNlck9wdGlvbjogRUNoYXJ0c09wdGlvbikge1xyXG4gICAgaWYgKHVzZXJPcHRpb24pIHtcclxuICAgICAgdGhpcy5pbml0T3B0aW9uKHVzZXJPcHRpb24sIHRoaXMub3B0aW9uKTtcclxuICAgICAgdGhpcy5vcHRpb24gPSBPYmplY3QuYXNzaWduKHRoaXMub3B0aW9uLCB1c2VyT3B0aW9uKTtcclxuICAgICAgY29uc29sZS5sb2coJ29wdGlvbicsIHRoaXMub3B0aW9uKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5pdE9wdGlvbih1c2VyT3B0aW9uOmFueSwgdGFyZ2V0OmFueSkge1xyXG4gICAgZm9yIChsZXQga2V5IG9mIE9iamVjdC5rZXlzKHVzZXJPcHRpb24pKSB7XHJcblxyXG4gICAgICBsZXQgdmFsdWUgPSB1c2VyT3B0aW9uW2tleV07XHJcblxyXG4gICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICBpZiAoIXRhcmdldFtrZXldKSB7XHJcbiAgICAgICAgICB0YXJnZXRba2V5XSA9IHZhbHVlXHJcbiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEFycmF5KSB7XHJcbiAgICAgICAgICB0YXJnZXRba2V5XSA9IHZhbHVlO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgdGFyZ2V0ID0gdGhpcy5pbml0T3B0aW9uKHZhbHVlLCB0YXJnZXRba2V5XSlcclxuXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRhcmdldFtrZXldID0gdmFsdWVcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB0YXJnZXQ7XHJcbiAgfVxyXG5cclxuICBvcHRpb24gPSB7XHJcbiAgICB4QXhpczoge1xyXG4gICAgICB0eXBlOiAnY2F0ZWdvcnknLFxyXG4gICAgICBkYXRhOiBbJ01vbicsICdUdWUnLCAnV2VkJywgJ1RodScsICdGcmknLCAnU2F0JywgJ1N1biddXHJcbiAgICB9LFxyXG4gICAgeUF4aXM6IHtcclxuICAgICAgdHlwZTogJ3ZhbHVlJyxcclxuICAgICAgbWluSW50ZXJ2YWw6IDEsXHJcbiAgICB9LFxyXG4gICAgc2VyaWVzOiBbe1xyXG4gICAgICBkYXRhOiBbMTIwLCAyMDAsIDE1MCwgODAsIDcwLCAxMTAsIDEzMF0sXHJcbiAgICAgIHR5cGU6ICdiYXInLFxyXG4gICAgICBzaG93QmFja2dyb3VuZDogdHJ1ZSxcclxuICAgICAgYmFja2dyb3VuZFN0eWxlOiB7XHJcbiAgICAgICAgY29sb3I6ICdyZ2JhKDE4MCwgMTgwLCAxODAsIDAuMiknXHJcbiAgICAgIH1cclxuICAgIH1dXHJcbiAgfTtcclxuICBteUVjaGFydDogYW55O1xyXG4gIEBJbnB1dCgpIHdpZHRoID0gJzIwcmVtJztcclxuICBASW5wdXQoKSBoZWlnaHQgPSAnMjByZW0nO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLm15RWNoYXJ0ID0gZWNoYXJ0cy5pbml0KHRoaXMuZWNoYXJ0Lm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgdGhpcy5teUVjaGFydC5zZXRPcHRpb24odGhpcy5vcHRpb24pXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IFtuZ1N0eWxlXT1cInt3aWR0aDp3aWR0aCxoZWlnaHQ6aGVpZ2h0fVwiICNlY2hhcnQ+PC9kaXY+Il19
|