simpo-component-library 3.6.472 → 3.6.474

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/esm2022/lib/components/hover-elements/hover-elements.component.mjs +1 -4
  2. package/esm2022/lib/directive/background-directive.mjs +6 -6
  3. package/esm2022/lib/ecommerce/sections/featured-products/featured-products.component.mjs +34 -3
  4. package/esm2022/lib/ecommerce/sections/order-details/order-details.component.mjs +7 -4
  5. package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +34 -3
  6. package/esm2022/lib/ecommerce/sections/product-list/product-list.component.mjs +34 -3
  7. package/esm2022/lib/ecommerce/sections/small-product-listing/small-product-listing.component.mjs +50 -10
  8. package/esm2022/lib/ecommerce/sections/store-list/store-list.component.mjs +3 -1
  9. package/esm2022/lib/elements/pricing-s1/pricing-s1.component.mjs +4 -7
  10. package/esm2022/lib/elements/simpo-button/simpo-button.component.mjs +3 -3
  11. package/esm2022/lib/elements/text-editor/text-editor.component.mjs +70 -53
  12. package/esm2022/lib/sections/features-section/features-section.component.mjs +3 -3
  13. package/esm2022/lib/sections/image-carousel-section/image-carousel-section.component.mjs +4 -4
  14. package/esm2022/lib/sections/pricing-section/pricing-section.component.mjs +3 -3
  15. package/esm2022/lib/sections/process-modern/process-modern.component.mjs +4 -4
  16. package/esm2022/lib/sections/scheme-detail/scheme-detail.component.mjs +7 -3
  17. package/esm2022/lib/sections/testimonial-section/testimonial-section.component.mjs +2 -2
  18. package/esm2022/lib/services/rest.service.mjs +4 -1
  19. package/fesm2022/simpo-component-library.mjs +259 -110
  20. package/fesm2022/simpo-component-library.mjs.map +1 -1
  21. package/lib/ecommerce/sections/authentication-required/authentication-required.component.d.ts +1 -1
  22. package/lib/ecommerce/sections/featured-products/featured-products.component.d.ts +2 -0
  23. package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +3 -1
  24. package/lib/ecommerce/sections/product-list/product-list.component.d.ts +2 -0
  25. package/lib/ecommerce/sections/schemes/schemes.component.d.ts +1 -1
  26. package/lib/ecommerce/sections/small-product-listing/small-product-listing.component.d.ts +9 -1
  27. package/lib/elements/link-editor/link-editor.component.d.ts +1 -1
  28. package/lib/elements/pricing-s1/pricing-s1.component.d.ts +1 -1
  29. package/lib/elements/text-editor/text-editor.component.d.ts +3 -0
  30. package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
  31. package/lib/services/rest.service.d.ts +1 -0
  32. package/package.json +1 -1
  33. package/simpo-component-library-3.6.474.tgz +0 -0
  34. package/simpo-component-library-3.6.472.tgz +0 -0
@@ -58,7 +58,7 @@ export class FeaturesSectionComponent extends BaseSection {
58
58
  }, 100);
59
59
  }
