simpo-component-library 1.7.4 → 1.7.6
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2022/lib/ecommerce/sections/address/address.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/authenticate-user/authenticate-user.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/category-product/category-product.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/checkout/checkout.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/featured-category/featured-category.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/featured-category/featured-collection.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/featured-products/featured-products.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/user-profile/user-profile.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/whislist/whislist.component.mjs +3 -3
- package/esm2022/lib/sections/banner-carousel/banner-carousel.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/blog-list/blog-list.component.mjs +3 -3
- package/esm2022/lib/sections/carousel-banner/carousel-banner.component.mjs +3 -3
- package/esm2022/lib/sections/choose-us-section/choose-us-section.component.mjs +3 -3
- package/esm2022/lib/sections/contact-us/contact-us.component.mjs +3 -3
- package/esm2022/lib/sections/features-section/features-section.component.mjs +3 -3
- package/esm2022/lib/sections/footer-section/footer-section.component.mjs +3 -3
- package/esm2022/lib/sections/image-carousel-section/image-carousel-section.component.mjs +3 -3
- package/esm2022/lib/sections/image-grid-section/image-grid-section.component.mjs +3 -3
- package/esm2022/lib/sections/image-section/image-section.component.mjs +3 -3
- package/esm2022/lib/sections/location-section/location-section.component.mjs +3 -3
- package/esm2022/lib/sections/logo-showcase/logo-showcase.component.mjs +3 -3
- package/esm2022/lib/sections/navbar-section/navbar-section.component.mjs +5 -3
- package/esm2022/lib/sections/pricing-section/pricing-section.component.mjs +3 -3
- package/esm2022/lib/sections/process-modern/process-modern.component.mjs +3 -3
- package/esm2022/lib/sections/process-section/process-section.component.mjs +3 -3
- package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.component.mjs +3 -3
- package/esm2022/lib/sections/service-section/service-section.component.mjs +3 -3
- package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-section/testimonial-section.component.mjs +3 -3
- package/esm2022/lib/sections/text-image-section/text-image-section.component.mjs +3 -3
- package/esm2022/lib/sections/text-section/text-section.component.mjs +3 -3
- package/esm2022/lib/sections/video-section/video-section.component.mjs +3 -3
- package/fesm2022/simpo-component-library.mjs +78 -76
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/directive/background-directive.d.ts +1 -1
- package/lib/directive/button-directive.directive.d.ts +1 -1
- package/lib/directive/color.directive.d.ts +1 -1
- package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
- package/package.json +1 -1
- package/simpo-component-library-1.7.6.tgz +0 -0
- package/simpo-component-library-1.7.4.tgz +0 -0
@@ -49,7 +49,7 @@ export class BannerGridSectionComponent extends BaseSection {
|
|
49
49
|
}, 100);
|
50
50
|
}
|
51
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: BannerGridSectionComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
52
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: BannerGridSectionComponent, isStandalone: true, selector: "simpo-banner-grid-section", inputs: { data: "data", edit: "edit", delete: "delete", customClass: "customClass", index: "index" }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [ngClass]=\"{'mergeNavbar': canMergeNavbar}\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\" (click)=\"editSection()\" [attr.style]=\"customClass\">\r\n <div [attr.class]=\"styles?.borderLessImage ? 'px-0 py-0' : 'px-5 py-4'\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\"\r\n [simpoBorder]=\"styles?.border\">\r\n <div class=\"d-flex justify-content-between gap-5 align-items-center total-section\"[id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\"\r\n [simpoPositionLayoutDirective]=\"styles?.positionLayout\"\r\n [ngClass]=\"{ 'align-items-stretch': styles?.positionLayout?.value === 'right' || styles?.positionLayout?.value === 'left', 'px-0 py-0': styles?.borderLessImage }\">\r\n <div class=\"image-section\" *ngIf=\"content?.listItem?.data?.length === 3\" [ngClass]=\"{'image-position' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'align-items-unset': styles?.borderLessImage === true}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" [ngClass]=\"{'images-top' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'mt-0 mb-o ms-0 me-0': styles?.borderLessImage===true}\">\r\n <img loading=\"lazy\" [src]=\"listItems[0]?.image.url\" [id]=\"data?.id\" [simpoCorner]=\"styles?.corners\" class=\"img\" [ngClass]=\"{'image-width-top' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'mt-0 mb-o ms-0 me-0 borderLess-image': styles?.borderLessImage===true}\"\r\n [simpoImageDirective]=\"styles?.image\" [alt]=\"listItems[0]?.image.altText\"\r\n [class]=\"data?.id+(listItems[0]?.image.id || '')\" [simpoObjectPosition]=\"listItems[0]?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n <div [ngClass]=\"{'images' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0 gap-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems.slice(1); let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\" [ngClass]=\"{'image-width' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderLess-image me-0 borderless-width': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"image-section-2\" *ngIf=\"content?.listItem?.data?.length === 2\" [ngClass]=\"{'image-section-2-borderless': styles?.borderLessImage}\">\r\n <div [ngClass]=\"{'image-width-2' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0 gap-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems; let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\"\r\n [ngClass]=\"{'images-width-2' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderless-width borderLess-image': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"image-section-3\" *ngIf=\"content?.listItem?.data?.length === 1\" [ngClass]=\"{'image-width-3' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div>\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems; let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\"\r\n [ngClass]=\"{'images-width-3' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderLess-height borderLess-image': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\" class=\"image-1\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-lg-6 d-flex flex-column justify-content-start gap-15\" [id]=\"data?.id\" [ngClass]=\"{'col-lg-12' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'px-5 py-4': styles?.borderLessImage}\"\r\n [simpoContentAlignment]=\"styles?.contentAlignment\">\r\n <div *ngFor=\"let text of content?.inputText\">\r\n <div [innerHTML]=\"text.value | sanitizeHtml\" [ngClass]=\"text.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n </div>\r\n </div>\r\n <div class=\"button-section d-flex mt-4\" *ngIf=\"!data?.action?.hasOwnProperty('display') || data?.action?.display\" [ngClass]=\"[\r\n styles?.layout?.align === 'left' ? 'justify-content-md-start' : '',\r\n styles?.layout?.align === 'center' ? 'justify-content-md-center' : '',\r\n styles?.layout?.align === 'right' ? 'justify-content-md-end' : ''\r\n ]\">\r\n <div *ngFor=\"let button of data?.action?.buttons\">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\" [buttonId]=\"button.id\"\r\n [sectionId]=\"data?.id\" [color]=\"data?.styles?.background?.accentColor\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\" [isMerged]=\"styles?.merge ?? false\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n\r\n</section>\r\n", styles: [".total-container{height:auto;position:relative}.float-none{float:none}.image-section{display:flex;flex-direction:column;align-items:center}.image-section .d-flex{gap:10px}.img{width:100%;height:auto}.align-items-unset{align-items:unset}.borderLess-image{border-radius:0!important}.borderless-width{width:50%;height:auto}.borderLess-height{height:54vh}.img-1{width:48%;height:auto}.image-section-2{display:flex;align-items:center}.image-section-2 .d-flex{gap:10px}.image-section-2-borderless,.image-1{width:100%}.image-position{display:flex;flex-direction:row;width:100%}.image-width{width:100%;margin-right:5px}.images{width:33%}.images-top{width:33%;margin-right:15px}.image-width-top{width:100%;height:100%;margin-top:17px;margin-right:15px}.col-lg-12{width:100%!important}.total-section{min-height:calc(50vh + -0px)!important;height:auto}.image-width-2{width:50%}.images-width-2{width:100%}.image-width-3,.images-width-3{width:100%;height:450px}.button-section{gap:10px}@media only screen and (max-width: 475px){.total-section{height:auto;flex-direction:column}.py-4{padding:1rem!important}.body-large{font-size:16px;line-height:21px}.image-position{overflow-y:scroll}.images-top,.images{width:100%}.image-width,.image-width-top{height:450px;width:300px;margin-right:2px}.image-section-2{display:flex;align-items:center;overflow-y:scroll!important;width:100%}.images-width-2{width:310px;height:450px}.image-width-2{width:100%}}.mergeNavbar{margin-top:-175px;padding-top:175px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: ImageDirectiveDirective, selector: "[simpoImageDirective]", inputs: ["simpoImageDirective"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "component", type: HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: SimpoButtonComponent, selector: "app-button-element", inputs: ["buttonContent", "buttonStyle", "buttonId", "color", "sectionId"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: PositionLayoutDirectiveDirective, selector: "[simpoPositionLayoutDirective]", inputs: ["simpoPositionLayoutDirective"] }, { kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "directive", type: simpoConetenAlignmentDirective, selector: "[simpoContentAlignment]", inputs: ["simpoContentAlignment"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }] }); }
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: BannerGridSectionComponent, isStandalone: true, selector: "simpo-banner-grid-section", inputs: { data: "data", edit: "edit", delete: "delete", customClass: "customClass", index: "index" }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [ngClass]=\"{'mergeNavbar': canMergeNavbar}\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\" [attr.style]=\"customClass\">\r\n <div [attr.class]=\"styles?.borderLessImage ? 'px-0 py-0' : 'px-5 py-4'\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\"\r\n [simpoBorder]=\"styles?.border\">\r\n <div class=\"d-flex justify-content-between gap-5 align-items-center total-section\"[id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\"\r\n [simpoPositionLayoutDirective]=\"styles?.positionLayout\"\r\n [ngClass]=\"{ 'align-items-stretch': styles?.positionLayout?.value === 'right' || styles?.positionLayout?.value === 'left', 'px-0 py-0': styles?.borderLessImage }\">\r\n <div class=\"image-section\" *ngIf=\"content?.listItem?.data?.length === 3\" [ngClass]=\"{'image-position' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'align-items-unset': styles?.borderLessImage === true}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" [ngClass]=\"{'images-top' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'mt-0 mb-o ms-0 me-0': styles?.borderLessImage===true}\">\r\n <img loading=\"lazy\" [src]=\"listItems[0]?.image.url\" [id]=\"data?.id\" [simpoCorner]=\"styles?.corners\" class=\"img\" [ngClass]=\"{'image-width-top' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'mt-0 mb-o ms-0 me-0 borderLess-image': styles?.borderLessImage===true}\"\r\n [simpoImageDirective]=\"styles?.image\" [alt]=\"listItems[0]?.image.altText\"\r\n [class]=\"data?.id+(listItems[0]?.image.id || '')\" [simpoObjectPosition]=\"listItems[0]?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n <div [ngClass]=\"{'images' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0 gap-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems.slice(1); let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\" [ngClass]=\"{'image-width' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderLess-image me-0 borderless-width': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"image-section-2\" *ngIf=\"content?.listItem?.data?.length === 2\" [ngClass]=\"{'image-section-2-borderless': styles?.borderLessImage}\">\r\n <div [ngClass]=\"{'image-width-2' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0 gap-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems; let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\"\r\n [ngClass]=\"{'images-width-2' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderless-width borderLess-image': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"image-section-3\" *ngIf=\"content?.listItem?.data?.length === 1\" [ngClass]=\"{'image-width-3' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div>\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems; let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\"\r\n [ngClass]=\"{'images-width-3' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderLess-height borderLess-image': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\" class=\"image-1\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-lg-6 d-flex flex-column justify-content-start gap-15\" [id]=\"data?.id\" [ngClass]=\"{'col-lg-12' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'px-5 py-4': styles?.borderLessImage}\"\r\n [simpoContentAlignment]=\"styles?.contentAlignment\">\r\n <div *ngFor=\"let text of content?.inputText\">\r\n <div [innerHTML]=\"text.value | sanitizeHtml\" [ngClass]=\"text.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n </div>\r\n </div>\r\n <div class=\"button-section d-flex mt-4\" *ngIf=\"!data?.action?.hasOwnProperty('display') || data?.action?.display\" [ngClass]=\"[\r\n styles?.layout?.align === 'left' ? 'justify-content-md-start' : '',\r\n styles?.layout?.align === 'center' ? 'justify-content-md-center' : '',\r\n styles?.layout?.align === 'right' ? 'justify-content-md-end' : ''\r\n ]\">\r\n <div *ngFor=\"let button of data?.action?.buttons\">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\" [buttonId]=\"button.id\"\r\n [sectionId]=\"data?.id\" [color]=\"data?.styles?.background?.accentColor\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\" [isMerged]=\"styles?.merge ?? false\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n\r\n</section>\r\n", styles: [".total-container{height:auto;position:relative}.float-none{float:none}.image-section{display:flex;flex-direction:column;align-items:center}.image-section .d-flex{gap:10px}.img{width:100%;height:auto}.align-items-unset{align-items:unset}.borderLess-image{border-radius:0!important}.borderless-width{width:50%;height:auto}.borderLess-height{height:54vh}.img-1{width:48%;height:auto}.image-section-2{display:flex;align-items:center}.image-section-2 .d-flex{gap:10px}.image-section-2-borderless,.image-1{width:100%}.image-position{display:flex;flex-direction:row;width:100%}.image-width{width:100%;margin-right:5px}.images{width:33%}.images-top{width:33%;margin-right:15px}.image-width-top{width:100%;height:100%;margin-top:17px;margin-right:15px}.col-lg-12{width:100%!important}.total-section{min-height:calc(50vh + -0px)!important;height:auto}.image-width-2{width:50%}.images-width-2{width:100%}.image-width-3,.images-width-3{width:100%;height:450px}.button-section{gap:10px}@media only screen and (max-width: 475px){.total-section{height:auto;flex-direction:column}.py-4{padding:1rem!important}.body-large{font-size:16px;line-height:21px}.image-position{overflow-y:scroll}.images-top,.images{width:100%}.image-width,.image-width-top{height:450px;width:300px;margin-right:2px}.image-section-2{display:flex;align-items:center;overflow-y:scroll!important;width:100%}.images-width-2{width:310px;height:450px}.image-width-2{width:100%}}.mergeNavbar{margin-top:-175px;padding-top:175px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: ImageDirectiveDirective, selector: "[simpoImageDirective]", inputs: ["simpoImageDirective"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "component", type: HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: SimpoButtonComponent, selector: "app-button-element", inputs: ["buttonContent", "buttonStyle", "buttonId", "color", "sectionId"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: PositionLayoutDirectiveDirective, selector: "[simpoPositionLayoutDirective]", inputs: ["simpoPositionLayoutDirective"] }, { kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "directive", type: simpoConetenAlignmentDirective, selector: "[simpoContentAlignment]", inputs: ["simpoContentAlignment"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }] }); }
|
53
53
|
}
|
54
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: BannerGridSectionComponent, decorators: [{
|
55
55
|
type: Component,
|
@@ -71,7 +71,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
|
|
71
71
|
ContentFitDirective,
|
72
72
|
SimpoBorderlessDirective,
|
73
73
|
SanitizeHtmlPipe
|
74
|
-
], template: "<section [id]=\"data?.id\" [ngClass]=\"{'mergeNavbar': canMergeNavbar}\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\"
|
74
|
+
], template: "<section [id]=\"data?.id\" [ngClass]=\"{'mergeNavbar': canMergeNavbar}\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n class=\"total-container\" [attr.style]=\"customClass\">\r\n <div [attr.class]=\"styles?.borderLessImage ? 'px-0 py-0' : 'px-5 py-4'\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\"\r\n [simpoBorder]=\"styles?.border\">\r\n <div class=\"d-flex justify-content-between gap-5 align-items-center total-section\"[id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\"\r\n [simpoPositionLayoutDirective]=\"styles?.positionLayout\"\r\n [ngClass]=\"{ 'align-items-stretch': styles?.positionLayout?.value === 'right' || styles?.positionLayout?.value === 'left', 'px-0 py-0': styles?.borderLessImage }\">\r\n <div class=\"image-section\" *ngIf=\"content?.listItem?.data?.length === 3\" [ngClass]=\"{'image-position' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'align-items-unset': styles?.borderLessImage === true}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" [ngClass]=\"{'images-top' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'mt-0 mb-o ms-0 me-0': styles?.borderLessImage===true}\">\r\n <img loading=\"lazy\" [src]=\"listItems[0]?.image.url\" [id]=\"data?.id\" [simpoCorner]=\"styles?.corners\" class=\"img\" [ngClass]=\"{'image-width-top' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'mt-0 mb-o ms-0 me-0 borderLess-image': styles?.borderLessImage===true}\"\r\n [simpoImageDirective]=\"styles?.image\" [alt]=\"listItems[0]?.image.altText\"\r\n [class]=\"data?.id+(listItems[0]?.image.id || '')\" [simpoObjectPosition]=\"listItems[0]?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n <div [ngClass]=\"{'images' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0 gap-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems.slice(1); let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\" [ngClass]=\"{'image-width' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderLess-image me-0 borderless-width': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"image-section-2\" *ngIf=\"content?.listItem?.data?.length === 2\" [ngClass]=\"{'image-section-2-borderless': styles?.borderLessImage}\">\r\n <div [ngClass]=\"{'image-width-2' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0 gap-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems; let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\"\r\n [ngClass]=\"{'images-width-2' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderless-width borderLess-image': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"image-section-3\" *ngIf=\"content?.listItem?.data?.length === 1\" [ngClass]=\"{'image-width-3' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom'}\">\r\n <div>\r\n <div [id]=\"data?.id\" [simpoImageDirective]=\"styles?.image\" class=\"d-flex justify-content-between\" [ngClass]=\"{'mt-0': styles?.borderLessImage, 'mt-4': !styles?.borderLessImage}\">\r\n <img loading=\"lazy\" *ngFor=\"let item of listItems; let i = index\" [src]=\"item?.image.url\" [id]=\"data?.id\"\r\n [ngClass]=\"{'images-width-3' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'borderLess-height borderLess-image': styles?.borderLessImage, 'img-1': !styles?.borderLessImage}\"\r\n [alt]=\"item?.image.altText\" [simpoCorner]=\"styles?.corners\" [simpoImageDirective]=\"styles?.image\"\r\n [class]=\"data?.id+(item?.image.id || '')\" [simpoObjectPosition]=\"item?.image.position\" class=\"image-1\"\r\n loading=\"lazy\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-lg-6 d-flex flex-column justify-content-start gap-15\" [id]=\"data?.id\" [ngClass]=\"{'col-lg-12' : styles?.positionLayout?.value === 'top' || styles?.positionLayout?.value === 'bottom', 'px-5 py-4': styles?.borderLessImage}\"\r\n [simpoContentAlignment]=\"styles?.contentAlignment\">\r\n <div *ngFor=\"let text of content?.inputText\">\r\n <div [innerHTML]=\"text.value | sanitizeHtml\" [ngClass]=\"text.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n </div>\r\n </div>\r\n <div class=\"button-section d-flex mt-4\" *ngIf=\"!data?.action?.hasOwnProperty('display') || data?.action?.display\" [ngClass]=\"[\r\n styles?.layout?.align === 'left' ? 'justify-content-md-start' : '',\r\n styles?.layout?.align === 'center' ? 'justify-content-md-center' : '',\r\n styles?.layout?.align === 'right' ? 'justify-content-md-end' : ''\r\n ]\">\r\n <div *ngFor=\"let button of data?.action?.buttons\">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\" [buttonId]=\"button.id\"\r\n [sectionId]=\"data?.id\" [color]=\"data?.styles?.background?.accentColor\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\" [isMerged]=\"styles?.merge ?? false\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n\r\n</section>\r\n", styles: [".total-container{height:auto;position:relative}.float-none{float:none}.image-section{display:flex;flex-direction:column;align-items:center}.image-section .d-flex{gap:10px}.img{width:100%;height:auto}.align-items-unset{align-items:unset}.borderLess-image{border-radius:0!important}.borderless-width{width:50%;height:auto}.borderLess-height{height:54vh}.img-1{width:48%;height:auto}.image-section-2{display:flex;align-items:center}.image-section-2 .d-flex{gap:10px}.image-section-2-borderless,.image-1{width:100%}.image-position{display:flex;flex-direction:row;width:100%}.image-width{width:100%;margin-right:5px}.images{width:33%}.images-top{width:33%;margin-right:15px}.image-width-top{width:100%;height:100%;margin-top:17px;margin-right:15px}.col-lg-12{width:100%!important}.total-section{min-height:calc(50vh + -0px)!important;height:auto}.image-width-2{width:50%}.images-width-2{width:100%}.image-width-3,.images-width-3{width:100%;height:450px}.button-section{gap:10px}@media only screen and (max-width: 475px){.total-section{height:auto;flex-direction:column}.py-4{padding:1rem!important}.body-large{font-size:16px;line-height:21px}.image-position{overflow-y:scroll}.images-top,.images{width:100%}.image-width,.image-width-top{height:450px;width:300px;margin-right:2px}.image-section-2{display:flex;align-items:center;overflow-y:scroll!important;width:100%}.images-width-2{width:310px;height:450px}.image-width-2{width:100%}}.mergeNavbar{margin-top:-175px;padding-top:175px}\n"] }]
|
75
75
|
}], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { data: [{
|
76
76
|
type: Input
|
77
77
|
}], edit: [{
|
@@ -83,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
|
|
83
83
|
}], index: [{
|
84
84
|
type: Input
|
85
85
|
}] } });
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUd6RCxPQUFPLFdBQVcsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFBO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUNuSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUs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Qjt3QkFDeEIsZ0JBQWdCO3FCQUNqQjtrRkFHTSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCYW5uZXJHcmlkU2VjdGlvbk1vZGVsLCBCYW5uZXJHcmlkQ29udGVudE1vZGVsLCBCYW5uZXJHcmlkU3R5bGVzTW9kZWwgfSBmcm9tICcuL2Jhbm5lci1ncmlkLXNlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7QmFja2dyb3VuZERpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJ1xyXG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBEZWxldGVIb3ZlckVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9kZWxldGUtaG92ZXItZWxlbWVudC9kZWxldGUtaG92ZXItZWxlbWVudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2ltcG9CdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHMvc2ltcG8tYnV0dG9uL3NpbXBvLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUG9zaXRpb25MYXlvdXREaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvcG9zaXRpb24tbGF5b3V0LWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1wb3NpdGlvbi5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1hbGlnbm1lbnQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaW1wb0JvcmRlcmxlc3NEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVybGVzc0ltYWdlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNhbml0aXplSHRtbFBpcGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYW5pdGl6ZUh0bWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3NpbXBvLWJhbm5lci1ncmlkLXNlY3Rpb24nLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYW5uZXItZ3JpZC1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsOiAnLi9iYW5uZXItZ3JpZC1zZWN0aW9uLmNvbXBvbmVudC5jc3MnLFxyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSxcclxuICAgICAgSG92ZXJEaXJlY3RpdmUsXHJcbiAgICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgICBPdmVybGF5RGlyZWN0aXZlLFxyXG4gICAgICBDb3JuZXJEaXJlY3RpdmUsXHJcbiAgICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICAgIERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCxcclxuICAgICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICAgIEJvcmRlckRpcmVjdGl2ZSxcclxuICAgICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgICBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgICAgU2ltcG9Gb290ZXJMYXlvdXREaXJlY3RpdmUsXHJcbiAgICAgIE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlLFxyXG4gICAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXHJcbiAgICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXHJcbiAgICAgIFNpbXBvQm9yZGVybGVzc0RpcmVjdGl2ZSxcclxuICAgICAgU2FuaXRpemVIdG1sUGlwZVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFubmVyR3JpZFNlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZGF0YT86IEJhbm5lckdyaWRTZWN0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgY29udGVudD86IEJhbm5lckdyaWRDb250ZW50TW9kZWw7XHJcbiAgc3R5bGVzPzogQmFubmVyR3JpZFN0eWxlc01vZGVsO1xyXG4gIEBJbnB1dCgpIGRlbGV0ZT8gOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGluZGV4PyA6IG51bWJlcjtcclxuXHJcbiAgbGlzdEl0ZW1zIDogYW55O1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZXZlbnRTZXJ2aWNlIDogRXZlbnRzU2VydmljZVxyXG4gICl7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKXtcclxuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcclxuICAgIHRoaXMubGlzdEl0ZW1zID0gdGhpcy5kYXRhPy5jb250ZW50Lmxpc3RJdGVtLmRhdGFcclxuICAgIHRoaXMuc3R5bGVzID0gdGhpcy5kYXRhPy5zdHlsZXM7XHJcbiAgICBpZighdGhpcy5zdHlsZXMgIHx8ICF0aGlzLmNvbnRlbnQpIHJldHVybjtcclxuICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWQgPSB0aGlzLmRlbGV0ZVxyXG4gIH1cclxuICBnZXQgY2FuTWVyZ2VOYXZiYXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/Lm1lcmdlO1xyXG4gIH1cclxuICBnZXQgaXNCb3JkZXJsZXNzSW1hZ2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZSAmJiAodGhpcy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0LnZhbHVlID09IFwibGVmdFwiIHx8IHRoaXMuc3R5bGVzPy5wb3NpdGlvbkxheW91dC52YWx1ZSA9PSBcInJpZ2h0XCIpO1xyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpe1xyXG4gICAgaWYod2luZG93LmlubmVyV2lkdGggPD0gNDc1KVxyXG4gICAgICByZXR1cm5cclxuXHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7ZGF0YTp0aGlzLmRhdGF9KTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG59XHJcbiIsIjxzZWN0aW9uIFtpZF09XCJkYXRhPy5pZFwiIFtuZ0NsYXNzXT1cInsnbWVyZ2VOYXZiYXInOiBjYW5NZXJnZU5hdmJhcn1cIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCJcclxuICBjbGFzcz1cInRvdGFsLWNvbnRhaW5lclwiIChjbGljayk9XCJlZGl0U2VjdGlvbigpXCIgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cclxuICA8ZGl2IFthdHRyLmNsYXNzXT1cInN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlID8gJ3B4LTAgcHktMCcgOiAncHgtNSBweS00J1wiICBbaWRdPVwiZGF0YT8uaWRcIiAjbWFpbkNvbnRhaW5lciBbc2ltcG9PdmVybGF5XT1cInN0eWxlcz8uYmFja2dyb3VuZFwiXHJcbiAgICBbc2ltcG9Cb3JkZXJdPVwic3R5bGVzPy5ib3JkZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gZ2FwLTUgYWxpZ24taXRlbXMtY2VudGVyIHRvdGFsLXNlY3Rpb25cIltpZF09XCJkYXRhPy5pZFwiXHJcbiAgICAgIFtzaW1wb0FuaW1hdGlvbl09XCJzdHlsZXM/LmFuaW1hdGlvblwiIFtzaW1wb0xheW91dF09XCJzdHlsZXM/LmxheW91dFwiXHJcbiAgICAgIFtzaW1wb1Bvc2l0aW9uTGF5b3V0RGlyZWN0aXZlXT1cInN0eWxlcz8ucG9zaXRpb25MYXlvdXRcIlxyXG4gICAgICBbbmdDbGFzc109XCJ7ICdhbGlnbi1pdGVtcy1zdHJldGNoJzogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdyaWdodCcgfHwgc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdsZWZ0JywgJ3B4LTAgcHktMCc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlIH1cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImltYWdlLXNlY3Rpb25cIiAqbmdJZj1cImNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhPy5sZW5ndGggPT09IDNcIiAgW25nQ2xhc3NdPVwieydpbWFnZS1wb3NpdGlvbicgOiBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ3RvcCcgfHwgc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdib3R0b20nLCAnYWxpZ24taXRlbXMtdW5zZXQnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZSA9PT0gdHJ1ZX1cIj5cclxuICAgICAgICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlcz8uaW1hZ2VcIiBbbmdDbGFzc109XCJ7J2ltYWdlcy10b3AnIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJywgJ210LTAgbWItbyBtcy0wIG1lLTAnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZT09PXRydWV9XCI+XHJcbiAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgIFtzcmNdPVwibGlzdEl0ZW1zWzBdPy5pbWFnZS51cmxcIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgY2xhc3M9XCJpbWdcIiBbbmdDbGFzc109XCJ7J2ltYWdlLXdpZHRoLXRvcCcgOiBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ3RvcCcgfHwgc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdib3R0b20nLCAnbXQtMCBtYi1vIG1zLTAgbWUtMCBib3JkZXJMZXNzLWltYWdlJzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2U9PT10cnVlfVwiXHJcbiAgICAgICAgICAgIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlcz8uaW1hZ2VcIiBbYWx0XT1cImxpc3RJdGVtc1swXT8uaW1hZ2UuYWx0VGV4dFwiXHJcbiAgICAgICAgICAgIFtjbGFzc109XCJkYXRhPy5pZCsobGlzdEl0ZW1zWzBdPy5pbWFnZS5pZCB8fCAnJylcIiBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJsaXN0SXRlbXNbMF0/LmltYWdlLnBvc2l0aW9uXCJcclxuICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cInsnaW1hZ2VzJyA6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAndG9wJyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2JvdHRvbSd9XCI+XHJcbiAgICAgICAgICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlcz8uaW1hZ2VcIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiIFtuZ0NsYXNzXT1cInsnbXQtMCBnYXAtMCc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlLCAnbXQtNCc6ICFzdHlsZXM/LmJvcmRlckxlc3NJbWFnZX1cIj5cclxuICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBsaXN0SXRlbXMuc2xpY2UoMSk7IGxldCBpID0gaW5kZXhcIiBbc3JjXT1cIml0ZW0/LmltYWdlLnVybFwiIFtpZF09XCJkYXRhPy5pZFwiIFtuZ0NsYXNzXT1cInsnaW1hZ2Utd2lkdGgnIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJywgJ2JvcmRlckxlc3MtaW1hZ2UgbWUtMCBib3JkZXJsZXNzLXdpZHRoJzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2UsICdpbWctMSc6ICFzdHlsZXM/LmJvcmRlckxlc3NJbWFnZX1cIlxyXG4gICAgICAgICAgICAgIFthbHRdPVwiaXRlbT8uaW1hZ2UuYWx0VGV4dFwiIFtzaW1wb0Nvcm5lcl09XCJzdHlsZXM/LmNvcm5lcnNcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCJcclxuICAgICAgICAgICAgICBbY2xhc3NdPVwiZGF0YT8uaWQrKGl0ZW0/LmltYWdlLmlkIHx8ICcnKVwiIFtzaW1wb09iamVjdFBvc2l0aW9uXT1cIml0ZW0/LmltYWdlLnBvc2l0aW9uXCJcclxuICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImltYWdlLXNlY3Rpb24tMlwiICpuZ0lmPVwiY29udGVudD8ubGlzdEl0ZW0/LmRhdGE/Lmxlbmd0aCA9PT0gMlwiIFtuZ0NsYXNzXT1cInsnaW1hZ2Utc2VjdGlvbi0yLWJvcmRlcmxlc3MnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZX1cIj5cclxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cInsnaW1hZ2Utd2lkdGgtMicgOiBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ3RvcCcgfHwgc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdib3R0b20nfVwiPlxyXG4gICAgICAgICAgPGRpdiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiBbbmdDbGFzc109XCJ7J210LTAgZ2FwLTAnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZSwgJ210LTQnOiAhc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2V9XCI+XHJcbiAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGlzdEl0ZW1zOyBsZXQgaSA9IGluZGV4XCIgW3NyY109XCJpdGVtPy5pbWFnZS51cmxcIiBbaWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaW1hZ2VzLXdpZHRoLTInIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJywgJ2JvcmRlcmxlc3Mtd2lkdGggYm9yZGVyTGVzcy1pbWFnZSc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlLCAnaW1nLTEnOiAhc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2V9XCJcclxuICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0/LmltYWdlLmFsdFRleHRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGVzPy5pbWFnZVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cImRhdGE/LmlkKyhpdGVtPy5pbWFnZS5pZCB8fCAnJylcIiBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJpdGVtPy5pbWFnZS5wb3NpdGlvblwiXHJcbiAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZS1zZWN0aW9uLTNcIiAqbmdJZj1cImNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhPy5sZW5ndGggPT09IDFcIiBbbmdDbGFzc109XCJ7J2ltYWdlLXdpZHRoLTMnIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJ31cIj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgPGRpdiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiAgW25nQ2xhc3NdPVwieydtdC0wJzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2UsICdtdC00JzogIXN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlfVwiPlxyXG4gICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGxpc3RJdGVtczsgbGV0IGkgPSBpbmRleFwiIFtzcmNdPVwiaXRlbT8uaW1hZ2UudXJsXCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2ltYWdlcy13aWR0aC0zJyA6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAndG9wJyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2JvdHRvbScsICdib3JkZXJMZXNzLWhlaWdodCBib3JkZXJMZXNzLWltYWdlJzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2UsICdpbWctMSc6ICFzdHlsZXM/LmJvcmRlckxlc3NJbWFnZX1cIlxyXG4gICAgICAgICAgICAgIFthbHRdPVwiaXRlbT8uaW1hZ2UuYWx0VGV4dFwiIFtzaW1wb0Nvcm5lcl09XCJzdHlsZXM/LmNvcm5lcnNcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCJcclxuICAgICAgICAgICAgICBbY2xhc3NdPVwiZGF0YT8uaWQrKGl0ZW0/LmltYWdlLmlkIHx8ICcnKVwiIFtzaW1wb09iamVjdFBvc2l0aW9uXT1cIml0ZW0/LmltYWdlLnBvc2l0aW9uXCIgY2xhc3M9XCJpbWFnZS0xXCJcclxuICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02IGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgZ2FwLTE1XCIgW2lkXT1cImRhdGE/LmlkXCIgW25nQ2xhc3NdPVwieydjb2wtbGctMTInIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJywgJ3B4LTUgcHktNCc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlfVwiXHJcbiAgICAgICAgW3NpbXBvQ29udGVudEFsaWdubWVudF09XCJzdHlsZXM/LmNvbnRlbnRBbGlnbm1lbnRcIj5cclxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0ZXh0IG9mIGNvbnRlbnQ/LmlucHV0VGV4dFwiPlxyXG4gICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cInRleHQudmFsdWUgfCBzYW5pdGl6ZUh0bWxcIiBbbmdDbGFzc109XCJ0ZXh0LmxhYmVsID09PSAnSGVhZGluZycgPyAnaGVhZGluZy1sYXJnZSBsaC0yIG1iLTMnIDogJ2JvZHktbGFyZ2UnXCI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXNlY3Rpb24gZC1mbGV4IG10LTRcIiAqbmdJZj1cIiFkYXRhPy5hY3Rpb24/Lmhhc093blByb3BlcnR5KCdkaXNwbGF5JykgfHwgZGF0YT8uYWN0aW9uPy5kaXNwbGF5XCIgICBbbmdDbGFzc109XCJbXHJcbiAgICAgICAgc3R5bGVzPy5sYXlvdXQ/LmFsaWduID09PSAnbGVmdCcgPyAnanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0JyA6ICcnLFxyXG4gICAgICAgIHN0eWxlcz8ubGF5b3V0Py5hbGlnbiA9PT0gJ2NlbnRlcicgPyAnanVzdGlmeS1jb250ZW50LW1kLWNlbnRlcicgOiAnJyxcclxuICAgICAgICBzdHlsZXM/LmxheW91dD8uYWxpZ24gPT09ICdyaWdodCcgPyAnanVzdGlmeS1jb250ZW50LW1kLWVuZCcgOiAnJ1xyXG4gICAgICBdXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBidXR0b24gb2YgZGF0YT8uYWN0aW9uPy5idXR0b25zXCI+XHJcbiAgICAgICAgICAgIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiIFtidXR0b25JZF09XCJidXR0b24uaWRcIlxyXG4gICAgICAgICAgICAgIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIiBbY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiPjwvYXBwLWJ1dHRvbi1lbGVtZW50PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cclxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIiBbaXNNZXJnZWRdPVwic3R5bGVzPy5tZXJnZSA/PyBmYWxzZVwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cclxuICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cclxuICA8L2Rpdj5cclxuXHJcbjwvc2VjdGlvbj5cclxuIl19
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1ncmlkLXNlY3Rpb24vYmFubmVyLWdyaWQtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUd6RCxPQUFPLFdBQVcsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFBO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUNuSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUs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Qjt3QkFDeEIsZ0JBQWdCO3FCQUNqQjtrRkFHTSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCYW5uZXJHcmlkU2VjdGlvbk1vZGVsLCBCYW5uZXJHcmlkQ29udGVudE1vZGVsLCBCYW5uZXJHcmlkU3R5bGVzTW9kZWwgfSBmcm9tICcuL2Jhbm5lci1ncmlkLXNlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7QmFja2dyb3VuZERpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJ1xyXG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBEZWxldGVIb3ZlckVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9kZWxldGUtaG92ZXItZWxlbWVudC9kZWxldGUtaG92ZXItZWxlbWVudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2ltcG9CdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHMvc2ltcG8tYnV0dG9uL3NpbXBvLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUG9zaXRpb25MYXlvdXREaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvcG9zaXRpb24tbGF5b3V0LWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1wb3NpdGlvbi5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1hbGlnbm1lbnQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaW1wb0JvcmRlcmxlc3NEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVybGVzc0ltYWdlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNhbml0aXplSHRtbFBpcGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYW5pdGl6ZUh0bWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3NpbXBvLWJhbm5lci1ncmlkLXNlY3Rpb24nLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYW5uZXItZ3JpZC1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsOiAnLi9iYW5uZXItZ3JpZC1zZWN0aW9uLmNvbXBvbmVudC5jc3MnLFxyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSxcclxuICAgICAgSG92ZXJEaXJlY3RpdmUsXHJcbiAgICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgICBPdmVybGF5RGlyZWN0aXZlLFxyXG4gICAgICBDb3JuZXJEaXJlY3RpdmUsXHJcbiAgICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICAgIERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCxcclxuICAgICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICAgIEJvcmRlckRpcmVjdGl2ZSxcclxuICAgICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgICBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgICAgU2ltcG9Gb290ZXJMYXlvdXREaXJlY3RpdmUsXHJcbiAgICAgIE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlLFxyXG4gICAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXHJcbiAgICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXHJcbiAgICAgIFNpbXBvQm9yZGVybGVzc0RpcmVjdGl2ZSxcclxuICAgICAgU2FuaXRpemVIdG1sUGlwZVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFubmVyR3JpZFNlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZGF0YT86IEJhbm5lckdyaWRTZWN0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgY29udGVudD86IEJhbm5lckdyaWRDb250ZW50TW9kZWw7XHJcbiAgc3R5bGVzPzogQmFubmVyR3JpZFN0eWxlc01vZGVsO1xyXG4gIEBJbnB1dCgpIGRlbGV0ZT8gOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGluZGV4PyA6IG51bWJlcjtcclxuXHJcbiAgbGlzdEl0ZW1zIDogYW55O1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZXZlbnRTZXJ2aWNlIDogRXZlbnRzU2VydmljZVxyXG4gICl7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKXtcclxuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcclxuICAgIHRoaXMubGlzdEl0ZW1zID0gdGhpcy5kYXRhPy5jb250ZW50Lmxpc3RJdGVtLmRhdGFcclxuICAgIHRoaXMuc3R5bGVzID0gdGhpcy5kYXRhPy5zdHlsZXM7XHJcbiAgICBpZighdGhpcy5zdHlsZXMgIHx8ICF0aGlzLmNvbnRlbnQpIHJldHVybjtcclxuICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWQgPSB0aGlzLmRlbGV0ZVxyXG4gIH1cclxuICBnZXQgY2FuTWVyZ2VOYXZiYXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/Lm1lcmdlO1xyXG4gIH1cclxuICBnZXQgaXNCb3JkZXJsZXNzSW1hZ2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZSAmJiAodGhpcy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0LnZhbHVlID09IFwibGVmdFwiIHx8IHRoaXMuc3R5bGVzPy5wb3NpdGlvbkxheW91dC52YWx1ZSA9PSBcInJpZ2h0XCIpO1xyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpe1xyXG4gICAgaWYod2luZG93LmlubmVyV2lkdGggPD0gNDc1KVxyXG4gICAgICByZXR1cm5cclxuXHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7ZGF0YTp0aGlzLmRhdGF9KTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG59XHJcbiIsIjxzZWN0aW9uIFtpZF09XCJkYXRhPy5pZFwiIFtuZ0NsYXNzXT1cInsnbWVyZ2VOYXZiYXInOiBjYW5NZXJnZU5hdmJhcn1cIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCJcclxuICBjbGFzcz1cInRvdGFsLWNvbnRhaW5lclwiIFthdHRyLnN0eWxlXT1cImN1c3RvbUNsYXNzXCI+XHJcbiAgPGRpdiBbYXR0ci5jbGFzc109XCJzdHlsZXM/LmJvcmRlckxlc3NJbWFnZSA/ICdweC0wIHB5LTAnIDogJ3B4LTUgcHktNCdcIiAgW2lkXT1cImRhdGE/LmlkXCIgI21haW5Db250YWluZXIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIlxyXG4gICAgW3NpbXBvQm9yZGVyXT1cInN0eWxlcz8uYm9yZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGdhcC01IGFsaWduLWl0ZW1zLWNlbnRlciB0b3RhbC1zZWN0aW9uXCJbaWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzPy5sYXlvdXRcIlxyXG4gICAgICBbc2ltcG9Qb3NpdGlvbkxheW91dERpcmVjdGl2ZV09XCJzdHlsZXM/LnBvc2l0aW9uTGF5b3V0XCJcclxuICAgICAgW25nQ2xhc3NdPVwieyAnYWxpZ24taXRlbXMtc3RyZXRjaCc6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAncmlnaHQnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnbGVmdCcsICdweC0wIHB5LTAnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZSB9XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZS1zZWN0aW9uXCIgKm5nSWY9XCJjb250ZW50Py5saXN0SXRlbT8uZGF0YT8ubGVuZ3RoID09PSAzXCIgIFtuZ0NsYXNzXT1cInsnaW1hZ2UtcG9zaXRpb24nIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJywgJ2FsaWduLWl0ZW1zLXVuc2V0Jzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2UgPT09IHRydWV9XCI+XHJcbiAgICAgICAgPGRpdiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCIgW25nQ2xhc3NdPVwieydpbWFnZXMtdG9wJyA6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAndG9wJyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2JvdHRvbScsICdtdC0wIG1iLW8gbXMtMCBtZS0wJzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2U9PT10cnVlfVwiPlxyXG4gICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiICBbc3JjXT1cImxpc3RJdGVtc1swXT8uaW1hZ2UudXJsXCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlcz8uY29ybmVyc1wiIGNsYXNzPVwiaW1nXCIgW25nQ2xhc3NdPVwieydpbWFnZS13aWR0aC10b3AnIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJywgJ210LTAgbWItbyBtcy0wIG1lLTAgYm9yZGVyTGVzcy1pbWFnZSc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlPT09dHJ1ZX1cIlxyXG4gICAgICAgICAgICBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCIgW2FsdF09XCJsaXN0SXRlbXNbMF0/LmltYWdlLmFsdFRleHRcIlxyXG4gICAgICAgICAgICBbY2xhc3NdPVwiZGF0YT8uaWQrKGxpc3RJdGVtc1swXT8uaW1hZ2UuaWQgfHwgJycpXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwibGlzdEl0ZW1zWzBdPy5pbWFnZS5wb3NpdGlvblwiXHJcbiAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7J2ltYWdlcycgOiBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ3RvcCcgfHwgc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdib3R0b20nfVwiPlxyXG4gICAgICAgICAgPGRpdiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiBbbmdDbGFzc109XCJ7J210LTAgZ2FwLTAnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZSwgJ210LTQnOiAhc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2V9XCI+XHJcbiAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGlzdEl0ZW1zLnNsaWNlKDEpOyBsZXQgaSA9IGluZGV4XCIgW3NyY109XCJpdGVtPy5pbWFnZS51cmxcIiBbaWRdPVwiZGF0YT8uaWRcIiBbbmdDbGFzc109XCJ7J2ltYWdlLXdpZHRoJyA6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAndG9wJyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2JvdHRvbScsICdib3JkZXJMZXNzLWltYWdlIG1lLTAgYm9yZGVybGVzcy13aWR0aCc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlLCAnaW1nLTEnOiAhc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2V9XCJcclxuICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0/LmltYWdlLmFsdFRleHRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGVzPy5pbWFnZVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cImRhdGE/LmlkKyhpdGVtPy5pbWFnZS5pZCB8fCAnJylcIiBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJpdGVtPy5pbWFnZS5wb3NpdGlvblwiXHJcbiAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZS1zZWN0aW9uLTJcIiAqbmdJZj1cImNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhPy5sZW5ndGggPT09IDJcIiBbbmdDbGFzc109XCJ7J2ltYWdlLXNlY3Rpb24tMi1ib3JkZXJsZXNzJzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2V9XCI+XHJcbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7J2ltYWdlLXdpZHRoLTInIDogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICd0b3AnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAnYm90dG9tJ31cIj5cclxuICAgICAgICAgIDxkaXYgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGVzPy5pbWFnZVwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgW25nQ2xhc3NdPVwieydtdC0wIGdhcC0wJzogc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2UsICdtdC00JzogIXN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlfVwiPlxyXG4gICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGxpc3RJdGVtczsgbGV0IGkgPSBpbmRleFwiIFtzcmNdPVwiaXRlbT8uaW1hZ2UudXJsXCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2ltYWdlcy13aWR0aC0yJyA6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAndG9wJyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2JvdHRvbScsICdib3JkZXJsZXNzLXdpZHRoIGJvcmRlckxlc3MtaW1hZ2UnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZSwgJ2ltZy0xJzogIXN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlfVwiXHJcbiAgICAgICAgICAgICAgW2FsdF09XCJpdGVtPy5pbWFnZS5hbHRUZXh0XCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlcz8uY29ybmVyc1wiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlcz8uaW1hZ2VcIlxyXG4gICAgICAgICAgICAgIFtjbGFzc109XCJkYXRhPy5pZCsoaXRlbT8uaW1hZ2UuaWQgfHwgJycpXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiaXRlbT8uaW1hZ2UucG9zaXRpb25cIlxyXG4gICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2Utc2VjdGlvbi0zXCIgKm5nSWY9XCJjb250ZW50Py5saXN0SXRlbT8uZGF0YT8ubGVuZ3RoID09PSAxXCIgW25nQ2xhc3NdPVwieydpbWFnZS13aWR0aC0zJyA6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAndG9wJyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2JvdHRvbSd9XCI+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxkaXYgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGVzPy5pbWFnZVwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgIFtuZ0NsYXNzXT1cInsnbXQtMCc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlLCAnbXQtNCc6ICFzdHlsZXM/LmJvcmRlckxlc3NJbWFnZX1cIj5cclxuICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBsaXN0SXRlbXM7IGxldCBpID0gaW5kZXhcIiBbc3JjXT1cIml0ZW0/LmltYWdlLnVybFwiIFtpZF09XCJkYXRhPy5pZFwiXHJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydpbWFnZXMtd2lkdGgtMycgOiBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ3RvcCcgfHwgc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdib3R0b20nLCAnYm9yZGVyTGVzcy1oZWlnaHQgYm9yZGVyTGVzcy1pbWFnZSc6IHN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlLCAnaW1nLTEnOiAhc3R5bGVzPy5ib3JkZXJMZXNzSW1hZ2V9XCJcclxuICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0/LmltYWdlLmFsdFRleHRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGVzPy5pbWFnZVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cImRhdGE/LmlkKyhpdGVtPy5pbWFnZS5pZCB8fCAnJylcIiBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJpdGVtPy5pbWFnZS5wb3NpdGlvblwiIGNsYXNzPVwiaW1hZ2UtMVwiXHJcbiAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNiBkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LXN0YXJ0IGdhcC0xNVwiIFtpZF09XCJkYXRhPy5pZFwiIFtuZ0NsYXNzXT1cInsnY29sLWxnLTEyJyA6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAndG9wJyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2JvdHRvbScsICdweC01IHB5LTQnOiBzdHlsZXM/LmJvcmRlckxlc3NJbWFnZX1cIlxyXG4gICAgICAgIFtzaW1wb0NvbnRlbnRBbGlnbm1lbnRdPVwic3R5bGVzPy5jb250ZW50QWxpZ25tZW50XCI+XHJcbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdGV4dCBvZiBjb250ZW50Py5pbnB1dFRleHRcIj5cclxuICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJ0ZXh0LnZhbHVlIHwgc2FuaXRpemVIdG1sXCIgW25nQ2xhc3NdPVwidGV4dC5sYWJlbCA9PT0gJ0hlYWRpbmcnID8gJ2hlYWRpbmctbGFyZ2UgbGgtMiBtYi0zJyA6ICdib2R5LWxhcmdlJ1wiPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1zZWN0aW9uIGQtZmxleCBtdC00XCIgKm5nSWY9XCIhZGF0YT8uYWN0aW9uPy5oYXNPd25Qcm9wZXJ0eSgnZGlzcGxheScpIHx8IGRhdGE/LmFjdGlvbj8uZGlzcGxheVwiICAgW25nQ2xhc3NdPVwiW1xyXG4gICAgICAgIHN0eWxlcz8ubGF5b3V0Py5hbGlnbiA9PT0gJ2xlZnQnID8gJ2p1c3RpZnktY29udGVudC1tZC1zdGFydCcgOiAnJyxcclxuICAgICAgICBzdHlsZXM/LmxheW91dD8uYWxpZ24gPT09ICdjZW50ZXInID8gJ2p1c3RpZnktY29udGVudC1tZC1jZW50ZXInIDogJycsXHJcbiAgICAgICAgc3R5bGVzPy5sYXlvdXQ/LmFsaWduID09PSAncmlnaHQnID8gJ2p1c3RpZnktY29udGVudC1tZC1lbmQnIDogJydcclxuICAgICAgXVwiPlxyXG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGRhdGE/LmFjdGlvbj8uYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICA8YXBwLWJ1dHRvbi1lbGVtZW50IFtidXR0b25Db250ZW50XT1cImJ1dHRvbi5jb250ZW50XCIgW2J1dHRvblN0eWxlXT1cImJ1dHRvbi5zdHlsZXNcIiBbYnV0dG9uSWRdPVwiYnV0dG9uLmlkXCJcclxuICAgICAgICAgICAgICBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgW2NvbG9yXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIj48L2FwcC1idXR0b24tZWxlbWVudD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XHJcbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCIgW2lzTWVyZ2VkXT1cInN0eWxlcz8ubWVyZ2UgPz8gZmFsc2VcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XHJcbiAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XHJcbiAgPC9kaXY+XHJcblxyXG48L3NlY3Rpb24+XHJcbiJdfQ==
|
@@ -73,7 +73,7 @@ export class BannerSectionComponent extends BaseSection {
|
|
73
73
|
event.stopPropagation();
|
74
74
|
}
|
75
75
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: BannerSectionComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
76
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: BannerSectionComponent, isStandalone: true, selector: "simpo-banner-section", inputs: { data: "data", index: "index", edit: "edit", delete: "delete", customClass: "customClass" }, usesInheritance: true, ngImport: i0, template: "<div [id]=\"data?.id\"\r\n [ngClass]=\"{'mergeNavbar': canMergeNavbar && index == 1, 'justify-content-between d-flex': isBorderlessImage}\"\r\n [simpoBackground]=\"styles?.background\" class=\"total-container\" style=\"overflow-x: hidden;\"
|
76
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: BannerSectionComponent, isStandalone: true, selector: "simpo-banner-section", inputs: { data: "data", index: "index", edit: "edit", delete: "delete", customClass: "customClass" }, usesInheritance: true, ngImport: i0, template: "<div [id]=\"data?.id\"\r\n [ngClass]=\"{'mergeNavbar': canMergeNavbar && index == 1, 'justify-content-between d-flex': isBorderlessImage}\"\r\n [simpoBackground]=\"styles?.background\" class=\"total-container\" style=\"overflow-x: hidden;\" simpoHover (hovering)=\"showEditTabs($event)\" [attr.style]=\"customClass\">\r\n <ng-container *ngTemplateOutlet=\"ImageSection\"></ng-container>\r\n <div class=\"px-4 py-5\" [ngClass]=\"{'col-lg-6 col-xxl-6': isBorderlessImage, 'w-100 col-xxl-8': !isBorderlessImage}\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\" [simpoBorder]=\"styles?.border\">\r\n <div class=\"row g-5 justify-content-start\"[id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\" [simpoPositionLayoutDirective]=\"styles?.positionLayout\"\r\n [ngClass]=\"{ 'align-items-stretch': styles?.positionLayout?.value === 'left' || styles?.positionLayout?.value === 'right', 'flex-lg-row': true }\"\r\n >\r\n <div class=\"col-10 col-sm-8 col-lg-6\" *ngIf=\"content?.image?.showImage && !isBorderlessImage\" [simpoContainerAlignment]=\"stylesLayout\">\r\n <img loading=\"lazy\"\r\n [src]=\"content?.image?.url\"\r\n [simpoImageDirective]=\"styles?.image\" [id]=\"data?.id\" [simpoObjectPosition]=\"content?.image?.position\"\r\n [simpoCorner]=\"styles?.corners\" [class]=\"data?.id+(content?.image?.id || '')\"\r\n class=\"d-block w-100 insideImg\" style=\"object-fit: cover;\" [alt]=\"content?.image?.altText\" width=\"700\" height=\"500\" loading=\"lazy\"/>\r\n </div>\r\n <div class=\"d-flex flex-column justify-content-start gap-15\"\r\n [ngClass]=\"{'col-lg-12': isBorderlessImage, 'col-lg-6': !isBorderlessImage}\"\r\n [simpoContainerAlignment]=\"stylesLayout\" [id]=\"data?.id\" [simpoContentAlignment]=\"styles?.contentAlignment\">\r\n <div *ngFor=\"let item of content?.inputText\">\r\n <div [innerHTML]=\"item.value | sanitizeHtml\" class=\"text-element\"\r\n [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"></div>\r\n </div>\r\n <div *ngFor=\"let item of content?.listItem?.data\" class=\"carder\">\r\n <div class=\"card_wrapper\">\r\n <div class=\"container_card visible\">\r\n <div class=\"card-section\">\r\n <div class=\"second-part-card\">\r\n\r\n </div>\r\n <div class=\"first-part-card\"\r\n [ngClass]=\"item.inputText[0].label=== 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n <img loading=\"lazy\" class=\"tick-img\"\r\n src=\"https://prod-simpo.s3.ap-south-1.amazonaws.com/prod-images/933997c1718790303127907598c1696063061900green_verified_image.png\"\r\n alt=\"something\" />\r\n\r\n {{ item.inputText[0].value }}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"data?.action && data?.action?.display\" class=\"button-display\"\r\n [simpoContainerAlignment]=\"stylesLayout\">\r\n <div *ngFor=\"let button of data?.action?.buttons\">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\" [buttonId]=\"button.id\"\r\n [sectionId]=\"data?.id\" [color]=\"data?.styles?.background?.accentColor\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <div style=\" width: 100%; height: 500px;\">\r\n <img loading=\"lazy\" src=\"../../assets/divider.svg\" style=\"clip-path: polygon(0 55%, 100% 0, 100% 100%, 0% 100%); background-color: red;\">\r\n </div> -->\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"\r\n [isMerged]=\"styles?.merge ?? false\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</div>\r\n<ng-template #ImageSection>\r\n <div class=\"col-10 col-sm-8 col-lg-6\" [ngStyle]=\"{'width': styles?.positionLayout?.value === 'right' ? 'fit-content' : ''}\" style=\"padding: 0px !important;\"*ngIf=\"content?.image?.showImage && isBorderlessImage;\" [simpoBorderless]=\"getPositionLayout\">\r\n <img loading=\"lazy\"\r\n [src]=\"content?.image?.url\"\r\n class=\"d-block img-fluid h-100 w-100\" [alt]=\"content?.image?.altText\" width=\"700\" height=\"500\" loading=\"lazy\"/>\r\n </div>\r\n</ng-template>\r\n", styles: [".btn-primary{border:none}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.button-display{display:flex;gap:10px}.gap-15{gap:15px}@media only screen and (max-width: 475px){.col-10{width:100%;max-width:100%;flex-basis:100%;height:32vh;padding-right:13px;padding-left:13px}.total-container{flex-direction:column}.insideImg{height:100%!important}}.text-element{inline-size:100%;overflow-wrap:break-word}.mergeNavbar{margin-top:-175px;padding-top:175px}.container_card .card-section{align-items:center;gap:20px;padding-top:5px;padding-bottom:5px;width:100%;border-radius:10px;opacity:0;transform:translateY(150px);transition:2s all ease}.card_wrapper{display:flex;flex-direction:column;gap:20px}.visible{visibility:visible!important}.visible .card-section{opacity:1;transform:translateY(0)}.first-part-card{min-width:fit-content}.first-part-card .body-large{font-size:1.1rem;font-weight:700}.second-part-card{width:2px;height:2px;border-radius:50%;display:flex;justify-content:center;align-items:center}.third-part-card .heading-large{font-size:1.1rem;font-weight:700}.third-part-card .body-large{font-size:12px;font-weight:400;line-height:15px}.tick-img{width:25px;height:25px;border-radius:50%}.third-part-card{display:flex;flex-direction:column;gap:10px}.image-card{width:50%!important}\n"], dependencies: [{ kind: "ngmodule", type: SimpoElementsModule }, { kind: "component", type: i2.SimpoButtonComponent, selector: "app-button-element", inputs: ["buttonContent", "buttonStyle", "buttonId", "color", "sectionId"] }, { 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.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { 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: "ngmodule", type: MatGridListModule }, { kind: "directive", type:
|
77
77
|
//directive
|
78
78
|
SimpoBorderlessDirective, selector: "[simpoBorderless]", inputs: ["simpoBorderless"] }, { kind: "directive", type: SimpoContainerAligment, selector: "[simpoContainerAlignment]", inputs: ["simpoContainerAlignment"] }, { kind: "directive", type: 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: simpoConetenAlignmentDirective, selector: "[simpoContentAlignment]", inputs: ["simpoContentAlignment"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { 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: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }] }); }
|
79
79
|
}
|
@@ -109,7 +109,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
|
|
109
109
|
ColorDirective,
|
110
110
|
TextSizeDirective,
|
111
111
|
SanitizeHtmlPipe
|
112
|
-
], template: "<div [id]=\"data?.id\"\r\n [ngClass]=\"{'mergeNavbar': canMergeNavbar && index == 1, 'justify-content-between d-flex': isBorderlessImage}\"\r\n [simpoBackground]=\"styles?.background\" class=\"total-container\" style=\"overflow-x: hidden;\"
|
112
|
+
], template: "<div [id]=\"data?.id\"\r\n [ngClass]=\"{'mergeNavbar': canMergeNavbar && index == 1, 'justify-content-between d-flex': isBorderlessImage}\"\r\n [simpoBackground]=\"styles?.background\" class=\"total-container\" style=\"overflow-x: hidden;\" simpoHover (hovering)=\"showEditTabs($event)\" [attr.style]=\"customClass\">\r\n <ng-container *ngTemplateOutlet=\"ImageSection\"></ng-container>\r\n <div class=\"px-4 py-5\" [ngClass]=\"{'col-lg-6 col-xxl-6': isBorderlessImage, 'w-100 col-xxl-8': !isBorderlessImage}\" [id]=\"data?.id\" #mainContainer [simpoOverlay]=\"styles?.background\" [simpoBorder]=\"styles?.border\">\r\n <div class=\"row g-5 justify-content-start\"[id]=\"data?.id\"\r\n [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\" [simpoPositionLayoutDirective]=\"styles?.positionLayout\"\r\n [ngClass]=\"{ 'align-items-stretch': styles?.positionLayout?.value === 'left' || styles?.positionLayout?.value === 'right', 'flex-lg-row': true }\"\r\n >\r\n <div class=\"col-10 col-sm-8 col-lg-6\" *ngIf=\"content?.image?.showImage && !isBorderlessImage\" [simpoContainerAlignment]=\"stylesLayout\">\r\n <img loading=\"lazy\"\r\n [src]=\"content?.image?.url\"\r\n [simpoImageDirective]=\"styles?.image\" [id]=\"data?.id\" [simpoObjectPosition]=\"content?.image?.position\"\r\n [simpoCorner]=\"styles?.corners\" [class]=\"data?.id+(content?.image?.id || '')\"\r\n class=\"d-block w-100 insideImg\" style=\"object-fit: cover;\" [alt]=\"content?.image?.altText\" width=\"700\" height=\"500\" loading=\"lazy\"/>\r\n </div>\r\n <div class=\"d-flex flex-column justify-content-start gap-15\"\r\n [ngClass]=\"{'col-lg-12': isBorderlessImage, 'col-lg-6': !isBorderlessImage}\"\r\n [simpoContainerAlignment]=\"stylesLayout\" [id]=\"data?.id\" [simpoContentAlignment]=\"styles?.contentAlignment\">\r\n <div *ngFor=\"let item of content?.inputText\">\r\n <div [innerHTML]=\"item.value | sanitizeHtml\" class=\"text-element\"\r\n [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"></div>\r\n </div>\r\n <div *ngFor=\"let item of content?.listItem?.data\" class=\"carder\">\r\n <div class=\"card_wrapper\">\r\n <div class=\"container_card visible\">\r\n <div class=\"card-section\">\r\n <div class=\"second-part-card\">\r\n\r\n </div>\r\n <div class=\"first-part-card\"\r\n [ngClass]=\"item.inputText[0].label=== 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n <img loading=\"lazy\" class=\"tick-img\"\r\n src=\"https://prod-simpo.s3.ap-south-1.amazonaws.com/prod-images/933997c1718790303127907598c1696063061900green_verified_image.png\"\r\n alt=\"something\" />\r\n\r\n {{ item.inputText[0].value }}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"data?.action && data?.action?.display\" class=\"button-display\"\r\n [simpoContainerAlignment]=\"stylesLayout\">\r\n <div *ngFor=\"let button of data?.action?.buttons\">\r\n <app-button-element [buttonContent]=\"button.content\" [buttonStyle]=\"button.styles\" [buttonId]=\"button.id\"\r\n [sectionId]=\"data?.id\" [color]=\"data?.styles?.background?.accentColor\"></app-button-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <div style=\" width: 100%; height: 500px;\">\r\n <img loading=\"lazy\" src=\"../../assets/divider.svg\" style=\"clip-path: polygon(0 55%, 100% 0, 100% 100%, 0% 100%); background-color: red;\">\r\n </div> -->\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"\r\n [isMerged]=\"styles?.merge ?? false\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</div>\r\n<ng-template #ImageSection>\r\n <div class=\"col-10 col-sm-8 col-lg-6\" [ngStyle]=\"{'width': styles?.positionLayout?.value === 'right' ? 'fit-content' : ''}\" style=\"padding: 0px !important;\"*ngIf=\"content?.image?.showImage && isBorderlessImage;\" [simpoBorderless]=\"getPositionLayout\">\r\n <img loading=\"lazy\"\r\n [src]=\"content?.image?.url\"\r\n class=\"d-block img-fluid h-100 w-100\" [alt]=\"content?.image?.altText\" width=\"700\" height=\"500\" loading=\"lazy\"/>\r\n </div>\r\n</ng-template>\r\n", styles: [".btn-primary{border:none}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.button-display{display:flex;gap:10px}.gap-15{gap:15px}@media only screen and (max-width: 475px){.col-10{width:100%;max-width:100%;flex-basis:100%;height:32vh;padding-right:13px;padding-left:13px}.total-container{flex-direction:column}.insideImg{height:100%!important}}.text-element{inline-size:100%;overflow-wrap:break-word}.mergeNavbar{margin-top:-175px;padding-top:175px}.container_card .card-section{align-items:center;gap:20px;padding-top:5px;padding-bottom:5px;width:100%;border-radius:10px;opacity:0;transform:translateY(150px);transition:2s all ease}.card_wrapper{display:flex;flex-direction:column;gap:20px}.visible{visibility:visible!important}.visible .card-section{opacity:1;transform:translateY(0)}.first-part-card{min-width:fit-content}.first-part-card .body-large{font-size:1.1rem;font-weight:700}.second-part-card{width:2px;height:2px;border-radius:50%;display:flex;justify-content:center;align-items:center}.third-part-card .heading-large{font-size:1.1rem;font-weight:700}.third-part-card .body-large{font-size:12px;font-weight:400;line-height:15px}.tick-img{width:25px;height:25px;border-radius:50%}.third-part-card{display:flex;flex-direction:column;gap:10px}.image-card{width:50%!important}\n"] }]
|
113
113
|
}], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { data: [{
|
114
114
|
type: Input
|
115
115
|
}], index: [{
|
@@ -121,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
|
|
121
121
|
}], customClass: [{
|
122
122
|
type: Input
|
123
123
|
}] } });
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9iYW5uZXItc2VjdGlvbi9iYW5uZXItc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1zZWN0aW9uL2Jhbm5lci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUduRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFB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QUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFubmVyQ29udGVudE1vZGVsLCBCYW5uZXJTZWN0aW9uTW9kZWwgfSBmcm9tICcuL2Jhbm5lci1zZWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgQmFubmVyU3R5bGVzTW9kZWwsIExheU91dE1vZGVsLCBQb3NpdGlvbkxheW91dE1vZGFsIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgU2ltcG9FbGVtZW50c01vZHVsZSB9IGZyb20gJy4vLi4vLi4vZWxlbWVudHMvaW5kZXgnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBTaW1wb0NvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvaW5kZXgnO1xyXG5pbXBvcnQgeyBNYXRHcmlkTGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2dyaWQtbGlzdCc7XHJcbmltcG9ydCB7IFNpbXBvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc2ltcG8tYnV0dG9uL3NpbXBvLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYW5uZXJDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Jhbm5lci1jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJ1dHRvbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9idXR0b24tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2x1bW4tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRhaW5lckZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItZmlyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IHNpbXBvQ29uZXRlbkFsaWdubWVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWFsaWdubWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3Bvc2l0aW9uLWxheW91dC1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVGV4dEJhY2tncm91bmREaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvdGV4dC1iYWNrZ3JvdW5kLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi8uLi8uLi9kaXJlY3RpdmUvaW1hZ2UtcG9zaXRpb24uZGlyZWN0aXZlJztcclxuaW1wb3J0IEJhc2VTZWN0aW9uIGZyb20gJy4uL0Jhc2VTZWN0aW9uJztcclxuaW1wb3J0IHsgU2ltcG9Db250YWluZXJBbGlnbWVudCB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItYWxpZ25tZW50LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbG9yRGlyZWN0aXZlIH0gZnJvbSAnLi8uLi8uLi9kaXJlY3RpdmUvY29sb3IuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVGV4dFNpemVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvdGV4dC1zaXplLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvQm9yZGVybGVzc0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ib3JkZXJsZXNzSW1hZ2UuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9Ib3ZlckJvcmRlckRpcmVjdGl2ZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmUvaG92ZXJib3JkZXIuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7IFNhbml0aXplSHRtbFBpcGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYW5pdGl6ZUh0bWwnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWJhbm5lci1zZWN0aW9uJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIFNpbXBvRWxlbWVudHNNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBTaW1wb0NvbXBvbmVudE1vZHVsZSxcclxuICAgIE1hdEdyaWRMaXN0TW9kdWxlLFxyXG4gICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICBTaW1wb0hvdmVyQm9yZGVyRGlyZWN0aXZlLFxyXG5cclxuICAgIC8vZGlyZWN0aXZlXHJcbiAgICBTaW1wb0JvcmRlcmxlc3NEaXJlY3RpdmUsXHJcbiAgICBTaW1wb0NvbnRhaW5lckFsaWdtZW50LFxyXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcclxuICAgIEJhbm5lckNvbnRlbnRGaXREaXJlY3RpdmUsXHJcbiAgICBCb3JkZXJEaXJlY3RpdmUsXHJcbiAgICBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBDb2x1bW5EaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBDb250YWluZXJGaXREaXJlY3RpdmUsXHJcbiAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gICAgQ29ybmVyRGlyZWN0aXZlLFxyXG4gICAgU2ltcG9Gb290ZXJMYXlvdXREaXJlY3RpdmUsXHJcbiAgICBIb3ZlckRpcmVjdGl2ZSxcclxuICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgVGV4dEJhY2tncm91bmREaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSxcclxuICAgIENvbG9yRGlyZWN0aXZlLFxyXG4gICAgVGV4dFNpemVEaXJlY3RpdmUsXHJcbiAgICBTYW5pdGl6ZUh0bWxQaXBlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYmFubmVyLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9iYW5uZXItc2VjdGlvbi5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFubmVyU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgZGF0YT86QmFubmVyU2VjdGlvbk1vZGVsO1xyXG4gIEBJbnB1dCgpIGluZGV4PyA6IG51bWJlcjtcclxuICBjb250ZW50PzogQmFubmVyQ29udGVudE1vZGVsO1xyXG4gIEBJbnB1dCgpIGVkaXQ/IDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBkZWxldGU/IDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuICBzdHlsZXM/OiBCYW5uZXJTdHlsZXNNb2RlbDtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZXZlbnRTZXJ2aWNlIDogRXZlbnRzU2VydmljZVxyXG4gICl7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLmRhdGEpO1xyXG4gICAgdGhpcy5kZWxldGVTZWxlY3RlZCA9IHRoaXMuZGVsZXRlXHJcbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmRhdGE/LmNvbnRlbnQ7XHJcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMuZGF0YT8uc3R5bGVzO1xyXG4gICAgaWYoIXRoaXMuc3R5bGVzICB8fCAhdGhpcy5jb250ZW50KSByZXR1cm47XHJcbiAgICAvLyB0aGlzLnN0eWxlcy5sYXlvdXQuYmFubmVySW1hZ2VEaXNwbGF5ID0gdGhpcy5jb250ZW50LmltYWdlLnNob3dJbWFnZTtcclxuICB9XHJcbiAgZ2V0IHN0eWxlc0xheW91dCgpIHtcclxuICAgIHJldHVybiB7Li4udGhpcy5zdHlsZXM/LmxheW91dH0gYXMgTGF5T3V0TW9kZWw7XHJcbiAgfVxyXG4gIGdldCBnZXRKdXN0aWZ5Q29udGVudCgpIHtcclxuICAgIHJldHVybiBcImp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XCI7XHJcbiAgfVxyXG4gIGdldCBjYW5NZXJnZU5hdmJhcigpIHtcclxuICAgIHJldHVybiB0aGlzLnN0eWxlcz8ubWVyZ2U7XHJcbiAgfVxyXG4gIGdldCBpc0JvcmRlcmxlc3NJbWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlICYmICh0aGlzLnN0eWxlcz8ucG9zaXRpb25MYXlvdXQudmFsdWUgPT0gXCJsZWZ0XCIgfHwgdGhpcy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0LnZhbHVlID09IFwicmlnaHRcIik7XHJcbiAgfVxyXG4gIGdldCBnZXRQb3NpdGlvbkxheW91dCgpIHtcclxuICAgIHJldHVybiB7Li4udGhpcy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0fSBhcyBQb3NpdGlvbkxheW91dE1vZGFsO1xyXG4gIH1cclxuXHJcbiAgZWRpdFNlY3Rpb24oKXtcclxuXHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7ZGF0YTp0aGlzLmRhdGF9KTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG4gIHN0b3BQcm9wYWdhdGlvbihldmVudDogYW55KSB7XHJcblxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IFtpZF09XCJkYXRhPy5pZFwiXHJcbiAgW25nQ2xhc3NdPVwieydtZXJnZU5hdmJhcic6IGNhbk1lcmdlTmF2YmFyICYmIGluZGV4ID09IDEsICdqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBkLWZsZXgnOiBpc0JvcmRlcmxlc3NJbWFnZX1cIlxyXG4gIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCIgY2xhc3M9XCJ0b3RhbC1jb250YWluZXJcIiBzdHlsZT1cIm92ZXJmbG93LXg6IGhpZGRlbjtcIiAoY2xpY2spPVwiZWRpdFNlY3Rpb24oKVwiICBzaW1wb0hvdmVyIChob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiIFthdHRyLnN0eWxlXT1cImN1c3RvbUNsYXNzXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIkltYWdlU2VjdGlvblwiPjwvbmctY29udGFpbmVyPlxyXG4gIDxkaXYgY2xhc3M9XCJweC00IHB5LTVcIiBbbmdDbGFzc109XCJ7J2NvbC1sZy02IGNvbC14eGwtNic6IGlzQm9yZGVybGVzc0ltYWdlLCAndy0xMDAgY29sLXh4bC04JzogIWlzQm9yZGVybGVzc0ltYWdlfVwiIFtpZF09XCJkYXRhPy5pZFwiICNtYWluQ29udGFpbmVyIFtzaW1wb092ZXJsYXldPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCIgW3NpbXBvQm9yZGVyXT1cInN0eWxlcz8uYm9yZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IGctNSBqdXN0aWZ5LWNvbnRlbnQtc3RhcnRcIltpZF09XCJkYXRhPy5pZFwiXHJcbiAgICBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzPy5sYXlvdXRcIiBbc2ltcG9Qb3NpdGlvbkxheW91dERpcmVjdGl2ZV09XCJzdHlsZXM/LnBvc2l0aW9uTGF5b3V0XCJcclxuICAgIFtuZ0NsYXNzXT1cInsgJ2FsaWduLWl0ZW1zLXN0cmV0Y2gnOiBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ2xlZnQnIHx8IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAncmlnaHQnLCAnZmxleC1sZy1yb3cnOiB0cnVlIH1cIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLTEwIGNvbC1zbS04IGNvbC1sZy02XCIgKm5nSWY9XCJjb250ZW50Py5pbWFnZT8uc2hvd0ltYWdlICYmICFpc0JvcmRlcmxlc3NJbWFnZVwiIFtzaW1wb0NvbnRhaW5lckFsaWdubWVudF09XCJzdHlsZXNMYXlvdXRcIj5cclxuICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCJcclxuICAgICAgICAgIFtzcmNdPVwiY29udGVudD8uaW1hZ2U/LnVybFwiXHJcbiAgICAgICAgICBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZXM/LmltYWdlXCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiY29udGVudD8uaW1hZ2U/LnBvc2l0aW9uXCJcclxuICAgICAgICAgIFtzaW1wb0Nvcm5lcl09XCJzdHlsZXM/LmNvcm5lcnNcIiBbY2xhc3NdPVwiZGF0YT8uaWQrKGNvbnRlbnQ/LmltYWdlPy5pZCB8fCAnJylcIlxyXG4gICAgICAgICAgY2xhc3M9XCJkLWJsb2NrIHctMTAwIGluc2lkZUltZ1wiIHN0eWxlPVwib2JqZWN0LWZpdDogY292ZXI7XCIgW2FsdF09XCJjb250ZW50Py5pbWFnZT8uYWx0VGV4dFwiIHdpZHRoPVwiNzAwXCIgaGVpZ2h0PVwiNTAwXCIgbG9hZGluZz1cImxhenlcIi8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1zdGFydCBnYXAtMTVcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnY29sLWxnLTEyJzogaXNCb3JkZXJsZXNzSW1hZ2UsICdjb2wtbGctNic6ICFpc0JvcmRlcmxlc3NJbWFnZX1cIlxyXG4gICAgICAgIFtzaW1wb0NvbnRhaW5lckFsaWdubWVudF09XCJzdHlsZXNMYXlvdXRcIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9Db250ZW50QWxpZ25tZW50XT1cInN0eWxlcz8uY29udGVudEFsaWdubWVudFwiPlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8uaW5wdXRUZXh0XCI+XHJcbiAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiaXRlbS52YWx1ZSB8IHNhbml0aXplSHRtbFwiIGNsYXNzPVwidGV4dC1lbGVtZW50XCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5sYWJlbCA9PT0gJ0hlYWRpbmcnID8gJ2hlYWRpbmctbGFyZ2UgbGgtMiBtYi0zJyA6ICdib2R5LWxhcmdlJ1wiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8ubGlzdEl0ZW0/LmRhdGFcIiBjbGFzcz1cImNhcmRlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRfd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyX2NhcmQgdmlzaWJsZVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXNlY3Rpb25cIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWNvbmQtcGFydC1jYXJkXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlyc3QtcGFydC1jYXJkXCJcclxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5pbnB1dFRleHRbMF0ubGFiZWw9PT0gJ0hlYWRpbmcnID8gJ2hlYWRpbmctbGFyZ2UgbGgtMiBtYi0zJyA6ICdib2R5LWxhcmdlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgIGNsYXNzPVwidGljay1pbWdcIlxyXG4gICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vcHJvZC1zaW1wby5zMy5hcC1zb3V0aC0xLmFtYXpvbmF3cy5jb20vcHJvZC1pbWFnZXMvOTMzOTk3YzE3MTg3OTAzMDMxMjc5MDc1OThjMTY5NjA2MzA2MTkwMGdyZWVuX3ZlcmlmaWVkX2ltYWdlLnBuZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgYWx0PVwic29tZXRoaW5nXCIgLz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5pbnB1dFRleHRbMF0udmFsdWUgfX1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJkYXRhPy5hY3Rpb24gJiYgZGF0YT8uYWN0aW9uPy5kaXNwbGF5XCIgY2xhc3M9XCJidXR0b24tZGlzcGxheVwiXHJcbiAgICAgICAgICBbc2ltcG9Db250YWluZXJBbGlnbm1lbnRdPVwic3R5bGVzTGF5b3V0XCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBidXR0b24gb2YgZGF0YT8uYWN0aW9uPy5idXR0b25zXCI+XHJcbiAgICAgICAgICAgIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiIFtidXR0b25JZF09XCJidXR0b24uaWRcIlxyXG4gICAgICAgICAgICAgIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIiBbY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiPjwvYXBwLWJ1dHRvbi1lbGVtZW50PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPCEtLSA8ZGl2IHN0eWxlPVwiIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDUwMHB4O1wiPlxyXG4gICAgPGltZyBsb2FkaW5nPVwibGF6eVwiICBzcmM9XCIuLi8uLi9hc3NldHMvZGl2aWRlci5zdmdcIiBzdHlsZT1cImNsaXAtcGF0aDogcG9seWdvbigwIDU1JSwgMTAwJSAwLCAxMDAlIDEwMCUsIDAlIDEwMCUpOyBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XCI+XHJcbiAgPC9kaXY+IC0tPlxyXG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cclxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIlxyXG4gICAgICBbaXNNZXJnZWRdPVwic3R5bGVzPy5tZXJnZSA/PyBmYWxzZVwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cclxuICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjSW1hZ2VTZWN0aW9uPlxyXG4gIDxkaXYgY2xhc3M9XCJjb2wtMTAgY29sLXNtLTggY29sLWxnLTZcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdyaWdodCcgPyAnZml0LWNvbnRlbnQnIDogJyd9XCIgc3R5bGU9XCJwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcIipuZ0lmPVwiY29udGVudD8uaW1hZ2U/LnNob3dJbWFnZSAmJiBpc0JvcmRlcmxlc3NJbWFnZTtcIiBbc2ltcG9Cb3JkZXJsZXNzXT1cImdldFBvc2l0aW9uTGF5b3V0XCI+XHJcbiAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCJcclxuICAgICAgW3NyY109XCJjb250ZW50Py5pbWFnZT8udXJsXCJcclxuICAgICAgY2xhc3M9XCJkLWJsb2NrIGltZy1mbHVpZCBoLTEwMCB3LTEwMFwiIFthbHRdPVwiY29udGVudD8uaW1hZ2U/LmFsdFRleHRcIiB3aWR0aD1cIjcwMFwiIGhlaWdodD1cIjUwMFwiIGxvYWRpbmc9XCJsYXp5XCIvPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9iYW5uZXItc2VjdGlvbi9iYW5uZXItc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jhbm5lci1zZWN0aW9uL2Jhbm5lci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUduRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFB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QUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFubmVyQ29udGVudE1vZGVsLCBCYW5uZXJTZWN0aW9uTW9kZWwgfSBmcm9tICcuL2Jhbm5lci1zZWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgQmFubmVyU3R5bGVzTW9kZWwsIExheU91dE1vZGVsLCBQb3NpdGlvbkxheW91dE1vZGFsIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgU2ltcG9FbGVtZW50c01vZHVsZSB9IGZyb20gJy4vLi4vLi4vZWxlbWVudHMvaW5kZXgnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBTaW1wb0NvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvaW5kZXgnO1xyXG5pbXBvcnQgeyBNYXRHcmlkTGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2dyaWQtbGlzdCc7XHJcbmltcG9ydCB7IFNpbXBvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc2ltcG8tYnV0dG9uL3NpbXBvLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYW5uZXJDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Jhbm5lci1jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJ1dHRvbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9idXR0b24tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2x1bW4tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRhaW5lckZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItZmlyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IHNpbXBvQ29uZXRlbkFsaWdubWVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWFsaWdubWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3Bvc2l0aW9uLWxheW91dC1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVGV4dEJhY2tncm91bmREaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvdGV4dC1iYWNrZ3JvdW5kLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi8uLi8uLi9kaXJlY3RpdmUvaW1hZ2UtcG9zaXRpb24uZGlyZWN0aXZlJztcclxuaW1wb3J0IEJhc2VTZWN0aW9uIGZyb20gJy4uL0Jhc2VTZWN0aW9uJztcclxuaW1wb3J0IHsgU2ltcG9Db250YWluZXJBbGlnbWVudCB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItYWxpZ25tZW50LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbG9yRGlyZWN0aXZlIH0gZnJvbSAnLi8uLi8uLi9kaXJlY3RpdmUvY29sb3IuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVGV4dFNpemVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvdGV4dC1zaXplLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvQm9yZGVybGVzc0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ib3JkZXJsZXNzSW1hZ2UuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9Ib3ZlckJvcmRlckRpcmVjdGl2ZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmUvaG92ZXJib3JkZXIuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7IFNhbml0aXplSHRtbFBpcGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYW5pdGl6ZUh0bWwnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWJhbm5lci1zZWN0aW9uJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIFNpbXBvRWxlbWVudHNNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBTaW1wb0NvbXBvbmVudE1vZHVsZSxcclxuICAgIE1hdEdyaWRMaXN0TW9kdWxlLFxyXG4gICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICBTaW1wb0hvdmVyQm9yZGVyRGlyZWN0aXZlLFxyXG5cclxuICAgIC8vZGlyZWN0aXZlXHJcbiAgICBTaW1wb0JvcmRlcmxlc3NEaXJlY3RpdmUsXHJcbiAgICBTaW1wb0NvbnRhaW5lckFsaWdtZW50LFxyXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcclxuICAgIEJhbm5lckNvbnRlbnRGaXREaXJlY3RpdmUsXHJcbiAgICBCb3JkZXJEaXJlY3RpdmUsXHJcbiAgICBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBDb2x1bW5EaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBDb250YWluZXJGaXREaXJlY3RpdmUsXHJcbiAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gICAgQ29ybmVyRGlyZWN0aXZlLFxyXG4gICAgU2ltcG9Gb290ZXJMYXlvdXREaXJlY3RpdmUsXHJcbiAgICBIb3ZlckRpcmVjdGl2ZSxcclxuICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgVGV4dEJhY2tncm91bmREaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBPYmplY3RQb3NpdGlvbkRpcmVjdGl2ZSxcclxuICAgIENvbG9yRGlyZWN0aXZlLFxyXG4gICAgVGV4dFNpemVEaXJlY3RpdmUsXHJcbiAgICBTYW5pdGl6ZUh0bWxQaXBlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYmFubmVyLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9iYW5uZXItc2VjdGlvbi5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFubmVyU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgZGF0YT86QmFubmVyU2VjdGlvbk1vZGVsO1xyXG4gIEBJbnB1dCgpIGluZGV4PyA6IG51bWJlcjtcclxuICBjb250ZW50PzogQmFubmVyQ29udGVudE1vZGVsO1xyXG4gIEBJbnB1dCgpIGVkaXQ/IDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBkZWxldGU/IDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuICBzdHlsZXM/OiBCYW5uZXJTdHlsZXNNb2RlbDtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZXZlbnRTZXJ2aWNlIDogRXZlbnRzU2VydmljZVxyXG4gICl7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLmRhdGEpO1xyXG4gICAgdGhpcy5kZWxldGVTZWxlY3RlZCA9IHRoaXMuZGVsZXRlXHJcbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmRhdGE/LmNvbnRlbnQ7XHJcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMuZGF0YT8uc3R5bGVzO1xyXG4gICAgaWYoIXRoaXMuc3R5bGVzICB8fCAhdGhpcy5jb250ZW50KSByZXR1cm47XHJcbiAgICAvLyB0aGlzLnN0eWxlcy5sYXlvdXQuYmFubmVySW1hZ2VEaXNwbGF5ID0gdGhpcy5jb250ZW50LmltYWdlLnNob3dJbWFnZTtcclxuICB9XHJcbiAgZ2V0IHN0eWxlc0xheW91dCgpIHtcclxuICAgIHJldHVybiB7Li4udGhpcy5zdHlsZXM/LmxheW91dH0gYXMgTGF5T3V0TW9kZWw7XHJcbiAgfVxyXG4gIGdldCBnZXRKdXN0aWZ5Q29udGVudCgpIHtcclxuICAgIHJldHVybiBcImp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XCI7XHJcbiAgfVxyXG4gIGdldCBjYW5NZXJnZU5hdmJhcigpIHtcclxuICAgIHJldHVybiB0aGlzLnN0eWxlcz8ubWVyZ2U7XHJcbiAgfVxyXG4gIGdldCBpc0JvcmRlcmxlc3NJbWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlICYmICh0aGlzLnN0eWxlcz8ucG9zaXRpb25MYXlvdXQudmFsdWUgPT0gXCJsZWZ0XCIgfHwgdGhpcy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0LnZhbHVlID09IFwicmlnaHRcIik7XHJcbiAgfVxyXG4gIGdldCBnZXRQb3NpdGlvbkxheW91dCgpIHtcclxuICAgIHJldHVybiB7Li4udGhpcy5zdHlsZXM/LnBvc2l0aW9uTGF5b3V0fSBhcyBQb3NpdGlvbkxheW91dE1vZGFsO1xyXG4gIH1cclxuXHJcbiAgZWRpdFNlY3Rpb24oKXtcclxuXHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7ZGF0YTp0aGlzLmRhdGF9KTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG4gIHN0b3BQcm9wYWdhdGlvbihldmVudDogYW55KSB7XHJcblxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IFtpZF09XCJkYXRhPy5pZFwiXHJcbiAgW25nQ2xhc3NdPVwieydtZXJnZU5hdmJhcic6IGNhbk1lcmdlTmF2YmFyICYmIGluZGV4ID09IDEsICdqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBkLWZsZXgnOiBpc0JvcmRlcmxlc3NJbWFnZX1cIlxyXG4gIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCIgY2xhc3M9XCJ0b3RhbC1jb250YWluZXJcIiBzdHlsZT1cIm92ZXJmbG93LXg6IGhpZGRlbjtcIiAgc2ltcG9Ib3ZlciAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIiBbYXR0ci5zdHlsZV09XCJjdXN0b21DbGFzc1wiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJJbWFnZVNlY3Rpb25cIj48L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2IGNsYXNzPVwicHgtNCBweS01XCIgW25nQ2xhc3NdPVwieydjb2wtbGctNiBjb2wteHhsLTYnOiBpc0JvcmRlcmxlc3NJbWFnZSwgJ3ctMTAwIGNvbC14eGwtOCc6ICFpc0JvcmRlcmxlc3NJbWFnZX1cIiBbaWRdPVwiZGF0YT8uaWRcIiAjbWFpbkNvbnRhaW5lciBbc2ltcG9PdmVybGF5XT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZXM/LmJvcmRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBnLTUganVzdGlmeS1jb250ZW50LXN0YXJ0XCJbaWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlcz8ubGF5b3V0XCIgW3NpbXBvUG9zaXRpb25MYXlvdXREaXJlY3RpdmVdPVwic3R5bGVzPy5wb3NpdGlvbkxheW91dFwiXHJcbiAgICBbbmdDbGFzc109XCJ7ICdhbGlnbi1pdGVtcy1zdHJldGNoJzogc3R5bGVzPy5wb3NpdGlvbkxheW91dD8udmFsdWUgPT09ICdsZWZ0JyB8fCBzdHlsZXM/LnBvc2l0aW9uTGF5b3V0Py52YWx1ZSA9PT0gJ3JpZ2h0JywgJ2ZsZXgtbGctcm93JzogdHJ1ZSB9XCJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMCBjb2wtc20tOCBjb2wtbGctNlwiICpuZ0lmPVwiY29udGVudD8uaW1hZ2U/LnNob3dJbWFnZSAmJiAhaXNCb3JkZXJsZXNzSW1hZ2VcIiBbc2ltcG9Db250YWluZXJBbGlnbm1lbnRdPVwic3R5bGVzTGF5b3V0XCI+XHJcbiAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiXHJcbiAgICAgICAgICBbc3JjXT1cImNvbnRlbnQ/LmltYWdlPy51cmxcIlxyXG4gICAgICAgICAgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGVzPy5pbWFnZVwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb09iamVjdFBvc2l0aW9uXT1cImNvbnRlbnQ/LmltYWdlPy5wb3NpdGlvblwiXHJcbiAgICAgICAgICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgW2NsYXNzXT1cImRhdGE/LmlkKyhjb250ZW50Py5pbWFnZT8uaWQgfHwgJycpXCJcclxuICAgICAgICAgIGNsYXNzPVwiZC1ibG9jayB3LTEwMCBpbnNpZGVJbWdcIiBzdHlsZT1cIm9iamVjdC1maXQ6IGNvdmVyO1wiIFthbHRdPVwiY29udGVudD8uaW1hZ2U/LmFsdFRleHRcIiB3aWR0aD1cIjcwMFwiIGhlaWdodD1cIjUwMFwiIGxvYWRpbmc9XCJsYXp5XCIvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgZ2FwLTE1XCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7J2NvbC1sZy0xMic6IGlzQm9yZGVybGVzc0ltYWdlLCAnY29sLWxnLTYnOiAhaXNCb3JkZXJsZXNzSW1hZ2V9XCJcclxuICAgICAgICBbc2ltcG9Db250YWluZXJBbGlnbm1lbnRdPVwic3R5bGVzTGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQ29udGVudEFsaWdubWVudF09XCJzdHlsZXM/LmNvbnRlbnRBbGlnbm1lbnRcIj5cclxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/LmlucHV0VGV4dFwiPlxyXG4gICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWUgfCBzYW5pdGl6ZUh0bWxcIiBjbGFzcz1cInRleHQtZWxlbWVudFwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIml0ZW0ubGFiZWwgPT09ICdIZWFkaW5nJyA/ICdoZWFkaW5nLWxhcmdlIGxoLTIgbWItMycgOiAnYm9keS1sYXJnZSdcIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhXCIgY2xhc3M9XCJjYXJkZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkX3dyYXBwZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lcl9jYXJkIHZpc2libGVcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1zZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2Vjb25kLXBhcnQtY2FyZFwiPlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpcnN0LXBhcnQtY2FyZFwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIml0ZW0uaW5wdXRUZXh0WzBdLmxhYmVsPT09ICdIZWFkaW5nJyA/ICdoZWFkaW5nLWxhcmdlIGxoLTIgbWItMycgOiAnYm9keS1sYXJnZSdcIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiICBjbGFzcz1cInRpY2staW1nXCJcclxuICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL3Byb2Qtc2ltcG8uczMuYXAtc291dGgtMS5hbWF6b25hd3MuY29tL3Byb2QtaW1hZ2VzLzkzMzk5N2MxNzE4NzkwMzAzMTI3OTA3NTk4YzE2OTYwNjMwNjE5MDBncmVlbl92ZXJpZmllZF9pbWFnZS5wbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgIGFsdD1cInNvbWV0aGluZ1wiIC8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0uaW5wdXRUZXh0WzBdLnZhbHVlIH19XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiZGF0YT8uYWN0aW9uICYmIGRhdGE/LmFjdGlvbj8uZGlzcGxheVwiIGNsYXNzPVwiYnV0dG9uLWRpc3BsYXlcIlxyXG4gICAgICAgICAgW3NpbXBvQ29udGFpbmVyQWxpZ25tZW50XT1cInN0eWxlc0xheW91dFwiPlxyXG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGRhdGE/LmFjdGlvbj8uYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICA8YXBwLWJ1dHRvbi1lbGVtZW50IFtidXR0b25Db250ZW50XT1cImJ1dHRvbi5jb250ZW50XCIgW2J1dHRvblN0eWxlXT1cImJ1dHRvbi5zdHlsZXNcIiBbYnV0dG9uSWRdPVwiYnV0dG9uLmlkXCJcclxuICAgICAgICAgICAgICBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCIgW2NvbG9yXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIj48L2FwcC1idXR0b24tZWxlbWVudD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDwhLS0gPGRpdiBzdHlsZT1cIiB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1MDBweDtcIj5cclxuICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiAgc3JjPVwiLi4vLi4vYXNzZXRzL2RpdmlkZXIuc3ZnXCIgc3R5bGU9XCJjbGlwLXBhdGg6IHBvbHlnb24oMCA1NSUsIDEwMCUgMCwgMTAwJSAxMDAlLCAwJSAxMDAlKTsgYmFja2dyb3VuZC1jb2xvcjogcmVkO1wiPlxyXG4gIDwvZGl2PiAtLT5cclxuICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XHJcbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCJcclxuICAgICAgW2lzTWVyZ2VkXT1cInN0eWxlcz8ubWVyZ2UgPz8gZmFsc2VcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XHJcbiAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48bmctdGVtcGxhdGUgI0ltYWdlU2VjdGlvbj5cclxuICA8ZGl2IGNsYXNzPVwiY29sLTEwIGNvbC1zbS04IGNvbC1sZy02XCIgW25nU3R5bGVdPVwieyd3aWR0aCc6IHN0eWxlcz8ucG9zaXRpb25MYXlvdXQ/LnZhbHVlID09PSAncmlnaHQnID8gJ2ZpdC1jb250ZW50JyA6ICcnfVwiIHN0eWxlPVwicGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XCIqbmdJZj1cImNvbnRlbnQ/LmltYWdlPy5zaG93SW1hZ2UgJiYgaXNCb3JkZXJsZXNzSW1hZ2U7XCIgW3NpbXBvQm9yZGVybGVzc109XCJnZXRQb3NpdGlvbkxheW91dFwiPlxyXG4gICAgPGltZyBsb2FkaW5nPVwibGF6eVwiXHJcbiAgICAgIFtzcmNdPVwiY29udGVudD8uaW1hZ2U/LnVybFwiXHJcbiAgICAgIGNsYXNzPVwiZC1ibG9jayBpbWctZmx1aWQgaC0xMDAgdy0xMDBcIiBbYWx0XT1cImNvbnRlbnQ/LmltYWdlPy5hbHRUZXh0XCIgd2lkdGg9XCI3MDBcIiBoZWlnaHQ9XCI1MDBcIiBsb2FkaW5nPVwibGF6eVwiLz5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
@@ -44,7 +44,7 @@ export class BlogListComponent extends BaseSection {
|
|
44
44
|
}, 100);
|
45
45
|
}
|
46
46
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: BlogListComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
47
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: BlogListComponent, isStandalone: true, selector: "simpo-blog-list", inputs: { responseData: "responseData", index: "index", edit: "edit", customClass: "customClass", data: "data" }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\r\n (hovering)=\"showEditTabs($event)\" *ngIf=\"(responseData?.length || 0) > 0;else elseBlock\"
|
47
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: BlogListComponent, isStandalone: true, selector: "simpo-blog-list", inputs: { responseData: "responseData", index: "index", edit: "edit", customClass: "customClass", data: "data" }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\r\n (hovering)=\"showEditTabs($event)\" *ngIf=\"(responseData?.length || 0) > 0;else elseBlock\" [attr.style]=\"customClass\">\r\n <div [id]=\"data?.id\" [simpoOverlay]=\"style?.background\" [simpoBorder]=\"style?.border\" [simpoAnimation]=\"style?.animation\" [simpoLayout]=\"style?.layout\">\r\n <div class=\"container-fluid\">\r\n <div class=\"row\">\r\n <div [simpoColumnDirective]=\"data?.styles?.size\" [id]=\"data?.id\" *ngFor=\"let content of responseData\" (click)=\"getBlogById(content.id)\">\r\n <div class=\"cards\" [simpoCorner]=\"style?.corners\" [id]=\"data?.id\">\r\n <img loading=\"lazy\" [src]=\"content.img\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\" [simpoCorner]=\"style?.corners\"\r\n alt=\"\" *ngIf=\"content.img\"\r\n loading=\"lazy\">\r\n <img loading=\"lazy\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\" [simpoCorner]=\"style?.corners\"\r\n src=\"https://dev-beeos.s3.amazonaws.com/library-media/541329c1719236963199pexels-pixabay-262508.jpg\" alt=\"\" *ngIf=\"!content.img\"\r\n loading=\"lazy\">\r\n <div class=\"p-30\">\r\n <div class=\"heading-medium title mt-4\" *ngIf=\"blogContent?.display?.showHeading\">\r\n {{content.postTitle}}\r\n </div>\r\n <ng-container>\r\n <div class=\"body-large mt-4\" *ngIf=\"blogContent?.display?.showContent\">\r\n {{ content.postSummary.length > 250 ? content.postSummary.substring(0, 250) + '...' :\r\n content.postSummary }}\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"authors\" [ngClass]=\"'justify-content-' + (style?.layout?.align || '')\">\r\n <div>\r\n <mat-icon>person</mat-icon> <span class=\"body-large\">{{content?.author?.name | titlecase}}</span>\r\n </div>\r\n <div class=\"calendar_today\">\r\n <mat-icon>calendar_today</mat-icon> <span class=\"body-large\">{{content.createdTimeStamp |\r\n date:'EEEE, MMM, d, y'}}</span>\r\n </div>\r\n </div>\r\n <div class=\"button heading-large\" (click)=\"getBlogById(content.id)\" [ngClass]=\"'justify-content-' + (style?.layout?.align || '')\">\r\n Read More <mat-icon>arrow_right_alt</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n</section>\r\n<ng-template #elseBlock>\r\n <div class=\"no-blog-text heading-medium\">Sorry there are no blog posts.</div>\r\n</ng-template>\r\n", styles: [".cards{box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f}.cards img{width:100%;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.p-30{padding:30px 15px 0}.authors{display:flex;gap:35px;margin-top:40px}.authors div{display:flex}.authors .calendar_today{align-items:center}.authors .calendar_today mat-icon{font-size:20px}.button{font-size:15px;display:flex;align-items:center;gap:10px;cursor:pointer;font-family:interReg;font-weight:500}.mt-20{margin-top:20px}.total-container{position:relative;height:auto}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}.no-blog-text{font-size:24px;line-height:36px;height:40vh;display:flex;align-items:center;justify-content:center}.justify-content-right{justify-content:right}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i2.DatePipe, name: "date" }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: ImageDirectiveDirective, selector: "[simpoImageDirective]", inputs: ["simpoImageDirective"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "directive", type: ColumnDirectiveDirective, selector: "[simpoColumnDirective]", inputs: ["simpoColumnDirective"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "component", type: HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
48
48
|
}
|
49
49
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: BlogListComponent, decorators: [{
|
50
50
|
type: Component,
|
@@ -61,7 +61,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
|
|
61
61
|
HoverDirective,
|
62
62
|
HoverElementsComponent,
|
63
63
|
MatIcon
|
64
|
-
], template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\r\n (hovering)=\"showEditTabs($event)\" *ngIf=\"(responseData?.length || 0) > 0;else elseBlock\"
|
64
|
+
], template: "<section [id]=\"data?.id\" [simpoBackground]=\"style?.background\" class=\"total-container\" simpoHover\r\n (hovering)=\"showEditTabs($event)\" *ngIf=\"(responseData?.length || 0) > 0;else elseBlock\" [attr.style]=\"customClass\">\r\n <div [id]=\"data?.id\" [simpoOverlay]=\"style?.background\" [simpoBorder]=\"style?.border\" [simpoAnimation]=\"style?.animation\" [simpoLayout]=\"style?.layout\">\r\n <div class=\"container-fluid\">\r\n <div class=\"row\">\r\n <div [simpoColumnDirective]=\"data?.styles?.size\" [id]=\"data?.id\" *ngFor=\"let content of responseData\" (click)=\"getBlogById(content.id)\">\r\n <div class=\"cards\" [simpoCorner]=\"style?.corners\" [id]=\"data?.id\">\r\n <img loading=\"lazy\" [src]=\"content.img\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\" [simpoCorner]=\"style?.corners\"\r\n alt=\"\" *ngIf=\"content.img\"\r\n loading=\"lazy\">\r\n <img loading=\"lazy\" [simpoImageDirective]=\"style?.image\" [id]=\"data?.id\" [simpoCorner]=\"style?.corners\"\r\n src=\"https://dev-beeos.s3.amazonaws.com/library-media/541329c1719236963199pexels-pixabay-262508.jpg\" alt=\"\" *ngIf=\"!content.img\"\r\n loading=\"lazy\">\r\n <div class=\"p-30\">\r\n <div class=\"heading-medium title mt-4\" *ngIf=\"blogContent?.display?.showHeading\">\r\n {{content.postTitle}}\r\n </div>\r\n <ng-container>\r\n <div class=\"body-large mt-4\" *ngIf=\"blogContent?.display?.showContent\">\r\n {{ content.postSummary.length > 250 ? content.postSummary.substring(0, 250) + '...' :\r\n content.postSummary }}\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"authors\" [ngClass]=\"'justify-content-' + (style?.layout?.align || '')\">\r\n <div>\r\n <mat-icon>person</mat-icon> <span class=\"body-large\">{{content?.author?.name | titlecase}}</span>\r\n </div>\r\n <div class=\"calendar_today\">\r\n <mat-icon>calendar_today</mat-icon> <span class=\"body-large\">{{content.createdTimeStamp |\r\n date:'EEEE, MMM, d, y'}}</span>\r\n </div>\r\n </div>\r\n <div class=\"button heading-large\" (click)=\"getBlogById(content.id)\" [ngClass]=\"'justify-content-' + (style?.layout?.align || '')\">\r\n Read More <mat-icon>arrow_right_alt</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n</section>\r\n<ng-template #elseBlock>\r\n <div class=\"no-blog-text heading-medium\">Sorry there are no blog posts.</div>\r\n</ng-template>\r\n", styles: [".cards{box-shadow:0 1px 3px #1018281a,0 1px 2px #1018280f}.cards img{width:100%;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.p-30{padding:30px 15px 0}.authors{display:flex;gap:35px;margin-top:40px}.authors div{display:flex}.authors .calendar_today{align-items:center}.authors .calendar_today mat-icon{font-size:20px}.button{font-size:15px;display:flex;align-items:center;gap:10px;cursor:pointer;font-family:interReg;font-weight:500}.mt-20{margin-top:20px}.total-container{position:relative;height:auto}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}.no-blog-text{font-size:24px;line-height:36px;height:40vh;display:flex;align-items:center;justify-content:center}.justify-content-right{justify-content:right}\n"] }]
|
65
65
|
}], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { responseData: [{
|
66
66
|
type: Input
|
67
67
|
}], index: [{
|
@@ -73,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
|
|
73
73
|
}], data: [{
|
74
74
|
type: Input
|
75
75
|
}] } });
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvYmxvZy1saXN0L2Jsb2ctbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jsb2ctbGlzdC9ibG9nLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFXLE1BQU0saURBQWlELENBQUM7QUFDakcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7OztBQXNCekUsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQVc7SUFPaEQsWUFDVSxhQUE2QjtRQUVyQyxLQUFLLEVBQUUsQ0FBQTtRQUZDLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQVA5QixpQkFBWSxHQUFVLEVBQUUsQ0FBQztJQVVsQyxDQUFDO0lBS0QsUUFBUTtRQUNOLEtBQUksSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQTtRQUNqRixDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQTtRQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFBO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLGNBQXlCLENBQUM7SUFDdEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUFXO1FBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsV0FBVztRQUVULElBQUcsTUFBTSxDQUFDLFVBQVUsSUFBSSxHQUFHO1lBQ3pCLE9BQU07UUFFUixJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxVQUFVLENBQUMsR0FBRSxFQUFFO1lBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7OEdBeENVLGlCQUFpQjtrR0FBakIsaUJBQWlCLG9OQ3RDOUIsMmdHQWlEQSxvekJENUJZLFlBQVksOGNBQ3BCLGtCQUFrQix5RkFDbEIsZUFBZSxtRkFDZixtQkFBbUIsbUZBQ25CLG1CQUFtQiwwR0FDbkIsdUJBQXVCLG1HQUN2QixlQUFlLG1GQUNmLHdCQUF3QixxR0FDeEIsZ0JBQWdCLHFGQUVoQixjQUFjLGdGQUNkLHNCQUFzQix5SkFDdEIsT0FBTzs7MkZBS0UsaUJBQWlCO2tCQXBCN0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxZQUFZO3dCQUNwQixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZix3QkFBd0I7d0JBQ3hCLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixjQUFjO3dCQUNkLHNCQUFzQjt3QkFDdEIsT0FBTztxQkFDUjtrRkFLUSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEJsb2dMaXN0Q29udGVudE1vZGVsLCBCbG9nTGlzdFNlY3Rpb25Nb2RlbCwgQmxvZ0xpc3RTdHlsZXNNb2RlbCB9IGZyb20gJy4vYmxvZy1saXN0Lm1vZGVsJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEFuaW1hdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9hbmltYXRpb24tZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2x1bW4tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb250ZW50VGl0bGVEaXJlY3RpdmUsIFNQQUNJTkcgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC10aXRsZS1zcGFjaW5nLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IEJhc2VTZWN0aW9uIGZyb20gJy4uL0Jhc2VTZWN0aW9uJztcclxuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWJsb2ctbGlzdCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLFxyXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgQm9yZGVyRGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIE92ZXJsYXlEaXJlY3RpdmUsXHJcbiAgICBDb250ZW50VGl0bGVEaXJlY3RpdmUsXHJcbiAgICBIb3ZlckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICBNYXRJY29uXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYmxvZy1saXN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYmxvZy1saXN0LmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCbG9nTGlzdENvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9ue1xyXG4gIEBJbnB1dCgpIHJlc3BvbnNlRGF0YTogYW55W10gPSBbXTtcclxuICBASW5wdXQoKSBpbmRleD8gOiBudW1iZXI7XHJcbiAgQElucHV0KCkgZWRpdD8gOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRhdGE/OiBCbG9nTGlzdFNlY3Rpb25Nb2RlbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9ldmVudFNlcnZpY2UgOiBFdmVudHNTZXJ2aWNlXHJcbiAgKXtcclxuICAgIHN1cGVyKClcclxuICB9XHJcblxyXG4gIHN0eWxlPzogQmxvZ0xpc3RTdHlsZXNNb2RlbDtcclxuICBibG9nQ29udGVudD86IEJsb2dMaXN0Q29udGVudE1vZGVsXHJcblxyXG4gIG5nT25Jbml0KCl7XHJcbiAgICBmb3IobGV0IGJsb2cgb2YgdGhpcy5yZXNwb25zZURhdGEpIHtcclxuICAgICAgYmxvZ1snaW1nJ10gPSBibG9nLmJsb2Nrcy5maW5kKCh4OiBhbnkpID0+IHgudHlwZSA9PT0gJ2ltYWdlJyk/LmRhdGE/LmZpbGU/LnVybFxyXG4gICAgfVxyXG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzXHJcbiAgICB0aGlzLmJsb2dDb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50XHJcbiAgfVxyXG5cclxuICBnZXQgaGVhZGluZ1NwYWNlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LmxheW91dC5oZWFkaW5nU3BhY2luZyBhcyBTUEFDSU5HO1xyXG4gIH1cclxuXHJcbiAgZ2V0QmxvZ0J5SWQoYmxvZ0lkOiBhbnkpe1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmJsb2dCeUlkRXZlbnQuZW1pdChibG9nSWQpO1xyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpe1xyXG5cclxuICAgIGlmKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSlcclxuICAgICAgcmV0dXJuXHJcbiAgICBcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcclxuICAgIHNldFRpbWVvdXQoKCk9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHtkYXRhOnRoaXMuZGF0YX0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbn1cclxuIiwiPHNlY3Rpb24gW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQmFja2dyb3VuZF09XCJzdHlsZT8uYmFja2dyb3VuZFwiIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCIgc2ltcG9Ib3ZlclxyXG4gIChob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiICpuZ0lmPVwiKHJlc3BvbnNlRGF0YT8ubGVuZ3RoIHx8IDApID4gMDtlbHNlIGVsc2VCbG9ja1wiIChjbGljayk9XCJlZGl0U2VjdGlvbigpXCIgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cclxuICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb092ZXJsYXldPVwic3R5bGU/LmJhY2tncm91bmRcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGU/LmJvcmRlclwiIFtzaW1wb0FuaW1hdGlvbl09XCJzdHlsZT8uYW5pbWF0aW9uXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlPy5sYXlvdXRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgIDxkaXYgW3NpbXBvQ29sdW1uRGlyZWN0aXZlXT1cImRhdGE/LnN0eWxlcz8uc2l6ZVwiIFtpZF09XCJkYXRhPy5pZFwiICpuZ0Zvcj1cImxldCBjb250ZW50IG9mIHJlc3BvbnNlRGF0YVwiIChjbGljayk9XCJnZXRCbG9nQnlJZChjb250ZW50LmlkKVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRzXCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcbiAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiAgW3NyY109XCJjb250ZW50LmltZ1wiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlPy5pbWFnZVwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0Nvcm5lcl09XCJzdHlsZT8uY29ybmVyc1wiXHJcbiAgICAgICAgICAgICAgYWx0PVwiXCIgKm5nSWY9XCJjb250ZW50LmltZ1wiXHJcbiAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiICBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZT8uaW1hZ2VcIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIlxyXG4gICAgICAgICAgICBzcmM9XCJodHRwczovL2Rldi1iZWVvcy5zMy5hbWF6b25hd3MuY29tL2xpYnJhcnktbWVkaWEvNTQxMzI5YzE3MTkyMzY5NjMxOTlwZXhlbHMtcGl4YWJheS0yNjI1MDguanBnXCIgYWx0PVwiXCIgKm5nSWY9XCIhY29udGVudC5pbWdcIlxyXG4gICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC0zMFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLW1lZGl1bSB0aXRsZSBtdC00XCIgKm5nSWY9XCJibG9nQ29udGVudD8uZGlzcGxheT8uc2hvd0hlYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgIHt7Y29udGVudC5wb3N0VGl0bGV9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9keS1sYXJnZSBtdC00XCIgKm5nSWY9XCJibG9nQ29udGVudD8uZGlzcGxheT8uc2hvd0NvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAge3sgY29udGVudC5wb3N0U3VtbWFyeS5sZW5ndGggPiAyNTAgPyBjb250ZW50LnBvc3RTdW1tYXJ5LnN1YnN0cmluZygwLCAyNTApICsgJy4uLicgOlxyXG4gICAgICAgICAgICAgICAgICBjb250ZW50LnBvc3RTdW1tYXJ5IH19XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF1dGhvcnNcIiBbbmdDbGFzc109XCInanVzdGlmeS1jb250ZW50LScgKyAoc3R5bGU/LmxheW91dD8uYWxpZ24gfHwgJycpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+cGVyc29uPC9tYXQtaWNvbj4gJm5ic3A7Jm5ic3A7PHNwYW4gY2xhc3M9XCJib2R5LWxhcmdlXCI+e3tjb250ZW50Py5hdXRob3I/Lm5hbWUgfCB0aXRsZWNhc2V9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhbGVuZGFyX3RvZGF5XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jYWxlbmRhcl90b2RheTwvbWF0LWljb24+ICZuYnNwOyZuYnNwOyA8c3BhbiBjbGFzcz1cImJvZHktbGFyZ2VcIj57e2NvbnRlbnQuY3JlYXRlZFRpbWVTdGFtcCB8XHJcbiAgICAgICAgICAgICAgICAgICAgZGF0ZTonRUVFRSwgTU1NLCBkLCB5J319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbiBoZWFkaW5nLWxhcmdlXCIgKGNsaWNrKT1cImdldEJsb2dCeUlkKGNvbnRlbnQuaWQpXCIgW25nQ2xhc3NdPVwiJ2p1c3RpZnktY29udGVudC0nICsgKHN0eWxlPy5sYXlvdXQ/LmFsaWduIHx8ICcnKVwiPlxyXG4gICAgICAgICAgICAgICAgUmVhZCBNb3JlIDxtYXQtaWNvbj5hcnJvd19yaWdodF9hbHQ8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cclxuICAgIDxzaW1wby1ob3Zlci1lbGVtZW50cyBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCIgW2VkaXRPcHRpb25zXT1cImVkaXRcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxyXG4gIDwvZGl2PlxyXG48L3NlY3Rpb24+XHJcbjxuZy10ZW1wbGF0ZSAjZWxzZUJsb2NrPlxyXG4gIDxkaXYgY2xhc3M9XCJuby1ibG9nLXRleHQgaGVhZGluZy1tZWRpdW1cIj5Tb3JyeSB0aGVyZSBhcmUgbm8gYmxvZyBwb3N0cy48L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvYmxvZy1saXN0L2Jsb2ctbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2Jsb2ctbGlzdC9ibG9nLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFXLE1BQU0saURBQWlELENBQUM7QUFDakcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7OztBQXNCekUsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQVc7SUFPaEQsWUFDVSxhQUE2QjtRQUVyQyxLQUFLLEVBQUUsQ0FBQTtRQUZDLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQVA5QixpQkFBWSxHQUFVLEVBQUUsQ0FBQztJQVVsQyxDQUFDO0lBS0QsUUFBUTtRQUNOLEtBQUksSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQTtRQUNqRixDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQTtRQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFBO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLGNBQXlCLENBQUM7SUFDdEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUFXO1FBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsV0FBVztRQUVULElBQUcsTUFBTSxDQUFDLFVBQVUsSUFBSSxHQUFHO1lBQ3pCLE9BQU07UUFFUixJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxVQUFVLENBQUMsR0FBRSxFQUFFO1lBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7OEdBeENVLGlCQUFpQjtrR0FBakIsaUJBQWlCLG9OQ3RDOUIsay9GQWlEQSxvekJENUJZLFlBQVksOGNBQ3BCLGtCQUFrQix5RkFDbEIsZUFBZSxtRkFDZixtQkFBbUIsbUZBQ25CLG1CQUFtQiwwR0FDbkIsdUJBQXVCLG1HQUN2QixlQUFlLG1GQUNmLHdCQUF3QixxR0FDeEIsZ0JBQWdCLHFGQUVoQixjQUFjLGdGQUNkLHNCQUFzQix5SkFDdEIsT0FBTzs7MkZBS0UsaUJBQWlCO2tCQXBCN0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxZQUFZO3dCQUNwQixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZix3QkFBd0I7d0JBQ3hCLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixjQUFjO3dCQUNkLHNCQUFzQjt3QkFDdEIsT0FBTztxQkFDUjtrRkFLUSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEJsb2dMaXN0Q29udGVudE1vZGVsLCBCbG9nTGlzdFNlY3Rpb25Nb2RlbCwgQmxvZ0xpc3RTdHlsZXNNb2RlbCB9IGZyb20gJy4vYmxvZy1saXN0Lm1vZGVsJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEFuaW1hdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9hbmltYXRpb24tZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2x1bW4tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb250ZW50VGl0bGVEaXJlY3RpdmUsIFNQQUNJTkcgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC10aXRsZS1zcGFjaW5nLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IEJhc2VTZWN0aW9uIGZyb20gJy4uL0Jhc2VTZWN0aW9uJztcclxuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLWJsb2ctbGlzdCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLFxyXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgQm9yZGVyRGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIE92ZXJsYXlEaXJlY3RpdmUsXHJcbiAgICBDb250ZW50VGl0bGVEaXJlY3RpdmUsXHJcbiAgICBIb3ZlckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICBNYXRJY29uXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYmxvZy1saXN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYmxvZy1saXN0LmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCbG9nTGlzdENvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9ue1xyXG4gIEBJbnB1dCgpIHJlc3BvbnNlRGF0YTogYW55W10gPSBbXTtcclxuICBASW5wdXQoKSBpbmRleD8gOiBudW1iZXI7XHJcbiAgQElucHV0KCkgZWRpdD8gOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRhdGE/OiBCbG9nTGlzdFNlY3Rpb25Nb2RlbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9ldmVudFNlcnZpY2UgOiBFdmVudHNTZXJ2aWNlXHJcbiAgKXtcclxuICAgIHN1cGVyKClcclxuICB9XHJcblxyXG4gIHN0eWxlPzogQmxvZ0xpc3RTdHlsZXNNb2RlbDtcclxuICBibG9nQ29udGVudD86IEJsb2dMaXN0Q29udGVudE1vZGVsXHJcblxyXG4gIG5nT25Jbml0KCl7XHJcbiAgICBmb3IobGV0IGJsb2cgb2YgdGhpcy5yZXNwb25zZURhdGEpIHtcclxuICAgICAgYmxvZ1snaW1nJ10gPSBibG9nLmJsb2Nrcy5maW5kKCh4OiBhbnkpID0+IHgudHlwZSA9PT0gJ2ltYWdlJyk/LmRhdGE/LmZpbGU/LnVybFxyXG4gICAgfVxyXG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzXHJcbiAgICB0aGlzLmJsb2dDb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50XHJcbiAgfVxyXG5cclxuICBnZXQgaGVhZGluZ1NwYWNlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LmxheW91dC5oZWFkaW5nU3BhY2luZyBhcyBTUEFDSU5HO1xyXG4gIH1cclxuXHJcbiAgZ2V0QmxvZ0J5SWQoYmxvZ0lkOiBhbnkpe1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmJsb2dCeUlkRXZlbnQuZW1pdChibG9nSWQpO1xyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpe1xyXG5cclxuICAgIGlmKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSlcclxuICAgICAgcmV0dXJuXHJcbiAgICBcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcclxuICAgIHNldFRpbWVvdXQoKCk9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHtkYXRhOnRoaXMuZGF0YX0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbn1cclxuIiwiPHNlY3Rpb24gW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQmFja2dyb3VuZF09XCJzdHlsZT8uYmFja2dyb3VuZFwiIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCIgc2ltcG9Ib3ZlclxyXG4gIChob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiICpuZ0lmPVwiKHJlc3BvbnNlRGF0YT8ubGVuZ3RoIHx8IDApID4gMDtlbHNlIGVsc2VCbG9ja1wiICBbYXR0ci5zdHlsZV09XCJjdXN0b21DbGFzc1wiPlxyXG4gIDxkaXYgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZT8uYmFja2dyb3VuZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZT8uYm9yZGVyXCIgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlPy5hbmltYXRpb25cIiBbc2ltcG9MYXlvdXRdPVwic3R5bGU/LmxheW91dFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgPGRpdiBbc2ltcG9Db2x1bW5EaXJlY3RpdmVdPVwiZGF0YT8uc3R5bGVzPy5zaXplXCIgW2lkXT1cImRhdGE/LmlkXCIgKm5nRm9yPVwibGV0IGNvbnRlbnQgb2YgcmVzcG9uc2VEYXRhXCIgKGNsaWNrKT1cImdldEJsb2dCeUlkKGNvbnRlbnQuaWQpXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZHNcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiICBbc3JjXT1cImNvbnRlbnQuaW1nXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGU/LmltYWdlXCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCJcclxuICAgICAgICAgICAgICBhbHQ9XCJcIiAqbmdJZj1cImNvbnRlbnQuaW1nXCJcclxuICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlPy5pbWFnZVwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0Nvcm5lcl09XCJzdHlsZT8uY29ybmVyc1wiXHJcbiAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vZGV2LWJlZW9zLnMzLmFtYXpvbmF3cy5jb20vbGlicmFyeS1tZWRpYS81NDEzMjljMTcxOTIzNjk2MzE5OXBleGVscy1waXhhYmF5LTI2MjUwOC5qcGdcIiBhbHQ9XCJcIiAqbmdJZj1cIiFjb250ZW50LmltZ1wiXHJcbiAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTMwXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmctbWVkaXVtIHRpdGxlIG10LTRcIiAqbmdJZj1cImJsb2dDb250ZW50Py5kaXNwbGF5Py5zaG93SGVhZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAge3tjb250ZW50LnBvc3RUaXRsZX19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib2R5LWxhcmdlIG10LTRcIiAqbmdJZj1cImJsb2dDb250ZW50Py5kaXNwbGF5Py5zaG93Q29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICB7eyBjb250ZW50LnBvc3RTdW1tYXJ5Lmxlbmd0aCA+IDI1MCA/IGNvbnRlbnQucG9zdFN1bW1hcnkuc3Vic3RyaW5nKDAsIDI1MCkgKyAnLi4uJyA6XHJcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQucG9zdFN1bW1hcnkgfX1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXV0aG9yc1wiIFtuZ0NsYXNzXT1cIidqdXN0aWZ5LWNvbnRlbnQtJyArIChzdHlsZT8ubGF5b3V0Py5hbGlnbiB8fCAnJylcIj5cclxuICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5wZXJzb248L21hdC1pY29uPiAmbmJzcDsmbmJzcDs8c3BhbiBjbGFzcz1cImJvZHktbGFyZ2VcIj57e2NvbnRlbnQ/LmF1dGhvcj8ubmFtZSB8IHRpdGxlY2FzZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXJfdG9kYXlcIj5cclxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmNhbGVuZGFyX3RvZGF5PC9tYXQtaWNvbj4gJm5ic3A7Jm5ic3A7IDxzcGFuIGNsYXNzPVwiYm9keS1sYXJnZVwiPnt7Y29udGVudC5jcmVhdGVkVGltZVN0YW1wIHxcclxuICAgICAgICAgICAgICAgICAgICBkYXRlOidFRUVFLCBNTU0sIGQsIHknfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uIGhlYWRpbmctbGFyZ2VcIiAoY2xpY2spPVwiZ2V0QmxvZ0J5SWQoY29udGVudC5pZClcIiBbbmdDbGFzc109XCInanVzdGlmeS1jb250ZW50LScgKyAoc3R5bGU/LmxheW91dD8uYWxpZ24gfHwgJycpXCI+XHJcbiAgICAgICAgICAgICAgICBSZWFkIE1vcmUgPG1hdC1pY29uPmFycm93X3JpZ2h0X2FsdDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxyXG4gICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgPC9kaXY+XHJcbjwvc2VjdGlvbj5cclxuPG5nLXRlbXBsYXRlICNlbHNlQmxvY2s+XHJcbiAgPGRpdiBjbGFzcz1cIm5vLWJsb2ctdGV4dCBoZWFkaW5nLW1lZGl1bVwiPlNvcnJ5IHRoZXJlIGFyZSBubyBibG9nIHBvc3RzLjwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|