atr-components 0.0.22 → 0.1.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.
@@ -2,4 +2,4 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  /// <amd-module name="atr-components" />
5
- export * from './public-api';
5
+ export * from './atr-public-api';
@@ -38,3 +38,4 @@ export * from "./lib/shared/validators/atr-validtors";
38
38
  export * from "./lib/shared/upload/upload.component";
39
39
  export * from "./lib/shared/table/table.component";
40
40
  export * from "./lib/shared/table/table-form-item/table-form-item.component";
41
+ export * from "./lib/shared/quill-editor/quill-editor.component";
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9hdHItY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
4
+ export * from './atr-public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9hdHItY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vYXRyLXB1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,45 @@
1
+ /*
2
+ * Public API Surface of components
3
+ */
4
+ export * from "./core/animations/animations";
5
+ export * from "./core/interceptor/base.interceptor";
6
+ export * from "./core/ngz-module/cus-zorro-antd.module";
7
+ export * from "./core/animations/fly-in";
8
+ export * from "./core/animations/scroll-screen";
9
+ export * from './atr-components.module';
10
+ export * from './lib/hello/hello.module';
11
+ export * from './core/auth/auth.guard';
12
+ export * from './core/base/atr-common';
13
+ export * from './core/routereuse/atr-reuse-strategy';
14
+ export * from "./core/utils/ToolsUtil";
15
+ export * from "./core/utils/localstorage.util";
16
+ export * from "./core/utils/sessionstorage.util";
17
+ export * from "./core/services/dict/dict.service";
18
+ export * from "./core/services/http.service";
19
+ export * from "./core/services/menu.service";
20
+ export * from "./core/services/upload-oss.service";
21
+ export * from "./core/directive/role.directive";
22
+ export * from "./core/directive/error-img.directive";
23
+ export * from "./core/directive/hq-spin.directive";
24
+ export { HelloComponent } from './lib/hello/hello.component';
25
+ export * from "./core/pipe/pipe-module.module";
26
+ export * from "./core/pipe/is-empty.pipe";
27
+ export * from "./core/pipe/dicts.pipe";
28
+ export * from "./core/pipe/defaultVal.pipe";
29
+ export * from "./core/pipe/day.pipe";
30
+ export * from "./core/pipe/safe-compute.pipe";
31
+ export * from "./core/pipe/is-not-empty.pipe";
32
+ export * from "./lib/shared/atr-shared.module";
33
+ export * from "./lib/shared/form/form.component";
34
+ export * from "./lib/shared/local-upload/local-upload.component";
35
+ export * from "./lib/shared/select-tree/select-tree.component";
36
+ export * from "./lib/shared/service/busi.service";
37
+ export * from "./lib/shared/table/table-td/table-td.component";
38
+ export * from "./lib/shared/share.service";
39
+ export * from "./lib/shared/video/video.component";
40
+ export * from "./lib/shared/validators/atr-validtors";
41
+ export * from "./lib/shared/upload/upload.component";
42
+ export * from "./lib/shared/table/table.component";
43
+ export * from "./lib/shared/table/table-form-item/table-form-item.component";
44
+ export * from "./lib/shared/quill-editor/quill-editor.component";
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLXB1YmxpYy1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9hdHItcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsOEJBQThCLENBQUE7QUFDNUMsY0FBYyxxQ0FBcUMsQ0FBQTtBQUNuRCxjQUFjLHlDQUF5QyxDQUFBO0FBQ3ZELGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjLGdDQUFnQyxDQUFBO0FBQzlDLGNBQWMsa0NBQWtDLENBQUE7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQTtBQUNqRCxjQUFjLDhCQUE4QixDQUFBO0FBQzVDLGNBQWMsOEJBQThCLENBQUE7QUFDNUMsY0FBYyxvQ0FBb0MsQ0FBQTtBQUNsRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsY0FBYyxnQ0FBZ0MsQ0FBQTtBQUM5QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywrQkFBK0IsQ0FBQztBQUU5QyxjQUFjLGdDQUFnQyxDQUFBO0FBQzlDLGNBQWMsa0NBQWtDLENBQUE7QUFDaEQsY0FBYyxrREFBa0QsQ0FBQTtBQUNoRSxjQUFjLGdEQUFnRCxDQUFBO0FBQzlELGNBQWMsbUNBQW1DLENBQUE7QUFDakQsY0FBYyxnREFBZ0QsQ0FBQTtBQUM5RCxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsb0NBQW9DLENBQUE7QUFDbEQsY0FBYyx1Q0FBdUMsQ0FBQTtBQUNyRCxjQUFjLHNDQUFzQyxDQUFBO0FBQ3BELGNBQWMsb0NBQW9DLENBQUE7QUFDbEQsY0FBYyw4REFBOEQsQ0FBQTtBQUM1RSxjQUFjLGtEQUFrRCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBjb21wb25lbnRzXG4gKi9cbmV4cG9ydCAqIGZyb20gXCIuL2NvcmUvYW5pbWF0aW9ucy9hbmltYXRpb25zXCJcbmV4cG9ydCAqIGZyb20gXCIuL2NvcmUvaW50ZXJjZXB0b3IvYmFzZS5pbnRlcmNlcHRvclwiXG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL25nei1tb2R1bGUvY3VzLXpvcnJvLWFudGQubW9kdWxlXCJcbmV4cG9ydCAqIGZyb20gXCIuL2NvcmUvYW5pbWF0aW9ucy9mbHktaW5cIlxuZXhwb3J0ICogZnJvbSBcIi4vY29yZS9hbmltYXRpb25zL3Njcm9sbC1zY3JlZW5cIlxuZXhwb3J0ICogZnJvbSAnLi9hdHItY29tcG9uZW50cy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVsbG8vaGVsbG8ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9hdXRoL2F1dGguZ3VhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL2Jhc2UvYXRyLWNvbW1vbic7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUvcm91dGVyZXVzZS9hdHItcmV1c2Utc3RyYXRlZ3knO1xuZXhwb3J0ICogZnJvbSBcIi4vY29yZS91dGlscy9Ub29sc1V0aWxcIlxuZXhwb3J0ICogZnJvbSBcIi4vY29yZS91dGlscy9sb2NhbHN0b3JhZ2UudXRpbFwiXG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL3V0aWxzL3Nlc3Npb25zdG9yYWdlLnV0aWxcIlxuZXhwb3J0ICogZnJvbSBcIi4vY29yZS9zZXJ2aWNlcy9kaWN0L2RpY3Quc2VydmljZVwiXG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL3NlcnZpY2VzL2h0dHAuc2VydmljZVwiXG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL3NlcnZpY2VzL21lbnUuc2VydmljZVwiXG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL3NlcnZpY2VzL3VwbG9hZC1vc3Muc2VydmljZVwiXG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL2RpcmVjdGl2ZS9yb2xlLmRpcmVjdGl2ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29yZS9kaXJlY3RpdmUvZXJyb3ItaW1nLmRpcmVjdGl2ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29yZS9kaXJlY3RpdmUvaHEtc3Bpbi5kaXJlY3RpdmVcIjtcbmV4cG9ydCB7SGVsbG9Db21wb25lbnR9IGZyb20gJy4vbGliL2hlbGxvL2hlbGxvLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gXCIuL2NvcmUvcGlwZS9waXBlLW1vZHVsZS5tb2R1bGVcIlxuZXhwb3J0ICogZnJvbSBcIi4vY29yZS9waXBlL2lzLWVtcHR5LnBpcGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvcmUvcGlwZS9kaWN0cy5waXBlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL3BpcGUvZGVmYXVsdFZhbC5waXBlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb3JlL3BpcGUvZGF5LnBpcGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvcmUvcGlwZS9zYWZlLWNvbXB1dGUucGlwZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29yZS9waXBlL2lzLW5vdC1lbXB0eS5waXBlXCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9zaGFyZWQvYXRyLXNoYXJlZC5tb2R1bGVcIlxuZXhwb3J0ICogZnJvbSBcIi4vbGliL3NoYXJlZC9mb3JtL2Zvcm0uY29tcG9uZW50XCJcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9zaGFyZWQvbG9jYWwtdXBsb2FkL2xvY2FsLXVwbG9hZC5jb21wb25lbnRcIlxuZXhwb3J0ICogZnJvbSBcIi4vbGliL3NoYXJlZC9zZWxlY3QtdHJlZS9zZWxlY3QtdHJlZS5jb21wb25lbnRcIlxuZXhwb3J0ICogZnJvbSBcIi4vbGliL3NoYXJlZC9zZXJ2aWNlL2J1c2kuc2VydmljZVwiXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvc2hhcmVkL3RhYmxlL3RhYmxlLXRkL3RhYmxlLXRkLmNvbXBvbmVudFwiXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvc2hhcmVkL3NoYXJlLnNlcnZpY2VcIlxuZXhwb3J0ICogZnJvbSBcIi4vbGliL3NoYXJlZC92aWRlby92aWRlby5jb21wb25lbnRcIlxuZXhwb3J0ICogZnJvbSBcIi4vbGliL3NoYXJlZC92YWxpZGF0b3JzL2F0ci12YWxpZHRvcnNcIlxuZXhwb3J0ICogZnJvbSBcIi4vbGliL3NoYXJlZC91cGxvYWQvdXBsb2FkLmNvbXBvbmVudFwiXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvc2hhcmVkL3RhYmxlL3RhYmxlLmNvbXBvbmVudFwiXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvc2hhcmVkL3RhYmxlL3RhYmxlLWZvcm0taXRlbS90YWJsZS1mb3JtLWl0ZW0uY29tcG9uZW50XCJcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9zaGFyZWQvcXVpbGwtZWRpdG9yL3F1aWxsLWVkaXRvci5jb21wb25lbnRcIlxuXG4iXX0=
@@ -18,7 +18,10 @@ import { TableFormItemComponent } from "./table/table-form-item/table-form-item.
18
18
  import { PipeModuleModule } from "../../core/pipe/pipe-module.module";