60
60
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeaturesSectionComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
61
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeaturesSectionComponent, isStandalone: true, selector: "simpo-features-section", inputs: { data: "data", edit: "edit", customClass: "customClass", delete: "delete", index: "index", nextComponentColor: "nextComponentColor" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\n class=\"total-container\" [simpoBorder]=\"styles?.border\" [attr.style]=\"customClass\">\n <div #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"styles?.background\" [spacingHorizontal]=\"stylesLayout\">\n <div class=\"container-fluid d-flex flex-column\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\">\n <div class=\"row\" *ngIf=\"screenWidth > 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n\n </div>\n <div class=\" box justify-center d-flex g-25 mt-5 mb-5\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div [ngClass]=\"{'tab': styles?.tabStyling == 'UNDERLINE' , 'tab1' : styles?.tabStyling == 'BOXED' , 'tab2' : styles?.tabStyling == 'NONE' }\" [ngClass]=\"{'active': index === selectedTabIndex && styles?.tabStyling == 'UNDERLINE' , 'active1' : index === selectedTabIndex && styles?.tabStyling == 'BOXED' , 'active2' : index === selectedTabIndex && styles?.tabStyling == 'NONE' }\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row-container\" *ngIf=\"screenWidth <= 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div class=\" box d-flex g-25 mt-5 mb-5\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div class=\"tab\" [ngClass]=\"{'active': index === selectedTabIndex}\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"content d-flex g-15 mt-5\" *ngIf=\"currentData?.image?.url\" [id]=\"data?.id\" [simpoPositionLayoutDirective]=\"styles?.positionLayout\">\n <div class=\"image\">\n <img loading=\"lazy\" [src]=\"currentData?.image?.url\" alt=\"\" [id]=\"data?.id\"\n [simpoImageDirective]=\"styles?.image\" [simpoObjectPosition]=\"currentData?.image?.position\"\n [simpoCorner]=\"styles?.corners\"\n class=\"d-block mx-lg-auto img-fluid h-100 \" [class]=\"data?.id+(currentData?.image?.id || '')\"\n loading=\"lazy\" [appImageEditor]=\"true\" [imageData]=\"currentData?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"content-heading\">\n <div class=\"heading-large content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[1] as textItem\">\n <simpo-text-editor [(value)]=\"textItem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n <div class=\"content-description body-large mt-1 content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[2] as textitem\">\n <simpo-text-editor [(value)]=\"textitem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"content justify-center d-flex g-15 mt-5\" *ngIf=\"!currentData?.image?.url\">\n <div class=\"content-heading text-center\">\n <div class=\"heading-large content-side\" [innerHtml]=\"currentData?.inputText?.[1]?.value\" [id]=\"data?.id\">\n </div>\n <div class=\"content-description body-large mt-1 text-center\" [innerHtml]=\"currentData?.inputText?.[2]?.value\">\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\" [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n", styles: [".hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.content{padding:0px 10rem;width:90%;gap:3rem;margin-bottom:4%}.image{width:40%;flex:1}.image img{width:100%}.content-heading{width:60%;text-align:start}.content-description{width:100%;text-align:start}.active{font-weight:700;letter-spacing:.8px;border-bottom:2px solid!important;padding-bottom:20px}.active1{font-weight:700;letter-spacing:.8px;border:2px solid!important;border-radius:7px}.active2{font-weight:700;letter-spacing:.8px;border:unset!important;padding-bottom:20px}.tab{letter-spacing:.8px;border-bottom:2px solid;padding-bottom:20px;cursor:pointer}.tab1{letter-spacing:.8px;border:2px solid;cursor:pointer}.tab2{letter-spacing:.8px;border:unset;padding-bottom:20px;cursor:pointer}@media only screen and (max-width: 768px){.content{flex-direction:column;padding:0 2rem;width:100%;gap:2rem}.image{order:-1;width:100%}.image img,.content-heading{width:100%}.box{overflow-x:scroll;gap:10%;margin:auto!important;padding:10px;width:85%!important}.row-container{width:100%!important}.tab{letter-spacing:.5px;border-bottom:1px solid;padding-bottom:10px;cursor:pointer}.image{width:100%}}@media screen and (max-width: 475px){.content{padding:0;margin-bottom:30px}}.g-25{gap:55px}.mt-1{margin-top:1rem}.justify-center{justify-content:center}\n"], dependencies: [{ kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { 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: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { 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: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: ImageDirectiveDirective, selector: "[simpoImageDirective]", inputs: ["simpoImageDirective"] }, { kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "component", type: SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "sectionId", "label"], outputs: ["valueChange"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: PositionLayoutDirectiveDirective, selector: "[simpoPositionLayoutDirective]", inputs: ["simpoPositionLayoutDirective"] }] }); }
61
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeaturesSectionComponent, isStandalone: true, selector: "simpo-features-section", inputs: { data: "data", edit: "edit", customClass: "customClass", delete: "delete", index: "index", nextComponentColor: "nextComponentColor" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\n class=\"total-container\" [simpoBorder]=\"styles?.border\" [attr.style]=\"customClass\">\n <div #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"styles?.background\" [spacingHorizontal]=\"stylesLayout\">\n <div class=\"container-fluid d-flex flex-column\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\">\n <div class=\"row\" *ngIf=\"screenWidth > 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n\n </div>\n <div class=\"box justify-center d-flex g-25 mt-5 mb-5\" [style.--accentColor]=\"styles?.background?.accentColor\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div [ngClass]=\"{'tab': styles?.tabStyling == 'UNDERLINE' , 'tab1' : styles?.tabStyling == 'BOXED' , 'tab2' : styles?.tabStyling == 'NONE' }\" [ngClass]=\"{'active': index === selectedTabIndex && styles?.tabStyling == 'UNDERLINE' , 'active1' : index === selectedTabIndex && styles?.tabStyling == 'BOXED' , 'active2' : index === selectedTabIndex && styles?.tabStyling == 'NONE' }\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row-container\" *ngIf=\"screenWidth <= 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div class=\" box d-flex g-25 mt-5 mb-5\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div class=\"tab\" [ngClass]=\"{'active': index === selectedTabIndex}\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"content d-flex g-15 mt-5\" *ngIf=\"currentData?.image?.url\" [id]=\"data?.id\" [simpoPositionLayoutDirective]=\"styles?.positionLayout\">\n <div class=\"image\">\n <img loading=\"lazy\" [src]=\"currentData?.image?.url\" alt=\"\" [id]=\"data?.id\"\n [simpoImageDirective]=\"styles?.image\" [simpoObjectPosition]=\"currentData?.image?.position\"\n [simpoCorner]=\"styles?.corners\"\n class=\"d-block mx-lg-auto img-fluid h-100 \" [class]=\"data?.id+(currentData?.image?.id || '')\"\n loading=\"lazy\" [appImageEditor]=\"true\" [imageData]=\"currentData?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"content-heading\">\n <div class=\"heading-large content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[1] as textItem\">\n <simpo-text-editor [(value)]=\"textItem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n <div class=\"content-description body-large mt-1 content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[2] as textitem\">\n <simpo-text-editor [(value)]=\"textitem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"content justify-center d-flex g-15 mt-5\" *ngIf=\"!currentData?.image?.url\">\n <div class=\"content-heading text-center\">\n <div class=\"heading-large content-side\" [innerHtml]=\"currentData?.inputText?.[1]?.value\" [id]=\"data?.id\">\n </div>\n <div class=\"content-description body-large mt-1 text-center\" [innerHtml]=\"currentData?.inputText?.[2]?.value\">\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\" [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n", styles: [".hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.content{padding:0px 10rem;width:90%;gap:3rem;margin-bottom:4%}.image{width:40%;flex:1}.image img{width:100%}.content-heading{width:60%;text-align:start}.content-description{width:100%;text-align:start}.active{font-weight:700;letter-spacing:.8px;border-bottom:2px solid!important;padding-bottom:20px}.active1{font-weight:700;letter-spacing:.8px;border:2px solid!important;border-radius:7px}.active2{font-weight:700;letter-spacing:.8px;border:unset!important;padding-bottom:20px}.tab{letter-spacing:.8px;border-bottom:2px solid;padding-bottom:20px;cursor:pointer}.tab1{letter-spacing:.8px;border:2px solid;cursor:pointer}.tab2{letter-spacing:.8px;border:unset;padding-bottom:20px;cursor:pointer}@media only screen and (max-width: 768px){.content{flex-direction:column;padding:0 2rem;width:100%;gap:2rem}.g-25{gap:10px!important}.image{order:-1;width:100%}.image img,.content-heading{width:100%}.box{overflow-x:scroll;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;touch-action:pan-x;padding:10px;width:100%!important;margin:5px 0!important}.box::-webkit-scrollbar{display:flex!important;height:3px}.box::-webkit-scrollbar-thumb{background:var(--accentColor, #d4d4d4)}.row-container{width:100%!important}.tab{letter-spacing:.5px;border-bottom:1px solid;padding-bottom:10px;cursor:pointer}.image{width:100%}}@media screen and (max-width: 475px){.content{padding:0;margin-bottom:30px}}.g-25{gap:55px}.mt-1{margin-top:1rem}.justify-center{justify-content:center}\n"], dependencies: [{ kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { 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: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { 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: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: ImageDirectiveDirective, selector: "[simpoImageDirective]", inputs: ["simpoImageDirective"] }, { kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "component", type: SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "sectionId", "label"], outputs: ["valueChange"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: PositionLayoutDirectiveDirective, selector: "[simpoPositionLayoutDirective]", inputs: ["simpoPositionLayoutDirective"] }] }); }
62
62
  }
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeaturesSectionComponent, decorators: [{
64
64
  type: Component,
@@ -81,7 +81,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
81
81
  ImageEditorDirective,
82
82
  SpacingHorizontalDirective,
83
83
  PositionLayoutDirectiveDirective
84
- ], template: "<section [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\n class=\"total-container\" [simpoBorder]=\"styles?.border\" [attr.style]=\"customClass\">\n <div #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"styles?.background\" [spacingHorizontal]=\"stylesLayout\">\n <div class=\"container-fluid d-flex flex-column\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\">\n <div class=\"row\" *ngIf=\"screenWidth > 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n\n </div>\n <div class=\" box justify-center d-flex g-25 mt-5 mb-5\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div [ngClass]=\"{'tab': styles?.tabStyling == 'UNDERLINE' , 'tab1' : styles?.tabStyling == 'BOXED' , 'tab2' : styles?.tabStyling == 'NONE' }\" [ngClass]=\"{'active': index === selectedTabIndex && styles?.tabStyling == 'UNDERLINE' , 'active1' : index === selectedTabIndex && styles?.tabStyling == 'BOXED' , 'active2' : index === selectedTabIndex && styles?.tabStyling == 'NONE' }\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row-container\" *ngIf=\"screenWidth <= 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div class=\" box d-flex g-25 mt-5 mb-5\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div class=\"tab\" [ngClass]=\"{'active': index === selectedTabIndex}\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"content d-flex g-15 mt-5\" *ngIf=\"currentData?.image?.url\" [id]=\"data?.id\" [simpoPositionLayoutDirective]=\"styles?.positionLayout\">\n <div class=\"image\">\n <img loading=\"lazy\" [src]=\"currentData?.image?.url\" alt=\"\" [id]=\"data?.id\"\n [simpoImageDirective]=\"styles?.image\" [simpoObjectPosition]=\"currentData?.image?.position\"\n [simpoCorner]=\"styles?.corners\"\n class=\"d-block mx-lg-auto img-fluid h-100 \" [class]=\"data?.id+(currentData?.image?.id || '')\"\n loading=\"lazy\" [appImageEditor]=\"true\" [imageData]=\"currentData?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"content-heading\">\n <div class=\"heading-large content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[1] as textItem\">\n <simpo-text-editor [(value)]=\"textItem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n <div class=\"content-description body-large mt-1 content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[2] as textitem\">\n <simpo-text-editor [(value)]=\"textitem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"content justify-center d-flex g-15 mt-5\" *ngIf=\"!currentData?.image?.url\">\n <div class=\"content-heading text-center\">\n <div class=\"heading-large content-side\" [innerHtml]=\"currentData?.inputText?.[1]?.value\" [id]=\"data?.id\">\n </div>\n <div class=\"content-description body-large mt-1 text-center\" [innerHtml]=\"currentData?.inputText?.[2]?.value\">\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\" [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n", styles: [".hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.content{padding:0px 10rem;width:90%;gap:3rem;margin-bottom:4%}.image{width:40%;flex:1}.image img{width:100%}.content-heading{width:60%;text-align:start}.content-description{width:100%;text-align:start}.active{font-weight:700;letter-spacing:.8px;border-bottom:2px solid!important;padding-bottom:20px}.active1{font-weight:700;letter-spacing:.8px;border:2px solid!important;border-radius:7px}.active2{font-weight:700;letter-spacing:.8px;border:unset!important;padding-bottom:20px}.tab{letter-spacing:.8px;border-bottom:2px solid;padding-bottom:20px;cursor:pointer}.tab1{letter-spacing:.8px;border:2px solid;cursor:pointer}.tab2{letter-spacing:.8px;border:unset;padding-bottom:20px;cursor:pointer}@media only screen and (max-width: 768px){.content{flex-direction:column;padding:0 2rem;width:100%;gap:2rem}.image{order:-1;width:100%}.image img,.content-heading{width:100%}.box{overflow-x:scroll;gap:10%;margin:auto!important;padding:10px;width:85%!important}.row-container{width:100%!important}.tab{letter-spacing:.5px;border-bottom:1px solid;padding-bottom:10px;cursor:pointer}.image{width:100%}}@media screen and (max-width: 475px){.content{padding:0;margin-bottom:30px}}.g-25{gap:55px}.mt-1{margin-top:1rem}.justify-center{justify-content:center}\n"] }]
84
+ ], template: "<section [id]=\"data?.id\" [simpoBackground]=\"styles?.background\" simpoHover (hovering)=\"showEditTabs($event)\"\n class=\"total-container\" [simpoBorder]=\"styles?.border\" [attr.style]=\"customClass\">\n <div #mainContainer [id]=\"data?.id\" [simpoOverlay]=\"styles?.background\" [spacingHorizontal]=\"stylesLayout\">\n <div class=\"container-fluid d-flex flex-column\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\">\n <div class=\"row\" *ngIf=\"screenWidth > 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n\n </div>\n <div class=\"box justify-center d-flex g-25 mt-5 mb-5\" [style.--accentColor]=\"styles?.background?.accentColor\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div [ngClass]=\"{'tab': styles?.tabStyling == 'UNDERLINE' , 'tab1' : styles?.tabStyling == 'BOXED' , 'tab2' : styles?.tabStyling == 'NONE' }\" [ngClass]=\"{'active': index === selectedTabIndex && styles?.tabStyling == 'UNDERLINE' , 'active1' : index === selectedTabIndex && styles?.tabStyling == 'BOXED' , 'active2' : index === selectedTabIndex && styles?.tabStyling == 'NONE' }\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row-container\" *ngIf=\"screenWidth <= 475\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <!-- <div class=\"heading-medium mb-1 content-side\" [innerHTML]=\"text.value | sanitizeHtml\"></div> -->\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n <div class=\" box d-flex g-25 mt-5 mb-5\">\n <div *ngFor=\"let tab of content?.listItem?.data; let index = index\">\n <div class=\"tab\" [ngClass]=\"{'active': index === selectedTabIndex}\" [style.borderColor]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" [style.color]=\"index === selectedTabIndex ? styles?.background?.accentColor : ''\" (click)=\"changetab(index)\">\n <!-- {{ tab.inputText[0].value }} -->\n <simpo-text-editor [(value)]=\"tab.inputText[0].value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n </div>\n </div>\n <div class=\"content d-flex g-15 mt-5\" *ngIf=\"currentData?.image?.url\" [id]=\"data?.id\" [simpoPositionLayoutDirective]=\"styles?.positionLayout\">\n <div class=\"image\">\n <img loading=\"lazy\" [src]=\"currentData?.image?.url\" alt=\"\" [id]=\"data?.id\"\n [simpoImageDirective]=\"styles?.image\" [simpoObjectPosition]=\"currentData?.image?.position\"\n [simpoCorner]=\"styles?.corners\"\n class=\"d-block mx-lg-auto img-fluid h-100 \" [class]=\"data?.id+(currentData?.image?.id || '')\"\n loading=\"lazy\" [appImageEditor]=\"true\" [imageData]=\"currentData?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"content-heading\">\n <div class=\"heading-large content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[1] as textItem\">\n <simpo-text-editor [(value)]=\"textItem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n <div class=\"content-description body-large mt-1 content-side\" >\n <ng-container *ngIf=\"currentData?.inputText?.[2] as textitem\">\n <simpo-text-editor [(value)]=\"textitem.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"content justify-center d-flex g-15 mt-5\" *ngIf=\"!currentData?.image?.url\">\n <div class=\"content-heading text-center\">\n <div class=\"heading-large content-side\" [innerHtml]=\"currentData?.inputText?.[1]?.value\" [id]=\"data?.id\">\n </div>\n <div class=\"content-description body-large mt-1 text-center\" [innerHtml]=\"currentData?.inputText?.[2]?.value\">\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\" [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n</section>\n", styles: [".hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.content{padding:0px 10rem;width:90%;gap:3rem;margin-bottom:4%}.image{width:40%;flex:1}.image img{width:100%}.content-heading{width:60%;text-align:start}.content-description{width:100%;text-align:start}.active{font-weight:700;letter-spacing:.8px;border-bottom:2px solid!important;padding-bottom:20px}.active1{font-weight:700;letter-spacing:.8px;border:2px solid!important;border-radius:7px}.active2{font-weight:700;letter-spacing:.8px;border:unset!important;padding-bottom:20px}.tab{letter-spacing:.8px;border-bottom:2px solid;padding-bottom:20px;cursor:pointer}.tab1{letter-spacing:.8px;border:2px solid;cursor:pointer}.tab2{letter-spacing:.8px;border:unset;padding-bottom:20px;cursor:pointer}@media only screen and (max-width: 768px){.content{flex-direction:column;padding:0 2rem;width:100%;gap:2rem}.g-25{gap:10px!important}.image{order:-1;width:100%}.image img,.content-heading{width:100%}.box{overflow-x:scroll;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;touch-action:pan-x;padding:10px;width:100%!important;margin:5px 0!important}.box::-webkit-scrollbar{display:flex!important;height:3px}.box::-webkit-scrollbar-thumb{background:var(--accentColor, #d4d4d4)}.row-container{width:100%!important}.tab{letter-spacing:.5px;border-bottom:1px solid;padding-bottom:10px;cursor:pointer}.image{width:100%}}@media screen and (max-width: 475px){.content{padding:0;margin-bottom:30px}}.g-25{gap:55px}.mt-1{margin-top:1rem}.justify-center{justify-content:center}\n"] }]
85
85
  }], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { data: [{
86
86
  type: Input
87
87
  }], edit: [{
@@ -98,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
98
98
  type: HostListener,
99
99
  args: ['window:resize', ['$event']]
100
100
  }] } });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ZlYXR1cmVzLXNlY3Rpb24vZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ZlYXR1cmVzLXNlY3Rpb24vZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFHekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDN0YsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDcEYsT0FB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OytCQUNFLHdCQUF3QixjQUN0QixJQUFJLFdBQ1A7d0JBQ1AsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLHNCQUFzQjt3QkFDdEIsMkJBQTJCO3dCQUMzQixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsOEJBQThCO3dCQUM5Qix1QkFBdUI7d0JBQ3ZCLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZixnQkFBZ0IsRUFBQyxtQkFBbUI7d0JBQ3BDLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGdDQUFnQztxQkFDakM7a0ZBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQXFCTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmVhdHVyZUNvbnRlbnRNb2RlbCwgRmVhdHVyZVN0eWxlc01vZGVsLCBGZWF0dXJlU2VjdGlvbk1vZGVsLCBGZWF0dXJlSXRlbU1vZGVsICB9IGZyb20gJy4vZmVhdHVyZXMtc2VjdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRWxlbWVudHNDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnRcIjtcbmltcG9ydCB7IERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2RlbGV0ZS1ob3Zlci1lbGVtZW50L2RlbGV0ZS1ob3Zlci1lbGVtZW50LmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgc2ltcG9Db25ldGVuQWxpZ25tZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtYWxpZ25tZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLXBvc2l0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTYW5pdGl6ZUh0bWxQaXBlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FuaXRpemVIdG1sJztcbmltcG9ydCB7IEJhY2tncm91bmRNb2RlbCwgTGF5T3V0TW9kZWwgfSBmcm9tICcuLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xuaW1wb3J0IHsgU3ZnRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3N2Zy1kaXZpZGVyL3N2Zy1kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWVkaXRvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpbXBvLWZlYXR1cmVzLXNlY3Rpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBIb3ZlckRpcmVjdGl2ZSxcbiAgICBIb3ZlckVsZW1lbnRzQ29tcG9uZW50LFxuICAgIERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcbiAgICBCb3JkZXJEaXJlY3RpdmUsXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxuICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXG4gICAgc2ltcG9Db25ldGVuQWxpZ25tZW50RGlyZWN0aXZlLFxuICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxuICAgIE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlLFxuICAgIENvcm5lckRpcmVjdGl2ZSxcbiAgICBTYW5pdGl6ZUh0bWxQaXBlLFN2Z0RpdmlkZXJDb21wb25lbnQsXG4gICAgVGV4dEVkaXRvckNvbXBvbmVudCxcbiAgICBJbWFnZUVkaXRvckRpcmVjdGl2ZSxcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcbiAgICBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZVxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mZWF0dXJlcy1zZWN0aW9uLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVzU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGF0YT86IEZlYXR1cmVTZWN0aW9uTW9kZWw7XG4gIEBJbnB1dCgpIGVkaXQ/OiBib29sZWFuO1xuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcbiAgY29udGVudD86IEZlYXR1cmVDb250ZW50TW9kZWw7XG4gIHN0eWxlcz86IEZlYXR1cmVTdHlsZXNNb2RlbDtcbiAgQElucHV0KCkgZGVsZXRlPyA6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGluZGV4PyA6IG51bWJlcjtcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xuXG5cbiAgbGlzdEl0ZW1zIDogYW55O1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudFNlcnZpY2UgOiBFdmVudHNTZXJ2aWNlLFxuICApe1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpe1xuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcbiAgICB0aGlzLmxpc3RJdGVtcyA9IHRoaXMuZGF0YT8uY29udGVudC5saXN0SXRlbS5kYXRhXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLmRhdGE/LnN0eWxlcztcbiAgICB0aGlzLmRlbGV0ZVNlbGVjdGVkID0gdGhpcy5kZWxldGVcbiAgICB0aGlzLmNoYW5nZXRhYigwKTtcbiAgfVxuXG4gIHNjcmVlbldpZHRoOm51bWJlcj0wO1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86YW55KSB7XG4gICAgaWYodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICB9XG4gIH1cbiAgZ2V0IHN0eWxlc0xheW91dCgpIHtcbiAgICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGVzPy5sYXlvdXQgfSBhcyBMYXlPdXRNb2RlbDtcbiAgICB9XG5cbiAgc2VsZWN0ZWRUYWJJbmRleCA9IDA7XG4gIGN1cnJlbnREYXRhPzogRmVhdHVyZUl0ZW1Nb2RlbDtcbiAgY2hhbmdldGFiKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLnNlbGVjdGVkVGFiSW5kZXggPSBpbmRleDtcbiAgICB0aGlzLmN1cnJlbnREYXRhID0gdGhpcy5kYXRhPy5jb250ZW50Lmxpc3RJdGVtLmRhdGFbdGhpcy5zZWxlY3RlZFRhYkluZGV4XTtcbiAgfVxuICBlZGl0U2VjdGlvbigpe1xuICAgIGlmKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSlcbiAgICAgIHJldHVyblxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcbiAgICBzZXRUaW1lb3V0KCgpPT4ge1xuICAgICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoe2RhdGE6dGhpcy5kYXRhfSk7XG4gICAgfSwgMTAwKTtcbiAgfVxuXG59XG4iLCI8c2VjdGlvbiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCJcbiAgY2xhc3M9XCJ0b3RhbC1jb250YWluZXJcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGVzPy5ib3JkZXJcIiAgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cbiAgPGRpdiAgI21haW5Db250YWluZXIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCBkLWZsZXggZmxleC1jb2x1bW5cIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzPy5sYXlvdXRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNDc1XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCI+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHRleHQgb2YgZGF0YT8uY29udGVudD8uaW5wdXRUZXh0XCI+XG4gICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiaGVhZGluZy1tZWRpdW0gbWItMSBjb250ZW50LXNpZGVcIiBbaW5uZXJIVE1MXT1cInRleHQudmFsdWUgfCBzYW5pdGl6ZUh0bWxcIj48L2Rpdj4gLS0+XG4gICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cInRleHQudmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCIgYm94IGp1c3RpZnktY2VudGVyIGQtZmxleCBnLTI1IG10LTUgbWItNVwiPlxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHRhYiBvZiBjb250ZW50Py5saXN0SXRlbT8uZGF0YTsgbGV0IGluZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyd0YWInOiBzdHlsZXM/LnRhYlN0eWxpbmcgPT0gJ1VOREVSTElORScgLCAndGFiMScgOiBzdHlsZXM/LnRhYlN0eWxpbmcgPT0gJ0JPWEVEJyAsICd0YWIyJyA6IHN0eWxlcz8udGFiU3R5bGluZyA9PSAnTk9ORScgfVwiICBbbmdDbGFzc109XCJ7J2FjdGl2ZSc6IGluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ICYmIHN0eWxlcz8udGFiU3R5bGluZyA9PSAnVU5ERVJMSU5FJyAsICdhY3RpdmUxJyA6IGluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ICYmIHN0eWxlcz8udGFiU3R5bGluZyA9PSAnQk9YRUQnICwgJ2FjdGl2ZTInIDogaW5kZXggPT09IHNlbGVjdGVkVGFiSW5kZXggJiYgc3R5bGVzPy50YWJTdHlsaW5nID09ICdOT05FJyB9XCIgW3N0eWxlLmJvcmRlckNvbG9yXT1cImluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ID8gc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvciA6ICcnXCIgW3N0eWxlLmNvbG9yXT1cImluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ID8gc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvciA6ICcnXCIgKGNsaWNrKT1cImNoYW5nZXRhYihpbmRleClcIj5cbiAgICAgICAgICAgICAgPCEtLSB7eyB0YWIuaW5wdXRUZXh0WzBdLnZhbHVlIH19IC0tPlxuICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGFiLmlucHV0VGV4dFswXS52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJvdy1jb250YWluZXJcIiAqbmdJZj1cInNjcmVlbldpZHRoIDw9IDQ3NVwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0FuaW1hdGlvbl09XCJzdHlsZXM/LmFuaW1hdGlvblwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0ZXh0IG9mIGRhdGE/LmNvbnRlbnQ/LmlucHV0VGV4dFwiPlxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImhlYWRpbmctbWVkaXVtIG1iLTEgY29udGVudC1zaWRlXCIgW2lubmVySFRNTF09XCJ0ZXh0LnZhbHVlIHwgc2FuaXRpemVIdG1sXCI+PC9kaXY+IC0tPlxuICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dC52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCIgYm94IGQtZmxleCBnLTI1IG10LTUgbWItNVwiPlxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHRhYiBvZiBjb250ZW50Py5saXN0SXRlbT8uZGF0YTsgbGV0IGluZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJcIiBbbmdDbGFzc109XCJ7J2FjdGl2ZSc6IGluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4fVwiIFtzdHlsZS5ib3JkZXJDb2xvcl09XCJpbmRleCA9PT0gc2VsZWN0ZWRUYWJJbmRleCA/IHN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3IgOiAnJ1wiIFtzdHlsZS5jb2xvcl09XCJpbmRleCA9PT0gc2VsZWN0ZWRUYWJJbmRleCA/IHN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3IgOiAnJ1wiIChjbGljayk9XCJjaGFuZ2V0YWIoaW5kZXgpXCI+XG4gICAgICAgICAgICAgIDwhLS0ge3sgdGFiLmlucHV0VGV4dFswXS52YWx1ZSB9fSAtLT5cbiAgICAgICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cInRhYi5pbnB1dFRleHRbMF0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50IGQtZmxleCBnLTE1IG10LTVcIiAqbmdJZj1cImN1cnJlbnREYXRhPy5pbWFnZT8udXJsXCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvUG9zaXRpb25MYXlvdXREaXJlY3RpdmVdPVwic3R5bGVzPy5wb3NpdGlvbkxheW91dFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIj5cbiAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgIFtzcmNdPVwiY3VycmVudERhdGE/LmltYWdlPy51cmxcIiBhbHQ9XCJcIiBbaWRdPVwiZGF0YT8uaWRcIlxuICAgICAgICAgIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlcz8uaW1hZ2VcIiAgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiY3VycmVudERhdGE/LmltYWdlPy5wb3NpdGlvblwiXG4gICAgICAgICAgW3NpbXBvQ29ybmVyXT1cInN0eWxlcz8uY29ybmVyc1wiXG4gICAgICAgICAgY2xhc3M9XCJkLWJsb2NrIG14LWxnLWF1dG8gaW1nLWZsdWlkIGgtMTAwIFwiIFtjbGFzc109XCJkYXRhPy5pZCsoY3VycmVudERhdGE/LmltYWdlPy5pZCB8fCAnJylcIlxuICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCIgIFthcHBJbWFnZUVkaXRvcl09XCJ0cnVlXCIgW2ltYWdlRGF0YV09XCJjdXJyZW50RGF0YT8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1oZWFkaW5nXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmctbGFyZ2UgY29udGVudC1zaWRlXCIgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnREYXRhPy5pbnB1dFRleHQ/LlsxXSBhcyB0ZXh0SXRlbVwiPlxuICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dEl0ZW0udmFsdWVcIiAgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtZGVzY3JpcHRpb24gYm9keS1sYXJnZSBtdC0xIGNvbnRlbnQtc2lkZVwiID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50RGF0YT8uaW5wdXRUZXh0Py5bMl0gYXMgdGV4dGl0ZW1cIj5cbiAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dGl0ZW0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50IGp1c3RpZnktY2VudGVyIGQtZmxleCBnLTE1IG10LTVcIiAqbmdJZj1cIiFjdXJyZW50RGF0YT8uaW1hZ2U/LnVybFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1oZWFkaW5nIHRleHQtY2VudGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmctbGFyZ2UgY29udGVudC1zaWRlXCIgW2lubmVySHRtbF09XCJjdXJyZW50RGF0YT8uaW5wdXRUZXh0Py5bMV0/LnZhbHVlXCIgW2lkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtZGVzY3JpcHRpb24gYm9keS1sYXJnZSBtdC0xIHRleHQtY2VudGVyXCIgW2lubmVySHRtbF09XCJjdXJyZW50RGF0YT8uaW5wdXRUZXh0Py5bMl0/LnZhbHVlXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICBcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlcz8uZGV2aWRlcj8uZGlzcGxheVwiPlxuICAgIDxzaW1wby1zdmctZGl2aWRlciBbZGl2aWRlclR5cGVdPVwic3R5bGVzPy5kZXZpZGVyPy5kZXZpZGVyVHlwZVwiIFtjb2xvcl09XCJuZXh0Q29tcG9uZW50Q29sb3I/LmNvbG9yXCI+PC9zaW1wby1zdmctZGl2aWRlcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCI+PC9zaW1wby1ob3Zlci1lbGVtZW50cz5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XG4gICAgPHNpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50IFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIj48L3NpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50PlxuICA8L2Rpdj5cblxuPC9zZWN0aW9uPlxuIl19
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ZlYXR1cmVzLXNlY3Rpb24vZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ZlYXR1cmVzLXNlY3Rpb24vZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFHekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDN0YsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDcEYsT0FB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OytCQUNFLHdCQUF3QixjQUN0QixJQUFJLFdBQ1A7d0JBQ1AsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLHNCQUFzQjt3QkFDdEIsMkJBQTJCO3dCQUMzQixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsOEJBQThCO3dCQUM5Qix1QkFBdUI7d0JBQ3ZCLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZixnQkFBZ0IsRUFBQyxtQkFBbUI7d0JBQ3BDLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGdDQUFnQztxQkFDakM7a0ZBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQXFCTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi9CYXNlU2VjdGlvbic7XG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmVhdHVyZUNvbnRlbnRNb2RlbCwgRmVhdHVyZVN0eWxlc01vZGVsLCBGZWF0dXJlU2VjdGlvbk1vZGVsLCBGZWF0dXJlSXRlbU1vZGVsICB9IGZyb20gJy4vZmVhdHVyZXMtc2VjdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRWxlbWVudHNDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnRcIjtcbmltcG9ydCB7IERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2RlbGV0ZS1ob3Zlci1lbGVtZW50L2RlbGV0ZS1ob3Zlci1lbGVtZW50LmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgc2ltcG9Db25ldGVuQWxpZ25tZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtYWxpZ25tZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLXBvc2l0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTYW5pdGl6ZUh0bWxQaXBlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FuaXRpemVIdG1sJztcbmltcG9ydCB7IEJhY2tncm91bmRNb2RlbCwgTGF5T3V0TW9kZWwgfSBmcm9tICcuLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xuaW1wb3J0IHsgU3ZnRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3N2Zy1kaXZpZGVyL3N2Zy1kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWVkaXRvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpbXBvLWZlYXR1cmVzLXNlY3Rpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBIb3ZlckRpcmVjdGl2ZSxcbiAgICBIb3ZlckVsZW1lbnRzQ29tcG9uZW50LFxuICAgIERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcbiAgICBCb3JkZXJEaXJlY3RpdmUsXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxuICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXG4gICAgc2ltcG9Db25ldGVuQWxpZ25tZW50RGlyZWN0aXZlLFxuICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxuICAgIE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlLFxuICAgIENvcm5lckRpcmVjdGl2ZSxcbiAgICBTYW5pdGl6ZUh0bWxQaXBlLFN2Z0RpdmlkZXJDb21wb25lbnQsXG4gICAgVGV4dEVkaXRvckNvbXBvbmVudCxcbiAgICBJbWFnZUVkaXRvckRpcmVjdGl2ZSxcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcbiAgICBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZVxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vZmVhdHVyZXMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mZWF0dXJlcy1zZWN0aW9uLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVzU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGF0YT86IEZlYXR1cmVTZWN0aW9uTW9kZWw7XG4gIEBJbnB1dCgpIGVkaXQ/OiBib29sZWFuO1xuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcbiAgY29udGVudD86IEZlYXR1cmVDb250ZW50TW9kZWw7XG4gIHN0eWxlcz86IEZlYXR1cmVTdHlsZXNNb2RlbDtcbiAgQElucHV0KCkgZGVsZXRlPyA6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGluZGV4PyA6IG51bWJlcjtcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xuXG5cbiAgbGlzdEl0ZW1zIDogYW55O1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudFNlcnZpY2UgOiBFdmVudHNTZXJ2aWNlLFxuICApe1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpe1xuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcbiAgICB0aGlzLmxpc3RJdGVtcyA9IHRoaXMuZGF0YT8uY29udGVudC5saXN0SXRlbS5kYXRhXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLmRhdGE/LnN0eWxlcztcbiAgICB0aGlzLmRlbGV0ZVNlbGVjdGVkID0gdGhpcy5kZWxldGVcbiAgICB0aGlzLmNoYW5nZXRhYigwKTtcbiAgfVxuXG4gIHNjcmVlbldpZHRoOm51bWJlcj0wO1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86YW55KSB7XG4gICAgaWYodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICB9XG4gIH1cbiAgZ2V0IHN0eWxlc0xheW91dCgpIHtcbiAgICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGVzPy5sYXlvdXQgfSBhcyBMYXlPdXRNb2RlbDtcbiAgICB9XG5cbiAgc2VsZWN0ZWRUYWJJbmRleCA9IDA7XG4gIGN1cnJlbnREYXRhPzogRmVhdHVyZUl0ZW1Nb2RlbDtcbiAgY2hhbmdldGFiKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLnNlbGVjdGVkVGFiSW5kZXggPSBpbmRleDtcbiAgICB0aGlzLmN1cnJlbnREYXRhID0gdGhpcy5kYXRhPy5jb250ZW50Lmxpc3RJdGVtLmRhdGFbdGhpcy5zZWxlY3RlZFRhYkluZGV4XTtcbiAgfVxuICBlZGl0U2VjdGlvbigpe1xuICAgIGlmKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSlcbiAgICAgIHJldHVyblxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcbiAgICBzZXRUaW1lb3V0KCgpPT4ge1xuICAgICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoe2RhdGE6dGhpcy5kYXRhfSk7XG4gICAgfSwgMTAwKTtcbiAgfVxuXG59XG4iLCI8c2VjdGlvbiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCJcbiAgY2xhc3M9XCJ0b3RhbC1jb250YWluZXJcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGVzPy5ib3JkZXJcIiAgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cbiAgPGRpdiAgI21haW5Db250YWluZXIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCBkLWZsZXggZmxleC1jb2x1bW5cIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzPy5sYXlvdXRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNDc1XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCI+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHRleHQgb2YgZGF0YT8uY29udGVudD8uaW5wdXRUZXh0XCI+XG4gICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiaGVhZGluZy1tZWRpdW0gbWItMSBjb250ZW50LXNpZGVcIiBbaW5uZXJIVE1MXT1cInRleHQudmFsdWUgfCBzYW5pdGl6ZUh0bWxcIj48L2Rpdj4gLS0+XG4gICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cInRleHQudmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3gganVzdGlmeS1jZW50ZXIgZC1mbGV4IGctMjUgbXQtNSBtYi01XCIgW3N0eWxlLi0tYWNjZW50Q29sb3JdPVwic3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiPlxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHRhYiBvZiBjb250ZW50Py5saXN0SXRlbT8uZGF0YTsgbGV0IGluZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyd0YWInOiBzdHlsZXM/LnRhYlN0eWxpbmcgPT0gJ1VOREVSTElORScgLCAndGFiMScgOiBzdHlsZXM/LnRhYlN0eWxpbmcgPT0gJ0JPWEVEJyAsICd0YWIyJyA6IHN0eWxlcz8udGFiU3R5bGluZyA9PSAnTk9ORScgfVwiICBbbmdDbGFzc109XCJ7J2FjdGl2ZSc6IGluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ICYmIHN0eWxlcz8udGFiU3R5bGluZyA9PSAnVU5ERVJMSU5FJyAsICdhY3RpdmUxJyA6IGluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ICYmIHN0eWxlcz8udGFiU3R5bGluZyA9PSAnQk9YRUQnICwgJ2FjdGl2ZTInIDogaW5kZXggPT09IHNlbGVjdGVkVGFiSW5kZXggJiYgc3R5bGVzPy50YWJTdHlsaW5nID09ICdOT05FJyB9XCIgW3N0eWxlLmJvcmRlckNvbG9yXT1cImluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ID8gc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvciA6ICcnXCIgW3N0eWxlLmNvbG9yXT1cImluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4ID8gc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvciA6ICcnXCIgKGNsaWNrKT1cImNoYW5nZXRhYihpbmRleClcIj5cbiAgICAgICAgICAgICAgPCEtLSB7eyB0YWIuaW5wdXRUZXh0WzBdLnZhbHVlIH19IC0tPlxuICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGFiLmlucHV0VGV4dFswXS52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJvdy1jb250YWluZXJcIiAqbmdJZj1cInNjcmVlbldpZHRoIDw9IDQ3NVwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0FuaW1hdGlvbl09XCJzdHlsZXM/LmFuaW1hdGlvblwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0ZXh0IG9mIGRhdGE/LmNvbnRlbnQ/LmlucHV0VGV4dFwiPlxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImhlYWRpbmctbWVkaXVtIG1iLTEgY29udGVudC1zaWRlXCIgW2lubmVySFRNTF09XCJ0ZXh0LnZhbHVlIHwgc2FuaXRpemVIdG1sXCI+PC9kaXY+IC0tPlxuICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dC52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCIgYm94IGQtZmxleCBnLTI1IG10LTUgbWItNVwiPlxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHRhYiBvZiBjb250ZW50Py5saXN0SXRlbT8uZGF0YTsgbGV0IGluZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJcIiBbbmdDbGFzc109XCJ7J2FjdGl2ZSc6IGluZGV4ID09PSBzZWxlY3RlZFRhYkluZGV4fVwiIFtzdHlsZS5ib3JkZXJDb2xvcl09XCJpbmRleCA9PT0gc2VsZWN0ZWRUYWJJbmRleCA/IHN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3IgOiAnJ1wiIFtzdHlsZS5jb2xvcl09XCJpbmRleCA9PT0gc2VsZWN0ZWRUYWJJbmRleCA/IHN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3IgOiAnJ1wiIChjbGljayk9XCJjaGFuZ2V0YWIoaW5kZXgpXCI+XG4gICAgICAgICAgICAgIDwhLS0ge3sgdGFiLmlucHV0VGV4dFswXS52YWx1ZSB9fSAtLT5cbiAgICAgICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cInRhYi5pbnB1dFRleHRbMF0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50IGQtZmxleCBnLTE1IG10LTVcIiAqbmdJZj1cImN1cnJlbnREYXRhPy5pbWFnZT8udXJsXCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvUG9zaXRpb25MYXlvdXREaXJlY3RpdmVdPVwic3R5bGVzPy5wb3NpdGlvbkxheW91dFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIj5cbiAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgIFtzcmNdPVwiY3VycmVudERhdGE/LmltYWdlPy51cmxcIiBhbHQ9XCJcIiBbaWRdPVwiZGF0YT8uaWRcIlxuICAgICAgICAgIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlcz8uaW1hZ2VcIiAgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiY3VycmVudERhdGE/LmltYWdlPy5wb3NpdGlvblwiXG4gICAgICAgICAgW3NpbXBvQ29ybmVyXT1cInN0eWxlcz8uY29ybmVyc1wiXG4gICAgICAgICAgY2xhc3M9XCJkLWJsb2NrIG14LWxnLWF1dG8gaW1nLWZsdWlkIGgtMTAwIFwiIFtjbGFzc109XCJkYXRhPy5pZCsoY3VycmVudERhdGE/LmltYWdlPy5pZCB8fCAnJylcIlxuICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCIgIFthcHBJbWFnZUVkaXRvcl09XCJ0cnVlXCIgW2ltYWdlRGF0YV09XCJjdXJyZW50RGF0YT8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1oZWFkaW5nXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmctbGFyZ2UgY29udGVudC1zaWRlXCIgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnREYXRhPy5pbnB1dFRleHQ/LlsxXSBhcyB0ZXh0SXRlbVwiPlxuICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dEl0ZW0udmFsdWVcIiAgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtZGVzY3JpcHRpb24gYm9keS1sYXJnZSBtdC0xIGNvbnRlbnQtc2lkZVwiID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50RGF0YT8uaW5wdXRUZXh0Py5bMl0gYXMgdGV4dGl0ZW1cIj5cbiAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dGl0ZW0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50IGp1c3RpZnktY2VudGVyIGQtZmxleCBnLTE1IG10LTVcIiAqbmdJZj1cIiFjdXJyZW50RGF0YT8uaW1hZ2U/LnVybFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1oZWFkaW5nIHRleHQtY2VudGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmctbGFyZ2UgY29udGVudC1zaWRlXCIgW2lubmVySHRtbF09XCJjdXJyZW50RGF0YT8uaW5wdXRUZXh0Py5bMV0/LnZhbHVlXCIgW2lkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtZGVzY3JpcHRpb24gYm9keS1sYXJnZSBtdC0xIHRleHQtY2VudGVyXCIgW2lubmVySHRtbF09XCJjdXJyZW50RGF0YT8uaW5wdXRUZXh0Py5bMl0/LnZhbHVlXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICBcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlcz8uZGV2aWRlcj8uZGlzcGxheVwiPlxuICAgIDxzaW1wby1zdmctZGl2aWRlciBbZGl2aWRlclR5cGVdPVwic3R5bGVzPy5kZXZpZGVyPy5kZXZpZGVyVHlwZVwiIFtjb2xvcl09XCJuZXh0Q29tcG9uZW50Q29sb3I/LmNvbG9yXCI+PC9zaW1wby1zdmctZGl2aWRlcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCI+PC9zaW1wby1ob3Zlci1lbGVtZW50cz5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XG4gICAgPHNpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50IFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIj48L3NpbXBvLWRlbGV0ZS1ob3Zlci1lbGVtZW50PlxuICA8L2Rpdj5cblxuPC9zZWN0aW9uPlxuIl19
@@ -70,9 +70,9 @@ export class ImageCarouselSectionComponent extends BaseSection {
70
70
  }, 100);
