@firestitch/html-editor 13.4.0 → 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -56,5 +56,5 @@ export declare class FsHtmlEditorComponent implements OnInit, AfterViewInit, Con
56
56
  private _contentChanged;
57
57
  private _setupFroala;
58
58
  static ɵfac: i0.ɵɵFactoryDeclaration<FsHtmlEditorComponent, [{ optional: true; }, null, null]>;
59
- static ɵcmp: i0.ɵɵComponentDeclaration<FsHtmlEditorComponent, "fs-html-editor", never, { "config": "config"; "disabled": "disabled"; }, {}, ["htmlEditorContainer"], never>;
59
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsHtmlEditorComponent, "fs-html-editor", never, { "config": "config"; "disabled": "disabled"; }, {}, ["htmlEditorContainer"], never, false>;
60
60
  }
@@ -5,5 +5,5 @@ export declare class FsHtmlEditorContainerDirective {
5
5
  template: TemplateRef<any>;
6
6
  };
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<FsHtmlEditorContainerDirective, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<FsHtmlEditorContainerDirective, "[fsHtmlEditorContainer]", never, {}, {}, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<FsHtmlEditorContainerDirective, "[fsHtmlEditorContainer]", never, {}, {}, never, never, false>;
9
9
  }
@@ -8,5 +8,5 @@ export declare class FsHtmlRendererComponent {
8
8
  trustedHtml: SafeHtml;
9
9
  constructor(sanitized: DomSanitizer, _cdRef: ChangeDetectorRef);
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<FsHtmlRendererComponent, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<FsHtmlRendererComponent, "fs-html-renderer", never, { "setHtml": "html"; }, {}, never, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsHtmlRendererComponent, "fs-html-renderer", never, { "setHtml": "html"; }, {}, never, never, false>;
12
12
  }
@@ -13,9 +13,9 @@ import { RichButtons } from './../../consts/rich-buttons.const';
13
13
  import { TextButtons } from './../../consts/text-buttons.const';
14
14
  import * as i0 from "@angular/core";
15
15
  import * as i1 from "../../services/froala-loader.service";
16
- import * as i2 from "@firestitch/label";
17
- import * as i3 from "@angular/common";
18
- import * as i4 from "@firestitch/skeleton";
16
+ import * as i2 from "@angular/common";
17
+ import * as i3 from "@firestitch/skeleton";
18
+ import * as i4 from "@firestitch/label";
19
19
  export class FsHtmlEditorComponent {
20
20
  constructor(_defaultConfig, _cdRef, _fr) {
21
21
  this._defaultConfig = _defaultConfig;
@@ -442,8 +442,8 @@ export class FsHtmlEditorComponent {
442
442
  }
443
443
  }
444
444
  }