19
19
  import { AtrComponentsModule } from "../../atr-components.module";
20
20
  import { CusNgZorroAntdModule } from "../../core/ngz-module/cus-zorro-antd.module";
21
+ import { QuillModule } from "ngx-quill";
22
+ import { QuillEditorComponent } from "./quill-editor/quill-editor.component";
21
23
  import * as i0 from "@angular/core";
24
+ import * as i1 from "ngx-quill";
22
25
  const THIRDMODULES = [
23
26
  CusNgZorroAntdModule,
24
27
  NzResizableModule
@@ -27,7 +30,7 @@ const SERVICE_PROVIDES = [];
27
30
  registerLocaleData(zh);
28
31
  // #endregion
29
32
  // #region your componets & directives
30
- const COMPONENTS = [TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
33
+ const COMPONENTS = [QuillEditorComponent, TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
31
34
  SelectTreeComponent, VideoComponent];
32
35
  //SharedModule
33
36
  // 应 包含定义:
@@ -37,7 +40,7 @@ const COMPONENTS = [TableFormItemComponent, TableTdComponent, AtrTableComponent,
37
40
  export class AtrSharedModule {
38
41
  }
39
42
  AtrSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AtrSharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
40
- AtrSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AtrSharedModule, declarations: [TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
43
+ AtrSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AtrSharedModule, declarations: [QuillEditorComponent, TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
41
44
  SelectTreeComponent, VideoComponent], imports: [PipeModuleModule,
42
45
  CommonModule,
43
46
  FormsModule,
@@ -48,12 +51,12 @@ AtrSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
48
51
  VgOverlayPlayModule,
49
52
  VgBufferingModule,
50
53
  DragDropModule,
51
- AtrComponentsModule], exports: [DragDropModule,
54
+ AtrComponentsModule, i1.QuillModule], exports: [DragDropModule,
52
55
  CommonModule,
53
56
  FormsModule,
54
57
  ReactiveFormsModule,
55
58
  RouterModule, CusNgZorroAntdModule,
56
- NzResizableModule, TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
59
+ NzResizableModule, QuillEditorComponent, TableFormItemComponent, TableTdComponent, AtrTableComponent, UploadComponent, AtrFormComponent, LocalUploadComponent,
57
60
  SelectTreeComponent, VideoComponent, PipeModuleModule] });
58
61
  AtrSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AtrSharedModule, providers: SERVICE_PROVIDES, imports: [[
59
62
  PipeModuleModule,
@@ -68,7 +71,40 @@ AtrSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
68
71
  VgOverlayPlayModule,
69
72
  VgBufferingModule,
70
73
  DragDropModule,
71
- AtrComponentsModule
74
+ AtrComponentsModule,
75
+ QuillModule.forRoot({
76
+ modules: {
77
+ syntax: false,
78
+ imageResize: {},
79
+ toolbar: {
80
+ container: [
81
+ ['undo', 'redo'],
82
+ ['bold', 'italic', 'underline'],
83
+ // ['code-block'], // blockquote
84
+ // [{ header: 1 }, { header: 2 }], // custom button values
85
+ [{ list: 'ordered' }, { list: 'bullet' }],
86
+ // [{ script: 'sub' }, { script: 'super' }], // superscript/subscript
87
+ [{ indent: '-1' }, { indent: '+1' }],
88
+ // [{ direction: 'rtl' }], // text direction
89
+ // [{ size: ['small', false, 'large', 'huge'] }], // custom dropdown
90
+ [{ header: [1, 2, 3, 4, 5, 6, false] }],
91
+ [{ color: [] }, { background: [] }],
92
+ // [{ font: [] }],
93
+ [{ align: [] }],
94
+ ['clean'],
95
+ ['image'], // link and image, video
96
+ ],
97
+ handlers: {
98
+ redo() {
99
+ this['quill'].history.redo();
100
+ },
101
+ undo() {
102
+ this['quill'].history.undo();
103
+ }
104
+ }
105
+ }
106
+ }
107
+ }),
72
108
  ], DragDropModule,
73
109
  CommonModule,
74
110
  FormsModule,
@@ -91,7 +127,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
91
127
  VgOverlayPlayModule,
92
128
  VgBufferingModule,
93
129
  DragDropModule,
94
- AtrComponentsModule
130
+ AtrComponentsModule,
131
+ QuillModule.forRoot({
132
+ modules: {
133
+ syntax: false,
134
+ imageResize: {},
135
+ toolbar: {
136
+ container: [
137
+ ['undo', 'redo'],
138
+ ['bold', 'italic', 'underline'],
139
+ // ['code-block'], // blockquote
140
+ // [{ header: 1 }, { header: 2 }], // custom button values
141
+ [{ list: 'ordered' }, { list: 'bullet' }],
142
+ // [{ script: 'sub' }, { script: 'super' }], // superscript/subscript
143
+ [{ indent: '-1' }, { indent: '+1' }],
144
+ // [{ direction: 'rtl' }], // text direction
145
+ // [{ size: ['small', false, 'large', 'huge'] }], // custom dropdown
146
+ [{ header: [1, 2, 3, 4, 5, 6, false] }],
147
+ [{ color: [] }, { background: [] }],
148
+ // [{ font: [] }],
149
+ [{ align: [] }],
150
+ ['clean'],
151
+ ['image'], // link and image, video
152
+ ],
153
+ handlers: {
154
+ redo() {
155
+ this['quill'].history.redo();
156
+ },
157
+ undo() {
158
+ this['quill'].history.undo();
159
+ }
160
+ }
161
+ }
162
+ }
163
+ }),
95
164
  ],
96
165
  declarations: [
97
166
  // your components
@@ -112,4 +181,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
112
181
  providers: SERVICE_PROVIDES
113
182
  }]
114
183
  }] });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLXNoYXJlZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL2F0ci1zaGFyZWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEcsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDOztBQUNqRixNQUFNLFlBQVksR0FBRztJQUNuQixvQkFBb0I7SUFDcEIsaUJBQWlCO0NBQ2xCLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUFPLEVBQUUsQ0FBQztBQUNoQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUN2QixhQUFhO0FBRWIsc0NBQXNDO0FBQ3RDLE1BQU0sVUFBVSxHQUFHLENBQUMsc0JBQXNCLEVBQUMsZ0JBQWdCLEVBQUMsaUJBQWlCLEVBQUMsZUFBZSxFQUFDLGdCQUFnQixFQUFDLG9CQUFvQjtJQUNqSSxtQkFBbUIsRUFBQyxjQUFjLENBQUMsQ0FBQztBQW1DdEMsY0FBYztBQUNkLFVBQVU7QUFDVixjQUFjO0FBQ2QsZUFBZTtBQUNmLHFCQUFxQjtBQUNyQixNQUFNLE9BQU8sZUFBZTs7NkdBQWYsZUFBZTs4R0FBZixlQUFlLGlCQXpDUixzQkFBc0IsRUFBQyxnQkFBZ0IsRUFBQyxpQkFBaUIsRUFBQyxlQUFlLEVBQUMsZ0JBQWdCLEVBQUMsb0JBQW9CO1FBQ2pJLG1CQUFtQixFQUFDLGNBQWMsYUFHaEMsZ0JBQWdCO1FBQ2hCLFlBQVk7UUFDWixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLFlBQVksRUFqQmQsb0JBQW9CO1FBQ3BCLGlCQUFpQixFQW1CZixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsY0FBYztRQUNkLG1CQUFtQixhQU9uQixjQUFjO1FBQ2QsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsWUFBWSxFQXBDZCxvQkFBb0I7UUFDcEIsaUJBQWlCLEVBUUMsc0JBQXNCLEVBQUMsZ0JBQWdCLEVBQUMsaUJBQWlCLEVBQUMsZUFBZSxFQUFDLGdCQUFnQixFQUFDLG9CQUFvQjtRQUNqSSxtQkFBbUIsRUFBQyxjQUFjLEVBK0JoQyxnQkFBZ0I7OEdBU1AsZUFBZSxhQVBoQixnQkFBZ0IsWUEvQmpCO1lBQ1AsZ0JBQWdCO1lBQ2hCLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLFlBQVk7WUFDWixhQUFhO1lBQ2IsR0FBRyxZQUFZO1lBQ2YsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLGNBQWM7WUFDZCxtQkFBbUI7U0FDcEIsRUFNQyxjQUFjO1FBQ2QsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsWUFBWSxFQXBDZCxvQkFBb0I7UUFDcEIsaUJBQWlCLEVBd0NmLGdCQUFnQjs0RkFTUCxlQUFlO2tCQXZDM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsR0FBRyxZQUFZO3dCQUNmLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxtQkFBbUI7cUJBQ3BCO29CQUNELFlBQVksRUFBRTt3QkFDWixrQkFBa0I7d0JBQ2xCLEdBQUcsVUFBVTtxQkFDZDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsY0FBYzt3QkFDZCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsR0FBRyxZQUFZO3dCQUNmLGtCQUFrQjt3QkFDbEIsR0FBRyxVQUFVO3dCQUNiLGdCQUFnQjtxQkFDakI7b0JBQ0QsU0FBUyxFQUFDLGdCQUFnQjtpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQXRyVGFibGVDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4vdXBsb2FkL3VwbG9hZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdHJGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTnpSZXNpemFibGVNb2R1bGUgfSBmcm9tICduZy16b3Jyby1hbnRkL3Jlc2l6YWJsZSc7XHJcbmltcG9ydCB7IHJlZ2lzdGVyTG9jYWxlRGF0YSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB6aCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy96aCc7XHJcbmltcG9ydCB7IExvY2FsVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi9sb2NhbC11cGxvYWQvbG9jYWwtdXBsb2FkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFNlbGVjdFRyZWVDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC10cmVlL3NlbGVjdC10cmVlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZpZGVvQ29tcG9uZW50IH0gZnJvbSAnLi92aWRlby92aWRlby5jb21wb25lbnQnO1xyXG5pbXBvcnQge1ZnQ29udHJvbHNNb2R1bGUsIFZnQ29yZU1vZHVsZSwgVmdPdmVybGF5UGxheU1vZHVsZSwgVmdCdWZmZXJpbmdNb2R1bGV9IGZyb20gXCJuZ3gtdmlkZW9ndWxhclwiO1xyXG5pbXBvcnQge0RyYWdEcm9wTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RyYWctZHJvcFwiO1xyXG5pbXBvcnQge1RhYmxlVGRDb21wb25lbnR9IGZyb20gXCIuL3RhYmxlL3RhYmxlLXRkL3RhYmxlLXRkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1RhYmxlRm9ybUl0ZW1Db21wb25lbnR9IGZyb20gXCIuL3RhYmxlL3RhYmxlLWZvcm0taXRlbS90YWJsZS1mb3JtLWl0ZW0uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7UGlwZU1vZHVsZU1vZHVsZX0gZnJvbSBcIi4uLy4uL2NvcmUvcGlwZS9waXBlLW1vZHVsZS5tb2R1bGVcIjtcclxuaW1wb3J0IHtBdHJDb21wb25lbnRzTW9kdWxlfSBmcm9tIFwiLi4vLi4vYXRyLWNvbXBvbmVudHMubW9kdWxlXCI7XHJcbmltcG9ydCB7Q3VzTmdab3Jyb0FudGRNb2R1bGV9IGZyb20gXCIuLi8uLi9jb3JlL25nei1tb2R1bGUvY3VzLXpvcnJvLWFudGQubW9kdWxlXCI7XHJcbmNvbnN0IFRISVJETU9EVUxFUyA9IFtcclxuICBDdXNOZ1pvcnJvQW50ZE1vZHVsZSxcclxuICBOelJlc2l6YWJsZU1vZHVsZVxyXG5dO1xyXG5cclxuY29uc3QgU0VSVklDRV9QUk9WSURFUzphbnkgPSBbXTtcclxucmVnaXN0ZXJMb2NhbGVEYXRhKHpoKTtcclxuLy8gI2VuZHJlZ2lvblxyXG5cclxuLy8gI3JlZ2lvbiB5b3VyIGNvbXBvbmV0cyAmIGRpcmVjdGl2ZXNcclxuY29uc3QgQ09NUE9ORU5UUyA9IFtUYWJsZUZvcm1JdGVtQ29tcG9uZW50LFRhYmxlVGRDb21wb25lbnQsQXRyVGFibGVDb21wb25lbnQsVXBsb2FkQ29tcG9uZW50LEF0ckZvcm1Db21wb25lbnQsTG9jYWxVcGxvYWRDb21wb25lbnQsXHJcbiAgU2VsZWN0VHJlZUNvbXBvbmVudCxWaWRlb0NvbXBvbmVudF07XHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgUGlwZU1vZHVsZU1vZHVsZSxcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIC8vIHRoaXJkIGxpYnNcclxuICAgIC4uLlRISVJETU9EVUxFUyxcclxuICAgIFZnQ29yZU1vZHVsZSxcclxuICAgIFZnQ29udHJvbHNNb2R1bGUsXHJcbiAgICBWZ092ZXJsYXlQbGF5TW9kdWxlLFxyXG4gICAgVmdCdWZmZXJpbmdNb2R1bGUsXHJcbiAgICBEcmFnRHJvcE1vZHVsZSxcclxuICAgIEF0ckNvbXBvbmVudHNNb2R1bGVcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgLy8geW91ciBjb21wb25lbnRzXHJcbiAgICAuLi5DT01QT05FTlRTLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICAvLyB0aGlyZCBsaWJzXHJcbiAgICAuLi5USElSRE1PRFVMRVMsXHJcbiAgICAvLyB5b3VyIGNvbXBvbmVudHNcclxuICAgIC4uLkNPTVBPTkVOVFMsXHJcbiAgICBQaXBlTW9kdWxlTW9kdWxlXHJcbiAgXSxcclxuICBwcm92aWRlcnM6U0VSVklDRV9QUk9WSURFU1xyXG59KVxyXG4vL1NoYXJlZE1vZHVsZVxyXG4vLyDlupQg5YyF5ZCr5a6a5LmJ77yaXHJcbi8vIOW6lOeUqOmAmueUqOiHquWumuS5ieS4muWKoee7hOS7tlxyXG4vLyDlupQg5a+85Ye65omA5pyJ5YyF5ZCr55qE5qih5Z2X44CCXHJcbi8vIOS4jeW6lCDmnIkgcHJvdmlkZXJzIOWxnuaAp+OAglxyXG5leHBvcnQgY2xhc3MgQXRyU2hhcmVkTW9kdWxlIHsgfVxyXG4iXX0=
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLXNoYXJlZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL2F0ci1zaGFyZWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEcsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxD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bEIsR0FBRyxVQUFVO3dCQUNiLGdCQUFnQjtxQkFDakI7b0JBQ0QsU0FBUyxFQUFDLGdCQUFnQjtpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQXRyVGFibGVDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4vdXBsb2FkL3VwbG9hZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdHJGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTnpSZXNpemFibGVNb2R1bGUgfSBmcm9tICduZy16b3Jyby1hbnRkL3Jlc2l6YWJsZSc7XHJcbmltcG9ydCB7IHJlZ2lzdGVyTG9jYWxlRGF0YSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB6aCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy96aCc7XHJcbmltcG9ydCB7IExvY2FsVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi9sb2NhbC11cGxvYWQvbG9jYWwtdXBsb2FkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFNlbGVjdFRyZWVDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC10cmVlL3NlbGVjdC10cmVlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZpZGVvQ29tcG9uZW50IH0gZnJvbSAnLi92aWRlby92aWRlby5jb21wb25lbnQnO1xyXG5pbXBvcnQge1ZnQ29udHJvbHNNb2R1bGUsIFZnQ29yZU1vZHVsZSwgVmdPdmVybGF5UGxheU1vZHVsZSwgVmdCdWZmZXJpbmdNb2R1bGV9IGZyb20gXCJuZ3gtdmlkZW9ndWxhclwiO1xyXG5pbXBvcnQge0RyYWdEcm9wTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RyYWctZHJvcFwiO1xyXG5pbXBvcnQge1RhYmxlVGRDb21wb25lbnR9IGZyb20gXCIuL3RhYmxlL3RhYmxlLXRkL3RhYmxlLXRkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1RhYmxlRm9ybUl0ZW1Db21wb25lbnR9IGZyb20gXCIuL3RhYmxlL3RhYmxlLWZvcm0taXRlbS90YWJsZS1mb3JtLWl0ZW0uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7UGlwZU1vZHVsZU1vZHVsZX0gZnJvbSBcIi4uLy4uL2NvcmUvcGlwZS9waXBlLW1vZHVsZS5tb2R1bGVcIjtcclxuaW1wb3J0IHtBdHJDb21wb25lbnRzTW9kdWxlfSBmcm9tIFwiLi4vLi4vYXRyLWNvbXBvbmVudHMubW9kdWxlXCI7XHJcbmltcG9ydCB7Q3VzTmdab3Jyb0FudGRNb2R1bGV9IGZyb20gXCIuLi8uLi9jb3JlL25nei1tb2R1bGUvY3VzLXpvcnJvLWFudGQubW9kdWxlXCI7XHJcbmltcG9ydCB7UXVpbGxNb2R1bGV9IGZyb20gXCJuZ3gtcXVpbGxcIjtcclxuaW1wb3J0IHtRdWlsbEVkaXRvckNvbXBvbmVudH0gZnJvbSBcIi4vcXVpbGwtZWRpdG9yL3F1aWxsLWVkaXRvci5jb21wb25lbnRcIjtcclxuY29uc3QgVEhJUkRNT0RVTEVTID0gW1xyXG4gIEN1c05nWm9ycm9BbnRkTW9kdWxlLFxyXG4gIE56UmVzaXphYmxlTW9kdWxlXHJcbl07XHJcblxyXG5jb25zdCBTRVJWSUNFX1BST1ZJREVTOmFueSA9IFtdO1xyXG5yZWdpc3RlckxvY2FsZURhdGEoemgpO1xyXG4vLyAjZW5kcmVnaW9uXHJcblxyXG4vLyAjcmVnaW9uIHlvdXIgY29tcG9uZXRzICYgZGlyZWN0aXZlc1xyXG5jb25zdCBDT01QT05FTlRTID0gW1F1aWxsRWRpdG9yQ29tcG9uZW50LFRhYmxlRm9ybUl0ZW1Db21wb25lbnQsVGFibGVUZENvbXBvbmVudCxBdHJUYWJsZUNvbXBvbmVudCxVcGxvYWRDb21wb25lbnQsQXRyRm9ybUNvbXBvbmVudCxMb2NhbFVwbG9hZENvbXBvbmVudCxcclxuICBTZWxlY3RUcmVlQ29tcG9uZW50LFZpZGVvQ29tcG9uZW50XTtcclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBQaXBlTW9kdWxlTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgLy8gdGhpcmQgbGlic1xyXG4gICAgLi4uVEhJUkRNT0RVTEVTLFxyXG4gICAgVmdDb3JlTW9kdWxlLFxyXG4gICAgVmdDb250cm9sc01vZHVsZSxcclxuICAgIFZnT3ZlcmxheVBsYXlNb2R1bGUsXHJcbiAgICBWZ0J1ZmZlcmluZ01vZHVsZSxcclxuICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgQXRyQ29tcG9uZW50c01vZHVsZSxcclxuICAgIFF1aWxsTW9kdWxlLmZvclJvb3Qoe1xyXG4gICAgICBtb2R1bGVzOiB7XHJcbiAgICAgICAgc3ludGF4OiBmYWxzZSxcclxuICAgICAgICBpbWFnZVJlc2l6ZToge30sXHJcbiAgICAgICAgdG9vbGJhcjoge1xyXG4gICAgICAgICAgY29udGFpbmVyOiBbXHJcbiAgICAgICAgICAgIFsndW5kbycsICdyZWRvJ10sXHJcbiAgICAgICAgICAgIFsnYm9sZCcsICdpdGFsaWMnLCAndW5kZXJsaW5lJ10sICAgICAgICAvLyB0b2dnbGVkIGJ1dHRvbnNcclxuICAgICAgICAgICAgLy8gWydjb2RlLWJsb2NrJ10sIC8vIGJsb2NrcXVvdGVcclxuICAgICAgICAgICAgLy8gW3sgaGVhZGVyOiAxIH0sIHsgaGVhZGVyOiAyIH1dLCAgICAgICAgICAgICAgIC8vIGN1c3RvbSBidXR0b24gdmFsdWVzXHJcbiAgICAgICAgICAgIFt7bGlzdDogJ29yZGVyZWQnfSwge2xpc3Q6ICdidWxsZXQnfV0sXHJcbiAgICAgICAgICAgIC8vIFt7IHNjcmlwdDogJ3N1YicgfSwgeyBzY3JpcHQ6ICdzdXBlcicgfV0sICAgICAgLy8gc3VwZXJzY3JpcHQvc3Vic2NyaXB0XHJcbiAgICAgICAgICAgIFt7aW5kZW50OiAnLTEnfSwge2luZGVudDogJysxJ31dLCAgICAgICAgICAvLyBvdXRkZW50L2luZGVudFxyXG4gICAgICAgICAgICAvLyBbeyBkaXJlY3Rpb246ICdydGwnIH1dLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0ZXh0IGRpcmVjdGlvblxyXG4gICAgICAgICAgICAvLyBbeyBzaXplOiBbJ3NtYWxsJywgZmFsc2UsICdsYXJnZScsICdodWdlJ10gfV0sICAvLyBjdXN0b20gZHJvcGRvd25cclxuICAgICAgICAgICAgW3toZWFkZXI6IFsxLCAyLCAzLCA0LCA1LCA2LCBmYWxzZV19XSxcclxuICAgICAgICAgICAgW3tjb2xvcjogW119LCB7YmFja2dyb3VuZDogW119XSwgICAgICAgICAgLy8gZHJvcGRvd24gd2l0aCBkZWZhdWx0cyBmcm9tIHRoZW1lXHJcbiAgICAgICAgICAgIC8vIFt7IGZvbnQ6IFtdIH1dLFxyXG4gICAgICAgICAgICBbe2FsaWduOiBbXX1dLFxyXG4gICAgICAgICAgICBbJ2NsZWFuJ10sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyByZW1vdmUgZm9ybWF0dGluZyBidXR0b25cclxuICAgICAgICAgICAgWydpbWFnZSddLCAgICAgICAgICAgICAgICAgICAgICAvLyBsaW5rIGFuZCBpbWFnZSwgdmlkZW9cclxuICAgICAgICAgIF0sXHJcbiAgICAgICAgICBoYW5kbGVyczoge1xyXG4gICAgICAgICAgICByZWRvKCkge1xyXG4gICAgICAgICAgICAgIHRoaXNbJ3F1aWxsJ10uaGlzdG9yeS5yZWRvKCk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHVuZG8oKSB7XHJcbiAgICAgICAgICAgICAgdGhpc1sncXVpbGwnXS5oaXN0b3J5LnVuZG8oKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSksXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIC8vIHlvdXIgY29tcG9uZW50c1xyXG4gICAgLi4uQ09NUE9ORU5UUyxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgLy8gdGhpcmQgbGlic1xyXG4gICAgLi4uVEhJUkRNT0RVTEVTLFxyXG4gICAgLy8geW91ciBjb21wb25lbnRzXHJcbiAgICAuLi5DT01QT05FTlRTLFxyXG4gICAgUGlwZU1vZHVsZU1vZHVsZVxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOlNFUlZJQ0VfUFJPVklERVNcclxufSlcclxuLy9TaGFyZWRNb2R1bGVcclxuLy8g5bqUIOWMheWQq+WumuS5ie+8mlxyXG4vLyDlupTnlKjpgJrnlKjoh6rlrprkuYnkuJrliqHnu4Tku7ZcclxuLy8g5bqUIOWvvOWHuuaJgOacieWMheWQq+eahOaooeWdl+OAglxyXG4vLyDkuI3lupQg5pyJIHByb3ZpZGVycyDlsZ7mgKfjgIJcclxuZXhwb3J0IGNsYXNzIEF0clNoYXJlZE1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,166 @@
1
+ import { Component, Input, forwardRef } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { debounceTime } from 'rxjs/operators';
4
+ import Quill from 'quill';
5
+ // @ts-ignore
6
+ import ImageResize from 'quill-image-resize-module';
7
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
8
+ import { UploadOssService } from "../../../core/services/upload-oss.service";
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../../core/services/upload-oss.service";
11
+ import * as i2 from "ng-zorro-antd/message";
12
+ import * as i3 from "ngx-quill";
13
+ import * as i4 from "ng-zorro-antd/modal";
14
+ import * as i5 from "@angular/forms";
15
+ import * as i6 from "@angular/common";
16
+ import * as i7 from "ng-zorro-antd/core/transition-patch";
17
+ import * as i8 from "ng-zorro-antd/icon";
18
+ Quill.register('modules/imageResize', ImageResize);
19
+ const icons = Quill.import('ui/icons');
20
+ icons.undo = `<svg viewbox="0 0 18 18">
21
+ <polygon class="ql-fill ql-stroke" points="6 10 4 12 2 10 6 10"></polygon>
22
+ <path class="ql-stroke" d="M8.09,13.91A4.6,4.6,0,0,0,9,14,5,5,0,1,0,4,9"></path>
23
+ </svg>`;
24
+ icons.redo = `<svg viewbox="0 0 18 18">
25
+ <polygon class="ql-fill ql-stroke" points="12 10 14 12 16 10 12 10"></polygon>
26
+ <path class="ql-stroke" d="M9.91,13.91A4.6,4.6,0,0,1,9,14a5,5,0,1,1,5-5"></path>
27
+ </svg>`;
28
+ export class QuillEditorComponent {
29
+ constructor(uploadOssService, message) {
30
+ this.uploadOssService = uploadOssService;
31
+ this.message = message;
32
+ this.placeholder = '请输入';
33
+ this.styles = { height: '350px' };
34
+ this.readOnly = false;
35
+ this.needImgSeq = false;
36
+ this.imgUrls = [];
37
+ this.editor$ = new Subject();
38
+ this.imgVis = false;
39
+ }
40
+ ngOnInit() {
41
+ this.editor$.pipe(debounceTime(700)).subscribe((editorContent) => {
42
+ if (typeof (this.onChangeListener) === 'function' && typeof (this.onTouchedListener)) {
43
+ this.onChangeListener(editorContent); // 告诉form,你的表单值改变成了payload
44
+ this.onTouchedListener(); // 告诉form,你的表单有交互发生
45
+ }
46
+ });
47
+ }
48
+ writeValue(value) {
49
+ this.value = value;
50
+ }
51
+ registerOnChange(fn) {
52
+ this.onChangeListener = fn;
53
+ }
54
+ registerOnTouched(fn) {
55
+ this.onTouchedListener = fn;
56
+ }
57
+ setDisabledState(isDisabled) {
58
+ }
59
+ onChange(quill) {
60
+ this.editor$.next(quill.html);
61
+ }
62
+ EditorCreated(quill) {
63
+ const toolbar = quill.getModule('toolbar');
64
+ toolbar.addHandler('image', this.imageHandler.bind(this));
65
+ this.editor = quill;
66
+ }
67
+ imageHandler() {
68
+ const Imageinput = document.createElement('input');
69
+ Imageinput.setAttribute('type', 'file');
70
+ Imageinput.setAttribute('multiple', 'multiple');
71
+ Imageinput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp');
72
+ Imageinput.classList.add('ql-image');
73
+ Imageinput.addEventListener('change', () => {
74
+ if (this.needImgSeq) {
75
+ this.imgVis = true;
76
+ }
77
+ console.log(Imageinput);
78
+ let files = Imageinput.files;
79
+ if (files === null || files.length == 0) {
80
+ return;
81
+ }
82
+ this.imgUrls = [];
83
+ for (let i = 0; i < files.length; i++) {
84
+ const file = files[i];
85
+ if (file === null) {
86
+ continue;
87
+ }
88
+ const error = (res) => {
89
+ this.message.warning('上传失败');
90
+ };
91
+ this.uploadOssService.uploadOss(file).subscribe((url) => {
92
+ console.log(file);
93
+ if (url) {
94
+ this.imgUrls.push({ url: url, file: file, index: i });
95
+ if (!this.needImgSeq) {
96
+ this.editor.insertEmbed(this.editor.getSelection(true).index, 'image', url);
97
+ }
98
+ }
99
+ else {
100
+ this.message.warning('上传失败');
101
+ }
102
+ if (this.needImgSeq && this.imgUrls.length == files.length) {
103
+ this.imgVis = true;
104
+ this.imgUrls.sort((a, b) => a.index - b.index);
105
+ document.getElementById("te")?.click();
106
+ }
107
+ }, error);
108
+ }
109
+ });
110
+ Imageinput.click();
111
+ }
112
+ saveSeq() {
113
+ console.log(123);
114
+ for (let i = this.imgUrls.length - 1; i >= 0; i--) {
115
+ this.editor.insertEmbed(this.editor.getSelection(true).index, 'image', this.imgUrls[i].url);
116
+ }
117
+ this.imgVis = false;
118
+ }
119
+ arrowUp(index) {
120
+ let img = this.imgUrls[index];
121
+ this.imgUrls[index] = this.imgUrls[index - 1];
122
+ this.imgUrls[index - 1] = img;
123
+ }
124
+ arrowDown(index) {
125
+ let img = this.imgUrls[index];
126
+ this.imgUrls[index] = this.imgUrls[index + 1];
127
+ this.imgUrls[index + 1] = img;
128
+ }
129
+ cancle() {
130
+ this.imgVis = false;
131
+ }
132
+ te() {
133
+ console.log('上传完毕');
134
+ }
135
+ }
136
+ QuillEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: QuillEditorComponent, deps: [{ token: i1.UploadOssService }, { token: i2.NzMessageService }], target: i0.ɵɵFactoryTarget.Component });
137
+ QuillEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: QuillEditorComponent, selector: "app-quill-editor", inputs: { placeholder: "placeholder", styles: "styles", value: "value", readOnly: "readOnly", needImgSeq: "needImgSeq" }, providers: [
138
+ UploadOssService,
139
+ {
140
+ provide: NG_VALUE_ACCESSOR,
141
+ useExisting: forwardRef(() => QuillEditorComponent),
142
+ multi: true
143
+ }
144
+ ], ngImport: i0, template: "<quill-editor\r\n [styles]=\"styles\"\r\n [placeholder]=\"placeholder\"\r\n (onEditorCreated)=\"EditorCreated($event)\"\r\n [(ngModel)]=\"value\"\r\n (onContentChanged)=\"onChange($event)\"\r\n [readOnly]=\"readOnly\"\r\n></quill-editor>\r\n<!--\u8FD9\u4E2Adiv,\u662F\u56E0\u4E3A\u4E0A\u4F20\u5B8C\u6BD5\u7126\u70B9\u8FD8\u5728\u5BCC\u6587\u672C\u91CC,\u5F39\u51FA\u65E0\u6CD5\u663E\u793A.....-->\r\n<div id=\"te\" (click)=\"te()\"></div>\r\n<nz-modal [(nzVisible)]=\"imgVis\" (nzOnOk)=\"saveSeq()\" (nzOnCancel)=\"cancle()\" nzMaskClosable=\"false\"\r\n [nzStyle]=\"{padding:0}\">\r\n <ng-container *nzModalContent>\r\n <div style=\"max-height:600px;overflow:auto;margin-top: 10px;\">\r\n <ng-container *ngTemplateOutlet=\"imgsContent\"></ng-container>\r\n </div>\r\n </ng-container>\r\n</nz-modal>\r\n<ng-template #imgsContent>\r\n <ng-container *ngFor=\"let imgOpt of imgUrls;let i = index\">\r\n <div class=\"img-div\">\r\n <img [src]=\"imgOpt.url\" [ngStyle]=\"{ width: '100px',display: 'inline-block', margin:'5px' }\"/>\r\n <div style=\"margin-left: 20px; color: grey;\">{{imgOpt.file.name}}</div>\r\n <div style=\"margin-right: 20px; flex: 1;text-align: right;\">\r\n <a title=\"\u4E0A\u79FB\" *ngIf=\" i > 0\" style=\"display: block;\" (click)=\"arrowUp(i)\">\r\n <i nz-icon nzType=\"arrow-up\" nzTheme=\"outline\" style=\"color: #1890ff; font-size: 15px;\"></i>\r\n \u4E0A\u79FB</a>\r\n <a title=\"\u4E0B\u79FB\" *ngIf=\" i < imgUrls.length - 1\" (click)=\"arrowDown(i)\">\r\n <i nz-icon nzType=\"arrow-down\" nzTheme=\"outline\" style=\"color: #1890ff; font-size: 15px\"></i>\r\n \u4E0B\u79FB</a>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n\r\n", styles: [".img-div{border:1px solid #d9d9d9;border-radius:4px;margin-top:5px;display:flex;align-items:center;padding:0 5px}\n"], components: [{ type: i3.QuillEditorComponent, selector: "quill-editor" }, { type: i4.NzModalComponent, selector: "nz-modal", inputs: ["nzMask", "nzMaskClosable", "nzCloseOnNavigation", "nzVisible", "nzClosable", "nzOkLoading", "nzOkDisabled", "nzCancelDisabled", "nzCancelLoading", "nzKeyboard", "nzNoAnimation", "nzCentered", "nzContent", "nzComponentParams", "nzFooter", "nzZIndex", "nzWidth", "nzWrapClassName", "nzClassName", "nzStyle", "nzTitle", "nzCloseIcon", "nzMaskStyle", "nzBodyStyle", "nzOkText", "nzCancelText", "nzOkType", "nzOkDanger", "nzIconType", "nzModalType", "nzAutofocus", "nzOnOk", "nzOnCancel"], outputs: ["nzOnOk", "nzOnCancel", "nzAfterOpen", "nzAfterClose", "nzVisibleChange"], exportAs: ["nzModal"] }], directives: [{ type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.NzModalContentDirective, selector: "[nzModalContent]", exportAs: ["nzModalContent"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.ɵ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: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }] });
145
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: QuillEditorComponent, decorators: [{
146
+ type: Component,
147
+ args: [{ selector: 'app-quill-editor', providers: [
148
+ UploadOssService,
149
+ {
150
+ provide: NG_VALUE_ACCESSOR,
151
+ useExisting: forwardRef(() => QuillEditorComponent),
152
+ multi: true
153
+ }
154
+ ], template: "<quill-editor\r\n [styles]=\"styles\"\r\n [placeholder]=\"placeholder\"\r\n (onEditorCreated)=\"EditorCreated($event)\"\r\n [(ngModel)]=\"value\"\r\n (onContentChanged)=\"onChange($event)\"\r\n [readOnly]=\"readOnly\"\r\n></quill-editor>\r\n<!--\u8FD9\u4E2Adiv,\u662F\u56E0\u4E3A\u4E0A\u4F20\u5B8C\u6BD5\u7126\u70B9\u8FD8\u5728\u5BCC\u6587\u672C\u91CC,\u5F39\u51FA\u65E0\u6CD5\u663E\u793A.....-->\r\n<div id=\"te\" (click)=\"te()\"></div>\r\n<nz-modal [(nzVisible)]=\"imgVis\" (nzOnOk)=\"saveSeq()\" (nzOnCancel)=\"cancle()\" nzMaskClosable=\"false\"\r\n [nzStyle]=\"{padding:0}\">\r\n <ng-container *nzModalContent>\r\n <div style=\"max-height:600px;overflow:auto;margin-top: 10px;\">\r\n <ng-container *ngTemplateOutlet=\"imgsContent\"></ng-container>\r\n </div>\r\n </ng-container>\r\n</nz-modal>\r\n<ng-template #imgsContent>\r\n <ng-container *ngFor=\"let imgOpt of imgUrls;let i = index\">\r\n <div class=\"img-div\">\r\n <img [src]=\"imgOpt.url\" [ngStyle]=\"{ width: '100px',display: 'inline-block', margin:'5px' }\"/>\r\n <div style=\"margin-left: 20px; color: grey;\">{{imgOpt.file.name}}</div>\r\n <div style=\"margin-right: 20px; flex: 1;text-align: right;\">\r\n <a title=\"\u4E0A\u79FB\" *ngIf=\" i > 0\" style=\"display: block;\" (click)=\"arrowUp(i)\">\r\n <i nz-icon nzType=\"arrow-up\" nzTheme=\"outline\" style=\"color: #1890ff; font-size: 15px;\"></i>\r\n \u4E0A\u79FB</a>\r\n <a title=\"\u4E0B\u79FB\" *ngIf=\" i < imgUrls.length - 1\" (click)=\"arrowDown(i)\">\r\n <i nz-icon nzType=\"arrow-down\" nzTheme=\"outline\" style=\"color: #1890ff; font-size: 15px\"></i>\r\n \u4E0B\u79FB</a>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n\r\n", styles: [".img-div{border:1px solid #d9d9d9;border-radius:4px;margin-top:5px;display:flex;align-items:center;padding:0 5px}\n"] }]
155
+ }], ctorParameters: function () { return [{ type: i1.UploadOssService }, { type: i2.NzMessageService }]; }, propDecorators: { placeholder: [{
156
+ type: Input
157
+ }], styles: [{
158
+ type: Input
159
+ }], value: [{
160
+ type: Input
161
+ }], readOnly: [{
162
+ type: Input
163
+ }], needImgSeq: [{
164
+ type: Input
165
+ }] } });
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpbGwtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcXVpbGwtZWRpdG9yL3F1aWxsLWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3F1aWxsLWVkaXRvci9xdWlsbC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixhQUFhO0FBQ2IsT0FBTyxXQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXZFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7Ozs7O0FBRTNFLEtBQUssQ0FBQyxRQUFRLENBQUMscUJBQXFCLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDbkQsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUN2QyxLQUFLLENBQUMsSUFBSSxHQUFHOzs7T0FHTixDQUFDO0FBQ1IsS0FBSyxDQUFDLElBQUksR0FBRzs7O09BR04sQ0FBQztBQWVSLE1BQU0sT0FBTyxvQkFBb0I7SUFjL0IsWUFBb0IsZ0JBQWtDLEVBQVUsT0FBeUI7UUFBckUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtC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QUcsQ0FBQyxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELEVBQUU7UUFDQSxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ3JCLENBQUM7O2tIQWxJVSxvQkFBb0I7c0dBQXBCLG9CQUFvQixxS0FUcEI7UUFDVCxnQkFBZ0I7UUFDaEI7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7WUFDbkQsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLDBCQ2hDSCxpdkRBbUNBOzRGRERhLG9CQUFvQjtrQkFiaEMsU0FBUzsrQkFDRSxrQkFBa0IsYUFHakI7d0JBQ1QsZ0JBQWdCO3dCQUNoQjs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQzs0QkFDbkQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7c0lBSVEsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIElucHV0LCBmb3J3YXJkUmVmLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge2RlYm91bmNlVGltZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgUXVpbGwgZnJvbSAncXVpbGwnO1xyXG4vLyBAdHMtaWdub3JlXHJcbmltcG9ydCBJbWFnZVJlc2l6ZSBmcm9tICdxdWlsbC1pbWFnZS1yZXNpemUtbW9kdWxlJztcclxuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtOek1lc3NhZ2VTZXJ2aWNlfSBmcm9tICduZy16b3Jyby1hbnRkL21lc3NhZ2UnO1xyXG5pbXBvcnQge1VwbG9hZE9zc1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3VwbG9hZC1vc3Muc2VydmljZVwiO1xyXG5cclxuUXVpbGwucmVnaXN0ZXIoJ21vZHVsZXMvaW1hZ2VSZXNpemUnLCBJbWFnZVJlc2l6ZSk7XHJcbmNvbnN0IGljb25zID0gUXVpbGwuaW1wb3J0KCd1aS9pY29ucycpO1xyXG5pY29ucy51bmRvID0gYDxzdmcgdmlld2JveD1cIjAgMCAxOCAxOFwiPlxyXG4gIDxwb2x5Z29uIGNsYXNzPVwicWwtZmlsbCBxbC1zdHJva2VcIiBwb2ludHM9XCI2IDEwIDQgMTIgMiAxMCA2IDEwXCI+PC9wb2x5Z29uPlxyXG4gIDxwYXRoIGNsYXNzPVwicWwtc3Ryb2tlXCIgZD1cIk04LjA5LDEzLjkxQTQuNiw0LjYsMCwwLDAsOSwxNCw1LDUsMCwxLDAsNCw5XCI+PC9wYXRoPlxyXG48L3N2Zz5gO1xyXG5pY29ucy5yZWRvID0gYDxzdmcgdmlld2JveD1cIjAgMCAxOCAxOFwiPlxyXG4gIDxwb2x5Z29uIGNsYXNzPVwicWwtZmlsbCBxbC1zdHJva2VcIiBwb2ludHM9XCIxMiAxMCAxNCAxMiAxNiAxMCAxMiAxMFwiPjwvcG9seWdvbj5cclxuICA8cGF0aCBjbGFzcz1cInFsLXN0cm9rZVwiIGQ9XCJNOS45MSwxMy45MUE0LjYsNC42LDAsMCwxLDksMTRhNSw1LDAsMSwxLDUtNVwiPjwvcGF0aD5cclxuPC9zdmc+YDtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXF1aWxsLWVkaXRvcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3F1aWxsLWVkaXRvci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcXVpbGwtZWRpdG9yLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBVcGxvYWRPc3NTZXJ2aWNlLFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUXVpbGxFZGl0b3JDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFF1aWxsRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcblxyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJ+ivt+i+k+WFpSc7XHJcbiAgQElucHV0KCkgc3R5bGVzOiBhbnkgPSB7aGVpZ2h0OiAnMzUwcHgnfTtcclxuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nIHwgYW55OyAvLyDnu4Tku7blr7nlupTnmoQg4oCcIG5nTW9kZWwg4oCdXHJcbiAgQElucHV0KCkgcmVhZE9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBuZWVkSW1nU2VxOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZWRpdG9yOiBhbnk7XHJcbiAgb25DaGFuZ2VMaXN0ZW5lcjogYW55OyAvLyDmlLnlj5jlgLzlm57osINcclxuICBvblRvdWNoZWRMaXN0ZW5lcjogYW55OyAvLyDkuqTkupLlm57osINcclxuICBpbWdVcmxzOmFueSA9IFtdO1xyXG4gIGVkaXRvciQgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgaW1nVmlzID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdXBsb2FkT3NzU2VydmljZTogVXBsb2FkT3NzU2VydmljZSwgcHJpdmF0ZSBtZXNzYWdlOiBOek1lc3NhZ2VTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZWRpdG9yJC5waXBlKFxyXG4gICAgICBkZWJvdW5jZVRpbWUoNzAwKVxyXG4gICAgKS5zdWJzY3JpYmUoKGVkaXRvckNvbnRlbnQ6IHN0cmluZykgPT4ge1xyXG4gICAgICBpZiAodHlwZW9mICh0aGlzLm9uQ2hhbmdlTGlzdGVuZXIpID09PSAnZnVuY3Rpb24nICYmIHR5cGVvZiAodGhpcy5vblRvdWNoZWRMaXN0ZW5lcikpIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlTGlzdGVuZXIoZWRpdG9yQ29udGVudCk7IC8vIOWRiuiviWZvcm3vvIzkvaDnmoTooajljZXlgLzmlLnlj5jmiJDkuoZwYXlsb2FkXHJcbiAgICAgICAgdGhpcy5vblRvdWNoZWRMaXN0ZW5lcigpOyAvLyDlkYror4lmb3Jt77yM5L2g55qE6KGo5Y2V5pyJ5Lqk5LqS5Y+R55SfXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgYW55W10pOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZUxpc3RlbmVyID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZExpc3RlbmVyID0gZm47XHJcbiAgfVxyXG5cclxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2UocXVpbGw6IGFueSkge1xyXG4gICAgdGhpcy5lZGl0b3IkLm5leHQocXVpbGwuaHRtbCk7XHJcbiAgfVxyXG5cclxuICBFZGl0b3JDcmVhdGVkKHF1aWxsOiBhbnkpIHtcclxuICAgIGNvbnN0IHRvb2xiYXIgPSBxdWlsbC5nZXRNb2R1bGUoJ3Rvb2xiYXInKTtcclxuICAgIHRvb2xiYXIuYWRkSGFuZGxlcignaW1hZ2UnLCB0aGlzLmltYWdlSGFuZGxlci5iaW5kKHRoaXMpKTtcclxuICAgIHRoaXMuZWRpdG9yID0gcXVpbGw7XHJcbiAgfVxyXG5cclxuICBpbWFnZUhhbmRsZXIoKSB7XHJcbiAgICBjb25zdCBJbWFnZWlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcclxuICAgIEltYWdlaW5wdXQuc2V0QXR0cmlidXRlKCd0eXBlJywgJ2ZpbGUnKTtcclxuICAgIEltYWdlaW5wdXQuc2V0QXR0cmlidXRlKCdtdWx0aXBsZScsICdtdWx0aXBsZScpO1xyXG4gICAgSW1hZ2VpbnB1dC5zZXRBdHRyaWJ1dGUoJ2FjY2VwdCcsICdpbWFnZS9wbmcsIGltYWdlL2dpZiwgaW1hZ2UvanBlZywgaW1hZ2UvYm1wJyk7XHJcbiAgICBJbWFnZWlucHV0LmNsYXNzTGlzdC5hZGQoJ3FsLWltYWdlJyk7XHJcbiAgICBJbWFnZWlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsICgpID0+IHtcclxuICAgICAgaWYodGhpcy5uZWVkSW1nU2VxKXtcclxuICAgICAgICB0aGlzLmltZ1ZpcyA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgY29uc29sZS5sb2coSW1hZ2VpbnB1dCk7XHJcbiAgICAgIGxldCBmaWxlczphbnkgPSBJbWFnZWlucHV0LmZpbGVzO1xyXG4gICAgICBpZiAoZmlsZXMgPT09IG51bGwgfHwgZmlsZXMubGVuZ3RoID09IDApIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5pbWdVcmxzID0gW107XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gZmlsZXNbaV07XHJcbiAgICAgICAgaWYgKGZpbGUgPT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIGNvbnN0IGVycm9yID0gKHJlczphbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMubWVzc2FnZS53YXJuaW5nKCfkuIrkvKDlpLHotKUnKTtcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLnVwbG9hZE9zc1NlcnZpY2UudXBsb2FkT3NzKGZpbGUpLnN1YnNjcmliZSgodXJsKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhmaWxlKTtcclxuICAgICAgICAgIGlmICh1cmwpIHtcclxuICAgICAgICAgICAgdGhpcy5pbWdVcmxzLnB1c2goe3VybDogdXJsLCBmaWxlOiBmaWxlLCBpbmRleDogaX0pO1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMubmVlZEltZ1NlcSkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZWRpdG9yLmluc2VydEVtYmVkKHRoaXMuZWRpdG9yLmdldFNlbGVjdGlvbih0cnVlKS5pbmRleCwgJ2ltYWdlJywgdXJsKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlLndhcm5pbmcoJ+S4iuS8oOWksei0pScpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMubmVlZEltZ1NlcSAmJiB0aGlzLmltZ1VybHMubGVuZ3RoID09IGZpbGVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICB0aGlzLmltZ1ZpcyA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuaW1nVXJscy5zb3J0KChhOmFueSwgYjphbnkpID0+IGEuaW5kZXggLSBiLmluZGV4KTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJ0ZVwiKT8uY2xpY2soKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LCBlcnJvcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9KTtcclxuXHJcbiAgICBJbWFnZWlucHV0LmNsaWNrKCk7XHJcbiAgfVxyXG5cclxuICBzYXZlU2VxKCkge1xyXG4gICAgY29uc29sZS5sb2coMTIzKTtcclxuICAgIGZvciAobGV0IGkgPSB0aGlzLmltZ1VybHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcclxuICAgICAgdGhpcy5lZGl0b3IuaW5zZXJ0RW1iZWQodGhpcy5lZGl0b3IuZ2V0U2VsZWN0aW9uKHRydWUpLmluZGV4LCAnaW1hZ2UnLCB0aGlzLmltZ1VybHNbaV0udXJsKTtcclxuICAgIH1cclxuICAgIHRoaXMuaW1nVmlzID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBhcnJvd1VwKGluZGV4OmFueSkge1xyXG4gICAgbGV0IGltZyA9IHRoaXMuaW1nVXJsc1tpbmRleF07XHJcbiAgICB0aGlzLmltZ1VybHNbaW5kZXhdID0gdGhpcy5pbWdVcmxzW2luZGV4IC0gMV07XHJcbiAgICB0aGlzLmltZ1VybHNbaW5kZXggLSAxXSA9IGltZztcclxuICB9XHJcblxyXG4gIGFycm93RG93bihpbmRleDphbnkpIHtcclxuICAgIGxldCBpbWcgPSB0aGlzLmltZ1VybHNbaW5kZXhdO1xyXG4gICAgdGhpcy5pbWdVcmxzW2luZGV4XSA9IHRoaXMuaW1nVXJsc1tpbmRleCArIDFdO1xyXG4gICAgdGhpcy5pbWdVcmxzW2luZGV4ICsgMV0gPSBpbWc7XHJcbiAgfVxyXG5cclxuICBjYW5jbGUoKSB7XHJcbiAgICB0aGlzLmltZ1ZpcyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgdGUoKSB7XHJcbiAgICBjb25zb2xlLmxvZygn5LiK5Lyg5a6M5q+VJylcclxuICB9XHJcbn1cclxuIiwiPHF1aWxsLWVkaXRvclxyXG4gIFtzdHlsZXNdPVwic3R5bGVzXCJcclxuICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gIChvbkVkaXRvckNyZWF0ZWQpPVwiRWRpdG9yQ3JlYXRlZCgkZXZlbnQpXCJcclxuICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcclxuICAob25Db250ZW50Q2hhbmdlZCk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcclxuICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxyXG4+PC9xdWlsbC1lZGl0b3I+XHJcbjwhLS3ov5nkuKpkaXYs5piv5Zug5Li65LiK5Lyg5a6M5q+V54Sm54K56L+Y5Zyo5a+M5paH5pys6YeMLOW8ueWHuuaXoOazleaYvuekui4uLi4uLS0+XHJcbjxkaXYgaWQ9XCJ0ZVwiIChjbGljayk9XCJ0ZSgpXCI+PC9kaXY+XHJcbjxuei1tb2RhbCBbKG56VmlzaWJsZSldPVwiaW1nVmlzXCIgKG56T25Payk9XCJzYXZlU2VxKClcIiAobnpPbkNhbmNlbCk9XCJjYW5jbGUoKVwiIG56TWFza0Nsb3NhYmxlPVwiZmFsc2VcIlxyXG4gICAgICAgICAgW256U3R5bGVdPVwie3BhZGRpbmc6MH1cIj5cclxuICA8bmctY29udGFpbmVyICpuek1vZGFsQ29udGVudD5cclxuICA8ZGl2IHN0eWxlPVwibWF4LWhlaWdodDo2MDBweDtvdmVyZmxvdzphdXRvO21hcmdpbi10b3A6IDEwcHg7XCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW1nc0NvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uei1tb2RhbD5cclxuPG5nLXRlbXBsYXRlICNpbWdzQ29udGVudD5cclxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpbWdPcHQgb2YgaW1nVXJscztsZXQgaSA9IGluZGV4XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW1nLWRpdlwiPlxyXG4gICAgICA8aW1nIFtzcmNdPVwiaW1nT3B0LnVybFwiIFtuZ1N0eWxlXT1cInsgd2lkdGg6ICcxMDBweCcsZGlzcGxheTogJ2lubGluZS1ibG9jaycsIG1hcmdpbjonNXB4JyB9XCIvPlxyXG4gICAgICA8ZGl2IHN0eWxlPVwibWFyZ2luLWxlZnQ6IDIwcHg7IGNvbG9yOiBncmV5O1wiPnt7aW1nT3B0LmZpbGUubmFtZX19PC9kaXY+XHJcbiAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDIwcHg7IGZsZXg6IDE7dGV4dC1hbGlnbjogcmlnaHQ7XCI+XHJcbiAgICAgICAgPGEgdGl0bGU9XCLkuIrnp7tcIiAqbmdJZj1cIiBpID4gMFwiIHN0eWxlPVwiZGlzcGxheTogYmxvY2s7XCIgKGNsaWNrKT1cImFycm93VXAoaSlcIj5cclxuICAgICAgICAgIDxpIG56LWljb24gbnpUeXBlPVwiYXJyb3ctdXBcIiBuelRoZW1lPVwib3V0bGluZVwiIHN0eWxlPVwiY29sb3I6ICMxODkwZmY7IGZvbnQtc2l6ZTogMTVweDtcIj48L2k+XHJcbiAgICAgICAgICDkuIrnp7s8L2E+XHJcbiAgICAgICAgPGEgdGl0bGU9XCLkuIvnp7tcIiAqbmdJZj1cIiBpIDwgaW1nVXJscy5sZW5ndGggLSAxXCIgKGNsaWNrKT1cImFycm93RG93bihpKVwiPlxyXG4gICAgICAgICAgPGkgbnotaWNvbiBuelR5cGU9XCJhcnJvdy1kb3duXCIgbnpUaGVtZT1cIm91dGxpbmVcIiBzdHlsZT1cImNvbG9yOiAjMTg5MGZmOyBmb250LXNpemU6IDE1cHhcIj48L2k+XHJcbiAgICAgICAgICDkuIvnp7s8L2E+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG4iXX0=