71
71
  }
72
72
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImageCarouselSectionComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
73
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ImageCarouselSectionComponent, isStandalone: true, selector: "simpo-image-carousel-section", inputs: { data: "data", index: "index", customClass: "customClass", nextComponentColor: "nextComponentColor", edit: "edit", delete: "delete" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section class=\"container-fluid\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\" class=\"total-container\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\">\n <div *ngFor=\"let text of data?.content?.inputText\" [simpoBackground]=\"style?.background\" [simpoCorner]=\"style?.corners\"\n [ngClass]=\"{'px-0': style?.fullWidth, 'image-screen': style?.layout?.fit === 'screen' && style?.fullWidth, 'img-screen-notext': style?.layout?.fit === 'screen' && style?.fullWidth && text.value === ''}\"\n [id]=\"data?.id\" [simpoOverlay]=\"style?.background\" [simpoBorder]=\"style?.border\" [simpoSpacing]=\"spacingLayout\">\n <div class=\"row mlr-0 w-100\" *ngIf=\"data?.content?.inputText?.length\" [id]=\"data?.id\"\n [simpoAnimation]=\"style?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <div class=\"heading-large content-side\" [simpoContentTitleSpace]=\"headingSpace\" *ngIf=\"edit || text.value\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n\n <div [id]=\"'carouselExampleCaptions'+data?.id\" class=\"carousel slide\" [simpoLayout]=\"style?.layout\"\n [ngClass]=\"{'mb-0 px-0 py-0': style?.fullWidth, 'mb-md-1 mb-sm-0 mb-lg-1': !style?.fullWidth}\">\n <div class=\"carousel-inner\" data-bs-ride=\"carousel\">\n <!-- data-bs-ride=\"carousel\" -->\n <div class=\"carousel-item\" *ngFor=\"let img of content?.listItem?.data; let i = index\"\n [class.active]=\"i === 0\">\n <div class=\"row m-0\">\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth >= 475\">\n <!-- <img loading=\"lazy\" class=\"d-block position-relative\" style=\"width: 20%; left: -20px\" [src]=\"img.image.url\" [alt]=\"img.image.altText\" [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"> -->\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%;max-width: 20%; left: -20px\"\n [src]=\"getPrevImage(i)?.url\" [alt]=\"getPrevImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getPrevImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <img loading=\"lazy\"\n [ngClass]=\"{'full-width-image': style?.fullWidth, 'not-full-width': !style?.fullWidth, 'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n [simpoImageDirective]=\"style?.image\" class=\"d-block image-height-80vh\"\n [class]=\"data?.id+img.image.id\" [src]=\"img.image.url\" [alt]=\"img.image.altText\"\n [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"\n loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <!-- <img loading=\"lazy\" class=\"d-block position-relative\" style=\"width: 20%; right: -20px;\" [src]=\"img.image.url\" [alt]=\"img.image.altText\" [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"> -->\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%; max-width: 20%;right: -20px;\"\n [src]=\"getNextImage(i)?.url\" [alt]=\"getNextImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getNextImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth < 475\">\n <img loading=\"lazy\" class=\"d-block w-100 image-height-40vh\" [class]=\"data?.id+img.image.id\"\n [src]=\"img.image.url\" [alt]=\"img.image.altText\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"img?.image?.position\" loading=\"lazy\" [appImageEditor]=\"edit || false\"\n [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n </div>\n </div>\n </div>\n <a class=\"carousel-control-prev\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"prev\">\n <span class=\"carousel-control-prev-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_left</mat-icon>\n </span>\n <span class=\"sr-only\">Previous</span>\n\n </a>\n <a class=\"carousel-control-next\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"next\">\n <span class=\"carousel-control-next-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_right</mat-icon>\n </span>\n <span class=\"sr-only\">Next</span>\n\n </a>\n </div>\n </div>\n </div>\n\n </div>\n <ng-container *ngIf=\"style?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"style?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n</section>\n", styles: [".mb-1{margin-bottom:1.5rem!important}.previous-icon{width:65px;height:65px}.image-height-40vh{height:40vh}.full-width-image{width:100%;height:70vh}.previous-icon{background:#fff;border-radius:50%}.not-full-width{width:60%}.icon{color:#000!important;font-size:40px!important}.image-height-content{height:70vh}.image-height-screen{height:calc(90vh + -0px);min-height:0px!important}.image-screen{height:calc(110vh + -0px);min-height:0px!important}.img-screen-notext{height:calc(90vh + -0px);min-height:0px!important}.btn-primary{border:none}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.button-display{display:flex;gap:10px}.gap-15{gap:15px}.blur{filter:blur(5px)}@media only screen and (max-width: 475px){.previous-icon{width:100%;height:45px!important}.image-height-40vh{padding:0}}.mlr-0{margin-left:0;margin-right:0}li{list-style:none}.caratlane-indicator{display:flex;align-items:center;justify-content:center;background:#1e1f21b3;border-radius:18px;min-width:50px;height:32px;padding:0 16px;font-size:1rem;font-weight:600;color:#fff;margin:18px auto 0;box-shadow:0 2px 8px #151d481a;letter-spacing:1px}.caratlane-indicator .current{font-weight:700;font-size:1rem;color:#fff}.caratlane-indicator .divider,.caratlane-indicator .total{font-weight:500;color:#fff;opacity:.9;margin-left:2px}.caratlane-indicator{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;z-index:10;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:45px;text-align:center}@media (max-width: 768px){.caratlane-indicator{bottom:15px;padding:6px 12px;font-size:12px}}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: SimpoElementsModule }, { kind: "component", type: i2.SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i4.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i5.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "sectionId", "label"], outputs: ["valueChange"] }, { kind: "directive", type:
73
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ImageCarouselSectionComponent, isStandalone: true, selector: "simpo-image-carousel-section", inputs: { data: "data", index: "index", customClass: "customClass", nextComponentColor: "nextComponentColor", edit: "edit", delete: "delete" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section class=\"container-fluid\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\" class=\"total-container\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\">\n <div *ngFor=\"let text of data?.content?.inputText\" [simpoBackground]=\"style?.background\" [simpoCorner]=\"style?.corners\"\n [ngClass]=\"{'px-0': style?.fullWidth, 'image-screen': style?.layout?.fit === 'screen' && style?.fullWidth, 'img-screen-notext': style?.layout?.fit === 'screen' && style?.fullWidth && text.value === ''}\"\n [id]=\"data?.id\" [simpoOverlay]=\"style?.background\" [simpoBorder]=\"style?.border\" [simpoSpacing]=\"spacingLayout\">\n <div class=\"row mlr-0 w-100\" *ngIf=\"data?.content?.inputText?.length\" [id]=\"data?.id\"\n [simpoAnimation]=\"style?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <div class=\"heading-large content-side\" [simpoContentTitleSpace]=\"headingSpace\" *ngIf=\"edit || text.value\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n\n <div [id]=\"'carouselExampleCaptions'+data?.id\" class=\"carousel slide min-height-unset\" \n [ngClass]=\"{'mb-0 px-0 py-0': style?.fullWidth, 'mb-md-1 mb-sm-0 mb-lg-1': !style?.fullWidth}\">\n <!-- [simpoLayout]=\"style?.layout\" -->\n <div class=\"carousel-inner\">\n <!-- data-bs-ride=\"carousel\" -->\n <div class=\"carousel-item\" *ngFor=\"let img of content?.listItem?.data; let i = index\"\n [class.active]=\"i === 0\">\n <div class=\"row m-0\">\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth >= 475\">\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%;max-width: 20%; left: -20px ;position: fixed;\"\n [src]=\"getPrevImage(i)?.url\" [alt]=\"getPrevImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getPrevImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <img loading=\"lazy\"\n [ngClass]=\"{'full-width-image': style?.fullWidth, 'not-full-width': !style?.fullWidth, 'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n [simpoImageDirective]=\"style?.image\" class=\"d-block image-height-80vh\"\n [class]=\"data?.id+img.image.id\" [src]=\"img.image.url\" [alt]=\"img.image.altText\"\n [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"\n loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%; max-width: 20%;right: -20px;\"\n [src]=\"getNextImage(i)?.url\" [alt]=\"getNextImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getNextImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth < 475\">\n <img loading=\"lazy\" class=\"d-block w-100 image-height-40vh\" [class]=\"data?.id+img.image.id\"\n [src]=\"img.image.url\" [alt]=\"img.image.altText\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"img?.image?.position\" loading=\"lazy\" [appImageEditor]=\"edit || false\"\n [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n </div>\n </div>\n </div>\n <a class=\"carousel-control-prev\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"prev\">\n <span class=\"carousel-control-prev-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_left</mat-icon>\n </span>\n <span class=\"sr-only\">Previous</span>\n\n </a>\n <a class=\"carousel-control-next\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"next\">\n <span class=\"carousel-control-next-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_right</mat-icon>\n </span>\n <span class=\"sr-only\">Next</span>\n\n </a>\n </div>\n </div>\n </div>\n\n </div>\n <ng-container *ngIf=\"style?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"style?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n</section>\n", styles: [".mb-1{margin-bottom:1.5rem!important}.previous-icon{width:65px;height:65px}.image-height-40vh{height:40vh}.full-width-image{width:100%;height:70vh}.previous-icon{background:#fff;border-radius:50%}.not-full-width{width:60%}.icon{color:#000!important;font-size:40px!important}.image-height-content{height:70vh}.image-height-screen{height:calc(90vh + -0px);min-height:0px!important}.btn-primary{border:none}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.button-display{display:flex;gap:10px}.gap-15{gap:15px}.blur{filter:blur(5px)}@media only screen and (max-width: 475px){.previous-icon{width:100%;height:45px!important}.min-height-unset{min-height:unset!important}.image-height-40vh{padding:0}}.mlr-0{margin-left:0;margin-right:0}li{list-style:none}.caratlane-indicator{display:flex;align-items:center;justify-content:center;background:#1e1f21b3;border-radius:18px;min-width:50px;height:32px;padding:0 16px;font-size:1rem;font-weight:600;color:#fff;margin:18px auto 0;box-shadow:0 2px 8px #151d481a;letter-spacing:1px}.caratlane-indicator .current{font-weight:700;font-size:1rem;color:#fff}.caratlane-indicator .divider,.caratlane-indicator .total{font-weight:500;color:#fff;opacity:.9;margin-left:2px}.caratlane-indicator{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;z-index:10;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:45px;text-align:center}@media (max-width: 768px){.caratlane-indicator{bottom:15px;padding:6px 12px;font-size:12px}}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: SimpoElementsModule }, { kind: "component", type: i2.SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i4.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i5.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "sectionId", "label"], outputs: ["valueChange"] }, { kind: "directive", type:
74
74
  //directive
75
- 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: 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: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "directive", type: ContentTitleDirective, selector: "[simpoContentTitleSpace]", inputs: ["simpoContentTitleSpace"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData"] }, { kind: "directive", type: SpacingAroundDirective, selector: "[spacingAround]", inputs: ["spacingAround", "backgroundInfo"] }, { kind: "directive", type: SpacingDirective, selector: "[simpoSpacing]", inputs: ["simpoSpacing"] }] }); }
75
+ AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: ImageDirectiveDirective, selector: "[simpoImageDirective]", inputs: ["simpoImageDirective"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: ObjectPositionDirective, selector: "[simpoObjectPosition]", inputs: ["simpoObjectPosition"] }, { kind: "directive", type: ContentTitleDirective, selector: "[simpoContentTitleSpace]", inputs: ["simpoContentTitleSpace"] }, { kind: "directive", type: ImageEditorDirective, selector: "[appImageEditor]", inputs: ["appImageEditor", "imageData", "sectionId", "showIcon", "iconData"] }, { kind: "directive", type: SpacingAroundDirective, selector: "[spacingAround]", inputs: ["spacingAround", "backgroundInfo"] }, { kind: "directive", type: SpacingDirective, selector: "[simpoSpacing]", inputs: ["simpoSpacing"] }] }); }
76
76
  }