445
- FsHtmlEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorComponent, deps: [{ token: FS_HTML_EDITOR_CONFIG, optional: true }, { token: i0.ChangeDetectorRef }, { token: i1.FsFroalaLoaderService }], target: i0.ɵɵFactoryTarget.Component });
446
- FsHtmlEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FsHtmlEditorComponent, selector: "fs-html-editor", inputs: { config: "config", disabled: "disabled" }, host: { properties: { "class.focused": "this.classFocused", "class.disabled": "this.disabled", "class.initialized": "this.initialized" } }, providers: [
445
+ FsHtmlEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorComponent, deps: [{ token: FS_HTML_EDITOR_CONFIG, optional: true }, { token: i0.ChangeDetectorRef }, { token: i1.FsFroalaLoaderService }], target: i0.ɵɵFactoryTarget.Component });
446
+ FsHtmlEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FsHtmlEditorComponent, selector: "fs-html-editor", inputs: { config: "config", disabled: "disabled" }, host: { properties: { "class.focused": "this.classFocused", "class.disabled": "this.disabled", "class.initialized": "this.initialized" } }, providers: [
447
447
  {
448
448
  provide: NG_VALUE_ACCESSOR,
449
449
  useExisting: forwardRef(() => FsHtmlEditorComponent),
@@ -454,14 +454,14 @@ FsHtmlEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
454
454
  useExisting: forwardRef(() => FsHtmlEditorComponent),
455
455
  multi: true,
456
456
  },
457
- ], queries: [{ propertyName: "htmlEditorContainer", first: true, predicate: FsHtmlEditorContainerDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "elRef", first: true, predicate: ["elRef"], descendants: true }], ngImport: i0, template: "<fs-label-field>\n <div class=\"outline\">\n <div class=\"outline-overlay\"></div>\n <fs-label *ngIf=\"config.label\">{{config.label}}</fs-label>\n <ng-container *ngIf=\"htmlEditorContainer; else htmlEditorContainerTmpl\">\n <ng-container \n [ngTemplateOutlet]=\"htmlEditorContainer\" \n [ngTemplateOutletContext]=\"{ template: htmlEditorContainerTmpl }\">\n </ng-container>\n </ng-container>\n <ng-template #htmlEditorContainerTmpl>\n <div\n class=\"html-editor-container fs-html-editor-default\"\n [id]=\"containerID\"\n [ngClass]=\"{\n 'init-on-click': config.initOnClick\n }\">\n <ng-container *fsSkeleton=\"(froalaLoaded$ | async) !== false\"></ng-container>\n <div #elRef></div>\n </div>\n </ng-template>\n </div>\n\n <fs-label-message>\n <div class=\"fs-form-message\">\n <div class=\"fs-form-hint\">{{config.hint}}</div>\n </div>\n </fs-label-message>\n</fs-label-field>\n", styles: [":host{position:relative;display:block}:host.initialized .outline-overlay{border:1px solid transparent;position:absolute;inset:-1px;border-width:2px}:host.initialized .outline,:host.initialized .outline-overlay{border-radius:5px}:host.initialized .outline{border:1px solid #E0E0E0;position:relative;padding:0 .75em}:host.initialized .outline fs-label{background:#fff;top:-5px;position:absolute;left:11px;padding:0 3px;z-index:5}:host.initialized:not(.focused):not(.disabled):hover .outline-overlay{border-color:#212121}:host:not(.initialized) ::ng-deep .fr-toolbar{display:none}:host ::ng-deep fs-label-field{margin:.25em 0}:host ::ng-deep .fr-wrapper{border:none!important}:host ::ng-deep .fr-toolbar.fr-top{margin-top:2px}:host ::ng-deep .fr-box.fr-basic .fr-wrapper{border:0;border-bottom:1px solid #949494;margin-bottom:1px;background-color:transparent}:host ::ng-deep .fr-box.fr-basic .fr-element{padding:0;font-family:inherit;color:inherit;font-size:inherit;line-height:inherit;min-height:auto}:host ::ng-deep .fr-more-toolbar,:host ::ng-deep .fr-toolbar,:host ::ng-deep .fr-dropdown:after,:host ::ng-deep .fr-dropdown-menu .fr-dropdown-wrapper{transition:none!important}:host ::ng-deep .fr-toolbar-open .fr-more-toolbar{display:block}:host ::ng-deep .fr-more-toolbar{display:none}:host ::ng-deep .fr-toolbar.fr-top{position:sticky;z-index:2;border-radius:0;background-color:#fff}:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp{margin:0 20px 0 0}:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp:nth-child(1):after,:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp:nth-child(2):after{content:\"\";position:absolute;top:9px;height:30px;border-left:1px solid #e5e5e5;margin-left:10px}:host ::ng-deep .fr-toolbar.fr-top div:first-of-type:before{border:none}:host ::ng-deep .fr-toolbar.fr-top.fr-toolbar-open .fr-newline{height:auto}:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp:first-child{margin-left:0}:host ::ng-deep .fr-toolbar.fr-top.fr-top{border:0}:host ::ng-deep .fr-toolbar.fr-top .fr-newline{margin:0}:host ::ng-deep .fr-toolbar.fr-top .fr-more-toolbar{z-index:auto;display:flex;justify-content:center;padding-left:0!important}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn{z-index:auto}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn.fr-dropdown:after{right:3px}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn.fr-dropdown.fr-selection span{margin-right:24px}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn.fr-open{border-radius:4px;margin:4px 2px}:host ::ng-deep .fr-view ol,:host ::ng-deep .fr-view ul{list-style-position:unset}:host.disabled ::ng-deep .fr-box.fr-basic{opacity:.5;pointer-events:none}:host.disabled ::ng-deep .fr-box.fr-basic .fr-wrapper{border:none}::ng-deep .fr-popup{z-index:1001!important}::ng-deep .fr-video-by-url-layer .fr-checkbox-line{display:none}::ng-deep .fs-html-editor-mention-container{position:absolute;top:0;left:0;height:auto;max-height:300px;max-width:500px;overflow:auto;display:block;z-index:999999;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;border-bottom-left-radius:4px;border-bottom-right-radius:4px;background:#fff}::ng-deep .fs-html-editor-mention-container ul{margin:0;padding:0;list-style:none}::ng-deep .fs-html-editor-mention-container li{padding:0 16px;cursor:pointer;line-height:48px}::ng-deep .fs-html-editor-mention-container li.highlight,::ng-deep .fs-html-editor-mention-container li:hover{background:#F5F5F5}::ng-deep .fs-html-editor-mention-container li.no-match{cursor:default}\n"], components: [{ type: i2.FsLabelFieldComponent, selector: "fs-label-field", inputs: ["bottomMargin", "topMargin", "labelMargin"] }, { type: i2.FsLabelComponent, selector: "fs-label" }, { type: i2.FsLabelMessageComponent, selector: "fs-label-message" }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.FsSkeletonContentDirective, selector: "[fsSkeleton]", inputs: ["fsSkeleton", "fsSkeletonPattern"] }], pipes: { "async": i3.AsyncPipe }, viewProviders: [
457
+ ], queries: [{ propertyName: "htmlEditorContainer", first: true, predicate: FsHtmlEditorContainerDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "elRef", first: true, predicate: ["elRef"], descendants: true }], ngImport: i0, template: "<fs-label-field>\n <div class=\"outline\">\n <div class=\"outline-overlay\"></div>\n <fs-label *ngIf=\"config.label\">{{config.label}}</fs-label>\n <ng-container *ngIf=\"htmlEditorContainer; else htmlEditorContainerTmpl\">\n <ng-container \n [ngTemplateOutlet]=\"htmlEditorContainer\" \n [ngTemplateOutletContext]=\"{ template: htmlEditorContainerTmpl }\">\n </ng-container>\n </ng-container>\n <ng-template #htmlEditorContainerTmpl>\n <div\n class=\"html-editor-container fs-html-editor-default\"\n [id]=\"containerID\"\n [ngClass]=\"{\n 'init-on-click': config.initOnClick\n }\">\n <ng-container *fsSkeleton=\"(froalaLoaded$ | async) !== false\"></ng-container>\n <div #elRef></div>\n </div>\n </ng-template>\n </div>\n\n <fs-label-message>\n <div class=\"fs-form-message\">\n <div class=\"fs-form-hint\">{{config.hint}}</div>\n </div>\n </fs-label-message>\n</fs-label-field>\n", styles: [":host{position:relative;display:block}:host.initialized .outline-overlay{border:1px solid transparent;position:absolute;inset:-1px;border-width:2px}:host.initialized .outline,:host.initialized .outline-overlay{border-radius:5px}:host.initialized .outline{border:1px solid #E0E0E0;position:relative;padding:0 .75em}:host.initialized .outline fs-label{background:#fff;top:-5px;position:absolute;left:11px;padding:0 3px;z-index:5}:host.initialized:not(.focused):not(.disabled):hover .outline-overlay{border-color:#212121}:host:not(.initialized) ::ng-deep .fr-toolbar{display:none}:host ::ng-deep fs-label-field{margin:.25em 0}:host ::ng-deep .fr-wrapper{border:none!important}:host ::ng-deep .fr-toolbar.fr-top{margin-top:2px}:host ::ng-deep .fr-box.fr-basic .fr-wrapper{border:0;border-bottom:1px solid #949494;margin-bottom:1px;background-color:transparent}:host ::ng-deep .fr-box.fr-basic .fr-element{padding:0;font-family:inherit;color:inherit;font-size:inherit;line-height:inherit;min-height:auto}:host ::ng-deep .fr-more-toolbar,:host ::ng-deep .fr-toolbar,:host ::ng-deep .fr-dropdown:after,:host ::ng-deep .fr-dropdown-menu .fr-dropdown-wrapper{transition:none!important}:host ::ng-deep .fr-toolbar-open .fr-more-toolbar{display:block}:host ::ng-deep .fr-more-toolbar{display:none}:host ::ng-deep .fr-toolbar.fr-top{position:sticky;z-index:2;border-radius:0;background-color:#fff}:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp{margin:0 20px 0 0}:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp:nth-child(1):after,:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp:nth-child(2):after{content:\"\";position:absolute;top:9px;height:30px;border-left:1px solid #e5e5e5;margin-left:10px}:host ::ng-deep .fr-toolbar.fr-top div:first-of-type:before{border:none}:host ::ng-deep .fr-toolbar.fr-top.fr-toolbar-open .fr-newline{height:auto}:host ::ng-deep .fr-toolbar.fr-top .fr-btn-grp:first-child{margin-left:0}:host ::ng-deep .fr-toolbar.fr-top.fr-top{border:0}:host ::ng-deep .fr-toolbar.fr-top .fr-newline{margin:0}:host ::ng-deep .fr-toolbar.fr-top .fr-more-toolbar{z-index:auto;display:flex;justify-content:center;padding-left:0!important}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn{z-index:auto}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn.fr-dropdown:after{right:3px}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn.fr-dropdown.fr-selection span{margin-right:24px}:host ::ng-deep .fr-toolbar.fr-top .fr-command.fr-btn.fr-open{border-radius:4px;margin:4px 2px}:host ::ng-deep .fr-view ol,:host ::ng-deep .fr-view ul{list-style-position:unset}:host.disabled ::ng-deep .fr-box.fr-basic{opacity:.5;pointer-events:none}:host.disabled ::ng-deep .fr-box.fr-basic .fr-wrapper{border:none}::ng-deep .fr-popup{z-index:1001!important}::ng-deep .fr-video-by-url-layer .fr-checkbox-line{display:none}::ng-deep .fs-html-editor-mention-container{position:absolute;top:0;left:0;height:auto;max-height:300px;max-width:500px;overflow:auto;display:block;z-index:999999;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;border-bottom-left-radius:4px;border-bottom-right-radius:4px;background:#fff}::ng-deep .fs-html-editor-mention-container ul{margin:0;padding:0;list-style:none}::ng-deep .fs-html-editor-mention-container li{padding:0 16px;cursor:pointer;line-height:48px}::ng-deep .fs-html-editor-mention-container li.highlight,::ng-deep .fs-html-editor-mention-container li:hover{background:#F5F5F5}::ng-deep .fs-html-editor-mention-container li.no-match{cursor:default}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.FsSkeletonContentDirective, selector: "[fsSkeleton]", inputs: ["fsSkeleton", "fsSkeletonPattern"] }, { kind: "component", type: i4.FsLabelComponent, selector: "fs-label" }, { kind: "component", type: i4.FsLabelFieldComponent, selector: "fs-label-field", inputs: ["bottomMargin", "topMargin", "labelMargin"] }, { kind: "component", type: i4.FsLabelMessageComponent, selector: "fs-label-message" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], viewProviders: [
458
458
  {
459
459
  provide: ControlContainer,
460
460
  deps: [[Optional, NgForm]],
461
461
  useFactory: (ngForm) => ngForm,
462
462
  },
463
463
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
464
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorComponent, decorators: [{
464
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorComponent, decorators: [{
465
465
  type: Component,
466
466
  args: [{ selector: 'fs-html-editor', providers: [
467
467
  {
@@ -506,4 +506,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
506
506
  type: HostBinding,
507
507
  args: ['class.initialized']
508
508
  }] } });
509
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL2NvbXBvbmVudHMvaHRtbC1lZGl0b3IvaHRtbC1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL2NvbXBvbmVudHMvaHRtbC1lZGl0b3IvaHRtbC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTCxnQkFBZ0IsRUFFaEIsYUFBYSxFQUNiLGlCQUFpQixFQUNqQixNQUFNLEdBR1AsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQXVCLE1BQU0sa0JBQWtCLENBQUM7QUFHOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdGLE9BQU8sRUFDTCxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQzlFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVsQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrQkFBa0Is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QVE7c0JBRmQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBSXRCLFdBQVc7c0JBRGpCLFdBQVc7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xDb250YWluZXIsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgTmdGb3JtLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgZ3VpZCB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5pbXBvcnQgeyBGaWxlUHJvY2Vzc29yLCBGc0ZpbGUsIEZzRmlsZVByb2Nlc3NDb25maWcgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcblxuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZyb21FdmVudFBhdHRlcm4sIE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc2tpcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCAqIGFzIEZyb2FsYUVkaXRvciBmcm9tICdmcm9hbGEtZWRpdG9yJztcbmltcG9ydCB7IG1lcmdlIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgRnNIdG1sRWRpdG9yQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBGU19IVE1MX0VESVRPUl9DT05GSUcgfSBmcm9tICcuLi8uLi9pbmplY3RzL2NvbmZpZy5pbmplY3QnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgRnNIdG1sRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9odG1sLWVkaXRvci1jb25maWcnO1xuaW1wb3J0IHsgRnNGcm9hbGFMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZnJvYWxhLWxvYWRlci5zZXJ2aWNlJztcblxuaW1wb3J0IHsgUGx1Z2luIH0gZnJvbSAnLi8uLi8uLi9jbGFzc2VzL3BsdWdpbic7XG5pbXBvcnQgeyBQYXJhZ3JhcGhCdXR0b25zIH0gZnJvbSAnLi8uLi8uLi9jb25zdHMvcGFyYWdyYXBoLWJ1dHRvbnMuY29uc3QnO1xuaW1wb3J0IHsgUmljaEJ1dHRvbnMgfSBmcm9tICcuLy4uLy4uL2NvbnN0cy9yaWNoLWJ1dHRvbnMuY29uc3QnO1xuaW1wb3J0IHsgVGV4dEJ1dHRvbnMgfSBmcm9tICcuLy4uLy4uL2NvbnN0cy90ZXh0LWJ1dHRvbnMuY29uc3QnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWh0bWwtZWRpdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2h0bWwtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaHRtbC1lZGl0b3IuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGc0h0bWxFZGl0b3JDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRnNIdG1sRWRpdG9yQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB2aWV3UHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lcixcbiAgICAgIGRlcHM6IFtbT3B0aW9uYWwsIE5nRm9ybV1dLFxuICAgICAgdXNlRmFjdG9yeTogKG5nRm9ybTogTmdGb3JtKSA9PiBuZ0Zvcm0sXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNIdG1sRWRpdG9yQ29tcG9uZW50IFxuaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3IsIE9uRGVzdHJveSB7XG5cbiAgQENvbnRlbnRDaGlsZChGc0h0bWxFZGl0b3JDb250YWluZXJEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgcHVibGljIGh0bWxFZGl0b3JDb250YWluZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mb2N1c2VkJykgcHVibGljIGNsYXNzRm9jdXNlZCA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ2VsUmVmJykgcHVibGljIGVsUmVmOiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjb25maWc6IEZzSHRtbEVkaXRvckNvbmZpZyA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKVxuICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmluaXRpYWxpemVkJylcbiAgcHVibGljIGluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNvbnRhaW5lcklEID0gYGZzLWh0bWwtZWRpdG9yLSR7Z3VpZCgneHh4Jyl9YDtcbiAgcHVibGljIG9uVG91Y2hlZDogKCkgPT4gdm9pZDtcbiAgcHVibGljIG9uQ2hhbmdlOiAoZGF0YTogYW55KSA9PiB2b2lkO1xuXG4gIHByaXZhdGUgX2VkaXRvcjogYW55O1xuICBwcml2YXRlIF9odG1sOiBzdHJpbmc7XG4gIHByaXZhdGUgX2luaXRpYWxpemUkID0gbmV3IFJlcGxheVN1YmplY3QoKTtcbiAgcHJpdmF0ZSBfZnJvYWxhUmVhZHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChGU19IVE1MX0VESVRPUl9DT05GSUcpXG4gICAgcHJpdmF0ZSBfZGVmYXVsdENvbmZpZyxcbiAgICBwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZnI6IEZzRnJvYWxhTG9hZGVyU2VydmljZSxcbiAgKSB7IH1cblxuICBwdWJsaWMgZ2V0IGVsKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaHRtbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9odG1sO1xuICB9XG5cbiAgcHVibGljIGdldCBlZGl0b3IoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yO1xuICB9XG5cbiAgcHVibGljIGdldCBmcm9hbGFMb2FkZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9mci5sb2FkZWQkO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlnID0gdGhpcy5jb25maWcgfHwge307XG4gICAgdGhpcy5jb25maWcuYXV0b2ZvY3VzID0gdGhpcy5jb25maWcuYXV0b2ZvY3VzICYmICghdGhpcy5jb25maWcuZGlzYWJsZWQgfHwgIXRoaXMuZGlzYWJsZWQpO1xuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSAhdGhpcy5jb25maWcuaW5pdE9uQ2xpY2s7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuX2xpc3RlbkxhenlJbml0KCk7XG4gICAgdGhpcy5faW5pdGlhbGl6ZSQubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIGhhc0NvbnRlbnQoKSB7XG4gICAgY29uc3QgZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcblxuICAgIGlmIChlbC5xdWVyeVNlbGVjdG9yKCdpbWcnKSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZWwuaW5uZXJIVE1MID0gdGhpcy5faHRtbDtcblxuICAgIHJldHVybiAhIWVsLmlubmVyVGV4dC5sZW5ndGg7XG4gIH1cblxuICBwdWJsaWMgdW5pbml0aWFsaXplKCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKG9wdGlvbnM6IGFueSA9IHt9KSB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5fY3JlYXRlQ29uZmlnKCk7XG4gICAgdGhpcy5faW5pdFBsdWdpbnMoY29uZmlnKTtcbiAgICB0aGlzLl9pbml0QnV0dG9ucyhjb25maWcpO1xuICAgIHRoaXMuX2VkaXRvciA9IG5ldyB0aGlzLl9mci5Gcm9hbGFFZGl0b3IodGhpcy5lbCwgdGhpcy5fY3JlYXRlT3B0aW9ucygpLCAoKSA9PiB7XG4gICAgICB0aGlzLl9mcm9hbGFSZWFkeSQubmV4dCh7IGNvbmZpZywgb3B0aW9ucyB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVTaXplKCkge1xuICAgIC8vIEhhY2s6IFRvIHRyaWdnZXIgdGhlIHRvb2xiYXIgYnV0dG9uIHNpemUgbW9kZXNcbiAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ3Jlc2l6ZScpKTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgY29uc3QgZXJyOiBhbnkgPSB7fTtcbiAgICBpZiAodGhpcy5jb25maWcubWF4TGVuZ3RoICYmIHRoaXMuX2h0bWwpIHtcbiAgICAgIGNvbnN0IG1heExlbmd0aCA9IHRoaXMuY29uZmlnLm1heExlbmd0aDtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuX2h0bWwubGVuZ3RoO1xuICAgICAgaWYgKGxlbmd0aCA+IG1heExlbmd0aCkge1xuICAgICAgICBlcnIubWF4TGVuZ3RoRXJyb3IgPSBgTXVzdCBiZSAke21heExlbmd0aH0gY2hhcmFjdGVycyBvciBmZXdlci4gWW91IGVudGVyZWQgJHtsZW5ndGh9IGNoYXJhY3RlcnMuYDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZXJyKS5sZW5ndGggPyBlcnIgOiBudWxsO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKG9wdGlvbnM/OiB7IGN1cnNvclBvc2l0aW9uPzogJ3N0YXJ0JyB8ICdlbmQnIH0pIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyA/IG9wdGlvbnMgOiB7fTtcblxuICAgIGlmIChvcHRpb25zLmN1cnNvclBvc2l0aW9uID09PSAnZW5kJykge1xuICAgICAgdGhpcy5lZGl0b3Iuc2VsZWN0aW9uLnNldEF0RW5kKHRoaXMuZWRpdG9yLiRlbC5nZXQoMCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVkaXRvci5zZWxlY3Rpb24uc2V0QXRTdGFydCh0aGlzLmVkaXRvci4kZWwuZ2V0KDApKTtcbiAgICB9XG5cbiAgICB0aGlzLmVkaXRvci5zZWxlY3Rpb24ucmVzdG9yZSgpO1xuXG4gICAgY29uc3QgZWxTZWxlY3Rpb24gPSB0aGlzLmVkaXRvci5zZWxlY3Rpb24uZWxlbWVudCgpO1xuICAgIGlmIChlbFNlbGVjdGlvbikge1xuICAgICAgZWxTZWxlY3Rpb24uc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ2NlbnRlcicgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsZWFyKCkge1xuICAgIHRoaXMud3JpdGVWYWx1ZSgnJyk7XG4gIH1cblxuICBwdWJsaWMgZGlzYWJsZSgpIHtcbiAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRIdG1sKGh0bWwpIHtcbiAgICB0aGlzLndyaXRlVmFsdWUoaHRtbCk7XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZShodG1sOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9odG1sID0gaHRtbCB8fCAnJztcblxuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuX2h0bWwpKSB7XG4gICAgICB0aGlzLl9odG1sID0gdGhpcy5faHRtbC5wb3AoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9odG1sID0gdGhpcy5faHRtbFxuICAgICAgLnJlcGxhY2UoLzwobGkpPlxccz88KGRpdik+L2csICc8bGk+JylcbiAgICAgIC5yZXBsYWNlKC88XFwvKGRpdik+PFxcLyhsaSk+L2csICc8L2xpPicpO1xuXG4gICAgaWYgKHRoaXMuZWRpdG9yICYmIHRoaXMuZWRpdG9yLmh0bWwpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuZWRpdG9yLmh0bWwuc2V0KHRoaXMuX2h0bWwpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAvL1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IChkYXRhOiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2luaXRpYWxpemUkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5kZXN0cm95KCk7XG4gIH1cblxuICBwdWJsaWMgZGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5lZGl0b3IpIHtcbiAgICAgIHRoaXMuZWRpdG9yLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICB0aGlzLmluaXRpYWxpemVkID0gZmFsc2U7XG4gICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIF9wcm9jZXNzSW1hZ2VVcGxvYWQoYmxvYikge1xuICAgIGNvbnN0IHByb2Nlc3NvciA9IG5ldyBGaWxlUHJvY2Vzc29yKCk7XG4gICAgY29uc3QgZmlsZSA9IG5ldyBGc0ZpbGUoYmxvYik7XG5cbiAgICBjb25zdCBjb25maWc6IEZzRmlsZVByb2Nlc3NDb25maWcgPSB7XG4gICAgICBvcmllbnRhdGU6IHRydWUsXG4gICAgICBxdWFsaXR5OiB0aGlzLmNvbmZpZy5pbWFnZS5xdWFsaXR5LFxuICAgICAgZm9ybWF0OiB0aGlzLmNvbmZpZy5pbWFnZS5mb3JtYXQgYXMgYW55LFxuICAgICAgbWF4V2lkdGg6IHRoaXMuY29uZmlnLmltYWdlLndpZHRoLFxuICAgICAgbWF4SGVpZ2h0OiB0aGlzLmNvbmZpZy5pbWFnZS5oZWlnaHQsXG4gICAgICBtaW5XaWR0aDogdGhpcy5jb25maWcuaW1hZ2UubWluV2lkdGgsXG4gICAgICBtaW5IZWlnaHQ6IHRoaXMuY29uZmlnLmltYWdlLm1pbkhlaWdodCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHByb2Nlc3Nvci5wcm9jZXNzRmlsZShmaWxlLCBjb25maWcpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChmc0ZpbGU6IEZzRmlsZSkgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5pbWFnZS51cGxvYWQoZnNGaWxlLmZpbGUpO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVDb25maWcoKTogRnNIdG1sRWRpdG9yQ29uZmlnIHtcbiAgICByZXR1cm4gbWVyZ2UoeyBmcm9hbGFDb25maWc6IHt9IH0sIHRoaXMuX2RlZmF1bHRDb25maWcsIHRoaXMuY29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoYW5nZShodG1sKTogdm9pZCB7XG4gICAgdGhpcy5faHRtbCA9IGh0bWw7XG4gICAgdGhpcy5vbkNoYW5nZShodG1sKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRCdXR0b25zKGNvbmZpZzogRnNIdG1sRWRpdG9yQ29uZmlnKSB7XG4gICAgKGNvbmZpZy5idXR0b25zIHx8IFtdKVxuICAgICAgLmZvckVhY2goKGJ1dHRvbikgPT4ge1xuICAgICAgICAvKlxuICAgICAgICAgIFN2ZyBLZXlzOlxuICAgICAgICAgIFtcImFkZFwiLCBcImFkdmFuY2VkSW1hZ2VFZGl0b3JcIiwgXCJhbGlnbkNlbnRlclwiLCBcImFsaWduSnVzdGlmeVwiLCBcImFsaWduTGVmdFwiLCBcImFsaWduUmlnaHRcIixcbiAgICAgICAgICBcImFuY2hvcnNcIiwgXCJiYWNrXCIsIFwiYmFja2dyb3VuZENvbG9yXCIsIFwiYmxvY2txdW90ZVwiLCBcImJvbGRcIiwgXCJjZWxsQmFja2dyb3VuZFwiLFxuICAgICAgICAgIFwiY2VsbEJvcmRlckNvbG9yXCIsIFwiY2VsbE9wdGlvbnNcIiwgXCJjZWxsU3R5bGVcIiwgXCJjbGVhckZvcm1hdHRpbmdcIiwgXCJjbG9zZVwiLCBcImNvZGVWaWV3XCIsXG4gICAgICAgICAgXCJjb2dzXCIsIFwiY29sdW1uc1wiLCBcImVkaXRMaW5rXCIsIFwiZXhpdEZ1bGxzY3JlZW5cIiwgXCJmb250QXdlc29tZVwiLCBcImZvbnRGYW1pbHlcIixcbiAgICAgICAgICBcImZvbnRTaXplXCIsIFwiZnVsbHNjcmVlblwiLCBcImhlbHBcIiwgXCJob3Jpem9udGFsTGluZVwiLCBcImltYWdlQWx0VGV4dFwiLCBcImltYWdlQ2FwdGlvblwiLFxuICAgICAgICAgIFwiaW1hZ2VDbGFzc1wiLCBcImltYWdlRGlzcGxheVwiLCBcImltYWdlTWFuYWdlclwiLCBcImltYWdlU2l6ZVwiLCBcImluZGVudFwiLCBcImlubGluZUNsYXNzXCIsXG4gICAgICAgICAgXCJpbmxpbmVTdHlsZVwiLCBcImluc2VydEVtYmVkXCIsIFwiaW5zZXJ0RmlsZVwiLCBcImluc2VydEltYWdlXCIsIFwiaW5zZXJ0TGlua1wiLCBcImluc2VydE1vcmVcIixcbiAgICAgICAgICBcImluc2VydFRhYmxlXCIsIFwiaW5zZXJ0VmlkZW9cIiwgXCJ1cGxvYWRcIiwgXCJpdGFsaWNcIiwgXCJzZWFyY2hcIiwgXCJsaW5lSGVpZ2h0XCIsIFwibGlua1N0eWxlc1wiLFxuICAgICAgICAgIFwibWVudGlvblwiLCBcIm1vcmVcIiwgXCJvcGVuTGlua1wiLCBcIm9yZGVyZWRMaXN0XCIsIFwib3V0ZGVudFwiLCBcInBhZ2VCcmVha2VyXCIsXG4gICAgICAgICAgXCJwYXJhZ3JhcGhGb3JtYXRcIiwgXCJwYXJhZ3JhcGhNb3JlXCIsIFwicGFyYWdyYXBoU3R5bGVcIiwgXCJwZGZFeHBvcnRcIiwgXCJwcmludFwiLFxuICAgICAgICAgIFwicmVkb1wiLCBcInJlbW92ZVRhYmxlXCIsIFwicmVtb3ZlXCIsIFwicmVwbGFjZUltYWdlXCIsIFwicm93XCIsIFwic2VsZWN0QWxsXCIsIFwic21pbGVcIixcbiAgICAgICAgICBcInNwZWxsY2hlY2tcIiwgXCJzdGFyXCIsIFwic3RyaWtlVGhyb3VnaFwiLCBcInN1YnNjcmlwdFwiLCBcInN1cGVyc2NyaXB0XCIsIFwic3ltYm9sc1wiLCBcInRhZ3NcIixcbiAgICAgICAgICBcInRhYmxlSGVhZGVyXCIsIFwidGFibGVTdHlsZVwiLCBcInRleHRDb2xvclwiLCBcInRleHRNb3JlXCIsIFwidW5kZXJsaW5lXCIsIFwidW5kb1wiLCBcInVubGlua1wiLFxuICAgICAgICAgIFwidW5vcmRlcmVkTGlzdFwiLCBcInZlcnRpY2FsQWxpZ25Cb3R0b21cIiwgXCJ2ZXJ0aWNhbEFsaWduTWlkZGxlXCIsIFwidmVydGljYWxBbGlnblRvcFwiXVxuICAgICAgICAqL1xuXG4gICAgICAgIGlmIChidXR0b24uc3ZnS2V5KSB7XG4gICAgICAgICAgdGhpcy5fZnIuRnJvYWxhRWRpdG9yLkRlZmluZUljb24oYnV0dG9uLm5hbWUsIHsgU1ZHX0tFWTogYnV0dG9uLnN2Z0tleSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2ZyLkZyb2FsYUVkaXRvci5SZWdpc3RlckNvbW1hbmQoYnV0dG9uLm5hbWUsIHtcbiAgICAgICAgICB0aXRsZTogYnV0dG9uLnRpdGxlLFxuICAgICAgICAgIGZvY3VzOiBidXR0b24uZm9jdXMgPz8gdHJ1ZSxcbiAgICAgICAgICB1bmRvOiBidXR0b24udW5kbyA/PyB0cnVlLFxuICAgICAgICAgIHJlZnJlc2hBZnRlckNhbGxiYWNrOiBidXR0b24ucmVmcmVzaEFmdGVyQ2FsbGJhY2sgPz8gdHJ1ZSxcbiAgICAgICAgICBjYWxsYmFjaygpIHtcbiAgICAgICAgICAgIGJ1dHRvbi5jbGljayh0aGlzKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdFBsdWdpbnMoY29uZmlnOiBGc0h0bWxFZGl0b3JDb25maWcpIHtcbiAgICAoY29uZmlnLnByZXBlbmRUb29sYmFyVGV4dEJ1dHRvbnMgfHwgW10pXG4gICAgICAuZm9yRWFjaCgoYnV0dG9uOiBUb29sYmFyQnV0dG9uKSA9PiB7XG4gICAgICAgIHRoaXMuX2RlZmluZUJ1dHRvbihidXR0b24pO1xuICAgICAgfSk7XG5cbiAgICAoY29uZmlnLnBsdWdpbnMgfHwgW10pLmZvckVhY2goKHBsdWdpbjogUGx1Z2luKSA9PiB7XG4gICAgICB0aGlzLl9mci5Gcm9hbGFFZGl0b3IuUExVR0lOU1twbHVnaW4uY29uZmlnLm5hbWVdID0gZnVuY3Rpb24gKGVkaXRvcikge1xuICAgICAgICBwbHVnaW4uZWRpdG9yID0gZWRpdG9yO1xuICAgICAgICBwbHVnaW4uaW5pdGlhbGl6ZSgpO1xuXG4gICAgICAgIHJldHVybiBwbHVnaW47XG4gICAgICB9O1xuXG4gICAgICAocGx1Z2luLmNvbmZpZy5idXR0b25zIHx8IFtdKVxuICAgICAgICAuZm9yRWFjaCgoYnV0dG9uOiBUb29sYmFyQnV0dG9uKSA9PiB7XG4gICAgICAgICAgdGhpcy5fZGVmaW5lQnV0dG9uKGJ1dHRvbik7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGVmaW5lQnV0dG9uKGJ1dHRvbjogVG9vbGJhckJ1dHRvbikge1xuICAgIGlmKGJ1dHRvbi5odG1sKSB7XG4gICAgICB0aGlzLl9mci5Gcm9hbGFFZGl0b3JcbiAgICAgICAgLkRlZmluZUljb25UZW1wbGF0ZShgJHtidXR0b24ubmFtZX0tdGVtcGxhdGVgLCBidXR0b24uaHRtbCk7XG4gICAgICB0aGlzLl9mci5Gcm9hbGFFZGl0b3JcbiAgICAgICAgLkRlZmluZUljb24oYnV0dG9uLm5hbWUsIHsgXG4gICAgICAgICAgTkFNRTogYCR7YnV0dG9uLm5hbWV9LWljb25gLFxuICAgICAgICAgIHRlbXBsYXRlOiBgJHtidXR0b24ubmFtZX0tdGVtcGxhdGVgLCBcbiAgICAgICAgfSk7XG4gIFxuICAgIH0gZWxzZSB7IFxuICAgICAgdGhpcy5fZnIuRnJvYWxhRWRpdG9yLkRlZmluZUljb24oYnV0dG9uLm5hbWUsIHtcbiAgICAgICAgTkFNRTogYnV0dG9uLm5hbWUsXG4gICAgICAgIFBBVEg6IGJ1dHRvbi5zdmdQYXRoLFxuICAgICAgfSk7XG4gICAgfSBcblxuICAgIHRoaXMuX2ZyLkZyb2FsYUVkaXRvci5SZWdpc3RlckNvbW1hbmQoYnV0dG9uLm5hbWUsIHtcbiAgICAgIGljb246IGJ1dHRvbi5uYW1lLFxuICAgICAgdGl0bGU6IGJ1dHRvbi50b29sdGlwLFxuICAgICAgdW5kbzogYnV0dG9uLnVuZG8sXG4gICAgICBmb2N1czogYnV0dG9uLmZvY3VzLFxuICAgICAgc2hvd09uTW9iaWxlOiBidXR0b24uc2hvd09uTW9iaWxlLFxuICAgICAgcmVmcmVzaEFmdGVyQ2FsbGJhY2s6IGJ1dHRvbi5yZWZyZXNoQWZ0ZXJDYWxsYmFjayxcbiAgICAgIGNhbGxiYWNrKCkge1xuICAgICAgICBpZiAoYnV0dG9uLmNsaWNrKSB7XG4gICAgICAgICAgYnV0dG9uLmNsaWNrKHRoaXMpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcmVmcmVzaChldmVudCkge1xuICAgICAgICBpZiAoZXZlbnQucmVmcmVzaCkge1xuICAgICAgICAgIGV2ZW50LnJlZnJlc2godGhpcywgZXZlbnQpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pO1xuXG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVPcHRpb25zKCkge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuX2NyZWF0ZUNvbmZpZygpO1xuXG4gICAgY29uc3QgdGV4dEJ1dHRvbnMgPSBbXG4gICAgICAuLi4oY29uZmlnLnByZXBlbmRUb29sYmFyVGV4dEJ1dHRvbnMgfHwgW10pXG4gICAgICAgIC5tYXAoKGl0ZW0pID0+IGl0ZW0ubmFtZSksXG4gICAgICAuLi5UZXh0QnV0dG9ucyxcbiAgICBdO1xuXG4gICAgcmV0dXJuIG1lcmdlKFxuICAgICAgLy8gRm9yIHNvbWUgcmVhc29uIGVkaXRvciBzdG9yZSBzb21ld2hlcmUgcG9pbnRlciBvbiBkZWZhdWx0IGNvbmZpZyBvYmplY3QgYW5kIGR1YmxpY2F0ZSBvcHRpb25zIGVhY2ggdGltZSBvbiBpbml0XG4gICAgICAvLyBFeHRyYSBtZXJnZSBsZXZlbCBmaXhlZCB0aGlzIHByb2JsZW0gYW5kIGFsbG93IHRvIGluaXQgY29uZmlnIHByb3Blcmx5IHdpdGhvdXQgbGVnYWN5IGRhdGFcbiAgICAgIHt9LFxuICAgICAge1xuICAgICAgICBzaG9ydGN1dHNFbmFibGVkOiBbJ3Nob3cnLCAnYm9sZCcsICdpdGFsaWMnLCAndW5kZXJsaW5lJywgJ2luZGVudCcsICdvdXRkZW50JywgJ3VuZG8nLCAncmVkbycsICdpbnNlcnRJbWFnZScsICdjcmVhdGVMaW5rJ10sXG4gICAgICAgIGtleTogY29uZmlnLmFjdGl2YXRpb25LZXksXG4gICAgICAgIHBsYWNlaG9sZGVyVGV4dDogY29uZmlnLnBsYWNlaG9sZGVyLFxuICAgICAgICBsaW5rQWx3YXlzQmxhbms6IHRydWUsXG4gICAgICAgIHRhYlNwYWNlczogMixcbiAgICAgICAgdHlwaW5nVGltZXI6IDI1MCxcbiAgICAgICAgdG9vbHRpcHM6IGZhbHNlLFxuICAgICAgICB3b3JkUGFzdGVNb2RhbDogZmFsc2UsXG4gICAgICAgIGltYWdlRGVmYXVsdFdpZHRoOiAwLFxuICAgICAgICBwYXJhZ3JhcGhTdHlsZXM6IHtcbiAgICAgICAgICBjbGFzczE6ICdDbGFzcyAxJyxcbiAgICAgICAgICBjbGFzczI6ICdDbGFzcyAyJyxcbiAgICAgICAgfSxcbiAgICAgICAgaW1hZ2VEZWZhdWx0QWxpZ246ICdsZWZ0JyxcbiAgICAgICAgZm9udEZhbWlseURlZmF1bHRTZWxlY3Rpb246ICdGb250IEZhbWlseScsXG4gICAgICAgIHF1aWNrSW5zZXJ0RW5hYmxlZDogZmFsc2UsXG4gICAgICAgIHNjcm9sbGFibGVDb250YWluZXI6IGAjJHt0aGlzLmNvbnRhaW5lcklEfWAsXG4gICAgICAgIHBhcmFncmFwaERlZmF1bHRTZWxlY3Rpb246ICdGb3JtYXQnLFxuICAgICAgICB2aWRlb1VwbG9hZDogZmFsc2UsXG4gICAgICAgIGltYWdlUGFzdGU6ICEhY29uZmlnLmltYWdlPy51cGxvYWQsXG4gICAgICAgIGltYWdlVXBsb2FkOiAhIWNvbmZpZy5pbWFnZT8udXBsb2FkLFxuICAgICAgICBwYXJhZ3JhcGhGb3JtYXQ6IHtcbiAgICAgICAgICBOOiAnTm9ybWFsJyxcbiAgICAgICAgICBIMTogJ0hlYWRpbmcgMScsXG4gICAgICAgICAgSDI6ICdIZWFkaW5nIDInLFxuICAgICAgICAgIEgzOiAnSGVhZGluZyAzJyxcbiAgICAgICAgICBINDogJ0hlYWRpbmcgNCcsXG4gICAgICAgICAgQkxPQ0tRVU9URTogJ1F1b3RlJyxcbiAgICAgICAgfSxcbiAgICAgICAgbGluZUhlaWdodHM6IHtcbiAgICAgICAgICBEZWZhdWx0OiAnJyxcbiAgICAgICAgICAwLjU6ICcwLjUnLFxuICAgICAgICAgIFNpbmdsZTogJzEnLFxuICAgICAgICAgIDEuMTU6ICcxLjE1JyxcbiAgICAgICAgICAxLjU6ICcxLjUnLFxuICAgICAgICAgIERvdWJsZTogJzInLFxuICAgICAgICB9LFxuICAgICAgICBwYXJhZ3JhcGhGb3JtYXRTZWxlY3Rpb246IHRydWUsXG4gICAgICAgIHRvb2xiYXJCdXR0b25zWFM6IHtcbiAgICAgICAgICBtb3JlVGV4dDoge1xuICAgICAgICAgICAgYnV0dG9uczogdGV4dEJ1dHRvbnMsXG4gICAgICAgICAgICBidXR0b25zVmlzaWJsZTogMSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIG1vcmVQYXJhZ3JhcGg6IHtcbiAgICAgICAgICAgIGJ1dHRvbnM6IFBhcmFncmFwaEJ1dHRvbnMsXG4gICAgICAgICAgICBidXR0b25zVmlzaWJsZTogMixcbiAgICAgICAgICB9LFxuICAgICAgICAgIG1vcmVSaWNoOiB7XG4gICAgICAgICAgICBidXR0b25zOiBSaWNoQnV0dG9ucyxcbiAgICAgICAgICAgIGJ1dHRvbnNWaXNpYmxlOiAwLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHRvb2xiYXJCdXR0b25zOiB7XG4gICAgICAgICAgbW9yZVRleHQ6IHtcbiAgICAgICAgICAgIGJ1dHRvbnM6IHRleHRCdXR0b25zLFxuICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDMsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtb3JlUGFyYWdyYXBoOiB7XG4gICAgICAgICAgICBidXR0b25zOiBQYXJhZ3JhcGhCdXR0b25zLFxuICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtb3JlUmljaDoge1xuICAgICAgICAgICAgYnV0dG9uczogUmljaEJ1dHRvbnMsXG4gICAgICAgICAgICBidXR0b25zVmlzaWJsZTogMyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSBhcyBQYXJ0aWFsPEZyb2FsYUVkaXRvci5Gcm9hbGFPcHRpb25zPixcbiAgICAgIGNvbmZpZy5mcm9hbGFDb25maWcsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlbkxhenlJbml0KCkge1xuICAgIHRoaXMuZnJvYWxhTG9hZGVkJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigocmVhZHkpID0+IHJlYWR5KSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuX2luaXRpYWxpemUkKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICBjb25zdCBzZWxlY3Rpb246IGFueSA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICAgICAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7fTtcbiAgICAgICAgICBpZiAoc2VsZWN0aW9uLmJhc2VOb2RlKSB7XG4gICAgICAgICAgICBvcHRpb25zLnNlbGVjdGlvbiA9IHtcbiAgICAgICAgICAgICAgbm9kZTogc2VsZWN0aW9uLmJhc2VOb2RlLm5vZGVWYWx1ZSxcbiAgICAgICAgICAgICAgb2Zmc2V0OiBzZWxlY3Rpb24uYmFzZU9mZnNldCxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZShvcHRpb25zKTtcbiAgICAgICAgfSksXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLl9mcm9hbGFSZWFkeSQpLFxuICAgICAgICBmaWx0ZXIoKGRhdGEpID0+ICEhZGF0YSksXG4gICAgICAgIHRhcCgoeyBjb25maWcsIG9wdGlvbnMgfSkgPT4ge1xuICAgICAgICAgIHRoaXMuX3NldHVwRnJvYWxhKGNvbmZpZywgb3B0aW9ucyk7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29udGVudENoYW5nZWQoKTogdm9pZCB7XG4gICAgY29uc3QgZWRpdG9ySFRNTCA9IHRoaXMuX2VkaXRvci5odG1sLmdldCgpO1xuXG4gICAgaWYgKHRoaXMuaHRtbCAhPT0gZWRpdG9ySFRNTCkge1xuICAgICAgdGhpcy5fY2hhbmdlKGVkaXRvckhUTUwpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwRnJvYWxhKGNvbmZpZzogRnNIdG1sRWRpdG9yQ29uZmlnLCBvcHRpb25zOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcblxuICAgIHRoaXMuc2V0SHRtbCh0aGlzLl9odG1sKTtcblxuICAgIGlmIChjb25maWcuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuZGlzYWJsZSgpO1xuICAgIH1cblxuICAgIGlmIChjb25maWcuZnJvYWxhQ29uZmlnLmV2ZW50cykge1xuICAgICAgaWYgKGNvbmZpZy5mcm9hbGFDb25maWcuZXZlbnRzLmluaXRpYWxpemVkKSB7XG4gICAgICAgIGNvbmZpZy5mcm9hbGFDb25maWcuZXZlbnRzLmluaXRpYWxpemVkKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fZWRpdG9yLmV2ZW50cy5vbignZm9jdXMnLCAoKSA9PiB7XG4gICAgICB0aGlzLmNsYXNzRm9jdXNlZCA9IHRydWU7XG4gICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2VkaXRvci5ldmVudHMub24oJ2JsdXInLCAoKSA9PiB7XG4gICAgICB0aGlzLmNsYXNzRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdjbGljaycsICgpID0+IHtcbiAgICAgIGlmICh0aGlzLmNvbmZpZy5pbml0T25DbGljayAmJiAhdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBmcm9tRXZlbnRQYXR0ZXJuKFxuICAgICAgKGhhbmRsZXIpID0+IHtcbiAgICAgICAgdGhpcy5fZWRpdG9yLmV2ZW50cy5vbignY29udGVudENoYW5nZWQnLCBoYW5kbGVyKTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIC8vXG4gICAgICB9LFxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICBzdGFydFdpdGgodGhpcy5faHRtbCksXG4gICAgICAgIG1hcCgoKSA9PiB0aGlzLmVkaXRvci5odG1sLmdldCgpKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgc2tpcCgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9jb250ZW50Q2hhbmdlZCgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdwYXN0ZS5hZnRlckNsZWFudXAnLCAoaHRtbCkgPT4ge1xuICAgICAgY29uc3QgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICBkaXYuaW5uZXJIVE1MID0gaHRtbDtcbiAgICAgIGRpdi5xdWVyeVNlbGVjdG9yQWxsKCcqJylcbiAgICAgICAgLmZvckVhY2goKGVsKSA9PiB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbC5hdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBuYW1lID0gZWwuYXR0cmlidXRlc1swXS5uYW1lO1xuICAgICAgICAgICAgaWYgKG5hbWUgIT09ICdocmVmJykge1xuICAgICAgICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUobmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgcmV0dXJuIGRpdi5pbm5lckhUTUw7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdrZXlkb3duJywgKCkgPT4ge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmNvbmZpZy5pbWFnZSAmJiB0aGlzLmNvbmZpZy5pbWFnZS51cGxvYWQpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5ldmVudHMub24oJ2ltYWdlLmJlZm9yZVBhc3RlVXBsb2FkJywgKGltYWdlKSA9PiB7XG5cbiAgICAgICAgZmV0Y2goaW1hZ2UuZ2V0QXR0cmlidXRlKCdzcmMnKSlcbiAgICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICByZXMuYmxvYigpXG4gICAgICAgICAgICAgIC50aGVuKChibG9iKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcHJvY2Vzc0ltYWdlVXBsb2FkKGJsb2IpXG4gICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHVybCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpbWFnZS5zZXRBdHRyaWJ1dGUoJ3NyYycsIHVybCk7XG4gICAgICAgICAgICAgICAgICAgIGltYWdlLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1mci1pbWFnZS1wYXN0ZWQnKTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb250ZW50Q2hhbmdlZCgpO1xuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdpbWFnZS5iZWZvcmVVcGxvYWQnLCAoYmxvYnMpID0+IHtcbiAgICAgICAgdGhpcy5fcHJvY2Vzc0ltYWdlVXBsb2FkKGJsb2JzWzBdKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZSgodXJsKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmVkaXRvci5pbWFnZS5pbnNlcnQodXJsLCBudWxsLCBudWxsLCB0aGlzLmVkaXRvci5pbWFnZS5nZXQoKSk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZWwucXVlcnlTZWxlY3RvcignLmZyLXNlY29uZC10b29sYmFyJykpIHtcbiAgICAgIHRoaXMuZWwucXVlcnlTZWxlY3RvcignLmZyLXNlY29uZC10b29sYmFyJykucmVtb3ZlKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLmF1dG9mb2N1cyAmJiAhdGhpcy5jb25maWcuaW5pdE9uQ2xpY2spIHtcbiAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxmcy1sYWJlbC1maWVsZD5cbiAgPGRpdiBjbGFzcz1cIm91dGxpbmVcIj5cbiAgICA8ZGl2IGNsYXNzPVwib3V0bGluZS1vdmVybGF5XCI+PC9kaXY+XG4gICAgPGZzLWxhYmVsICpuZ0lmPVwiY29uZmlnLmxhYmVsXCI+e3tjb25maWcubGFiZWx9fTwvZnMtbGFiZWw+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImh0bWxFZGl0b3JDb250YWluZXI7IGVsc2UgaHRtbEVkaXRvckNvbnRhaW5lclRtcGxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImh0bWxFZGl0b3JDb250YWluZXJcIiBcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgdGVtcGxhdGU6IGh0bWxFZGl0b3JDb250YWluZXJUbXBsIH1cIj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjaHRtbEVkaXRvckNvbnRhaW5lclRtcGw+XG4gICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJodG1sLWVkaXRvci1jb250YWluZXIgZnMtaHRtbC1lZGl0b3ItZGVmYXVsdFwiXG4gICAgICAgICAgW2lkXT1cImNvbnRhaW5lcklEXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnaW5pdC1vbi1jbGljayc6IGNvbmZpZy5pbml0T25DbGlja1xuICAgICAgICAgIH1cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZnNTa2VsZXRvbj1cIihmcm9hbGFMb2FkZWQkIHwgYXN5bmMpICE9PSBmYWxzZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2ICNlbFJlZj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuXG4gIDxmcy1sYWJlbC1tZXNzYWdlPlxuICAgIDxkaXYgY2xhc3M9XCJmcy1mb3JtLW1lc3NhZ2VcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmcy1mb3JtLWhpbnRcIj57e2NvbmZpZy5oaW50fX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9mcy1sYWJlbC1tZXNzYWdlPlxuPC9mcy1sYWJlbC1maWVsZD5cbiJdfQ==
509
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL2NvbXBvbmVudHMvaHRtbC1lZGl0b3IvaHRtbC1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL2NvbXBvbmVudHMvaHRtbC1lZGl0b3IvaHRtbC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTCxnQkFBZ0IsRUFFaEIsYUFBYSxFQUNiLGlCQUFpQixFQUNqQixNQUFNLEdBR1AsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQXVCLE1BQU0sa0JBQWtCLENBQUM7QUFHOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdGLE9BQU8sRUFDTCxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQzlFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVsQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrQkFBa0Is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QVE7c0JBRmQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBSXRCLFdBQVc7c0JBRGpCLFdBQVc7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xDb250YWluZXIsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgTmdGb3JtLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgZ3VpZCB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5pbXBvcnQgeyBGaWxlUHJvY2Vzc29yLCBGc0ZpbGUsIEZzRmlsZVByb2Nlc3NDb25maWcgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcblxuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZyb21FdmVudFBhdHRlcm4sIE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc2tpcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCAqIGFzIEZyb2FsYUVkaXRvciBmcm9tICdmcm9hbGEtZWRpdG9yJztcbmltcG9ydCB7IG1lcmdlIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgRnNIdG1sRWRpdG9yQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBGU19IVE1MX0VESVRPUl9DT05GSUcgfSBmcm9tICcuLi8uLi9pbmplY3RzL2NvbmZpZy5pbmplY3QnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgRnNIdG1sRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9odG1sLWVkaXRvci1jb25maWcnO1xuaW1wb3J0IHsgRnNGcm9hbGFMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZnJvYWxhLWxvYWRlci5zZXJ2aWNlJztcblxuaW1wb3J0IHsgUGx1Z2luIH0gZnJvbSAnLi8uLi8uLi9jbGFzc2VzL3BsdWdpbic7XG5pbXBvcnQgeyBQYXJhZ3JhcGhCdXR0b25zIH0gZnJvbSAnLi8uLi8uLi9jb25zdHMvcGFyYWdyYXBoLWJ1dHRvbnMuY29uc3QnO1xuaW1wb3J0IHsgUmljaEJ1dHRvbnMgfSBmcm9tICcuLy4uLy4uL2NvbnN0cy9yaWNoLWJ1dHRvbnMuY29uc3QnO1xuaW1wb3J0IHsgVGV4dEJ1dHRvbnMgfSBmcm9tICcuLy4uLy4uL2NvbnN0cy90ZXh0LWJ1dHRvbnMuY29uc3QnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWh0bWwtZWRpdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2h0bWwtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaHRtbC1lZGl0b3IuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGc0h0bWxFZGl0b3JDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRnNIdG1sRWRpdG9yQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB2aWV3UHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lcixcbiAgICAgIGRlcHM6IFtbT3B0aW9uYWwsIE5nRm9ybV1dLFxuICAgICAgdXNlRmFjdG9yeTogKG5nRm9ybTogTmdGb3JtKSA9PiBuZ0Zvcm0sXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNIdG1sRWRpdG9yQ29tcG9uZW50IFxuaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3IsIE9uRGVzdHJveSB7XG5cbiAgQENvbnRlbnRDaGlsZChGc0h0bWxFZGl0b3JDb250YWluZXJEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgcHVibGljIGh0bWxFZGl0b3JDb250YWluZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mb2N1c2VkJykgcHVibGljIGNsYXNzRm9jdXNlZCA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ2VsUmVmJykgcHVibGljIGVsUmVmOiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjb25maWc6IEZzSHRtbEVkaXRvckNvbmZpZyA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKVxuICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmluaXRpYWxpemVkJylcbiAgcHVibGljIGluaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNvbnRhaW5lcklEID0gYGZzLWh0bWwtZWRpdG9yLSR7Z3VpZCgneHh4Jyl9YDtcbiAgcHVibGljIG9uVG91Y2hlZDogKCkgPT4gdm9pZDtcbiAgcHVibGljIG9uQ2hhbmdlOiAoZGF0YTogYW55KSA9PiB2b2lkO1xuXG4gIHByaXZhdGUgX2VkaXRvcjogYW55O1xuICBwcml2YXRlIF9odG1sOiBzdHJpbmc7XG4gIHByaXZhdGUgX2luaXRpYWxpemUkID0gbmV3IFJlcGxheVN1YmplY3QoKTtcbiAgcHJpdmF0ZSBfZnJvYWxhUmVhZHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChGU19IVE1MX0VESVRPUl9DT05GSUcpXG4gICAgcHJpdmF0ZSBfZGVmYXVsdENvbmZpZyxcbiAgICBwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZnI6IEZzRnJvYWxhTG9hZGVyU2VydmljZSxcbiAgKSB7IH1cblxuICBwdWJsaWMgZ2V0IGVsKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaHRtbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9odG1sO1xuICB9XG5cbiAgcHVibGljIGdldCBlZGl0b3IoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yO1xuICB9XG5cbiAgcHVibGljIGdldCBmcm9hbGFMb2FkZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9mci5sb2FkZWQkO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlnID0gdGhpcy5jb25maWcgfHwge307XG4gICAgdGhpcy5jb25maWcuYXV0b2ZvY3VzID0gdGhpcy5jb25maWcuYXV0b2ZvY3VzICYmICghdGhpcy5jb25maWcuZGlzYWJsZWQgfHwgIXRoaXMuZGlzYWJsZWQpO1xuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSAhdGhpcy5jb25maWcuaW5pdE9uQ2xpY2s7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuX2xpc3RlbkxhenlJbml0KCk7XG4gICAgdGhpcy5faW5pdGlhbGl6ZSQubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIGhhc0NvbnRlbnQoKSB7XG4gICAgY29uc3QgZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcblxuICAgIGlmIChlbC5xdWVyeVNlbGVjdG9yKCdpbWcnKSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZWwuaW5uZXJIVE1MID0gdGhpcy5faHRtbDtcblxuICAgIHJldHVybiAhIWVsLmlubmVyVGV4dC5sZW5ndGg7XG4gIH1cblxuICBwdWJsaWMgdW5pbml0aWFsaXplKCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKG9wdGlvbnM6IGFueSA9IHt9KSB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5fY3JlYXRlQ29uZmlnKCk7XG4gICAgdGhpcy5faW5pdFBsdWdpbnMoY29uZmlnKTtcbiAgICB0aGlzLl9pbml0QnV0dG9ucyhjb25maWcpO1xuICAgIHRoaXMuX2VkaXRvciA9IG5ldyB0aGlzLl9mci5Gcm9hbGFFZGl0b3IodGhpcy5lbCwgdGhpcy5fY3JlYXRlT3B0aW9ucygpLCAoKSA9PiB7XG4gICAgICB0aGlzLl9mcm9hbGFSZWFkeSQubmV4dCh7IGNvbmZpZywgb3B0aW9ucyB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVTaXplKCkge1xuICAgIC8vIEhhY2s6IFRvIHRyaWdnZXIgdGhlIHRvb2xiYXIgYnV0dG9uIHNpemUgbW9kZXNcbiAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ3Jlc2l6ZScpKTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgY29uc3QgZXJyOiBhbnkgPSB7fTtcbiAgICBpZiAodGhpcy5jb25maWcubWF4TGVuZ3RoICYmIHRoaXMuX2h0bWwpIHtcbiAgICAgIGNvbnN0IG1heExlbmd0aCA9IHRoaXMuY29uZmlnLm1heExlbmd0aDtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuX2h0bWwubGVuZ3RoO1xuICAgICAgaWYgKGxlbmd0aCA+IG1heExlbmd0aCkge1xuICAgICAgICBlcnIubWF4TGVuZ3RoRXJyb3IgPSBgTXVzdCBiZSAke21heExlbmd0aH0gY2hhcmFjdGVycyBvciBmZXdlci4gWW91IGVudGVyZWQgJHtsZW5ndGh9IGNoYXJhY3RlcnMuYDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZXJyKS5sZW5ndGggPyBlcnIgOiBudWxsO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKG9wdGlvbnM/OiB7IGN1cnNvclBvc2l0aW9uPzogJ3N0YXJ0JyB8ICdlbmQnIH0pIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyA/IG9wdGlvbnMgOiB7fTtcblxuICAgIGlmIChvcHRpb25zLmN1cnNvclBvc2l0aW9uID09PSAnZW5kJykge1xuICAgICAgdGhpcy5lZGl0b3Iuc2VsZWN0aW9uLnNldEF0RW5kKHRoaXMuZWRpdG9yLiRlbC5nZXQoMCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVkaXRvci5zZWxlY3Rpb24uc2V0QXRTdGFydCh0aGlzLmVkaXRvci4kZWwuZ2V0KDApKTtcbiAgICB9XG5cbiAgICB0aGlzLmVkaXRvci5zZWxlY3Rpb24ucmVzdG9yZSgpO1xuXG4gICAgY29uc3QgZWxTZWxlY3Rpb24gPSB0aGlzLmVkaXRvci5zZWxlY3Rpb24uZWxlbWVudCgpO1xuICAgIGlmIChlbFNlbGVjdGlvbikge1xuICAgICAgZWxTZWxlY3Rpb24uc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ2NlbnRlcicgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsZWFyKCkge1xuICAgIHRoaXMud3JpdGVWYWx1ZSgnJyk7XG4gIH1cblxuICBwdWJsaWMgZGlzYWJsZSgpIHtcbiAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRIdG1sKGh0bWwpIHtcbiAgICB0aGlzLndyaXRlVmFsdWUoaHRtbCk7XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZShodG1sOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9odG1sID0gaHRtbCB8fCAnJztcblxuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuX2h0bWwpKSB7XG4gICAgICB0aGlzLl9odG1sID0gdGhpcy5faHRtbC5wb3AoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9odG1sID0gdGhpcy5faHRtbFxuICAgICAgLnJlcGxhY2UoLzwobGkpPlxccz88KGRpdik+L2csICc8bGk+JylcbiAgICAgIC5yZXBsYWNlKC88XFwvKGRpdik+PFxcLyhsaSk+L2csICc8L2xpPicpO1xuXG4gICAgaWYgKHRoaXMuZWRpdG9yICYmIHRoaXMuZWRpdG9yLmh0bWwpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuZWRpdG9yLmh0bWwuc2V0KHRoaXMuX2h0bWwpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAvL1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IChkYXRhOiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2luaXRpYWxpemUkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5kZXN0cm95KCk7XG4gIH1cblxuICBwdWJsaWMgZGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5lZGl0b3IpIHtcbiAgICAgIHRoaXMuZWRpdG9yLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICB0aGlzLmluaXRpYWxpemVkID0gZmFsc2U7XG4gICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIF9wcm9jZXNzSW1hZ2VVcGxvYWQoYmxvYikge1xuICAgIGNvbnN0IHByb2Nlc3NvciA9IG5ldyBGaWxlUHJvY2Vzc29yKCk7XG4gICAgY29uc3QgZmlsZSA9IG5ldyBGc0ZpbGUoYmxvYik7XG5cbiAgICBjb25zdCBjb25maWc6IEZzRmlsZVByb2Nlc3NDb25maWcgPSB7XG4gICAgICBvcmllbnRhdGU6IHRydWUsXG4gICAgICBxdWFsaXR5OiB0aGlzLmNvbmZpZy5pbWFnZS5xdWFsaXR5LFxuICAgICAgZm9ybWF0OiB0aGlzLmNvbmZpZy5pbWFnZS5mb3JtYXQgYXMgYW55LFxuICAgICAgbWF4V2lkdGg6IHRoaXMuY29uZmlnLmltYWdlLndpZHRoLFxuICAgICAgbWF4SGVpZ2h0OiB0aGlzLmNvbmZpZy5pbWFnZS5oZWlnaHQsXG4gICAgICBtaW5XaWR0aDogdGhpcy5jb25maWcuaW1hZ2UubWluV2lkdGgsXG4gICAgICBtaW5IZWlnaHQ6IHRoaXMuY29uZmlnLmltYWdlLm1pbkhlaWdodCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHByb2Nlc3Nvci5wcm9jZXNzRmlsZShmaWxlLCBjb25maWcpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChmc0ZpbGU6IEZzRmlsZSkgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5pbWFnZS51cGxvYWQoZnNGaWxlLmZpbGUpO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVDb25maWcoKTogRnNIdG1sRWRpdG9yQ29uZmlnIHtcbiAgICByZXR1cm4gbWVyZ2UoeyBmcm9hbGFDb25maWc6IHt9IH0sIHRoaXMuX2RlZmF1bHRDb25maWcsIHRoaXMuY29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoYW5nZShodG1sKTogdm9pZCB7XG4gICAgdGhpcy5faHRtbCA9IGh0bWw7XG4gICAgdGhpcy5vbkNoYW5nZShodG1sKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRCdXR0b25zKGNvbmZpZzogRnNIdG1sRWRpdG9yQ29uZmlnKSB7XG4gICAgKGNvbmZpZy5idXR0b25zIHx8IFtdKVxuICAgICAgLmZvckVhY2goKGJ1dHRvbikgPT4ge1xuICAgICAgICAvKlxuICAgICAgICAgIFN2ZyBLZXlzOlxuICAgICAgICAgIFtcImFkZFwiLCBcImFkdmFuY2VkSW1hZ2VFZGl0b3JcIiwgXCJhbGlnbkNlbnRlclwiLCBcImFsaWduSnVzdGlmeVwiLCBcImFsaWduTGVmdFwiLCBcImFsaWduUmlnaHRcIixcbiAgICAgICAgICBcImFuY2hvcnNcIiwgXCJiYWNrXCIsIFwiYmFja2dyb3VuZENvbG9yXCIsIFwiYmxvY2txdW90ZVwiLCBcImJvbGRcIiwgXCJjZWxsQmFja2dyb3VuZFwiLFxuICAgICAgICAgIFwiY2VsbEJvcmRlckNvbG9yXCIsIFwiY2VsbE9wdGlvbnNcIiwgXCJjZWxsU3R5bGVcIiwgXCJjbGVhckZvcm1hdHRpbmdcIiwgXCJjbG9zZVwiLCBcImNvZGVWaWV3XCIsXG4gICAgICAgICAgXCJjb2dzXCIsIFwiY29sdW1uc1wiLCBcImVkaXRMaW5rXCIsIFwiZXhpdEZ1bGxzY3JlZW5cIiwgXCJmb250QXdlc29tZVwiLCBcImZvbnRGYW1pbHlcIixcbiAgICAgICAgICBcImZvbnRTaXplXCIsIFwiZnVsbHNjcmVlblwiLCBcImhlbHBcIiwgXCJob3Jpem9udGFsTGluZVwiLCBcImltYWdlQWx0VGV4dFwiLCBcImltYWdlQ2FwdGlvblwiLFxuICAgICAgICAgIFwiaW1hZ2VDbGFzc1wiLCBcImltYWdlRGlzcGxheVwiLCBcImltYWdlTWFuYWdlclwiLCBcImltYWdlU2l6ZVwiLCBcImluZGVudFwiLCBcImlubGluZUNsYXNzXCIsXG4gICAgICAgICAgXCJpbmxpbmVTdHlsZVwiLCBcImluc2VydEVtYmVkXCIsIFwiaW5zZXJ0RmlsZVwiLCBcImluc2VydEltYWdlXCIsIFwiaW5zZXJ0TGlua1wiLCBcImluc2VydE1vcmVcIixcbiAgICAgICAgICBcImluc2VydFRhYmxlXCIsIFwiaW5zZXJ0VmlkZW9cIiwgXCJ1cGxvYWRcIiwgXCJpdGFsaWNcIiwgXCJzZWFyY2hcIiwgXCJsaW5lSGVpZ2h0XCIsIFwibGlua1N0eWxlc1wiLFxuICAgICAgICAgIFwibWVudGlvblwiLCBcIm1vcmVcIiwgXCJvcGVuTGlua1wiLCBcIm9yZGVyZWRMaXN0XCIsIFwib3V0ZGVudFwiLCBcInBhZ2VCcmVha2VyXCIsXG4gICAgICAgICAgXCJwYXJhZ3JhcGhGb3JtYXRcIiwgXCJwYXJhZ3JhcGhNb3JlXCIsIFwicGFyYWdyYXBoU3R5bGVcIiwgXCJwZGZFeHBvcnRcIiwgXCJwcmludFwiLFxuICAgICAgICAgIFwicmVkb1wiLCBcInJlbW92ZVRhYmxlXCIsIFwicmVtb3ZlXCIsIFwicmVwbGFjZUltYWdlXCIsIFwicm93XCIsIFwic2VsZWN0QWxsXCIsIFwic21pbGVcIixcbiAgICAgICAgICBcInNwZWxsY2hlY2tcIiwgXCJzdGFyXCIsIFwic3RyaWtlVGhyb3VnaFwiLCBcInN1YnNjcmlwdFwiLCBcInN1cGVyc2NyaXB0XCIsIFwic3ltYm9sc1wiLCBcInRhZ3NcIixcbiAgICAgICAgICBcInRhYmxlSGVhZGVyXCIsIFwidGFibGVTdHlsZVwiLCBcInRleHRDb2xvclwiLCBcInRleHRNb3JlXCIsIFwidW5kZXJsaW5lXCIsIFwidW5kb1wiLCBcInVubGlua1wiLFxuICAgICAgICAgIFwidW5vcmRlcmVkTGlzdFwiLCBcInZlcnRpY2FsQWxpZ25Cb3R0b21cIiwgXCJ2ZXJ0aWNhbEFsaWduTWlkZGxlXCIsIFwidmVydGljYWxBbGlnblRvcFwiXVxuICAgICAgICAqL1xuXG4gICAgICAgIGlmIChidXR0b24uc3ZnS2V5KSB7XG4gICAgICAgICAgdGhpcy5fZnIuRnJvYWxhRWRpdG9yLkRlZmluZUljb24oYnV0dG9uLm5hbWUsIHsgU1ZHX0tFWTogYnV0dG9uLnN2Z0tleSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2ZyLkZyb2FsYUVkaXRvci5SZWdpc3RlckNvbW1hbmQoYnV0dG9uLm5hbWUsIHtcbiAgICAgICAgICB0aXRsZTogYnV0dG9uLnRpdGxlLFxuICAgICAgICAgIGZvY3VzOiBidXR0b24uZm9jdXMgPz8gdHJ1ZSxcbiAgICAgICAgICB1bmRvOiBidXR0b24udW5kbyA/PyB0cnVlLFxuICAgICAgICAgIHJlZnJlc2hBZnRlckNhbGxiYWNrOiBidXR0b24ucmVmcmVzaEFmdGVyQ2FsbGJhY2sgPz8gdHJ1ZSxcbiAgICAgICAgICBjYWxsYmFjaygpIHtcbiAgICAgICAgICAgIGJ1dHRvbi5jbGljayh0aGlzKTtcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdFBsdWdpbnMoY29uZmlnOiBGc0h0bWxFZGl0b3JDb25maWcpIHtcbiAgICAoY29uZmlnLnByZXBlbmRUb29sYmFyVGV4dEJ1dHRvbnMgfHwgW10pXG4gICAgICAuZm9yRWFjaCgoYnV0dG9uOiBUb29sYmFyQnV0dG9uKSA9PiB7XG4gICAgICAgIHRoaXMuX2RlZmluZUJ1dHRvbihidXR0b24pO1xuICAgICAgfSk7XG5cbiAgICAoY29uZmlnLnBsdWdpbnMgfHwgW10pLmZvckVhY2goKHBsdWdpbjogUGx1Z2luKSA9PiB7XG4gICAgICB0aGlzLl9mci5Gcm9hbGFFZGl0b3IuUExVR0lOU1twbHVnaW4uY29uZmlnLm5hbWVdID0gZnVuY3Rpb24gKGVkaXRvcikge1xuICAgICAgICBwbHVnaW4uZWRpdG9yID0gZWRpdG9yO1xuICAgICAgICBwbHVnaW4uaW5pdGlhbGl6ZSgpO1xuXG4gICAgICAgIHJldHVybiBwbHVnaW47XG4gICAgICB9O1xuXG4gICAgICAocGx1Z2luLmNvbmZpZy5idXR0b25zIHx8IFtdKVxuICAgICAgICAuZm9yRWFjaCgoYnV0dG9uOiBUb29sYmFyQnV0dG9uKSA9PiB7XG4gICAgICAgICAgdGhpcy5fZGVmaW5lQnV0dG9uKGJ1dHRvbik7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGVmaW5lQnV0dG9uKGJ1dHRvbjogVG9vbGJhckJ1dHRvbikge1xuICAgIGlmKGJ1dHRvbi5odG1sKSB7XG4gICAgICB0aGlzLl9mci5Gcm9hbGFFZGl0b3JcbiAgICAgICAgLkRlZmluZUljb25UZW1wbGF0ZShgJHtidXR0b24ubmFtZX0tdGVtcGxhdGVgLCBidXR0b24uaHRtbCk7XG4gICAgICB0aGlzLl9mci5Gcm9hbGFFZGl0b3JcbiAgICAgICAgLkRlZmluZUljb24oYnV0dG9uLm5hbWUsIHsgXG4gICAgICAgICAgTkFNRTogYCR7YnV0dG9uLm5hbWV9LWljb25gLFxuICAgICAgICAgIHRlbXBsYXRlOiBgJHtidXR0b24ubmFtZX0tdGVtcGxhdGVgLCBcbiAgICAgICAgfSk7XG4gIFxuICAgIH0gZWxzZSB7IFxuICAgICAgdGhpcy5fZnIuRnJvYWxhRWRpdG9yLkRlZmluZUljb24oYnV0dG9uLm5hbWUsIHtcbiAgICAgICAgTkFNRTogYnV0dG9uLm5hbWUsXG4gICAgICAgIFBBVEg6IGJ1dHRvbi5zdmdQYXRoLFxuICAgICAgfSk7XG4gICAgfSBcblxuICAgIHRoaXMuX2ZyLkZyb2FsYUVkaXRvci5SZWdpc3RlckNvbW1hbmQoYnV0dG9uLm5hbWUsIHtcbiAgICAgIGljb246IGJ1dHRvbi5uYW1lLFxuICAgICAgdGl0bGU6IGJ1dHRvbi50b29sdGlwLFxuICAgICAgdW5kbzogYnV0dG9uLnVuZG8sXG4gICAgICBmb2N1czogYnV0dG9uLmZvY3VzLFxuICAgICAgc2hvd09uTW9iaWxlOiBidXR0b24uc2hvd09uTW9iaWxlLFxuICAgICAgcmVmcmVzaEFmdGVyQ2FsbGJhY2s6IGJ1dHRvbi5yZWZyZXNoQWZ0ZXJDYWxsYmFjayxcbiAgICAgIGNhbGxiYWNrKCkge1xuICAgICAgICBpZiAoYnV0dG9uLmNsaWNrKSB7XG4gICAgICAgICAgYnV0dG9uLmNsaWNrKHRoaXMpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcmVmcmVzaChldmVudCkge1xuICAgICAgICBpZiAoZXZlbnQucmVmcmVzaCkge1xuICAgICAgICAgIGV2ZW50LnJlZnJlc2godGhpcywgZXZlbnQpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pO1xuXG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVPcHRpb25zKCkge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuX2NyZWF0ZUNvbmZpZygpO1xuXG4gICAgY29uc3QgdGV4dEJ1dHRvbnMgPSBbXG4gICAgICAuLi4oY29uZmlnLnByZXBlbmRUb29sYmFyVGV4dEJ1dHRvbnMgfHwgW10pXG4gICAgICAgIC5tYXAoKGl0ZW0pID0+IGl0ZW0ubmFtZSksXG4gICAgICAuLi5UZXh0QnV0dG9ucyxcbiAgICBdO1xuXG4gICAgcmV0dXJuIG1lcmdlKFxuICAgICAgLy8gRm9yIHNvbWUgcmVhc29uIGVkaXRvciBzdG9yZSBzb21ld2hlcmUgcG9pbnRlciBvbiBkZWZhdWx0IGNvbmZpZyBvYmplY3QgYW5kIGR1YmxpY2F0ZSBvcHRpb25zIGVhY2ggdGltZSBvbiBpbml0XG4gICAgICAvLyBFeHRyYSBtZXJnZSBsZXZlbCBmaXhlZCB0aGlzIHByb2JsZW0gYW5kIGFsbG93IHRvIGluaXQgY29uZmlnIHByb3Blcmx5IHdpdGhvdXQgbGVnYWN5IGRhdGFcbiAgICAgIHt9LFxuICAgICAge1xuICAgICAgICBzaG9ydGN1dHNFbmFibGVkOiBbJ3Nob3cnLCAnYm9sZCcsICdpdGFsaWMnLCAndW5kZXJsaW5lJywgJ2luZGVudCcsICdvdXRkZW50JywgJ3VuZG8nLCAncmVkbycsICdpbnNlcnRJbWFnZScsICdjcmVhdGVMaW5rJ10sXG4gICAgICAgIGtleTogY29uZmlnLmFjdGl2YXRpb25LZXksXG4gICAgICAgIHBsYWNlaG9sZGVyVGV4dDogY29uZmlnLnBsYWNlaG9sZGVyLFxuICAgICAgICBsaW5rQWx3YXlzQmxhbms6IHRydWUsXG4gICAgICAgIHRhYlNwYWNlczogMixcbiAgICAgICAgdHlwaW5nVGltZXI6IDI1MCxcbiAgICAgICAgdG9vbHRpcHM6IGZhbHNlLFxuICAgICAgICB3b3JkUGFzdGVNb2RhbDogZmFsc2UsXG4gICAgICAgIGltYWdlRGVmYXVsdFdpZHRoOiAwLFxuICAgICAgICBwYXJhZ3JhcGhTdHlsZXM6IHtcbiAgICAgICAgICBjbGFzczE6ICdDbGFzcyAxJyxcbiAgICAgICAgICBjbGFzczI6ICdDbGFzcyAyJyxcbiAgICAgICAgfSxcbiAgICAgICAgaW1hZ2VEZWZhdWx0QWxpZ246ICdsZWZ0JyxcbiAgICAgICAgZm9udEZhbWlseURlZmF1bHRTZWxlY3Rpb246ICdGb250IEZhbWlseScsXG4gICAgICAgIHF1aWNrSW5zZXJ0RW5hYmxlZDogZmFsc2UsXG4gICAgICAgIHNjcm9sbGFibGVDb250YWluZXI6IGAjJHt0aGlzLmNvbnRhaW5lcklEfWAsXG4gICAgICAgIHBhcmFncmFwaERlZmF1bHRTZWxlY3Rpb246ICdGb3JtYXQnLFxuICAgICAgICB2aWRlb1VwbG9hZDogZmFsc2UsXG4gICAgICAgIGltYWdlUGFzdGU6ICEhY29uZmlnLmltYWdlPy51cGxvYWQsXG4gICAgICAgIGltYWdlVXBsb2FkOiAhIWNvbmZpZy5pbWFnZT8udXBsb2FkLFxuICAgICAgICBwYXJhZ3JhcGhGb3JtYXQ6IHtcbiAgICAgICAgICBOOiAnTm9ybWFsJyxcbiAgICAgICAgICBIMTogJ0hlYWRpbmcgMScsXG4gICAgICAgICAgSDI6ICdIZWFkaW5nIDInLFxuICAgICAgICAgIEgzOiAnSGVhZGluZyAzJyxcbiAgICAgICAgICBINDogJ0hlYWRpbmcgNCcsXG4gICAgICAgICAgQkxPQ0tRVU9URTogJ1F1b3RlJyxcbiAgICAgICAgfSxcbiAgICAgICAgbGluZUhlaWdodHM6IHtcbiAgICAgICAgICBEZWZhdWx0OiAnJyxcbiAgICAgICAgICAwLjU6ICcwLjUnLFxuICAgICAgICAgIFNpbmdsZTogJzEnLFxuICAgICAgICAgIDEuMTU6ICcxLjE1JyxcbiAgICAgICAgICAxLjU6ICcxLjUnLFxuICAgICAgICAgIERvdWJsZTogJzInLFxuICAgICAgICB9LFxuICAgICAgICBwYXJhZ3JhcGhGb3JtYXRTZWxlY3Rpb246IHRydWUsXG4gICAgICAgIHRvb2xiYXJCdXR0b25zWFM6IHtcbiAgICAgICAgICBtb3JlVGV4dDoge1xuICAgICAgICAgICAgYnV0dG9uczogdGV4dEJ1dHRvbnMsXG4gICAgICAgICAgICBidXR0b25zVmlzaWJsZTogMSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIG1vcmVQYXJhZ3JhcGg6IHtcbiAgICAgICAgICAgIGJ1dHRvbnM6IFBhcmFncmFwaEJ1dHRvbnMsXG4gICAgICAgICAgICBidXR0b25zVmlzaWJsZTogMixcbiAgICAgICAgICB9LFxuICAgICAgICAgIG1vcmVSaWNoOiB7XG4gICAgICAgICAgICBidXR0b25zOiBSaWNoQnV0dG9ucyxcbiAgICAgICAgICAgIGJ1dHRvbnNWaXNpYmxlOiAwLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHRvb2xiYXJCdXR0b25zOiB7XG4gICAgICAgICAgbW9yZVRleHQ6IHtcbiAgICAgICAgICAgIGJ1dHRvbnM6IHRleHRCdXR0b25zLFxuICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDMsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtb3JlUGFyYWdyYXBoOiB7XG4gICAgICAgICAgICBidXR0b25zOiBQYXJhZ3JhcGhCdXR0b25zLFxuICAgICAgICAgICAgYnV0dG9uc1Zpc2libGU6IDUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtb3JlUmljaDoge1xuICAgICAgICAgICAgYnV0dG9uczogUmljaEJ1dHRvbnMsXG4gICAgICAgICAgICBidXR0b25zVmlzaWJsZTogMyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSBhcyBQYXJ0aWFsPEZyb2FsYUVkaXRvci5Gcm9hbGFPcHRpb25zPixcbiAgICAgIGNvbmZpZy5mcm9hbGFDb25maWcsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlbkxhenlJbml0KCkge1xuICAgIHRoaXMuZnJvYWxhTG9hZGVkJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigocmVhZHkpID0+IHJlYWR5KSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuX2luaXRpYWxpemUkKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICBjb25zdCBzZWxlY3Rpb246IGFueSA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICAgICAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7fTtcbiAgICAgICAgICBpZiAoc2VsZWN0aW9uLmJhc2VOb2RlKSB7XG4gICAgICAgICAgICBvcHRpb25zLnNlbGVjdGlvbiA9IHtcbiAgICAgICAgICAgICAgbm9kZTogc2VsZWN0aW9uLmJhc2VOb2RlLm5vZGVWYWx1ZSxcbiAgICAgICAgICAgICAgb2Zmc2V0OiBzZWxlY3Rpb24uYmFzZU9mZnNldCxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZShvcHRpb25zKTtcbiAgICAgICAgfSksXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLl9mcm9hbGFSZWFkeSQpLFxuICAgICAgICBmaWx0ZXIoKGRhdGEpID0+ICEhZGF0YSksXG4gICAgICAgIHRhcCgoeyBjb25maWcsIG9wdGlvbnMgfSkgPT4ge1xuICAgICAgICAgIHRoaXMuX3NldHVwRnJvYWxhKGNvbmZpZywgb3B0aW9ucyk7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29udGVudENoYW5nZWQoKTogdm9pZCB7XG4gICAgY29uc3QgZWRpdG9ySFRNTCA9IHRoaXMuX2VkaXRvci5odG1sLmdldCgpO1xuXG4gICAgaWYgKHRoaXMuaHRtbCAhPT0gZWRpdG9ySFRNTCkge1xuICAgICAgdGhpcy5fY2hhbmdlKGVkaXRvckhUTUwpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwRnJvYWxhKGNvbmZpZzogRnNIdG1sRWRpdG9yQ29uZmlnLCBvcHRpb25zOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcblxuICAgIHRoaXMuc2V0SHRtbCh0aGlzLl9odG1sKTtcblxuICAgIGlmIChjb25maWcuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuZGlzYWJsZSgpO1xuICAgIH1cblxuICAgIGlmIChjb25maWcuZnJvYWxhQ29uZmlnLmV2ZW50cykge1xuICAgICAgaWYgKGNvbmZpZy5mcm9hbGFDb25maWcuZXZlbnRzLmluaXRpYWxpemVkKSB7XG4gICAgICAgIGNvbmZpZy5mcm9hbGFDb25maWcuZXZlbnRzLmluaXRpYWxpemVkKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fZWRpdG9yLmV2ZW50cy5vbignZm9jdXMnLCAoKSA9PiB7XG4gICAgICB0aGlzLmNsYXNzRm9jdXNlZCA9IHRydWU7XG4gICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2VkaXRvci5ldmVudHMub24oJ2JsdXInLCAoKSA9PiB7XG4gICAgICB0aGlzLmNsYXNzRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdjbGljaycsICgpID0+IHtcbiAgICAgIGlmICh0aGlzLmNvbmZpZy5pbml0T25DbGljayAmJiAhdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBmcm9tRXZlbnRQYXR0ZXJuKFxuICAgICAgKGhhbmRsZXIpID0+IHtcbiAgICAgICAgdGhpcy5fZWRpdG9yLmV2ZW50cy5vbignY29udGVudENoYW5nZWQnLCBoYW5kbGVyKTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIC8vXG4gICAgICB9LFxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICBzdGFydFdpdGgodGhpcy5faHRtbCksXG4gICAgICAgIG1hcCgoKSA9PiB0aGlzLmVkaXRvci5odG1sLmdldCgpKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgc2tpcCgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9jb250ZW50Q2hhbmdlZCgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdwYXN0ZS5hZnRlckNsZWFudXAnLCAoaHRtbCkgPT4ge1xuICAgICAgY29uc3QgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICBkaXYuaW5uZXJIVE1MID0gaHRtbDtcbiAgICAgIGRpdi5xdWVyeVNlbGVjdG9yQWxsKCcqJylcbiAgICAgICAgLmZvckVhY2goKGVsKSA9PiB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbC5hdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBuYW1lID0gZWwuYXR0cmlidXRlc1swXS5uYW1lO1xuICAgICAgICAgICAgaWYgKG5hbWUgIT09ICdocmVmJykge1xuICAgICAgICAgICAgICBlbC5yZW1vdmVBdHRyaWJ1dGUobmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgcmV0dXJuIGRpdi5pbm5lckhUTUw7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdrZXlkb3duJywgKCkgPT4ge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmNvbmZpZy5pbWFnZSAmJiB0aGlzLmNvbmZpZy5pbWFnZS51cGxvYWQpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5ldmVudHMub24oJ2ltYWdlLmJlZm9yZVBhc3RlVXBsb2FkJywgKGltYWdlKSA9PiB7XG5cbiAgICAgICAgZmV0Y2goaW1hZ2UuZ2V0QXR0cmlidXRlKCdzcmMnKSlcbiAgICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICByZXMuYmxvYigpXG4gICAgICAgICAgICAgIC50aGVuKChibG9iKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcHJvY2Vzc0ltYWdlVXBsb2FkKGJsb2IpXG4gICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHVybCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpbWFnZS5zZXRBdHRyaWJ1dGUoJ3NyYycsIHVybCk7XG4gICAgICAgICAgICAgICAgICAgIGltYWdlLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1mci1pbWFnZS1wYXN0ZWQnKTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb250ZW50Q2hhbmdlZCgpO1xuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLl9lZGl0b3IuZXZlbnRzLm9uKCdpbWFnZS5iZWZvcmVVcGxvYWQnLCAoYmxvYnMpID0+IHtcbiAgICAgICAgdGhpcy5fcHJvY2Vzc0ltYWdlVXBsb2FkKGJsb2JzWzBdKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZSgodXJsKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmVkaXRvci5pbWFnZS5pbnNlcnQodXJsLCBudWxsLCBudWxsLCB0aGlzLmVkaXRvci5pbWFnZS5nZXQoKSk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZWwucXVlcnlTZWxlY3RvcignLmZyLXNlY29uZC10b29sYmFyJykpIHtcbiAgICAgIHRoaXMuZWwucXVlcnlTZWxlY3RvcignLmZyLXNlY29uZC10b29sYmFyJykucmVtb3ZlKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLmF1dG9mb2N1cyAmJiAhdGhpcy5jb25maWcuaW5pdE9uQ2xpY2spIHtcbiAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxmcy1sYWJlbC1maWVsZD5cbiAgPGRpdiBjbGFzcz1cIm91dGxpbmVcIj5cbiAgICA8ZGl2IGNsYXNzPVwib3V0bGluZS1vdmVybGF5XCI+PC9kaXY+XG4gICAgPGZzLWxhYmVsICpuZ0lmPVwiY29uZmlnLmxhYmVsXCI+e3tjb25maWcubGFiZWx9fTwvZnMtbGFiZWw+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImh0bWxFZGl0b3JDb250YWluZXI7IGVsc2UgaHRtbEVkaXRvckNvbnRhaW5lclRtcGxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImh0bWxFZGl0b3JDb250YWluZXJcIiBcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgdGVtcGxhdGU6IGh0bWxFZGl0b3JDb250YWluZXJUbXBsIH1cIj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjaHRtbEVkaXRvckNvbnRhaW5lclRtcGw+XG4gICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJodG1sLWVkaXRvci1jb250YWluZXIgZnMtaHRtbC1lZGl0b3ItZGVmYXVsdFwiXG4gICAgICAgICAgW2lkXT1cImNvbnRhaW5lcklEXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnaW5pdC1vbi1jbGljayc6IGNvbmZpZy5pbml0T25DbGlja1xuICAgICAgICAgIH1cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZnNTa2VsZXRvbj1cIihmcm9hbGFMb2FkZWQkIHwgYXN5bmMpICE9PSBmYWxzZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2ICNlbFJlZj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuXG4gIDxmcy1sYWJlbC1tZXNzYWdlPlxuICAgIDxkaXYgY2xhc3M9XCJmcy1mb3JtLW1lc3NhZ2VcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmcy1mb3JtLWhpbnRcIj57e2NvbmZpZy5oaW50fX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9mcy1sYWJlbC1tZXNzYWdlPlxuPC9mcy1sYWJlbC1maWVsZD5cbiJdfQ==
@@ -5,9 +5,9 @@ export class FsHtmlEditorContainerDirective {
5
5
  return true;
6
6
  }
7
7
  }
8
- FsHtmlEditorContainerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
9
- FsHtmlEditorContainerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.4.0", type: FsHtmlEditorContainerDirective, selector: "[fsHtmlEditorContainer]", ngImport: i0 });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorContainerDirective, decorators: [{
8
+ FsHtmlEditorContainerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
9
+ FsHtmlEditorContainerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: FsHtmlEditorContainerDirective, selector: "[fsHtmlEditorContainer]", ngImport: i0 });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorContainerDirective, decorators: [{
11
11
  type: Directive,
12
12
  args: [{ selector: '[fsHtmlEditorContainer]' }]
13
13
  }] });
