simpo-component-library 3.6.916 → 3.6.918
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/hover-elements/hover-elements.component.mjs +3 -7
- package/esm2022/lib/directive/button-directive.directive.mjs +7 -1
- package/esm2022/lib/ecommerce/sections/refer-earn/refer-earn.component.mjs +14 -8
- package/esm2022/lib/elements/below-image-card/below-image-card.component.mjs +3 -3
- package/esm2022/lib/elements/covering-image-card/covering-image-card.component.mjs +3 -3
- package/esm2022/lib/elements/simpo-button/simpo-button.component.mjs +5 -3
- package/esm2022/lib/elements/top-of-image-card/top-of-image-card.component.mjs +3 -3
- package/esm2022/lib/sections/appointment-form/appointment-form.component.mjs +2 -2
- package/esm2022/lib/sections/banner-carousel/banner-carousel.component.mjs +2 -2
- package/esm2022/lib/sections/banner-grid-section/banner-grid-section.component.mjs +2 -2
- package/esm2022/lib/sections/banner-section/banner-section.component.mjs +2 -2
- package/esm2022/lib/sections/button-grid-section/button-grid-section.component.mjs +2 -2
- package/esm2022/lib/sections/carousel-banner/carousel-banner.component.mjs +2 -2
- package/esm2022/lib/sections/condensed-and-gradient/condensed-and-gradient.component.mjs +2 -2
- package/esm2022/lib/sections/countdown-banner/countdown-banner.component.mjs +24 -4
- package/esm2022/lib/sections/footer-section/footer-section.component.mjs +2 -2
- package/esm2022/lib/sections/header-section/header-section.component.mjs +3 -3
- package/esm2022/lib/sections/header-text/header-text.component.mjs +2 -2
- package/esm2022/lib/sections/image-background/image-background/image-background.component.mjs +14 -8
- package/esm2022/lib/sections/image-section/image-section.component.mjs +2 -2
- package/esm2022/lib/sections/logo-showcase/logo-showcase.component.mjs +2 -2
- package/esm2022/lib/sections/navbar-section/navbar-section.component.mjs +2 -2
- package/esm2022/lib/sections/new-services/new-services.component.mjs +2 -2
- package/esm2022/lib/sections/new-testimonials/new-testimonials.component.mjs +2 -2
- package/esm2022/lib/sections/overlapping-image/overlapping-image.component.mjs +2 -2
- package/esm2022/lib/sections/pricing-section/pricing-section.component.mjs +2 -2
- package/esm2022/lib/sections/product-info-section/product-info-section.component.mjs +2 -2
- package/esm2022/lib/sections/service-section/service-section.component.mjs +2 -2
- package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +2 -2
- package/esm2022/lib/sections/text-image-section/text-image-section.component.mjs +2 -2
- package/esm2022/lib/sections/text-section/text-section.component.mjs +2 -2
- package/fesm2022/simpo-component-library.mjs +86 -50
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/components/hover-elements/hover-elements.component.d.ts +0 -1
- package/lib/ecommerce/sections/featured-category/featured-category.component.d.ts +1 -1
- package/lib/ecommerce/sections/featured-category/featured-collection.component.d.ts +1 -1
- package/lib/ecommerce/sections/new-collection/new-collection.component.d.ts +1 -1
- package/lib/ecommerce/sections/refer-earn/refer-earn.component.d.ts +2 -1
- package/lib/ecommerce/sections/schemes/schemes.component.d.ts +1 -1
- package/lib/elements/pricing-s1/pricing-s1.component.d.ts +1 -1
- package/lib/elements/simpo-button/simpo-button.component.d.ts +2 -1
- package/lib/sections/banner-carousel/banner-carousel.component.d.ts +2 -2
- package/lib/sections/carousel-banner/carousel-banner.component.d.ts +1 -1
- package/lib/sections/contact-us/contact-us.component.d.ts +1 -1
- package/lib/sections/countdown-banner/countdown-banner.component.d.ts +2 -1
- package/lib/sections/faq-columns-cards/faq-columns-cards.component.d.ts +1 -1
- package/lib/sections/faq-section/faq-section.component.d.ts +1 -1
- package/lib/sections/image-background/image-background/image-background.component.d.ts +2 -1
- package/lib/sections/image-grid-hotspot/image-grid-hotspot.component.d.ts +1 -1
- package/lib/sections/image-grid-section/image-grid-section.component.d.ts +1 -1
- package/lib/sections/image-section/image-section.component.d.ts +2 -2
- package/lib/sections/new-testimonials/new-testimonials.component.d.ts +1 -1
- package/lib/sections/pricing-section/pricing-section.component.d.ts +2 -2
- package/package.json +1 -1
- package/simpo-component-library-3.6.918.tgz +0 -0
- package/simpo-component-library-3.6.916.tgz +0 -0
|
@@ -43,10 +43,6 @@ export class HoverElementsComponent {
|
|
|
43
43
|
this._eventService.restyleSection.emit({ index: this.index });
|
|
44
44
|
event.stopPropagation();
|
|
45
45
|
}
|
|
46
|
-
changeContent(event) {
|
|
47
|
-
this._eventService.changeContent.emit({ sectionId: this.data.componentId, index: this.index, sectionType: this.data.sectionType });
|
|
48
|
-
event.stopPropagation();
|
|
49
|
-
}
|
|
50
46
|
moveUp(event) {
|
|
51
47
|
this._eventService.changePosition.emit({ index: this.index, position: "UP" });
|
|
52
48
|
event.stopPropagation();
|
|
@@ -83,11 +79,11 @@ export class HoverElementsComponent {
|
|
|
83
79
|
event.stopPropagation();
|
|
84
80
|
}
|
|
85
81
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HoverElementsComponent, deps: [{ token: i1.EventsService }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
86
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HoverElementsComponent, isStandalone: true, selector: "simpo-hover-elements", inputs: { data: "data", index: "index", editOptions: "editOptions", isMerged: "isMerged", isEcommerce: "isEcommerce" }, outputs: { edit: "edit" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "<mat-dialog-content class=\"mat-typography\" *ngIf=\"editOptions\">\r\n <div class=\"top-btn\" [ngClass]=\"{'adjust-top-btn': isMerged && index == 1}\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn_top d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('ABOVE', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n <section class=\"hover-tab\" [ngClass]=\"{'adjustPosition': isMerged && index == 1}\" cdkDrag>\r\n <div class=\"tabs-section\" [ngStyle]=\"{'z-index' : data.sectionType === 'header' ? '10000' : '100'}\">\r\n\r\n <div class=\"section-name\" cdkDragHandle>\r\n {{ data?.sectionName || 'Section' }}\r\n </div>\r\n\r\n <button class=\"edit-btn\" (click)=\"editSection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"lucide lucide-pencil\" aria-hidden=\"true\">\r\n <path\r\n d=\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z\">\r\n </path>\r\n <path d=\"m15 5 4 4\"></path>\r\n </svg>\r\n <span class=\"edit-text\">Edit</span>\r\n </button>\r\n\r\n <ng-container\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList'\">\r\n <button class=\"icon-btn\" (click)=\"moveUp($event)\" [disabled]=\"index == 1\" matTooltip=\"Move up\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"18 15 12 9 6 15\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <button class=\"icon-btn\" (click)=\"moveDown($event)\" matTooltip=\"Move down\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"6 9 12 15 18 9\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"position-relative d-flex align-items-center\" (click)=\"$event.stopPropagation()\">\r\n <button class=\"icon-btn more-btn\" (click)=\"toggleMenu($event)\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"simpo-custom-menu px-2 py-1\" *ngIf=\"isMenuOpen\">\r\n <button class=\"menu-item-custom\" (click)=\"changeContent($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"menu-icon\">\r\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n </svg>\r\n <span class=\"menu-item-text\">Change Layout</span>\r\n </button>\r\n <!-- <button class=\"menu-item-custom\" (click)=\"restyleSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"menu-icon\">\r\n <path\r\n d=\"m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z\" />\r\n </svg>\r\n <span>Restyle with AI</span>\r\n <span class=\"ai-badge\">AI</span>\r\n </button> -->\r\n <button class=\"menu-item-custom\" (click)=\"duplicateSection($event); isMenuOpen = false\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\"\r\n fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" class=\"lucide lucide-copy menu-icon\" aria-hidden=\"true\">\r\n <rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"></rect>\r\n <path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"></path>\r\n </svg>\r\n <span class=\"menu-item-text\">Duplicate</span>\r\n </button>\r\n <div class=\"menu-divider\"></div>\r\n <button class=\"menu-item-custom delete-item\"\r\n (click)=\"deleteSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"menu-icon delete-icon\">\r\n <polyline points=\"3 6 5 6 21 6\"></polyline>\r\n <path\r\n d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\">\r\n </path>\r\n <line x1=\"10\" y1=\"11\" x2=\"10\" y2=\"17\"></line>\r\n <line x1=\"14\" y1=\"11\" x2=\"14\" y2=\"17\"></line>\r\n </svg>\r\n <span class=\"delete-text menu-item-text\">Delete Section</span>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </section>\r\n <div class=\"bottom-btn\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('BELOW', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n</mat-dialog-content>", styles: ["*{font-family:var(--primary-font-family)}mat-icon{font-family:Material Icons!important}.hover-tab{display:flex;justify-content:flex-end;align-items:center;position:absolute;right:30px;top:40px;height:auto;cursor:grab}.adjustPosition{top:200px}.bottom-btn{position:absolute;top:100%;left:0%;z-index:101;border:1px solid var(--primary-bg-color);width:100%}.bottom-btn .add_btn{width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;transform:translate(-50%,-50%);color:#fff;cursor:pointer;border:none;outline:none;position:absolute;top:100%;left:50%;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.bottom-btn .add_btn:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.border-radius-50{border-radius:50%!important}:is(.bottom-btn,.top-btn) mat-icon{font-size:21px!important;width:21px!important;display:flex;align-items:center;justify-content:center}.adjust-top-btn{top:170px!important}.top-btn{position:absolute;top:0%;left:0%;z-index:101;width:100%;border:1px solid var(--primary-bg-color)}.top-btn .add_btn_top{top:0!important;width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;position:absolute;left:50%;transform:translate(-50%,-50%);border:none;color:#fff;cursor:pointer;outline:none;z-index:1001;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.top-btn .add_btn_top:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.tabs-section{width:auto;padding:6px 6px 6px 16px;box-shadow:#0000001a 0 4px 12px;border-radius:8px;display:flex;align-items:center;height:48px;background-color:#fff;gap:8px}.section-name{font-size:14px;color:#8c98a4;font-weight:500;margin-right:8px;cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap}.edit-btn{display:flex;align-items:center;justify-content:center;gap:6px;background-color:#f6f0ff;color:#4a2b6d;border:none;border-radius:6px;padding:6px 12px;font-size:14px!important;font-weight:500;cursor:pointer;transition:background-color .2s ease}.edit-btn:hover{background-color:var(--primary-bg-color);color:#fff}.icon-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#8c98a4;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s ease,color .2s ease}.icon-btn:hover{background-color:#f5f5f5;color:#4a2b6d}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.more-btn{margin-left:4px}.simpo-custom-menu{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:8px;box-shadow:#0000001a 0 4px 12px;min-width:180px;padding:4px 0;z-index:1000;display:flex;flex-direction:column}.simpo-custom-menu .menu-item-custom{display:flex;align-items:center;width:100%;padding:0 16px;min-height:40px;background:transparent;white-space:nowrap;border:none;font-size:14px;color:#333;cursor:pointer;text-align:left;transition:background-color .2s;border-radius:6px}.simpo-custom-menu .menu-item-custom .menu-item-text{font-size:14px!important;font-weight:500!important}.simpo-custom-menu .menu-item-custom:hover{background-color:#f5f5f5}.simpo-custom-menu .menu-icon{margin-right:12px;color:#333;flex-shrink:0}.simpo-custom-menu .ai-badge{margin-left:auto;background-color:#a855f7;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;line-height:1}.simpo-custom-menu .menu-divider{height:1px;background-color:#e0e0e0;margin:4px 0}.simpo-custom-menu .delete-item,.simpo-custom-menu .delete-item .menu-icon,.simpo-custom-menu .delete-item .delete-text{color:#e03131!important;font-size:14px!important}@media only screen and (max-width: 475px){.tabs-section{position:relative;left:27px;height:48px}}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
|
|
82
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HoverElementsComponent, isStandalone: true, selector: "simpo-hover-elements", inputs: { data: "data", index: "index", editOptions: "editOptions", isMerged: "isMerged", isEcommerce: "isEcommerce" }, outputs: { edit: "edit" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "<mat-dialog-content class=\"mat-typography\" *ngIf=\"editOptions\">\r\n <div class=\"top-btn\" [ngClass]=\"{'adjust-top-btn': isMerged && index == 1}\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn_top d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('ABOVE', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n <section class=\"hover-tab\" [ngClass]=\"{'adjustPosition': isMerged && index == 1}\" cdkDrag>\r\n <div class=\"tabs-section\" [ngStyle]=\"{'z-index' : data.sectionType === 'header' ? '10000' : '100'}\">\r\n\r\n <div class=\"section-name\" cdkDragHandle>\r\n {{ data?.sectionName || 'Section' }}\r\n </div>\r\n\r\n <button class=\"edit-btn\" (click)=\"editSection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"lucide lucide-pencil\" aria-hidden=\"true\">\r\n <path\r\n d=\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z\">\r\n </path>\r\n <path d=\"m15 5 4 4\"></path>\r\n </svg>\r\n <span class=\"edit-text\">Edit</span>\r\n </button>\r\n\r\n <ng-container\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList'\">\r\n <button class=\"icon-btn\" (click)=\"moveUp($event)\" [disabled]=\"index == 1\" matTooltip=\"Move up\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"18 15 12 9 6 15\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <button class=\"icon-btn\" (click)=\"moveDown($event)\" matTooltip=\"Move down\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"6 9 12 15 18 9\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"position-relative d-flex align-items-center\" (click)=\"$event.stopPropagation()\">\r\n <button class=\"icon-btn more-btn\" (click)=\"toggleMenu($event)\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"simpo-custom-menu px-2 py-1\" *ngIf=\"isMenuOpen\">\r\n <!-- <button class=\"menu-item-custom\" (click)=\"restyleSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"menu-icon\">\r\n <path\r\n d=\"m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z\" />\r\n </svg>\r\n <span>Restyle with AI</span>\r\n <span class=\"ai-badge\">AI</span>\r\n </button> -->\r\n <button class=\"menu-item-custom\" (click)=\"duplicateSection($event); isMenuOpen = false\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\"\r\n fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" class=\"lucide lucide-copy menu-icon\" aria-hidden=\"true\">\r\n <rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"></rect>\r\n <path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"></path>\r\n </svg>\r\n <span class=\"menu-item-text\">Duplicate</span>\r\n </button>\r\n <div class=\"menu-divider\"></div>\r\n <button class=\"menu-item-custom delete-item\"\r\n (click)=\"deleteSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"menu-icon delete-icon\">\r\n <polyline points=\"3 6 5 6 21 6\"></polyline>\r\n <path\r\n d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\">\r\n </path>\r\n <line x1=\"10\" y1=\"11\" x2=\"10\" y2=\"17\"></line>\r\n <line x1=\"14\" y1=\"11\" x2=\"14\" y2=\"17\"></line>\r\n </svg>\r\n <span class=\"delete-text menu-item-text\">Delete Section</span>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </section>\r\n <div class=\"bottom-btn\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('BELOW', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n</mat-dialog-content>", styles: ["*{font-family:var(--primary-font-family)}mat-icon{font-family:Material Icons!important}.hover-tab{display:flex;justify-content:flex-end;align-items:center;position:absolute;right:30px;top:40px;height:auto;cursor:grab}.adjustPosition{top:200px}.bottom-btn{position:absolute;top:100%;left:0%;z-index:101;border:1px solid var(--primary-bg-color);width:100%}.bottom-btn .add_btn{width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;transform:translate(-50%,-50%);color:#fff;cursor:pointer;border:none;outline:none;position:absolute;top:100%;left:50%;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.bottom-btn .add_btn:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.border-radius-50{border-radius:50%!important}:is(.bottom-btn,.top-btn) mat-icon{font-size:21px!important;width:21px!important;display:flex;align-items:center;justify-content:center}.adjust-top-btn{top:170px!important}.top-btn{position:absolute;top:0%;left:0%;z-index:101;width:100%;border:1px solid var(--primary-bg-color)}.top-btn .add_btn_top{top:0!important;width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;position:absolute;left:50%;transform:translate(-50%,-50%);border:none;color:#fff;cursor:pointer;outline:none;z-index:1001;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.top-btn .add_btn_top:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.tabs-section{width:auto;padding:6px 6px 6px 16px;box-shadow:#0000001a 0 4px 12px;border-radius:8px;display:flex;align-items:center;height:48px;background-color:#fff;gap:8px}.section-name{font-size:14px;color:#8c98a4;font-weight:500;margin-right:8px;cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap}.edit-btn{display:flex;align-items:center;justify-content:center;gap:6px;background-color:#f6f0ff;color:#4a2b6d;border:none;border-radius:6px;padding:6px 12px;font-size:14px!important;font-weight:500;cursor:pointer;transition:background-color .2s ease}.edit-btn:hover{background-color:var(--primary-bg-color);color:#fff}.icon-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#8c98a4;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s ease,color .2s ease}.icon-btn:hover{background-color:#f5f5f5;color:#4a2b6d}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.more-btn{margin-left:4px}.simpo-custom-menu{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:8px;box-shadow:#0000001a 0 4px 12px;min-width:180px;padding:4px 0;z-index:1000;display:flex;flex-direction:column}.simpo-custom-menu .menu-item-custom{display:flex;align-items:center;width:100%;padding:0 16px;min-height:40px;background:transparent;white-space:nowrap;border:none;font-size:14px;color:#333;cursor:pointer;text-align:left;transition:background-color .2s;border-radius:6px}.simpo-custom-menu .menu-item-custom .menu-item-text{font-size:14px!important;font-weight:500!important}.simpo-custom-menu .menu-item-custom:hover{background-color:#f5f5f5}.simpo-custom-menu .menu-icon{margin-right:12px;color:#333;flex-shrink:0}.simpo-custom-menu .ai-badge{margin-left:auto;background-color:#a855f7;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;line-height:1}.simpo-custom-menu .menu-divider{height:1px;background-color:#e0e0e0;margin:4px 0}.simpo-custom-menu .delete-item,.simpo-custom-menu .delete-item .menu-icon,.simpo-custom-menu .delete-item .delete-text{color:#e03131!important;font-size:14px!important}@media only screen and (max-width: 475px){.tabs-section{position:relative;left:27px;height:48px}}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
|
|
87
83
|
}
|
|
88
84
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HoverElementsComponent, decorators: [{
|
|
89
85
|
type: Component,
|
|
90
|
-
args: [{ selector: 'simpo-hover-elements', standalone: true, imports: [MatIconModule, MatDialogModule, MatMenuModule, CommonModule, AddSectionComponent, CdkDrag, MatTooltipModule], template: "<mat-dialog-content class=\"mat-typography\" *ngIf=\"editOptions\">\r\n <div class=\"top-btn\" [ngClass]=\"{'adjust-top-btn': isMerged && index == 1}\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn_top d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('ABOVE', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n <section class=\"hover-tab\" [ngClass]=\"{'adjustPosition': isMerged && index == 1}\" cdkDrag>\r\n <div class=\"tabs-section\" [ngStyle]=\"{'z-index' : data.sectionType === 'header' ? '10000' : '100'}\">\r\n\r\n <div class=\"section-name\" cdkDragHandle>\r\n {{ data?.sectionName || 'Section' }}\r\n </div>\r\n\r\n <button class=\"edit-btn\" (click)=\"editSection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"lucide lucide-pencil\" aria-hidden=\"true\">\r\n <path\r\n d=\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z\">\r\n </path>\r\n <path d=\"m15 5 4 4\"></path>\r\n </svg>\r\n <span class=\"edit-text\">Edit</span>\r\n </button>\r\n\r\n <ng-container\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList'\">\r\n <button class=\"icon-btn\" (click)=\"moveUp($event)\" [disabled]=\"index == 1\" matTooltip=\"Move up\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"18 15 12 9 6 15\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <button class=\"icon-btn\" (click)=\"moveDown($event)\" matTooltip=\"Move down\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"6 9 12 15 18 9\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"position-relative d-flex align-items-center\" (click)=\"$event.stopPropagation()\">\r\n <button class=\"icon-btn more-btn\" (click)=\"toggleMenu($event)\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"simpo-custom-menu px-2 py-1\" *ngIf=\"isMenuOpen\">\r\n <button class=\"menu-item-custom\" (click)=\"changeContent($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"menu-icon\">\r\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\" rx=\"1\"></rect>\r\n </svg>\r\n <span class=\"menu-item-text\">Change Layout</span>\r\n </button>\r\n <!-- <button class=\"menu-item-custom\" (click)=\"restyleSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"menu-icon\">\r\n <path\r\n d=\"m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z\" />\r\n </svg>\r\n <span>Restyle with AI</span>\r\n <span class=\"ai-badge\">AI</span>\r\n </button> -->\r\n <button class=\"menu-item-custom\" (click)=\"duplicateSection($event); isMenuOpen = false\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\"\r\n fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" class=\"lucide lucide-copy menu-icon\" aria-hidden=\"true\">\r\n <rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"></rect>\r\n <path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"></path>\r\n </svg>\r\n <span class=\"menu-item-text\">Duplicate</span>\r\n </button>\r\n <div class=\"menu-divider\"></div>\r\n <button class=\"menu-item-custom delete-item\"\r\n (click)=\"deleteSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"menu-icon delete-icon\">\r\n <polyline points=\"3 6 5 6 21 6\"></polyline>\r\n <path\r\n d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\">\r\n </path>\r\n <line x1=\"10\" y1=\"11\" x2=\"10\" y2=\"17\"></line>\r\n <line x1=\"14\" y1=\"11\" x2=\"14\" y2=\"17\"></line>\r\n </svg>\r\n <span class=\"delete-text menu-item-text\">Delete Section</span>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </section>\r\n <div class=\"bottom-btn\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('BELOW', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n</mat-dialog-content>", styles: ["*{font-family:var(--primary-font-family)}mat-icon{font-family:Material Icons!important}.hover-tab{display:flex;justify-content:flex-end;align-items:center;position:absolute;right:30px;top:40px;height:auto;cursor:grab}.adjustPosition{top:200px}.bottom-btn{position:absolute;top:100%;left:0%;z-index:101;border:1px solid var(--primary-bg-color);width:100%}.bottom-btn .add_btn{width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;transform:translate(-50%,-50%);color:#fff;cursor:pointer;border:none;outline:none;position:absolute;top:100%;left:50%;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.bottom-btn .add_btn:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.border-radius-50{border-radius:50%!important}:is(.bottom-btn,.top-btn) mat-icon{font-size:21px!important;width:21px!important;display:flex;align-items:center;justify-content:center}.adjust-top-btn{top:170px!important}.top-btn{position:absolute;top:0%;left:0%;z-index:101;width:100%;border:1px solid var(--primary-bg-color)}.top-btn .add_btn_top{top:0!important;width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;position:absolute;left:50%;transform:translate(-50%,-50%);border:none;color:#fff;cursor:pointer;outline:none;z-index:1001;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.top-btn .add_btn_top:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.tabs-section{width:auto;padding:6px 6px 6px 16px;box-shadow:#0000001a 0 4px 12px;border-radius:8px;display:flex;align-items:center;height:48px;background-color:#fff;gap:8px}.section-name{font-size:14px;color:#8c98a4;font-weight:500;margin-right:8px;cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap}.edit-btn{display:flex;align-items:center;justify-content:center;gap:6px;background-color:#f6f0ff;color:#4a2b6d;border:none;border-radius:6px;padding:6px 12px;font-size:14px!important;font-weight:500;cursor:pointer;transition:background-color .2s ease}.edit-btn:hover{background-color:var(--primary-bg-color);color:#fff}.icon-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#8c98a4;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s ease,color .2s ease}.icon-btn:hover{background-color:#f5f5f5;color:#4a2b6d}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.more-btn{margin-left:4px}.simpo-custom-menu{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:8px;box-shadow:#0000001a 0 4px 12px;min-width:180px;padding:4px 0;z-index:1000;display:flex;flex-direction:column}.simpo-custom-menu .menu-item-custom{display:flex;align-items:center;width:100%;padding:0 16px;min-height:40px;background:transparent;white-space:nowrap;border:none;font-size:14px;color:#333;cursor:pointer;text-align:left;transition:background-color .2s;border-radius:6px}.simpo-custom-menu .menu-item-custom .menu-item-text{font-size:14px!important;font-weight:500!important}.simpo-custom-menu .menu-item-custom:hover{background-color:#f5f5f5}.simpo-custom-menu .menu-icon{margin-right:12px;color:#333;flex-shrink:0}.simpo-custom-menu .ai-badge{margin-left:auto;background-color:#a855f7;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;line-height:1}.simpo-custom-menu .menu-divider{height:1px;background-color:#e0e0e0;margin:4px 0}.simpo-custom-menu .delete-item,.simpo-custom-menu .delete-item .menu-icon,.simpo-custom-menu .delete-item .delete-text{color:#e03131!important;font-size:14px!important}@media only screen and (max-width: 475px){.tabs-section{position:relative;left:27px;height:48px}}\n"] }]
|
|
86
|
+
args: [{ selector: 'simpo-hover-elements', standalone: true, imports: [MatIconModule, MatDialogModule, MatMenuModule, CommonModule, AddSectionComponent, CdkDrag, MatTooltipModule], template: "<mat-dialog-content class=\"mat-typography\" *ngIf=\"editOptions\">\r\n <div class=\"top-btn\" [ngClass]=\"{'adjust-top-btn': isMerged && index == 1}\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn_top d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('ABOVE', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n <section class=\"hover-tab\" [ngClass]=\"{'adjustPosition': isMerged && index == 1}\" cdkDrag>\r\n <div class=\"tabs-section\" [ngStyle]=\"{'z-index' : data.sectionType === 'header' ? '10000' : '100'}\">\r\n\r\n <div class=\"section-name\" cdkDragHandle>\r\n {{ data?.sectionName || 'Section' }}\r\n </div>\r\n\r\n <button class=\"edit-btn\" (click)=\"editSection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"lucide lucide-pencil\" aria-hidden=\"true\">\r\n <path\r\n d=\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z\">\r\n </path>\r\n <path d=\"m15 5 4 4\"></path>\r\n </svg>\r\n <span class=\"edit-text\">Edit</span>\r\n </button>\r\n\r\n <ng-container\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList'\">\r\n <button class=\"icon-btn\" (click)=\"moveUp($event)\" [disabled]=\"index == 1\" matTooltip=\"Move up\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"18 15 12 9 6 15\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <button class=\"icon-btn\" (click)=\"moveDown($event)\" matTooltip=\"Move down\" matTooltipPosition=\"above\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <polyline points=\"6 9 12 15 18 9\"></polyline>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"position-relative d-flex align-items-center\" (click)=\"$event.stopPropagation()\">\r\n <button class=\"icon-btn more-btn\" (click)=\"toggleMenu($event)\">\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\r\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\r\n </svg>\r\n </button>\r\n\r\n <div class=\"simpo-custom-menu px-2 py-1\" *ngIf=\"isMenuOpen\">\r\n <!-- <button class=\"menu-item-custom\" (click)=\"restyleSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"menu-icon\">\r\n <path\r\n d=\"m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z\" />\r\n </svg>\r\n <span>Restyle with AI</span>\r\n <span class=\"ai-badge\">AI</span>\r\n </button> -->\r\n <button class=\"menu-item-custom\" (click)=\"duplicateSection($event); isMenuOpen = false\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\"\r\n fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" class=\"lucide lucide-copy menu-icon\" aria-hidden=\"true\">\r\n <rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"></rect>\r\n <path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"></path>\r\n </svg>\r\n <span class=\"menu-item-text\">Duplicate</span>\r\n </button>\r\n <div class=\"menu-divider\"></div>\r\n <button class=\"menu-item-custom delete-item\"\r\n (click)=\"deleteSection($event); isMenuOpen = false\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\r\n class=\"menu-icon delete-icon\">\r\n <polyline points=\"3 6 5 6 21 6\"></polyline>\r\n <path\r\n d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\">\r\n </path>\r\n <line x1=\"10\" y1=\"11\" x2=\"10\" y2=\"17\"></line>\r\n <line x1=\"14\" y1=\"11\" x2=\"14\" y2=\"17\"></line>\r\n </svg>\r\n <span class=\"delete-text menu-item-text\">Delete Section</span>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </section>\r\n <div class=\"bottom-btn\"\r\n *ngIf=\"data.sectionType != 'footer' && data.sectionType != 'header' && data.sectionType != 'blogList' && !isEcommerce\">\r\n <button class=\"add_btn d-flex align-items-center justify-content-center border-radius-50 p-0\"\r\n (click)=\"addSection('BELOW', $event)\"><mat-icon>add</mat-icon></button>\r\n </div>\r\n</mat-dialog-content>", styles: ["*{font-family:var(--primary-font-family)}mat-icon{font-family:Material Icons!important}.hover-tab{display:flex;justify-content:flex-end;align-items:center;position:absolute;right:30px;top:40px;height:auto;cursor:grab}.adjustPosition{top:200px}.bottom-btn{position:absolute;top:100%;left:0%;z-index:101;border:1px solid var(--primary-bg-color);width:100%}.bottom-btn .add_btn{width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;transform:translate(-50%,-50%);color:#fff;cursor:pointer;border:none;outline:none;position:absolute;top:100%;left:50%;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.bottom-btn .add_btn:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.border-radius-50{border-radius:50%!important}:is(.bottom-btn,.top-btn) mat-icon{font-size:21px!important;width:21px!important;display:flex;align-items:center;justify-content:center}.adjust-top-btn{top:170px!important}.top-btn{position:absolute;top:0%;left:0%;z-index:101;width:100%;border:1px solid var(--primary-bg-color)}.top-btn .add_btn_top{top:0!important;width:30px!important;height:30px;background:var(--primary-bg-color);border-radius:4px;position:absolute;left:50%;transform:translate(-50%,-50%);border:none;color:#fff;cursor:pointer;outline:none;z-index:1001;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.top-btn .add_btn_top:hover{background-color:var(--primary-bg-color);color:#fff;border-color:var(--primary-bg-color);transform:translate(-50%,-60%);box-shadow:#0003 0 8px 20px}.tabs-section{width:auto;padding:6px 6px 6px 16px;box-shadow:#0000001a 0 4px 12px;border-radius:8px;display:flex;align-items:center;height:48px;background-color:#fff;gap:8px}.section-name{font-size:14px;color:#8c98a4;font-weight:500;margin-right:8px;cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap}.edit-btn{display:flex;align-items:center;justify-content:center;gap:6px;background-color:#f6f0ff;color:#4a2b6d;border:none;border-radius:6px;padding:6px 12px;font-size:14px!important;font-weight:500;cursor:pointer;transition:background-color .2s ease}.edit-btn:hover{background-color:var(--primary-bg-color);color:#fff}.icon-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#8c98a4;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s ease,color .2s ease}.icon-btn:hover{background-color:#f5f5f5;color:#4a2b6d}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.more-btn{margin-left:4px}.simpo-custom-menu{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:8px;box-shadow:#0000001a 0 4px 12px;min-width:180px;padding:4px 0;z-index:1000;display:flex;flex-direction:column}.simpo-custom-menu .menu-item-custom{display:flex;align-items:center;width:100%;padding:0 16px;min-height:40px;background:transparent;white-space:nowrap;border:none;font-size:14px;color:#333;cursor:pointer;text-align:left;transition:background-color .2s;border-radius:6px}.simpo-custom-menu .menu-item-custom .menu-item-text{font-size:14px!important;font-weight:500!important}.simpo-custom-menu .menu-item-custom:hover{background-color:#f5f5f5}.simpo-custom-menu .menu-icon{margin-right:12px;color:#333;flex-shrink:0}.simpo-custom-menu .ai-badge{margin-left:auto;background-color:#a855f7;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;line-height:1}.simpo-custom-menu .menu-divider{height:1px;background-color:#e0e0e0;margin:4px 0}.simpo-custom-menu .delete-item,.simpo-custom-menu .delete-item .menu-icon,.simpo-custom-menu .delete-item .delete-text{color:#e03131!important;font-size:14px!important}@media only screen and (max-width: 475px){.tabs-section{position:relative;left:27px;height:48px}}\n"] }]
|
|
91
87
|
}], ctorParameters: () => [{ type: i1.EventsService }, { type: i2.MatDialog }], propDecorators: { edit: [{
|
|
92
88
|
type: Output
|
|
93
89
|
}], data: [{
|
|
@@ -104,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
104
100
|
type: HostListener,
|
|
105
101
|
args: ['document:click', ['$event']]
|
|
106
102
|
}] } });
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG92ZXItZWxlbWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFhLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdkYsT0FBTyxFQUFFLE9BQU8sRUFBUyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7O0FBU3hELE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsWUFDVSxhQUE0QixFQUM1QixNQUFpQjtRQURqQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBR2pCLFNBQUksR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUkzRCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBTXRDLGVBQVUs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QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBY04sZUFBZTtzQkFEZCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQWRkU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL2FkZC1zZWN0aW9uL2FkZC1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENka0RyYWcsIFBvaW50IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWhvdmVyLWVsZW1lbnRzJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtNYXRJY29uTW9kdWxlLCBNYXREaWFsb2dNb2R1bGUsIE1hdE1lbnVNb2R1bGUsIENvbW1vbk1vZHVsZSwgQWRkU2VjdGlvbkNvbXBvbmVudCwgQ2RrRHJhZywgTWF0VG9vbHRpcE1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vaG92ZXItZWxlbWVudHMuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEhvdmVyRWxlbWVudHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSxcclxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2dcclxuICApIHsgfVxyXG5cclxuICBAT3V0cHV0KCkgZWRpdDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG4gIEBJbnB1dCgpIGRhdGE6IGFueTtcclxuICBASW5wdXQoKSBpbmRleDogYW55O1xyXG4gIEBJbnB1dCgpIGVkaXRPcHRpb25zPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBpc01lcmdlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGlzRWNvbW1lcmNlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgLy8gY29uc29sZS5sb2codGhpcy5kYXRhLCB0aGlzLmluZGV4LCB0aGlzLmVkaXRPcHRpb25zLCB0aGlzLmlzTWVyZ2VkLCB0aGlzLmlzRWNvbW1lcmNlKTtcclxuICB9XHJcblxyXG4gIGlzTWVudU9wZW4gPSBmYWxzZTtcclxuXHJcbiAgdG9nZ2xlTWVudShldmVudDogRXZlbnQpIHtcclxuICAgIHRoaXMuaXNNZW51T3BlbiA9ICF0aGlzLmlzTWVudU9wZW47XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBvbkRvY3VtZW50Q2xpY2soKSB7XHJcbiAgICB0aGlzLmlzTWVudU9wZW4gPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcblxyXG4gIHJlc3R5bGVTZWN0aW9uKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5jbG9zZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnJlc3R5bGVTZWN0aW9uLmVtaXQoeyBpbmRleDogdGhpcy5pbmRleCB9KTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlQ29udGVudChldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuY2hhbmdlQ29udGVudC5lbWl0KHsgc2VjdGlvbklkOiB0aGlzLmRhdGEuY29tcG9uZW50SWQsIGluZGV4OiB0aGlzLmluZGV4LCBzZWN0aW9uVHlwZTogdGhpcy5kYXRhLnNlY3Rpb25UeXBlIH0pO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBtb3ZlVXAoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmNoYW5nZVBvc2l0aW9uLmVtaXQoeyBpbmRleDogdGhpcy5pbmRleCwgcG9zaXRpb246IFwiVVBcIiB9KTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuICBtb3ZlRG93bihldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuY2hhbmdlUG9zaXRpb24uZW1pdCh7IGluZGV4OiB0aGlzLmluZGV4LCBwb3NpdGlvbjogXCJET1dOXCIgfSk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcbiAgZGVsZXRlU2VjdGlvbihldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuZGVsZXRlLmVtaXQoeyBpbmRleDogdGhpcy5pbmRleCB9KTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgYWRkU2VjdGlvbihwb3NpdGlvbjogXCJBQk9WRVwiIHwgXCJCRUxPV1wiLCBldmVudDogYW55KSB7XHJcbiAgICAvLyB0aGlzLl9ldmVudFNlcnZpY2UuYWRkTmV3U2VjdGlvbkNsaWNrLmVtaXQoeyBzdGF0dXM6IHRydWUsIGluZGV4OiB0aGlzLmluZGV4LCBwb3NpdGlvbjogcG9zaXRpb24sIHdlYkNvbXBOYW1lOnRoaXMuZGF0YX0pO1xyXG4gICAgLy8gZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBsZXQgZGlhbG9nOiBhbnkgPSB0aGlzLmRpYWxvZy5vcGVuKEFkZFNlY3Rpb25Db21wb25lbnQsIHsgcGFuZWxDbGFzczogXCJhZGQtc2VjdGlvblwiLCBkYXRhOiB7IHN0YXR1czogdHJ1ZSwgaW5kZXg6IHRoaXMuaW5kZXgsIHBvc2l0aW9uOiBwb3NpdGlvbiB9IH0pXHJcblxyXG4gICAgZGlhbG9nLmJhY2tkcm9wQ2xpY2soKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRpYWxvZ0VsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuYWRkLXNlY3Rpb24nKSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICBpZiAoZGlhbG9nRWxlbWVudCkge1xyXG4gICAgICAgICAgZGlhbG9nRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdjbG9zaW5nJyk7XHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgZGlhbG9nLmNsb3NlKClcclxuICAgICAgICAgIH0sIDEwMDAwKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGRpYWxvZy5jbG9zZSgpXHJcbiAgICAgICAgICB9LCAxMDAwMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgKVxyXG5cclxuICB9XHJcblxyXG4gIGR1cGxpY2F0ZVNlY3Rpb24oZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmR1cGxpY2F0ZS5lbWl0KHsgaW5kZXg6IHRoaXMuaW5kZXgsIGRhdGE6IHRoaXMuZGF0YSB9KTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcG9pbnQ6IFBvaW50ID0geyB4OiAyMCwgeTogLTUwIH07XHJcblxyXG5cclxufVxyXG4iLCI8bWF0LWRpYWxvZy1jb250ZW50IGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIiAqbmdJZj1cImVkaXRPcHRpb25zXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidG9wLWJ0blwiIFtuZ0NsYXNzXT1cInsnYWRqdXN0LXRvcC1idG4nOiBpc01lcmdlZCAmJiBpbmRleCA9PSAxfVwiXHJcbiAgICAgICAgKm5nSWY9XCJkYXRhLnNlY3Rpb25UeXBlICE9ICdmb290ZXInICYmIGRhdGEuc2VjdGlvblR5cGUgIT0gJ2hlYWRlcicgJiYgZGF0YS5zZWN0aW9uVHlwZSAhPSAnYmxvZ0xpc3QnICYmICFpc0Vjb21tZXJjZVwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhZGRfYnRuX3RvcCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgYm9yZGVyLXJhZGl1cy01MCBwLTBcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiYWRkU2VjdGlvbignQUJPVkUnLCAkZXZlbnQpXCI+PG1hdC1pY29uPmFkZDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxzZWN0aW9uIGNsYXNzPVwiaG92ZXItdGFiXCIgW25nQ2xhc3NdPVwieydhZGp1c3RQb3NpdGlvbic6IGlzTWVyZ2VkICYmIGluZGV4ID09IDF9XCIgY2RrRHJhZz5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGFicy1zZWN0aW9uXCIgW25nU3R5bGVdPVwieyd6LWluZGV4JyA6IGRhdGEuc2VjdGlvblR5cGUgPT09ICdoZWFkZXInID8gJzEwMDAwJyA6ICcxMDAnfVwiPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tbmFtZVwiIGNka0RyYWdIYW5kbGU+XHJcbiAgICAgICAgICAgICAgICB7eyBkYXRhPy5zZWN0aW9uTmFtZSB8fCAnU2VjdGlvbicgfX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZWRpdC1idG5cIiAoY2xpY2spPVwiZWRpdFNlY3Rpb24oKVwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxM1wiIGhlaWdodD1cIjEzXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImx1Y2lkZSBsdWNpZGUtcGVuY2lsXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMS4xNzQgNi44MTJhMSAxIDAgMCAwLTMuOTg2LTMuOTg3TDMuODQyIDE2LjE3NGEyIDIgMCAwIDAtLjUuODNsLTEuMzIxIDQuMzUyYS41LjUgMCAwIDAgLjYyMy42MjJsNC4zNTMtMS4zMmEyIDIgMCAwIDAgLjgzLS40OTd6XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJtMTUgNSA0IDRcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZWRpdC10ZXh0XCI+RWRpdDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImRhdGEuc2VjdGlvblR5cGUgIT0gJ2Zvb3RlcicgJiYgZGF0YS5zZWN0aW9uVHlwZSAhPSAnaGVhZGVyJyAmJiBkYXRhLnNlY3Rpb25UeXBlICE9ICdibG9nTGlzdCdcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJpY29uLWJ0blwiIChjbGljayk9XCJtb3ZlVXAoJGV2ZW50KVwiIFtkaXNhYmxlZF09XCJpbmRleCA9PSAxXCIgbWF0VG9vbHRpcD1cIk1vdmUgdXBcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPVwiMTggMTUgMTIgOSA2IDE1XCI+PC9wb2x5bGluZT5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJpY29uLWJ0blwiIChjbGljayk9XCJtb3ZlRG93bigkZXZlbnQpXCIgbWF0VG9vbHRpcD1cIk1vdmUgZG93blwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwb2x5bGluZSBwb2ludHM9XCI2IDkgMTIgMTUgMTggOVwiPjwvcG9seWxpbmU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiaWNvbi1idG4gbW9yZS1idG5cIiAoY2xpY2spPVwidG9nZ2xlTWVudSgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMVwiPjwvY2lyY2xlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNpcmNsZSBjeD1cIjE5XCIgY3k9XCIxMlwiIHI9XCIxXCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiNVwiIGN5PVwiMTJcIiByPVwiMVwiPjwvY2lyY2xlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpbXBvLWN1c3RvbS1tZW51IHB4LTIgcHktMVwiICpuZ0lmPVwiaXNNZW51T3BlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwibWVudS1pdGVtLWN1c3RvbVwiIChjbGljayk9XCJjaGFuZ2VDb250ZW50KCRldmVudCk7IGlzTWVudU9wZW4gPSBmYWxzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBjbGFzcz1cIm1lbnUtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIzXCIgeT1cIjNcIiB3aWR0aD1cIjdcIiBoZWlnaHQ9XCI3XCIgcng9XCIxXCI+PC9yZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIxNFwiIHk9XCIzXCIgd2lkdGg9XCI3XCIgaGVpZ2h0PVwiN1wiIHJ4PVwiMVwiPjwvcmVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMTRcIiB5PVwiMTRcIiB3aWR0aD1cIjdcIiBoZWlnaHQ9XCI3XCIgcng9XCIxXCI+PC9yZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIzXCIgeT1cIjE0XCIgd2lkdGg9XCI3XCIgaGVpZ2h0PVwiN1wiIHJ4PVwiMVwiPjwvcmVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWl0ZW0tdGV4dFwiPkNoYW5nZSBMYXlvdXQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxidXR0b24gY2xhc3M9XCJtZW51LWl0ZW0tY3VzdG9tXCIgKGNsaWNrKT1cInJlc3R5bGVTZWN0aW9uKCRldmVudCk7IGlzTWVudU9wZW4gPSBmYWxzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBjbGFzcz1cIm1lbnUtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJtMTIgMy0xLjkxMiA1LjgxM2EyIDIgMCAwIDEtMS4yNzUgMS4yNzVMMyAxMmw1LjgxMyAxLjkxMmEyIDIgMCAwIDEgMS4yNzUgMS4yNzVMMTIgMjFsMS45MTItNS44MTNhMiAyIDAgMCAxIDEuMjc1LTEuMjc1TDIxIDEybC01LjgxMy0xLjkxMmEyIDIgMCAwIDEtMS4yNzUtMS4yNzVMMTIgM1pcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5SZXN0eWxlIHdpdGggQUk8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFpLWJhZGdlXCI+QUk8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm1lbnUtaXRlbS1jdXN0b21cIiAoY2xpY2spPVwiZHVwbGljYXRlU2VjdGlvbigkZXZlbnQpOyBpc01lbnVPcGVuID0gZmFsc2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgY2xhc3M9XCJsdWNpZGUgbHVjaWRlLWNvcHkgbWVudS1pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNFwiIGhlaWdodD1cIjE0XCIgeD1cIjhcIiB5PVwiOFwiIHJ4PVwiMlwiIHJ5PVwiMlwiPjwvcmVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTQgMTZjLTEuMSAwLTItLjktMi0yVjRjMC0xLjEuOS0yIDItMmgxMGMxLjEgMCAyIC45IDIgMlwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWl0ZW0tdGV4dFwiPkR1cGxpY2F0ZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZW51LWRpdmlkZXJcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm1lbnUtaXRlbS1jdXN0b20gZGVsZXRlLWl0ZW1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRlbGV0ZVNlY3Rpb24oJGV2ZW50KTsgaXNNZW51T3BlbiA9IGZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51LWljb24gZGVsZXRlLWljb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPVwiMyA2IDUgNiAyMSA2XCI+PC9wb2x5bGluZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE5IDZ2MTRhMiAyIDAgMCAxLTIgMkg3YTIgMiAwIDAgMS0yLTJWNm0zIDBWNGEyIDIgMCAwIDEgMi0yaDRhMiAyIDAgMCAxIDIgMnYyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaW5lIHgxPVwiMTBcIiB5MT1cIjExXCIgeDI9XCIxMFwiIHkyPVwiMTdcIj48L2xpbmU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpbmUgeDE9XCIxNFwiIHkxPVwiMTFcIiB4Mj1cIjE0XCIgeTI9XCIxN1wiPjwvbGluZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkZWxldGUtdGV4dCBtZW51LWl0ZW0tdGV4dFwiPkRlbGV0ZSBTZWN0aW9uPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvc2VjdGlvbj5cclxuICAgIDxkaXYgY2xhc3M9XCJib3R0b20tYnRuXCJcclxuICAgICAgICAqbmdJZj1cImRhdGEuc2VjdGlvblR5cGUgIT0gJ2Zvb3RlcicgJiYgZGF0YS5zZWN0aW9uVHlwZSAhPSAnaGVhZGVyJyAmJiBkYXRhLnNlY3Rpb25UeXBlICE9ICdibG9nTGlzdCcgJiYgIWlzRWNvbW1lcmNlXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFkZF9idG4gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGJvcmRlci1yYWRpdXMtNTAgcC0wXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImFkZFNlY3Rpb24oJ0JFTE9XJywgJGV2ZW50KVwiPjxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbjwvbWF0LWRpYWxvZy1jb250ZW50PiJdfQ==
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG92ZXItZWxlbWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFhLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdkYsT0FBTyxFQUFFLE9BQU8sRUFBUyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7O0FBU3hELE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsWUFDVSxhQUE0QixFQUM1QixNQUFpQjtRQURqQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBR2pCLFNBQUksR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUkzRCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBTXRDLGVBQVUs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TixVQUFVLENBQUMsR0FBRyxFQUFFO29CQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQTtnQkFDaEIsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ1osQ0FBQztRQUVILENBQUMsQ0FDRixDQUFBO0lBRUgsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQVU7UUFDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDOytHQW5GVSxzQkFBc0I7bUdBQXRCLHNCQUFzQix5U0NqQm5DLG96TkErRnFCLHc2SERsRlQsYUFBYSxtTEFBRSxlQUFlLDBKQUFFLGFBQWEsOEJBQUUsWUFBWSxzVEFBdUIsT0FBTyx1Y0FBRSxnQkFBZ0I7OzRGQUkxRyxzQkFBc0I7a0JBUGxDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7MEdBVzVHLElBQUk7c0JBQWIsTUFBTTtnQkFDRSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQWNOLGVBQWU7c0JBRGQsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFkZFNlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9hZGQtc2VjdGlvbi9hZGQtc2VjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDZGtEcmFnLCBQb2ludCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzaW1wby1ob3Zlci1lbGVtZW50cycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTWF0SWNvbk1vZHVsZSwgTWF0RGlhbG9nTW9kdWxlLCBNYXRNZW51TW9kdWxlLCBDb21tb25Nb2R1bGUsIEFkZFNlY3Rpb25Db21wb25lbnQsIENka0RyYWcsIE1hdFRvb2x0aXBNb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIb3ZlckVsZW1lbnRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9ldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nXHJcbiAgKSB7IH1cclxuXHJcbiAgQE91dHB1dCgpIGVkaXQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuICBASW5wdXQoKSBkYXRhOiBhbnk7XHJcbiAgQElucHV0KCkgaW5kZXg6IGFueTtcclxuICBASW5wdXQoKSBlZGl0T3B0aW9ucz86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaXNNZXJnZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc0Vjb21tZXJjZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZGF0YSwgdGhpcy5pbmRleCwgdGhpcy5lZGl0T3B0aW9ucywgdGhpcy5pc01lcmdlZCwgdGhpcy5pc0Vjb21tZXJjZSk7XHJcbiAgfVxyXG5cclxuICBpc01lbnVPcGVuID0gZmFsc2U7XHJcblxyXG4gIHRvZ2dsZU1lbnUoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICB0aGlzLmlzTWVudU9wZW4gPSAhdGhpcy5pc01lbnVPcGVuO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25Eb2N1bWVudENsaWNrKCkge1xyXG4gICAgdGhpcy5pc01lbnVPcGVuID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBlZGl0U2VjdGlvbigpIHtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7IGRhdGE6IHRoaXMuZGF0YSB9KTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG5cclxuICByZXN0eWxlU2VjdGlvbihldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuY2xvc2VFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5yZXN0eWxlU2VjdGlvbi5lbWl0KHsgaW5kZXg6IHRoaXMuaW5kZXggfSk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIG1vdmVVcChldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuY2hhbmdlUG9zaXRpb24uZW1pdCh7IGluZGV4OiB0aGlzLmluZGV4LCBwb3NpdGlvbjogXCJVUFwiIH0pO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG4gIG1vdmVEb3duKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5jaGFuZ2VQb3NpdGlvbi5lbWl0KHsgaW5kZXg6IHRoaXMuaW5kZXgsIHBvc2l0aW9uOiBcIkRPV05cIiB9KTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuICBkZWxldGVTZWN0aW9uKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5kZWxldGUuZW1pdCh7IGluZGV4OiB0aGlzLmluZGV4IH0pO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBhZGRTZWN0aW9uKHBvc2l0aW9uOiBcIkFCT1ZFXCIgfCBcIkJFTE9XXCIsIGV2ZW50OiBhbnkpIHtcclxuICAgIC8vIHRoaXMuX2V2ZW50U2VydmljZS5hZGROZXdTZWN0aW9uQ2xpY2suZW1pdCh7IHN0YXR1czogdHJ1ZSwgaW5kZXg6IHRoaXMuaW5kZXgsIHBvc2l0aW9uOiBwb3NpdGlvbiwgd2ViQ29tcE5hbWU6dGhpcy5kYXRhfSk7XHJcbiAgICAvLyBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGxldCBkaWFsb2c6IGFueSA9IHRoaXMuZGlhbG9nLm9wZW4oQWRkU2VjdGlvbkNvbXBvbmVudCwgeyBwYW5lbENsYXNzOiBcImFkZC1zZWN0aW9uXCIsIGRhdGE6IHsgc3RhdHVzOiB0cnVlLCBpbmRleDogdGhpcy5pbmRleCwgcG9zaXRpb246IHBvc2l0aW9uIH0gfSlcclxuXHJcbiAgICBkaWFsb2cuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZShcclxuICAgICAgKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgY29uc3QgZGlhbG9nRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5hZGQtc2VjdGlvbicpIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGlmIChkaWFsb2dFbGVtZW50KSB7XHJcbiAgICAgICAgICBkaWFsb2dFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2Nsb3NpbmcnKTtcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBkaWFsb2cuY2xvc2UoKVxyXG4gICAgICAgICAgfSwgMTAwMDApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgZGlhbG9nLmNsb3NlKClcclxuICAgICAgICAgIH0sIDEwMDAwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcbiAgICApXHJcblxyXG4gIH1cclxuXHJcbiAgZHVwbGljYXRlU2VjdGlvbihldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuZHVwbGljYXRlLmVtaXQoeyBpbmRleDogdGhpcy5pbmRleCwgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwb2ludDogUG9pbnQgPSB7IHg6IDIwLCB5OiAtNTAgfTtcclxuXHJcblxyXG59XHJcbiIsIjxtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiICpuZ0lmPVwiZWRpdE9wdGlvbnNcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0b3AtYnRuXCIgW25nQ2xhc3NdPVwieydhZGp1c3QtdG9wLWJ0bic6IGlzTWVyZ2VkICYmIGluZGV4ID09IDF9XCJcclxuICAgICAgICAqbmdJZj1cImRhdGEuc2VjdGlvblR5cGUgIT0gJ2Zvb3RlcicgJiYgZGF0YS5zZWN0aW9uVHlwZSAhPSAnaGVhZGVyJyAmJiBkYXRhLnNlY3Rpb25UeXBlICE9ICdibG9nTGlzdCcgJiYgIWlzRWNvbW1lcmNlXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFkZF9idG5fdG9wIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBib3JkZXItcmFkaXVzLTUwIHAtMFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJhZGRTZWN0aW9uKCdBQk9WRScsICRldmVudClcIj48bWF0LWljb24+YWRkPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPHNlY3Rpb24gY2xhc3M9XCJob3Zlci10YWJcIiBbbmdDbGFzc109XCJ7J2FkanVzdFBvc2l0aW9uJzogaXNNZXJnZWQgJiYgaW5kZXggPT0gMX1cIiBjZGtEcmFnPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJzLXNlY3Rpb25cIiBbbmdTdHlsZV09XCJ7J3otaW5kZXgnIDogZGF0YS5zZWN0aW9uVHlwZSA9PT0gJ2hlYWRlcicgPyAnMTAwMDAnIDogJzEwMCd9XCI+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1uYW1lXCIgY2RrRHJhZ0hhbmRsZT5cclxuICAgICAgICAgICAgICAgIHt7IGRhdGE/LnNlY3Rpb25OYW1lIHx8ICdTZWN0aW9uJyB9fVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJlZGl0LWJ0blwiIChjbGljayk9XCJlZGl0U2VjdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEzXCIgaGVpZ2h0PVwiMTNcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibHVjaWRlIGx1Y2lkZS1wZW5jaWxcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIxLjE3NCA2LjgxMmExIDEgMCAwIDAtMy45ODYtMy45ODdMMy44NDIgMTYuMTc0YTIgMiAwIDAgMC0uNS44M2wtMS4zMjEgNC4zNTJhLjUuNSAwIDAgMCAuNjIzLjYyMmw0LjM1My0xLjMyYTIgMiAwIDAgMCAuODMtLjQ5N3pcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIm0xNSA1IDQgNFwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlZGl0LXRleHRcIj5FZGl0PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZGF0YS5zZWN0aW9uVHlwZSAhPSAnZm9vdGVyJyAmJiBkYXRhLnNlY3Rpb25UeXBlICE9ICdoZWFkZXInICYmIGRhdGEuc2VjdGlvblR5cGUgIT0gJ2Jsb2dMaXN0J1wiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImljb24tYnRuXCIgKGNsaWNrKT1cIm1vdmVVcCgkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImluZGV4ID09IDFcIiBtYXRUb29sdGlwPVwiTW92ZSB1cFwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwb2x5bGluZSBwb2ludHM9XCIxOCAxNSAxMiA5IDYgMTVcIj48L3BvbHlsaW5lPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImljb24tYnRuXCIgKGNsaWNrKT1cIm1vdmVEb3duKCRldmVudClcIiBtYXRUb29sdGlwPVwiTW92ZSBkb3duXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBvbHlsaW5lIHBvaW50cz1cIjYgOSAxMiAxNSAxOCA5XCI+PC9wb2x5bGluZT5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1yZWxhdGl2ZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJpY29uLWJ0biBtb3JlLWJ0blwiIChjbGljayk9XCJ0b2dnbGVNZW51KCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIxXCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTlcIiBjeT1cIjEyXCIgcj1cIjFcIj48L2NpcmNsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgY3g9XCI1XCIgY3k9XCIxMlwiIHI9XCIxXCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2ltcG8tY3VzdG9tLW1lbnUgcHgtMiBweS0xXCIgKm5nSWY9XCJpc01lbnVPcGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGJ1dHRvbiBjbGFzcz1cIm1lbnUtaXRlbS1jdXN0b21cIiAoY2xpY2spPVwicmVzdHlsZVNlY3Rpb24oJGV2ZW50KTsgaXNNZW51T3BlbiA9IGZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGNsYXNzPVwibWVudS1pY29uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIm0xMiAzLTEuOTEyIDUuODEzYTIgMiAwIDAgMS0xLjI3NSAxLjI3NUwzIDEybDUuODEzIDEuOTEyYTIgMiAwIDAgMSAxLjI3NSAxLjI3NUwxMiAyMWwxLjkxMi01LjgxM2EyIDIgMCAwIDEgMS4yNzUtMS4yNzVMMjEgMTJsLTUuODEzLTEuOTEyYTIgMiAwIDAgMS0xLjI3NS0xLjI3NUwxMiAzWlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlJlc3R5bGUgd2l0aCBBSTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWktYmFkZ2VcIj5BSTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwibWVudS1pdGVtLWN1c3RvbVwiIChjbGljayk9XCJkdXBsaWNhdGVTZWN0aW9uKCRldmVudCk7IGlzTWVudU9wZW4gPSBmYWxzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNFwiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBjbGFzcz1cImx1Y2lkZSBsdWNpZGUtY29weSBtZW51LWljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiOFwiIHk9XCI4XCIgcng9XCIyXCIgcnk9XCIyXCI+PC9yZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNCAxNmMtMS4xIDAtMi0uOS0yLTJWNGMwLTEuMS45LTIgMi0yaDEwYzEuMSAwIDIgLjkgMiAyXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtaXRlbS10ZXh0XCI+RHVwbGljYXRlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtZGl2aWRlclwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwibWVudS1pdGVtLWN1c3RvbSBkZWxldGUtaXRlbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlU2VjdGlvbigkZXZlbnQpOyBpc01lbnVPcGVuID0gZmFsc2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1lbnUtaWNvbiBkZWxldGUtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwb2x5bGluZSBwb2ludHM9XCIzIDYgNSA2IDIxIDZcIj48L3BvbHlsaW5lPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTkgNnYxNGEyIDIgMCAwIDEtMiAySDdhMiAyIDAgMCAxLTItMlY2bTMgMFY0YTIgMiAwIDAgMSAyLTJoNGEyIDIgMCAwIDEgMiAydjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpbmUgeDE9XCIxMFwiIHkxPVwiMTFcIiB4Mj1cIjEwXCIgeTI9XCIxN1wiPjwvbGluZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGluZSB4MT1cIjE0XCIgeTE9XCIxMVwiIHgyPVwiMTRcIiB5Mj1cIjE3XCI+PC9saW5lPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRlbGV0ZS10ZXh0IG1lbnUtaXRlbS10ZXh0XCI+RGVsZXRlIFNlY3Rpb248L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9zZWN0aW9uPlxyXG4gICAgPGRpdiBjbGFzcz1cImJvdHRvbS1idG5cIlxyXG4gICAgICAgICpuZ0lmPVwiZGF0YS5zZWN0aW9uVHlwZSAhPSAnZm9vdGVyJyAmJiBkYXRhLnNlY3Rpb25UeXBlICE9ICdoZWFkZXInICYmIGRhdGEuc2VjdGlvblR5cGUgIT0gJ2Jsb2dMaXN0JyAmJiAhaXNFY29tbWVyY2VcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWRkX2J0biBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgYm9yZGVyLXJhZGl1cy01MCBwLTBcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiYWRkU2VjdGlvbignQkVMT1cnLCAkZXZlbnQpXCI+PG1hdC1pY29uPmFkZDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuPC9tYXQtZGlhbG9nLWNvbnRlbnQ+Il19
|
|
@@ -24,6 +24,12 @@ export class ButtonDirectiveDirective {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
applyButtonType(style, backgroundInfo) {
|
|
27
|
+
// Reset every property any variant branch below might set, so switching
|
|
28
|
+
// variants never leaves a previous variant's inline styling behind.
|
|
29
|
+
this.el.nativeElement.style.removeProperty('padding');
|
|
30
|
+
this.el.nativeElement.style.removeProperty('border');
|
|
31
|
+
this.el.nativeElement.style.removeProperty('background-clip');
|
|
32
|
+
this.el.nativeElement.style.removeProperty('-webkit-background-clip');
|
|
27
33
|
if (style?.type === 'Solid') {
|
|
28
34
|
if (style?.colorType === 'Gradient') {
|
|
29
35
|
const direction = GradientDirection[style.gradientDirection || GradientDirection.DOWN];
|
|
@@ -159,4 +165,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
159
165
|
type: HostListener,
|
|
160
166
|
args: ['mouseleave']
|
|
161
167
|
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWRpcmVjdGl2ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2RpcmVjdGl2ZS9idXR0b24tZGlyZWN0aXZlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBS3JHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFNcEQsTUFBTSxPQUFPLHdCQUF3QjtJQU1uQyxZQUFvQixFQUFjLEVBQ3hCLFlBQTJCO1FBRGpCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQWU7UUFKNUIsZ0JBQVcsR0FBWSxDQUFDLENBQUM7UUFLaEMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUE7SUFDL0IsQ0FBQztJQUdELFdBQVc7UUFDVCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyx1QkFBdUIsRUFBRSxXQUFXLEVBQUUsQ0FBQTtJQUM3QyxDQUFDO0lBRUQsdUJBQXVCO1FBQ3JCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUNELGVBQWUsQ0FBQyxLQUF1QixFQUFFLGNBQWdDO1FBQ3ZFLElBQUksS0FBSyxFQUFFLElBQUksS0FBTSxPQUF1QixFQUFFLENBQUM7WUFDN0MsSUFBSSxLQUFLLEVBQUUsU0FBUyxLQUFNLFVBQThCLEVBQUUsQ0FBQztnQkFDekQsTUFBTSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGlCQUE4RCxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNwSSxNQUFNLGFBQWEsR0FBRyxTQUFTLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsU0FBUyxJQUFJLEtBQUssRUFBRSxVQUFVLElBQUksS0FBSyxFQUFFLG1CQUFtQixHQUFHLENBQUMsQ0FBQztvQkFDOUksbUJBQW1CLEtBQUssRUFBRSxVQUFVLElBQUksS0FBSyxFQUFFLG1CQUFtQixHQUFHLENBQUM7Z0JBQ3hFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUNyRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUMxRCxPQUFPO1lBQ1QsQ0FBQztZQUVELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztZQUN6RSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDckUsQ0FBQzthQUNJLElBQUksS0FBSyxFQUFFLElBQUksS0FBTSxNQUFzQixFQUFFLENBQUM7WUFDakQsSUFBSSxLQUFLLEVBQUUsU0FBUyxLQUFNLFVBQThCLEVBQUUsQ0FBQztnQkFDekQsTUFBTSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLGlCQUE4RCxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNySSxNQUFNLGFBQWEsR0FBRyxTQUFTLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsU0FBUyxJQUFJLEtBQUssRUFBRSxVQUFVLElBQUksS0FBSyxFQUFFLG1CQUFtQixHQUFHLENBQUMsQ0FBQztvQkFDOUksbUJBQW1CLEtBQUssRUFBRSxVQUFVLElBQUksS0FBSyxFQUFFLG1CQUFtQixHQUFHLENBQUM7Z0JBQ3hFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUNyRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUNuRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLHlCQUF5QixFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUMzRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztnQkFDaEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUN4RSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDckIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFBO29CQUN2RSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQztvQkFDckUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNyRSxDQUFDO2dCQUNELE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFBO1lBQ3ZFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNwRSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFBO2dCQUN2RSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUM7Z0JBQy9FLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUNyRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztZQUMvRSxDQUFDO1FBQ0gsQ0FBQzthQUNJLENBQUM7WUFDSixJQUFJLEtBQUssRUFBRSxTQUFTLEtBQU0sVUFBOEIsRUFBRSxDQUFDO2dCQUN6RCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxhQUFhLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUNwRixNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsaUJBQThELElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3JJLE1BQU0sYUFBYSxHQUFHLFNBQVMsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixTQUFTLElBQUksS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLEVBQUUsbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO29CQUM5SSxtQkFBbUIsS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLEVBQUUsbUJBQW1CLEdBQUcsQ0FBQztnQkFDeEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7Z0JBQ3JFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMseUJBQXlCLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzNFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUNoRSxPQUFPO1lBQ1QsQ0FBQztZQUNELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLGFBQWEsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7WUFDcEYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ25FLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQztnQkFDckUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNuRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxhQUFhLEtBQUssRUFBRSxTQUFTLEdBQUcsQ0FBQyxDQUFDO1lBQ3RGLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQXVCO1FBQ3RDLElBQUksS0FBSyxFQUFFLElBQUksS0FBTSxNQUFzQjtZQUN6QyxPQUFPO1FBQ1QsSUFBSSxLQUFLLEVBQUUsS0FBSyxLQUFNLE9BQXdCLEVBQUUsQ0FBQztZQUMvQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuRSxDQUFDO2FBQU0sSUFBSSxLQUFLLEVBQUUsS0FBSyxLQUFNLE9BQXdCLEVBQUUsQ0FBQztZQUN0RCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuRSxDQUFDO2FBQ0ksQ0FBQztZQUNKLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWU7UUFDMUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxDQUFDLGtDQUFrQztZQUN6RCxNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUMsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzVDLE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1QyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBRXhELE9BQU8sVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDeEQsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFBO0lBQ25CLENBQUM7SUFHRCxzQkFBc0I7UUFDcEIsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDOUYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDaEUsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTyxFQUFFLEtBQXVCLEVBQUUsY0FBK0I7UUFFakYsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDcEMsSUFBSSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1lBQzlDLENBQUM7WUFDRCxJQUFJLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUMyQixPQUFPO1FBQ2pDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLEtBQU0sTUFBc0I7WUFDcEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsaUZBQWlGLENBQUMsQ0FBQztRQUMzSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFMkIsT0FBTztRQUNqQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxDQUFDOytHQW5KVSx3QkFBd0I7bUdBQXhCLHdCQUF3Qjs7NEZBQXhCLHdCQUF3QjtrQkFKcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7MkdBRVUsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQXNJc0IsT0FBTztzQkFBbEMsWUFBWTt1QkFBQyxZQUFZO2dCQU1FLE9BQU87c0JBQWxDLFlBQVk7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhY2tncm91bmRNb2RlbCwgQnV0dG9uU3R5bGVNb2RlbCB9IGZyb20gJy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IEJBQ0tHUk9VTkRfVFlQRSwgQlVUVE9OX1NIQVBFLCBCVVRUT05fVFlQRSB9IGZyb20gJy4uL3N0eWxlcy90eXBlcyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBHcmFkaWVudERpcmVjdGlvbiB9IGZyb20gJy4uL3N0eWxlcy9pbmRleCc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tzaW1wb0J1dHRvbkRpcmVjdGl2ZV0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvbkRpcmVjdGl2ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCkgYnV0dG9uU3R5bGU/OiBCdXR0b25TdHlsZU1vZGVsO1xyXG4gIEBJbnB1dCgpIGNvbG9yPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNjcm9sbFZhbHVlPzogbnVtYmVyID0gMDtcclxuICBASW5wdXQoKSBiYWNrZ3JvdW5kSW5mbz86IEJhY2tncm91bmRNb2RlbDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLmJ1dHRvblN0eWxlQ2hhbmdlQ2hlY2soKVxyXG4gIH1cclxuXHJcblxyXG4gIG5nT25DaGFuZ2VzKCkge1xyXG4gICAgdGhpcy5hcHBseUJ1dHRvblN0eWxlQ2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmJ1dHRvblN0eWxlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpXHJcbiAgfVxyXG5cclxuICBhcHBseUJ1dHRvblN0eWxlQ2hhbmdlcygpIHtcclxuICAgIGlmICh0aGlzLmJ1dHRvblN0eWxlPy50eXBlKSB7XHJcbiAgICAgIHRoaXMuYXBwbHlCdXR0b25UeXBlKHRoaXMuYnV0dG9uU3R5bGUsIHRoaXMuYmFja2dyb3VuZEluZm8pO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYnV0dG9uU3R5bGU/LnNoYXBlKSB7XHJcbiAgICAgIHRoaXMuYXBwbHlCdXR0b25TaGFwZSh0aGlzLmJ1dHRvblN0eWxlKTtcclxuICAgIH1cclxuICB9XHJcbiAgYXBwbHlCdXR0b25UeXBlKHN0eWxlOiBCdXR0b25TdHlsZU1vZGVsLCBiYWNrZ3JvdW5kSW5mbz86IEJhY2tncm91bmRNb2RlbCkge1xyXG4gICAgaWYgKHN0eWxlPy50eXBlID09PSAoJ1NvbGlkJyBhcyBCVVRUT05fVFlQRSkpIHtcclxuICAgICAgaWYgKHN0eWxlPy5jb2xvclR5cGUgPT09ICgnR3JhZGllbnQnIGFzIEJBQ0tHUk9VTkRfVFlQRSkpIHtcclxuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSBHcmFkaWVudERpcmVjdGlvbltzdHlsZS5ncmFkaWVudERpcmVjdGlvbiBhcyB1bmtub3duIGFzIGtleW9mIHR5cGVvZiBHcmFkaWVudERpcmVjdGlvbiB8fCBHcmFkaWVudERpcmVjdGlvbi5ET1dOXTtcclxuICAgICAgICBjb25zdCBncmFkaWVudENvbG9yID0gZGlyZWN0aW9uICE9IEdyYWRpZW50RGlyZWN0aW9uLkRPV04gPyBgbGluZWFyLWdyYWRpZW50KCR7ZGlyZWN0aW9ufSwke3N0eWxlPy5iYWNrZ3JvdW5kfSwke3N0eWxlPy5zZWNvbmRhcnlCYWNrZ3JvdW5kfSlgIDpcclxuICAgICAgICAgIGBsaW5lYXItZ3JhZGllbnQoJHtzdHlsZT8uYmFja2dyb3VuZH0sJHtzdHlsZT8uc2Vjb25kYXJ5QmFja2dyb3VuZH0pYDtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQnLCBncmFkaWVudENvbG9yKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgc3R5bGU/LnRleHRDb2xvcik7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCBgbm9uZWApO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJywgc3R5bGU/LmJhY2tncm91bmQpO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgc3R5bGU/LnRleHRDb2xvcik7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChzdHlsZT8udHlwZSA9PT0gKCdUZXh0JyBhcyBCVVRUT05fVFlQRSkpIHtcclxuICAgICAgaWYgKHN0eWxlPy5jb2xvclR5cGUgPT09ICgnR3JhZGllbnQnIGFzIEJBQ0tHUk9VTkRfVFlQRSkpIHtcclxuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSBHcmFkaWVudERpcmVjdGlvbltzdHlsZT8uZ3JhZGllbnREaXJlY3Rpb24gYXMgdW5rbm93biBhcyBrZXlvZiB0eXBlb2YgR3JhZGllbnREaXJlY3Rpb24gfHwgR3JhZGllbnREaXJlY3Rpb24uRE9XTl07XHJcbiAgICAgICAgY29uc3QgZ3JhZGllbnRDb2xvciA9IGRpcmVjdGlvbiAhPSBHcmFkaWVudERpcmVjdGlvbi5ET1dOID8gYGxpbmVhci1ncmFkaWVudCgke2RpcmVjdGlvbn0sJHtzdHlsZT8uYmFja2dyb3VuZH0sJHtzdHlsZT8uc2Vjb25kYXJ5QmFja2dyb3VuZH0pYCA6XHJcbiAgICAgICAgICBgbGluZWFyLWdyYWRpZW50KCR7c3R5bGU/LmJhY2tncm91bmR9LCR7c3R5bGU/LnNlY29uZGFyeUJhY2tncm91bmR9KWA7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJywgZ3JhZGllbnRDb2xvcik7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNsaXAnLCAndGV4dCcpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAnLCAndGV4dCcpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCAndHJhbnNwYXJlbnQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JvcmRlcicsICd1bnNldCcsICdpbXBvcnRhbnQnKTtcclxuICAgICAgICBpZiAodGhpcy5zY3JvbGxWYWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCAndW5zZXQnLCAnaW1wb3J0YW50JylcclxuICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsICd0cmFuc3BhcmVudCcpO1xyXG4gICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHN0eWxlPy50ZXh0Q29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCAndW5zZXQnLCAnaW1wb3J0YW50JylcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJywgJ3RyYW5zcGFyZW50Jyk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgncGFkZGluZycsICcwcHgnKTtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHN0eWxlPy5iYWNrZ3JvdW5kKTtcclxuICAgICAgaWYgKHRoaXMuc2Nyb2xsVmFsdWUpIHtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JvcmRlcicsICd1bnNldCcsICdpbXBvcnRhbnQnKVxyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyLXJhZGl1cycsICd1bnNldCcsICdpbXBvcnRhbnQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQnLCAndHJhbnNwYXJlbnQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgc3R5bGU/LnNlY29uZGFyeUJhY2tncm91bmQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgaWYgKHN0eWxlPy5jb2xvclR5cGUgPT09ICgnR3JhZGllbnQnIGFzIEJBQ0tHUk9VTkRfVFlQRSkpIHtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JvcmRlcicsIGAycHggc29saWQgJHtzdHlsZT8uYmFja2dyb3VuZH1gKTtcclxuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSBHcmFkaWVudERpcmVjdGlvbltzdHlsZT8uZ3JhZGllbnREaXJlY3Rpb24gYXMgdW5rbm93biBhcyBrZXlvZiB0eXBlb2YgR3JhZGllbnREaXJlY3Rpb24gfHwgR3JhZGllbnREaXJlY3Rpb24uRE9XTl07XHJcbiAgICAgICAgY29uc3QgZ3JhZGllbnRDb2xvciA9IGRpcmVjdGlvbiAhPSBHcmFkaWVudERpcmVjdGlvbi5ET1dOID8gYGxpbmVhci1ncmFkaWVudCgke2RpcmVjdGlvbn0sJHtzdHlsZT8uYmFja2dyb3VuZH0sJHtzdHlsZT8uc2Vjb25kYXJ5QmFja2dyb3VuZH0pYCA6XHJcbiAgICAgICAgICBgbGluZWFyLWdyYWRpZW50KCR7c3R5bGU/LmJhY2tncm91bmR9LCR7c3R5bGU/LnNlY29uZGFyeUJhY2tncm91bmR9KWA7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJywgZ3JhZGllbnRDb2xvcik7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNsaXAnLCAndGV4dCcpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXAnLCAndGV4dCcpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCAndHJhbnNwYXJlbnQnKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCBgMnB4IHNvbGlkICR7c3R5bGU/LmJhY2tncm91bmR9YCk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsICd0cmFuc3BhcmVudCcpO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgc3R5bGU/LnRleHRDb2xvcik7XHJcbiAgICAgIGlmICh0aGlzLnNjcm9sbFZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJywgXCJ0cmFuc3BhcmVudFwiKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgc3R5bGU/LnRleHRDb2xvcik7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCBgMnB4IHNvbGlkICR7c3R5bGU/LnRleHRDb2xvcn0gYCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFwcGx5QnV0dG9uU2hhcGUoc3R5bGU6IEJ1dHRvblN0eWxlTW9kZWwpIHtcclxuICAgIGlmIChzdHlsZT8udHlwZSA9PT0gKCdUZXh0JyBhcyBCVVRUT05fVFlQRSkpXHJcbiAgICAgIHJldHVybjtcclxuICAgIGlmIChzdHlsZT8uc2hhcGUgPT09ICgnUm91bmQnIGFzIEJVVFRPTl9TSEFQRSkpIHtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXItcmFkaXVzJywgJzk5cHgnKTtcclxuICAgIH0gZWxzZSBpZiAoc3R5bGU/LnNoYXBlID09PSAoJ0N1cnZlJyBhcyBCVVRUT05fU0hBUEUpKSB7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyLXJhZGl1cycsICcxMnB4Jyk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXItcmFkaXVzJywgJzBweCcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0VGV4dENvbG9yKGJnQ29sb3I6IHN0cmluZykge1xyXG4gICAgaWYgKGJnQ29sb3IpIHtcclxuICAgICAgY29uc3QgdGhyZXNob2xkID0gMTMwOyAvLyBBZGp1c3QgdGhpcyB0aHJlc2hvbGQgYXMgbmVlZGVkXHJcbiAgICAgIGNvbnN0IHIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDEsIDMpLCAxNik7XHJcbiAgICAgIGNvbnN0IGcgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDMsIDUpLCAxNik7XHJcbiAgICAgIGNvbnN0IGIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDUsIDcpLCAxNik7XHJcbiAgICAgIGNvbnN0IGJyaWdodG5lc3MgPSAociAqIDI5OSArIGcgKiA1ODcgKyBiICogMTE0KSAvIDEwMDA7XHJcblxyXG4gICAgICByZXR1cm4gYnJpZ2h0bmVzcyA+IHRocmVzaG9sZCA/ICcjMDAwMDAwJyA6ICcjZmZmZmZmJztcclxuICAgIH1cclxuICAgIHJldHVybiBcIiNmZmZmZmY7XCJcclxuICB9XHJcblxyXG4gIGJ1dHRvblN0eWxlU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xyXG4gIGJ1dHRvblN0eWxlQ2hhbmdlQ2hlY2soKSB7XHJcbiAgICB0aGlzLmJ1dHRvblN0eWxlU3Vic2NyaXB0aW9uID0gdGhpcy5ldmVudFNlcnZpY2UuYnV0dG9uU3R5bGVDaGFuZ2VDaGVja3Muc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLmNoYW5nZUJ1dHRvblN0eWxlKHJlcy5pZCwgcmVzLnN0eWxlLCByZXMuYmFja2dyb3VuZEluZm8pO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGNoYW5nZUJ1dHRvblN0eWxlKGlkOiBhbnksIHN0eWxlOiBCdXR0b25TdHlsZU1vZGVsLCBiYWNrZ3JvdW5kSW5mbzogQmFja2dyb3VuZE1vZGVsKSB7XHJcblxyXG4gICAgaWYgKHRoaXMuZWwubmF0aXZlRWxlbWVudC5pZCA9PT0gaWQpIHtcclxuICAgICAgaWYgKHN0eWxlPy50eXBlKSB7XHJcbiAgICAgICAgdGhpcy5hcHBseUJ1dHRvblR5cGUoc3R5bGUsIGJhY2tncm91bmRJbmZvKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoc3R5bGU/LnNoYXBlKSB7XHJcbiAgICAgICAgdGhpcy5hcHBseUJ1dHRvblNoYXBlKHN0eWxlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJykgb25Ib3ZlcigpIHtcclxuICAgIGlmICh0aGlzLmJ1dHRvblN0eWxlPy50eXBlICE9PSAoJ1RleHQnIGFzIEJVVFRPTl9UWVBFKSlcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3gtc2hhZG93JywgJ3JnYmEoNTAsIDUwLCA5MywgMC4yNSkgMHB4IDEzcHggMjdweCAtNXB4LCByZ2JhKDAsIDAsIDAsIDAuMykgMHB4IDhweCAxNnB4IC04cHgnKTtcclxuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZVkoLTVweCknKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKSBvbkxlYXZlKCkge1xyXG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3gtc2hhZG93JywgJ25vbmUnKTtcclxuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgndHJhbnNmb3JtJywgJ3Vuc2V0Jyk7XHJcbiAgfVxyXG59Il19
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWRpcmVjdGl2ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2RpcmVjdGl2ZS9idXR0b24tZGlyZWN0aXZlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBS3JHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFNcEQsTUFBTSxPQUFPLHdCQUF3QjtJQU1uQyxZQUFvQixFQUFjLEVBQ3hCLFlBQTJCO1FBRGpCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQWU7UUFKNUIsZ0JBQVcsR0FBWSxDQUFDLENBQUM7UUFLaEMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUE7SUFDL0IsQ0FBQztJQUdELFdBQVc7UUFDVCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyx1QkFBdUIsRUFBRSxXQUFXLEVBQUUsQ0FBQTtJQUM3QyxDQUFDO0lBRUQsdUJBQXVCO1FBQ3JCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUNELGVBQWUsQ0FBQyxLQUF1QixFQUFFLGNBQWdDO1FBQ3ZFLHdFQUF3RTtRQUN4RSxvRUFBb0U7UUFDcEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFFdEUsSUFBSSxLQUFLLEVBQUUsSUFBSSxLQUFNLE9BQXVCLEVBQUUsQ0FBQztZQUM3QyxJQUFJLEtBQUssRUFBRSxTQUFTLEtBQU0sVUFBOEIsRUFBRSxDQUFDO2dCQUN6RCxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsaUJBQThELElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3BJLE1BQU0sYUFBYSxHQUFHLFNBQVMsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixTQUFTLElBQUksS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLEVBQUUsbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO29CQUM5SSxtQkFBbUIsS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLEVBQUUsbUJBQW1CLEdBQUcsQ0FBQztnQkFDeEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7Z0JBQ3JFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztnQkFDbkUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzFELE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3pFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNyRSxDQUFDO2FBQ0ksSUFBSSxLQUFLLEVBQUUsSUFBSSxLQUFNLE1BQXNCLEVBQUUsQ0FBQztZQUNqRCxJQUFJLEtBQUssRUFBRSxTQUFTLEtBQU0sVUFBOEIsRUFBRSxDQUFDO2dCQUN6RCxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsaUJBQThELElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3JJLE1BQU0sYUFBYSxHQUFHLFNBQVMsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixTQUFTLElBQUksS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLEVBQUUsbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO29CQUM5SSxtQkFBbUIsS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLEVBQUUsbUJBQW1CLEdBQUcsQ0FBQztnQkFDeEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7Z0JBQ3JFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMseUJBQXlCLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzNFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUNoRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUM7Z0JBQ3hFLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNyQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUE7b0JBQ3ZFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO29CQUNyRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ3JFLENBQUM7Z0JBQ0QsT0FBTztZQUNULENBQUM7WUFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUE7WUFDdkUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3BFLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUE7Z0JBQ3ZFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDL0UsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7Z0JBQ3JFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1lBQy9FLENBQUM7UUFDSCxDQUFDO2FBQ0ksQ0FBQztZQUNKLElBQUksS0FBSyxFQUFFLFNBQVMsS0FBTSxVQUE4QixFQUFFLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLGFBQWEsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQ3BGLE1BQU0sU0FBUyxHQUFHLGlCQUFpQixDQUFDLEtBQUssRUFBRSxpQkFBOEQsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDckksTUFBTSxhQUFhLEdBQUcsU0FBUyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsbUJBQW1CLFNBQVMsSUFBSSxLQUFLLEVBQUUsVUFBVSxJQUFJLEtBQUssRUFBRSxtQkFBbUIsR0FBRyxDQUFDLENBQUM7b0JBQzlJLG1CQUFtQixLQUFLLEVBQUUsVUFBVSxJQUFJLEtBQUssRUFBRSxtQkFBbUIsR0FBRyxDQUFDO2dCQUN4RSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQztnQkFDckUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDbkUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyx5QkFBeUIsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDM0UsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUM7Z0JBQ2hFLE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsYUFBYSxLQUFLLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUNwRixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDbkUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUNyRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLGFBQWEsS0FBSyxFQUFFLFNBQVMsR0FBRyxDQUFDLENBQUM7WUFDdEYsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBdUI7UUFDdEMsSUFBSSxLQUFLLEVBQUUsSUFBSSxLQUFNLE1BQXNCO1lBQ3pDLE9BQU87UUFDVCxJQUFJLEtBQUssRUFBRSxLQUFLLEtBQU0sT0FBd0IsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25FLENBQUM7YUFBTSxJQUFJLEtBQUssRUFBRSxLQUFLLEtBQU0sT0FBd0IsRUFBRSxDQUFDO1lBQ3RELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25FLENBQUM7YUFDSSxDQUFDO1lBQ0osSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEUsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZTtRQUMxQixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLENBQUMsa0NBQWtDO1lBQ3pELE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1QyxNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUMsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzVDLE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7WUFFeEQsT0FBTyxVQUFVLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUE7SUFDbkIsQ0FBQztJQUdELHNCQUFzQjtRQUNwQixJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUM5RixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPLEVBQUUsS0FBdUIsRUFBRSxjQUErQjtRQUVqRixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNwQyxJQUFJLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFDOUMsQ0FBQztZQUNELElBQUksS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO2dCQUNqQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0IsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBQzJCLE9BQU87UUFDakMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksS0FBTSxNQUFzQjtZQUNwRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxpRkFBaUYsQ0FBQyxDQUFDO1FBQzNJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUUyQixPQUFPO1FBQ2pDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7K0dBMUpVLHdCQUF3QjttR0FBeEIsd0JBQXdCOzs0RkFBeEIsd0JBQXdCO2tCQUpwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsyR0FFVSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBNklzQixPQUFPO3NCQUFsQyxZQUFZO3VCQUFDLFlBQVk7Z0JBTUUsT0FBTztzQkFBbEMsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBCdXR0b25TdHlsZU1vZGVsIH0gZnJvbSAnLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgQkFDS0dST1VORF9UWVBFLCBCVVRUT05fU0hBUEUsIEJVVFRPTl9UWVBFIH0gZnJvbSAnLi4vc3R5bGVzL3R5cGVzJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEdyYWRpZW50RGlyZWN0aW9uIH0gZnJvbSAnLi4vc3R5bGVzL2luZGV4JztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NpbXBvQnV0dG9uRGlyZWN0aXZlXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQnV0dG9uRGlyZWN0aXZlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBidXR0b25TdHlsZT86IEJ1dHRvblN0eWxlTW9kZWw7XHJcbiAgQElucHV0KCkgY29sb3I/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2Nyb2xsVmFsdWU/OiBudW1iZXIgPSAwO1xyXG4gIEBJbnB1dCgpIGJhY2tncm91bmRJbmZvPzogQmFja2dyb3VuZE1vZGVsO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2UpIHtcclxuICAgIHRoaXMuYnV0dG9uU3R5bGVDaGFuZ2VDaGVjaygpXHJcbiAgfVxyXG5cclxuXHJcbiAgbmdPbkNoYW5nZXMoKSB7XHJcbiAgICB0aGlzLmFwcGx5QnV0dG9uU3R5bGVDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuYnV0dG9uU3R5bGVTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKClcclxuICB9XHJcblxyXG4gIGFwcGx5QnV0dG9uU3R5bGVDaGFuZ2VzKCkge1xyXG4gICAgaWYgKHRoaXMuYnV0dG9uU3R5bGU/LnR5cGUpIHtcclxuICAgICAgdGhpcy5hcHBseUJ1dHRvblR5cGUodGhpcy5idXR0b25TdHlsZSwgdGhpcy5iYWNrZ3JvdW5kSW5mbyk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5idXR0b25TdHlsZT8uc2hhcGUpIHtcclxuICAgICAgdGhpcy5hcHBseUJ1dHRvblNoYXBlKHRoaXMuYnV0dG9uU3R5bGUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBhcHBseUJ1dHRvblR5cGUoc3R5bGU6IEJ1dHRvblN0eWxlTW9kZWwsIGJhY2tncm91bmRJbmZvPzogQmFja2dyb3VuZE1vZGVsKSB7XHJcbiAgICAvLyBSZXNldCBldmVyeSBwcm9wZXJ0eSBhbnkgdmFyaWFudCBicmFuY2ggYmVsb3cgbWlnaHQgc2V0LCBzbyBzd2l0Y2hpbmdcclxuICAgIC8vIHZhcmlhbnRzIG5ldmVyIGxlYXZlcyBhIHByZXZpb3VzIHZhcmlhbnQncyBpbmxpbmUgc3R5bGluZyBiZWhpbmQuXHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJ3BhZGRpbmcnKTtcclxuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnYm9yZGVyJyk7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJ2JhY2tncm91bmQtY2xpcCcpO1xyXG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctd2Via2l0LWJhY2tncm91bmQtY2xpcCcpO1xyXG5cclxuICAgIGlmIChzdHlsZT8udHlwZSA9PT0gKCdTb2xpZCcgYXMgQlVUVE9OX1RZUEUpKSB7XHJcbiAgICAgIGlmIChzdHlsZT8uY29sb3JUeXBlID09PSAoJ0dyYWRpZW50JyBhcyBCQUNLR1JPVU5EX1RZUEUpKSB7XHJcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gR3JhZGllbnREaXJlY3Rpb25bc3R5bGUuZ3JhZGllbnREaXJlY3Rpb24gYXMgdW5rbm93biBhcyBrZXlvZiB0eXBlb2YgR3JhZGllbnREaXJlY3Rpb24gfHwgR3JhZGllbnREaXJlY3Rpb24uRE9XTl07XHJcbiAgICAgICAgY29uc3QgZ3JhZGllbnRDb2xvciA9IGRpcmVjdGlvbiAhPSBHcmFkaWVudERpcmVjdGlvbi5ET1dOID8gYGxpbmVhci1ncmFkaWVudCgke2RpcmVjdGlvbn0sJHtzdHlsZT8uYmFja2dyb3VuZH0sJHtzdHlsZT8uc2Vjb25kYXJ5QmFja2dyb3VuZH0pYCA6XHJcbiAgICAgICAgICBgbGluZWFyLWdyYWRpZW50KCR7c3R5bGU/LmJhY2tncm91bmR9LCR7c3R5bGU/LnNlY29uZGFyeUJhY2tncm91bmR9KWA7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJywgZ3JhZGllbnRDb2xvcik7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHN0eWxlPy50ZXh0Q29sb3IpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyJywgYG5vbmVgKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsIHN0eWxlPy5iYWNrZ3JvdW5kKTtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHN0eWxlPy50ZXh0Q29sb3IpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoc3R5bGU/LnR5cGUgPT09ICgnVGV4dCcgYXMgQlVUVE9OX1RZUEUpKSB7XHJcbiAgICAgIGlmIChzdHlsZT8uY29sb3JUeXBlID09PSAoJ0dyYWRpZW50JyBhcyBCQUNLR1JPVU5EX1RZUEUpKSB7XHJcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gR3JhZGllbnREaXJlY3Rpb25bc3R5bGU/LmdyYWRpZW50RGlyZWN0aW9uIGFzIHVua25vd24gYXMga2V5b2YgdHlwZW9mIEdyYWRpZW50RGlyZWN0aW9uIHx8IEdyYWRpZW50RGlyZWN0aW9uLkRPV05dO1xyXG4gICAgICAgIGNvbnN0IGdyYWRpZW50Q29sb3IgPSBkaXJlY3Rpb24gIT0gR3JhZGllbnREaXJlY3Rpb24uRE9XTiA/IGBsaW5lYXItZ3JhZGllbnQoJHtkaXJlY3Rpb259LCR7c3R5bGU/LmJhY2tncm91bmR9LCR7c3R5bGU/LnNlY29uZGFyeUJhY2tncm91bmR9KWAgOlxyXG4gICAgICAgICAgYGxpbmVhci1ncmFkaWVudCgke3N0eWxlPy5iYWNrZ3JvdW5kfSwke3N0eWxlPy5zZWNvbmRhcnlCYWNrZ3JvdW5kfSlgO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsIGdyYWRpZW50Q29sb3IpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1jbGlwJywgJ3RleHQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy13ZWJraXQtYmFja2dyb3VuZC1jbGlwJywgJ3RleHQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgJ3RyYW5zcGFyZW50Jyk7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCAndW5zZXQnLCAnaW1wb3J0YW50Jyk7XHJcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsVmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyJywgJ3Vuc2V0JywgJ2ltcG9ydGFudCcpXHJcbiAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQnLCAndHJhbnNwYXJlbnQnKTtcclxuICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCBzdHlsZT8udGV4dENvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyJywgJ3Vuc2V0JywgJ2ltcG9ydGFudCcpXHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsICd0cmFuc3BhcmVudCcpO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ3BhZGRpbmcnLCAnMHB4Jyk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCBzdHlsZT8uYmFja2dyb3VuZCk7XHJcbiAgICAgIGlmICh0aGlzLnNjcm9sbFZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCAndW5zZXQnLCAnaW1wb3J0YW50JylcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JvcmRlci1yYWRpdXMnLCAndW5zZXQnLCAnaW1wb3J0YW50Jyk7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJywgJ3RyYW5zcGFyZW50Jyk7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHN0eWxlPy5zZWNvbmRhcnlCYWNrZ3JvdW5kKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGlmIChzdHlsZT8uY29sb3JUeXBlID09PSAoJ0dyYWRpZW50JyBhcyBCQUNLR1JPVU5EX1RZUEUpKSB7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCBgMnB4IHNvbGlkICR7c3R5bGU/LmJhY2tncm91bmR9YCk7XHJcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gR3JhZGllbnREaXJlY3Rpb25bc3R5bGU/LmdyYWRpZW50RGlyZWN0aW9uIGFzIHVua25vd24gYXMga2V5b2YgdHlwZW9mIEdyYWRpZW50RGlyZWN0aW9uIHx8IEdyYWRpZW50RGlyZWN0aW9uLkRPV05dO1xyXG4gICAgICAgIGNvbnN0IGdyYWRpZW50Q29sb3IgPSBkaXJlY3Rpb24gIT0gR3JhZGllbnREaXJlY3Rpb24uRE9XTiA/IGBsaW5lYXItZ3JhZGllbnQoJHtkaXJlY3Rpb259LCR7c3R5bGU/LmJhY2tncm91bmR9LCR7c3R5bGU/LnNlY29uZGFyeUJhY2tncm91bmR9KWAgOlxyXG4gICAgICAgICAgYGxpbmVhci1ncmFkaWVudCgke3N0eWxlPy5iYWNrZ3JvdW5kfSwke3N0eWxlPy5zZWNvbmRhcnlCYWNrZ3JvdW5kfSlgO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsIGdyYWRpZW50Q29sb3IpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1jbGlwJywgJ3RleHQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy13ZWJraXQtYmFja2dyb3VuZC1jbGlwJywgJ3RleHQnKTtcclxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgJ3RyYW5zcGFyZW50Jyk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyJywgYDJweCBzb2xpZCAke3N0eWxlPy5iYWNrZ3JvdW5kfWApO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQnLCAndHJhbnNwYXJlbnQnKTtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHN0eWxlPy50ZXh0Q29sb3IpO1xyXG4gICAgICBpZiAodGhpcy5zY3JvbGxWYWx1ZSkge1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcsIFwidHJhbnNwYXJlbnRcIik7XHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsIHN0eWxlPy50ZXh0Q29sb3IpO1xyXG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyJywgYDJweCBzb2xpZCAke3N0eWxlPy50ZXh0Q29sb3J9IGApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhcHBseUJ1dHRvblNoYXBlKHN0eWxlOiBCdXR0b25TdHlsZU1vZGVsKSB7XHJcbiAgICBpZiAoc3R5bGU/LnR5cGUgPT09ICgnVGV4dCcgYXMgQlVUVE9OX1RZUEUpKVxyXG4gICAgICByZXR1cm47XHJcbiAgICBpZiAoc3R5bGU/LnNoYXBlID09PSAoJ1JvdW5kJyBhcyBCVVRUT05fU0hBUEUpKSB7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyLXJhZGl1cycsICc5OXB4Jyk7XHJcbiAgICB9IGVsc2UgaWYgKHN0eWxlPy5zaGFwZSA9PT0gKCdDdXJ2ZScgYXMgQlVUVE9OX1NIQVBFKSkge1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JvcmRlci1yYWRpdXMnLCAnMTJweCcpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyLXJhZGl1cycsICcwcHgnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFRleHRDb2xvcihiZ0NvbG9yOiBzdHJpbmcpIHtcclxuICAgIGlmIChiZ0NvbG9yKSB7XHJcbiAgICAgIGNvbnN0IHRocmVzaG9sZCA9IDEzMDsgLy8gQWRqdXN0IHRoaXMgdGhyZXNob2xkIGFzIG5lZWRlZFxyXG4gICAgICBjb25zdCByID0gcGFyc2VJbnQoYmdDb2xvci5zbGljZSgxLCAzKSwgMTYpO1xyXG4gICAgICBjb25zdCBnID0gcGFyc2VJbnQoYmdDb2xvci5zbGljZSgzLCA1KSwgMTYpO1xyXG4gICAgICBjb25zdCBiID0gcGFyc2VJbnQoYmdDb2xvci5zbGljZSg1LCA3KSwgMTYpO1xyXG4gICAgICBjb25zdCBicmlnaHRuZXNzID0gKHIgKiAyOTkgKyBnICogNTg3ICsgYiAqIDExNCkgLyAxMDAwO1xyXG5cclxuICAgICAgcmV0dXJuIGJyaWdodG5lc3MgPiB0aHJlc2hvbGQgPyAnIzAwMDAwMCcgOiAnI2ZmZmZmZic7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gXCIjZmZmZmZmO1wiXHJcbiAgfVxyXG5cclxuICBidXR0b25TdHlsZVN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuICBidXR0b25TdHlsZUNoYW5nZUNoZWNrKCkge1xyXG4gICAgdGhpcy5idXR0b25TdHlsZVN1YnNjcmlwdGlvbiA9IHRoaXMuZXZlbnRTZXJ2aWNlLmJ1dHRvblN0eWxlQ2hhbmdlQ2hlY2tzLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5jaGFuZ2VCdXR0b25TdHlsZShyZXMuaWQsIHJlcy5zdHlsZSwgcmVzLmJhY2tncm91bmRJbmZvKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBjaGFuZ2VCdXR0b25TdHlsZShpZDogYW55LCBzdHlsZTogQnV0dG9uU3R5bGVNb2RlbCwgYmFja2dyb3VuZEluZm86IEJhY2tncm91bmRNb2RlbCkge1xyXG5cclxuICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaWQgPT09IGlkKSB7XHJcbiAgICAgIGlmIChzdHlsZT8udHlwZSkge1xyXG4gICAgICAgIHRoaXMuYXBwbHlCdXR0b25UeXBlKHN0eWxlLCBiYWNrZ3JvdW5kSW5mbyk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHN0eWxlPy5zaGFwZSkge1xyXG4gICAgICAgIHRoaXMuYXBwbHlCdXR0b25TaGFwZShzdHlsZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpIG9uSG92ZXIoKSB7XHJcbiAgICBpZiAodGhpcy5idXR0b25TdHlsZT8udHlwZSAhPT0gKCdUZXh0JyBhcyBCVVRUT05fVFlQRSkpXHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm94LXNoYWRvdycsICdyZ2JhKDUwLCA1MCwgOTMsIDAuMjUpIDBweCAxM3B4IDI3cHggLTVweCwgcmdiYSgwLCAwLCAwLCAwLjMpIDBweCA4cHggMTZweCAtOHB4Jyk7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ3RyYW5zZm9ybScsICd0cmFuc2xhdGVZKC01cHgpJyk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJykgb25MZWF2ZSgpIHtcclxuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm94LXNoYWRvdycsICdub25lJyk7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ3RyYW5zZm9ybScsICd1bnNldCcpO1xyXG4gIH1cclxufSJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
1
|
+
import { Component, Input, Inject, PLATFORM_ID } from '@angular/core';
|
|
2
|
+
import { CommonModule, isPlatformBrowser } from '@angular/common';
|
|
3
3
|
import { FormsModule } from '@angular/forms';
|
|
4
4
|
import { HoverDirective } from '../../../directive/hover-element-directive';
|
|
5
5
|
import { ContentFitDirective } from '../../../directive/content-fit-directive';
|
|
@@ -18,10 +18,11 @@ import * as i2 from "@angular/router";
|
|
|
18
18
|
import * as i3 from "@angular/common";
|
|
19
19
|
import * as i4 from "../../../components/delete-hover-element/delete-hover-element.component";
|
|
20
20
|
export class ReferEarnComponent extends BaseSection {
|
|
21
|
-
constructor(storageService, router) {
|
|
21
|
+
constructor(storageService, router, platformId) {
|
|
22
22
|
super();
|
|
23
23
|
this.storageService = storageService;
|
|
24
24
|
this.router = router;
|
|
25
|
+
this.platformId = platformId;
|
|
25
26
|
this.userDetail = this.storageService.getUser();
|
|
26
27
|
}
|
|
27
28
|
ngOnInit() {
|
|
@@ -31,9 +32,11 @@ export class ReferEarnComponent extends BaseSection {
|
|
|
31
32
|
return { ...this.styles?.layout };
|
|
32
33
|
}
|
|
33
34
|
get isMobile() {
|
|
34
|
-
return window.innerWidth <= 475;
|
|
35
|
+
return isPlatformBrowser(this.platformId) && window.innerWidth <= 475;
|
|
35
36
|
}
|
|
36
37
|
get getBusinessId() {
|
|
38
|
+
if (!isPlatformBrowser(this.platformId))
|
|
39
|
+
return null;
|
|
37
40
|
return (localStorage.getItem('bId') || window.localStorage.getItem('businessId') || window.localStorage.getItem('bId'));
|
|
38
41
|
}
|
|
39
42
|
get getUserId() {
|
|
@@ -49,9 +52,9 @@ export class ReferEarnComponent extends BaseSection {
|
|
|
49
52
|
return this.userDetail?.contact?.name;
|
|
50
53
|
}
|
|
51
54
|
get getWebUrl() {
|
|
52
|
-
return window.location.href;
|
|
55
|
+
return isPlatformBrowser(this.platformId) ? window.location.href : '';
|
|
53
56
|
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReferEarnComponent, deps: [{ token: i1.StorageServiceService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReferEarnComponent, deps: [{ token: i1.StorageServiceService }, { token: i2.Router }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
55
58
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ReferEarnComponent, isStandalone: true, selector: "simpo-refer-earn", inputs: { data: "data", edit: "edit", delete: "delete", index: "index" }, usesInheritance: true, ngImport: i0, template: "<section class=\"total-container d-flex justify-content-center align-items-center\" [id]=\"data?.id\" simpoHover>\r\n <section class=\"container h-100\" [id]=\"data?.id\" #container [spacingHorizontal]=\"stylesLayout\"\r\n [simpoLayout]=\"styles?.layout\" style=\"max-height: 86%;\">\r\n <div class=\"row h-100 w-100 h-100\" #aboveHeight class=\"above-height\"\r\n [ngStyle]=\"{'min-height: 95vh': isMobile, 'max-width: 95vh': !isMobile}\" style=\"height: 100%;\">\r\n <div data-simpo-refer-card [attr.data-business]=\"getBusinessId\" [attr.data-mobile]=\"getMobile\"\r\n [attr.data-email]=\"getEmail\" [attr.data-name]=\"getName\" [attr.data-webUrl]=\"getWebUrl\"\r\n [attr.data-userId]=\"getUserId\" style=\"height: 100%;\">\r\n </div>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n </section>\r\n</section>", styles: ["*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.total-container{height:calc(84vh - 180px);overflow:scroll}@media (max-width: 475px){.total-container{height:auto}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i4.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "directive", type:
|
|
56
59
|
//DIRECTIVE
|
|
57
60
|
ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "ngmodule", type: NgxImageZoomModule }, { kind: "ngmodule", type: MatBottomSheetModule }, { kind: "ngmodule", type: RatingModule }, { kind: "ngmodule", type: SpeedDialModule }, { kind: "ngmodule", type: ToastModule }, { kind: "ngmodule", type: PanelModule }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }] }); }
|
|
@@ -73,7 +76,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
73
76
|
PanelModule,
|
|
74
77
|
SpacingHorizontalDirective
|
|
75
78
|
], template: "<section class=\"total-container d-flex justify-content-center align-items-center\" [id]=\"data?.id\" simpoHover>\r\n <section class=\"container h-100\" [id]=\"data?.id\" #container [spacingHorizontal]=\"stylesLayout\"\r\n [simpoLayout]=\"styles?.layout\" style=\"max-height: 86%;\">\r\n <div class=\"row h-100 w-100 h-100\" #aboveHeight class=\"above-height\"\r\n [ngStyle]=\"{'min-height: 95vh': isMobile, 'max-width: 95vh': !isMobile}\" style=\"height: 100%;\">\r\n <div data-simpo-refer-card [attr.data-business]=\"getBusinessId\" [attr.data-mobile]=\"getMobile\"\r\n [attr.data-email]=\"getEmail\" [attr.data-name]=\"getName\" [attr.data-webUrl]=\"getWebUrl\"\r\n [attr.data-userId]=\"getUserId\" style=\"height: 100%;\">\r\n </div>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n </section>\r\n</section>", styles: ["*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.total-container{height:calc(84vh - 180px);overflow:scroll}@media (max-width: 475px){.total-container{height:auto}}\n"] }]
|
|
76
|
-
}], ctorParameters: () => [{ type: i1.StorageServiceService }, { type: i2.Router }
|
|
79
|
+
}], ctorParameters: () => [{ type: i1.StorageServiceService }, { type: i2.Router }, { type: undefined, decorators: [{
|
|
80
|
+
type: Inject,
|
|
81
|
+
args: [PLATFORM_ID]
|
|
82
|
+
}] }], propDecorators: { data: [{
|
|
77
83
|
type: Input
|
|
78
84
|
}], edit: [{
|
|
79
85
|
type: Input
|
|
@@ -82,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
82
88
|
}], index: [{
|
|
83
89
|
type: Input
|
|
84
90
|
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXItZWFybi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2Vjb21tZXJjZS9zZWN0aW9ucy9yZWZlci1lYXJuL3JlZmVyLWVhcm4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvcmVmZXItZWFybi9yZWZlci1lYXJuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFLN0YsT0FBTyxXQUFXLE1BQU0sK0JBQStCLENBQUM7Ozs7OztBQXVCeEQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQVc7SUFTakQsWUFDbUIsY0FBcUMsRUFDckMsTUFBYyxFQUNGLFVBQWtCO1FBRS9DLEtBQUssRUFBRSxDQUFDO1FBSlMsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBQ3JDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDRixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBRy9DLElBQUksQ0FBQyxVQUFVLEdBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQVcsQ0FBQztJQUM1RCxDQUFDO0lBRUQsUUFBUTtRQUNOLDhDQUE4QztJQUNoRCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQWlCLENBQUM7SUFDbkQsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3JELE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7SUFDekgsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3hFLENBQUM7K0dBckRVLGtCQUFrQiw2RUFZbkIsV0FBVzttR0FaVixrQkFBa0IsNktDekMvQiw2aUNBY1UscVFEVU4sWUFBWSxxVEFDWixXQUFXLDhCQUNYLG9CQUFvQjtnQkFDcEIsV0FBVztnQkFDWCxtQkFBbUIsbUZBQ25CLGNBQWMsK0VBQ2Qsa0JBQWtCLDhCQUNsQixvQkFBb0IsOEJBQ3BCLFlBQVksOEJBQ1osZUFBZSw4QkFDZixXQUFXLDhCQUNYLFdBQVcsK0JBQ1gsMEJBQTBCOzs0RkFLakIsa0JBQWtCO2tCQXJCOUIsU0FBUzsrQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxvQkFBb0I7d0JBQ3BCLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3dCQUNwQixZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxXQUFXO3dCQUNYLDBCQUEwQjtxQkFDM0I7OzBCQWdCRSxNQUFNOzJCQUFDLFdBQVc7eUNBVlosSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBJbmplY3QsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTGF5T3V0TW9kZWwgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2luZGV4JztcclxuaW1wb3J0IHsgTmd4SW1hZ2Vab29tTW9kdWxlIH0gZnJvbSAnbmd4LWltYWdlLXpvb20nO1xyXG5pbXBvcnQgeyBUb2FzdE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9hc3QnO1xyXG5pbXBvcnQgeyBNYXRCb3R0b21TaGVldE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JvdHRvbS1zaGVldCc7XHJcbmltcG9ydCB7IFJhdGluZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvcmF0aW5nJztcclxuaW1wb3J0IHsgU3BlZWREaWFsTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9zcGVlZGRpYWwnO1xyXG5pbXBvcnQgeyBQYW5lbE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvcGFuZWwnO1xyXG5pbXBvcnQgeyBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWhvcml6b250YWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUHJvZHVjdERlc2NTdHlsZXNNb2RhbCB9IGZyb20gJy4vcmVmZXItZWFybi5tb2RhbCc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi9zdHlsZXMvdXNlci5tb2RhbCc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi8uLi8uLi9zZWN0aW9ucy9CYXNlU2VjdGlvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLXJlZmVyLWVhcm4nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBTaW1wb0NvbXBvbmVudE1vZHVsZSxcclxuICAgIC8vRElSRUNUSVZFXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gICAgSG92ZXJEaXJlY3RpdmUsXHJcbiAgICBOZ3hJbWFnZVpvb21Nb2R1bGUsXHJcbiAgICBNYXRCb3R0b21TaGVldE1vZHVsZSxcclxuICAgIFJhdGluZ01vZHVsZSxcclxuICAgIFNwZWVkRGlhbE1vZHVsZSxcclxuICAgIFRvYXN0TW9kdWxlLFxyXG4gICAgUGFuZWxNb2R1bGUsXHJcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JlZmVyLWVhcm4uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9yZWZlci1lYXJuLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWZlckVhcm5Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGRhdGE/OiBhbnk7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcclxuICBzdHlsZXM/OiBQcm9kdWN0RGVzY1N0eWxlc01vZGFsO1xyXG4gIHVzZXJEZXRhaWw6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxyXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBvYmplY3RcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLnVzZXJEZXRhaWwgPSAodGhpcy5zdG9yYWdlU2VydmljZS5nZXRVc2VyKCkgYXMgVXNlcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIC8vIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcclxuICB9XHJcblxyXG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XHJcbiAgICByZXR1cm4geyAuLi50aGlzLnN0eWxlcz8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNNb2JpbGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB3aW5kb3cuaW5uZXJXaWR0aCA8PSA0NzU7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0QnVzaW5lc3NJZCgpIHtcclxuICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkgcmV0dXJuIG51bGw7XHJcbiAgICByZXR1cm4gKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdiSWQnKSB8fCB3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2J1c2luZXNzSWQnKSB8fCB3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2JJZCcpKVxyXG4gIH1cclxuXHJcbiAgZ2V0IGdldFVzZXJJZCgpIHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJEZXRhaWw/LnVzZXJJZDtcclxuICB9XHJcblxyXG4gIGdldCBnZXRFbWFpbCgpIHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJEZXRhaWw/LmNvbnRhY3Q/LmVtYWlsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldE1vYmlsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJEZXRhaWw/LmNvbnRhY3Q/Lm1vYmlsZTtcclxuICB9XHJcblxyXG4gIGdldCBnZXROYW1lKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlckRldGFpbD8uY29udGFjdD8ubmFtZTtcclxuICB9XHJcblxyXG4gIGdldCBnZXRXZWJVcmwoKSB7XHJcbiAgICByZXR1cm4gaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSA/IHdpbmRvdy5sb2NhdGlvbi5ocmVmIDogJyc7XHJcbiAgfVxyXG59IiwiPHNlY3Rpb24gY2xhc3M9XCJ0b3RhbC1jb250YWluZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCIgW2lkXT1cImRhdGE/LmlkXCIgc2ltcG9Ib3Zlcj5cclxuICAgIDxzZWN0aW9uIGNsYXNzPVwiY29udGFpbmVyIGgtMTAwXCIgW2lkXT1cImRhdGE/LmlkXCIgI2NvbnRhaW5lciBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCJcclxuICAgICAgICBbc2ltcG9MYXlvdXRdPVwic3R5bGVzPy5sYXlvdXRcIiBzdHlsZT1cIm1heC1oZWlnaHQ6IDg2JTtcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGgtMTAwIHctMTAwIGgtMTAwXCIgI2Fib3ZlSGVpZ2h0IGNsYXNzPVwiYWJvdmUtaGVpZ2h0XCJcclxuICAgICAgICAgICAgW25nU3R5bGVdPVwieydtaW4taGVpZ2h0OiA5NXZoJzogaXNNb2JpbGUsICdtYXgtd2lkdGg6IDk1dmgnOiAhaXNNb2JpbGV9XCIgc3R5bGU9XCJoZWlnaHQ6IDEwMCU7XCI+XHJcbiAgICAgICAgICAgIDxkaXYgZGF0YS1zaW1wby1yZWZlci1jYXJkIFthdHRyLmRhdGEtYnVzaW5lc3NdPVwiZ2V0QnVzaW5lc3NJZFwiIFthdHRyLmRhdGEtbW9iaWxlXT1cImdldE1vYmlsZVwiXHJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWVtYWlsXT1cImdldEVtYWlsXCIgW2F0dHIuZGF0YS1uYW1lXT1cImdldE5hbWVcIiBbYXR0ci5kYXRhLXdlYlVybF09XCJnZXRXZWJVcmxcIlxyXG4gICAgICAgICAgICAgICAgW2F0dHIuZGF0YS11c2VySWRdPVwiZ2V0VXNlcklkXCIgc3R5bGU9XCJoZWlnaHQ6IDEwMCU7XCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XHJcbiAgICAgICAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L3NlY3Rpb24+XHJcbjwvc2VjdGlvbj4iXX0=
|