77
77
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImageCarouselSectionComponent, decorators: [{
78
78
  type: Component,
@@ -96,7 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
96
96
  ImageEditorDirective,
97
97
  SpacingAroundDirective,
98
98
  SpacingDirective,
99
- ], template: "<section class=\"container-fluid\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\" class=\"total-container\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\">\n <div *ngFor=\"let text of data?.content?.inputText\" [simpoBackground]=\"style?.background\" [simpoCorner]=\"style?.corners\"\n [ngClass]=\"{'px-0': style?.fullWidth, 'image-screen': style?.layout?.fit === 'screen' && style?.fullWidth, 'img-screen-notext': style?.layout?.fit === 'screen' && style?.fullWidth && text.value === ''}\"\n [id]=\"data?.id\" [simpoOverlay]=\"style?.background\" [simpoBorder]=\"style?.border\" [simpoSpacing]=\"spacingLayout\">\n <div class=\"row mlr-0 w-100\" *ngIf=\"data?.content?.inputText?.length\" [id]=\"data?.id\"\n [simpoAnimation]=\"style?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <div class=\"heading-large content-side\" [simpoContentTitleSpace]=\"headingSpace\" *ngIf=\"edit || text.value\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n\n <div [id]=\"'carouselExampleCaptions'+data?.id\" class=\"carousel slide\" [simpoLayout]=\"style?.layout\"\n [ngClass]=\"{'mb-0 px-0 py-0': style?.fullWidth, 'mb-md-1 mb-sm-0 mb-lg-1': !style?.fullWidth}\">\n <div class=\"carousel-inner\" data-bs-ride=\"carousel\">\n <!-- data-bs-ride=\"carousel\" -->\n <div class=\"carousel-item\" *ngFor=\"let img of content?.listItem?.data; let i = index\"\n [class.active]=\"i === 0\">\n <div class=\"row m-0\">\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth >= 475\">\n <!-- <img loading=\"lazy\" class=\"d-block position-relative\" style=\"width: 20%; left: -20px\" [src]=\"img.image.url\" [alt]=\"img.image.altText\" [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"> -->\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%;max-width: 20%; left: -20px\"\n [src]=\"getPrevImage(i)?.url\" [alt]=\"getPrevImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getPrevImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <img loading=\"lazy\"\n [ngClass]=\"{'full-width-image': style?.fullWidth, 'not-full-width': !style?.fullWidth, 'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n [simpoImageDirective]=\"style?.image\" class=\"d-block image-height-80vh\"\n [class]=\"data?.id+img.image.id\" [src]=\"img.image.url\" [alt]=\"img.image.altText\"\n [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"\n loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <!-- <img loading=\"lazy\" class=\"d-block position-relative\" style=\"width: 20%; right: -20px;\" [src]=\"img.image.url\" [alt]=\"img.image.altText\" [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"> -->\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%; max-width: 20%;right: -20px;\"\n [src]=\"getNextImage(i)?.url\" [alt]=\"getNextImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getNextImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth < 475\">\n <img loading=\"lazy\" class=\"d-block w-100 image-height-40vh\" [class]=\"data?.id+img.image.id\"\n [src]=\"img.image.url\" [alt]=\"img.image.altText\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"img?.image?.position\" loading=\"lazy\" [appImageEditor]=\"edit || false\"\n [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n </div>\n </div>\n </div>\n <a class=\"carousel-control-prev\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"prev\">\n <span class=\"carousel-control-prev-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_left</mat-icon>\n </span>\n <span class=\"sr-only\">Previous</span>\n\n </a>\n <a class=\"carousel-control-next\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"next\">\n <span class=\"carousel-control-next-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_right</mat-icon>\n </span>\n <span class=\"sr-only\">Next</span>\n\n </a>\n </div>\n </div>\n </div>\n\n </div>\n <ng-container *ngIf=\"style?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"style?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n</section>\n", styles: [".mb-1{margin-bottom:1.5rem!important}.previous-icon{width:65px;height:65px}.image-height-40vh{height:40vh}.full-width-image{width:100%;height:70vh}.previous-icon{background:#fff;border-radius:50%}.not-full-width{width:60%}.icon{color:#000!important;font-size:40px!important}.image-height-content{height:70vh}.image-height-screen{height:calc(90vh + -0px);min-height:0px!important}.image-screen{height:calc(110vh + -0px);min-height:0px!important}.img-screen-notext{height:calc(90vh + -0px);min-height:0px!important}.btn-primary{border:none}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.button-display{display:flex;gap:10px}.gap-15{gap:15px}.blur{filter:blur(5px)}@media only screen and (max-width: 475px){.previous-icon{width:100%;height:45px!important}.image-height-40vh{padding:0}}.mlr-0{margin-left:0;margin-right:0}li{list-style:none}.caratlane-indicator{display:flex;align-items:center;justify-content:center;background:#1e1f21b3;border-radius:18px;min-width:50px;height:32px;padding:0 16px;font-size:1rem;font-weight:600;color:#fff;margin:18px auto 0;box-shadow:0 2px 8px #151d481a;letter-spacing:1px}.caratlane-indicator .current{font-weight:700;font-size:1rem;color:#fff}.caratlane-indicator .divider,.caratlane-indicator .total{font-weight:500;color:#fff;opacity:.9;margin-left:2px}.caratlane-indicator{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;z-index:10;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:45px;text-align:center}@media (max-width: 768px){.caratlane-indicator{bottom:15px;padding:6px 12px;font-size:12px}}\n"] }]
99
+ ], template: "<section class=\"container-fluid\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\" class=\"total-container\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\">\n <div *ngFor=\"let text of data?.content?.inputText\" [simpoBackground]=\"style?.background\" [simpoCorner]=\"style?.corners\"\n [ngClass]=\"{'px-0': style?.fullWidth, 'image-screen': style?.layout?.fit === 'screen' && style?.fullWidth, 'img-screen-notext': style?.layout?.fit === 'screen' && style?.fullWidth && text.value === ''}\"\n [id]=\"data?.id\" [simpoOverlay]=\"style?.background\" [simpoBorder]=\"style?.border\" [simpoSpacing]=\"spacingLayout\">\n <div class=\"row mlr-0 w-100\" *ngIf=\"data?.content?.inputText?.length\" [id]=\"data?.id\"\n [simpoAnimation]=\"style?.animation\">\n <div *ngFor=\"let text of data?.content?.inputText\">\n <div class=\"heading-large content-side\" [simpoContentTitleSpace]=\"headingSpace\" *ngIf=\"edit || text.value\">\n <simpo-text-editor [(value)]=\"text.value\" [editable]=\"edit || false\"></simpo-text-editor>\n </div>\n </div>\n\n <div [id]=\"'carouselExampleCaptions'+data?.id\" class=\"carousel slide min-height-unset\" \n [ngClass]=\"{'mb-0 px-0 py-0': style?.fullWidth, 'mb-md-1 mb-sm-0 mb-lg-1': !style?.fullWidth}\">\n <!-- [simpoLayout]=\"style?.layout\" -->\n <div class=\"carousel-inner\">\n <!-- data-bs-ride=\"carousel\" -->\n <div class=\"carousel-item\" *ngFor=\"let img of content?.listItem?.data; let i = index\"\n [class.active]=\"i === 0\">\n <div class=\"row m-0\">\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth >= 475\">\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%;max-width: 20%; left: -20px ;position: fixed;\"\n [src]=\"getPrevImage(i)?.url\" [alt]=\"getPrevImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getPrevImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <img loading=\"lazy\"\n [ngClass]=\"{'full-width-image': style?.fullWidth, 'not-full-width': !style?.fullWidth, 'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n [simpoImageDirective]=\"style?.image\" class=\"d-block image-height-80vh\"\n [class]=\"data?.id+img.image.id\" [src]=\"img.image.url\" [alt]=\"img.image.altText\"\n [simpoCorner]=\"style?.corners\" [id]=\"data?.id\" [simpoObjectPosition]=\"img?.image?.position\"\n loading=\"lazy\" [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n <img loading=\"lazy\"\n [ngClass]=\"{'image-height-content': style?.layout?.fit === 'content', 'image-height-screen': style?.layout?.fit === 'screen'}\"\n *ngIf=\"!style?.fullWidth\" [simpoImageDirective]=\"style?.image\"\n class=\"d-block position-relative blur\"\n style=\"object-fit: cover !important;width: 100%; max-width: 20%;right: -20px;\"\n [src]=\"getNextImage(i)?.url\" [alt]=\"getNextImage(i)?.altText\" [simpoCorner]=\"style?.corners\"\n [id]=\"data?.id\" [simpoObjectPosition]=\"getNextImage(i)?.position\" loading=\"lazy\"\n [appImageEditor]=\"edit || false\" [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n <div class=\"col d-flex p-0\" *ngIf=\"screenWidth < 475\">\n <img loading=\"lazy\" class=\"d-block w-100 image-height-40vh\" [class]=\"data?.id+img.image.id\"\n [src]=\"img.image.url\" [alt]=\"img.image.altText\" [id]=\"data?.id\"\n [simpoObjectPosition]=\"img?.image?.position\" loading=\"lazy\" [appImageEditor]=\"edit || false\"\n [imageData]=\"img?.image\" [sectionId]=\"data?.id\">\n </div>\n </div>\n </div>\n </div>\n <a class=\"carousel-control-prev\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"prev\">\n <span class=\"carousel-control-prev-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_left</mat-icon>\n </span>\n <span class=\"sr-only\">Previous</span>\n\n </a>\n <a class=\"carousel-control-next\" [attr.data-bs-target]=\"'#carouselExampleCaptions'+data?.id\" role=\"button\" data-bs-slide=\"next\">\n <span class=\"carousel-control-next-icon previous-icon d-flex align-items-center justify-content-center\" aria-hidden=\"true\">\n <mat-icon class=\"icon d-flex align-items-center justify-content-center\">keyboard_arrow_right</mat-icon>\n </span>\n <span class=\"sr-only\">Next</span>\n\n </a>\n </div>\n </div>\n </div>\n\n </div>\n <ng-container *ngIf=\"style?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"style?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n</section>\n", styles: [".mb-1{margin-bottom:1.5rem!important}.previous-icon{width:65px;height:65px}.image-height-40vh{height:40vh}.full-width-image{width:100%;height:70vh}.previous-icon{background:#fff;border-radius:50%}.not-full-width{width:60%}.icon{color:#000!important;font-size:40px!important}.image-height-content{height:70vh}.image-height-screen{height:calc(90vh + -0px);min-height:0px!important}.btn-primary{border:none}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.total-container{position:relative;height:auto}.button-display{display:flex;gap:10px}.gap-15{gap:15px}.blur{filter:blur(5px)}@media only screen and (max-width: 475px){.previous-icon{width:100%;height:45px!important}.min-height-unset{min-height:unset!important}.image-height-40vh{padding:0}}.mlr-0{margin-left:0;margin-right:0}li{list-style:none}.caratlane-indicator{display:flex;align-items:center;justify-content:center;background:#1e1f21b3;border-radius:18px;min-width:50px;height:32px;padding:0 16px;font-size:1rem;font-weight:600;color:#fff;margin:18px auto 0;box-shadow:0 2px 8px #151d481a;letter-spacing:1px}.caratlane-indicator .current{font-weight:700;font-size:1rem;color:#fff}.caratlane-indicator .divider,.caratlane-indicator .total{font-weight:500;color:#fff;opacity:.9;margin-left:2px}.caratlane-indicator{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;z-index:10;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:45px;text-align:center}@media (max-width: 768px){.caratlane-indicator{bottom:15px;padding:6px 12px;font-size:12px}}\n"] }]
100
100
  }], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { data: [{
101
101
  type: Input
102
102
  }], index: [{
@@ -113,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
113
113
  type: HostListener,
114
114
  args: ['window:resize', ['$event']]
115
115
  }] } });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ltYWdlLWNhcm91c2VsLXNlY3Rpb24vaW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ltYWdlLWNhcm91c2VsLXNlY3Rpb24vaW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFNdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUtuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBSXJFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBR3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQStCckUsTUFBTSxPQUFPLDZCQUE4QixTQUFRLFdBQVc7SUFVNUQsZ0JBQWdCO0lBRWhCLFlBQ1UsYUFBNEI7UUFFcEMsS0FBSyxFQUFFLENBQUM7UUFGQSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQWN0QyxnQkFBVyxHQUFXLEdBQUcsQ0FBQztRQVh4QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUlELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7UUFDL0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQ25DLENBQUM7SUFJRCxhQUFhLENBQUMsS0FBYztRQUMxQixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUN2QyxDQUFDO0lBQ0gsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFpQixDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZix5Q0FBeUM7UUFDekMscUJBQXFCO1FBQ3JCLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBa0IsQ0FBQTtJQUMzRCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWE7UUFDeEIsTUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2SCxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDdEQsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFhO1FBQ3hCLE1BQU0sU0FBUyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxRSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDdEQsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsY0FBeUIsQ0FBQztJQUN0RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksTUFBTSxDQUFDLFVBQVUsSUFBSSxHQUFHO1lBQzFCLE9BQU07UUFFUixJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzNELENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7K0dBakVVLDZCQUE2QjttR0FBN0IsNkJBQTZCLGtVQ25FMUMsc3BOQXNGQSxtd0RENUNJLE9BQU8sMElBQ1AsbUJBQW1CLG9KQUNuQixZQUFZLDZWQUNaLG9CQUFvQixvV0FDcEIsbUJBQW1CO2dCQUduQixXQUFXO2dCQUNYLGtCQUFrQix5RkFDbEIsbUJBQW1CLDBHQUNuQixlQUFlLG1GQUNmLG1CQUFtQixtRkFDbkIsZUFBZSxtRkFDZixjQUFjLGdGQUNkLHVCQUF1QixtR0FDdkIsZ0JBQWdCLHFGQUNoQix1QkFBdUIsbUdBQ3ZCLHFCQUFxQix5R0FDckIsb0JBQW9CLDJJQUNwQixzQkFBc0IseUdBQ3RCLGdCQUFnQjs7NEZBS1AsNkJBQTZCO2tCQTdCekMsU0FBUzsrQkFDRSw4QkFBOEIsY0FDNUIsSUFBSSxXQUNQO3dCQUNQLE9BQU87d0JBQ1AsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUduQixXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLHVCQUF1Qjt3QkFDdkIsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNwQixzQkFBc0I7d0JBQ3RCLGdCQUFnQjtxQkFDakI7a0ZBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQW9CTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEltYWdlQ2Fyb3VzZWxTZWN0aW9uLFxuICBJbWFnZUNhcm91c2VsU2VjdGlvbkNvbnRlbnRNb2RlbCxcbiAgSW1hZ2VDYXJvdXNlbFNlY3Rpb25TdHlsZXNNb2RlbCxcbn0gZnJvbSAnLi9pbWFnZS1jYXJvdXNlbC5tb2RlbCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU2ltcG9FbGVtZW50c01vZHVsZSB9IGZyb20gJy4vLi4vLi4vZWxlbWVudHMvaW5kZXgnO1xuXG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhbm5lckNvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYmFubmVyLWNvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYnV0dG9uLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29sdW1uRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbHVtbi1kaXJlY3RpdmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRhaW5lckZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItZmlyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1hbGlnbm1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUZXh0QmFja2dyb3VuZERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS90ZXh0LWJhY2tncm91bmQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XG5pbXBvcnQgeyBTaW1wb0NvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4vLi4vLi4vY29tcG9uZW50cy9pbmRleCc7XG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vQmFzZVNlY3Rpb24nO1xuaW1wb3J0IHsgT2JqZWN0UG9zaXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtcG9zaXRpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRlbnRUaXRsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LXRpdGxlLXNwYWNpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNQQUNJTkcgfSBmcm9tICcuLi8uLi9zdHlsZXMvaW5kZXgnO1xuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCwgU3BhY2luZ01vZGVsIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcbmltcG9ydCB7IFRleHRFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW1hZ2VFZGl0b3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtZWRpdG9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTcGFjaW5nQXJvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctYXJvdW5kLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBTcGFjaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmcuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ltcG8taW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRJY29uLFxuICAgIFNpbXBvRWxlbWVudHNNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNpbXBvQ29tcG9uZW50TW9kdWxlLFxuICAgIFRleHRFZGl0b3JDb21wb25lbnQsXG5cblxuICAgIC8vZGlyZWN0aXZlXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXG4gICAgQm9yZGVyRGlyZWN0aXZlLFxuICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXG4gICAgQ29ybmVyRGlyZWN0aXZlLFxuICAgIEhvdmVyRGlyZWN0aXZlLFxuICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxuICAgIE92ZXJsYXlEaXJlY3RpdmUsXG4gICAgT2JqZWN0UG9zaXRpb25EaXJlY3RpdmUsXG4gICAgQ29udGVudFRpdGxlRGlyZWN0aXZlLFxuICAgIEltYWdlRWRpdG9yRGlyZWN0aXZlLFxuICAgIFNwYWNpbmdBcm91bmREaXJlY3RpdmUsXG4gICAgU3BhY2luZ0RpcmVjdGl2ZSxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLWNhcm91c2VsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vaW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbi5jb21wb25lbnQuY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VDYXJvdXNlbFNlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGRhdGE/OiBJbWFnZUNhcm91c2VsU2VjdGlvbjtcbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIG5leHRDb21wb25lbnRDb2xvcj86IEJhY2tncm91bmRNb2RlbDtcbiAgY29udGVudD86IEltYWdlQ2Fyb3VzZWxTZWN0aW9uQ29udGVudE1vZGVsO1xuICBzdHlsZT86IEltYWdlQ2Fyb3VzZWxTZWN0aW9uU3R5bGVzTW9kZWw7XG4gIEBJbnB1dCgpIGVkaXQ/OiBib29sZWFuO1xuICBASW5wdXQoKSBkZWxldGU/OiBib29sZWFuO1xuICAvLyBjb250ZW50OiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XG4gIH1cblxuXG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xuICAgIHRoaXMuc3R5bGUgPSB0aGlzLmRhdGE/LnN0eWxlcztcbiAgICB0aGlzLmRlbGV0ZVNlbGVjdGVkID0gdGhpcy5kZWxldGVcbiAgfVxuXG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSA0NzU7XG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBnZXRTY3JlZW5TaXplKGV2ZW50PzogbnVtYmVyKSB7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gICAgfVxuICB9XG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZT8ubGF5b3V0IH0gYXMgTGF5T3V0TW9kZWw7XG4gIH1cblxuICBnZXQgc3BhY2luZ0xheW91dCgpIHtcbiAgICAvLyBpZih0aGlzLmRhdGE/LnN0eWxlcz8uYm9yZGVyTGVzc0ltYWdlKVxuICAgIC8vICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGU/LmxheW91dD8uc3BhY2luZyB9IGFzIFNwYWNpbmdNb2RlbFxuICB9XG5cbiAgZ2V0UHJldkltYWdlKGluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBwcmV2SW5kZXggPSAoaW5kZXggLSAxICsgKHRoaXMuY29udGVudD8ubGlzdEl0ZW0/LmRhdGEubGVuZ3RoIHx8IDApKSAlICh0aGlzLmNvbnRlbnQ/Lmxpc3RJdGVtLmRhdGEubGVuZ3RoIHx8IDApO1xuICAgIHJldHVybiB0aGlzLmNvbnRlbnQ/Lmxpc3RJdGVtLmRhdGFbcHJldkluZGV4XS5pbWFnZTtcbiAgfVxuXG4gIGdldE5leHRJbWFnZShpbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgbmV4dEluZGV4ID0gKGluZGV4ICsgMSkgJSAodGhpcy5jb250ZW50Py5saXN0SXRlbS5kYXRhLmxlbmd0aCB8fCAwKTtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50Py5saXN0SXRlbS5kYXRhW25leHRJbmRleF0uaW1hZ2U7XG4gIH1cbiAgZ2V0IGhlYWRpbmdTcGFjZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdHlsZT8ubGF5b3V0LmhlYWRpbmdTcGFjaW5nIGFzIFNQQUNJTkc7XG4gIH1cblxuICBlZGl0U2VjdGlvbigpIHtcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggPD0gNDc1KVxuICAgICAgcmV0dXJuXG5cbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7IGRhdGE6IHRoaXMuZGF0YSB9KTtcbiAgICB9LCAxMDApO1xuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZFwiIFtpZF09XCJkYXRhPy5pZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCIgY2xhc3M9XCJ0b3RhbC1jb250YWluZXJcIlxuICBbYXR0ci5zdHlsZV09XCJjdXN0b21DbGFzc1wiPlxuICA8ZGl2IFtzcGFjaW5nQXJvdW5kXT1cInN0eWxlc0xheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiPlxuICAgIDxkaXYgKm5nRm9yPVwibGV0IHRleHQgb2YgZGF0YT8uY29udGVudD8uaW5wdXRUZXh0XCIgW3NpbXBvQmFja2dyb3VuZF09XCJzdHlsZT8uYmFja2dyb3VuZFwiIFtzaW1wb0Nvcm5lcl09XCJzdHlsZT8uY29ybmVyc1wiXG4gICAgICBbbmdDbGFzc109XCJ7J3B4LTAnOiBzdHlsZT8uZnVsbFdpZHRoLCAnaW1hZ2Utc2NyZWVuJzogc3R5bGU/LmxheW91dD8uZml0ID09PSAnc2NyZWVuJyAmJiBzdHlsZT8uZnVsbFdpZHRoLCAnaW1nLXNjcmVlbi1ub3RleHQnOiBzdHlsZT8ubGF5b3V0Py5maXQgPT09ICdzY3JlZW4nICYmIHN0eWxlPy5mdWxsV2lkdGggJiYgdGV4dC52YWx1ZSA9PT0gJyd9XCJcbiAgICAgIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb092ZXJsYXldPVwic3R5bGU/LmJhY2tncm91bmRcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGU/LmJvcmRlclwiIFtzaW1wb1NwYWNpbmddPVwic3BhY2luZ0xheW91dFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJvdyBtbHItMCB3LTEwMFwiICpuZ0lmPVwiZGF0YT8uY29udGVudD8uaW5wdXRUZXh0Py5sZW5ndGhcIiBbaWRdPVwiZGF0YT8uaWRcIlxuICAgICAgICBbc2ltcG9BbmltYXRpb25dPVwic3R5bGU/LmFuaW1hdGlvblwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0ZXh0IG9mIGRhdGE/LmNvbnRlbnQ/LmlucHV0VGV4dFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLWxhcmdlIGNvbnRlbnQtc2lkZVwiIFtzaW1wb0NvbnRlbnRUaXRsZVNwYWNlXT1cImhlYWRpbmdTcGFjZVwiICpuZ0lmPVwiZWRpdCB8fCB0ZXh0LnZhbHVlXCI+XG4gICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwidGV4dC52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICA8ZGl2IFtpZF09XCInY2Fyb3VzZWxFeGFtcGxlQ2FwdGlvbnMnK2RhdGE/LmlkXCIgY2xhc3M9XCJjYXJvdXNlbCBzbGlkZVwiIFtzaW1wb0xheW91dF09XCJzdHlsZT8ubGF5b3V0XCJcbiAgICAgICAgIFtuZ0NsYXNzXT1cInsnbWItMCBweC0wIHB5LTAnOiBzdHlsZT8uZnVsbFdpZHRoLCAnbWItbWQtMSBtYi1zbS0wIG1iLWxnLTEnOiAhc3R5bGU/LmZ1bGxXaWR0aH1cIj5cbiAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1pbm5lclwiIGRhdGEtYnMtcmlkZT1cImNhcm91c2VsXCI+XG4gICAgICAgICAgPCEtLSBkYXRhLWJzLXJpZGU9XCJjYXJvdXNlbFwiIC0tPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWl0ZW1cIiAqbmdGb3I9XCJsZXQgaW1nIG9mIGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpID09PSAwXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbS0wXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbCBkLWZsZXggcC0wXCIgKm5nSWY9XCJzY3JlZW5XaWR0aCA+PSA0NzVcIj5cbiAgICAgICAgICAgICAgICAgIDwhLS0gPGltZyBsb2FkaW5nPVwibGF6eVwiICBjbGFzcz1cImQtYmxvY2sgcG9zaXRpb24tcmVsYXRpdmVcIiBzdHlsZT1cIndpZHRoOiAyMCU7IGxlZnQ6IC0yMHB4XCIgW3NyY109XCJpbWcuaW1hZ2UudXJsXCIgW2FsdF09XCJpbWcuaW1hZ2UuYWx0VGV4dFwiIFtzaW1wb0Nvcm5lcl09XCJzdHlsZT8uY29ybmVyc1wiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb09iamVjdFBvc2l0aW9uXT1cImltZz8uaW1hZ2U/LnBvc2l0aW9uXCI+IC0tPlxuICAgICAgICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaW1hZ2UtaGVpZ2h0LWNvbnRlbnQnOiBzdHlsZT8ubGF5b3V0Py5maXQgPT09ICdjb250ZW50JywgJ2ltYWdlLWhlaWdodC1zY3JlZW4nOiBzdHlsZT8ubGF5b3V0Py5maXQgPT09ICdzY3JlZW4nfVwiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIXN0eWxlPy5mdWxsV2lkdGhcIiBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZT8uaW1hZ2VcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImQtYmxvY2sgcG9zaXRpb24tcmVsYXRpdmUgYmx1clwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwib2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDt3aWR0aDogMTAwJTttYXgtd2lkdGg6IDIwJTsgbGVmdDogLTIwcHhcIlxuICAgICAgICAgICAgICAgICAgICBbc3JjXT1cImdldFByZXZJbWFnZShpKT8udXJsXCIgW2FsdF09XCJnZXRQcmV2SW1hZ2UoaSk/LmFsdFRleHRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIlxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJnZXRQcmV2SW1hZ2UoaSk/LnBvc2l0aW9uXCIgbG9hZGluZz1cImxhenlcIlxuICAgICAgICAgICAgICAgICAgICBbYXBwSW1hZ2VFZGl0b3JdPVwiZWRpdCB8fCBmYWxzZVwiIFtpbWFnZURhdGFdPVwiaW1nPy5pbWFnZVwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2Z1bGwtd2lkdGgtaW1hZ2UnOiBzdHlsZT8uZnVsbFdpZHRoLCAnbm90LWZ1bGwtd2lkdGgnOiAhc3R5bGU/LmZ1bGxXaWR0aCwgJ2ltYWdlLWhlaWdodC1jb250ZW50Jzogc3R5bGU/LmxheW91dD8uZml0ID09PSAnY29udGVudCcsICdpbWFnZS1oZWlnaHQtc2NyZWVuJzogc3R5bGU/LmxheW91dD8uZml0ID09PSAnc2NyZWVuJ31cIlxuICAgICAgICAgICAgICAgICAgICBbc2ltcG9JbWFnZURpcmVjdGl2ZV09XCJzdHlsZT8uaW1hZ2VcIiBjbGFzcz1cImQtYmxvY2sgaW1hZ2UtaGVpZ2h0LTgwdmhcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiZGF0YT8uaWQraW1nLmltYWdlLmlkXCIgW3NyY109XCJpbWcuaW1hZ2UudXJsXCIgW2FsdF09XCJpbWcuaW1hZ2UuYWx0VGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIFtzaW1wb0Nvcm5lcl09XCJzdHlsZT8uY29ybmVyc1wiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb09iamVjdFBvc2l0aW9uXT1cImltZz8uaW1hZ2U/LnBvc2l0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIiBbYXBwSW1hZ2VFZGl0b3JdPVwiZWRpdCB8fCBmYWxzZVwiIFtpbWFnZURhdGFdPVwiaW1nPy5pbWFnZVwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIj5cbiAgICAgICAgICAgICAgICAgIDwhLS0gPGltZyBsb2FkaW5nPVwibGF6eVwiICBjbGFzcz1cImQtYmxvY2sgcG9zaXRpb24tcmVsYXRpdmVcIiBzdHlsZT1cIndpZHRoOiAyMCU7IHJpZ2h0OiAtMjBweDtcIiBbc3JjXT1cImltZy5pbWFnZS51cmxcIiBbYWx0XT1cImltZy5pbWFnZS5hbHRUZXh0XCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiaW1nPy5pbWFnZT8ucG9zaXRpb25cIj4gLS0+XG4gICAgICAgICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydpbWFnZS1oZWlnaHQtY29udGVudCc6IHN0eWxlPy5sYXlvdXQ/LmZpdCA9PT0gJ2NvbnRlbnQnLCAnaW1hZ2UtaGVpZ2h0LXNjcmVlbic6IHN0eWxlPy5sYXlvdXQ/LmZpdCA9PT0gJ3NjcmVlbid9XCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhc3R5bGU/LmZ1bGxXaWR0aFwiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlPy5pbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZC1ibG9jayBwb3NpdGlvbi1yZWxhdGl2ZSBibHVyXCJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O3dpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDIwJTtyaWdodDogLTIwcHg7XCJcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJnZXROZXh0SW1hZ2UoaSk/LnVybFwiIFthbHRdPVwiZ2V0TmV4dEltYWdlKGkpPy5hbHRUZXh0XCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiZ2V0TmV4dEltYWdlKGkpPy5wb3NpdGlvblwiIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgW2FwcEltYWdlRWRpdG9yXT1cImVkaXQgfHwgZmFsc2VcIiBbaW1hZ2VEYXRhXT1cImltZz8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbCBkLWZsZXggcC0wXCIgKm5nSWY9XCJzY3JlZW5XaWR0aCA8IDQ3NVwiPlxuICAgICAgICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIGNsYXNzPVwiZC1ibG9jayB3LTEwMCBpbWFnZS1oZWlnaHQtNDB2aFwiIFtjbGFzc109XCJkYXRhPy5pZCtpbWcuaW1hZ2UuaWRcIlxuICAgICAgICAgICAgICAgICAgICBbc3JjXT1cImltZy5pbWFnZS51cmxcIiBbYWx0XT1cImltZy5pbWFnZS5hbHRUZXh0XCIgW2lkXT1cImRhdGE/LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiaW1nPy5pbWFnZT8ucG9zaXRpb25cIiBsb2FkaW5nPVwibGF6eVwiIFthcHBJbWFnZUVkaXRvcl09XCJlZGl0IHx8IGZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgW2ltYWdlRGF0YV09XCJpbWc/LmltYWdlXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxhIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2XCIgW2F0dHIuZGF0YS1icy10YXJnZXRdPVwiJyNjYXJvdXNlbEV4YW1wbGVDYXB0aW9ucycrZGF0YT8uaWRcIiByb2xlPVwiYnV0dG9uXCIgZGF0YS1icy1zbGlkZT1cInByZXZcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24gcHJldmlvdXMtaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5rZXlib2FyZF9hcnJvd19sZWZ0PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlByZXZpb3VzPC9zcGFuPlxuXG4gICAgICAgICAgPC9hPlxuICAgICAgICAgIDxhIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1uZXh0XCIgW2F0dHIuZGF0YS1icy10YXJnZXRdPVwiJyNjYXJvdXNlbEV4YW1wbGVDYXB0aW9ucycrZGF0YT8uaWRcIiByb2xlPVwiYnV0dG9uXCIgZGF0YS1icy1zbGlkZT1cIm5leHRcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24gcHJldmlvdXMtaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5rZXlib2FyZF9hcnJvd19yaWdodDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5OZXh0PC9zcGFuPlxuXG4gICAgICAgICAgPC9hPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gIDwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGU/LmRldmlkZXI/LmRpc3BsYXlcIj5cbiAgICA8c2ltcG8tc3ZnLWRpdmlkZXIgW2RpdmlkZXJUeXBlXT1cInN0eWxlPy5kZXZpZGVyPy5kZXZpZGVyVHlwZVwiXG4gICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XG4gICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwic2hvd0RlbGV0ZVwiIFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZGVsZXRlfVwiPlxuICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cbiAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ltYWdlLWNhcm91c2VsLXNlY3Rpb24vaW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2ltYWdlLWNhcm91c2VsLXNlY3Rpb24vaW1hZ2UtY2Fyb3VzZWwtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFNdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUtuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBSXJFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sV0FB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ImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBJbWFnZUNhcm91c2VsU2VjdGlvbixcbiAgSW1hZ2VDYXJvdXNlbFNlY3Rpb25Db250ZW50TW9kZWwsXG4gIEltYWdlQ2Fyb3VzZWxTZWN0aW9uU3R5bGVzTW9kZWwsXG59IGZyb20gJy4vaW1hZ2UtY2Fyb3VzZWwubW9kZWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNpbXBvRWxlbWVudHNNb2R1bGUgfSBmcm9tICcuLy4uLy4uL2VsZW1lbnRzL2luZGV4JztcblxuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtZml0LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYW5uZXJDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Jhbm5lci1jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnV0dG9uRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2J1dHRvbi1kaXJlY3RpdmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2x1bW4tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb250YWluZXJGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGFpbmVyLWZpci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgc2ltcG9Db25ldGVuQWxpZ25tZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbnRlbnQtYWxpZ25tZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTaW1wb0Zvb3RlckxheW91dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9mb290ZXItbGF5b3V0LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUG9zaXRpb25MYXlvdXREaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvcG9zaXRpb24tbGF5b3V0LWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVGV4dEJhY2tncm91bmREaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvdGV4dC1iYWNrZ3JvdW5kLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2ltcG9Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuLy4uLy4uL2NvbXBvbmVudHMvaW5kZXgnO1xuaW1wb3J0IEJhc2VTZWN0aW9uIGZyb20gJy4uL0Jhc2VTZWN0aW9uJztcbmltcG9ydCB7IE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLXBvc2l0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb250ZW50VGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC10aXRsZS1zcGFjaW5nLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTUEFDSU5HIH0gZnJvbSAnLi4vLi4vc3R5bGVzL2luZGV4JztcbmltcG9ydCB7IEJhY2tncm91bmRNb2RlbCwgTGF5T3V0TW9kZWwsIFNwYWNpbmdNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlRWRpdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2ltYWdlLWVkaXRvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWFyb3VuZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgU3BhY2luZ0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpbXBvLWltYWdlLWNhcm91c2VsLXNlY3Rpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0SWNvbixcbiAgICBTaW1wb0VsZW1lbnRzTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBTaW1wb0NvbXBvbmVudE1vZHVsZSxcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxuXG5cbiAgICAvL2RpcmVjdGl2ZVxuICAgIEFuaW1hdGlvbkRpcmVjdGl2ZSxcbiAgICBCYWNrZ3JvdW5kRGlyZWN0aXZlLFxuICAgIEJvcmRlckRpcmVjdGl2ZSxcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxuICAgIENvcm5lckRpcmVjdGl2ZSxcbiAgICBIb3ZlckRpcmVjdGl2ZSxcbiAgICBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSxcbiAgICBPdmVybGF5RGlyZWN0aXZlLFxuICAgIE9iamVjdFBvc2l0aW9uRGlyZWN0aXZlLFxuICAgIENvbnRlbnRUaXRsZURpcmVjdGl2ZSxcbiAgICBJbWFnZUVkaXRvckRpcmVjdGl2ZSxcbiAgICBTcGFjaW5nQXJvdW5kRGlyZWN0aXZlLFxuICAgIFNwYWNpbmdEaXJlY3RpdmUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWFnZS1jYXJvdXNlbC1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2ltYWdlLWNhcm91c2VsLXNlY3Rpb24uY29tcG9uZW50LmNzcycsXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlQ2Fyb3VzZWxTZWN0aW9uQ29tcG9uZW50IGV4dGVuZHMgQmFzZVNlY3Rpb24gaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBkYXRhPzogSW1hZ2VDYXJvdXNlbFNlY3Rpb247XG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcblxuICBASW5wdXQoKSBuZXh0Q29tcG9uZW50Q29sb3I/OiBCYWNrZ3JvdW5kTW9kZWw7XG4gIGNvbnRlbnQ/OiBJbWFnZUNhcm91c2VsU2VjdGlvbkNvbnRlbnRNb2RlbDtcbiAgc3R5bGU/OiBJbWFnZUNhcm91c2VsU2VjdGlvblN0eWxlc01vZGVsO1xuICBASW5wdXQoKSBlZGl0PzogYm9vbGVhbjtcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcbiAgLy8gY29udGVudDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZ2V0U2NyZWVuU2l6ZSgpO1xuICB9XG5cblxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcbiAgICB0aGlzLnN0eWxlID0gdGhpcy5kYXRhPy5zdHlsZXM7XG4gICAgdGhpcy5kZWxldGVTZWxlY3RlZCA9IHRoaXMuZGVsZXRlXG4gIH1cblxuICBzY3JlZW5XaWR0aDogbnVtYmVyID0gNDc1O1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86IG51bWJlcikge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xuICAgIH1cbiAgfVxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xuICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGU/LmxheW91dCB9IGFzIExheU91dE1vZGVsO1xuICB9XG5cbiAgZ2V0IHNwYWNpbmdMYXlvdXQoKSB7XG4gICAgLy8gaWYodGhpcy5kYXRhPy5zdHlsZXM/LmJvcmRlckxlc3NJbWFnZSlcbiAgICAvLyAgIHJldHVybiB1bmRlZmluZWRcbiAgICByZXR1cm4geyAuLi50aGlzLnN0eWxlPy5sYXlvdXQ/LnNwYWNpbmcgfSBhcyBTcGFjaW5nTW9kZWxcbiAgfVxuXG4gIGdldFByZXZJbWFnZShpbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgcHJldkluZGV4ID0gKGluZGV4IC0gMSArICh0aGlzLmNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhLmxlbmd0aCB8fCAwKSkgJSAodGhpcy5jb250ZW50Py5saXN0SXRlbS5kYXRhLmxlbmd0aCB8fCAwKTtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50Py5saXN0SXRlbS5kYXRhW3ByZXZJbmRleF0uaW1hZ2U7XG4gIH1cblxuICBnZXROZXh0SW1hZ2UoaW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IG5leHRJbmRleCA9IChpbmRleCArIDEpICUgKHRoaXMuY29udGVudD8ubGlzdEl0ZW0uZGF0YS5sZW5ndGggfHwgMCk7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudD8ubGlzdEl0ZW0uZGF0YVtuZXh0SW5kZXhdLmltYWdlO1xuICB9XG4gIGdldCBoZWFkaW5nU3BhY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LmxheW91dC5oZWFkaW5nU3BhY2luZyBhcyBTUEFDSU5HO1xuICB9XG5cbiAgZWRpdFNlY3Rpb24oKSB7XG4gICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSlcbiAgICAgIHJldHVyblxuXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoeyBkYXRhOiB0aGlzLmRhdGEgfSk7XG4gICAgfSwgMTAwKTtcbiAgfVxufVxuIiwiPHNlY3Rpb24gY2xhc3M9XCJjb250YWluZXItZmx1aWRcIiBbaWRdPVwiZGF0YT8uaWRcIiBzaW1wb0hvdmVyIChob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCJcbiAgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cbiAgPGRpdiBbc3BhY2luZ0Fyb3VuZF09XCJzdHlsZXNMYXlvdXRcIiBbaWRdPVwiZGF0YT8uaWRcIj5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0ZXh0IG9mIGRhdGE/LmNvbnRlbnQ/LmlucHV0VGV4dFwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGU/LmJhY2tncm91bmRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIlxuICAgICAgW25nQ2xhc3NdPVwieydweC0wJzogc3R5bGU/LmZ1bGxXaWR0aCwgJ2ltYWdlLXNjcmVlbic6IHN0eWxlPy5sYXlvdXQ/LmZpdCA9PT0gJ3NjcmVlbicgJiYgc3R5bGU/LmZ1bGxXaWR0aCwgJ2ltZy1zY3JlZW4tbm90ZXh0Jzogc3R5bGU/LmxheW91dD8uZml0ID09PSAnc2NyZWVuJyAmJiBzdHlsZT8uZnVsbFdpZHRoICYmIHRleHQudmFsdWUgPT09ICcnfVwiXG4gICAgICBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9PdmVybGF5XT1cInN0eWxlPy5iYWNrZ3JvdW5kXCIgW3NpbXBvQm9yZGVyXT1cInN0eWxlPy5ib3JkZXJcIiBbc2ltcG9TcGFjaW5nXT1cInNwYWNpbmdMYXlvdXRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbWxyLTAgdy0xMDBcIiAqbmdJZj1cImRhdGE/LmNvbnRlbnQ/LmlucHV0VGV4dD8ubGVuZ3RoXCIgW2lkXT1cImRhdGE/LmlkXCJcbiAgICAgICAgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlPy5hbmltYXRpb25cIj5cbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdGV4dCBvZiBkYXRhPy5jb250ZW50Py5pbnB1dFRleHRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZy1sYXJnZSBjb250ZW50LXNpZGVcIiBbc2ltcG9Db250ZW50VGl0bGVTcGFjZV09XCJoZWFkaW5nU3BhY2VcIiAqbmdJZj1cImVkaXQgfHwgdGV4dC52YWx1ZVwiPlxuICAgICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cInRleHQudmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgPGRpdiBbaWRdPVwiJ2Nhcm91c2VsRXhhbXBsZUNhcHRpb25zJytkYXRhPy5pZFwiIGNsYXNzPVwiY2Fyb3VzZWwgc2xpZGUgbWluLWhlaWdodC11bnNldFwiIFxuICAgICAgICAgW25nQ2xhc3NdPVwieydtYi0wIHB4LTAgcHktMCc6IHN0eWxlPy5mdWxsV2lkdGgsICdtYi1tZC0xIG1iLXNtLTAgbWItbGctMSc6ICFzdHlsZT8uZnVsbFdpZHRofVwiPlxuICAgICAgICAgPCEtLSBbc2ltcG9MYXlvdXRdPVwic3R5bGU/LmxheW91dFwiIC0tPlxuICAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWlubmVyXCI+XG4gICAgICAgICAgPCEtLSBkYXRhLWJzLXJpZGU9XCJjYXJvdXNlbFwiIC0tPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWl0ZW1cIiAqbmdGb3I9XCJsZXQgaW1nIG9mIGNvbnRlbnQ/Lmxpc3RJdGVtPy5kYXRhOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpID09PSAwXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbS0wXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbCBkLWZsZXggcC0wXCIgKm5nSWY9XCJzY3JlZW5XaWR0aCA+PSA0NzVcIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2ltYWdlLWhlaWdodC1jb250ZW50Jzogc3R5bGU/LmxheW91dD8uZml0ID09PSAnY29udGVudCcsICdpbWFnZS1oZWlnaHQtc2NyZWVuJzogc3R5bGU/LmxheW91dD8uZml0ID09PSAnc2NyZWVuJ31cIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFzdHlsZT8uZnVsbFdpZHRoXCIgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGU/LmltYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkLWJsb2NrIHBvc2l0aW9uLXJlbGF0aXZlIGJsdXJcIlxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIm9iamVjdC1maXQ6IGNvdmVyICFpbXBvcnRhbnQ7d2lkdGg6IDEwMCU7bWF4LXdpZHRoOiAyMCU7IGxlZnQ6IC0yMHB4IDtwb3NpdGlvbjogZml4ZWQ7XCJcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJnZXRQcmV2SW1hZ2UoaSk/LnVybFwiIFthbHRdPVwiZ2V0UHJldkltYWdlKGkpPy5hbHRUZXh0XCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiZ2V0UHJldkltYWdlKGkpPy5wb3NpdGlvblwiIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgW2FwcEltYWdlRWRpdG9yXT1cImVkaXQgfHwgZmFsc2VcIiBbaW1hZ2VEYXRhXT1cImltZz8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydmdWxsLXdpZHRoLWltYWdlJzogc3R5bGU/LmZ1bGxXaWR0aCwgJ25vdC1mdWxsLXdpZHRoJzogIXN0eWxlPy5mdWxsV2lkdGgsICdpbWFnZS1oZWlnaHQtY29udGVudCc6IHN0eWxlPy5sYXlvdXQ/LmZpdCA9PT0gJ2NvbnRlbnQnLCAnaW1hZ2UtaGVpZ2h0LXNjcmVlbic6IHN0eWxlPy5sYXlvdXQ/LmZpdCA9PT0gJ3NjcmVlbid9XCJcbiAgICAgICAgICAgICAgICAgICAgW3NpbXBvSW1hZ2VEaXJlY3RpdmVdPVwic3R5bGU/LmltYWdlXCIgY2xhc3M9XCJkLWJsb2NrIGltYWdlLWhlaWdodC04MHZoXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImRhdGE/LmlkK2ltZy5pbWFnZS5pZFwiIFtzcmNdPVwiaW1nLmltYWdlLnVybFwiIFthbHRdPVwiaW1nLmltYWdlLmFsdFRleHRcIlxuICAgICAgICAgICAgICAgICAgICBbc2ltcG9Db3JuZXJdPVwic3R5bGU/LmNvcm5lcnNcIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9PYmplY3RQb3NpdGlvbl09XCJpbWc/LmltYWdlPy5wb3NpdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCIgW2FwcEltYWdlRWRpdG9yXT1cImVkaXQgfHwgZmFsc2VcIiBbaW1hZ2VEYXRhXT1cImltZz8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydpbWFnZS1oZWlnaHQtY29udGVudCc6IHN0eWxlPy5sYXlvdXQ/LmZpdCA9PT0gJ2NvbnRlbnQnLCAnaW1hZ2UtaGVpZ2h0LXNjcmVlbic6IHN0eWxlPy5sYXlvdXQ/LmZpdCA9PT0gJ3NjcmVlbid9XCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhc3R5bGU/LmZ1bGxXaWR0aFwiIFtzaW1wb0ltYWdlRGlyZWN0aXZlXT1cInN0eWxlPy5pbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZC1ibG9jayBwb3NpdGlvbi1yZWxhdGl2ZSBibHVyXCJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O3dpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDIwJTtyaWdodDogLTIwcHg7XCJcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJnZXROZXh0SW1hZ2UoaSk/LnVybFwiIFthbHRdPVwiZ2V0TmV4dEltYWdlKGkpPy5hbHRUZXh0XCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlPy5jb3JuZXJzXCJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiZ2V0TmV4dEltYWdlKGkpPy5wb3NpdGlvblwiIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgW2FwcEltYWdlRWRpdG9yXT1cImVkaXQgfHwgZmFsc2VcIiBbaW1hZ2VEYXRhXT1cImltZz8uaW1hZ2VcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbCBkLWZsZXggcC0wXCIgKm5nSWY9XCJzY3JlZW5XaWR0aCA8IDQ3NVwiPlxuICAgICAgICAgICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIGNsYXNzPVwiZC1ibG9jayB3LTEwMCBpbWFnZS1oZWlnaHQtNDB2aFwiIFtjbGFzc109XCJkYXRhPy5pZCtpbWcuaW1hZ2UuaWRcIlxuICAgICAgICAgICAgICAgICAgICBbc3JjXT1cImltZy5pbWFnZS51cmxcIiBbYWx0XT1cImltZy5pbWFnZS5hbHRUZXh0XCIgW2lkXT1cImRhdGE/LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgW3NpbXBvT2JqZWN0UG9zaXRpb25dPVwiaW1nPy5pbWFnZT8ucG9zaXRpb25cIiBsb2FkaW5nPVwibGF6eVwiIFthcHBJbWFnZUVkaXRvcl09XCJlZGl0IHx8IGZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgW2ltYWdlRGF0YV09XCJpbWc/LmltYWdlXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxhIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2XCIgW2F0dHIuZGF0YS1icy10YXJnZXRdPVwiJyNjYXJvdXNlbEV4YW1wbGVDYXB0aW9ucycrZGF0YT8uaWRcIiByb2xlPVwiYnV0dG9uXCIgZGF0YS1icy1zbGlkZT1cInByZXZcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24gcHJldmlvdXMtaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5rZXlib2FyZF9hcnJvd19sZWZ0PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlByZXZpb3VzPC9zcGFuPlxuXG4gICAgICAgICAgPC9hPlxuICAgICAgICAgIDxhIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1uZXh0XCIgW2F0dHIuZGF0YS1icy10YXJnZXRdPVwiJyNjYXJvdXNlbEV4YW1wbGVDYXB0aW9ucycrZGF0YT8uaWRcIiByb2xlPVwiYnV0dG9uXCIgZGF0YS1icy1zbGlkZT1cIm5leHRcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24gcHJldmlvdXMtaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5rZXlib2FyZF9hcnJvd19yaWdodDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5OZXh0PC9zcGFuPlxuXG4gICAgICAgICAgPC9hPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gIDwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGU/LmRldmlkZXI/LmRpc3BsYXlcIj5cbiAgICA8c2ltcG8tc3ZnLWRpdmlkZXIgW2RpdmlkZXJUeXBlXT1cInN0eWxlPy5kZXZpZGVyPy5kZXZpZGVyVHlwZVwiXG4gICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XG4gICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwic2hvd0RlbGV0ZVwiIFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZGVsZXRlfVwiPlxuICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cbiAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=