simpo-component-library 3.6.325 → 3.6.327
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/directive/icon-directive.directive.mjs +1 -2
- package/esm2022/lib/directive/image-directive.directive.mjs +2 -2
- package/esm2022/lib/directive/set-dynamic-background.directive.mjs +8 -5
- package/esm2022/lib/directive/spacing-around.directive.mjs +2 -2
- package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +19 -3
- package/esm2022/lib/ecommerce/sections/cart/cart.component.mjs +4 -4
- package/esm2022/lib/ecommerce/sections/order-details/order-details.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/passbook-transactions/passbook-transactions.component.mjs +37 -0
- package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.component.mjs +227 -18
- package/esm2022/lib/ecommerce/sections/scheme-details/scheme-details.component.mjs +193 -14
- package/esm2022/lib/ecommerce/sections/schemes/schemes.component.mjs +108 -0
- package/esm2022/lib/ecommerce/sections/schemes/schemes.component.model.mjs +2 -0
- package/esm2022/lib/ecommerce/sections/user-profile/user-profile.component.mjs +179 -22
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +90 -31
- package/esm2022/lib/elements/below-image-card/below-image-card.component.mjs +24 -3
- package/esm2022/lib/elements/image-editor/image-editor.component.mjs +4 -4
- package/esm2022/lib/elements/index.mjs +2 -2
- package/esm2022/lib/elements/link-editor/link-editor.component.mjs +27 -7
- package/esm2022/lib/elements/navbar-button-element/navbar-button-element.component.mjs +3 -3
- package/esm2022/lib/elements/simpo-button/simpo-button.component.mjs +5 -3
- package/esm2022/lib/elements/socia-icons/socia-icons.component.mjs +3 -3
- package/esm2022/lib/elements/text-editor/text-editor.component.mjs +3 -3
- package/esm2022/lib/sections/banner-grid-section/banner-grid-section.component.mjs +3 -3
- package/esm2022/lib/sections/banner-section/banner-section.component.mjs +3 -3
- package/esm2022/lib/sections/contact-us/contact-us.component.mjs +6 -3
- package/esm2022/lib/sections/faq-section/faq-section.component.mjs +3 -3
- package/esm2022/lib/sections/footer/footer.component.mjs +3 -3
- package/esm2022/lib/sections/header-section/header-section.component.mjs +48 -17
- package/esm2022/lib/sections/logo-showcase/logo-showcase.component.mjs +13 -4
- package/esm2022/lib/sections/new-testimonials/new-testimonials.component.mjs +3 -3
- package/esm2022/lib/sections/scheme-detail/scheme-detail.component.mjs +265 -0
- package/esm2022/lib/sections/scheme-detail/scheme-detail.modal.mjs +2 -0
- package/esm2022/lib/sections/service-section/service-section.component.mjs +12 -9
- package/esm2022/lib/sections/service-section/service-section.model.mjs +1 -1
- package/esm2022/lib/sections/text-section/text-section.component.mjs +3 -3
- package/esm2022/lib/services/rest.service.mjs +80 -7
- package/esm2022/lib/services/storage.service.mjs +59 -35
- package/esm2022/lib/styles/index.mjs +2 -1
- package/esm2022/lib/styles/style.model.mjs +1 -1
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/simpo-component-library.mjs +2140 -1013
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/ecommerce/sections/authentication-required/authentication-required.component.d.ts +2 -1
- package/lib/ecommerce/sections/passbook-transactions/passbook-transactions.component.d.ts +14 -0
- package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +1 -1
- package/lib/ecommerce/sections/returns-calculator/returns-calculator.component.d.ts +41 -3
- package/lib/ecommerce/sections/scheme-details/scheme-details.component.d.ts +35 -3
- package/lib/ecommerce/sections/schemes/schemes.component.d.ts +28 -0
- package/lib/ecommerce/sections/schemes/schemes.component.model.d.ts +21 -0
- package/lib/ecommerce/sections/user-profile/user-profile.component.d.ts +19 -2
- package/lib/ecommerce/sections/verify-payment/verify-payment.component.d.ts +4 -0
- package/lib/elements/below-image-card/below-image-card.component.d.ts +2 -0
- package/lib/elements/image-editor/image-editor.component.d.ts +2 -0
- package/lib/elements/link-editor/link-editor.component.d.ts +7 -3
- package/lib/elements/pricing-s1/pricing-s1.component.d.ts +1 -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 -0
- package/lib/sections/faq-section/faq-section.component.d.ts +1 -1
- package/lib/sections/header-section/header-section.component.d.ts +4 -2
- package/lib/sections/image-section/image-section.component.d.ts +2 -2
- package/lib/sections/logo-showcase/logo-showcase.component.d.ts +2 -1
- package/lib/sections/new-testimonials/new-testimonials.component.d.ts +1 -1
- package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
- package/lib/sections/scheme-detail/scheme-detail.component.d.ts +68 -0
- package/lib/sections/scheme-detail/scheme-detail.modal.d.ts +17 -0
- package/lib/sections/service-section/service-section.model.d.ts +2 -1
- package/lib/services/rest.service.d.ts +18 -2
- package/lib/services/storage.service.d.ts +4 -1
- package/lib/styles/index.d.ts +2 -1
- package/lib/styles/style.model.d.ts +7 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
- package/simpo-component-library-3.6.327.tgz +0 -0
- package/src/lib/styles/global-styles.css +9 -0
- package/simpo-component-library-3.6.325.tgz +0 -0
@@ -86,7 +86,7 @@ export class FaqSectionComponent extends BaseSection {
|
|
86
86
|
return 'justify-content-center';
|
87
87
|
}
|
88
88
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FaqSectionComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
89
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FaqSectionComponent, isStandalone: true, selector: "simpo-faq-section", inputs: { data: "data", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, host: { listeners: { "window: resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\n (hovering)=\"showEditTabs($event)\" [attr.style]=\"customClass\">\n <div class=\"col-xxl-8 py-5 w-100\" #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"style?.background\"\n [spacingHorizontal]=\"stylesLayout\" [simpoBorder]=\"style?.border\" [simpoAnimation]=\"style?.animation\">\n\n <div [simpoPositionLayoutDirective]=\"style?.positionLayout\" class=\"row\" [id]=\"data?.id\"\n [simpoLayout]=\"style?.layout\" [simpoContainerAlignment]=\"stylesLayout\" [class]=\"getLayout()\">\n <div class=\"container-fluid flex-col col-lg-6 col-md-6 cursor-pointer mx-0\">\n <div *ngFor=\"let text of data?.content?.inputText\" class=\"w-100\" [simpoContentTitleSpace]=\"headingSpace\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div *ngFor=\"let itemData of content?.listItem?.data; let i = index\" class=\"data data-1 w-100 cursor-pointer\"\n [ngStyle]=\"\n unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Gradient'\n ? { background: 'linear-gradient(90deg, ' + data?.styles?.background?.accentColor + ', ' + data?.styles?.background?.secondaryAccentColor + ')' }\n : unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Solid' ?\n{ background : data?.styles?.background?.accentColor} : {}\n \">\n <div style=\"display: flex;align-items: center;justify-content: space-between; cursor: pointer;\"\n class=\"question\">\n <p class=\"heading-medium position-relative content-side mb-0 text-start cursor-pointer\"\n data-toggle=\"collapse\" [ngClass]=\"{'fw-600':unCollapsedList.includes(i)}\">\n <!-- <span style=\"display: block;\" > -->\n <simpo-text-editor [(value)]=\"itemData.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n <!-- </span> -->\n </p>\n <mat-icon *ngIf=\"unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">close</mat-icon>\n <mat-icon *ngIf=\"!unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">add</mat-icon>\n </div>\n <div class=\"body-large desc multi-collapse text-start cursor-pointer\"\n [ngClass]=\"{'collapse': !unCollapsedList.includes(i)}\">\n <simpo-text-editor [(value)]=\"itemData.inputText[1].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n <div class=\"col-10 col-sm-6 col-md-6 col-lg-6 d-flex align-items-center\" *ngIf=\"content?.image?.showImage\">\n <img loading=\"lazy\" [src]=\"content?.image?.url\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"content?.image?.position\" [simpoCorner]=\"style?.corners\"\n [class]=\"data?.id+(content?.image?.id || '')\" class=\"d-block mx-lg-auto img-fluid\"\n [alt]=\"content?.image?.altText\" loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"content?.image\"\n [sectionId]=\"data?.id\" class=\"h-100 w-100\" />\n </div>\n </div>\n
|
89
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FaqSectionComponent, isStandalone: true, selector: "simpo-faq-section", inputs: { data: "data", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, host: { listeners: { "window: resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\n (hovering)=\"showEditTabs($event)\" [attr.style]=\"customClass\">\n <div class=\"col-xxl-8 py-5 w-100\" #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"style?.background\"\n [spacingHorizontal]=\"stylesLayout\" [simpoBorder]=\"style?.border\" [simpoAnimation]=\"style?.animation\">\n\n <div [simpoPositionLayoutDirective]=\"style?.positionLayout\" class=\"row\" [id]=\"data?.id\"\n [simpoLayout]=\"style?.layout\" [simpoContainerAlignment]=\"stylesLayout\" [class]=\"getLayout()\">\n <div class=\"container-fluid flex-col col-lg-6 col-md-6 cursor-pointer mx-0\" [class.col-lg-9]=\"!content?.image?.showImage\" [class.col-md-9]=\"!content?.image?.showImage\">\n <div *ngFor=\"let text of data?.content?.inputText\" class=\"w-100\" [simpoContentTitleSpace]=\"headingSpace\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div *ngFor=\"let itemData of content?.listItem?.data; let i = index\" class=\"data data-1 w-100 cursor-pointer\"\n [ngStyle]=\"\n unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Gradient'\n ? { background: 'linear-gradient(90deg, ' + data?.styles?.background?.accentColor + ', ' + data?.styles?.background?.secondaryAccentColor + ')' }\n : unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Solid' ?\n{ background : data?.styles?.background?.accentColor} : {}\n \">\n <div style=\"display: flex;align-items: center;justify-content: space-between; cursor: pointer;\"\n class=\"question\">\n <p class=\"heading-medium position-relative content-side mb-0 text-start cursor-pointer\"\n data-toggle=\"collapse\" [ngClass]=\"{'fw-600':unCollapsedList.includes(i)}\">\n <!-- <span style=\"display: block;\" > -->\n <simpo-text-editor [(value)]=\"itemData.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n <!-- </span> -->\n </p>\n <mat-icon *ngIf=\"unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">close</mat-icon>\n <mat-icon *ngIf=\"!unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">add</mat-icon>\n </div>\n <div class=\"body-large desc multi-collapse text-start cursor-pointer\"\n [ngClass]=\"{'collapse': !unCollapsedList.includes(i)}\">\n <simpo-text-editor [(value)]=\"itemData.inputText[1].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n <div class=\"col-10 col-sm-6 col-md-6 col-lg-6 d-flex align-items-center\" *ngIf=\"content?.image?.showImage\">\n <img loading=\"lazy\" [src]=\"content?.image?.url\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"content?.image?.position\" [simpoCorner]=\"style?.corners\"\n [class]=\"data?.id+(content?.image?.id || '')\" class=\"d-block mx-lg-auto img-fluid\"\n [alt]=\"content?.image?.altText\" loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"content?.image\"\n [sectionId]=\"data?.id\" class=\"h-100 w-100\" />\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"style?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"style?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n</section>", styles: [".mb-2{margin-bottom:2.5rem!important}mat-icon{font-family:Material Icons!important}.data{gap:1rem;padding-top:.5rem;padding-bottom:.5rem;box-shadow:#11182733 0 -1px inset;cursor:pointer;width:100%}.flex-col{display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{height:auto;position:relative}.heading-large{margin-top:20px}.question p{width:95%}.question mat-icon{width:5%}@media only screen and (max-width: 475px){.row{display:flex;flex-direction:column-reverse}.col-10{width:100%!important}.question p{width:90%}.question mat-icon{width:10%}}.float-end{position:absolute;top:0}@media only screen and (min-width: 500px){.heading-medium{font-size:20px}}@media screen and (max-width: 500px){.heading-medium{font-size:16px}.desc{font-size:14px}}.w-60{width:60%}.data-1{box-shadow:#0000001a 0 1px 3px,#0000000f 0 1px 2px;border-radius:10px;text-align:center;padding-left:1rem;padding-right:1rem;margin-bottom:1rem;cursor:pointer}.fw-600{font-weight:600}.cursor-pointer{cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: SimpoElementsModule }, { kind: "component", type: i2.SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i4.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i5.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "sectionId", "label"], outputs: ["valueChange"] }, { kind: "directive", type:
|
90
90
|
//directive
|
91
91
|
AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: ImageDirectiveDirective, selector: "[simpoImageDirective]", inputs: ["simpoImageDirective"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: PositionLayoutDirectiveDirective, selector: "[simpoPositionLayoutDirective]", inputs: ["simpoPositionLayoutDirective"] }, { kind: "directive", type: ContentTitleDirective, selector: "[simpoContentTitleSpace]", inputs: ["simpoContentTitleSpace"] }, { kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "directive", type: SimpoContainerAligment, selector: "[simpoContainerAlignment]", inputs: ["simpoContainerAlignment"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData"] }] }); }
|
92
92
|
}
|
@@ -123,7 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
123
123
|
SpacingHorizontalDirective,
|
124
124
|
SvgDividerComponent,
|
125
125
|
ImageEditorDirective
|
126
|
-
], template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\n (hovering)=\"showEditTabs($event)\" [attr.style]=\"customClass\">\n <div class=\"col-xxl-8 py-5 w-100\" #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"style?.background\"\n [spacingHorizontal]=\"stylesLayout\" [simpoBorder]=\"style?.border\" [simpoAnimation]=\"style?.animation\">\n\n <div [simpoPositionLayoutDirective]=\"style?.positionLayout\" class=\"row\" [id]=\"data?.id\"\n [simpoLayout]=\"style?.layout\" [simpoContainerAlignment]=\"stylesLayout\" [class]=\"getLayout()\">\n <div class=\"container-fluid flex-col col-lg-6 col-md-6 cursor-pointer mx-0\">\n <div *ngFor=\"let text of data?.content?.inputText\" class=\"w-100\" [simpoContentTitleSpace]=\"headingSpace\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div *ngFor=\"let itemData of content?.listItem?.data; let i = index\" class=\"data data-1 w-100 cursor-pointer\"\n [ngStyle]=\"\n unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Gradient'\n ? { background: 'linear-gradient(90deg, ' + data?.styles?.background?.accentColor + ', ' + data?.styles?.background?.secondaryAccentColor + ')' }\n : unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Solid' ?\n{ background : data?.styles?.background?.accentColor} : {}\n \">\n <div style=\"display: flex;align-items: center;justify-content: space-between; cursor: pointer;\"\n class=\"question\">\n <p class=\"heading-medium position-relative content-side mb-0 text-start cursor-pointer\"\n data-toggle=\"collapse\" [ngClass]=\"{'fw-600':unCollapsedList.includes(i)}\">\n <!-- <span style=\"display: block;\" > -->\n <simpo-text-editor [(value)]=\"itemData.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n <!-- </span> -->\n </p>\n <mat-icon *ngIf=\"unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">close</mat-icon>\n <mat-icon *ngIf=\"!unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">add</mat-icon>\n </div>\n <div class=\"body-large desc multi-collapse text-start cursor-pointer\"\n [ngClass]=\"{'collapse': !unCollapsedList.includes(i)}\">\n <simpo-text-editor [(value)]=\"itemData.inputText[1].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n <div class=\"col-10 col-sm-6 col-md-6 col-lg-6 d-flex align-items-center\" *ngIf=\"content?.image?.showImage\">\n <img loading=\"lazy\" [src]=\"content?.image?.url\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"content?.image?.position\" [simpoCorner]=\"style?.corners\"\n [class]=\"data?.id+(content?.image?.id || '')\" class=\"d-block mx-lg-auto img-fluid\"\n [alt]=\"content?.image?.altText\" loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"content?.image\"\n [sectionId]=\"data?.id\" class=\"h-100 w-100\" />\n </div>\n </div>\n
|
126
|
+
], template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\n (hovering)=\"showEditTabs($event)\" [attr.style]=\"customClass\">\n <div class=\"col-xxl-8 py-5 w-100\" #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"style?.background\"\n [spacingHorizontal]=\"stylesLayout\" [simpoBorder]=\"style?.border\" [simpoAnimation]=\"style?.animation\">\n\n <div [simpoPositionLayoutDirective]=\"style?.positionLayout\" class=\"row\" [id]=\"data?.id\"\n [simpoLayout]=\"style?.layout\" [simpoContainerAlignment]=\"stylesLayout\" [class]=\"getLayout()\">\n <div class=\"container-fluid flex-col col-lg-6 col-md-6 cursor-pointer mx-0\" [class.col-lg-9]=\"!content?.image?.showImage\" [class.col-md-9]=\"!content?.image?.showImage\">\n <div *ngFor=\"let text of data?.content?.inputText\" class=\"w-100\" [simpoContentTitleSpace]=\"headingSpace\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div *ngFor=\"let itemData of content?.listItem?.data; let i = index\" class=\"data data-1 w-100 cursor-pointer\"\n [ngStyle]=\"\n unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Gradient'\n ? { background: 'linear-gradient(90deg, ' + data?.styles?.background?.accentColor + ', ' + data?.styles?.background?.secondaryAccentColor + ')' }\n : unCollapsedList.includes(i) && data?.styles?.background?.accentBackgroundType == 'Solid' ?\n{ background : data?.styles?.background?.accentColor} : {}\n \">\n <div style=\"display: flex;align-items: center;justify-content: space-between; cursor: pointer;\"\n class=\"question\">\n <p class=\"heading-medium position-relative content-side mb-0 text-start cursor-pointer\"\n data-toggle=\"collapse\" [ngClass]=\"{'fw-600':unCollapsedList.includes(i)}\">\n <!-- <span style=\"display: block;\" > -->\n <simpo-text-editor [(value)]=\"itemData.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n <!-- </span> -->\n </p>\n <mat-icon *ngIf=\"unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">close</mat-icon>\n <mat-icon *ngIf=\"!unCollapsedList.includes(i)\"\n [ngStyle]=\"{'left' : style?.layout?.align == 'right' ? 0 : '', 'right' : style?.layout?.align !== 'right' ? 0 : ''}\"\n (click)=\"toggleContent(i)\">add</mat-icon>\n </div>\n <div class=\"body-large desc multi-collapse text-start cursor-pointer\"\n [ngClass]=\"{'collapse': !unCollapsedList.includes(i)}\">\n <simpo-text-editor [(value)]=\"itemData.inputText[1].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n <div class=\"col-10 col-sm-6 col-md-6 col-lg-6 d-flex align-items-center\" *ngIf=\"content?.image?.showImage\">\n <img loading=\"lazy\" [src]=\"content?.image?.url\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"content?.image?.position\" [simpoCorner]=\"style?.corners\"\n [class]=\"data?.id+(content?.image?.id || '')\" class=\"d-block mx-lg-auto img-fluid\"\n [alt]=\"content?.image?.altText\" loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"content?.image\"\n [sectionId]=\"data?.id\" class=\"h-100 w-100\" />\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"style?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"style?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n</section>", styles: [".mb-2{margin-bottom:2.5rem!important}mat-icon{font-family:Material Icons!important}.data{gap:1rem;padding-top:.5rem;padding-bottom:.5rem;box-shadow:#11182733 0 -1px inset;cursor:pointer;width:100%}.flex-col{display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{height:auto;position:relative}.heading-large{margin-top:20px}.question p{width:95%}.question mat-icon{width:5%}@media only screen and (max-width: 475px){.row{display:flex;flex-direction:column-reverse}.col-10{width:100%!important}.question p{width:90%}.question mat-icon{width:10%}}.float-end{position:absolute;top:0}@media only screen and (min-width: 500px){.heading-medium{font-size:20px}}@media screen and (max-width: 500px){.heading-medium{font-size:16px}.desc{font-size:14px}}.w-60{width:60%}.data-1{box-shadow:#0000001a 0 1px 3px,#0000000f 0 1px 2px;border-radius:10px;text-align:center;padding-left:1rem;padding-right:1rem;margin-bottom:1rem;cursor:pointer}.fw-600{font-weight:600}.cursor-pointer{cursor:pointer}\n"] }]
|
127
127
|
}], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { data: [{
|
128
128
|
type: Input
|
129
129
|
}], index: [{
|
@@ -140,4 +140,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
140
140
|
type: HostListener,
|
141
141
|
args: ["window: resize", ["$event"]]
|
142
142
|
}] } });
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFxLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9mYXEtc2VjdGlvbi9mYXEtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ZhcS1zZWN0aW9uL2ZhcS1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxlQUFl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QUFtQjt3QkFFbkIsV0FBVzt3QkFDWCxrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIseUJBQXlCO3dCQUN6QixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLDhCQUE4Qjt3QkFDOUIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLDBCQUEwQjt3QkFDMUIsY0FBYzt3QkFDZCx1QkFBdUI7d0JBQ3ZCLGdCQUFnQjt3QkFDaEIsZ0NBQWdDO3dCQUNoQyxnQ0FBZ0M7d0JBQ2hDLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLGdCQUFnQjt3QkFDaEIsMEJBQTBCO3dCQUMxQixtQkFBbUI7d0JBQ25CLG9CQUFvQjtxQkFDckI7a0ZBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQTRDTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZBUUNvbnRlbnRNb2RhbCwgRkFRU2VjdGlvbk1vZGFsLCBGQVFTdHlsZXNNb2RlbCB9IGZyb20gJy4vZmFxLXNlY3Rpb24ubW9kYWwnO1xuaW1wb3J0IHsgU2ltcG9FbGVtZW50c01vZHVsZSB9IGZyb20gJy4vLi4vLi4vZWxlbWVudHMvaW5kZXgnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNpbXBvQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9pbmRleCc7XG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhbm5lckNvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFubmVyLWNvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYnV0dG9uLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29sdW1uRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbHVtbi1kaXJlY3RpdmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRhaW5lckZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItZmlyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1hbGlnbm1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS90ZXh0LWJhY2tncm91bmQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xuaW1wb3J0IHsgQ29udGVudFRpdGxlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtdGl0bGUtc3BhY2luZy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU1BBQ0lORyB9IGZyb20gJy4uLy4uL3N0eWxlcy9pbmRleCc7XG5pbXBvcnQgeyBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1wb3NpdGlvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBTaW1wb0NvbnRhaW5lckFsaWdtZW50IH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRhaW5lci1hbGlnbm1lbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IFNhbml0aXplSHRtbFBpcGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYW5pdGl6ZUh0bWwnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdmdEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc3ZnLWRpdmlkZXIvc3ZnLWRpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW1hZ2VFZGl0b3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtZWRpdG9yLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpbXBvLWZhcS1zZWN0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFNpbXBvRWxlbWVudHNNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXG4gICAgU2ltcG9Db21wb25lbnRNb2R1bGUsXG4gICAgTWF0SWNvbixcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxuXG4gICAgLy9kaXJlY3RpdmVcbiAgICBBbmltYXRpb25EaXJlY3RpdmUsXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBCYW5uZXJDb250ZW50Rml0RGlyZWN0aXZlLFxuICAgIEJvcmRlckRpcmVjdGl2ZSxcbiAgICBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUsXG4gICAgQ29sdW1uRGlyZWN0aXZlRGlyZWN0aXZlLFxuICAgIENvbnRhaW5lckZpdERpcmVjdGl2ZSxcbiAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcbiAgICBDb3JuZXJEaXJlY3RpdmUsXG4gICAgU2ltcG9Gb290ZXJMYXlvdXREaXJlY3RpdmUsXG4gICAgSG92ZXJEaXJlY3RpdmUsXG4gICAgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUsXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcbiAgICBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSxcbiAgICBUZXh0QmFja2dyb3VuZERpcmVjdGl2ZURpcmVjdGl2ZSxcbiAgICBDb250ZW50VGl0bGVEaXJlY3RpdmUsXG4gICAgT2JqZWN0UG9zaXRpb25EaXJlY3RpdmUsXG4gICAgU2ltcG9Db250YWluZXJBbGlnbWVudCxcbiAgICBTYW5pdGl6ZUh0bWxQaXBlLFxuICAgIFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlLFxuICAgIFN2Z0RpdmlkZXJDb21wb25lbnQsXG4gICAgSW1hZ2VFZGl0b3JEaXJlY3RpdmVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZhcS1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2ZhcS1zZWN0aW9uLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIEZhcVNlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiB7XG4gIEBJbnB1dCgpIGRhdGE/OiBGQVFTZWN0aW9uTW9kYWw7XG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xuICBASW5wdXQoKSBlZGl0PzogYm9vbGVhbjtcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xuICBjb250ZW50PzogRkFRQ29udGVudE1vZGFsO1xuICBzdHlsZT86IEZBUVN0eWxlc01vZGVsO1xuXG4gIHVuQ29sbGFwc2VkTGlzdDogbnVtYmVyW10gPSBbMF07XG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XG4gIH1cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xuXG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzO1xuICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWQgPSB0aGlzLmRlbGV0ZVxuICB9XG4gIGdldCBoZWFkaW5nU3BhY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LmxheW91dC5oZWFkaW5nU3BhY2luZyBhcyBTUEFDSU5HO1xuICB9XG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZT8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XG4gIH1cbiAgdG9nZ2xlQ29udGVudChpZHg6IG51bWJlcikge1xuXG4gICAgLy8gdGhpcy51bkNvbGxhcHNlZExpc3QucHVzaChpZHgpO1xuICAgIGlmICh0aGlzLnVuQ29sbGFwc2VkTGlzdC5pbmNsdWRlcyhpZHgpKSB7XG4gICAgICBpZiAodGhpcy5lZGl0KVxuICAgICAgICByZXR1cm47XG4gICAgICB0aGlzLnVuQ29sbGFwc2VkTGlzdCA9IHRoaXMudW5Db2xsYXBzZWRMaXN0LmZpbHRlcigoaW5kZXg6IG51bWJlcikgPT4gaWR4ICE9IGluZGV4KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLnVuQ29sbGFwc2VkTGlzdCA9IFtdO1xuICAgICAgdGhpcy51bkNvbGxhcHNlZExpc3QucHVzaChpZHgpO1xuICAgIH1cbiAgfVxuICBlZGl0U2VjdGlvbigpIHtcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7IGRhdGE6IHRoaXMuZGF0YSB9KTtcbiAgICB9LCAxMDApO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzogcmVzaXplXCIsIFtcIiRldmVudFwiXSlcbiAgZ2V0U2NyZWVuU2l6ZSgpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICB9XG4gIH1cblxuICBnZXRMYXlvdXQoKSB7XG4gICAgaWYgKHRoaXMuc3R5bGU/LmxheW91dD8uYWxpZ24gPT0gJ2xlZnQnKVxuICAgICAgcmV0dXJuICdqdXN0aWZ5LWNvbnRlbnQtc3RhcnQnXG4gICAgaWYgKHRoaXMuc3R5bGU/LmxheW91dD8uYWxpZ24gPT0gJ2NlbnRlcicpXG4gICAgICByZXR1cm4gJ2p1c3RpZnktY29udGVudC1jZW50ZXInXG4gICAgaWYgKHRoaXMuc3R5bGU/LmxheW91dD8uYWxpZ24gPT0gJ3JpZ2h0JylcbiAgICAgIHJldHVybiAnanVzdGlmeS1jb250ZW50LWVuZCdcbiAgICByZXR1cm4gJ2p1c3RpZnktY29udGVudC1jZW50ZXInXG4gIH1cblxufVxuIiwiPHNlY3Rpb24gW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQmFja2dyb3VuZF09XCJzdHlsZT8uYmFja2dyb3VuZFwiIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCIgc2ltcG9Ib3ZlclxuICAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIiBbYXR0ci5zdHlsZV09XCJjdXN0b21DbGFzc1wiPlxuICA8ZGl2IGNsYXNzPVwiY29sLXh4bC04IHB5LTUgdy0xMDBcIiAjbWFpbkNvbnRhaW5lciBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9PdmVybGF5XT1cInN0eWxlPy5iYWNrZ3JvdW5kXCJcbiAgICBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCIgW3NpbXBvQm9yZGVyXT1cInN0eWxlPy5ib3JkZXJcIiBbc2ltcG9BbmltYXRpb25dPVwic3R5bGU/LmFuaW1hdGlvblwiPlxuXG4gICAgPGRpdiBbc2ltcG9Qb3NpdGlvbkxheW91dERpcmVjdGl2ZV09XCJzdHlsZT8ucG9zaXRpb25MYXlvdXRcIiBjbGFzcz1cInJvd1wiIFtpZF09XCJkYXRhPy5pZFwiXG4gICAgICBbc2ltcG9MYXlvdXRdPVwic3R5bGU/LmxheW91dFwiIFtzaW1wb0NvbnRhaW5lckFsaWdubWVudF09XCJzdHlsZXNMYXlvdXRcIiBbY2xhc3NdPVwiZ2V0TGF5b3V0KClcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWQgZmxleC1jb2wgY29sLWxnLTYgY29sLW1kLTYgY3Vyc29yLXBvaW50ZXIgbXgtMFwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0ZXh0IG9mIGRhdGE/LmNvbnRlbnQ/LmlucHV0VGV4dFwiIGNsYXNzPVwidy0xMDBcIiBbc2ltcG9Db250ZW50VGl0bGVTcGFjZV09XCJoZWFkaW5nU3BhY2VcIj5cbiAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dC52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW1EYXRhIG9mIGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhOyBsZXQgaSA9IGluZGV4XCIgY2xhc3M9XCJkYXRhIGRhdGEtMSB3LTEwMCBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgW25nU3R5bGVdPVwiXG4gICAgdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpICYmIGRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ0dyYWRpZW50J1xuICAgICAgPyB7IGJhY2tncm91bmQ6ICdsaW5lYXItZ3JhZGllbnQoOTBkZWcsICcgKyBkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yICsgJywgJyArIGRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKyAnKScgfVxuICAgICAgOiAgICAgdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpICYmIGRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ1NvbGlkJyA/XG57IGJhY2tncm91bmQgOiBkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yfSA6IHt9XG4gIFwiPlxuICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O2FsaWduLWl0ZW1zOiBjZW50ZXI7anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBjdXJzb3I6IHBvaW50ZXI7XCJcbiAgICAgICAgICAgIGNsYXNzPVwicXVlc3Rpb25cIj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwiaGVhZGluZy1tZWRpdW0gIHBvc2l0aW9uLXJlbGF0aXZlIGNvbnRlbnQtc2lkZSBtYi0wIHRleHQtc3RhcnQgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgICAgICBkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCIgW25nQ2xhc3NdPVwieydmdy02MDAnOnVuQ29sbGFwc2VkTGlzdC5pbmNsdWRlcyhpKX1cIj5cbiAgICAgICAgICAgICAgPCEtLSA8c3BhbiBzdHlsZT1cImRpc3BsYXk6IGJsb2NrO1wiID4gLS0+XG4gICAgICAgICAgICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJpdGVtRGF0YS5pbnB1dFRleHRbMF0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG4gICAgICAgICAgICAgIDwhLS0gPC9zcGFuPiAtLT5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInVuQ29sbGFwc2VkTGlzdC5pbmNsdWRlcyhpKVwiXG4gICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnbGVmdCcgOiBzdHlsZT8ubGF5b3V0Py5hbGlnbiA9PSAncmlnaHQnID8gMCA6ICcnLCAncmlnaHQnIDogc3R5bGU/LmxheW91dD8uYWxpZ24gIT09ICdyaWdodCcgPyAwIDogJyd9XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUNvbnRlbnQoaSlcIj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCIhdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpXCJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwieydsZWZ0JyA6IHN0eWxlPy5sYXlvdXQ/LmFsaWduID09ICdyaWdodCcgPyAwIDogJycsICdyaWdodCcgOiBzdHlsZT8ubGF5b3V0Py5hbGlnbiAhPT0gJ3JpZ2h0JyA/IDAgOiAnJ31cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlQ29udGVudChpKVwiPmFkZDwvbWF0LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJvZHktbGFyZ2UgZGVzYyBtdWx0aS1jb2xsYXBzZSB0ZXh0LXN0YXJ0IGN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnY29sbGFwc2UnOiAhdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpfVwiPlxuICAgICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cIml0ZW1EYXRhLmlucHV0VGV4dFsxXS52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTAgY29sLXNtLTYgY29sLW1kLTYgY29sLWxnLTYgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiICpuZ0lmPVwiY29udGVudD8uaW1hZ2U/LnNob3dJbWFnZVwiPlxuICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5pbWFnZT8udXJsXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGU/LmltYWdlXCIgW2lkXT1cImRhdGE/LmlkXCJcbiAgICAgICAgICBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJjb250ZW50Py5pbWFnZT8ucG9zaXRpb25cIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIlxuICAgICAgICAgIFtjbGFzc109XCJkYXRhPy5pZCsoY29udGVudD8uaW1hZ2U/LmlkIHx8ICcnKVwiIGNsYXNzPVwiZC1ibG9jayBteC1sZy1hdXRvIGltZy1mbHVpZFwiXG4gICAgICAgICAgW2FsdF09XCJjb250ZW50Py5pbWFnZT8uYWx0VGV4dFwiIGxvYWRpbmc9XCJsYXp5XCIgW2FwcEltYWdlRWRpdG9yXT1cImVkaXQgfHwgZmFsc2VcIiBbaW1hZ2VEYXRhXT1cImNvbnRlbnQ/LmltYWdlXCJcbiAgICAgICAgICBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgY2xhc3M9XCJoLTEwMCB3LTEwMFwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIDxkaXYgKm5nSWY9XCJjb250ZW50Py5pbWFnZT8uc2hvd0ltYWdlICYmIHNjcmVlbldpZHRoID4gNDc1XCIgY2xhc3M9XCJyb3cgZy01XCIgW2lkXT1cImRhdGE/LmlkXCJcbiAgICAgIFtzaW1wb0xheW91dF09XCJzdHlsZT8ubGF5b3V0XCIgW3NpbXBvUG9zaXRpb25MYXlvdXREaXJlY3RpdmVdPVwic3R5bGU/LnBvc2l0aW9uTGF5b3V0XCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2FsaWduLWl0ZW1zLXN0cmV0Y2gnOiBzdHlsZT8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnbGVmdCcgfHwgc3R5bGU/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ3JpZ2h0JyB9XCI+XG5cblxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02IGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgZ2FwLTE1IGNvbnRlbnQtc2lkZSBcIlxuICAgICAgICBbc2ltcG9Db250YWluZXJBbGlnbm1lbnRdPVwic3R5bGVzTGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQ29udGVudEFsaWdubWVudF09XCJzdHlsZT8uY29udGVudEFsaWdubWVudFwiPlxuXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHRleHQgb2YgZGF0YT8uY29udGVudD8uaW5wdXRUZXh0XCIgY2xhc3M9XCJcIiBbc2ltcG9Db250ZW50VGl0bGVTcGFjZV09XCJoZWFkaW5nU3BhY2VcIj5cbiAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dC52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBbc2ltcG9Db250YWluZXJBbGlnbm1lbnRdPVwic3R5bGVzTGF5b3V0XCIgKm5nRm9yPVwibGV0IGl0ZW1EYXRhIG9mIGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhO2xldCBpID0gaW5kZXhcIlxuICAgICAgICAgIGNsYXNzPVwiZGF0YVwiIChjbGljayk9XCJ0b2dnbGVDb250ZW50KGkpXCI+XG4gICAgICAgICAgPHAgY2xhc3M9XCJoZWFkaW5nLW1lZGl1bSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHBvc2l0aW9uLXJlbGF0aXZlIGNvbnRlbnQtc2lkZSBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICBkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCI+XG4gICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwiaXRlbURhdGEuaW5wdXRUZXh0WzBdLnZhbHVlXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwidW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpXCJcbiAgICAgICAgICAgICAgc3R5bGU9XCJwb3NpdGlvbjpyZWxhdGl2ZTsgcmlnaHQ6IDBweDtcIj5rZXlib2FyZF9hcnJvd191cDwvbWF0LWljb24+XG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCIhdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpXCJcbiAgICAgICAgICAgICAgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7IHJpZ2h0OiAwcHg7XCI+a2V5Ym9hcmRfYXJyb3dfZG93bjwvbWF0LWljb24+XG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJib2R5LWxhcmdlIGRlc2MgbXVsdGktY29sbGFwc2UgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydjb2xsYXBzZSc6ICF1bkNvbGxhcHNlZExpc3QuaW5jbHVkZXMoaSl9XCI+XG4gICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwiaXRlbURhdGEuaW5wdXRUZXh0WzFdLnZhbHVlXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMCBjb2wtc20tOCBjb2wtbGctNlwiIFtzaW1wb0NvbnRhaW5lckFsaWdubWVudF09XCJzdHlsZXNMYXlvdXRcIiAqbmdJZj1cImNvbnRlbnQ/LmltYWdlPy5zaG93SW1hZ2VcIj5cbiAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIFtzcmNdPVwiY29udGVudD8uaW1hZ2U/LnVybFwiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlPy5pbWFnZVwiIFtpZF09XCJkYXRhPy5pZFwiXG4gICAgICAgICAgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiY29udGVudD8uaW1hZ2U/LnBvc2l0aW9uXCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCJcbiAgICAgICAgICBbY2xhc3NdPVwiZGF0YT8uaWQrKGNvbnRlbnQ/LmltYWdlPy5pZCB8fCAnJylcIiBjbGFzcz1cImQtYmxvY2sgbXgtbGctYXV0byBpbWctZmx1aWRcIlxuICAgICAgICAgIFthbHRdPVwiY29udGVudD8uaW1hZ2U/LmFsdFRleHRcIiBsb2FkaW5nPVwibGF6eVwiIFthcHBJbWFnZUVkaXRvcl09XCJlZGl0IHx8IGZhbHNlXCIgW2ltYWdlRGF0YV09XCJjb250ZW50Py5pbWFnZVwiXG4gICAgICAgICAgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4gLS0+XG4gIDwvZGl2PlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZT8uZGV2aWRlcj8uZGlzcGxheVwiPlxuICAgIDxzaW1wby1zdmctZGl2aWRlciBbZGl2aWRlclR5cGVdPVwic3R5bGU/LmRldmlkZXI/LmRldmlkZXJUeXBlXCJcbiAgICAgIFtjb2xvcl09XCJuZXh0Q29tcG9uZW50Q29sb3I/LmNvbG9yXCI+PC9zaW1wby1zdmctZGl2aWRlcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCI+PC9zaW1wby1ob3Zlci1lbGVtZW50cz5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XG4gICAgPHNpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50IFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIj48L3NpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50PlxuICA8L2Rpdj5cbjwvc2VjdGlvbj4iXX0=
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFxLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9mYXEtc2VjdGlvbi9mYXEtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ZhcS1zZWN0aW9uL2ZhcS1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxlQUFl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QUFtQjt3QkFFbkIsV0FBVzt3QkFDWCxrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIseUJBQXlCO3dCQUN6QixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLDhCQUE4Qjt3QkFDOUIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLDBCQUEwQjt3QkFDMUIsY0FBYzt3QkFDZCx1QkFBdUI7d0JBQ3ZCLGdCQUFnQjt3QkFDaEIsZ0NBQWdDO3dCQUNoQyxnQ0FBZ0M7d0JBQ2hDLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLGdCQUFnQjt3QkFDaEIsMEJBQTBCO3dCQUMxQixtQkFBbUI7d0JBQ25CLG9CQUFvQjtxQkFDckI7a0ZBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQTRDTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZBUUNvbnRlbnRNb2RhbCwgRkFRU2VjdGlvbk1vZGFsLCBGQVFTdHlsZXNNb2RlbCB9IGZyb20gJy4vZmFxLXNlY3Rpb24ubW9kYWwnO1xuaW1wb3J0IHsgU2ltcG9FbGVtZW50c01vZHVsZSB9IGZyb20gJy4vLi4vLi4vZWxlbWVudHMvaW5kZXgnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNpbXBvQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9pbmRleCc7XG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhbm5lckNvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFubmVyLWNvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYnV0dG9uLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29sdW1uRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbHVtbi1kaXJlY3RpdmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRhaW5lckZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItZmlyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1hbGlnbm1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS90ZXh0LWJhY2tncm91bmQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xuaW1wb3J0IHsgQ29udGVudFRpdGxlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtdGl0bGUtc3BhY2luZy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU1BBQ0lORyB9IGZyb20gJy4uLy4uL3N0eWxlcy9pbmRleCc7XG5pbXBvcnQgeyBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1wb3NpdGlvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBTaW1wb0NvbnRhaW5lckFsaWdtZW50IH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRhaW5lci1hbGlnbm1lbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IFNhbml0aXplSHRtbFBpcGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYW5pdGl6ZUh0bWwnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdmdEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc3ZnLWRpdmlkZXIvc3ZnLWRpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW1hZ2VFZGl0b3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtZWRpdG9yLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpbXBvLWZhcS1zZWN0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFNpbXBvRWxlbWVudHNNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXG4gICAgU2ltcG9Db21wb25lbnRNb2R1bGUsXG4gICAgTWF0SWNvbixcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxuXG4gICAgLy9kaXJlY3RpdmVcbiAgICBBbmltYXRpb25EaXJlY3RpdmUsXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBCYW5uZXJDb250ZW50Rml0RGlyZWN0aXZlLFxuICAgIEJvcmRlckRpcmVjdGl2ZSxcbiAgICBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUsXG4gICAgQ29sdW1uRGlyZWN0aXZlRGlyZWN0aXZlLFxuICAgIENvbnRhaW5lckZpdERpcmVjdGl2ZSxcbiAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcbiAgICBDb3JuZXJEaXJlY3RpdmUsXG4gICAgU2ltcG9Gb290ZXJMYXlvdXREaXJlY3RpdmUsXG4gICAgSG92ZXJEaXJlY3RpdmUsXG4gICAgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUsXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcbiAgICBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSxcbiAgICBUZXh0QmFja2dyb3VuZERpcmVjdGl2ZURpcmVjdGl2ZSxcbiAgICBDb250ZW50VGl0bGVEaXJlY3RpdmUsXG4gICAgT2JqZWN0UG9zaXRpb25EaXJlY3RpdmUsXG4gICAgU2ltcG9Db250YWluZXJBbGlnbWVudCxcbiAgICBTYW5pdGl6ZUh0bWxQaXBlLFxuICAgIFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlLFxuICAgIFN2Z0RpdmlkZXJDb21wb25lbnQsXG4gICAgSW1hZ2VFZGl0b3JEaXJlY3RpdmVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZhcS1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2ZhcS1zZWN0aW9uLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIEZhcVNlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiB7XG4gIEBJbnB1dCgpIGRhdGE/OiBGQVFTZWN0aW9uTW9kYWw7XG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xuICBASW5wdXQoKSBlZGl0PzogYm9vbGVhbjtcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xuICBjb250ZW50PzogRkFRQ29udGVudE1vZGFsO1xuICBzdHlsZT86IEZBUVN0eWxlc01vZGVsO1xuXG4gIHVuQ29sbGFwc2VkTGlzdDogbnVtYmVyW10gPSBbMF07XG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XG4gIH1cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xuXG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzO1xuICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWQgPSB0aGlzLmRlbGV0ZVxuICB9XG4gIGdldCBoZWFkaW5nU3BhY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LmxheW91dC5oZWFkaW5nU3BhY2luZyBhcyBTUEFDSU5HO1xuICB9XG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZT8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XG4gIH1cbiAgdG9nZ2xlQ29udGVudChpZHg6IG51bWJlcikge1xuXG4gICAgLy8gdGhpcy51bkNvbGxhcHNlZExpc3QucHVzaChpZHgpO1xuICAgIGlmICh0aGlzLnVuQ29sbGFwc2VkTGlzdC5pbmNsdWRlcyhpZHgpKSB7XG4gICAgICBpZiAodGhpcy5lZGl0KVxuICAgICAgICByZXR1cm47XG4gICAgICB0aGlzLnVuQ29sbGFwc2VkTGlzdCA9IHRoaXMudW5Db2xsYXBzZWRMaXN0LmZpbHRlcigoaW5kZXg6IG51bWJlcikgPT4gaWR4ICE9IGluZGV4KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLnVuQ29sbGFwc2VkTGlzdCA9IFtdO1xuICAgICAgdGhpcy51bkNvbGxhcHNlZExpc3QucHVzaChpZHgpO1xuICAgIH1cbiAgfVxuICBlZGl0U2VjdGlvbigpIHtcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7IGRhdGE6IHRoaXMuZGF0YSB9KTtcbiAgICB9LCAxMDApO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzogcmVzaXplXCIsIFtcIiRldmVudFwiXSlcbiAgZ2V0U2NyZWVuU2l6ZSgpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICB9XG4gIH1cblxuICBnZXRMYXlvdXQoKSB7XG4gICAgaWYgKHRoaXMuc3R5bGU/LmxheW91dD8uYWxpZ24gPT0gJ2xlZnQnKVxuICAgICAgcmV0dXJuICdqdXN0aWZ5LWNvbnRlbnQtc3RhcnQnXG4gICAgaWYgKHRoaXMuc3R5bGU/LmxheW91dD8uYWxpZ24gPT0gJ2NlbnRlcicpXG4gICAgICByZXR1cm4gJ2p1c3RpZnktY29udGVudC1jZW50ZXInXG4gICAgaWYgKHRoaXMuc3R5bGU/LmxheW91dD8uYWxpZ24gPT0gJ3JpZ2h0JylcbiAgICAgIHJldHVybiAnanVzdGlmeS1jb250ZW50LWVuZCdcbiAgICByZXR1cm4gJ2p1c3RpZnktY29udGVudC1jZW50ZXInXG4gIH1cblxufVxuIiwiPHNlY3Rpb24gW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQmFja2dyb3VuZF09XCJzdHlsZT8uYmFja2dyb3VuZFwiIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCIgc2ltcG9Ib3ZlclxuICAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIiBbYXR0ci5zdHlsZV09XCJjdXN0b21DbGFzc1wiPlxuICA8ZGl2IGNsYXNzPVwiY29sLXh4bC04IHB5LTUgdy0xMDBcIiAjbWFpbkNvbnRhaW5lciBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9PdmVybGF5XT1cInN0eWxlPy5iYWNrZ3JvdW5kXCJcbiAgICBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCIgW3NpbXBvQm9yZGVyXT1cInN0eWxlPy5ib3JkZXJcIiBbc2ltcG9BbmltYXRpb25dPVwic3R5bGU/LmFuaW1hdGlvblwiPlxuXG4gICAgPGRpdiBbc2ltcG9Qb3NpdGlvbkxheW91dERpcmVjdGl2ZV09XCJzdHlsZT8ucG9zaXRpb25MYXlvdXRcIiBjbGFzcz1cInJvd1wiIFtpZF09XCJkYXRhPy5pZFwiXG4gICAgICBbc2ltcG9MYXlvdXRdPVwic3R5bGU/LmxheW91dFwiIFtzaW1wb0NvbnRhaW5lckFsaWdubWVudF09XCJzdHlsZXNMYXlvdXRcIiBbY2xhc3NdPVwiZ2V0TGF5b3V0KClcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWQgZmxleC1jb2wgY29sLWxnLTYgY29sLW1kLTYgY3Vyc29yLXBvaW50ZXIgbXgtMFwiIFtjbGFzcy5jb2wtbGctOV09XCIhY29udGVudD8uaW1hZ2U/LnNob3dJbWFnZVwiIFtjbGFzcy5jb2wtbWQtOV09XCIhY29udGVudD8uaW1hZ2U/LnNob3dJbWFnZVwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0ZXh0IG9mIGRhdGE/LmNvbnRlbnQ/LmlucHV0VGV4dFwiIGNsYXNzPVwidy0xMDBcIiBbc2ltcG9Db250ZW50VGl0bGVTcGFjZV09XCJoZWFkaW5nU3BhY2VcIj5cbiAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dC52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW1EYXRhIG9mIGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhOyBsZXQgaSA9IGluZGV4XCIgY2xhc3M9XCJkYXRhIGRhdGEtMSB3LTEwMCBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgW25nU3R5bGVdPVwiXG4gICAgdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpICYmIGRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ0dyYWRpZW50J1xuICAgICAgPyB7IGJhY2tncm91bmQ6ICdsaW5lYXItZ3JhZGllbnQoOTBkZWcsICcgKyBkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yICsgJywgJyArIGRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKyAnKScgfVxuICAgICAgOiAgICAgdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpICYmIGRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ1NvbGlkJyA/XG57IGJhY2tncm91bmQgOiBkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yfSA6IHt9XG4gIFwiPlxuICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O2FsaWduLWl0ZW1zOiBjZW50ZXI7anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBjdXJzb3I6IHBvaW50ZXI7XCJcbiAgICAgICAgICAgIGNsYXNzPVwicXVlc3Rpb25cIj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwiaGVhZGluZy1tZWRpdW0gIHBvc2l0aW9uLXJlbGF0aXZlIGNvbnRlbnQtc2lkZSBtYi0wIHRleHQtc3RhcnQgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgICAgICBkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCIgW25nQ2xhc3NdPVwieydmdy02MDAnOnVuQ29sbGFwc2VkTGlzdC5pbmNsdWRlcyhpKX1cIj5cbiAgICAgICAgICAgICAgPCEtLSA8c3BhbiBzdHlsZT1cImRpc3BsYXk6IGJsb2NrO1wiID4gLS0+XG4gICAgICAgICAgICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJpdGVtRGF0YS5pbnB1dFRleHRbMF0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG4gICAgICAgICAgICAgIDwhLS0gPC9zcGFuPiAtLT5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInVuQ29sbGFwc2VkTGlzdC5pbmNsdWRlcyhpKVwiXG4gICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnbGVmdCcgOiBzdHlsZT8ubGF5b3V0Py5hbGlnbiA9PSAncmlnaHQnID8gMCA6ICcnLCAncmlnaHQnIDogc3R5bGU/LmxheW91dD8uYWxpZ24gIT09ICdyaWdodCcgPyAwIDogJyd9XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUNvbnRlbnQoaSlcIj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCIhdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpXCJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwieydsZWZ0JyA6IHN0eWxlPy5sYXlvdXQ/LmFsaWduID09ICdyaWdodCcgPyAwIDogJycsICdyaWdodCcgOiBzdHlsZT8ubGF5b3V0Py5hbGlnbiAhPT0gJ3JpZ2h0JyA/IDAgOiAnJ31cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlQ29udGVudChpKVwiPmFkZDwvbWF0LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJvZHktbGFyZ2UgZGVzYyBtdWx0aS1jb2xsYXBzZSB0ZXh0LXN0YXJ0IGN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnY29sbGFwc2UnOiAhdW5Db2xsYXBzZWRMaXN0LmluY2x1ZGVzKGkpfVwiPlxuICAgICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cIml0ZW1EYXRhLmlucHV0VGV4dFsxXS52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTAgY29sLXNtLTYgY29sLW1kLTYgY29sLWxnLTYgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiICpuZ0lmPVwiY29udGVudD8uaW1hZ2U/LnNob3dJbWFnZVwiPlxuICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5pbWFnZT8udXJsXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGU/LmltYWdlXCIgW2lkXT1cImRhdGE/LmlkXCJcbiAgICAgICAgICBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJjb250ZW50Py5pbWFnZT8ucG9zaXRpb25cIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIlxuICAgICAgICAgIFtjbGFzc109XCJkYXRhPy5pZCsoY29udGVudD8uaW1hZ2U/LmlkIHx8ICcnKVwiIGNsYXNzPVwiZC1ibG9jayBteC1sZy1hdXRvIGltZy1mbHVpZFwiXG4gICAgICAgICAgW2FsdF09XCJjb250ZW50Py5pbWFnZT8uYWx0VGV4dFwiIGxvYWRpbmc9XCJsYXp5XCIgW2FwcEltYWdlRWRpdG9yXT1cImVkaXQgfHwgZmFsc2VcIiBbaW1hZ2VEYXRhXT1cImNvbnRlbnQ/LmltYWdlXCJcbiAgICAgICAgICBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgY2xhc3M9XCJoLTEwMCB3LTEwMFwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlPy5kZXZpZGVyPy5kaXNwbGF5XCI+XG4gICAgPHNpbXBvLXN2Zy1kaXZpZGVyIFtkaXZpZGVyVHlwZV09XCJzdHlsZT8uZGV2aWRlcj8uZGV2aWRlclR5cGVcIlxuICAgICAgW2NvbG9yXT1cIm5leHRDb21wb25lbnRDb2xvcj8uY29sb3JcIj48L3NpbXBvLXN2Zy1kaXZpZGVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cbiAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XG4gIDwvZGl2PlxuPC9zZWN0aW9uPiJdfQ==
|
@@ -103,7 +103,7 @@ export class FooterComponent extends BaseSection {
|
|
103
103
|
});
|
104
104
|
}
|
105
105
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FooterComponent, deps: [{ token: i1.EventsService }, { token: i2.RestService }, { token: i3.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
106
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FooterComponent, isStandalone: true, selector: "simpo-footer", inputs: { data: "data", index: "index", edit: "edit", delete: "delete" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section class=\"total-container\" simpoHover\n(hovering)=\"showEditTabs($event)\"[spacingHorizontal]=\"stylesLayout\" [simpoBackground]=\"style?.background\" [simpoLayout]=\"style?.layout\" [id]=\"data?.id\"\n[style.border]=\"'2px solid' + style?.background?.accentColor\">\n <div>\n <ng-container *ngIf=\"style?.footerType == 'Footer1'\">\n <ng-container *ngTemplateOutlet=\"Footer1\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer2'\">\n <ng-container *ngTemplateOutlet=\"Footer2\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer3'\">\n <ng-container *ngTemplateOutlet=\"Footer3\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer4'\">\n <ng-container *ngTemplateOutlet=\"Footer4\"></ng-container>\n </ng-container>\n </div>\n\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n\n<ng-template #Footer1>\n <div class=\"row align-items-center\">\n <div class=\"col-md-4\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-8\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer2>\n <div class=\"row align-items-center\">\n <div class=\"col-md-3\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-9\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer3>\n <div class=\"row\" [class.align-items-start]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\"\n [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #Footer4>\n <div class=\"row align-items-center\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #logoSection>\n <div class=\"d-flex\" [class.justify-content-center]=\"screenWidth < 475\">\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"!content?.logo?.isImage || !content?.logo?.image?.url\">\n <div *ngIf=\"content?.logo?.text?.isIcon && content?.logo?.text?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.text?.url\" alt=\"logo\" [width]=\"content?.logo?.size\" loading=\"lazy\">\n </div>\n <div class=\"heading-small\" *ngIf=\"content?.logo?.text?.isText\" [simpoColor]=\"style?.background?.color\">\n <b [ngStyle]=\"{'font-family': content?.logo?.text?.fontFamily}\">{{content?.siteName?.value}}</b>\n </div>\n </div>\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"content?.logo?.isImage && content?.logo?.image?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.image?.url\" alt=\"logo\"\n [style.width.%]=\"screenWidth > 475 || (content?.logo?.size || 10) < 50 ? content?.logo?.size : ((content?.logo?.size || 10) - 10)\"\n loading=\"lazy\">\n </div>\n </div>\n</ng-template>\n\n<ng-template #descSection>\n <ng-container *ngIf = \"content?.additionalDetails as textItem\" >\n <simpo-text-editor [(value)]=\"textItem.value \" [editable]=\"edit || false\" [sectionId]=\"data?.id\" [label]=\"content?.additionalDetails?.label || ''\"></simpo-text-editor>\n </ng-container> <!-- <div class=\"description\" [innerHTML]=\"content?.additionalDetails?.value ?? '' | sanitizeHtml\"></div> -->\n</ng-template>\n\n<ng-template #socialIcons>\n <div class=\"d-flex align-items-start align-items-lg-center flex-column flex-lg-row gap-lg-0 gap-3\"\n [ngClass]=\"content?.socialLinks?.display ? 'justify-content-between' : 'justify-content-end'\">\n <div class=\"d-flex mt-0\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngFor=\"let item of content?.socialLinks?.channels\">\n <div class=\"icons\">\n <simpo-socia-icons [iconColor]=\"data?.styles?.background?.accentColor\" [socialIconData]=\"item\"\n [color]=\"style?.background?.color\" [sectionId]=\"data?.id\"></simpo-socia-icons>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #branding>\n <div class=\"heading-small text-center branding-text\">Made with <a class=\"branding-text fw-600\"\n href=\"https://simpo.ai\" target=\"_blank\">Simpo</a></div>\n</ng-template>\n\n<ng-template #pagesHorizontal>\n <div class=\"col-md-3 mb-3 pageType\" *ngFor=\"let page of pages\" [class.w-50]=\"screenWidth < 475\" [class.text-center]=\"screenWidth < 475\" (click)=\"redirectToPage(page)\">\n {{page.pageName}}\n </div>\n</ng-template>\n\n<!-- <ng-template #pagesVertical>\n <div class=\"page-container col-md-3 mb-3\" [class.w-50]=\"screenWidth < 475\">\n <div class=\"pageType mb-3\">{{pageLink}}</div>\n <ng-container *ngFor=\"let page of pages\">\n <div class=\"pages mb-2\" (click)=\"redirectToPage(page)\">{{page?.pageName}}</div>\n </ng-container>\n </div>\n</ng-template> -->\n\n<ng-template #foldersVertical>\n <div class=\"page-container col-md-3 mb-3\" *ngFor=\"let folder of content?.folder;let folderIndex = index\" [class.w-50]=\"screenWidth < 475\">\n <simpo-text-editor [(value)]=\"folder.label\" [editable]=\"edit || false\" [sectionId]=\"data?.id\"></simpo-text-editor>\n <div class=\"mt-15\">\n <ng-container *ngFor=\"let page of folder.links;let linkIndex = index\">\n <div class=\"folder-page\" [ngClass]=\"{'hoverWhenEditable' : edit}\">\n <div class=\"pages mb-2\" (click)=\"redirectTo(page)\" [style.color]=\"style?.background?.accentColor\">{{page.label}}</div>\n <mat-icon (click)=\"deleteFolderLinks(folderIndex, linkIndex)\" [style.color]=\"style?.background?.accentColor\">delete</mat-icon>\n </div>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"edit ? addLinks : null; context: {data: folderIndex}\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-3\" *ngIf=\"(content?.folder?.length || 0) < 4\" [class.w-50]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"edit ? addFolder : null\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #addLinks let-folderIndex=\"data\">\n <div class=\"addLinks\" (click)=\"createNewLink(folderIndex)\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n\n<ng-template #addFolder>\n <div class=\"addLinks h-100\" (click)=\"createNewFolder()\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n", styles: [".total-container{height:auto;position:relative}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.pageType{font-size:.9rem;font-weight:600;line-height:22px;color:#87769d}.pages{font-size:.9rem;font-weight:400;line-height:22px;cursor:pointer;color:#87769d}.branding-text{font-size:16px;font-weight:400;line-height:22px;text-decoration:unset}.fw-600{font-weight:600!important}.w-50{width:50%!important}.w-30{width:30%!important}.align-items-start{align-items:start!important}.mt-15{margin-top:15px}.folder-page{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.folder-page mat-icon{font-size:17px;display:flex;align-items:center;justify-content:center;display:none}.hoverWhenEditable:hover{border:1px solid #E9E9E9;border-radius:5px;cursor:pointer}.hoverWhenEditable:hover mat-icon{display:inline}.addLinks{padding-bottom:8px;padding-top:9px;border:1px dashed;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px}.addLinks mat-icon{border:1px solid rgb(219,223,225);display:flex;border-radius:100%;align-items:center;justify-content:center;font-size:16px;color:#dbdfe1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: ColorDirective, selector: "[simpoColor]", inputs: ["simpoColor"] }, { kind: "component", type: SociaIconsComponent, selector: "simpo-socia-icons", inputs: ["socialIconData", "color", "sectionId", "iconColor"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i5.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i6.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type:
|
106
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FooterComponent, isStandalone: true, selector: "simpo-footer", inputs: { data: "data", index: "index", edit: "edit", delete: "delete" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section class=\"total-container\" simpoHover\n(hovering)=\"showEditTabs($event)\"[spacingHorizontal]=\"stylesLayout\" [simpoBackground]=\"style?.background\" [simpoLayout]=\"style?.layout\" [id]=\"data?.id\"\n[style.border]=\"'2px solid' + style?.background?.accentColor\">\n <div>\n <ng-container *ngIf=\"style?.footerType == 'Footer1'\">\n <ng-container *ngTemplateOutlet=\"Footer1\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer2'\">\n <ng-container *ngTemplateOutlet=\"Footer2\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer3'\">\n <ng-container *ngTemplateOutlet=\"Footer3\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer4'\">\n <ng-container *ngTemplateOutlet=\"Footer4\"></ng-container>\n </ng-container>\n </div>\n\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n\n<ng-template #Footer1>\n <div class=\"row align-items-center\">\n <div class=\"col-md-4\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-8\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer2>\n <div class=\"row align-items-center\">\n <div class=\"col-md-3\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-9\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer3>\n <div class=\"row\" [class.align-items-start]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\"\n [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #Footer4>\n <div class=\"row align-items-center\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #logoSection>\n <div class=\"d-flex\" [class.justify-content-center]=\"screenWidth < 475\">\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"!content?.logo?.isImage || !content?.logo?.image?.url\">\n <div *ngIf=\"content?.logo?.text?.isIcon && content?.logo?.text?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.text?.url\" alt=\"logo\" [width]=\"content?.logo?.size\" loading=\"lazy\">\n </div>\n <div class=\"heading-small\" *ngIf=\"content?.logo?.text?.isText\" [simpoColor]=\"style?.background?.color\">\n <b [ngStyle]=\"{'font-family': content?.logo?.text?.fontFamily}\">{{content?.siteName?.value}}</b>\n </div>\n </div>\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"content?.logo?.isImage && content?.logo?.image?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.image?.url\" alt=\"logo\"\n [style.width.%]=\"screenWidth > 475 || (content?.logo?.size || 10) < 50 ? content?.logo?.size : ((content?.logo?.size || 10) - 10)\"\n loading=\"lazy\">\n </div>\n </div>\n</ng-template>\n\n<ng-template #descSection>\n <ng-container *ngIf = \"content?.additionalDetails as textItem\" >\n <simpo-text-editor [(value)]=\"textItem.value \" [editable]=\"edit || false\" [sectionId]=\"data?.id\" [label]=\"content?.additionalDetails?.label || ''\"></simpo-text-editor>\n </ng-container> <!-- <div class=\"description\" [innerHTML]=\"content?.additionalDetails?.value ?? '' | sanitizeHtml\"></div> -->\n</ng-template>\n\n<ng-template #socialIcons>\n <div class=\"d-flex align-items-start align-items-lg-center flex-column flex-lg-row gap-lg-0 gap-3\"\n [ngClass]=\"content?.socialLinks?.display ? 'justify-content-between' : 'justify-content-end'\">\n <div class=\"d-flex mt-0 gap-1\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngFor=\"let item of content?.socialLinks?.channels\">\n <div class=\"icons\">\n <simpo-socia-icons [iconColor]=\"data?.styles?.background?.accentColor\" [socialIconData]=\"item\"\n [color]=\"style?.background?.color\" [sectionId]=\"data?.id\"></simpo-socia-icons>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #branding>\n <div class=\"heading-small text-center branding-text\">Made with <a class=\"branding-text fw-600\"\n href=\"https://simpo.ai\" target=\"_blank\">Simpo</a></div>\n</ng-template>\n\n<ng-template #pagesHorizontal>\n <div class=\"col-md-3 mb-3 pageType\" *ngFor=\"let page of pages\" [class.w-50]=\"screenWidth < 475\" [class.text-center]=\"screenWidth < 475\" (click)=\"redirectToPage(page)\">\n {{page.pageName}}\n </div>\n</ng-template>\n\n<!-- <ng-template #pagesVertical>\n <div class=\"page-container col-md-3 mb-3\" [class.w-50]=\"screenWidth < 475\">\n <div class=\"pageType mb-3\">{{pageLink}}</div>\n <ng-container *ngFor=\"let page of pages\">\n <div class=\"pages mb-2\" (click)=\"redirectToPage(page)\">{{page?.pageName}}</div>\n </ng-container>\n </div>\n</ng-template> -->\n\n<ng-template #foldersVertical>\n <div class=\"page-container col-md-3 mb-3\" *ngFor=\"let folder of content?.folder;let folderIndex = index\" [class.w-50]=\"screenWidth < 475\">\n <simpo-text-editor [(value)]=\"folder.label\" [editable]=\"edit || false\" [sectionId]=\"data?.id\"></simpo-text-editor>\n <div class=\"mt-15\">\n <ng-container *ngFor=\"let page of folder.links;let linkIndex = index\">\n <div class=\"folder-page\" [ngClass]=\"{'hoverWhenEditable' : edit}\">\n <div class=\"pages mb-2\" (click)=\"redirectTo(page)\" [style.color]=\"style?.background?.accentColor\">{{page.label}}</div>\n <mat-icon (click)=\"deleteFolderLinks(folderIndex, linkIndex)\" [style.color]=\"style?.background?.accentColor\">delete</mat-icon>\n </div>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"edit ? addLinks : null; context: {data: folderIndex}\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-3\" *ngIf=\"(content?.folder?.length || 0) < 4\" [class.w-50]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"edit ? addFolder : null\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #addLinks let-folderIndex=\"data\">\n <div class=\"addLinks\" (click)=\"createNewLink(folderIndex)\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n\n<ng-template #addFolder>\n <div class=\"addLinks h-100\" (click)=\"createNewFolder()\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n", styles: [".total-container{height:auto;position:relative}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.pageType{font-size:.9rem;font-weight:600;line-height:22px;color:#87769d}.pages{font-size:.9rem;font-weight:400;line-height:22px;cursor:pointer;color:#87769d}.branding-text{font-size:16px;font-weight:400;line-height:22px;text-decoration:unset}.fw-600{font-weight:600!important}.w-50{width:50%!important}.w-30{width:30%!important}.align-items-start{align-items:start!important}.mt-15{margin-top:15px}.folder-page{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.folder-page mat-icon{font-size:17px;display:flex;align-items:center;justify-content:center;display:none}.hoverWhenEditable:hover{border:1px solid #E9E9E9;border-radius:5px;cursor:pointer}.hoverWhenEditable:hover mat-icon{display:inline}.addLinks{padding-bottom:8px;padding-top:9px;border:1px dashed;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px}.addLinks mat-icon{border:1px solid rgb(219,223,225);display:flex;border-radius:100%;align-items:center;justify-content:center;font-size:16px;color:#dbdfe1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: ColorDirective, selector: "[simpoColor]", inputs: ["simpoColor"] }, { kind: "component", type: SociaIconsComponent, selector: "simpo-socia-icons", inputs: ["socialIconData", "color", "sectionId", "iconColor"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i5.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i6.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type:
|
107
107
|
//directives
|
108
108
|
SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "sectionId", "label"], outputs: ["valueChange"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }] }); }
|
109
109
|
}
|
@@ -123,7 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
123
123
|
ContentFitDirective,
|
124
124
|
TextEditorComponent,
|
125
125
|
HoverDirective
|
126
|
-
], template: "<section class=\"total-container\" simpoHover\n(hovering)=\"showEditTabs($event)\"[spacingHorizontal]=\"stylesLayout\" [simpoBackground]=\"style?.background\" [simpoLayout]=\"style?.layout\" [id]=\"data?.id\"\n[style.border]=\"'2px solid' + style?.background?.accentColor\">\n <div>\n <ng-container *ngIf=\"style?.footerType == 'Footer1'\">\n <ng-container *ngTemplateOutlet=\"Footer1\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer2'\">\n <ng-container *ngTemplateOutlet=\"Footer2\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer3'\">\n <ng-container *ngTemplateOutlet=\"Footer3\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer4'\">\n <ng-container *ngTemplateOutlet=\"Footer4\"></ng-container>\n </ng-container>\n </div>\n\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n\n<ng-template #Footer1>\n <div class=\"row align-items-center\">\n <div class=\"col-md-4\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-8\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer2>\n <div class=\"row align-items-center\">\n <div class=\"col-md-3\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-9\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer3>\n <div class=\"row\" [class.align-items-start]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\"\n [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #Footer4>\n <div class=\"row align-items-center\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #logoSection>\n <div class=\"d-flex\" [class.justify-content-center]=\"screenWidth < 475\">\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"!content?.logo?.isImage || !content?.logo?.image?.url\">\n <div *ngIf=\"content?.logo?.text?.isIcon && content?.logo?.text?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.text?.url\" alt=\"logo\" [width]=\"content?.logo?.size\" loading=\"lazy\">\n </div>\n <div class=\"heading-small\" *ngIf=\"content?.logo?.text?.isText\" [simpoColor]=\"style?.background?.color\">\n <b [ngStyle]=\"{'font-family': content?.logo?.text?.fontFamily}\">{{content?.siteName?.value}}</b>\n </div>\n </div>\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"content?.logo?.isImage && content?.logo?.image?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.image?.url\" alt=\"logo\"\n [style.width.%]=\"screenWidth > 475 || (content?.logo?.size || 10) < 50 ? content?.logo?.size : ((content?.logo?.size || 10) - 10)\"\n loading=\"lazy\">\n </div>\n </div>\n</ng-template>\n\n<ng-template #descSection>\n <ng-container *ngIf = \"content?.additionalDetails as textItem\" >\n <simpo-text-editor [(value)]=\"textItem.value \" [editable]=\"edit || false\" [sectionId]=\"data?.id\" [label]=\"content?.additionalDetails?.label || ''\"></simpo-text-editor>\n </ng-container> <!-- <div class=\"description\" [innerHTML]=\"content?.additionalDetails?.value ?? '' | sanitizeHtml\"></div> -->\n</ng-template>\n\n<ng-template #socialIcons>\n <div class=\"d-flex align-items-start align-items-lg-center flex-column flex-lg-row gap-lg-0 gap-3\"\n [ngClass]=\"content?.socialLinks?.display ? 'justify-content-between' : 'justify-content-end'\">\n <div class=\"d-flex mt-0\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngFor=\"let item of content?.socialLinks?.channels\">\n <div class=\"icons\">\n <simpo-socia-icons [iconColor]=\"data?.styles?.background?.accentColor\" [socialIconData]=\"item\"\n [color]=\"style?.background?.color\" [sectionId]=\"data?.id\"></simpo-socia-icons>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #branding>\n <div class=\"heading-small text-center branding-text\">Made with <a class=\"branding-text fw-600\"\n href=\"https://simpo.ai\" target=\"_blank\">Simpo</a></div>\n</ng-template>\n\n<ng-template #pagesHorizontal>\n <div class=\"col-md-3 mb-3 pageType\" *ngFor=\"let page of pages\" [class.w-50]=\"screenWidth < 475\" [class.text-center]=\"screenWidth < 475\" (click)=\"redirectToPage(page)\">\n {{page.pageName}}\n </div>\n</ng-template>\n\n<!-- <ng-template #pagesVertical>\n <div class=\"page-container col-md-3 mb-3\" [class.w-50]=\"screenWidth < 475\">\n <div class=\"pageType mb-3\">{{pageLink}}</div>\n <ng-container *ngFor=\"let page of pages\">\n <div class=\"pages mb-2\" (click)=\"redirectToPage(page)\">{{page?.pageName}}</div>\n </ng-container>\n </div>\n</ng-template> -->\n\n<ng-template #foldersVertical>\n <div class=\"page-container col-md-3 mb-3\" *ngFor=\"let folder of content?.folder;let folderIndex = index\" [class.w-50]=\"screenWidth < 475\">\n <simpo-text-editor [(value)]=\"folder.label\" [editable]=\"edit || false\" [sectionId]=\"data?.id\"></simpo-text-editor>\n <div class=\"mt-15\">\n <ng-container *ngFor=\"let page of folder.links;let linkIndex = index\">\n <div class=\"folder-page\" [ngClass]=\"{'hoverWhenEditable' : edit}\">\n <div class=\"pages mb-2\" (click)=\"redirectTo(page)\" [style.color]=\"style?.background?.accentColor\">{{page.label}}</div>\n <mat-icon (click)=\"deleteFolderLinks(folderIndex, linkIndex)\" [style.color]=\"style?.background?.accentColor\">delete</mat-icon>\n </div>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"edit ? addLinks : null; context: {data: folderIndex}\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-3\" *ngIf=\"(content?.folder?.length || 0) < 4\" [class.w-50]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"edit ? addFolder : null\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #addLinks let-folderIndex=\"data\">\n <div class=\"addLinks\" (click)=\"createNewLink(folderIndex)\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n\n<ng-template #addFolder>\n <div class=\"addLinks h-100\" (click)=\"createNewFolder()\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n", styles: [".total-container{height:auto;position:relative}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.pageType{font-size:.9rem;font-weight:600;line-height:22px;color:#87769d}.pages{font-size:.9rem;font-weight:400;line-height:22px;cursor:pointer;color:#87769d}.branding-text{font-size:16px;font-weight:400;line-height:22px;text-decoration:unset}.fw-600{font-weight:600!important}.w-50{width:50%!important}.w-30{width:30%!important}.align-items-start{align-items:start!important}.mt-15{margin-top:15px}.folder-page{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.folder-page mat-icon{font-size:17px;display:flex;align-items:center;justify-content:center;display:none}.hoverWhenEditable:hover{border:1px solid #E9E9E9;border-radius:5px;cursor:pointer}.hoverWhenEditable:hover mat-icon{display:inline}.addLinks{padding-bottom:8px;padding-top:9px;border:1px dashed;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px}.addLinks mat-icon{border:1px solid rgb(219,223,225);display:flex;border-radius:100%;align-items:center;justify-content:center;font-size:16px;color:#dbdfe1}\n"] }]
|
126
|
+
], template: "<section class=\"total-container\" simpoHover\n(hovering)=\"showEditTabs($event)\"[spacingHorizontal]=\"stylesLayout\" [simpoBackground]=\"style?.background\" [simpoLayout]=\"style?.layout\" [id]=\"data?.id\"\n[style.border]=\"'2px solid' + style?.background?.accentColor\">\n <div>\n <ng-container *ngIf=\"style?.footerType == 'Footer1'\">\n <ng-container *ngTemplateOutlet=\"Footer1\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer2'\">\n <ng-container *ngTemplateOutlet=\"Footer2\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer3'\">\n <ng-container *ngTemplateOutlet=\"Footer3\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"style?.footerType == 'Footer4'\">\n <ng-container *ngTemplateOutlet=\"Footer4\"></ng-container>\n </ng-container>\n </div>\n\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n\n<ng-template #Footer1>\n <div class=\"row align-items-center\">\n <div class=\"col-md-4\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-8\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer2>\n <div class=\"row align-items-center\">\n <div class=\"col-md-3\">\n <div>\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div>\n <ng-container *ngTemplateOutlet=\"descSection\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth > 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-9\">\n <div class=\"row\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <div *ngIf=\"content?.socialLinks?.display && screenWidth < 475\" class=\"d-flex justify-content-center\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n </div>\n </div>\n <hr *ngIf=\"content?.displayBranding\">\n <div *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #Footer3>\n <div class=\"row\" [class.align-items-start]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"foldersVertical\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\"\n [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\" [class.w-30]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #Footer4>\n <div class=\"row align-items-center\">\n <ng-container *ngTemplateOutlet=\"pagesHorizontal\"></ng-container>\n </div>\n <hr>\n <div class=\"row justify-content-between\">\n <div class=\"col-md-4\">\n <ng-container *ngTemplateOutlet=\"logoSection\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-center align-items-start\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngTemplateOutlet=\"socialIcons\"></ng-container>\n </div>\n <div class=\"col-md-4 d-flex justify-content-end\" *ngIf=\"content?.displayBranding\">\n <ng-container *ngTemplateOutlet=\"branding\"></ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #logoSection>\n <div class=\"d-flex\" [class.justify-content-center]=\"screenWidth < 475\">\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"!content?.logo?.isImage || !content?.logo?.image?.url\">\n <div *ngIf=\"content?.logo?.text?.isIcon && content?.logo?.text?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.text?.url\" alt=\"logo\" [width]=\"content?.logo?.size\" loading=\"lazy\">\n </div>\n <div class=\"heading-small\" *ngIf=\"content?.logo?.text?.isText\" [simpoColor]=\"style?.background?.color\">\n <b [ngStyle]=\"{'font-family': content?.logo?.text?.fontFamily}\">{{content?.siteName?.value}}</b>\n </div>\n </div>\n <div class=\"d-flex gap-3 align-items-lg-center cursor-pointer mb-4\"\n *ngIf=\"content?.logo?.isImage && content?.logo?.image?.url\">\n <img loading=\"lazy\" [src]=\"content?.logo?.image?.url\" alt=\"logo\"\n [style.width.%]=\"screenWidth > 475 || (content?.logo?.size || 10) < 50 ? content?.logo?.size : ((content?.logo?.size || 10) - 10)\"\n loading=\"lazy\">\n </div>\n </div>\n</ng-template>\n\n<ng-template #descSection>\n <ng-container *ngIf = \"content?.additionalDetails as textItem\" >\n <simpo-text-editor [(value)]=\"textItem.value \" [editable]=\"edit || false\" [sectionId]=\"data?.id\" [label]=\"content?.additionalDetails?.label || ''\"></simpo-text-editor>\n </ng-container> <!-- <div class=\"description\" [innerHTML]=\"content?.additionalDetails?.value ?? '' | sanitizeHtml\"></div> -->\n</ng-template>\n\n<ng-template #socialIcons>\n <div class=\"d-flex align-items-start align-items-lg-center flex-column flex-lg-row gap-lg-0 gap-3\"\n [ngClass]=\"content?.socialLinks?.display ? 'justify-content-between' : 'justify-content-end'\">\n <div class=\"d-flex mt-0 gap-1\" *ngIf=\"content?.socialLinks?.display\">\n <ng-container *ngFor=\"let item of content?.socialLinks?.channels\">\n <div class=\"icons\">\n <simpo-socia-icons [iconColor]=\"data?.styles?.background?.accentColor\" [socialIconData]=\"item\"\n [color]=\"style?.background?.color\" [sectionId]=\"data?.id\"></simpo-socia-icons>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #branding>\n <div class=\"heading-small text-center branding-text\">Made with <a class=\"branding-text fw-600\"\n href=\"https://simpo.ai\" target=\"_blank\">Simpo</a></div>\n</ng-template>\n\n<ng-template #pagesHorizontal>\n <div class=\"col-md-3 mb-3 pageType\" *ngFor=\"let page of pages\" [class.w-50]=\"screenWidth < 475\" [class.text-center]=\"screenWidth < 475\" (click)=\"redirectToPage(page)\">\n {{page.pageName}}\n </div>\n</ng-template>\n\n<!-- <ng-template #pagesVertical>\n <div class=\"page-container col-md-3 mb-3\" [class.w-50]=\"screenWidth < 475\">\n <div class=\"pageType mb-3\">{{pageLink}}</div>\n <ng-container *ngFor=\"let page of pages\">\n <div class=\"pages mb-2\" (click)=\"redirectToPage(page)\">{{page?.pageName}}</div>\n </ng-container>\n </div>\n</ng-template> -->\n\n<ng-template #foldersVertical>\n <div class=\"page-container col-md-3 mb-3\" *ngFor=\"let folder of content?.folder;let folderIndex = index\" [class.w-50]=\"screenWidth < 475\">\n <simpo-text-editor [(value)]=\"folder.label\" [editable]=\"edit || false\" [sectionId]=\"data?.id\"></simpo-text-editor>\n <div class=\"mt-15\">\n <ng-container *ngFor=\"let page of folder.links;let linkIndex = index\">\n <div class=\"folder-page\" [ngClass]=\"{'hoverWhenEditable' : edit}\">\n <div class=\"pages mb-2\" (click)=\"redirectTo(page)\" [style.color]=\"style?.background?.accentColor\">{{page.label}}</div>\n <mat-icon (click)=\"deleteFolderLinks(folderIndex, linkIndex)\" [style.color]=\"style?.background?.accentColor\">delete</mat-icon>\n </div>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"edit ? addLinks : null; context: {data: folderIndex}\"></ng-container>\n </div>\n </div>\n <div class=\"col-md-3\" *ngIf=\"(content?.folder?.length || 0) < 4\" [class.w-50]=\"screenWidth < 475\">\n <ng-container *ngTemplateOutlet=\"edit ? addFolder : null\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #addLinks let-folderIndex=\"data\">\n <div class=\"addLinks\" (click)=\"createNewLink(folderIndex)\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n\n<ng-template #addFolder>\n <div class=\"addLinks h-100\" (click)=\"createNewFolder()\">\n <mat-icon>add</mat-icon>\n </div>\n</ng-template>\n", styles: [".total-container{height:auto;position:relative}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.pageType{font-size:.9rem;font-weight:600;line-height:22px;color:#87769d}.pages{font-size:.9rem;font-weight:400;line-height:22px;cursor:pointer;color:#87769d}.branding-text{font-size:16px;font-weight:400;line-height:22px;text-decoration:unset}.fw-600{font-weight:600!important}.w-50{width:50%!important}.w-30{width:30%!important}.align-items-start{align-items:start!important}.mt-15{margin-top:15px}.folder-page{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.folder-page mat-icon{font-size:17px;display:flex;align-items:center;justify-content:center;display:none}.hoverWhenEditable:hover{border:1px solid #E9E9E9;border-radius:5px;cursor:pointer}.hoverWhenEditable:hover mat-icon{display:inline}.addLinks{padding-bottom:8px;padding-top:9px;border:1px dashed;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px}.addLinks mat-icon{border:1px solid rgb(219,223,225);display:flex;border-radius:100%;align-items:center;justify-content:center;font-size:16px;color:#dbdfe1}\n"] }]
|
127
127
|
}], ctorParameters: () => [{ type: i1.EventsService }, { type: i2.RestService }, { type: i3.MatDialog }], propDecorators: { data: [{
|
128
128
|
type: Input
|
129
129
|
}], index: [{
|
@@ -136,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
136
136
|
type: HostListener,
|
137
137
|
args: ['window:resize', ['$event']]
|
138
138
|
}] } });
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFVLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFHNUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFekYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFhLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7Ozs7QUEyQnZGLE1BQU0sT0FBTyxlQUFnQixTQUFRLFdBQVc7SUFhOUMsWUFBb0IsYUFBNEIsRUFDdEMsV0FBd0IsRUFDeEIsU0FBb0I7UUFDNUIsS0FBSyxFQUFFLENBQUM7UUFIVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUN0QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBWnJCLFNBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBTSxHQUFJLEtBQUssQ0FBQztRQU16QixlQUFVLEdBQVcsR0FBRyxDQUFDO1FBQ3pCLGdCQUFXLEdBQVcsR0FBRyxDQUFDO1FBOEIxQixhQUFRLEdBQVcsT0FBTyxDQUFBO1FBQzFCLFVBQUssR0FBUSxFQUFFLENBQUE7UUF6QmIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQztRQUNsQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDakIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLENBQUE7SUFDNUMsQ0FBQztJQUdELGFBQWEsQ0FBQyxLQUFjO1FBQzFCLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQWlCLENBQUM7SUFDbEQsQ0FBQztJQUtELGlCQUFpQixDQUFDLFdBQW1CLEVBQUUsU0FBaUI7UUFDdEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNuRSxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7SUFDSCxDQUFDO0lBRUQsU0FBUztJQUNULENBQUM7SUFFRCxVQUFVLENBQUMsSUFBWTtRQUNyQixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLElBQUksRUFBRyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbEgsQ0FBQzs7WUFFQyxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUE7UUFDdkIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsY0FBYyxDQUFDLFFBQWE7UUFDMUIsSUFBSSxJQUFJLEdBQUc7WUFDVCxLQUFLLEVBQUcsUUFBUSxDQUFDLFFBQVE7WUFDekIsY0FBYyxFQUFDLFFBQVEsQ0FBQyxJQUFJO1lBQzVCLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRTtZQUNuQixNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUE7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFFRCxhQUFhLENBQUMsV0FBbUI7UUFDL0IsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFHLElBQUksRUFBRSxFQUFDLElBQUksRUFBRyxNQUFNLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEgsSUFBSSxDQUFDLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNqRixJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDYixJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6RCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUcsTUFBTSxFQUFDLEVBQUMsQ0FBQyxDQUFDO1FBQ3RILGVBQWUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNuRCxJQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDWixJQUFJLE1BQU0sR0FBRztvQkFDWCxLQUFLLEVBQUUsaUJBQWlCO29CQUN4QixLQUFLLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO2lCQUNsQixDQUFBO2dCQUNELElBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTTtvQkFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO2dCQUUzQixJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzsrR0FyR1UsZUFBZTttR0FBZixlQUFlLDRPQzlDNUIsa3hTQW1OQSxneENEdkxJLFlBQVksMGxCQUNaLGNBQWMsaUZBQ2QsbUJBQW1CLDRIQUNuQixXQUFXLDhCQUNYLG9CQUFvQixtV0FDcEIsYUFBYSxtTEFDYixlQUFlO2dCQUVmLFlBQVk7Z0JBQ1osMEJBQTBCLDJHQUMxQixtQkFBbUIsMEdBQ25CLG1CQUFtQixtRkFDbkIsbUJBQW1CLDZJQUNuQixjQUFjOzs0RkFLTCxlQUFlO2tCQXRCM0IsU0FBUzsrQkFDRSxjQUFjLGNBQ1osSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGVBQWU7d0JBRWYsWUFBWTt3QkFDWiwwQkFBMEI7d0JBQzFCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGNBQWM7cUJBQ2Y7b0lBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQTJCTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIFBMQVRGT1JNX0lELCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9vdGVyQ29udGVudE1vZGVsLCBGb290ZXJTZWN0aW9uTW9kZWwsIEZvb3RlclN0eWxlc01vZGVsIH0gZnJvbSAnLi9mb290ZXIubW9kYWwnO1xuaW1wb3J0IHsgQnV0dG9uLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBDb2xvckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2xvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTb2NpYUljb25zQ29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi9lbGVtZW50cy9zb2NpYS1pY29ucy9zb2NpYS1pY29ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2FuaXRpemVIdG1sUGlwZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Nhbml0aXplSHRtbCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNwYWNpbmdBcm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1hcm91bmQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTaW1wb0NvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvaW5kZXgnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IExpbmtFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9saW5rLWVkaXRvci9saW5rLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ltcG8tZm9vdGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDb2xvckRpcmVjdGl2ZSxcbiAgICBTb2NpYUljb25zQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFNpbXBvQ29tcG9uZW50TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxuXG4gICAgLy9kaXJlY3RpdmVzXG4gICAgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUsXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxuICAgIFRleHRFZGl0b3JDb21wb25lbnQsXG4gICAgSG92ZXJEaXJlY3RpdmVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mb290ZXIuY29tcG9uZW50LmNzcydcbn0pXG5leHBvcnQgY2xhc3MgRm9vdGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVNlY3Rpb24ge1xuICBASW5wdXQoKSBkYXRhPzogRm9vdGVyU2VjdGlvbk1vZGVsO1xuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBkZWxldGU/ID0gZmFsc2U7XG5cbiAgY29udGVudD86IEZvb3RlckNvbnRlbnRNb2RlbDtcbiAgc3R5bGU/OiBGb290ZXJTdHlsZXNNb2RlbDtcbiAgbGlua0VkaXRvclN1YnNjcmlwdGlvbj8gOiBTdWJzY3JpcHRpb247XG5cbiAgZm9vdGVyVHlwZTogc3RyaW5nID0gXCIxXCI7XG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSA0NzU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVzdFNlcnZpY2U6IFJlc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWF0RGlhbG9nOiBNYXREaWFsb2cpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZ2V0U2NyZWVuU2l6ZSgpO1xuICB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzO1xuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcbiAgICB0aGlzLmdldFBhZ2VzKClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCl7XG4gICAgdGhpcy5saW5rRWRpdG9yU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86IG51bWJlcikge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZT8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XG4gIH1cblxuICBwYWdlTGluazogc3RyaW5nID0gXCJQYWdlc1wiXG4gIHBhZ2VzOiBhbnkgPSBbXVxuXG4gIGRlbGV0ZUZvbGRlckxpbmtzKGZvbGRlckluZGV4OiBudW1iZXIsIGxpbmtJbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5jb250ZW50Py5mb2xkZXJbZm9sZGVySW5kZXhdLmxpbmtzLnNwbGljZShsaW5rSW5kZXgsIDEpO1xuICAgIGlmICgodGhpcy5jb250ZW50Py5mb2xkZXI/Lltmb2xkZXJJbmRleF0/LmxpbmtzPy5sZW5ndGggfHwgMCkgPD0gMCkge1xuICAgICAgdGhpcy5jb250ZW50Py5mb2xkZXIuc3BsaWNlKGZvbGRlckluZGV4LCAxKTtcbiAgICB9XG4gIH1cblxuICBlZGl0TGlua3MoKSB7XG4gIH1cblxuICByZWRpcmVjdFRvKGxpbms6IEJ1dHRvbikge1xuICAgIGlmICh0aGlzLmVkaXQpIHtcbiAgICAgIHRoaXMubWF0RGlhbG9nLm9wZW4oTGlua0VkaXRvckNvbXBvbmVudCwgeyBwYW5lbENsYXNzOiAnbGluay1lZGl0b3InLCBkYXRhOiB7IGxpbmtEYXRhOiBsaW5rLHR5cGUgOiBcIkxJTktcIiB9IH0pO1xuICAgIH1cbiAgICBlbHNlXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuYnV0dG9uUmVkaXJlY3Rpb24uZW1pdCh7IGRhdGE6IGxpbmsgfSk7XG4gIH1cblxuICBnZXRQYWdlcygpIHtcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmdldFRlbXBsYXRlKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xuICAgICAgdGhpcy5wYWdlcyA9IHJlcy5kYXRhXG4gICAgfSlcbiAgfVxuXG4gIHJlZGlyZWN0VG9QYWdlKHBhZ2VEYXRhOiBhbnkpIHtcbiAgICBsZXQgZGF0YSA9IHtcbiAgICAgIGxhYmVsIDogcGFnZURhdGEucGFnZU5hbWUsXG4gICAgICByZWRpcmVjdGlvblVybDpwYWdlRGF0YS5wYXRoLFxuICAgICAgcGFnZUlkOiBwYWdlRGF0YS5pZCxcbiAgICAgIHN0YXR1czogdHJ1ZSxcbiAgICB9XG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnBhZ2VSZWRpcmVjdGlvbkJ1dHRvbi5lbWl0KHsgZGF0YTogZGF0YSB9KVxuICB9XG5cbiAgY3JlYXRlTmV3TGluayhmb2xkZXJJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgZWRpdG9yQ29tcG9uZW50ID0gdGhpcy5tYXREaWFsb2cub3BlbihMaW5rRWRpdG9yQ29tcG9uZW50LCB7IHBhbmVsQ2xhc3M6ICdsaW5rLWVkaXRvcicgLCBkYXRhOiB7dHlwZSA6IFwiTElOS1wifSB9KTtcbiAgICB0aGlzLmxpbmtFZGl0b3JTdWJzY3JpcHRpb24gPSBlZGl0b3JDb21wb25lbnQuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICBpZiAocmVzLmxpbmspIHtcbiAgICAgICAgdGhpcy5jb250ZW50Py5mb2xkZXJbZm9sZGVySW5kZXhdLmxpbmtzLnB1c2gocmVzLmxpbmspO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBjcmVhdGVOZXdGb2xkZXIoKSB7XG4gICAgY29uc3QgZWRpdG9yQ29tcG9uZW50ID0gdGhpcy5tYXREaWFsb2cub3BlbihMaW5rRWRpdG9yQ29tcG9uZW50LCB7IHBhbmVsQ2xhc3M6ICdsaW5rLWVkaXRvcicgLGRhdGE6IHt0eXBlIDogXCJMSU5LXCJ9fSk7XG4gICAgZWRpdG9yQ29tcG9uZW50LmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xuICAgICAgaWYocmVzLmxpbmspIHtcbiAgICAgICAgbGV0IGZvbGRlciA9IHtcbiAgICAgICAgICBsYWJlbDogXCJBZGQgZm9sZGVyIG5hbWVcIixcbiAgICAgICAgICBsaW5rczogW3Jlcy5saW5rXVxuICAgICAgICB9XG4gICAgICAgIGlmKHRoaXMuY29udGVudCAmJiAhdGhpcy5jb250ZW50Py5mb2xkZXIpXG4gICAgICAgICAgdGhpcy5jb250ZW50LmZvbGRlciA9IFtdO1xuXG4gICAgICAgIHRoaXMuY29udGVudD8uZm9sZGVyLnB1c2goZm9sZGVyKTtcbiAgICAgIH1cbiAgICB9KVxuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cInRvdGFsLWNvbnRhaW5lclwiIHNpbXBvSG92ZXJcbihob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGU/LmJhY2tncm91bmRcIiBbc2ltcG9MYXlvdXRdPVwic3R5bGU/LmxheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiXG5bc3R5bGUuYm9yZGVyXT1cIicycHggc29saWQnICsgc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCI+XG4gIDxkaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlPy5mb290ZXJUeXBlID09ICdGb290ZXIxJ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIkZvb3RlcjFcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGU/LmZvb3RlclR5cGUgPT0gJ0Zvb3RlcjInXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiRm9vdGVyMlwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZT8uZm9vdGVyVHlwZSA9PSAnRm9vdGVyMydcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJGb290ZXIzXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlPy5mb290ZXJUeXBlID09ICdGb290ZXI0J1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIkZvb3RlcjRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cbiAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XG4gIDwvZGl2PlxuXG48L3NlY3Rpb24+XG5cbjxuZy10ZW1wbGF0ZSAjRm9vdGVyMT5cbiAgPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIj5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb2dvU2VjdGlvblwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGVzY1NlY3Rpb25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5ICYmIHNjcmVlbldpZHRoID4gNDc1XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb2NpYWxJY29uc1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC04XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb2xkZXJzVmVydGljYWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5ICYmIHNjcmVlbldpZHRoIDwgNDc1XCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29jaWFsSWNvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGhyICpuZ0lmPVwiY29udGVudD8uZGlzcGxheUJyYW5kaW5nXCI+XG4gIDxkaXYgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5QnJhbmRpbmdcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnJhbmRpbmdcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI0Zvb3RlcjI+XG4gIDxkaXYgY2xhc3M9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibG9nb1NlY3Rpb25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRlc2NTZWN0aW9uXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheSAmJiBzY3JlZW5XaWR0aCA+IDQ3NVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29jaWFsSWNvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOVwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicGFnZXNIb3Jpem9udGFsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheSAmJiBzY3JlZW5XaWR0aCA8IDQ3NVwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvY2lhbEljb25zXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxociAqbmdJZj1cImNvbnRlbnQ/LmRpc3BsYXlCcmFuZGluZ1wiPlxuICA8ZGl2ICpuZ0lmPVwiY29udGVudD8uZGlzcGxheUJyYW5kaW5nXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJyYW5kaW5nXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNGb290ZXIzPlxuICA8ZGl2IGNsYXNzPVwicm93XCIgW2NsYXNzLmFsaWduLWl0ZW1zLXN0YXJ0XT1cInNjcmVlbldpZHRoIDwgNDc1XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvbGRlcnNWZXJ0aWNhbFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGhyPlxuICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCIgW2NsYXNzLnctMzBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb2dvU2VjdGlvblwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1zdGFydFwiICpuZ0lmPVwiY29udGVudD8uc29jaWFsTGlua3M/LmRpc3BsYXlcIlxuICAgICAgW2NsYXNzLnctMzBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb2NpYWxJY29uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZFwiICpuZ0lmPVwiY29udGVudD8uZGlzcGxheUJyYW5kaW5nXCIgW2NsYXNzLnctMzBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJicmFuZGluZ1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNGb290ZXI0PlxuICA8ZGl2IGNsYXNzPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJwYWdlc0hvcml6b250YWxcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxocj5cbiAgPGRpdiBjbGFzcz1cInJvdyBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvZ29TZWN0aW9uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLXN0YXJ0XCIgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvY2lhbEljb25zXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCIgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5QnJhbmRpbmdcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJicmFuZGluZ1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNsb2dvU2VjdGlvbj5cbiAgPGRpdiBjbGFzcz1cImQtZmxleFwiIFtjbGFzcy5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyXT1cInNjcmVlbldpZHRoIDwgNDc1XCI+XG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMyBhbGlnbi1pdGVtcy1sZy1jZW50ZXIgY3Vyc29yLXBvaW50ZXIgbWItNFwiXG4gICAgICAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIHx8ICFjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNJY29uICYmIGNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiPlxuICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIiBhbHQ9XCJsb2dvXCIgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemVcIiBsb2FkaW5nPVwibGF6eVwiPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZy1zbWFsbFwiICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNUZXh0XCIgW3NpbXBvQ29sb3JdPVwic3R5bGU/LmJhY2tncm91bmQ/LmNvbG9yXCI+XG4gICAgICAgIDxiIFtuZ1N0eWxlXT1cInsnZm9udC1mYW1pbHknOiBjb250ZW50Py5sb2dvPy50ZXh0Py5mb250RmFtaWx5fVwiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zIGFsaWduLWl0ZW1zLWxnLWNlbnRlciBjdXJzb3ItcG9pbnRlciBtYi00XCJcbiAgICAgICpuZ0lmPVwiY29udGVudD8ubG9nbz8uaXNJbWFnZSAmJiBjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCI+XG4gICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgYWx0PVwibG9nb1wiXG4gICAgICAgIFtzdHlsZS53aWR0aC4lXT1cInNjcmVlbldpZHRoID4gNDc1IHx8IChjb250ZW50Py5sb2dvPy5zaXplIHx8IDEwKSA8IDUwID8gY29udGVudD8ubG9nbz8uc2l6ZSA6ICgoY29udGVudD8ubG9nbz8uc2l6ZSB8fCAxMCkgLSAxMClcIlxuICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVzY1NlY3Rpb24+XG4gIDxuZy1jb250YWluZXIgKm5nSWYgPSBcImNvbnRlbnQ/LmFkZGl0aW9uYWxEZXRhaWxzIGFzIHRleHRJdGVtXCIgPlxuICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJ0ZXh0SXRlbS52YWx1ZSBcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIiBbbGFiZWxdPVwiY29udGVudD8uYWRkaXRpb25hbERldGFpbHM/LmxhYmVsIHx8ICcnXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgPC9uZy1jb250YWluZXI+ICA8IS0tIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiIFtpbm5lckhUTUxdPVwiY29udGVudD8uYWRkaXRpb25hbERldGFpbHM/LnZhbHVlID8/ICcnIHwgc2FuaXRpemVIdG1sXCI+PC9kaXY+IC0tPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb2NpYWxJY29ucz5cbiAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBhbGlnbi1pdGVtcy1sZy1jZW50ZXIgZmxleC1jb2x1bW4gZmxleC1sZy1yb3cgZ2FwLWxnLTAgZ2FwLTNcIlxuICAgIFtuZ0NsYXNzXT1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5ID8gJ2p1c3RpZnktY29udGVudC1iZXR3ZWVuJyA6ICdqdXN0aWZ5LWNvbnRlbnQtZW5kJ1wiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbXQtMFwiICpuZ0lmPVwiY29udGVudD8uc29jaWFsTGlua3M/LmRpc3BsYXlcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8uc29jaWFsTGlua3M/LmNoYW5uZWxzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJpY29uc1wiPlxuICAgICAgICAgIDxzaW1wby1zb2NpYS1pY29ucyBbaWNvbkNvbG9yXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIiBbc29jaWFsSWNvbkRhdGFdPVwiaXRlbVwiXG4gICAgICAgICAgICBbY29sb3JdPVwic3R5bGU/LmJhY2tncm91bmQ/LmNvbG9yXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiPjwvc2ltcG8tc29jaWEtaWNvbnM+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNicmFuZGluZz5cbiAgPGRpdiBjbGFzcz1cImhlYWRpbmctc21hbGwgdGV4dC1jZW50ZXIgIGJyYW5kaW5nLXRleHRcIj5NYWRlIHdpdGggPGEgY2xhc3M9XCJicmFuZGluZy10ZXh0IGZ3LTYwMFwiXG4gICAgICBocmVmPVwiaHR0cHM6Ly9zaW1wby5haVwiIHRhcmdldD1cIl9ibGFua1wiPlNpbXBvPC9hPjwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwYWdlc0hvcml6b250YWw+XG4gIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBtYi0zIHBhZ2VUeXBlXCIgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgcGFnZXNcIiBbY2xhc3Mudy01MF09XCJzY3JlZW5XaWR0aCA8IDQ3NVwiIFtjbGFzcy50ZXh0LWNlbnRlcl09XCJzY3JlZW5XaWR0aCA8IDQ3NVwiIChjbGljayk9XCJyZWRpcmVjdFRvUGFnZShwYWdlKVwiPlxuICAgIHt7cGFnZS5wYWdlTmFtZX19XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLSA8bmctdGVtcGxhdGUgI3BhZ2VzVmVydGljYWw+XG4gIDxkaXYgY2xhc3M9XCJwYWdlLWNvbnRhaW5lciBjb2wtbWQtMyBtYi0zXCIgW2NsYXNzLnctNTBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZVR5cGUgbWItM1wiPnt7cGFnZUxpbmt9fTwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgcGFnZXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlcyBtYi0yXCIgKGNsaWNrKT1cInJlZGlyZWN0VG9QYWdlKHBhZ2UpXCI+e3twYWdlPy5wYWdlTmFtZX19PC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4gLS0+XG5cbjxuZy10ZW1wbGF0ZSAjZm9sZGVyc1ZlcnRpY2FsPlxuICA8ZGl2IGNsYXNzPVwicGFnZS1jb250YWluZXIgY29sLW1kLTMgbWItM1wiICpuZ0Zvcj1cImxldCBmb2xkZXIgb2YgY29udGVudD8uZm9sZGVyO2xldCBmb2xkZXJJbmRleCA9IGluZGV4XCIgW2NsYXNzLnctNTBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwiZm9sZGVyLmxhYmVsXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICA8ZGl2IGNsYXNzPVwibXQtMTVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgZm9sZGVyLmxpbmtzO2xldCBsaW5rSW5kZXggPSBpbmRleFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9sZGVyLXBhZ2VcIiBbbmdDbGFzc109XCJ7J2hvdmVyV2hlbkVkaXRhYmxlJyA6IGVkaXR9XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2VzIG1iLTJcIiAoY2xpY2spPVwicmVkaXJlY3RUbyhwYWdlKVwiIFtzdHlsZS5jb2xvcl09XCJzdHlsZT8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIj57e3BhZ2UubGFiZWx9fTwvZGl2PlxuICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiZGVsZXRlRm9sZGVyTGlua3MoZm9sZGVySW5kZXgsIGxpbmtJbmRleClcIiBbc3R5bGUuY29sb3JdPVwic3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCI+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlZGl0ID8gYWRkTGlua3MgOiBudWxsOyBjb250ZXh0OiB7ZGF0YTogZm9sZGVySW5kZXh9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIiAqbmdJZj1cIihjb250ZW50Py5mb2xkZXI/Lmxlbmd0aCB8fCAwKSA8IDRcIiBbY2xhc3Mudy01MF09XCJzY3JlZW5XaWR0aCA8IDQ3NVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlZGl0ID8gYWRkRm9sZGVyIDogbnVsbFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjYWRkTGlua3MgbGV0LWZvbGRlckluZGV4PVwiZGF0YVwiPlxuICA8ZGl2IGNsYXNzPVwiYWRkTGlua3NcIiAoY2xpY2spPVwiY3JlYXRlTmV3TGluayhmb2xkZXJJbmRleClcIj5cbiAgICA8bWF0LWljb24+YWRkPC9tYXQtaWNvbj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2FkZEZvbGRlcj5cbiAgPGRpdiBjbGFzcz1cImFkZExpbmtzIGgtMTAwXCIgKGNsaWNrKT1cImNyZWF0ZU5ld0ZvbGRlcigpXCI+XG4gICAgPG1hdC1pY29uPmFkZDwvbWF0LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFVLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFHNUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFekYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFhLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7Ozs7QUEyQnZGLE1BQU0sT0FBTyxlQUFnQixTQUFRLFdBQVc7SUFhOUMsWUFBb0IsYUFBNEIsRUFDdEMsV0FBd0IsRUFDeEIsU0FBb0I7UUFDNUIsS0FBSyxFQUFFLENBQUM7UUFIVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUN0QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBWnJCLFNBQUksR0FBYSxJQUFJLENBQUM7UUFDdEIsV0FBTSxHQUFJLEtBQUssQ0FBQztRQU16QixlQUFVLEdBQVcsR0FBRyxDQUFDO1FBQ3pCLGdCQUFXLEdBQVcsR0FBRyxDQUFDO1FBOEIxQixhQUFRLEdBQVcsT0FBTyxDQUFBO1FBQzFCLFVBQUssR0FBUSxFQUFFLENBQUE7UUF6QmIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQztRQUNsQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDakIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLENBQUE7SUFDNUMsQ0FBQztJQUdELGFBQWEsQ0FBQyxLQUFjO1FBQzFCLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQWlCLENBQUM7SUFDbEQsQ0FBQztJQUtELGlCQUFpQixDQUFDLFdBQW1CLEVBQUUsU0FBaUI7UUFDdEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNuRSxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7SUFDSCxDQUFDO0lBRUQsU0FBUztJQUNULENBQUM7SUFFRCxVQUFVLENBQUMsSUFBWTtRQUNyQixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLElBQUksRUFBRyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbEgsQ0FBQzs7WUFFQyxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUE7UUFDdkIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsY0FBYyxDQUFDLFFBQWE7UUFDMUIsSUFBSSxJQUFJLEdBQUc7WUFDVCxLQUFLLEVBQUcsUUFBUSxDQUFDLFFBQVE7WUFDekIsY0FBYyxFQUFDLFFBQVEsQ0FBQyxJQUFJO1lBQzVCLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRTtZQUNuQixNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUE7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFFRCxhQUFhLENBQUMsV0FBbUI7UUFDL0IsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFHLElBQUksRUFBRSxFQUFDLElBQUksRUFBRyxNQUFNLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEgsSUFBSSxDQUFDLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNqRixJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDYixJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6RCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUcsTUFBTSxFQUFDLEVBQUMsQ0FBQyxDQUFDO1FBQ3RILGVBQWUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNuRCxJQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDWixJQUFJLE1BQU0sR0FBRztvQkFDWCxLQUFLLEVBQUUsaUJBQWlCO29CQUN4QixLQUFLLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO2lCQUNsQixDQUFBO2dCQUNELElBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTTtvQkFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO2dCQUUzQixJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzsrR0FyR1UsZUFBZTttR0FBZixlQUFlLDRPQzlDNUIsd3hTQW1OQSxneENEdkxJLFlBQVksMGxCQUNaLGNBQWMsaUZBQ2QsbUJBQW1CLDRIQUNuQixXQUFXLDhCQUNYLG9CQUFvQixtV0FDcEIsYUFBYSxtTEFDYixlQUFlO2dCQUVmLFlBQVk7Z0JBQ1osMEJBQTBCLDJHQUMxQixtQkFBbUIsMEdBQ25CLG1CQUFtQixtRkFDbkIsbUJBQW1CLDZJQUNuQixjQUFjOzs0RkFLTCxlQUFlO2tCQXRCM0IsU0FBUzsrQkFDRSxjQUFjLGNBQ1osSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGVBQWU7d0JBRWYsWUFBWTt3QkFDWiwwQkFBMEI7d0JBQzFCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGNBQWM7cUJBQ2Y7b0lBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQTJCTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIFBMQVRGT1JNX0lELCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9vdGVyQ29udGVudE1vZGVsLCBGb290ZXJTZWN0aW9uTW9kZWwsIEZvb3RlclN0eWxlc01vZGVsIH0gZnJvbSAnLi9mb290ZXIubW9kYWwnO1xuaW1wb3J0IHsgQnV0dG9uLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBDb2xvckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2xvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTb2NpYUljb25zQ29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi9lbGVtZW50cy9zb2NpYS1pY29ucy9zb2NpYS1pY29ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2FuaXRpemVIdG1sUGlwZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Nhbml0aXplSHRtbCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNwYWNpbmdBcm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1hcm91bmQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTaW1wb0NvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvaW5kZXgnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IExpbmtFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9saW5rLWVkaXRvci9saW5rLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ltcG8tZm9vdGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDb2xvckRpcmVjdGl2ZSxcbiAgICBTb2NpYUljb25zQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFNpbXBvQ29tcG9uZW50TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxuXG4gICAgLy9kaXJlY3RpdmVzXG4gICAgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUsXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxuICAgIFRleHRFZGl0b3JDb21wb25lbnQsXG4gICAgSG92ZXJEaXJlY3RpdmVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mb290ZXIuY29tcG9uZW50LmNzcydcbn0pXG5leHBvcnQgY2xhc3MgRm9vdGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVNlY3Rpb24ge1xuICBASW5wdXQoKSBkYXRhPzogRm9vdGVyU2VjdGlvbk1vZGVsO1xuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBkZWxldGU/ID0gZmFsc2U7XG5cbiAgY29udGVudD86IEZvb3RlckNvbnRlbnRNb2RlbDtcbiAgc3R5bGU/OiBGb290ZXJTdHlsZXNNb2RlbDtcbiAgbGlua0VkaXRvclN1YnNjcmlwdGlvbj8gOiBTdWJzY3JpcHRpb247XG5cbiAgZm9vdGVyVHlwZTogc3RyaW5nID0gXCIxXCI7XG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSA0NzU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVzdFNlcnZpY2U6IFJlc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWF0RGlhbG9nOiBNYXREaWFsb2cpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZ2V0U2NyZWVuU2l6ZSgpO1xuICB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzO1xuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcbiAgICB0aGlzLmdldFBhZ2VzKClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCl7XG4gICAgdGhpcy5saW5rRWRpdG9yU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86IG51bWJlcikge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZT8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XG4gIH1cblxuICBwYWdlTGluazogc3RyaW5nID0gXCJQYWdlc1wiXG4gIHBhZ2VzOiBhbnkgPSBbXVxuXG4gIGRlbGV0ZUZvbGRlckxpbmtzKGZvbGRlckluZGV4OiBudW1iZXIsIGxpbmtJbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5jb250ZW50Py5mb2xkZXJbZm9sZGVySW5kZXhdLmxpbmtzLnNwbGljZShsaW5rSW5kZXgsIDEpO1xuICAgIGlmICgodGhpcy5jb250ZW50Py5mb2xkZXI/Lltmb2xkZXJJbmRleF0/LmxpbmtzPy5sZW5ndGggfHwgMCkgPD0gMCkge1xuICAgICAgdGhpcy5jb250ZW50Py5mb2xkZXIuc3BsaWNlKGZvbGRlckluZGV4LCAxKTtcbiAgICB9XG4gIH1cblxuICBlZGl0TGlua3MoKSB7XG4gIH1cblxuICByZWRpcmVjdFRvKGxpbms6IEJ1dHRvbikge1xuICAgIGlmICh0aGlzLmVkaXQpIHtcbiAgICAgIHRoaXMubWF0RGlhbG9nLm9wZW4oTGlua0VkaXRvckNvbXBvbmVudCwgeyBwYW5lbENsYXNzOiAnbGluay1lZGl0b3InLCBkYXRhOiB7IGxpbmtEYXRhOiBsaW5rLHR5cGUgOiBcIkxJTktcIiB9IH0pO1xuICAgIH1cbiAgICBlbHNlXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuYnV0dG9uUmVkaXJlY3Rpb24uZW1pdCh7IGRhdGE6IGxpbmsgfSk7XG4gIH1cblxuICBnZXRQYWdlcygpIHtcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmdldFRlbXBsYXRlKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xuICAgICAgdGhpcy5wYWdlcyA9IHJlcy5kYXRhXG4gICAgfSlcbiAgfVxuXG4gIHJlZGlyZWN0VG9QYWdlKHBhZ2VEYXRhOiBhbnkpIHtcbiAgICBsZXQgZGF0YSA9IHtcbiAgICAgIGxhYmVsIDogcGFnZURhdGEucGFnZU5hbWUsXG4gICAgICByZWRpcmVjdGlvblVybDpwYWdlRGF0YS5wYXRoLFxuICAgICAgcGFnZUlkOiBwYWdlRGF0YS5pZCxcbiAgICAgIHN0YXR1czogdHJ1ZSxcbiAgICB9XG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnBhZ2VSZWRpcmVjdGlvbkJ1dHRvbi5lbWl0KHsgZGF0YTogZGF0YSB9KVxuICB9XG5cbiAgY3JlYXRlTmV3TGluayhmb2xkZXJJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgZWRpdG9yQ29tcG9uZW50ID0gdGhpcy5tYXREaWFsb2cub3BlbihMaW5rRWRpdG9yQ29tcG9uZW50LCB7IHBhbmVsQ2xhc3M6ICdsaW5rLWVkaXRvcicgLCBkYXRhOiB7dHlwZSA6IFwiTElOS1wifSB9KTtcbiAgICB0aGlzLmxpbmtFZGl0b3JTdWJzY3JpcHRpb24gPSBlZGl0b3JDb21wb25lbnQuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICBpZiAocmVzLmxpbmspIHtcbiAgICAgICAgdGhpcy5jb250ZW50Py5mb2xkZXJbZm9sZGVySW5kZXhdLmxpbmtzLnB1c2gocmVzLmxpbmspO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBjcmVhdGVOZXdGb2xkZXIoKSB7XG4gICAgY29uc3QgZWRpdG9yQ29tcG9uZW50ID0gdGhpcy5tYXREaWFsb2cub3BlbihMaW5rRWRpdG9yQ29tcG9uZW50LCB7IHBhbmVsQ2xhc3M6ICdsaW5rLWVkaXRvcicgLGRhdGE6IHt0eXBlIDogXCJMSU5LXCJ9fSk7XG4gICAgZWRpdG9yQ29tcG9uZW50LmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xuICAgICAgaWYocmVzLmxpbmspIHtcbiAgICAgICAgbGV0IGZvbGRlciA9IHtcbiAgICAgICAgICBsYWJlbDogXCJBZGQgZm9sZGVyIG5hbWVcIixcbiAgICAgICAgICBsaW5rczogW3Jlcy5saW5rXVxuICAgICAgICB9XG4gICAgICAgIGlmKHRoaXMuY29udGVudCAmJiAhdGhpcy5jb250ZW50Py5mb2xkZXIpXG4gICAgICAgICAgdGhpcy5jb250ZW50LmZvbGRlciA9IFtdO1xuXG4gICAgICAgIHRoaXMuY29udGVudD8uZm9sZGVyLnB1c2goZm9sZGVyKTtcbiAgICAgIH1cbiAgICB9KVxuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cInRvdGFsLWNvbnRhaW5lclwiIHNpbXBvSG92ZXJcbihob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGU/LmJhY2tncm91bmRcIiBbc2ltcG9MYXlvdXRdPVwic3R5bGU/LmxheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiXG5bc3R5bGUuYm9yZGVyXT1cIicycHggc29saWQnICsgc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCI+XG4gIDxkaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlPy5mb290ZXJUeXBlID09ICdGb290ZXIxJ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIkZvb3RlcjFcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGU/LmZvb3RlclR5cGUgPT0gJ0Zvb3RlcjInXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiRm9vdGVyMlwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZT8uZm9vdGVyVHlwZSA9PSAnRm9vdGVyMydcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJGb290ZXIzXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlPy5mb290ZXJUeXBlID09ICdGb290ZXI0J1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIkZvb3RlcjRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cbiAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XG4gIDwvZGl2PlxuXG48L3NlY3Rpb24+XG5cbjxuZy10ZW1wbGF0ZSAjRm9vdGVyMT5cbiAgPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIj5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb2dvU2VjdGlvblwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGVzY1NlY3Rpb25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5ICYmIHNjcmVlbldpZHRoID4gNDc1XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb2NpYWxJY29uc1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC04XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb2xkZXJzVmVydGljYWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5ICYmIHNjcmVlbldpZHRoIDwgNDc1XCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29jaWFsSWNvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGhyICpuZ0lmPVwiY29udGVudD8uZGlzcGxheUJyYW5kaW5nXCI+XG4gIDxkaXYgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5QnJhbmRpbmdcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnJhbmRpbmdcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI0Zvb3RlcjI+XG4gIDxkaXYgY2xhc3M9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC0zXCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibG9nb1NlY3Rpb25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRlc2NTZWN0aW9uXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheSAmJiBzY3JlZW5XaWR0aCA+IDQ3NVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29jaWFsSWNvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOVwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicGFnZXNIb3Jpem9udGFsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheSAmJiBzY3JlZW5XaWR0aCA8IDQ3NVwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvY2lhbEljb25zXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxociAqbmdJZj1cImNvbnRlbnQ/LmRpc3BsYXlCcmFuZGluZ1wiPlxuICA8ZGl2ICpuZ0lmPVwiY29udGVudD8uZGlzcGxheUJyYW5kaW5nXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJyYW5kaW5nXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNGb290ZXIzPlxuICA8ZGl2IGNsYXNzPVwicm93XCIgW2NsYXNzLmFsaWduLWl0ZW1zLXN0YXJ0XT1cInNjcmVlbldpZHRoIDwgNDc1XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvbGRlcnNWZXJ0aWNhbFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGhyPlxuICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCIgW2NsYXNzLnctMzBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb2dvU2VjdGlvblwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1zdGFydFwiICpuZ0lmPVwiY29udGVudD8uc29jaWFsTGlua3M/LmRpc3BsYXlcIlxuICAgICAgW2NsYXNzLnctMzBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb2NpYWxJY29uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNCBkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZFwiICpuZ0lmPVwiY29udGVudD8uZGlzcGxheUJyYW5kaW5nXCIgW2NsYXNzLnctMzBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJicmFuZGluZ1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNGb290ZXI0PlxuICA8ZGl2IGNsYXNzPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJwYWdlc0hvcml6b250YWxcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxocj5cbiAgPGRpdiBjbGFzcz1cInJvdyBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvZ29TZWN0aW9uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLXN0YXJ0XCIgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvY2lhbEljb25zXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC00IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCIgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5QnJhbmRpbmdcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJicmFuZGluZ1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNsb2dvU2VjdGlvbj5cbiAgPGRpdiBjbGFzcz1cImQtZmxleFwiIFtjbGFzcy5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyXT1cInNjcmVlbldpZHRoIDwgNDc1XCI+XG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMyBhbGlnbi1pdGVtcy1sZy1jZW50ZXIgY3Vyc29yLXBvaW50ZXIgbWItNFwiXG4gICAgICAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIHx8ICFjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNJY29uICYmIGNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiPlxuICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIiBhbHQ9XCJsb2dvXCIgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemVcIiBsb2FkaW5nPVwibGF6eVwiPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZy1zbWFsbFwiICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNUZXh0XCIgW3NpbXBvQ29sb3JdPVwic3R5bGU/LmJhY2tncm91bmQ/LmNvbG9yXCI+XG4gICAgICAgIDxiIFtuZ1N0eWxlXT1cInsnZm9udC1mYW1pbHknOiBjb250ZW50Py5sb2dvPy50ZXh0Py5mb250RmFtaWx5fVwiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zIGFsaWduLWl0ZW1zLWxnLWNlbnRlciBjdXJzb3ItcG9pbnRlciBtYi00XCJcbiAgICAgICpuZ0lmPVwiY29udGVudD8ubG9nbz8uaXNJbWFnZSAmJiBjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCI+XG4gICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgYWx0PVwibG9nb1wiXG4gICAgICAgIFtzdHlsZS53aWR0aC4lXT1cInNjcmVlbldpZHRoID4gNDc1IHx8IChjb250ZW50Py5sb2dvPy5zaXplIHx8IDEwKSA8IDUwID8gY29udGVudD8ubG9nbz8uc2l6ZSA6ICgoY29udGVudD8ubG9nbz8uc2l6ZSB8fCAxMCkgLSAxMClcIlxuICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVzY1NlY3Rpb24+XG4gIDxuZy1jb250YWluZXIgKm5nSWYgPSBcImNvbnRlbnQ/LmFkZGl0aW9uYWxEZXRhaWxzIGFzIHRleHRJdGVtXCIgPlxuICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJ0ZXh0SXRlbS52YWx1ZSBcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIiBbbGFiZWxdPVwiY29udGVudD8uYWRkaXRpb25hbERldGFpbHM/LmxhYmVsIHx8ICcnXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgPC9uZy1jb250YWluZXI+ICA8IS0tIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiIFtpbm5lckhUTUxdPVwiY29udGVudD8uYWRkaXRpb25hbERldGFpbHM/LnZhbHVlID8/ICcnIHwgc2FuaXRpemVIdG1sXCI+PC9kaXY+IC0tPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb2NpYWxJY29ucz5cbiAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBhbGlnbi1pdGVtcy1sZy1jZW50ZXIgZmxleC1jb2x1bW4gZmxleC1sZy1yb3cgZ2FwLWxnLTAgZ2FwLTNcIlxuICAgIFtuZ0NsYXNzXT1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5ID8gJ2p1c3RpZnktY29udGVudC1iZXR3ZWVuJyA6ICdqdXN0aWZ5LWNvbnRlbnQtZW5kJ1wiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbXQtMCBnYXAtMVwiICpuZ0lmPVwiY29udGVudD8uc29jaWFsTGlua3M/LmRpc3BsYXlcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8uc29jaWFsTGlua3M/LmNoYW5uZWxzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJpY29uc1wiPlxuICAgICAgICAgIDxzaW1wby1zb2NpYS1pY29ucyBbaWNvbkNvbG9yXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIiBbc29jaWFsSWNvbkRhdGFdPVwiaXRlbVwiXG4gICAgICAgICAgICBbY29sb3JdPVwic3R5bGU/LmJhY2tncm91bmQ/LmNvbG9yXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiPjwvc2ltcG8tc29jaWEtaWNvbnM+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNicmFuZGluZz5cbiAgPGRpdiBjbGFzcz1cImhlYWRpbmctc21hbGwgdGV4dC1jZW50ZXIgIGJyYW5kaW5nLXRleHRcIj5NYWRlIHdpdGggPGEgY2xhc3M9XCJicmFuZGluZy10ZXh0IGZ3LTYwMFwiXG4gICAgICBocmVmPVwiaHR0cHM6Ly9zaW1wby5haVwiIHRhcmdldD1cIl9ibGFua1wiPlNpbXBvPC9hPjwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwYWdlc0hvcml6b250YWw+XG4gIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBtYi0zIHBhZ2VUeXBlXCIgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgcGFnZXNcIiBbY2xhc3Mudy01MF09XCJzY3JlZW5XaWR0aCA8IDQ3NVwiIFtjbGFzcy50ZXh0LWNlbnRlcl09XCJzY3JlZW5XaWR0aCA8IDQ3NVwiIChjbGljayk9XCJyZWRpcmVjdFRvUGFnZShwYWdlKVwiPlxuICAgIHt7cGFnZS5wYWdlTmFtZX19XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLSA8bmctdGVtcGxhdGUgI3BhZ2VzVmVydGljYWw+XG4gIDxkaXYgY2xhc3M9XCJwYWdlLWNvbnRhaW5lciBjb2wtbWQtMyBtYi0zXCIgW2NsYXNzLnctNTBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZVR5cGUgbWItM1wiPnt7cGFnZUxpbmt9fTwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgcGFnZXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlcyBtYi0yXCIgKGNsaWNrKT1cInJlZGlyZWN0VG9QYWdlKHBhZ2UpXCI+e3twYWdlPy5wYWdlTmFtZX19PC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4gLS0+XG5cbjxuZy10ZW1wbGF0ZSAjZm9sZGVyc1ZlcnRpY2FsPlxuICA8ZGl2IGNsYXNzPVwicGFnZS1jb250YWluZXIgY29sLW1kLTMgbWItM1wiICpuZ0Zvcj1cImxldCBmb2xkZXIgb2YgY29udGVudD8uZm9sZGVyO2xldCBmb2xkZXJJbmRleCA9IGluZGV4XCIgW2NsYXNzLnctNTBdPVwic2NyZWVuV2lkdGggPCA0NzVcIj5cbiAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwiZm9sZGVyLmxhYmVsXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICA8ZGl2IGNsYXNzPVwibXQtMTVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgZm9sZGVyLmxpbmtzO2xldCBsaW5rSW5kZXggPSBpbmRleFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9sZGVyLXBhZ2VcIiBbbmdDbGFzc109XCJ7J2hvdmVyV2hlbkVkaXRhYmxlJyA6IGVkaXR9XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2VzIG1iLTJcIiAoY2xpY2spPVwicmVkaXJlY3RUbyhwYWdlKVwiIFtzdHlsZS5jb2xvcl09XCJzdHlsZT8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIj57e3BhZ2UubGFiZWx9fTwvZGl2PlxuICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiZGVsZXRlRm9sZGVyTGlua3MoZm9sZGVySW5kZXgsIGxpbmtJbmRleClcIiBbc3R5bGUuY29sb3JdPVwic3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCI+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlZGl0ID8gYWRkTGlua3MgOiBudWxsOyBjb250ZXh0OiB7ZGF0YTogZm9sZGVySW5kZXh9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIiAqbmdJZj1cIihjb250ZW50Py5mb2xkZXI/Lmxlbmd0aCB8fCAwKSA8IDRcIiBbY2xhc3Mudy01MF09XCJzY3JlZW5XaWR0aCA8IDQ3NVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlZGl0ID8gYWRkRm9sZGVyIDogbnVsbFwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjYWRkTGlua3MgbGV0LWZvbGRlckluZGV4PVwiZGF0YVwiPlxuICA8ZGl2IGNsYXNzPVwiYWRkTGlua3NcIiAoY2xpY2spPVwiY3JlYXRlTmV3TGluayhmb2xkZXJJbmRleClcIj5cbiAgICA8bWF0LWljb24+YWRkPC9tYXQtaWNvbj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2FkZEZvbGRlcj5cbiAgPGRpdiBjbGFzcz1cImFkZExpbmtzIGgtMTAwXCIgKGNsaWNrKT1cImNyZWF0ZU5ld0ZvbGRlcigpXCI+XG4gICAgPG1hdC1pY29uPmFkZDwvbWF0LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|