asksuite-citrus 2.1.0-beta.1 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/asksuite-citrus.module.mjs +17 -6
- package/esm2022/lib/classes/richtext-wrapper.mjs +76 -3
- package/esm2022/lib/components/accordion/accordion.component.mjs +8 -5
- package/esm2022/lib/components/accordion/extendable-panel/extendable-panel.component.mjs +21 -4
- package/esm2022/lib/components/autocomplete/autocomplete.component.mjs +6 -4
- package/esm2022/lib/components/avatar/avatar.component.mjs +2 -2
- package/esm2022/lib/components/box/box.component.mjs +2 -2
- package/esm2022/lib/components/button/button.component.mjs +2 -2
- package/esm2022/lib/components/character-counter/character-counter.component.mjs +2 -2
- package/esm2022/lib/components/checkbox/checkbox.component.mjs +2 -2
- package/esm2022/lib/components/chips/chips.component.mjs +2 -2
- package/esm2022/lib/components/date-picker/date-picker-calendar/date-picker-calendar.component.mjs +2 -2
- package/esm2022/lib/components/date-picker/date-picker.component.mjs +2 -2
- package/esm2022/lib/components/dropdown-container/dropdown-container.component.mjs +4 -7
- package/esm2022/lib/components/input/input.component.mjs +2 -2
- package/esm2022/lib/components/modal/confirmation-modal/confirmation-modal.component.mjs +13 -9
- package/esm2022/lib/components/modal/modal.component.mjs +6 -3
- package/esm2022/lib/components/pagination/pagination.component.mjs +2 -2
- package/esm2022/lib/components/phone-ddi/phone-ddi.component.mjs +9 -5
- package/esm2022/lib/components/richtext-toolbox/richtext-toolbox.component.mjs +3 -3
- package/esm2022/lib/components/richtext-url-prompt/richtext-url-prompt.component.mjs +3 -3
- package/esm2022/lib/components/select/select.component.mjs +2 -2
- package/esm2022/lib/components/table/table.component.mjs +7 -4
- package/esm2022/lib/components/toast/toast.component.mjs +2 -2
- package/esm2022/lib/directives/ask-dropdown.directive.mjs +14 -3
- package/esm2022/lib/directives/button/ask-base-button.directive.mjs +17 -4
- package/esm2022/lib/directives/index.mjs +3 -1
- package/esm2022/lib/directives/input/input.directive.mjs +19 -0
- package/esm2022/lib/directives/list-item/list-item.directive.mjs +19 -0
- package/esm2022/lib/directives/richtext-toolbox/richtext-toolbox.directive.mjs +23 -2
- package/esm2022/lib/helpers/html-panel-quill-blot.helper.mjs +21 -0
- package/esm2022/lib/services/modal/modal.config.mjs +2 -2
- package/esm2022/lib/services/modal/modal.service.mjs +20 -14
- package/fesm2022/asksuite-citrus.mjs +292 -74
- package/fesm2022/asksuite-citrus.mjs.map +1 -1
- package/lib/asksuite-citrus.module.d.ts +11 -9
- package/lib/classes/richtext-wrapper.d.ts +12 -2
- package/lib/components/accordion/accordion.component.d.ts +2 -1
- package/lib/components/accordion/extendable-panel/extendable-panel.component.d.ts +7 -2
- package/lib/components/dropdown-container/dropdown-container.component.d.ts +2 -4
- package/lib/components/modal/confirmation-modal/confirmation-modal.component.d.ts +11 -1
- package/lib/components/modal/modal.component.d.ts +2 -1
- package/lib/components/table/table.component.d.ts +2 -1
- package/lib/directives/ask-dropdown.directive.d.ts +3 -1
- package/lib/directives/button/ask-base-button.directive.d.ts +9 -3
- package/lib/directives/index.d.ts +2 -0
- package/lib/directives/input/input.directive.d.ts +6 -0
- package/lib/directives/list-item/list-item.directive.d.ts +6 -0
- package/lib/directives/richtext-toolbox/richtext-toolbox.directive.d.ts +11 -1
- package/lib/helpers/html-panel-quill-blot.helper.d.ts +9 -0
- package/lib/services/modal/modal.config.d.ts +3 -1
- package/lib/services/modal/modal.service.d.ts +5 -5
- package/package.json +4 -1
- package/styles/badge.scss +64 -0
- package/styles/button.scss +65 -16
- package/styles/input.scss +5 -0
- package/styles/list-item.scss +8 -0
- package/styles/modal.scss +0 -1
- package/styles/styles.scss +3 -63
@@ -19,7 +19,7 @@ import { SkeletonComponent } from './components/skeleton/skeleton.component';
|
|
19
19
|
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
|
20
20
|
import { ToastComponent } from './components/toast/toast.component';
|
21
21
|
import { SpinnerComponent } from "./directives/spinner/spinner.component";
|
22
|
-
import { AskButtonDirective, AskDropdownDirective, AskTextButtonDirective, AskTooltipDirective, AutofocusDirective, BadgeDirective, RichtextToolboxDirective, ScrollDirective, SpinnerDirective } from "./directives";
|
22
|
+
import { AskButtonDirective, AskDropdownDirective, AskTextButtonDirective, AskTooltipDirective, AutofocusDirective, BadgeDirective, InputDirective, ListItemDirective, RichtextToolboxDirective, ScrollDirective, SpinnerDirective } from "./directives";
|
23
23
|
import { ModalBodyDirective, ModalComponent, ModalFooterDirective, ModalHeaderDirective } from './components/modal';
|
24
24
|
import { CharacterCounterComponent } from './components/character-counter/character-counter.component';
|
25
25
|
import { AccordionComponent } from "./components/accordion/accordion.component";
|
@@ -37,8 +37,11 @@ import { ConfirmationModalComponent } from './components/modal/confirmation-moda
|
|
37
37
|
import { LoadingBarComponent } from './components/loading-bar/loading-bar.component';
|
38
38
|
import { MatProgressBarModule } from "@angular/material/progress-bar";
|
39
39
|
import { AskStrokedButtonDirective } from './directives/button/ask-stroked-button.directive';
|
40
|
+
import Quill from 'quill';
|
41
|
+
import { HTMLPanelQuillBlot } from './helpers/html-panel-quill-blot.helper';
|
40
42
|
import * as i0 from "@angular/core";
|
41
43
|
import * as i1 from "@ngx-translate/core";
|
44
|
+
Quill.register(HTMLPanelQuillBlot);
|
42
45
|
export class AsksuiteCitrusModule {
|
43
46
|
static forRoot(params) {
|
44
47
|
return {
|
@@ -91,7 +94,9 @@ export class AsksuiteCitrusModule {
|
|
91
94
|
ForceBreakLinePipe,
|
92
95
|
ConfirmationModalComponent,
|
93
96
|
LoadingBarComponent,
|
94
|
-
AskStrokedButtonDirective
|
97
|
+
AskStrokedButtonDirective,
|
98
|
+
InputDirective,
|
99
|
+
ListItemDirective], imports: [CommonModule,
|
95
100
|
FormsModule,
|
96
101
|
ReactiveFormsModule,
|
97
102
|
CdkOverlayOrigin,
|
@@ -133,7 +138,9 @@ export class AsksuiteCitrusModule {
|
|
133
138
|
RichtextToolboxDirective,
|
134
139
|
ForceBreakLinePipe,
|
135
140
|
LoadingBarComponent,
|
136
|
-
AskStrokedButtonDirective
|
141
|
+
AskStrokedButtonDirective,
|
142
|
+
InputDirective,
|
143
|
+
ListItemDirective] }); }
|
137
144
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AsksuiteCitrusModule, providers: [
|
138
145
|
provideNgxMask()
|
139
146
|
], imports: [CommonModule,
|
@@ -188,7 +195,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
188
195
|
ForceBreakLinePipe,
|
189
196
|
ConfirmationModalComponent,
|
190
197
|
LoadingBarComponent,
|
191
|
-
AskStrokedButtonDirective
|
198
|
+
AskStrokedButtonDirective,
|
199
|
+
InputDirective,
|
200
|
+
ListItemDirective
|
192
201
|
],
|
193
202
|
imports: [
|
194
203
|
CommonModule,
|
@@ -238,11 +247,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
238
247
|
RichtextToolboxDirective,
|
239
248
|
ForceBreakLinePipe,
|
240
249
|
LoadingBarComponent,
|
241
|
-
AskStrokedButtonDirective
|
250
|
+
AskStrokedButtonDirective,
|
251
|
+
InputDirective,
|
252
|
+
ListItemDirective
|
242
253
|
],
|
243
254
|
providers: [
|
244
255
|
provideNgxMask()
|
245
256
|
]
|
246
257
|
}]
|
247
258
|
}] });
|
248
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNrc3VpdGUtY2l0cnVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2Fza3N1aXRlLWNpdHJ1cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3hHLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEdBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDM0UsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDbkYsT0FBTyxFQUNMLDJCQUEyQixFQUM1QixNQUFNLDhFQUE4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Qjt3QkFDbEIsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixrQkFBa0I7d0JBQ2xCLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQix5QkFBeUI7d0JBQ3pCLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsWUFBWTt3QkFDWix3QkFBd0I7d0JBQ3hCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQix5QkFBeUI7cUJBQzFCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxjQUFjLEVBQUU7cUJBQ2pCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0J1dHRvbkNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtNYXRUb29sdGlwTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7SW5wdXRDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9pbnB1dC9pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHtTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge0JveENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2JveC9ib3guY29tcG9uZW50JztcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QXZhdGFyQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnO1xuaW1wb3J0IHtEcm9wZG93bkNvbnRhaW5lckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2Ryb3Bkb3duLWNvbnRhaW5lci9kcm9wZG93bi1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7QXV0b2NvbXBsZXRlQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHtDZGtDb25uZWN0ZWRPdmVybGF5LCBDZGtPdmVybGF5T3JpZ2luLCBPdmVybGF5TW9kdWxlLH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtDaGlwc0NvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XG5pbXBvcnQge0NoZWNrYm94Q29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmltcG9ydCB7RGF0ZVBpY2tlckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBEYXRlUGlja2VyQ2FsZW5kYXJDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLWNhbGVuZGFyL2RhdGUtcGlja2VyLWNhbGVuZGFyLmNvbXBvbmVudCc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1NrZWxldG9uQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvc2tlbGV0b24vc2tlbGV0b24uY29tcG9uZW50JztcbmltcG9ydCB7Tmd4U2tlbGV0b25Mb2FkZXJNb2R1bGV9IGZyb20gJ25neC1za2VsZXRvbi1sb2FkZXInO1xuaW1wb3J0IHtUb2FzdENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5pbXBvcnQge1NwaW5uZXJDb21wb25lbnR9IGZyb20gXCIuL2RpcmVjdGl2ZXMvc3Bpbm5lci9zcGlubmVyLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtcbiAgQXNrQnV0dG9uRGlyZWN0aXZlLFxuICBBc2tEcm9wZG93bkRpcmVjdGl2ZSxcbiAgQXNrVGV4dEJ1dHRvbkRpcmVjdGl2ZSxcbiAgQXNrVG9vbHRpcERpcmVjdGl2ZSxcbiAgQXV0b2ZvY3VzRGlyZWN0aXZlLFxuICBCYWRnZURpcmVjdGl2ZSxcbiAgUmljaHRleHRUb29sYm94RGlyZWN0aXZlLFxuICBTY3JvbGxEaXJlY3RpdmUsXG4gIFNwaW5uZXJEaXJlY3RpdmVcbn0gZnJvbSBcIi4vZGlyZWN0aXZlc1wiO1xuaW1wb3J0IHtNb2RhbEJvZHlEaXJlY3RpdmUsIE1vZGFsQ29tcG9uZW50LCBNb2RhbEZvb3RlckRpcmVjdGl2ZSwgTW9kYWxIZWFkZXJEaXJlY3RpdmV9IGZyb20gJy4vY29tcG9uZW50cy9tb2RhbCc7XG5pbXBvcnQge0NoYXJhY3RlckNvdW50ZXJDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9jaGFyYWN0ZXItY291bnRlci9jaGFyYWN0ZXItY291bnRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtBY2NvcmRpb25Db21wb25lbnR9IGZyb20gXCIuL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi5jb21wb25lbnRcIjtcbmltcG9ydCB7RXh0ZW5kYWJsZVBhbmVsQ29tcG9uZW50fSBmcm9tIFwiLi9jb21wb25lbnRzL2FjY29yZGlvbi9leHRlbmRhYmxlLXBhbmVsL2V4dGVuZGFibGUtcGFuZWwuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2luYXRlUGlwZSB9IGZyb20gJy4vcGlwZXMvcGFnaW5hdGUvcGFnaW5hdGUucGlwZSc7XG5pbXBvcnQgeyBSaWNodGV4dFVybFByb21wdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yaWNodGV4dC11cmwtcHJvbXB0L3JpY2h0ZXh0LXVybC1wcm9tcHQuY29tcG9uZW50JztcbmltcG9ydCB7IFJpY2h0ZXh0VG9vbGJveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yaWNodGV4dC10b29sYm94L3JpY2h0ZXh0LXRvb2xib3guY29tcG9uZW50JztcbmltcG9ydCB7UGhvbmVEZGlDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9waG9uZS1kZGkvcGhvbmUtZGRpLmNvbXBvbmVudCc7XG5pbXBvcnQge05neE1hc2tEaXJlY3RpdmUsIE5neE1hc2tQaXBlLCBwcm92aWRlTmd4TWFza30gZnJvbSBcIm5neC1tYXNrXCI7XG5pbXBvcnQge0ZMQUdfUFJPVklERVJfVVJMfSBmcm9tIFwiLi4vc2hhcmVkL3Byb3ZpZGVycy9mbGFnLnByb3ZpZGVyXCI7XG5pbXBvcnQge0ZvcmNlQnJlYWtMaW5lUGlwZX0gZnJvbSBcIi4vcGlwZXMvZm9yY2UtYnJlYWstbGluZS9mb3JjZS1icmVhay1saW5lLnBpcGVcIjtcbmltcG9ydCB7IENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IExvYWRpbmdCYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGluZy1iYXIvbG9hZGluZy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7TWF0UHJvZ3Jlc3NCYXJNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXJcIjtcbmltcG9ydCB7IEFza1N0cm9rZWRCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYnV0dG9uL2Fzay1zdHJva2VkLWJ1dHRvbi5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgSW5wdXRDb21wb25lbnQsXG4gICAgU2VsZWN0Q29tcG9uZW50LFxuICAgIEJveENvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgRHJvcGRvd25Db250YWluZXJDb21wb25lbnQsXG4gICAgQXNrRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICAgIFBob25lRGRpQ29tcG9uZW50LFxuICAgIENoaXBzQ29tcG9uZW50LFxuICAgIENoZWNrYm94Q29tcG9uZW50LFxuICAgIERhdGVQaWNrZXJDb21wb25lbnQsXG4gICAgRGF0ZVBpY2tlckNhbGVuZGFyQ29tcG9uZW50LFxuICAgIFNrZWxldG9uQ29tcG9uZW50LFxuICAgIFNwaW5uZXJDb21wb25lbnQsXG4gICAgU3Bpbm5lckRpcmVjdGl2ZSxcbiAgICBCYWRnZURpcmVjdGl2ZSxcbiAgICBBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgU2Nyb2xsRGlyZWN0aXZlLFxuICAgIEFza1Rvb2x0aXBEaXJlY3RpdmUsXG4gICAgVG9hc3RDb21wb25lbnQsXG4gICAgQXNrQnV0dG9uRGlyZWN0aXZlLFxuICAgIE1vZGFsQ29tcG9uZW50LFxuICAgIE1vZGFsQm9keURpcmVjdGl2ZSxcbiAgICBNb2RhbEhlYWRlckRpcmVjdGl2ZSxcbiAgICBNb2RhbEZvb3RlckRpcmVjdGl2ZSxcbiAgICBDaGFyYWN0ZXJDb3VudGVyQ29tcG9uZW50LFxuICAgIEFjY29yZGlvbkNvbXBvbmVudCxcbiAgICBFeHRlbmRhYmxlUGFuZWxDb21wb25lbnQsXG4gICAgVGFibGVDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBQYWdpbmF0ZVBpcGUsXG4gICAgUmljaHRleHRUb29sYm94RGlyZWN0aXZlLFxuICAgIFJpY2h0ZXh0VXJsUHJvbXB0Q29tcG9uZW50LFxuICAgIFJpY2h0ZXh0VG9vbGJveENvbXBvbmVudCxcbiAgICBBc2tUZXh0QnV0dG9uRGlyZWN0aXZlLFxuICAgIEZvcmNlQnJlYWtMaW5lUGlwZSxcbiAgICBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCxcbiAgICBMb2FkaW5nQmFyQ29tcG9uZW50LFxuICAgIEFza1N0cm9rZWRCdXR0b25EaXJlY3RpdmVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIENka092ZXJsYXlPcmlnaW4sXG4gICAgQ2RrQ29ubmVjdGVkT3ZlcmxheSxcbiAgICBPdmVybGF5TW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpLFxuICAgIE5neFNrZWxldG9uTG9hZGVyTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTmd4TWFza0RpcmVjdGl2ZSxcbiAgICBOZ3hNYXNrUGlwZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIElucHV0Q29tcG9uZW50LFxuICAgIFNlbGVjdENvbXBvbmVudCxcbiAgICBCb3hDb21wb25lbnQsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIERyb3Bkb3duQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIEFza0Ryb3Bkb3duRGlyZWN0aXZlLFxuICAgIEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcbiAgICBQaG9uZURkaUNvbXBvbmVudCxcbiAgICBDaGlwc0NvbXBvbmVudCxcbiAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICBEYXRlUGlja2VyQ29tcG9uZW50LFxuICAgIERhdGVQaWNrZXJDYWxlbmRhckNvbXBvbmVudCxcbiAgICBTa2VsZXRvbkNvbXBvbmVudCxcbiAgICBTcGlubmVyRGlyZWN0aXZlLFxuICAgIEJhZGdlRGlyZWN0aXZlLFxuICAgIEF1dG9mb2N1c0RpcmVjdGl2ZSxcbiAgICBTY3JvbGxEaXJlY3RpdmUsXG4gICAgQXNrVG9vbHRpcERpcmVjdGl2ZSxcbiAgICBBc2tCdXR0b25EaXJlY3RpdmUsXG4gICAgQXNrVGV4dEJ1dHRvbkRpcmVjdGl2ZSxcbiAgICBNb2RhbEJvZHlEaXJlY3RpdmUsXG4gICAgTW9kYWxIZWFkZXJEaXJlY3RpdmUsXG4gICAgTW9kYWxGb290ZXJEaXJlY3RpdmUsXG4gICAgQ2hhcmFjdGVyQ291bnRlckNvbXBvbmVudCxcbiAgICBBY2NvcmRpb25Db21wb25lbnQsXG4gICAgRXh0ZW5kYWJsZVBhbmVsQ29tcG9uZW50LFxuICAgIFRhYmxlQ29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25Db21wb25lbnQsXG4gICAgUGFnaW5hdGVQaXBlLFxuICAgIFJpY2h0ZXh0VG9vbGJveERpcmVjdGl2ZSxcbiAgICBGb3JjZUJyZWFrTGluZVBpcGUsXG4gICAgTG9hZGluZ0JhckNvbXBvbmVudCxcbiAgICBBc2tTdHJva2VkQnV0dG9uRGlyZWN0aXZlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHByb3ZpZGVOZ3hNYXNrKClcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBc2tzdWl0ZUNpdHJ1c01vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KHBhcmFtcz86IHsgZmxhZ1VybD86IHN0cmluZyB9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxBc2tzdWl0ZUNpdHJ1c01vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQXNrc3VpdGVDaXRydXNNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEZMQUdfUFJPVklERVJfVVJMLFxuICAgICAgICAgIHVzZVZhbHVlOiBwYXJhbXM/LmZsYWdVcmwgfHwgJydcbiAgICAgICAgfVxuICAgICAgXVxuICAgIH1cbiAgfVxufVxuIl19
|
259
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNrc3VpdGUtY2l0cnVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2Fza3N1aXRlLWNpdHJ1cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3hHLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEdBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDM0UsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDbkYsT0FBTyxFQUNMLDJCQUEyQixFQUM1QixNQUFNLDhFQUE4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QUNQLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLFlBQVk7d0JBQ1osZUFBZTt3QkFDZiwwQkFBMEI7d0JBQzFCLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixpQkFBaUI7d0JBQ2pCLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLDJCQUEyQjt3QkFDM0IsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLHlCQUF5Qjt3QkFDekIsa0JBQWtCO3dCQUNsQix3QkFBd0I7d0JBQ3hCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLHdCQUF3Qjt3QkFDeEIsa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLHlCQUF5Qjt3QkFDekIsY0FBYzt3QkFDZCxpQkFBaUI7cUJBQ2xCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxjQUFjLEVBQUU7cUJBQ2pCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0J1dHRvbkNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtNYXRUb29sdGlwTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7SW5wdXRDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9pbnB1dC9pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHtTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge0JveENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2JveC9ib3guY29tcG9uZW50JztcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QXZhdGFyQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnO1xuaW1wb3J0IHtEcm9wZG93bkNvbnRhaW5lckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2Ryb3Bkb3duLWNvbnRhaW5lci9kcm9wZG93bi1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7QXV0b2NvbXBsZXRlQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHtDZGtDb25uZWN0ZWRPdmVybGF5LCBDZGtPdmVybGF5T3JpZ2luLCBPdmVybGF5TW9kdWxlLH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtDaGlwc0NvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XG5pbXBvcnQge0NoZWNrYm94Q29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmltcG9ydCB7RGF0ZVBpY2tlckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBEYXRlUGlja2VyQ2FsZW5kYXJDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLWNhbGVuZGFyL2RhdGUtcGlja2VyLWNhbGVuZGFyLmNvbXBvbmVudCc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1NrZWxldG9uQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvc2tlbGV0b24vc2tlbGV0b24uY29tcG9uZW50JztcbmltcG9ydCB7Tmd4U2tlbGV0b25Mb2FkZXJNb2R1bGV9IGZyb20gJ25neC1za2VsZXRvbi1sb2FkZXInO1xuaW1wb3J0IHtUb2FzdENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5pbXBvcnQge1NwaW5uZXJDb21wb25lbnR9IGZyb20gXCIuL2RpcmVjdGl2ZXMvc3Bpbm5lci9zcGlubmVyLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtcbiAgQXNrQnV0dG9uRGlyZWN0aXZlLFxuICBBc2tEcm9wZG93bkRpcmVjdGl2ZSxcbiAgQXNrVGV4dEJ1dHRvbkRpcmVjdGl2ZSxcbiAgQXNrVG9vbHRpcERpcmVjdGl2ZSxcbiAgQXV0b2ZvY3VzRGlyZWN0aXZlLFxuICBCYWRnZURpcmVjdGl2ZSxcbiAgSW5wdXREaXJlY3RpdmUsXG4gIExpc3RJdGVtRGlyZWN0aXZlLFxuICBSaWNodGV4dFRvb2xib3hEaXJlY3RpdmUsXG4gIFNjcm9sbERpcmVjdGl2ZSxcbiAgU3Bpbm5lckRpcmVjdGl2ZVxufSBmcm9tIFwiLi9kaXJlY3RpdmVzXCI7XG5pbXBvcnQge01vZGFsQm9keURpcmVjdGl2ZSwgTW9kYWxDb21wb25lbnQsIE1vZGFsRm9vdGVyRGlyZWN0aXZlLCBNb2RhbEhlYWRlckRpcmVjdGl2ZX0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsJztcbmltcG9ydCB7Q2hhcmFjdGVyQ291bnRlckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYXJhY3Rlci1jb3VudGVyL2NoYXJhY3Rlci1jb3VudGVyLmNvbXBvbmVudCc7XG5pbXBvcnQge0FjY29yZGlvbkNvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50cy9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtFeHRlbmRhYmxlUGFuZWxDb21wb25lbnR9IGZyb20gXCIuL2NvbXBvbmVudHMvYWNjb3JkaW9uL2V4dGVuZGFibGUtcGFuZWwvZXh0ZW5kYWJsZS1wYW5lbC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFnaW5hdGVQaXBlIH0gZnJvbSAnLi9waXBlcy9wYWdpbmF0ZS9wYWdpbmF0ZS5waXBlJztcbmltcG9ydCB7IFJpY2h0ZXh0VXJsUHJvbXB0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JpY2h0ZXh0LXVybC1wcm9tcHQvcmljaHRleHQtdXJsLXByb21wdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmljaHRleHRUb29sYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JpY2h0ZXh0LXRvb2xib3gvcmljaHRleHQtdG9vbGJveC5jb21wb25lbnQnO1xuaW1wb3J0IHtQaG9uZURkaUNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL3Bob25lLWRkaS9waG9uZS1kZGkuY29tcG9uZW50JztcbmltcG9ydCB7Tmd4TWFza0RpcmVjdGl2ZSwgTmd4TWFza1BpcGUsIHByb3ZpZGVOZ3hNYXNrfSBmcm9tIFwibmd4LW1hc2tcIjtcbmltcG9ydCB7RkxBR19QUk9WSURFUl9VUkx9IGZyb20gXCIuLi9zaGFyZWQvcHJvdmlkZXJzL2ZsYWcucHJvdmlkZXJcIjtcbmltcG9ydCB7Rm9yY2VCcmVha0xpbmVQaXBlfSBmcm9tIFwiLi9waXBlcy9mb3JjZS1icmVhay1saW5lL2ZvcmNlLWJyZWFrLWxpbmUucGlwZVwiO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9kYWwvY29uZmlybWF0aW9uLW1vZGFsL2NvbmZpcm1hdGlvbi1tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9hZGluZ0JhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2FkaW5nLWJhci9sb2FkaW5nLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHtNYXRQcm9ncmVzc0Jhck1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhclwiO1xuaW1wb3J0IHsgQXNrU3Ryb2tlZEJ1dHRvbkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9idXR0b24vYXNrLXN0cm9rZWQtYnV0dG9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgUXVpbGwgZnJvbSAncXVpbGwnO1xuaW1wb3J0IHsgSFRNTFBhbmVsUXVpbGxCbG90IH0gZnJvbSAnLi9oZWxwZXJzL2h0bWwtcGFuZWwtcXVpbGwtYmxvdC5oZWxwZXInO1xuXG5cblF1aWxsLnJlZ2lzdGVyKEhUTUxQYW5lbFF1aWxsQmxvdCk7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBJbnB1dENvbXBvbmVudCxcbiAgICBTZWxlY3RDb21wb25lbnQsXG4gICAgQm94Q29tcG9uZW50LFxuICAgIEF2YXRhckNvbXBvbmVudCxcbiAgICBEcm9wZG93bkNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBBc2tEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICBBdXRvY29tcGxldGVDb21wb25lbnQsXG4gICAgUGhvbmVEZGlDb21wb25lbnQsXG4gICAgQ2hpcHNDb21wb25lbnQsXG4gICAgQ2hlY2tib3hDb21wb25lbnQsXG4gICAgRGF0ZVBpY2tlckNvbXBvbmVudCxcbiAgICBEYXRlUGlja2VyQ2FsZW5kYXJDb21wb25lbnQsXG4gICAgU2tlbGV0b25Db21wb25lbnQsXG4gICAgU3Bpbm5lckNvbXBvbmVudCxcbiAgICBTcGlubmVyRGlyZWN0aXZlLFxuICAgIEJhZGdlRGlyZWN0aXZlLFxuICAgIEF1dG9mb2N1c0RpcmVjdGl2ZSxcbiAgICBTY3JvbGxEaXJlY3RpdmUsXG4gICAgQXNrVG9vbHRpcERpcmVjdGl2ZSxcbiAgICBUb2FzdENvbXBvbmVudCxcbiAgICBBc2tCdXR0b25EaXJlY3RpdmUsXG4gICAgTW9kYWxDb21wb25lbnQsXG4gICAgTW9kYWxCb2R5RGlyZWN0aXZlLFxuICAgIE1vZGFsSGVhZGVyRGlyZWN0aXZlLFxuICAgIE1vZGFsRm9vdGVyRGlyZWN0aXZlLFxuICAgIENoYXJhY3RlckNvdW50ZXJDb21wb25lbnQsXG4gICAgQWNjb3JkaW9uQ29tcG9uZW50LFxuICAgIEV4dGVuZGFibGVQYW5lbENvbXBvbmVudCxcbiAgICBUYWJsZUNvbXBvbmVudCxcbiAgICBQYWdpbmF0aW9uQ29tcG9uZW50LFxuICAgIFBhZ2luYXRlUGlwZSxcbiAgICBSaWNodGV4dFRvb2xib3hEaXJlY3RpdmUsXG4gICAgUmljaHRleHRVcmxQcm9tcHRDb21wb25lbnQsXG4gICAgUmljaHRleHRUb29sYm94Q29tcG9uZW50LFxuICAgIEFza1RleHRCdXR0b25EaXJlY3RpdmUsXG4gICAgRm9yY2VCcmVha0xpbmVQaXBlLFxuICAgIENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50LFxuICAgIExvYWRpbmdCYXJDb21wb25lbnQsXG4gICAgQXNrU3Ryb2tlZEJ1dHRvbkRpcmVjdGl2ZSxcbiAgICBJbnB1dERpcmVjdGl2ZSxcbiAgICBMaXN0SXRlbURpcmVjdGl2ZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgQ2RrT3ZlcmxheU9yaWdpbixcbiAgICBDZGtDb25uZWN0ZWRPdmVybGF5LFxuICAgIE92ZXJsYXlNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCksXG4gICAgTmd4U2tlbGV0b25Mb2FkZXJNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBOZ3hNYXNrRGlyZWN0aXZlLFxuICAgIE5neE1hc2tQaXBlLFxuICAgIE1hdFByb2dyZXNzQmFyTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgSW5wdXRDb21wb25lbnQsXG4gICAgU2VsZWN0Q29tcG9uZW50LFxuICAgIEJveENvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgRHJvcGRvd25Db250YWluZXJDb21wb25lbnQsXG4gICAgQXNrRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICAgIFBob25lRGRpQ29tcG9uZW50LFxuICAgIENoaXBzQ29tcG9uZW50LFxuICAgIENoZWNrYm94Q29tcG9uZW50LFxuICAgIERhdGVQaWNrZXJDb21wb25lbnQsXG4gICAgRGF0ZVBpY2tlckNhbGVuZGFyQ29tcG9uZW50LFxuICAgIFNrZWxldG9uQ29tcG9uZW50LFxuICAgIFNwaW5uZXJEaXJlY3RpdmUsXG4gICAgQmFkZ2VEaXJlY3RpdmUsXG4gICAgQXV0b2ZvY3VzRGlyZWN0aXZlLFxuICAgIFNjcm9sbERpcmVjdGl2ZSxcbiAgICBBc2tUb29sdGlwRGlyZWN0aXZlLFxuICAgIEFza0J1dHRvbkRpcmVjdGl2ZSxcbiAgICBBc2tUZXh0QnV0dG9uRGlyZWN0aXZlLFxuICAgIE1vZGFsQm9keURpcmVjdGl2ZSxcbiAgICBNb2RhbEhlYWRlckRpcmVjdGl2ZSxcbiAgICBNb2RhbEZvb3RlckRpcmVjdGl2ZSxcbiAgICBDaGFyYWN0ZXJDb3VudGVyQ29tcG9uZW50LFxuICAgIEFjY29yZGlvbkNvbXBvbmVudCxcbiAgICBFeHRlbmRhYmxlUGFuZWxDb21wb25lbnQsXG4gICAgVGFibGVDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBQYWdpbmF0ZVBpcGUsXG4gICAgUmljaHRleHRUb29sYm94RGlyZWN0aXZlLFxuICAgIEZvcmNlQnJlYWtMaW5lUGlwZSxcbiAgICBMb2FkaW5nQmFyQ29tcG9uZW50LFxuICAgIEFza1N0cm9rZWRCdXR0b25EaXJlY3RpdmUsXG4gICAgSW5wdXREaXJlY3RpdmUsXG4gICAgTGlzdEl0ZW1EaXJlY3RpdmVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZU5neE1hc2soKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEFza3N1aXRlQ2l0cnVzTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QocGFyYW1zPzogeyBmbGFnVXJsPzogc3RyaW5nIH0pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFza3N1aXRlQ2l0cnVzTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBBc2tzdWl0ZUNpdHJ1c01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRkxBR19QUk9WSURFUl9VUkwsXG4gICAgICAgICAgdXNlVmFsdWU6IHBhcmFtcz8uZmxhZ1VybCB8fCAnJ1xuICAgICAgICB9XG4gICAgICBdXG4gICAgfVxuICB9XG59XG4iXX0=
|
@@ -43,6 +43,31 @@ export class RichtextWrapper {
|
|
43
43
|
this.enter$ = new Subject();
|
44
44
|
this.maxLength = -1;
|
45
45
|
this.breakOnEnter = false;
|
46
|
+
this.allowImages = false;
|
47
|
+
this.quillFormats = [
|
48
|
+
'background',
|
49
|
+
'bold',
|
50
|
+
'color',
|
51
|
+
'font',
|
52
|
+
'code',
|
53
|
+
'italic',
|
54
|
+
'link',
|
55
|
+
'size',
|
56
|
+
'strike',
|
57
|
+
'script',
|
58
|
+
'underline',
|
59
|
+
'blockquote',
|
60
|
+
'header',
|
61
|
+
'indent',
|
62
|
+
'list',
|
63
|
+
'align',
|
64
|
+
'direction',
|
65
|
+
'code-block',
|
66
|
+
'formula',
|
67
|
+
'image',
|
68
|
+
'htmlPanel'
|
69
|
+
// 'video'
|
70
|
+
];
|
46
71
|
this.textChangeHandler = () => {
|
47
72
|
this.update();
|
48
73
|
};
|
@@ -90,10 +115,16 @@ export class RichtextWrapper {
|
|
90
115
|
placeholder: '',
|
91
116
|
modules: {
|
92
117
|
clipboard: {
|
93
|
-
matchers: [
|
118
|
+
matchers: [
|
119
|
+
[Node.TEXT_NODE, this.urlMatcher.bind(this)],
|
120
|
+
['IMG', this.imageMatcher.bind(this)],
|
121
|
+
['PICTURE', this.imageMatcher.bind(this)],
|
122
|
+
[Node.ELEMENT_NODE, this.htmlPanelMatcher.bind(this)]
|
123
|
+
],
|
94
124
|
},
|
95
125
|
keyboard: { bindings: this.bindings },
|
96
126
|
},
|
127
|
+
formats: this.quillFormats
|
97
128
|
});
|
98
129
|
this.listenEditorChanges();
|
99
130
|
}
|
@@ -182,7 +213,30 @@ export class RichtextWrapper {
|
|
182
213
|
this.quill.root.dataset['placeholder'] = placeholder;
|
183
214
|
}
|
184
215
|
setText(text) {
|
185
|
-
this.quill.
|
216
|
+
this.quill.clipboard.dangerouslyPasteHTML(text, 'silent');
|
217
|
+
}
|
218
|
+
getTextWithoutHtmlTags() {
|
219
|
+
return this.quill.getText();
|
220
|
+
}
|
221
|
+
insertText(index, text, emitEvent) {
|
222
|
+
const source = emitEvent ? 'user' : 'silent';
|
223
|
+
this.quill.insertText(index, text, source);
|
224
|
+
}
|
225
|
+
setShortcutTemplate(key, template) {
|
226
|
+
this.templateReplacerSubscription?.unsubscribe();
|
227
|
+
this.templateReplacerSubscription = fromEvent(this.quill, 'text-change').subscribe(([_delta, _oldDelta, _source]) => {
|
228
|
+
const delta = _delta;
|
229
|
+
delta.ops?.forEach((op) => {
|
230
|
+
if (op.insert === key) {
|
231
|
+
const range = this.quill.getSelection();
|
232
|
+
if (!range)
|
233
|
+
return;
|
234
|
+
const newPos = range.index;
|
235
|
+
this.quill.deleteText(newPos - 1, 1);
|
236
|
+
this.quill.insertText(newPos - 1, template);
|
237
|
+
}
|
238
|
+
});
|
239
|
+
});
|
186
240
|
}
|
187
241
|
setMaxLength(length) {
|
188
242
|
this.maxLength = length;
|
@@ -222,6 +276,12 @@ export class RichtextWrapper {
|
|
222
276
|
setBreakOnEnter(breakOnEnter) {
|
223
277
|
this.breakOnEnter = breakOnEnter;
|
224
278
|
}
|
279
|
+
setAllowImages(allowImages) {
|
280
|
+
this.allowImages = allowImages;
|
281
|
+
}
|
282
|
+
getCurrentCursorPosition() {
|
283
|
+
return this.quill.getSelection();
|
284
|
+
}
|
225
285
|
destroy() {
|
226
286
|
this.quill.off('selection-change', this.selectionChangeHandler);
|
227
287
|
this.quill.off('text-change', this.textChangeHandler);
|
@@ -229,6 +289,7 @@ export class RichtextWrapper {
|
|
229
289
|
this.enter$.unsubscribe();
|
230
290
|
this.stateSub.unsubscribe();
|
231
291
|
this.maxLengthSubscription?.unsubscribe();
|
292
|
+
this.templateReplacerSubscription?.unsubscribe();
|
232
293
|
}
|
233
294
|
isToolDisabled(tool) {
|
234
295
|
return this.stateSub.value.disabledTools.includes(tool);
|
@@ -256,6 +317,18 @@ export class RichtextWrapper {
|
|
256
317
|
}
|
257
318
|
return delta;
|
258
319
|
}
|
320
|
+
imageMatcher(node, delta) {
|
321
|
+
if (this.allowImages)
|
322
|
+
return delta;
|
323
|
+
const Delta = Quill.import('delta');
|
324
|
+
return new Delta().insert('');
|
325
|
+
}
|
326
|
+
htmlPanelMatcher(node, delta) {
|
327
|
+
if (node.id === 'htmlPanel') {
|
328
|
+
delta.ops = [{ insert: { htmlPanel: node.innerHTML } }];
|
329
|
+
}
|
330
|
+
return delta;
|
331
|
+
}
|
259
332
|
listenEditorChanges() {
|
260
333
|
this.quill.on('selection-change', this.selectionChangeHandler);
|
261
334
|
this.quill.on('text-change', this.textChangeHandler);
|
@@ -303,4 +376,4 @@ export const QuillProxy = {
|
|
303
376
|
export const RichtextWrapperProxy = {
|
304
377
|
RichtextWrapper
|
305
378
|
};
|
306
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaHRleHQtd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2NsYXNzZXMvcmljaHRleHQtd3JhcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQXdGLE1BQU0sT0FBTyxDQUFDO0FBQzdHLE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFnQixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQVF0RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUQsTUFBTSxPQUFPLGVBQWU7SUF5RTFCLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUE7SUFDOUIsQ0FBQztJQUlELElBQVcsa0JBQWtCO1FBQzNCLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDO2FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FDbkQsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ3JELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDaEIsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFBO0lBQ2pDLENBQUM7SUFFRCxJQUFX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QWU7Q0FDaEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBFbGVtZW50UmVmLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBRdWlsbCwgeyBCb3VuZHNTdGF0aWMsIFJhbmdlU3RhdGljLCBTZWxlY3Rpb25DaGFuZ2VIYW5kbGVyLCBTb3VyY2VzLCBUZXh0Q2hhbmdlSGFuZGxlciB9IGZyb20gJ3F1aWxsJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmaWx0ZXIsIGZyb21FdmVudCwgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBSaWNoVGV4dEZ1bmN0aW9ucyxcbiAgUmljaHRleHRGb3JtYXRzLFxuICBUb29sLFxuICBUb29sS2V5cyxcbiAgVG9vbHNTdGF0ZSxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcy9yaWNodGV4dC10b29sYm94LmludGVyZmFjZSc7XG5pbXBvcnQgeyBVUkxfUkVHRVggfSBmcm9tICcuLi9jb25zdGFudHMvdXJsLXJlZ2V4LmNvbnN0YW50JztcblxuZXhwb3J0IGNsYXNzIFJpY2h0ZXh0V3JhcHBlciBpbXBsZW1lbnRzIFJpY2hUZXh0RnVuY3Rpb25zIHtcbiAgcHJpdmF0ZSBxdWlsbCE6IFF1aWxsO1xuICBwcml2YXRlIHN0YXRlU3ViID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUb29sc1N0YXRlPih7XG4gICAgaGFzU2VsZWN0aW9uOiBmYWxzZSxcbiAgICBoYXNGb2N1czogZmFsc2UsXG4gICAgZm9ybWF0czoge1xuICAgICAgaXRhbGljOiBmYWxzZSxcbiAgICAgIGJvbGQ6IGZhbHNlLFxuICAgICAgdW5kZXJsaW5lOiBmYWxzZSxcbiAgICAgIHN0cmlrZTogZmFsc2UsXG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxpc3RfYnVsbGV0ZWQ6IGZhbHNlLFxuICAgICAgbGlzdF9udW1iZXJlZDogZmFsc2UsXG4gICAgICBqdXN0aWZ5X2xlZnQ6IGZhbHNlLFxuICAgICAganVzdGlmeV9jZW50ZXI6IGZhbHNlLFxuICAgICAganVzdGlmeV9yaWdodDogZmFsc2UsXG4gICAgfSxcbiAgICBkaXNhYmxlZFRvb2xzOiBbXVxuICB9KTtcbiAgcHJpdmF0ZSBlc2MkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgcHJpdmF0ZSBlbnRlciQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBwcml2YXRlIG1heExlbmd0aCA9IC0xO1xuICBwcml2YXRlIGJyZWFrT25FbnRlciA9IGZhbHNlO1xuXG4gIHByaXZhdGUgdGV4dENoYW5nZUhhbmRsZXI6IFRleHRDaGFuZ2VIYW5kbGVyID0gKCkgPT4ge1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBzZWxlY3Rpb25DaGFuZ2VIYW5kbGVyOiBTZWxlY3Rpb25DaGFuZ2VIYW5kbGVyID0gKFxuICAgIHZhbHVlOiBSYW5nZVN0YXRpYyxcbiAgICBvbGRSYW5nZTogUmFuZ2VTdGF0aWMsXG4gICAgc291cmNlOiBTb3VyY2VzXG4gICkgPT4ge1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBiaW5kaW5ncyA9IHtcbiAgICBib2xkOiB7XG4gICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0Qm9sZCgpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9LFxuICAgIH0sXG4gICAgaXRhbGljOiB7XG4gICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0SXRhbGljKCk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0sXG4gICAgfSxcbiAgICB1bmRlcmxpbmU6IHtcbiAgICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRVbmRlcmxpbmUoKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSxcbiAgICB9LFxuICAgIGVzY2FwZTp7XG4gICAgICBrZXk6ICdlc2NhcGUnLFxuICAgICAgaGFuZGxlcjogKCkgPT4ge1xuICAgICAgICB0aGlzLmVzYyQubmV4dCh0cnVlKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0sXG4gICAgZW50ZXI6IHtcbiAgICAgIGtleTogJ2VudGVyJyxcbiAgICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgICAgdGhpcy5lbnRlciQubmV4dCh0cnVlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnJlYWtPbkVudGVyO1xuICAgICAgfVxuICAgIH1cblxuICB9O1xuICBwcml2YXRlIG1heExlbmd0aFN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICBwdWJsaWMgZ2V0IHN0YXRlKCl7XG4gICAgICByZXR1cm4gdGhpcy5zdGF0ZVN1Yi52YWx1ZVxuICB9XG4gIFxuICBwdWJsaWMgc3RhdGUkID0gdGhpcy5zdGF0ZVN1Yi5hc09ic2VydmFibGUoKTtcbiAgICBcbiAgcHVibGljIGdldCBsaXN0ZW5UZXh0Q2hhbmdlcyQoKXtcbiAgICByZXR1cm4gZnJvbUV2ZW50KHRoaXMucXVpbGwsICd0ZXh0LWNoYW5nZScpXG4gICAgICAucGlwZShtYXAoKCkgPT4gdGhpcy5xdWlsbC5yb290LmlubmVySFRNTCkpOyBcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGlzdGVuT25Ub3VjaGVkJCgpIHtcbiAgICByZXR1cm4gZnJvbUV2ZW50KHRoaXMucXVpbGwsICdzZWxlY3Rpb24tY2hhbmdlJykucGlwZShcbiAgICAgIGZpbHRlcigoKSA9PiBCb29sZWFuKHRoaXMucXVpbGwuZ2V0U2VsZWN0aW9uKGZhbHNlKSkpLFxuICAgICAgbWFwKCgpID0+IG51bGwpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGlzdGVuRXNjYXBlJCgpe1xuICAgIHJldHVybiB0aGlzLmVzYyQuYXNPYnNlcnZhYmxlKClcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGlzdGVuRW50ZXIkKCl7XG4gICAgcmV0dXJuIHRoaXMuZW50ZXIkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICApIHtcbiAgICBjb25zdCBlZGl0b3JJZCA9IGBlZGl0b3ItJHtuZXcgRGF0ZSgpLmdldFRpbWUoKX1gO1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnaWQnLCBlZGl0b3JJZCk7XG4gICAgdGhpcy5xdWlsbCA9IG5ldyBRdWlsbFByb3h5LlF1aWxsKGAjJHtlZGl0b3JJZH1gLCB7XG4gICAgICBwbGFjZWhvbGRlcjogJycsXG4gICAgICBtb2R1bGVzOiB7XG4gICAgICAgIGNsaXBib2FyZDoge1xuICAgICAgICAgIG1hdGNoZXJzOiBbW05vZGUuVEVYVF9OT0RFLCB0aGlzLnVybE1hdGNoZXIuYmluZCh0aGlzKV1dLFxuICAgICAgICB9LFxuICAgICAgICBrZXlib2FyZDogeyBiaW5kaW5nczogdGhpcy5iaW5kaW5ncyB9LFxuICAgICAgfSxcbiAgICB9KTtcbiAgICB0aGlzLmxpc3RlbkVkaXRvckNoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRJdGFsaWMoKSB7XG4gICAgaWYodGhpcy5pc1Rvb2xEaXNhYmxlZCgnaXRhbGljJykpIHJldHVybjtcbiAgICB0aGlzLnF1aWxsLmZvcm1hdCgnaXRhbGljJywgIXRoaXMuc3RhdGUuZm9ybWF0cy5pdGFsaWMpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0Qm9sZCgpIHtcbiAgICBpZih0aGlzLmlzVG9vbERpc2FibGVkKCdib2xkJykpIHJldHVyblxuICAgIHRoaXMucXVpbGwuZm9ybWF0KCdib2xkJywgIXRoaXMuc3RhdGUuZm9ybWF0cy5ib2xkKTtcbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldFVuZGVybGluZSgpIHtcbiAgICBpZih0aGlzLmlzVG9vbERpc2FibGVkKCd1bmRlcmxpbmUnKSkgcmV0dXJuO1xuICAgIHRoaXMucXVpbGwuZm9ybWF0KCd1bmRlcmxpbmUnLCAhdGhpcy5zdGF0ZS5mb3JtYXRzLnVuZGVybGluZSk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRTdHJpa2UoKSB7XG4gICAgaWYodGhpcy5pc1Rvb2xEaXNhYmxlZCgnc3RyaWtlJykpIHJldHVybjtcbiAgICB0aGlzLnF1aWxsLmZvcm1hdCgnc3RyaWtlJywgIXRoaXMuc3RhdGUuZm9ybWF0cy5zdHJpa2UpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0TGlzdE51bWJlcmVkKCkge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ2xpc3RfbnVtYmVyZWQnKSkgcmV0dXJuO1xuICAgIGlmICh0aGlzLnN0YXRlLmZvcm1hdHMubGlzdF9udW1iZXJlZClcbiAgICAgIHRoaXMucXVpbGwuZm9ybWF0KCdsaXN0JywgbnVsbCk7XG4gICAgZWxzZSAgXG4gICAgICB0aGlzLnF1aWxsLmZvcm1hdCgnbGlzdCcsICdvcmRlcmVkJyk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRMaXN0QnVsbGV0ZWQoKSB7XG4gICAgaWYodGhpcy5pc1Rvb2xEaXNhYmxlZCgnbGlzdF9idWxsZXRlZCcpKSByZXR1cm47XG4gICAgaWYgKHRoaXMuc3RhdGUuZm9ybWF0cy5saXN0X2J1bGxldGVkKVxuICAgICAgdGhpcy5xdWlsbC5mb3JtYXQoJ2xpc3QnLCBudWxsKTtcbiAgICBlbHNlICBcbiAgICAgIHRoaXMucXVpbGwuZm9ybWF0KCdsaXN0JywgJ2J1bGxldGVkJyk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRMaW5rKGxpbms6IHN0cmluZykge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ2xpbmsnKSkgcmV0dXJuO1xuXG4gICAgY29uc3QgcmFuZ2UgPSB0aGlzLnF1aWxsLmdldFNlbGVjdGlvbih0cnVlKTtcblxuICAgIGlmIChyYW5nZSAmJiAhcmFuZ2UubGVuZ3RoKSB7XG4gICAgICBjb25zdCBbdGV4dEJsb2F0LCBvZmZzZXRdID0gdGhpcy5xdWlsbC5nZXRMZWFmKHJhbmdlIS5pbmRleCk7XG5cbiAgICAgIGNvbnN0IHN0YXJ0ID0gcmFuZ2UhLmluZGV4IC0gb2Zmc2V0O1xuICAgICAgY29uc3QgbGVuZ3RoID0gdGV4dEJsb2F0Lmxlbmd0aCgpO1xuXG4gICAgICB0aGlzLnF1aWxsLmZvcm1hdFRleHQoc3RhcnQsIGxlbmd0aCwgJ2xpbmsnLCBsaW5rKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5xdWlsbC5mb3JtYXQoJ2xpbmsnLCBsaW5rKTtcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldEp1c3RpZnlMZWZ0KCkge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ2p1c3RpZnlfbGVmdCcpKSByZXR1cm47XG4gICAgdGhpcy5xdWlsbC5mb3JtYXQoJ2FsaWduJywgbnVsbCk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRKdXN0aWZ5Q2VudGVyKCkge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ2p1c3RpZnlfY2VudGVyJykpIHJldHVybjtcbiAgICB0aGlzLnF1aWxsLmZvcm1hdCgnYWxpZ24nLCAnY2VudGVyJyk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRKdXN0aWZ5UmlnaHQoKSB7XG4gICAgaWYodGhpcy5pc1Rvb2xEaXNhYmxlZCgnanVzdGlmeV9yaWdodCcpKSByZXR1cm47XG4gICAgdGhpcy5xdWlsbC5mb3JtYXQoJ2FsaWduJywgJ3JpZ2h0Jyk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRSZW1vdmUoKSB7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gdGhpcy5xdWlsbC5nZXRTZWxlY3Rpb24oKTtcbiAgICBpZiAoc2VsZWN0aW9uKSB0aGlzLnF1aWxsLnJlbW92ZUZvcm1hdChzZWxlY3Rpb24hLmluZGV4LCBzZWxlY3Rpb24hLmxlbmd0aCk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKXtcbiAgICB0aGlzLnF1aWxsLnJvb3QuZGF0YXNldFsncGxhY2Vob2xkZXInXSA9IHBsYWNlaG9sZGVyO1xuICB9XG5cbiAgcHVibGljIHNldFRleHQodGV4dDogc3RyaW5nKXtcbiAgICB0aGlzLnF1aWxsLnNldENvbnRlbnRzKHRoaXMucXVpbGwuY2xpcGJvYXJkLmNvbnZlcnQodGV4dCksICdzaWxlbnQnKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRNYXhMZW5ndGgobGVuZ3RoOiBudW1iZXIpe1xuICAgIHRoaXMubWF4TGVuZ3RoID0gbGVuZ3RoO1xuXG4gICAgdGhpcy5tYXhMZW5ndGhTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgaWYodGhpcy5tYXhMZW5ndGggPiAwKVxuICAgICAgdGhpcy5tYXhMZW5ndGhTdWJzY3JpcHRpb24gPSBcbiAgICAgICAgZnJvbUV2ZW50KHRoaXMucXVpbGwsICd0ZXh0LWNoYW5nZScpXG4gICAgICAgIC5waXBlKGZpbHRlcigoKSA9PiB0aGlzLnF1aWxsLmdldExlbmd0aCgpID4gdGhpcy5tYXhMZW5ndGgpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnF1aWxsLmRlbGV0ZVRleHQodGhpcy5tYXhMZW5ndGggLTEsIHRoaXMucXVpbGwuZ2V0TGVuZ3RoKCkpO1xuICAgICAgfSlcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFRvb2xzKHRvb2xzOiBUb29sS2V5cyl7XG4gICAgaWYoSlNPTi5zdHJpbmdpZnkodG9vbHMpICE9PSBKU09OLnN0cmluZ2lmeSh0aGlzLnN0YXRlU3ViLnZhbHVlLmRpc2FibGVkVG9vbHMpKVxuICAgICAgdGhpcy5zdGF0ZVN1Yi5uZXh0KHsuLi50aGlzLnN0YXRlU3ViLnZhbHVlLCBkaXNhYmxlZFRvb2xzOiB0b29scywgfSlcbiAgfVxuXG4gIHB1YmxpYyBzZXRFZGl0b3JDbGFzcyhjbGFzc05hbWU6IHN0cmluZyl7XG4gICAgaWYoIWNsYXNzTmFtZSkgcmV0dXJuO1xuICAgIHRoaXMucXVpbGwucm9vdC5jbGFzc0xpc3QuYWRkKGNsYXNzTmFtZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RWRpdG9yRWxlbWVudCgpe1xuICAgIHJldHVybiB0aGlzLnF1aWxsLnJvb3Q7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGV4dExlbmd0aCgpe1xuICAgIHJldHVybiB0aGlzLnF1aWxsLmdldExlbmd0aCgpO1xuICB9XG5cbiAgcHVibGljIGRpc2FibGUoKXtcbiAgICB0aGlzLnF1aWxsLmRpc2FibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBlbmFibGUoKXtcbiAgICB0aGlzLnF1aWxsLmVuYWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKCl7XG4gICAgdGhpcy5xdWlsbC5mb2N1cygpO1xuICB9XG5cbiAgcHVibGljIHNldEJyZWFrT25FbnRlcihicmVha09uRW50ZXI6IGJvb2xlYW4pe1xuICAgIHRoaXMuYnJlYWtPbkVudGVyID0gYnJlYWtPbkVudGVyO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5xdWlsbC5vZmYoJ3NlbGVjdGlvbi1jaGFuZ2UnLCB0aGlzLnNlbGVjdGlvbkNoYW5nZUhhbmRsZXIpO1xuICAgIHRoaXMucXVpbGwub2ZmKCd0ZXh0LWNoYW5nZScsIHRoaXMudGV4dENoYW5nZUhhbmRsZXIpO1xuICAgIHRoaXMuZXNjJC51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZW50ZXIkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5zdGF0ZVN1Yi51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMubWF4TGVuZ3RoU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1Rvb2xEaXNhYmxlZCh0b29sOiBUb29sKXtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZVN1Yi52YWx1ZS5kaXNhYmxlZFRvb2xzLmluY2x1ZGVzKHRvb2wpXG4gIH1cblxuICBwcml2YXRlIHVybE1hdGNoZXIobm9kZTogYW55LCBkZWx0YTogYW55KSB7XG4gICAgaWYgKHR5cGVvZiBub2RlLmRhdGEgIT09ICdzdHJpbmcnKSByZXR1cm47XG4gICAgY29uc3QgbWF0Y2hlcyA9IG5vZGUuZGF0YS5tYXRjaChVUkxfUkVHRVgpO1xuXG4gICAgaWYgKG1hdGNoZXMgJiYgbWF0Y2hlcy5sZW5ndGggPiAwKSB7XG4gICAgICBsZXQgdGV4dCA9ICcnO1xuICAgICAgY29uc3Qgc2VsZWN0aW9uID0gdGhpcy5xdWlsbC5nZXRTZWxlY3Rpb24odHJ1ZSk7XG4gICAgICBpZiAoc2VsZWN0aW9uLmxlbmd0aClcbiAgICAgICAgdGV4dCA9IHRoaXMucXVpbGwuZ2V0VGV4dChzZWxlY3Rpb24hLmluZGV4LCBzZWxlY3Rpb24hLmxlbmd0aCk7XG5cbiAgICAgIGNvbnN0IG9wcyA9IFtdO1xuICAgICAgbGV0IHN0ciA9IG5vZGUuZGF0YTtcbiAgICAgIG1hdGNoZXMuZm9yRWFjaChmdW5jdGlvbiAobWF0Y2g6IGFueSkge1xuICAgICAgICBjb25zdCBzcGxpdCA9IHN0ci5zcGxpdChtYXRjaCk7XG4gICAgICAgIGNvbnN0IGJlZm9yZUxpbmsgPSBzcGxpdC5zaGlmdCgpO1xuICAgICAgICBvcHMucHVzaCh7IGluc2VydDogYmVmb3JlTGluayB9KTtcbiAgICAgICAgb3BzLnB1c2goeyBpbnNlcnQ6IHRleHQgfHwgbWF0Y2gsIGF0dHJpYnV0ZXM6IHsgbGluazogbWF0Y2ggfSB9KTtcbiAgICAgICAgc3RyID0gc3BsaXQuam9pbihtYXRjaCk7XG4gICAgICB9KTtcbiAgICAgIG9wcy5wdXNoKHsgaW5zZXJ0OiBzdHIgfSk7XG4gICAgICBkZWx0YS5vcHMgPSBvcHM7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlbHRhO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5FZGl0b3JDaGFuZ2VzKCkge1xuICAgIHRoaXMucXVpbGwub24oJ3NlbGVjdGlvbi1jaGFuZ2UnLCB0aGlzLnNlbGVjdGlvbkNoYW5nZUhhbmRsZXIpO1xuICAgIHRoaXMucXVpbGwub24oJ3RleHQtY2hhbmdlJywgdGhpcy50ZXh0Q2hhbmdlSGFuZGxlcik7XG4gIH1cblxuXG4gIHByaXZhdGUgdXBkYXRlKCkge1xuICAgIGxldCBib3VuZHM6IEJvdW5kc1N0YXRpYyB8IHVuZGVmaW5lZDtcbiAgICBsZXQgZm9ybWF0c0FycjtcblxuICAgIGNvbnN0IHJhbmdlID0gdGhpcy5xdWlsbC5nZXRTZWxlY3Rpb24oZmFsc2UpO1xuICAgIGlmICAocmFuZ2UpeyBcbiAgICAgIGJvdW5kcyA9IHRoaXMucXVpbGwuZ2V0Qm91bmRzKHJhbmdlLmluZGV4LCByYW5nZS5sZW5ndGgpO1xuICAgICAgZm9ybWF0c0FyciA9IHRoaXMucXVpbGwuZ2V0Rm9ybWF0KHJhbmdlKSBhcyBhbnk7XG4gICAgfVxuXG4gICAgY29uc3QgZm9ybWF0czogUmljaHRleHRGb3JtYXRzID0ge1xuICAgICAgaXRhbGljOiBmb3JtYXRzQXJyPy5pdGFsaWMgfHwgZmFsc2UsXG4gICAgICBib2xkOiBmb3JtYXRzQXJyPy5ib2xkIHx8IGZhbHNlLFxuICAgICAgdW5kZXJsaW5lOiBmb3JtYXRzQXJyPy51bmRlcmxpbmUgfHwgZmFsc2UsXG4gICAgICBzdHJpa2U6IGZvcm1hdHNBcnI/LnN0cmlrZSB8fCBmYWxzZSxcbiAgICAgIGxpbms6IGZvcm1hdHNBcnI/LmxpbmsgfHwgJycsXG4gICAgICBsaXN0X2J1bGxldGVkOiBmb3JtYXRzQXJyPy5saXN0ID09PSAnYnVsbGV0JyxcbiAgICAgIGxpc3RfbnVtYmVyZWQ6IGZvcm1hdHNBcnI/Lmxpc3QgPT09ICdvcmRlcmVkJyxcbiAgICAgIGp1c3RpZnlfbGVmdDogZm9ybWF0c0Fycj8uYWxpZ24gPT09ICdsZWZ0JyxcbiAgICAgIGp1c3RpZnlfY2VudGVyOiBmb3JtYXRzQXJyPy5hbGlnbiA9PT0gJ2NlbnRlcicsXG4gICAgICBqdXN0aWZ5X3JpZ2h0OiBmb3JtYXRzQXJyPy5hbGlnbiA9PT0gJ3JpZ2h0JyxcbiAgICB9O1xuXG4gICAgY29uc3QgaGFzU2VsZWN0aW9uID0gISFyYW5nZT8ubGVuZ3RoO1xuICAgIGNvbnN0IGhhc0ZvY3VzID0gISFyYW5nZTtcblxuICAgIGNvbnN0IG5ld1N0YXRlOiBUb29sc1N0YXRlID0geyBcbiAgICAgIC4uLnRoaXMuc3RhdGVTdWIudmFsdWUsIFxuICAgICAgaGFzU2VsZWN0aW9uLCBcbiAgICAgIGZvcm1hdHMsIFxuICAgICAgYm91bmRzLCBcbiAgICAgIGhhc0ZvY3VzIFxuICAgIH07XG5cbiAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgdGhpcy5zdGF0ZVN1Yi5uZXh0KG5ld1N0YXRlKTtcbiAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfSlcbiAgfVxufVxuXG4vL3RvIHdvcmsgYXJvdW5kIHRlc3RpbmcgcHJvYmxlbXMgXG5leHBvcnQgY29uc3QgUXVpbGxQcm94eSA9e1xuICBRdWlsbFxufVxuXG4vL3RvIHdvcmsgYXJvdW5kIHRlc3RpbmcgcHJvYmxlbXMgXG5leHBvcnQgY29uc3QgUmljaHRleHRXcmFwcGVyUHJveHkgPSB7XG4gIFJpY2h0ZXh0V3JhcHBlclxufSJdfQ==
|
379
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaHRleHQtd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2NsYXNzZXMvcmljaHRleHQtd3JhcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQTRHLE1BQU0sT0FBTyxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFnQixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQVF0RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUQsTUFBTSxPQUFPLGVBQWU7SUFxRzFCLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUE7SUFDOUIsQ0FBQztJQUlELElBQVcsa0JBQWtCO1FBQzNCLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDO2FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FDbkQsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ3JELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDaEIsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFBO0lBQ2pDLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxZQUNVLE1BQWMsRUFDZCxFQUFxQixFQUNyQixVQUFtQztRQUZuQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDckIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUE1SHJDLGFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBYTtZQUNqRCxZQUFZLEVBQUUsS0FBSztZQUNuQixRQUFRLEVBQUUsS0FBSztZQUNmLE9BQU8sRUFBRTtnQkFDUCxNQUFNLEVBQUUsS0FBSztnQkFDYixJQUFJLEVBQUUsS0FBSztnQkFDWCxTQUFTLEVBQUUsS0FBSztnQkFDaEIsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsYUFBYSxFQUFFLEtBQUs7Z0JBQ3BCLGFBQWEsRUFBRSxLQUFLO2dCQUNwQixZQUFZLEVBQUUsS0FBSztnQkFDbkIsY0FBYyxFQUFFLEtBQUs7Z0JBQ3JCLGFBQWEsRUFBRSxLQUFLO2FBQ3JCO1lBQ0QsYUFBYSxFQUFFLEVBQUU7U0FDbEIsQ0FBQyxDQUFDO1FBQ0ssU0FBSSxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7UUFDOUIsV0FBTSxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7UUFDaEMsY0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2YsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsaUJBQVksR0FBRztZQUNyQixZQUFZO1lBQ1osTUFBTTtZQUNOLE9BQU87WUFDUCxNQUFNO1lBQ04sTUFBTTtZQUNOLFFBQVE7WUFDUixNQUFNO1lBQ04sTUFBTTtZQUNOLFFBQVE7WUFDUixRQUFRO1lBQ1IsV0FBVztZQUNYLFlBQVk7WUFDWixRQUFRO1lBQ1IsUUFBUTtZQUNSLE1BQU07WUFDTixPQUFPO1lBQ1AsV0FBVztZQUNYLFlBQVk7WUFDWixTQUFTO1lBQ1QsT0FBTztZQUNQLFdBQVc7WUFDWCxVQUFVO1NBQ1gsQ0FBQTtRQUVPLHNCQUFpQixHQUFzQixHQUFHLEVBQUU7WUFDbEQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQztRQUVNLDJCQUFzQixHQUEyQixDQUN2RCxLQUFrQixFQUNsQixRQUFxQixFQUNyQixNQUFlLEVBQ2YsRUFBRTtZQUNGLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUM7UUFFTSxhQUFRLEdBQUc7WUFDakIsSUFBSSxFQUFFO2dCQUNKLE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBQ1osSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO29CQUNmLE9BQU8sS0FBSyxDQUFDO2dCQUNmLENBQUM7YUFDRjtZQUNELE1BQU0sRUFBRTtnQkFDTixPQUFPLEVBQUUsR0FBRyxFQUFFO29CQUNaLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztvQkFDakIsT0FBTyxLQUFLLENBQUM7Z0JBQ2YsQ0FBQzthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNULE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBQ1osSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUNwQixPQUFPLEtBQUssQ0FBQztnQkFDZixDQUFDO2FBQ0Y7WUFDRCxNQUFNLEVBQUM7Z0JBQ0wsR0FBRyxFQUFFLFFBQVE7Z0JBQ2IsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDckIsT0FBTyxLQUFLLENBQUM7Z0JBQ2YsQ0FBQzthQUNGO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLEdBQUcsRUFBRSxPQUFPO2dCQUNaLE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztnQkFDM0IsQ0FBQzthQUNGO1NBRUYsQ0FBQztRQU1LLFdBQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBMkIzQyxNQUFNLFFBQVEsR0FBRyxVQUFVLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUU7WUFDaEQsV0FBVyxFQUFFLEVBQUU7WUFDZixPQUFPLEVBQUU7Z0JBQ1AsU0FBUyxFQUFFO29CQUNULFFBQVEsRUFBRTt3QkFDUixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQzVDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUNyQyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDekMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQ3REO2lCQUNGO2dCQUNELFFBQVEsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO2FBQ3RDO1lBQ0QsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZO1NBQzNCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQztZQUFFLE9BQU87UUFDekMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxPQUFPO1FBQ1osSUFBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU07UUFDdEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxZQUFZO1FBQ2pCLElBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUM7WUFBRSxPQUFPO1FBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRU0sU0FBUztRQUNkLElBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUM7WUFBRSxPQUFPO1FBQ3pDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDO1lBQUUsT0FBTztRQUNoRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWE7WUFDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDOztZQUVoQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUM7WUFBRSxPQUFPO1FBQ2hELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYTtZQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7O1lBRWhDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLElBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUM7WUFBRSxPQUFPO1FBRXZDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTVDLElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRTdELE1BQU0sS0FBSyxHQUFHLEtBQU0sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1lBQ3BDLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUVsQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNyRCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNsQyxDQUFDO1FBRUQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUM7WUFBRSxPQUFPO1FBQy9DLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixJQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUM7WUFBRSxPQUFPO1FBQ2pELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQztZQUFFLE9BQU87UUFDaEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRU0sU0FBUztRQUNkLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDNUMsSUFBSSxTQUFTO1lBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBVSxDQUFDLEtBQUssRUFBRSxTQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxjQUFjLENBQUMsV0FBbUI7UUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxHQUFHLFdBQVcsQ0FBQztJQUN2RCxDQUFDO0lBRU0sT0FBTyxDQUFDLElBQVk7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBYSxFQUFFLElBQVksRUFBRSxTQUFrQjtRQUMvRCxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1FBQzdDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDNUMsQ0FBQztJQUVNLG1CQUFtQixDQUFDLEdBQVcsRUFBRSxRQUFnQjtRQUNwRCxJQUFJLENBQUMsNEJBQTRCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFFbkQsSUFBSSxDQUFDLDRCQUE0QixHQUFHLFNBQVMsQ0FDM0MsSUFBSSxDQUFDLEtBQUssRUFDVixhQUFhLENBQ2QsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUMzQyxNQUFNLEtBQUssR0FBRyxNQUFnQyxDQUFDO1lBQy9DLEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7Z0JBQ3hCLElBQUksRUFBRSxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztvQkFDdEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDeEMsSUFBSSxDQUFDLEtBQUs7d0JBQUUsT0FBTztvQkFDbkIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztvQkFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDOUMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sWUFBWSxDQUFDLE1BQWM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUM7UUFFeEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzFDLElBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDO1lBQ25CLElBQUksQ0FBQyxxQkFBcUI7Z0JBQ3hCLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQztxQkFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztxQkFDM0QsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7Z0JBQ3JFLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVNLGdCQUFnQixDQUFDLEtBQWU7UUFDckMsSUFBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQzVFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQTtJQUN4RSxDQUFDO0lBRU0sY0FBYyxDQUFDLFNBQWlCO1FBQ3JDLElBQUcsQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztJQUN6QixDQUFDO0lBRU0sYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxNQUFNO1FBQ1gsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLGVBQWUsQ0FBQyxZQUFxQjtRQUMxQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztJQUNuQyxDQUFDO0lBRU0sY0FBYyxDQUFDLFdBQW9CO1FBQ3hDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFTSx3QkFBd0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTSxPQUFPO1FBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUVPLGNBQWMsQ0FBQyxJQUFVO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN6RCxDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVMsRUFBRSxLQUFVO1FBQ3RDLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVE7WUFBRSxPQUFPO1FBQzFDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTNDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDbEMsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ2QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEQsSUFBSSxTQUFTLENBQUMsTUFBTTtnQkFDbEIsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVUsQ0FBQyxLQUFLLEVBQUUsU0FBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRWpFLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUNmLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDcEIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEtBQVU7Z0JBQ2xDLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQy9CLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUNqQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksSUFBSSxLQUFLLEVBQUUsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDakUsR0FBRyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUIsQ0FBQyxDQUFDLENBQUM7WUFDSCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDMUIsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDbEIsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLFlBQVksQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUN4QyxJQUFHLElBQUksQ0FBQyxXQUFXO1lBQUcsT0FBTyxLQUFLLENBQUM7UUFFbkMsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNuQyxPQUFPLElBQUksS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxJQUFpQixFQUFFLEtBQVk7UUFDdEQsSUFBSSxJQUFJLENBQUMsRUFBRSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQzVCLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFDLEVBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFHTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFHTyxNQUFNO1FBQ1osSUFBSSxNQUFnQyxDQUFDO1FBQ3JDLElBQUksVUFBVSxDQUFDO1FBRWYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsSUFBSyxLQUFLLEVBQUMsQ0FBQztZQUNWLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN6RCxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFRLENBQUM7UUFDbEQsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFvQjtZQUMvQixNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sSUFBSSxLQUFLO1lBQ25DLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxJQUFJLEtBQUs7WUFDL0IsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLElBQUksS0FBSztZQUN6QyxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sSUFBSSxLQUFLO1lBQ25DLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxJQUFJLEVBQUU7WUFDNUIsYUFBYSxFQUFFLFVBQVUsRUFBRSxJQUFJLEtBQUssUUFBUTtZQUM1QyxhQUFhLEVBQUUsVUFBVSxFQUFFLElBQUksS0FBSyxTQUFTO1lBQzdDLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxLQUFLLE1BQU07WUFDMUMsY0FBYyxFQUFFLFVBQVUsRUFBRSxLQUFLLEtBQUssUUFBUTtZQUM5QyxhQUFhLEVBQUUsVUFBVSxFQUFFLEtBQUssS0FBSyxPQUFPO1NBQzdDLENBQUM7UUFFRixNQUFNLFlBQVksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQztRQUNyQyxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBRXpCLE1BQU0sUUFBUSxHQUFlO1lBQzNCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLO1lBQ3RCLFlBQVk7WUFDWixPQUFPO1lBQ1AsTUFBTTtZQUNOLFFBQVE7U0FDVCxDQUFDO1FBRUYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0NBQ0Y7QUFFRCxrQ0FBa0M7QUFDbEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFFO0lBQ3ZCLEtBQUs7Q0FDTixDQUFBO0FBRUQsa0NBQWtDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHO0lBQ2xDLGVBQWU7Q0FDaEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBFbGVtZW50UmVmLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBRdWlsbCwgeyBCb3VuZHNTdGF0aWMsIERlbHRhLCBEZWx0YVN0YXRpYywgUmFuZ2VTdGF0aWMsIFNlbGVjdGlvbkNoYW5nZUhhbmRsZXIsIFNvdXJjZXMsIFRleHRDaGFuZ2VIYW5kbGVyIH0gZnJvbSAncXVpbGwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGZpbHRlciwgZnJvbUV2ZW50LCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIFJpY2hUZXh0RnVuY3Rpb25zLFxuICBSaWNodGV4dEZvcm1hdHMsXG4gIFRvb2wsXG4gIFRvb2xLZXlzLFxuICBUb29sc1N0YXRlLFxufSBmcm9tICcuLi9pbnRlcmZhY2VzL3JpY2h0ZXh0LXRvb2xib3guaW50ZXJmYWNlJztcbmltcG9ydCB7IFVSTF9SRUdFWCB9IGZyb20gJy4uL2NvbnN0YW50cy91cmwtcmVnZXguY29uc3RhbnQnO1xuXG5leHBvcnQgY2xhc3MgUmljaHRleHRXcmFwcGVyIGltcGxlbWVudHMgUmljaFRleHRGdW5jdGlvbnMge1xuICBwcml2YXRlIHF1aWxsITogUXVpbGw7XG5cbiAgcHJpdmF0ZSBtYXhMZW5ndGhTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgdGVtcGxhdGVSZXBsYWNlclN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIHN0YXRlU3ViID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUb29sc1N0YXRlPih7XG4gICAgaGFzU2VsZWN0aW9uOiBmYWxzZSxcbiAgICBoYXNGb2N1czogZmFsc2UsXG4gICAgZm9ybWF0czoge1xuICAgICAgaXRhbGljOiBmYWxzZSxcbiAgICAgIGJvbGQ6IGZhbHNlLFxuICAgICAgdW5kZXJsaW5lOiBmYWxzZSxcbiAgICAgIHN0cmlrZTogZmFsc2UsXG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxpc3RfYnVsbGV0ZWQ6IGZhbHNlLFxuICAgICAgbGlzdF9udW1iZXJlZDogZmFsc2UsXG4gICAgICBqdXN0aWZ5X2xlZnQ6IGZhbHNlLFxuICAgICAganVzdGlmeV9jZW50ZXI6IGZhbHNlLFxuICAgICAganVzdGlmeV9yaWdodDogZmFsc2UsXG4gICAgfSxcbiAgICBkaXNhYmxlZFRvb2xzOiBbXVxuICB9KTtcbiAgcHJpdmF0ZSBlc2MkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgcHJpdmF0ZSBlbnRlciQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBwcml2YXRlIG1heExlbmd0aCA9IC0xO1xuICBwcml2YXRlIGJyZWFrT25FbnRlciA9IGZhbHNlO1xuICBwcml2YXRlIGFsbG93SW1hZ2VzID0gZmFsc2U7XG4gIHByaXZhdGUgcXVpbGxGb3JtYXRzID0gW1xuICAgICdiYWNrZ3JvdW5kJyxcbiAgICAnYm9sZCcsXG4gICAgJ2NvbG9yJyxcbiAgICAnZm9udCcsXG4gICAgJ2NvZGUnLFxuICAgICdpdGFsaWMnLFxuICAgICdsaW5rJyxcbiAgICAnc2l6ZScsXG4gICAgJ3N0cmlrZScsXG4gICAgJ3NjcmlwdCcsXG4gICAgJ3VuZGVybGluZScsXG4gICAgJ2Jsb2NrcXVvdGUnLFxuICAgICdoZWFkZXInLFxuICAgICdpbmRlbnQnLFxuICAgICdsaXN0JyxcbiAgICAnYWxpZ24nLFxuICAgICdkaXJlY3Rpb24nLFxuICAgICdjb2RlLWJsb2NrJyxcbiAgICAnZm9ybXVsYScsXG4gICAgJ2ltYWdlJyxcbiAgICAnaHRtbFBhbmVsJ1xuICAgIC8vICd2aWRlbydcbiAgXVxuXG4gIHByaXZhdGUgdGV4dENoYW5nZUhhbmRsZXI6IFRleHRDaGFuZ2VIYW5kbGVyID0gKCkgPT4ge1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBzZWxlY3Rpb25DaGFuZ2VIYW5kbGVyOiBTZWxlY3Rpb25DaGFuZ2VIYW5kbGVyID0gKFxuICAgIHZhbHVlOiBSYW5nZVN0YXRpYyxcbiAgICBvbGRSYW5nZTogUmFuZ2VTdGF0aWMsXG4gICAgc291cmNlOiBTb3VyY2VzXG4gICkgPT4ge1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBiaW5kaW5ncyA9IHtcbiAgICBib2xkOiB7XG4gICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0Qm9sZCgpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9LFxuICAgIH0sXG4gICAgaXRhbGljOiB7XG4gICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0SXRhbGljKCk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0sXG4gICAgfSxcbiAgICB1bmRlcmxpbmU6IHtcbiAgICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRVbmRlcmxpbmUoKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSxcbiAgICB9LFxuICAgIGVzY2FwZTp7XG4gICAgICBrZXk6ICdlc2NhcGUnLFxuICAgICAgaGFuZGxlcjogKCkgPT4ge1xuICAgICAgICB0aGlzLmVzYyQubmV4dCh0cnVlKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0sXG4gICAgZW50ZXI6IHtcbiAgICAgIGtleTogJ2VudGVyJyxcbiAgICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgICAgdGhpcy5lbnRlciQubmV4dCh0cnVlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnJlYWtPbkVudGVyO1xuICAgICAgfVxuICAgIH1cblxuICB9O1xuXG4gIHB1YmxpYyBnZXQgc3RhdGUoKXtcbiAgICAgIHJldHVybiB0aGlzLnN0YXRlU3ViLnZhbHVlXG4gIH1cbiAgXG4gIHB1YmxpYyBzdGF0ZSQgPSB0aGlzLnN0YXRlU3ViLmFzT2JzZXJ2YWJsZSgpO1xuICAgIFxuICBwdWJsaWMgZ2V0IGxpc3RlblRleHRDaGFuZ2VzJCgpe1xuICAgIHJldHVybiBmcm9tRXZlbnQodGhpcy5xdWlsbCwgJ3RleHQtY2hhbmdlJylcbiAgICAgIC5waXBlKG1hcCgoKSA9PiB0aGlzLnF1aWxsLnJvb3QuaW5uZXJIVE1MKSk7IFxuICB9XG5cbiAgcHVibGljIGdldCBsaXN0ZW5PblRvdWNoZWQkKCkge1xuICAgIHJldHVybiBmcm9tRXZlbnQodGhpcy5xdWlsbCwgJ3NlbGVjdGlvbi1jaGFuZ2UnKS5waXBlKFxuICAgICAgZmlsdGVyKCgpID0+IEJvb2xlYW4odGhpcy5xdWlsbC5nZXRTZWxlY3Rpb24oZmFsc2UpKSksXG4gICAgICBtYXAoKCkgPT4gbnVsbClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCBsaXN0ZW5Fc2NhcGUkKCl7XG4gICAgcmV0dXJuIHRoaXMuZXNjJC5hc09ic2VydmFibGUoKVxuICB9XG5cbiAgcHVibGljIGdldCBsaXN0ZW5FbnRlciQoKXtcbiAgICByZXR1cm4gdGhpcy5lbnRlciQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICkge1xuICAgIGNvbnN0IGVkaXRvcklkID0gYGVkaXRvci0ke25ldyBEYXRlKCkuZ2V0VGltZSgpfWA7XG4gICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdpZCcsIGVkaXRvcklkKTtcbiAgICB0aGlzLnF1aWxsID0gbmV3IFF1aWxsUHJveHkuUXVpbGwoYCMke2VkaXRvcklkfWAsIHtcbiAgICAgIHBsYWNlaG9sZGVyOiAnJyxcbiAgICAgIG1vZHVsZXM6IHtcbiAgICAgICAgY2xpcGJvYXJkOiB7XG4gICAgICAgICAgbWF0Y2hlcnM6IFtcbiAgICAgICAgICAgIFtOb2RlLlRFWFRfTk9ERSwgdGhpcy51cmxNYXRjaGVyLmJpbmQodGhpcyldLFxuICAgICAgICAgICAgWydJTUcnLCB0aGlzLmltYWdlTWF0Y2hlci5iaW5kKHRoaXMpXSxcbiAgICAgICAgICAgIFsnUElDVFVSRScsIHRoaXMuaW1hZ2VNYXRjaGVyLmJpbmQodGhpcyldLFxuICAgICAgICAgICAgW05vZGUuRUxFTUVOVF9OT0RFLCB0aGlzLmh0bWxQYW5lbE1hdGNoZXIuYmluZCh0aGlzKV1cbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBrZXlib2FyZDogeyBiaW5kaW5nczogdGhpcy5iaW5kaW5ncyB9LFxuICAgICAgfSxcbiAgICAgIGZvcm1hdHM6IHRoaXMucXVpbGxGb3JtYXRzXG4gICAgfSk7XG4gICAgdGhpcy5saXN0ZW5FZGl0b3JDaGFuZ2VzKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0SXRhbGljKCkge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ2l0YWxpYycpKSByZXR1cm47XG4gICAgdGhpcy5xdWlsbC5mb3JtYXQoJ2l0YWxpYycsICF0aGlzLnN0YXRlLmZvcm1hdHMuaXRhbGljKTtcbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldEJvbGQoKSB7XG4gICAgaWYodGhpcy5pc1Rvb2xEaXNhYmxlZCgnYm9sZCcpKSByZXR1cm5cbiAgICB0aGlzLnF1aWxsLmZvcm1hdCgnYm9sZCcsICF0aGlzLnN0YXRlLmZvcm1hdHMuYm9sZCk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRVbmRlcmxpbmUoKSB7XG4gICAgaWYodGhpcy5pc1Rvb2xEaXNhYmxlZCgndW5kZXJsaW5lJykpIHJldHVybjtcbiAgICB0aGlzLnF1aWxsLmZvcm1hdCgndW5kZXJsaW5lJywgIXRoaXMuc3RhdGUuZm9ybWF0cy51bmRlcmxpbmUpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0U3RyaWtlKCkge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ3N0cmlrZScpKSByZXR1cm47XG4gICAgdGhpcy5xdWlsbC5mb3JtYXQoJ3N0cmlrZScsICF0aGlzLnN0YXRlLmZvcm1hdHMuc3RyaWtlKTtcbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldExpc3ROdW1iZXJlZCgpIHtcbiAgICBpZih0aGlzLmlzVG9vbERpc2FibGVkKCdsaXN0X251bWJlcmVkJykpIHJldHVybjtcbiAgICBpZiAodGhpcy5zdGF0ZS5mb3JtYXRzLmxpc3RfbnVtYmVyZWQpXG4gICAgICB0aGlzLnF1aWxsLmZvcm1hdCgnbGlzdCcsIG51bGwpO1xuICAgIGVsc2UgIFxuICAgICAgdGhpcy5xdWlsbC5mb3JtYXQoJ2xpc3QnLCAnb3JkZXJlZCcpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0TGlzdEJ1bGxldGVkKCkge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ2xpc3RfYnVsbGV0ZWQnKSkgcmV0dXJuO1xuICAgIGlmICh0aGlzLnN0YXRlLmZvcm1hdHMubGlzdF9idWxsZXRlZClcbiAgICAgIHRoaXMucXVpbGwuZm9ybWF0KCdsaXN0JywgbnVsbCk7XG4gICAgZWxzZSAgXG4gICAgICB0aGlzLnF1aWxsLmZvcm1hdCgnbGlzdCcsICdidWxsZXRlZCcpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0TGluayhsaW5rOiBzdHJpbmcpIHtcbiAgICBpZih0aGlzLmlzVG9vbERpc2FibGVkKCdsaW5rJykpIHJldHVybjtcblxuICAgIGNvbnN0IHJhbmdlID0gdGhpcy5xdWlsbC5nZXRTZWxlY3Rpb24odHJ1ZSk7XG5cbiAgICBpZiAocmFuZ2UgJiYgIXJhbmdlLmxlbmd0aCkge1xuICAgICAgY29uc3QgW3RleHRCbG9hdCwgb2Zmc2V0XSA9IHRoaXMucXVpbGwuZ2V0TGVhZihyYW5nZSEuaW5kZXgpO1xuXG4gICAgICBjb25zdCBzdGFydCA9IHJhbmdlIS5pbmRleCAtIG9mZnNldDtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IHRleHRCbG9hdC5sZW5ndGgoKTtcblxuICAgICAgdGhpcy5xdWlsbC5mb3JtYXRUZXh0KHN0YXJ0LCBsZW5ndGgsICdsaW5rJywgbGluayk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucXVpbGwuZm9ybWF0KCdsaW5rJywgbGluayk7XG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRKdXN0aWZ5TGVmdCgpIHtcbiAgICBpZih0aGlzLmlzVG9vbERpc2FibGVkKCdqdXN0aWZ5X2xlZnQnKSkgcmV0dXJuO1xuICAgIHRoaXMucXVpbGwuZm9ybWF0KCdhbGlnbicsIG51bGwpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0SnVzdGlmeUNlbnRlcigpIHtcbiAgICBpZih0aGlzLmlzVG9vbERpc2FibGVkKCdqdXN0aWZ5X2NlbnRlcicpKSByZXR1cm47XG4gICAgdGhpcy5xdWlsbC5mb3JtYXQoJ2FsaWduJywgJ2NlbnRlcicpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0SnVzdGlmeVJpZ2h0KCkge1xuICAgIGlmKHRoaXMuaXNUb29sRGlzYWJsZWQoJ2p1c3RpZnlfcmlnaHQnKSkgcmV0dXJuO1xuICAgIHRoaXMucXVpbGwuZm9ybWF0KCdhbGlnbicsICdyaWdodCcpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0UmVtb3ZlKCkge1xuICAgIGNvbnN0IHNlbGVjdGlvbiA9IHRoaXMucXVpbGwuZ2V0U2VsZWN0aW9uKCk7XG4gICAgaWYgKHNlbGVjdGlvbikgdGhpcy5xdWlsbC5yZW1vdmVGb3JtYXQoc2VsZWN0aW9uIS5pbmRleCwgc2VsZWN0aW9uIS5sZW5ndGgpO1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZyl7XG4gICAgdGhpcy5xdWlsbC5yb290LmRhdGFzZXRbJ3BsYWNlaG9sZGVyJ10gPSBwbGFjZWhvbGRlcjtcbiAgfVxuXG4gIHB1YmxpYyBzZXRUZXh0KHRleHQ6IHN0cmluZyl7XG4gICAgdGhpcy5xdWlsbC5jbGlwYm9hcmQuZGFuZ2Vyb3VzbHlQYXN0ZUhUTUwodGV4dCwgJ3NpbGVudCcpO1xuICB9XG5cbiAgcHVibGljIGdldFRleHRXaXRob3V0SHRtbFRhZ3MoKXtcbiAgICByZXR1cm4gdGhpcy5xdWlsbC5nZXRUZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgaW5zZXJ0VGV4dChpbmRleDogbnVtYmVyLCB0ZXh0OiBzdHJpbmcsIGVtaXRFdmVudDogYm9vbGVhbil7XG4gICAgY29uc3Qgc291cmNlID0gZW1pdEV2ZW50ID8gJ3VzZXInIDogJ3NpbGVudCc7XG4gICAgdGhpcy5xdWlsbC5pbnNlcnRUZXh0KGluZGV4LCB0ZXh0LCBzb3VyY2UpXG4gIH1cblxuICBwdWJsaWMgc2V0U2hvcnRjdXRUZW1wbGF0ZShrZXk6IHN0cmluZywgdGVtcGxhdGU6IHN0cmluZykge1xuICAgICAgdGhpcy50ZW1wbGF0ZVJlcGxhY2VyU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuXG4gICAgdGhpcy50ZW1wbGF0ZVJlcGxhY2VyU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KFxuICAgICAgdGhpcy5xdWlsbCxcbiAgICAgICd0ZXh0LWNoYW5nZSdcbiAgICApLnN1YnNjcmliZSgoW19kZWx0YSwgX29sZERlbHRhLCBfc291cmNlXSkgPT4ge1xuICAgICAgY29uc3QgZGVsdGEgPSBfZGVsdGEgYXMgdW5rbm93biBhcyBEZWx0YVN0YXRpYztcbiAgICAgIGRlbHRhLm9wcz8uZm9yRWFjaCgob3ApID0+IHtcbiAgICAgICAgaWYgKG9wLmluc2VydCA9PT0ga2V5KSB7XG4gICAgICAgICAgY29uc3QgcmFuZ2UgPSB0aGlzLnF1aWxsLmdldFNlbGVjdGlvbigpO1xuICAgICAgICAgIGlmICghcmFuZ2UpIHJldHVybjtcbiAgICAgICAgICBjb25zdCBuZXdQb3MgPSByYW5nZS5pbmRleDtcbiAgICAgICAgICB0aGlzLnF1aWxsLmRlbGV0ZVRleHQobmV3UG9zIC0gMSwgMSk7XG4gICAgICAgICAgdGhpcy5xdWlsbC5pbnNlcnRUZXh0KG5ld1BvcyAtIDEsIHRlbXBsYXRlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2V0TWF4TGVuZ3RoKGxlbmd0aDogbnVtYmVyKXtcbiAgICB0aGlzLm1heExlbmd0aCA9IGxlbmd0aDtcblxuICAgIHRoaXMubWF4TGVuZ3RoU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIGlmKHRoaXMubWF4TGVuZ3RoID4gMClcbiAgICAgIHRoaXMubWF4TGVuZ3RoU3Vic2NyaXB0aW9uID0gXG4gICAgICAgIGZyb21FdmVudCh0aGlzLnF1aWxsLCAndGV4dC1jaGFuZ2UnKVxuICAgICAgICAucGlwZShmaWx0ZXIoKCkgPT4gdGhpcy5xdWlsbC5nZXRMZW5ndGgoKSA+IHRoaXMubWF4TGVuZ3RoKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5xdWlsbC5kZWxldGVUZXh0KHRoaXMubWF4TGVuZ3RoIC0xLCB0aGlzLnF1aWxsLmdldExlbmd0aCgpKTtcbiAgICAgIH0pXG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRUb29scyh0b29sczogVG9vbEtleXMpe1xuICAgIGlmKEpTT04uc3RyaW5naWZ5KHRvb2xzKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5zdGF0ZVN1Yi52YWx1ZS5kaXNhYmxlZFRvb2xzKSlcbiAgICAgIHRoaXMuc3RhdGVTdWIubmV4dCh7Li4udGhpcy5zdGF0ZVN1Yi52YWx1ZSwgZGlzYWJsZWRUb29sczogdG9vbHMsIH0pXG4gIH1cblxuICBwdWJsaWMgc2V0RWRpdG9yQ2xhc3MoY2xhc3NOYW1lOiBzdHJpbmcpe1xuICAgIGlmKCFjbGFzc05hbWUpIHJldHVybjtcbiAgICB0aGlzLnF1aWxsLnJvb3QuY2xhc3NMaXN0LmFkZChjbGFzc05hbWUpO1xuICB9XG5cbiAgcHVibGljIGdldEVkaXRvckVsZW1lbnQoKXtcbiAgICByZXR1cm4gdGhpcy5xdWlsbC5yb290O1xuICB9XG5cbiAgcHVibGljIGdldFRleHRMZW5ndGgoKXtcbiAgICByZXR1cm4gdGhpcy5xdWlsbC5nZXRMZW5ndGgoKTtcbiAgfVxuXG4gIHB1YmxpYyBkaXNhYmxlKCl7XG4gICAgdGhpcy5xdWlsbC5kaXNhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZW5hYmxlKCl7XG4gICAgdGhpcy5xdWlsbC5lbmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBmb2N1cygpe1xuICAgIHRoaXMucXVpbGwuZm9jdXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRCcmVha09uRW50ZXIoYnJlYWtPbkVudGVyOiBib29sZWFuKXtcbiAgICB0aGlzLmJyZWFrT25FbnRlciA9IGJyZWFrT25FbnRlcjtcbiAgfVxuXG4gIHB1YmxpYyBzZXRBbGxvd0ltYWdlcyhhbGxvd0ltYWdlczogYm9vbGVhbil7XG4gICAgdGhpcy5hbGxvd0ltYWdlcyA9IGFsbG93SW1hZ2VzO1xuICB9XG5cbiAgcHVibGljIGdldEN1cnJlbnRDdXJzb3JQb3NpdGlvbigpe1xuICAgIHJldHVybiB0aGlzLnF1aWxsLmdldFNlbGVjdGlvbigpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5xdWlsbC5vZmYoJ3NlbGVjdGlvbi1jaGFuZ2UnLCB0aGlzLnNlbGVjdGlvbkNoYW5nZUhhbmRsZXIpO1xuICAgIHRoaXMucXVpbGwub2ZmKCd0ZXh0LWNoYW5nZScsIHRoaXMudGV4dENoYW5nZUhhbmRsZXIpO1xuICAgIHRoaXMuZXNjJC51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZW50ZXIkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5zdGF0ZVN1Yi51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMubWF4TGVuZ3RoU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMudGVtcGxhdGVSZXBsYWNlclN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNUb29sRGlzYWJsZWQodG9vbDogVG9vbCl7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVTdWIudmFsdWUuZGlzYWJsZWRUb29scy5pbmNsdWRlcyh0b29sKVxuICB9XG5cbiAgcHJpdmF0ZSB1cmxNYXRjaGVyKG5vZGU6IGFueSwgZGVsdGE6IGFueSkge1xuICAgIGlmICh0eXBlb2Ygbm9kZS5kYXRhICE9PSAnc3RyaW5nJykgcmV0dXJuO1xuICAgIGNvbnN0IG1hdGNoZXMgPSBub2RlLmRhdGEubWF0Y2goVVJMX1JFR0VYKTtcblxuICAgIGlmIChtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID4gMCkge1xuICAgICAgbGV0IHRleHQgPSAnJztcbiAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IHRoaXMucXVpbGwuZ2V0U2VsZWN0aW9uKHRydWUpO1xuICAgICAgaWYgKHNlbGVjdGlvbi5sZW5ndGgpXG4gICAgICAgIHRleHQgPSB0aGlzLnF1aWxsLmdldFRleHQoc2VsZWN0aW9uIS5pbmRleCwgc2VsZWN0aW9uIS5sZW5ndGgpO1xuXG4gICAgICBjb25zdCBvcHMgPSBbXTtcbiAgICAgIGxldCBzdHIgPSBub2RlLmRhdGE7XG4gICAgICBtYXRjaGVzLmZvckVhY2goZnVuY3Rpb24gKG1hdGNoOiBhbnkpIHtcbiAgICAgICAgY29uc3Qgc3BsaXQgPSBzdHIuc3BsaXQobWF0Y2gpO1xuICAgICAgICBjb25zdCBiZWZvcmVMaW5rID0gc3BsaXQuc2hpZnQoKTtcbiAgICAgICAgb3BzLnB1c2goeyBpbnNlcnQ6IGJlZm9yZUxpbmsgfSk7XG4gICAgICAgIG9wcy5wdXNoKHsgaW5zZXJ0OiB0ZXh0IHx8IG1hdGNoLCBhdHRyaWJ1dGVzOiB7IGxpbms6IG1hdGNoIH0gfSk7XG4gICAgICAgIHN0ciA9IHNwbGl0LmpvaW4obWF0Y2gpO1xuICAgICAgfSk7XG4gICAgICBvcHMucHVzaCh7IGluc2VydDogc3RyIH0pO1xuICAgICAgZGVsdGEub3BzID0gb3BzO1xuICAgIH1cblxuICAgIHJldHVybiBkZWx0YTtcbiAgfVxuXG4gIHByaXZhdGUgaW1hZ2VNYXRjaGVyKG5vZGU6IGFueSwgZGVsdGE6IGFueSl7XG4gICAgaWYodGhpcy5hbGxvd0ltYWdlcykgIHJldHVybiBkZWx0YTtcblxuICAgIGNvbnN0IERlbHRhID0gUXVpbGwuaW1wb3J0KCdkZWx0YScpXG4gICAgcmV0dXJuIG5ldyBEZWx0YSgpLmluc2VydCgnJylcbiAgfVxuXG4gIHByaXZhdGUgaHRtbFBhbmVsTWF0Y2hlcihub2RlOiBIVE1MRWxlbWVudCwgZGVsdGE6IERlbHRhKSB7XG4gICAgaWYgKG5vZGUuaWQgPT09ICdodG1sUGFuZWwnKSB7XG4gICAgICBkZWx0YS5vcHMgPSBbeyBpbnNlcnQ6IHtodG1sUGFuZWw6IG5vZGUuaW5uZXJIVE1MfX1dO1xuICAgIH1cbiAgICByZXR1cm4gZGVsdGE7XG4gIH1cblxuXG4gIHByaXZhdGUgbGlzdGVuRWRpdG9yQ2hhbmdlcygpIHtcbiAgICB0aGlzLnF1aWxsLm9uKCdzZWxlY3Rpb24tY2hhbmdlJywgdGhpcy5zZWxlY3Rpb25DaGFuZ2VIYW5kbGVyKTtcbiAgICB0aGlzLnF1aWxsLm9uKCd0ZXh0LWNoYW5nZScsIHRoaXMudGV4dENoYW5nZUhhbmRsZXIpO1xuICB9XG5cblxuICBwcml2YXRlIHVwZGF0ZSgpIHtcbiAgICBsZXQgYm91bmRzOiBCb3VuZHNTdGF0aWMgfCB1bmRlZmluZWQ7XG4gICAgbGV0IGZvcm1hdHNBcnI7XG5cbiAgICBjb25zdCByYW5nZSA9IHRoaXMucXVpbGwuZ2V0U2VsZWN0aW9uKGZhbHNlKTtcbiAgICBpZiAgKHJhbmdlKXsgXG4gICAgICBib3VuZHMgPSB0aGlzLnF1aWxsLmdldEJvdW5kcyhyYW5nZS5pbmRleCwgcmFuZ2UubGVuZ3RoKTtcbiAgICAgIGZvcm1hdHNBcnIgPSB0aGlzLnF1aWxsLmdldEZvcm1hdChyYW5nZSkgYXMgYW55O1xuICAgIH1cblxuICAgIGNvbnN0IGZvcm1hdHM6IFJpY2h0ZXh0Rm9ybWF0cyA9IHtcbiAgICAgIGl0YWxpYzogZm9ybWF0c0Fycj8uaXRhbGljIHx8IGZhbHNlLFxuICAgICAgYm9sZDogZm9ybWF0c0Fycj8uYm9sZCB8fCBmYWxzZSxcbiAgICAgIHVuZGVybGluZTogZm9ybWF0c0Fycj8udW5kZXJsaW5lIHx8IGZhbHNlLFxuICAgICAgc3RyaWtlOiBmb3JtYXRzQXJyPy5zdHJpa2UgfHwgZmFsc2UsXG4gICAgICBsaW5rOiBmb3JtYXRzQXJyPy5saW5rIHx8ICcnLFxuICAgICAgbGlzdF9idWxsZXRlZDogZm9ybWF0c0Fycj8ubGlzdCA9PT0gJ2J1bGxldCcsXG4gICAgICBsaXN0X251bWJlcmVkOiBmb3JtYXRzQXJyPy5saXN0ID09PSAnb3JkZXJlZCcsXG4gICAgICBqdXN0aWZ5X2xlZnQ6IGZvcm1hdHNBcnI/LmFsaWduID09PSAnbGVmdCcsXG4gICAgICBqdXN0aWZ5X2NlbnRlcjogZm9ybWF0c0Fycj8uYWxpZ24gPT09ICdjZW50ZXInLFxuICAgICAganVzdGlmeV9yaWdodDogZm9ybWF0c0Fycj8uYWxpZ24gPT09ICdyaWdodCcsXG4gICAgfTtcblxuICAgIGNvbnN0IGhhc1NlbGVjdGlvbiA9ICEhcmFuZ2U/Lmxlbmd0aDtcbiAgICBjb25zdCBoYXNGb2N1cyA9ICEhcmFuZ2U7XG5cbiAgICBjb25zdCBuZXdTdGF0ZTogVG9vbHNTdGF0ZSA9IHsgXG4gICAgICAuLi50aGlzLnN0YXRlU3ViLnZhbHVlLCBcbiAgICAgIGhhc1NlbGVjdGlvbiwgXG4gICAgICBmb3JtYXRzLCBcbiAgICAgIGJvdW5kcywgXG4gICAgICBoYXNGb2N1cyBcbiAgICB9O1xuXG4gICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgIHRoaXMuc3RhdGVTdWIubmV4dChuZXdTdGF0ZSk7XG4gICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pXG4gIH1cbn1cblxuLy90byB3b3JrIGFyb3VuZCB0ZXN0aW5nIHByb2JsZW1zIFxuZXhwb3J0IGNvbnN0IFF1aWxsUHJveHkgPXtcbiAgUXVpbGxcbn1cblxuLy90byB3b3JrIGFyb3VuZCB0ZXN0aW5nIHByb2JsZW1zIFxuZXhwb3J0IGNvbnN0IFJpY2h0ZXh0V3JhcHBlclByb3h5ID0ge1xuICBSaWNodGV4dFdyYXBwZXJcbn0iXX0=
|
@@ -1,16 +1,17 @@
|
|
1
|
-
import { Component, ContentChildren } from '@angular/core';
|
1
|
+
import { Component, ContentChildren, Input } from '@angular/core';
|
2
2
|
import { ExtendablePanelComponent } from "./extendable-panel/extendable-panel.component";
|
3
3
|
import * as i0 from "@angular/core";
|
4
4
|
export class AccordionComponent {
|
5
5
|
constructor() {
|
6
6
|
this.subscriptions = [];
|
7
|
+
this.multiple = false;
|
7
8
|
}
|
8
9
|
set panels(elements) {
|
9
10
|
if (this.subscriptions.length) {
|
10
11
|
this.subscriptions.forEach(sub => sub.unsubscribe());
|
11
12
|
this.subscriptions = [];
|
12
13
|
}
|
13
|
-
if (!elements)
|
14
|
+
if (!elements || this.multiple)
|
14
15
|
return;
|
15
16
|
elements.forEach((element, index) => {
|
16
17
|
element.id = index;
|
@@ -23,13 +24,15 @@ export class AccordionComponent {
|
|
23
24
|
});
|
24
25
|
}
|
25
26
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
26
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: AccordionComponent, selector: "ask-accordion", queries: [{ propertyName: "panels", predicate: ExtendablePanelComponent }], ngImport: i0, template: "<ng-content select=\"ask-extendable-panel\"></ng-content>\n", styles: [""] }); }
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: AccordionComponent, selector: "ask-accordion", inputs: { multiple: "multiple" }, queries: [{ propertyName: "panels", predicate: ExtendablePanelComponent }], ngImport: i0, template: "<ng-content select=\"ask-extendable-panel\"></ng-content>\n", styles: [""] }); }
|
27
28
|
}
|
28
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AccordionComponent, decorators: [{
|
29
30
|
type: Component,
|
30
31
|
args: [{ selector: 'ask-accordion', template: "<ng-content select=\"ask-extendable-panel\"></ng-content>\n" }]
|
31
|
-
}], propDecorators: {
|
32
|
+
}], propDecorators: { multiple: [{
|
33
|
+
type: Input
|
34
|
+
}], panels: [{
|
32
35
|
type: ContentChildren,
|
33
36
|
args: [ExtendablePanelComponent]
|
34
37
|
}] } });
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLCtDQUErQyxDQUFDOztBQVF2RixNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBTVUsa0JBQWEsR0FBbUIsRUFBRSxDQUFBO1FBRzFDLGFBQVEsR0FBRyxLQUFLLENBQUE7S0FtQmpCO0lBakJDLElBQStDLE1BQU0sQ0FBQyxRQUFvQztRQUN4RixJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQTtZQUNwRCxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQTtRQUN6QixDQUFDO1FBQ0QsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFFdkMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUNsQyxPQUFPLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQTtZQUNsQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BELFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7b0JBQ3BCLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsRUFBRTt3QkFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUE7Z0JBQ3RDLENBQUMsQ0FBQyxDQUFBO1lBQ0osQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNMLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs4R0FyQlUsa0JBQWtCO2tHQUFsQixrQkFBa0IsOEdBTVosd0JBQXdCLDZCQ2YzQyw2REFDQTs7MkZEUWEsa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWU7OEJBUXpCLFFBQVE7c0JBRFAsS0FBSztnQkFHeUMsTUFBTTtzQkFBcEQsZUFBZTt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0V4dGVuZGFibGVQYW5lbENvbXBvbmVudH0gZnJvbSBcIi4vZXh0ZW5kYWJsZS1wYW5lbC9leHRlbmRhYmxlLXBhbmVsLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Fzay1hY2NvcmRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWNjb3JkaW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQWNjb3JkaW9uQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdXG5cbiAgQElucHV0KClcbiAgbXVsdGlwbGUgPSBmYWxzZVxuXG4gIEBDb250ZW50Q2hpbGRyZW4oRXh0ZW5kYWJsZVBhbmVsQ29tcG9uZW50KSBzZXQgcGFuZWxzKGVsZW1lbnRzOiBFeHRlbmRhYmxlUGFuZWxDb21wb25lbnRbXSkge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSBbXVxuICAgIH1cbiAgICBpZiAoIWVsZW1lbnRzIHx8IHRoaXMubXVsdGlwbGUpIHJldHVybjtcblxuICAgIGVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgICBlbGVtZW50LmlkID0gaW5kZXhcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKGVsZW1lbnQub3BlbmVkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGVsZW1lbnRzLmZvckVhY2goZWwgPT4ge1xuICAgICAgICAgIGlmIChlbC5pZCAhPT0gZWxlbWVudC5pZCkgZWwuY2xvc2UoKVxuICAgICAgICB9KVxuICAgICAgfSkpXG4gICAgfSlcbiAgfVxuXG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJhc2stZXh0ZW5kYWJsZS1wYW5lbFwiPjwvbmctY29udGVudD5cbiJdfQ==
|