@@ -22,20 +22,18 @@ export class FsHtmlEditorModule {
22
22
  };
23
23
  }
24
24
  }
25
- FsHtmlEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
26
- FsHtmlEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorModule, declarations: [FsHtmlEditorComponent,
25
+ FsHtmlEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
26
+ FsHtmlEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorModule, declarations: [FsHtmlEditorComponent,
27
27
  FsHtmlEditorContainerDirective], imports: [CommonModule,
28
28
  FsSkeletonModule,
29
29
  FsLabelModule,
30
30
  FsHtmlRendererModule], exports: [FsHtmlEditorComponent,
31
31
  FsHtmlEditorContainerDirective] });
32
- FsHtmlEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorModule, imports: [[
33
- CommonModule,
34
- FsSkeletonModule,
35
- FsLabelModule,
36
- FsHtmlRendererModule,
37
- ]] });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlEditorModule, decorators: [{
32
+ FsHtmlEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorModule, imports: [CommonModule,
33
+ FsSkeletonModule,
34
+ FsLabelModule,
35
+ FsHtmlRendererModule] });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlEditorModule, decorators: [{
39
37
  type: NgModule,
40
38
  args: [{
41
39
  imports: [
@@ -74,4 +72,4 @@ export function FsHtmlEditorConfigFactory(config) {
74
72
  ...config,
75
73
  };
76
74
  }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtaHRtbC1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL2ZzLWh0bWwtZWRpdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRWhGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFxQi9GLE1BQU0sT0FBTyxrQkFBa0I7SUFDdEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUE2QixFQUFFO1FBQ25ELE9BQU87WUFDTCxRQUFRLEVBQUUsa0JBQWtCO1lBQzVCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2dCQUM1RDtvQkFDRSxPQUFPLEVBQUUscUJBQXFCO29CQUM5QixVQUFVLEVBQUUseUJBQXlCO29CQUNyQyxJQUFJLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDdEM7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOzsrR0FiVSxrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFKM0IscUJBQXFCO1FBQ3JCLDhCQUE4QixhQVo5QixZQUFZO1FBRVosZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixvQkFBb0IsYUFHcEIscUJBQXFCO1FBQ3JCLDhCQUE4QjtnSEFPckIsa0JBQWtCLFlBaEJwQjtZQUNQLFlBQVk7WUFFWixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLG9CQUFvQjtTQUNyQjsyRkFVVSxrQkFBa0I7a0JBakI5QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUVaLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxxQkFBcUI7d0JBQ3JCLDhCQUE4QjtxQkFDL0I7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsOEJBQThCO3FCQUMvQjtpQkFDRjs7QUFpQkQsTUFBTSxVQUFVLHlCQUF5QixDQUFDLE1BQTBCO0lBQ2xFLE9BQU87UUFDTCxhQUFhLEVBQUU7Ozs7Ozs7Ozs7Ozs7O1NBY2Q7UUFDRCxHQUFHLE1BQU07S0FDVixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGc0xhYmVsTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvbGFiZWwnO1xuaW1wb3J0IHsgRnNTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL3NrZWxldG9uJztcblxuaW1wb3J0IHsgRnNIdG1sUmVuZGVyZXJNb2R1bGUgfSBmcm9tICcuLi9odG1sLXJlbmRlcmVyL2ZzLWh0bWwtcmVuZGVyZXIubW9kdWxlJztcblxuaW1wb3J0IHsgRnNIdG1sRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2h0bWwtZWRpdG9yL2h0bWwtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0h0bWxFZGl0b3JDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgRnJvYWxhUGx1Z2luIH0gZnJvbSAnLi9lbnVtcy9kZWZhdWx0LXBsdWdpbi5lbnVtJztcbmltcG9ydCB7IEZTX0hUTUxfRURJVE9SX0NPTkZJRywgRlNfSFRNTF9FRElUT1JfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL2luamVjdHMvY29uZmlnLmluamVjdCc7XG5pbXBvcnQgeyBGc0h0bWxFZGl0b3JDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvaHRtbC1lZGl0b3ItY29uZmlnJztcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuXG4gICAgRnNTa2VsZXRvbk1vZHVsZSxcbiAgICBGc0xhYmVsTW9kdWxlLFxuICAgIEZzSHRtbFJlbmRlcmVyTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRnNIdG1sRWRpdG9yQ29tcG9uZW50LFxuICAgIEZzSHRtbEVkaXRvckNvbnRhaW5lckRpcmVjdGl2ZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRnNIdG1sRWRpdG9yQ29tcG9uZW50LFxuICAgIEZzSHRtbEVkaXRvckNvbnRhaW5lckRpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNIdG1sRWRpdG9yTW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGNvbmZpZzogRnNIdG1sRWRpdG9yQ29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEZzSHRtbEVkaXRvck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRnNIdG1sRWRpdG9yTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogRlNfSFRNTF9FRElUT1JfREVGQVVMVF9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEZTX0hUTUxfRURJVE9SX0NPTkZJRyxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBGc0h0bWxFZGl0b3JDb25maWdGYWN0b3J5LFxuICAgICAgICAgIGRlcHM6IFtGU19IVE1MX0VESVRPUl9ERUZBVUxUX0NPTkZJR10sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEZzSHRtbEVkaXRvckNvbmZpZ0ZhY3RvcnkoY29uZmlnOiBGc0h0bWxFZGl0b3JDb25maWcpIHtcbiAgcmV0dXJuIHtcbiAgICBmcm9hbGFQbHVnaW5zOiBbXG4gICAgICBGcm9hbGFQbHVnaW4uQWxpZ24sXG4gICAgICBGcm9hbGFQbHVnaW4uQ29sb3JzLFxuICAgICAgRnJvYWxhUGx1Z2luLkltYWdlLFxuICAgICAgRnJvYWxhUGx1Z2luLkxpbmssXG4gICAgICBGcm9hbGFQbHVnaW4uTGlzdHMsXG4gICAgICBGcm9hbGFQbHVnaW4uUGFyYWdyYXBoRm9ybWF0LFxuICAgICAgRnJvYWxhUGx1Z2luLlF1b3RlLFxuICAgICAgRnJvYWxhUGx1Z2luLlRhYmxlLFxuICAgICAgRnJvYWxhUGx1Z2luLlVybCxcbiAgICAgIEZyb2FsYVBsdWdpbi5WaWRlbyxcbiAgICAgIEZyb2FsYVBsdWdpbi5EcmFnZ2FibGUsXG4gICAgICBGcm9hbGFQbHVnaW4uRm9udFNpemUsXG4gICAgICBGcm9hbGFQbHVnaW4uTGluZUhlaWdodCxcbiAgICBdLFxuICAgIC4uLmNvbmZpZyxcbiAgfTtcbn1cbiJdfQ==
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtaHRtbC1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL2ZzLWh0bWwtZWRpdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRWhGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFxQi9GLE1BQU0sT0FBTyxrQkFBa0I7SUFDdEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUE2QixFQUFFO1FBQ25ELE9BQU87WUFDTCxRQUFRLEVBQUUsa0JBQWtCO1lBQzVCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2dCQUM1RDtvQkFDRSxPQUFPLEVBQUUscUJBQXFCO29CQUM5QixVQUFVLEVBQUUseUJBQXlCO29CQUNyQyxJQUFJLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDdEM7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOzsrR0FiVSxrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFKM0IscUJBQXFCO1FBQ3JCLDhCQUE4QixhQVo5QixZQUFZO1FBRVosZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixvQkFBb0IsYUFHcEIscUJBQXFCO1FBQ3JCLDhCQUE4QjtnSEFPckIsa0JBQWtCLFlBZjNCLFlBQVk7UUFFWixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLG9CQUFvQjsyRkFXWCxrQkFBa0I7a0JBakI5QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUVaLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxxQkFBcUI7d0JBQ3JCLDhCQUE4QjtxQkFDL0I7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsOEJBQThCO3FCQUMvQjtpQkFDRjs7QUFpQkQsTUFBTSxVQUFVLHlCQUF5QixDQUFDLE1BQTBCO0lBQ2xFLE9BQU87UUFDTCxhQUFhLEVBQUU7Ozs7Ozs7Ozs7Ozs7O1NBY2Q7UUFDRCxHQUFHLE1BQU07S0FDVixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGc0xhYmVsTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvbGFiZWwnO1xuaW1wb3J0IHsgRnNTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL3NrZWxldG9uJztcblxuaW1wb3J0IHsgRnNIdG1sUmVuZGVyZXJNb2R1bGUgfSBmcm9tICcuLi9odG1sLXJlbmRlcmVyL2ZzLWh0bWwtcmVuZGVyZXIubW9kdWxlJztcblxuaW1wb3J0IHsgRnNIdG1sRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2h0bWwtZWRpdG9yL2h0bWwtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0h0bWxFZGl0b3JDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgRnJvYWxhUGx1Z2luIH0gZnJvbSAnLi9lbnVtcy9kZWZhdWx0LXBsdWdpbi5lbnVtJztcbmltcG9ydCB7IEZTX0hUTUxfRURJVE9SX0NPTkZJRywgRlNfSFRNTF9FRElUT1JfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL2luamVjdHMvY29uZmlnLmluamVjdCc7XG5pbXBvcnQgeyBGc0h0bWxFZGl0b3JDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvaHRtbC1lZGl0b3ItY29uZmlnJztcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuXG4gICAgRnNTa2VsZXRvbk1vZHVsZSxcbiAgICBGc0xhYmVsTW9kdWxlLFxuICAgIEZzSHRtbFJlbmRlcmVyTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRnNIdG1sRWRpdG9yQ29tcG9uZW50LFxuICAgIEZzSHRtbEVkaXRvckNvbnRhaW5lckRpcmVjdGl2ZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRnNIdG1sRWRpdG9yQ29tcG9uZW50LFxuICAgIEZzSHRtbEVkaXRvckNvbnRhaW5lckRpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNIdG1sRWRpdG9yTW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGNvbmZpZzogRnNIdG1sRWRpdG9yQ29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEZzSHRtbEVkaXRvck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRnNIdG1sRWRpdG9yTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogRlNfSFRNTF9FRElUT1JfREVGQVVMVF9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEZTX0hUTUxfRURJVE9SX0NPTkZJRyxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBGc0h0bWxFZGl0b3JDb25maWdGYWN0b3J5LFxuICAgICAgICAgIGRlcHM6IFtGU19IVE1MX0VESVRPUl9ERUZBVUxUX0NPTkZJR10sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEZzSHRtbEVkaXRvckNvbmZpZ0ZhY3RvcnkoY29uZmlnOiBGc0h0bWxFZGl0b3JDb25maWcpIHtcbiAgcmV0dXJuIHtcbiAgICBmcm9hbGFQbHVnaW5zOiBbXG4gICAgICBGcm9hbGFQbHVnaW4uQWxpZ24sXG4gICAgICBGcm9hbGFQbHVnaW4uQ29sb3JzLFxuICAgICAgRnJvYWxhUGx1Z2luLkltYWdlLFxuICAgICAgRnJvYWxhUGx1Z2luLkxpbmssXG4gICAgICBGcm9hbGFQbHVnaW4uTGlzdHMsXG4gICAgICBGcm9hbGFQbHVnaW4uUGFyYWdyYXBoRm9ybWF0LFxuICAgICAgRnJvYWxhUGx1Z2luLlF1b3RlLFxuICAgICAgRnJvYWxhUGx1Z2luLlRhYmxlLFxuICAgICAgRnJvYWxhUGx1Z2luLlVybCxcbiAgICAgIEZyb2FsYVBsdWdpbi5WaWRlbyxcbiAgICAgIEZyb2FsYVBsdWdpbi5EcmFnZ2FibGUsXG4gICAgICBGcm9hbGFQbHVnaW4uRm9udFNpemUsXG4gICAgICBGcm9hbGFQbHVnaW4uTGluZUhlaWdodCxcbiAgICBdLFxuICAgIC4uLmNvbmZpZyxcbiAgfTtcbn1cbiJdfQ==
@@ -71,9 +71,9 @@ export class FsFroalaLoaderService {
71
71
  this._froalaPluginsLoaded.next(true);
72
72
  }
73
73
  }
74
- FsFroalaLoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFroalaLoaderService, deps: [{ token: FS_HTML_EDITOR_CONFIG, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
75
- FsFroalaLoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFroalaLoaderService, providedIn: 'root' });
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFroalaLoaderService, decorators: [{
74
+ FsFroalaLoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsFroalaLoaderService, deps: [{ token: FS_HTML_EDITOR_CONFIG, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
75
+ FsFroalaLoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsFroalaLoaderService, providedIn: 'root' });
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsFroalaLoaderService, decorators: [{
77
77
  type: Injectable,
78
78
  args: [{
79
79
  providedIn: 'root',
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
87
87
  type: Inject,
88
88
  args: [DOCUMENT]
89
89
  }] }]; } });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvYWxhLWxvYWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL3NlcnZpY2VzL2Zyb2FsYS1sb2FkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyxxQkFBcUI7SUFnQmhDLFlBR1UsY0FBa0MsRUFFbEMsU0FBbUI7UUFGbkIsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBRWxDLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFqQnJCLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEQsa0JBQWEsR0FBRyxjQUFjLENBQUM7UUFFL0IsYUFBUSxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7YUFDOUUsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7WUFDakMsT0FBTyxXQUFXLElBQUksV0FBVyxDQUFD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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgZnNTb3VyY2VMb2FkZXIgfSBmcm9tICdAZmlyZXN0aXRjaC9jb21tb24nO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNvbmNhdE1hcCwgbWFwLCBzaGFyZVJlcGxheSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBGU19IVE1MX0VESVRPUl9DT05GSUcgfSBmcm9tICcuLi9pbmplY3RzL2NvbmZpZy5pbmplY3QnO1xuaW1wb3J0IHsgRnNIdG1sRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9odG1sLWVkaXRvci1jb25maWcnO1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBGc0Zyb2FsYUxvYWRlclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgX2Zyb2FsYUVkaXRvcjogYW55O1xuXG4gIHByaXZhdGUgX2Zyb2FsYUxvYWRlZCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICBwcml2YXRlIF9mcm9hbGFQbHVnaW5zTG9hZGVkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIHByaXZhdGUgX3NvdXJjZUxvYWRlciA9IGZzU291cmNlTG9hZGVyO1xuXG4gIHByaXZhdGUgX2xvYWRlZCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLl9mcm9hbGFMb2FkZWQsIHRoaXMuX2Zyb2FsYVBsdWdpbnNMb2FkZWRdKVxuICAgIC5waXBlKFxuICAgICAgbWFwKChbRnJvYWxhUmVhZHksIHBsdWdpbnNSZWFkXSkgPT4ge1xuICAgICAgICByZXR1cm4gcGx1Z2luc1JlYWQgJiYgRnJvYWxhUmVhZHk7XG4gICAgICB9KSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpLFxuICAgICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KEZTX0hUTUxfRURJVE9SX0NPTkZJRylcbiAgICBwcml2YXRlIF9kZWZhdWx0Q29uZmlnOiBGc0h0bWxFZGl0b3JDb25maWcsXG4gICAgQEluamVjdChET0NVTUVOVClcbiAgICBwcml2YXRlIF9kb2N1bWVudDogRG9jdW1lbnQsXG4gICkge1xuICAgIHRoaXMuX3NvdXJjZUxvYWRlci5zZXREb2N1bWVudCh0aGlzLl9kb2N1bWVudCk7XG4gICAgdGhpcy5fbG9hZCgpO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9sb2FkZWQkO1xuICB9XG5cbiAgcHVibGljIGdldCBGcm9hbGFFZGl0b3IoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fZnJvYWxhRWRpdG9yO1xuICB9XG5cbiAgcHJpdmF0ZSBfbG9hZCgpIHtcbiAgICBjb25zdCBiYXNlRGlyID0gJy9hc3NldHMvZnJvYWxhLyc7XG4gICAgdGhpcy5fc291cmNlTG9hZGVyLnJlZ2lzdGVyUmVzb3VyY2VzKHtcbiAgICAgIGZyb2FsYTogW1xuICAgICAgICBgJHtiYXNlRGlyfWpzL2Zyb2FsYV9lZGl0b3IubWluLmpzYCxcbiAgICAgICAgYCR7YmFzZURpcn1jc3MvZnJvYWxhX2VkaXRvci5wa2dkLm1pbi5jc3NgLFxuICAgICAgXSxcbiAgICAgIGZyb2FsYV9hbGlnbjogYCR7YmFzZURpcn1qcy9wbHVnaW5zL2FsaWduLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfY29sb3JzOiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvY29sb3JzLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfaW1hZ2U6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9pbWFnZS5taW4uanNgLFxuICAgICAgZnJvYWxhX2xpbms6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9saW5rLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfbGlzdHM6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9saXN0cy5taW4uanNgLFxuICAgICAgZnJvYWxhX3BhcmFncmFwaF9mb3JtYXQ6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9wYXJhZ3JhcGhfZm9ybWF0Lm1pbi5qc2AsXG4gICAgICBmcm9hbGFfdGFibGU6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy90YWJsZS5taW4uanNgLFxuICAgICAgZnJvYWxhX3VybDogYCR7YmFzZURpcn1qcy9wbHVnaW5zL3VybC5taW4uanNgLFxuICAgICAgZnJvYWxhX3ZpZGVvOiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvdmlkZW8ubWluLmpzYCxcbiAgICAgIGZyb2FsYV9xdW90ZTogYCR7YmFzZURpcn1qcy9wbHVnaW5zL3F1b3RlLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfZHJhZ2dhYmxlOiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvZHJhZ2dhYmxlLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfZm9udF9zaXplOiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvZm9udF9zaXplLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfcXVpY2tfaW5zZXJ0OiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvcXVpY2tfaW5zZXJ0Lm1pbi5qc2AsXG4gICAgICBmcm9hbGFfbGluZV9oZWlnaHQ6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9saW5lX2hlaWdodC5taW4uanNgLFxuICAgIH0pO1xuXG4gICAgdGhpcy5fc291cmNlTG9hZGVyLmxvYWRSZXNvdXJjZSgnZnJvYWxhJylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2Zyb2FsYUVkaXRvciA9ICh3aW5kb3cgYXMgYW55KS5Gcm9hbGFFZGl0b3I7XG4gICAgICAgICAgdGhpcy5fZnJvYWxhRG9uZSgpO1xuICAgICAgICB9KSxcbiAgICAgICAgY29uY2F0TWFwKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fbG9hZFBsdWdpbnMoKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fZnJvYWxhUGx1Z2luc0RvbmUoKTtcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIF9sb2FkUGx1Z2lucygpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICBjb25zdCByZXNvdXJjZXMgPSB0aGlzLl9kZWZhdWx0Q29uZmlnXG4gICAgICAuZnJvYWxhUGx1Z2luc1xuICAgICAgLm1hcCgocGx1Z2luTmFtZSkgPT4gYGZyb2FsYV8ke3BsdWdpbk5hbWV9YCk7XG5cbiAgICByZXR1cm4gdGhpcy5fc291cmNlTG9hZGVyLmxvYWRSZXNvdXJjZXMocmVzb3VyY2VzKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Zyb2FsYURvbmUoKSB7XG4gICAgdGhpcy5fZnJvYWxhTG9hZGVkLm5leHQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIF9mcm9hbGFQbHVnaW5zRG9uZSgpIHtcbiAgICB0aGlzLl9mcm9hbGFQbHVnaW5zTG9hZGVkLm5leHQodHJ1ZSk7XG4gIH1cbn1cbiJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvYWxhLWxvYWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2h0bWwtZWRpdG9yL3NlcnZpY2VzL2Zyb2FsYS1sb2FkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyxxQkFBcUI7SUFnQmhDLFlBR1UsY0FBa0MsRUFFbEMsU0FBbUI7UUFGbkIsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBRWxDLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFqQnJCLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEQsa0JBQWEsR0FBRyxjQUFjLENBQUM7UUFFL0IsYUFBUSxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7YUFDOUUsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7WUFDakMsT0FBTyxXQUFXLElBQUksV0FBVyxDQUFD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bnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBmc1NvdXJjZUxvYWRlciB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY29uY2F0TWFwLCBtYXAsIHNoYXJlUmVwbGF5LCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZTX0hUTUxfRURJVE9SX0NPTkZJRyB9IGZyb20gJy4uL2luamVjdHMvY29uZmlnLmluamVjdCc7XG5pbXBvcnQgeyBGc0h0bWxFZGl0b3JDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2h0bWwtZWRpdG9yLWNvbmZpZyc7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEZzRnJvYWxhTG9hZGVyU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBfZnJvYWxhRWRpdG9yOiBhbnk7XG5cbiAgcHJpdmF0ZSBfZnJvYWxhTG9hZGVkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIHByaXZhdGUgX2Zyb2FsYVBsdWdpbnNMb2FkZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBfc291cmNlTG9hZGVyID0gZnNTb3VyY2VMb2FkZXI7XG5cbiAgcHJpdmF0ZSBfbG9hZGVkJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX2Zyb2FsYUxvYWRlZCwgdGhpcy5fZnJvYWxhUGx1Z2luc0xvYWRlZF0pXG4gICAgLnBpcGUoXG4gICAgICBtYXAoKFtGcm9hbGFSZWFkeSwgcGx1Z2luc1JlYWRdKSA9PiB7XG4gICAgICAgIHJldHVybiBwbHVnaW5zUmVhZCAmJiBGcm9hbGFSZWFkeTtcbiAgICAgIH0pLFxuICAgICAgc2hhcmVSZXBsYXkoMSksXG4gICAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoRlNfSFRNTF9FRElUT1JfQ09ORklHKVxuICAgIHByaXZhdGUgX2RlZmF1bHRDb25maWc6IEZzSHRtbEVkaXRvckNvbmZpZyxcbiAgICBASW5qZWN0KERPQ1VNRU5UKVxuICAgIHByaXZhdGUgX2RvY3VtZW50OiBEb2N1bWVudCxcbiAgKSB7XG4gICAgdGhpcy5fc291cmNlTG9hZGVyLnNldERvY3VtZW50KHRoaXMuX2RvY3VtZW50KTtcbiAgICB0aGlzLl9sb2FkKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxvYWRlZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRlZCQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IEZyb2FsYUVkaXRvcigpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9mcm9hbGFFZGl0b3I7XG4gIH1cblxuICBwcml2YXRlIF9sb2FkKCkge1xuICAgIGNvbnN0IGJhc2VEaXIgPSAnL2Fzc2V0cy9mcm9hbGEvJztcbiAgICB0aGlzLl9zb3VyY2VMb2FkZXIucmVnaXN0ZXJSZXNvdXJjZXMoe1xuICAgICAgZnJvYWxhOiBbXG4gICAgICAgIGAke2Jhc2VEaXJ9anMvZnJvYWxhX2VkaXRvci5taW4uanNgLFxuICAgICAgICBgJHtiYXNlRGlyfWNzcy9mcm9hbGFfZWRpdG9yLnBrZ2QubWluLmNzc2AsXG4gICAgICBdLFxuICAgICAgZnJvYWxhX2FsaWduOiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvYWxpZ24ubWluLmpzYCxcbiAgICAgIGZyb2FsYV9jb2xvcnM6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9jb2xvcnMubWluLmpzYCxcbiAgICAgIGZyb2FsYV9pbWFnZTogYCR7YmFzZURpcn1qcy9wbHVnaW5zL2ltYWdlLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfbGluazogYCR7YmFzZURpcn1qcy9wbHVnaW5zL2xpbmsubWluLmpzYCxcbiAgICAgIGZyb2FsYV9saXN0czogYCR7YmFzZURpcn1qcy9wbHVnaW5zL2xpc3RzLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfcGFyYWdyYXBoX2Zvcm1hdDogYCR7YmFzZURpcn1qcy9wbHVnaW5zL3BhcmFncmFwaF9mb3JtYXQubWluLmpzYCxcbiAgICAgIGZyb2FsYV90YWJsZTogYCR7YmFzZURpcn1qcy9wbHVnaW5zL3RhYmxlLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfdXJsOiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvdXJsLm1pbi5qc2AsXG4gICAgICBmcm9hbGFfdmlkZW86IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy92aWRlby5taW4uanNgLFxuICAgICAgZnJvYWxhX3F1b3RlOiBgJHtiYXNlRGlyfWpzL3BsdWdpbnMvcXVvdGUubWluLmpzYCxcbiAgICAgIGZyb2FsYV9kcmFnZ2FibGU6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9kcmFnZ2FibGUubWluLmpzYCxcbiAgICAgIGZyb2FsYV9mb250X3NpemU6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9mb250X3NpemUubWluLmpzYCxcbiAgICAgIGZyb2FsYV9xdWlja19pbnNlcnQ6IGAke2Jhc2VEaXJ9anMvcGx1Z2lucy9xdWlja19pbnNlcnQubWluLmpzYCxcbiAgICAgIGZyb2FsYV9saW5lX2hlaWdodDogYCR7YmFzZURpcn1qcy9wbHVnaW5zL2xpbmVfaGVpZ2h0Lm1pbi5qc2AsXG4gICAgfSk7XG5cbiAgICB0aGlzLl9zb3VyY2VMb2FkZXIubG9hZFJlc291cmNlKCdmcm9hbGEnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fZnJvYWxhRWRpdG9yID0gKHdpbmRvdyBhcyBhbnkpLkZyb2FsYUVkaXRvcjtcbiAgICAgICAgICB0aGlzLl9mcm9hbGFEb25lKCk7XG4gICAgICAgIH0pLFxuICAgICAgICBjb25jYXRNYXAoKCkgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLl9sb2FkUGx1Z2lucygpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9mcm9hbGFQbHVnaW5zRG9uZSgpO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2xvYWRQbHVnaW5zKCk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIGNvbnN0IHJlc291cmNlcyA9IHRoaXMuX2RlZmF1bHRDb25maWdcbiAgICAgIC5mcm9hbGFQbHVnaW5zXG4gICAgICAubWFwKChwbHVnaW5OYW1lKSA9PiBgZnJvYWxhXyR7cGx1Z2luTmFtZX1gKTtcblxuICAgIHJldHVybiB0aGlzLl9zb3VyY2VMb2FkZXIubG9hZFJlc291cmNlcyhyZXNvdXJjZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZnJvYWxhRG9uZSgpIHtcbiAgICB0aGlzLl9mcm9hbGFMb2FkZWQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Zyb2FsYVBsdWdpbnNEb25lKCkge1xuICAgIHRoaXMuX2Zyb2FsYVBsdWdpbnNMb2FkZWQubmV4dCh0cnVlKTtcbiAgfVxufVxuIl19
@@ -12,11 +12,11 @@ export class FsHtmlRendererComponent {
12
12
  this._cdRef.markForCheck();
13
13
  }
14
14
  }
15
- FsHtmlRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlRendererComponent, deps: [{ token: i1.DomSanitizer }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
16
- FsHtmlRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FsHtmlRendererComponent, selector: "fs-html-renderer", inputs: { setHtml: ["html", "setHtml"] }, ngImport: i0, template: "<span class=\"fr-view fs-html-editor-default\" [innerHtml]=\"trustedHtml\"></span>\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlRendererComponent, decorators: [{
15
+ FsHtmlRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlRendererComponent, deps: [{ token: i1.DomSanitizer }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
16
+ FsHtmlRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FsHtmlRendererComponent, selector: "fs-html-renderer", inputs: { setHtml: ["html", "setHtml"] }, ngImport: i0, template: "<span class=\"fr-view fs-html-editor-default\" [innerHtml]=\"trustedHtml\"></span>\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlRendererComponent, decorators: [{
18
18
  type: Component,
19
- args: [{ selector: 'fs-html-renderer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span class=\"fr-view fs-html-editor-default\" [innerHtml]=\"trustedHtml\"></span>\n", styles: [""] }]
19
+ args: [{ selector: 'fs-html-renderer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span class=\"fr-view fs-html-editor-default\" [innerHtml]=\"trustedHtml\"></span>\n" }]
20
20
  }], ctorParameters: function () { return [{ type: i1.DomSanitizer }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { setHtml: [{
21
21
  type: Input,
22
22
  args: ['html']
@@ -4,12 +4,10 @@ import { FsHtmlRendererComponent } from './components/html-renderer/html-rendere
4
4
  import * as i0 from "@angular/core";
5
5
  export class FsHtmlRendererModule {
6
6
  }
7
- FsHtmlRendererModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlRendererModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- FsHtmlRendererModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlRendererModule, declarations: [FsHtmlRendererComponent], imports: [CommonModule], exports: [FsHtmlRendererComponent] });
9
- FsHtmlRendererModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlRendererModule, imports: [[
10
- CommonModule,
11
- ]] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsHtmlRendererModule, decorators: [{
7
+ FsHtmlRendererModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlRendererModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ FsHtmlRendererModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlRendererModule, declarations: [FsHtmlRendererComponent], imports: [CommonModule], exports: [FsHtmlRendererComponent] });
9
+ FsHtmlRendererModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlRendererModule, imports: [CommonModule] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FsHtmlRendererModule, decorators: [{
13
11
  type: NgModule,
14
12
  args: [{
15
13
  imports: [
@@ -23,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
23
21
  ],
24
22
  }]
25
23
  }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtaHRtbC1yZW5kZXJlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvaHRtbC1yZW5kZXJlci9mcy1odG1sLXJlbmRlcmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7QUFhN0YsTUFBTSxPQUFPLG9CQUFvQjs7aUhBQXBCLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGlCQUg3Qix1QkFBdUIsYUFOdkIsWUFBWSxhQUdaLHVCQUF1QjtrSEFNZCxvQkFBb0IsWUFWdEI7WUFDUCxZQUFZO1NBQ2I7MkZBUVUsb0JBQW9CO2tCQVhoQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCx1QkFBdUI7cUJBQ3hCO29CQUNELFlBQVksRUFBRTt3QkFDWix1QkFBdUI7cUJBQ3hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IEZzSHRtbFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2h0bWwtcmVuZGVyZXIvaHRtbC1yZW5kZXJlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRnNIdG1sUmVuZGVyZXJDb21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZzSHRtbFJlbmRlcmVyQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGc0h0bWxSZW5kZXJlck1vZHVsZSB7XG59XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtaHRtbC1yZW5kZXJlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvaHRtbC1yZW5kZXJlci9mcy1odG1sLXJlbmRlcmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7QUFhN0YsTUFBTSxPQUFPLG9CQUFvQjs7aUhBQXBCLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGlCQUg3Qix1QkFBdUIsYUFOdkIsWUFBWSxhQUdaLHVCQUF1QjtrSEFNZCxvQkFBb0IsWUFUN0IsWUFBWTsyRkFTSCxvQkFBb0I7a0JBWGhDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHVCQUF1QjtxQkFDeEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgRnNIdG1sUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaHRtbC1yZW5kZXJlci9odG1sLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGc0h0bWxSZW5kZXJlckNvbXBvbmVudCxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRnNIdG1sUmVuZGVyZXJDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzSHRtbFJlbmRlcmVyTW9kdWxlIHtcbn1cbiJdfQ==