simpo-component-library 3.7.4 → 3.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/esm2022/lib/components/delete-hover-element/delete-hover-element.component.mjs +3 -3
- package/esm2022/lib/components/deprecated-section/deprecated-section.component.mjs +1 -1
- package/esm2022/lib/components/document/document.component.mjs +3 -3
- package/esm2022/lib/components/image-loading/image-loading.component.mjs +3 -3
- package/esm2022/lib/components/payment-details/payment-details.component.mjs +3 -3
- package/esm2022/lib/constants/business.constant.mjs +1 -1
- package/esm2022/lib/directive/alignment.directive.mjs +1 -1
- package/esm2022/lib/directive/blur-content.directive.mjs +1 -1
- package/esm2022/lib/directive/borderlessImage.directive.mjs +1 -1
- package/esm2022/lib/directive/button-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/button-editor.directive.mjs +1 -1
- package/esm2022/lib/directive/color.directive.mjs +1 -1
- package/esm2022/lib/directive/column-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/container-alignment.directive.mjs +1 -1
- package/esm2022/lib/directive/container-fir.directive.mjs +1 -1
- package/esm2022/lib/directive/content-title-spacing.directive.mjs +1 -1
- package/esm2022/lib/directive/contenteditable.directive.mjs +1 -1
- package/esm2022/lib/directive/corner-directive.mjs +1 -1
- package/esm2022/lib/directive/height.directive.mjs +1 -1
- package/esm2022/lib/directive/hover-animation.directive.mjs +1 -1
- package/esm2022/lib/directive/hoverborder.directive.mjs +1 -1
- package/esm2022/lib/directive/icon-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/image-container.directive.mjs +1 -1
- package/esm2022/lib/directive/image-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/image-editor.directive.mjs +1 -1
- package/esm2022/lib/directive/image-position.directive.mjs +1 -1
- package/esm2022/lib/directive/letters-only.directive.mjs +1 -1
- package/esm2022/lib/directive/merge-header.directive.mjs +1 -1
- package/esm2022/lib/directive/numbers-only.directive.mjs +1 -1
- package/esm2022/lib/directive/position-layout-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/set-dynamic-background.directive.mjs +1 -1
- package/esm2022/lib/directive/spacing-around.directive.mjs +1 -1
- package/esm2022/lib/directive/spacing-horizontal.directive.mjs +1 -1
- package/esm2022/lib/directive/spacing.directive.mjs +1 -1
- package/esm2022/lib/directive/text-background-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/text-size.directive.mjs +1 -1
- package/esm2022/lib/directive/translate-onhover.directive.mjs +1 -1
- package/esm2022/lib/directive/video-directive.directive.mjs +1 -1
- package/esm2022/lib/directive/wrap-containers.directive.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/address/address.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/authenticate-user/authenticate-user.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/book-appointment/book-appointment.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/brands-with-image-background-columns/brands-with-image-background-columns.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/cart/cart.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/cart/cart.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/categories-with-image-background-columns/categories-with-image-background-columns.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/category-product/category-product.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/category-product/category-product.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/checkout/checkout.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/checkout/checkout.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/customer-review/customer-review.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/customer-review/customer-review.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/featured-brand/featured-brand.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/featured-brand/featured-brand.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/featured-category/featured-category.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/featured-category/featured-category.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/featured-category/featured-collection.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/featured-products/featured-products.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/featured-products/featured-products.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/item-varient/item-varient.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/new-collection/new-collection.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/new-collection/new-collection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/order-details/order-details.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/pagnination/pagnination.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/passbook-transactions/passbook-transactions.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/product-list/product-list.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-list/product-list.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/refer-earn/refer-earn.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/refer-earn/refer-earn.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.component.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/scheme-details/scheme-details.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/scheme-selection/scheme-selection.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/schemes/schemes.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/schemes/schemes.component.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/small-product-listing/small-product-listing.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/store-list/store-list.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/store-list/store-list.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/store-page/store-page.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/store-page/store-page.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/user-basic-info/user-basic-info.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/user-profile/user-profile.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +33 -3
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/whislist/whislist.component.mjs +3 -3
- package/esm2022/lib/ecommerce/styles/BaseCollection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/Brand.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/Collection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/OrderedItems.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/PincodeLocation.model.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/PincodeLocationInter.model.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/cart.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/category.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/order.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/product.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/review.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/user.modal.mjs +1 -1
- package/esm2022/lib/elements/add-section/add-section.component.mjs +3 -3
- package/esm2022/lib/elements/address-list/address-list.component.mjs +3 -3
- package/esm2022/lib/elements/below-image-card/below-image-card.component.mjs +3 -3
- package/esm2022/lib/elements/booking-cart-groups/booking-cart-groups.component.mjs +3 -3
- package/esm2022/lib/elements/button/button.component.mjs +3 -3
- package/esm2022/lib/elements/button/button.model.mjs +1 -1
- package/esm2022/lib/elements/card-skeleton-loader/card-skeleton-loader.component.mjs +3 -3
- package/esm2022/lib/elements/covering-image-card/covering-image-card.component.mjs +3 -3
- package/esm2022/lib/elements/editor-service.service.mjs +1 -1
- package/esm2022/lib/elements/heading-element/heading-element.component.mjs +3 -3
- package/esm2022/lib/elements/index.mjs +1 -1
- package/esm2022/lib/elements/link-editor/link-editor.component.mjs +3 -3
- package/esm2022/lib/elements/list-home-appointment/list-home-appointment.component.mjs +3 -3
- package/esm2022/lib/elements/media-selector/media-selector.component.mjs +3 -3
- package/esm2022/lib/elements/my-bookings/my-bookings.component.mjs +136 -9
- package/esm2022/lib/elements/portfolio/portfolio.component.mjs +3 -3
- package/esm2022/lib/elements/pricing-s1/pricing-s1.component.mjs +3 -3
- package/esm2022/lib/elements/property/property.component.mjs +3 -3
- package/esm2022/lib/elements/simpo-button/simpo-button.component.mjs +3 -3
- package/esm2022/lib/elements/svg-divider/svg-divider.component.mjs +3 -3
- package/esm2022/lib/elements/text/text.component.mjs +3 -3
- package/esm2022/lib/elements/text-editor/text-editor.component.mjs +7 -7
- package/esm2022/lib/elements/top-of-image-card/top-of-image-card.component.mjs +3 -3
- package/esm2022/lib/pipes/amount.pipe.mjs +1 -1
- package/esm2022/lib/pipes/gender.pipe.mjs +1 -1
- package/esm2022/lib/sections/BaseSection.mjs +1 -1
- package/esm2022/lib/sections/add-new-section/add-new-section.component.mjs +3 -3
- package/esm2022/lib/sections/appointment-form/appointment-booking/appointment-booking/appointment-booking.component.mjs +3 -3
- package/esm2022/lib/sections/appointment-form/appointment-form.model.mjs +1 -1
- package/esm2022/lib/sections/banner-carousel/banner-carousel.component.mjs +3 -3
- package/esm2022/lib/sections/banner-carousel/banner-carousel.model.mjs +1 -1
- package/esm2022/lib/sections/banner-grid-section/banner-grid-section.component.mjs +3 -3
- package/esm2022/lib/sections/blog-list/blog-list.component.mjs +3 -3
- package/esm2022/lib/sections/blog-list/blog-list.model.mjs +1 -1
- package/esm2022/lib/sections/brand-story-section/brand-story-section.component.mjs +3 -3
- package/esm2022/lib/sections/brand-story-section/brand-story-section.modal.mjs +1 -1
- package/esm2022/lib/sections/button-grid-section/button-grid-section.component.mjs +3 -3
- package/esm2022/lib/sections/choose-us-section/choose-us-section.component.mjs +3 -3
- package/esm2022/lib/sections/choose-us-section/choose-us-section.model.mjs +1 -1
- package/esm2022/lib/sections/condensed-and-gradient/condensed-and-gradient.component.mjs +3 -3
- package/esm2022/lib/sections/countdown-banner/countdown-banner.component.mjs +3 -3
- package/esm2022/lib/sections/countdown-banner/countdown-banner.component.model.mjs +1 -1
- package/esm2022/lib/sections/faq-columns-cards/faq-columns-cards.component.mjs +3 -3
- package/esm2022/lib/sections/faq-columns-cards/faq-columns-cards.modal.mjs +1 -1
- package/esm2022/lib/sections/faq-section/faq-section.component.mjs +3 -3
- package/esm2022/lib/sections/faq-section/faq-section.modal.mjs +1 -1
- package/esm2022/lib/sections/feature-experience-section/feature-experience-section.component.mjs +3 -3
- package/esm2022/lib/sections/feature-experience-section/feature-experience-section.modal.mjs +1 -1
- package/esm2022/lib/sections/features-section/features-section.component.mjs +3 -3
- package/esm2022/lib/sections/features-section/features-section.model.mjs +1 -1
- package/esm2022/lib/sections/footer/footer.component.mjs +3 -3
- package/esm2022/lib/sections/footer/footer.modal.mjs +1 -1
- package/esm2022/lib/sections/four-features-centered-image/four-features-centered-image.component.mjs +3 -3
- package/esm2022/lib/sections/four-features-centered-image/four-features-centered-image.modal.mjs +1 -1
- package/esm2022/lib/sections/header-section/header-section.component.mjs +24 -3
- package/esm2022/lib/sections/header-section/header-section.model.mjs +1 -1
- package/esm2022/lib/sections/header-text/header-text.component.mjs +3 -3
- package/esm2022/lib/sections/header-text/header-text.model.mjs +1 -1
- package/esm2022/lib/sections/image-background/image-background/image-background.component.mjs +3 -3
- package/esm2022/lib/sections/image-background/image-background/image-background.component.model.mjs +1 -1
- package/esm2022/lib/sections/image-carousel-section/image-carousel-section.component.mjs +3 -3
- package/esm2022/lib/sections/image-carousel-section/image-carousel.model.mjs +1 -1
- package/esm2022/lib/sections/image-grid-hotspot/image-grid-hotspot.component.mjs +3 -3
- package/esm2022/lib/sections/image-grid-hotspot/image-grid-hotspot.model.mjs +1 -1
- package/esm2022/lib/sections/image-grid-section/image-grid-section.component.mjs +3 -3
- package/esm2022/lib/sections/image-grid-section/image-grid-section.model.mjs +1 -1
- package/esm2022/lib/sections/image-section/image-section.component.mjs +3 -3
- package/esm2022/lib/sections/image-section/image-section.model.mjs +1 -1
- package/esm2022/lib/sections/location-section/location-section.component.mjs +3 -3
- package/esm2022/lib/sections/location-section/location-section.modal.mjs +1 -1
- package/esm2022/lib/sections/logo-showcase/logo-showcase.component.mjs +3 -3
- package/esm2022/lib/sections/logo-showcase/logo-showcase.modal.mjs +1 -1
- package/esm2022/lib/sections/moving-text/moving-text.component.mjs +3 -3
- package/esm2022/lib/sections/moving-text/moving-text.modal.mjs +1 -1
- package/esm2022/lib/sections/new-services/new-services.component.mjs +3 -3
- package/esm2022/lib/sections/new-services/new-services.model.mjs +1 -1
- package/esm2022/lib/sections/new-testimonials/new-testimonials.component.mjs +3 -3
- package/esm2022/lib/sections/new-testimonials/new-testimonials.model.mjs +1 -1
- package/esm2022/lib/sections/news-letter-component/news-letter-component.component.mjs +3 -3
- package/esm2022/lib/sections/news-letter-component/news-letter.modal.mjs +1 -1
- package/esm2022/lib/sections/overlapping-image/overlapping-image.component.mjs +3 -3
- package/esm2022/lib/sections/overlapping-image/overlapping-image.component.modal.mjs +1 -1
- package/esm2022/lib/sections/pricing-section/pricing-section.component.mjs +3 -3
- package/esm2022/lib/sections/pricing-section/pricing-section.modal.mjs +1 -1
- package/esm2022/lib/sections/process-modern/process-modern.component.mjs +3 -3
- package/esm2022/lib/sections/process-modern/process-modern.model.mjs +1 -1
- package/esm2022/lib/sections/process-section/process-section.component.mjs +3 -3
- package/esm2022/lib/sections/process-section/process-section.modal.mjs +1 -1
- package/esm2022/lib/sections/product-info-section/product-info-section.component.mjs +3 -3
- package/esm2022/lib/sections/product-info-section/product-info-section.component.modal.mjs +1 -1
- package/esm2022/lib/sections/property-component/property-component.component.mjs +3 -3
- package/esm2022/lib/sections/property-component/property-component.modal.mjs +1 -1
- package/esm2022/lib/sections/property-list/property-list.component.mjs +3 -3
- package/esm2022/lib/sections/property-list/property-list.modal.mjs +1 -1
- package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.component.mjs +3 -3
- package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.model.mjs +1 -1
- package/esm2022/lib/sections/registration-form/registration-form.component.mjs +3 -3
- package/esm2022/lib/sections/registration-form/registrationForm.model.mjs +1 -1
- package/esm2022/lib/sections/scheme-detail/scheme-detail.component.mjs +3 -3
- package/esm2022/lib/sections/scheme-detail/scheme-detail.modal.mjs +1 -1
- package/esm2022/lib/sections/service-section/service-section.component.mjs +3 -3
- package/esm2022/lib/sections/service-section/service-section.model.mjs +1 -1
- package/esm2022/lib/sections/skeleton-loader-section/skeleton-loader-section.component.mjs +3 -3
- package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +3 -3
- package/esm2022/lib/sections/team-member-section/team-member-section.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-section/testimonial-section.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-section/testimonial-section.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-slider/testimonial-slider.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-slider/testimonial-slider.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-video/testimonial-video.component.mjs +3 -3
- package/esm2022/lib/sections/testimonial-video/testimonial-video.model.mjs +1 -1
- package/esm2022/lib/sections/text-section/text-section.model.mjs +1 -1
- package/esm2022/lib/sections/usp-video-section/usp-video-section.component.mjs +3 -3
- package/esm2022/lib/sections/usp-video-section/usp-video-section.model.mjs +1 -1
- package/esm2022/lib/sections/video-carousel-section/video-carousel-section.component.mjs +3 -3
- package/esm2022/lib/sections/video-carousel-section/video-carousel.model.mjs +1 -1
- package/esm2022/lib/sections/video-grid-section/video-grid-section.component.mjs +3 -3
- package/esm2022/lib/sections/video-grid-section/video-grid-section.model.mjs +1 -1
- package/esm2022/lib/sections/video-section/video-section.component.mjs +3 -3
- package/esm2022/lib/sections/video-section/video-section.model.mjs +1 -1
- package/esm2022/lib/sections/video-showcase/video-showcase.component.mjs +3 -3
- package/esm2022/lib/sections/view-blog/view-blog.component.mjs +1 -1
- package/esm2022/lib/services/analytics.service.mjs +1 -1
- package/esm2022/lib/services/booking-product-cart.service.mjs +1 -1
- package/esm2022/lib/services/cart.service.mjs +1 -1
- package/esm2022/lib/services/endUser.service.mjs +1 -1
- package/esm2022/lib/services/image-upload-service.service.mjs +1 -1
- package/esm2022/lib/services/rest.service.mjs +18 -2
- package/esm2022/lib/services/sanitizeHtml.mjs +1 -1
- package/esm2022/lib/services/storage.service.mjs +1 -1
- package/esm2022/lib/styles/gradient-extension.mjs +1 -1
- package/esm2022/lib/styles/index.mjs +1 -1
- package/esm2022/lib/styles/style.model.mjs +1 -1
- package/esm2022/lib/styles/text-size.extension.mjs +1 -1
- package/esm2022/lib/styles/types.mjs +1 -1
- package/esm2022/lib/tokens/api-token.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/fesm2022/simpo-component-library.mjs +415 -222
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/ecommerce/sections/verify-payment/verify-payment.component.d.ts +6 -0
- package/lib/elements/my-bookings/my-bookings.component.d.ts +33 -1
- package/lib/sections/header-section/header-section.component.d.ts +3 -0
- package/lib/services/rest.service.d.ts +4 -0
- package/package.json +1 -1
- package/simpo-component-library-3.7.6.tgz +0 -0
- package/simpo-component-library-3.7.004.tgz +0 -0
|
@@ -106,7 +106,7 @@ export class FeaturedCollectionComponent extends BaseSection {
|
|
|
106
106
|
return this.styles?.layout?.align || '';
|
|
107
107
|
}
|
|
108
108
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeaturedCollectionComponent, deps: [{ token: i1.Router }, { token: i2.RestService }, { token: i3.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeaturedCollectionComponent, isStandalone: true, selector: "simpo-featured-collection", inputs: { data: "data", responseData: "responseData", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, viewQueries: [{ propertyName: "categoryParent", first: true, predicate: ["categoryParent1"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!isLoading\">\
|
|
109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeaturedCollectionComponent, isStandalone: true, selector: "simpo-featured-collection", inputs: { data: "data", responseData: "responseData", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, viewQueries: [{ propertyName: "categoryParent", first: true, predicate: ["categoryParent1"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!isLoading\">\n <section class=\"container-fluid total-container p-0\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\" class=\"border-radius-unset\">\n <div [id]=\"data?.id\" #mainContainer [simpoAnimation]=\"styles?.animation\" [simpoBackground]=\"styles?.background\"\n [simpoCorner]=\"styles?.corners\" class=\"d-flex w-100\">\n <div class=\"d-flex flex-column w-100\" [simpoOverlay]=\"styles?.background\" [simpoCorner]=\"styles?.corners\"\n [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" [spacingHorizontal]=\"stylesLayout\"\n [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let item of content?.inputText\" class=\"text-container\">\n <!-- <div class = \"content-side\"[innerHTML]=\"item.value | sanitizeHtml\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"> -->\n <ng-container *ngIf=\"edit || item.value\">\n <div class=\"pt-3 w-100\">\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\n </div>\n </ng-container>\n <!-- </div> -->\n </div>\n <ng-container *ngIf=\"styles?.componentStyle === 'Style1';else categoryStyle2\">\n <div class=\"category-parent\" [ngClass]=\"{'flex-wrap': getDirection == 'COLUMN'}\"\n [simpoContainerAlignment]=\"styles?.layout\" [id]=\"data?.id\"\n [style.justifyContent]=\"!isMobile ? getJustifyContent() : ''\" #categoryParent1>\n <div\n *ngFor=\"let data of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\"\n (click)=\"redirectToListPage(data)\" class=\"d-flex flex-column align-items-center w-fit-content\"\n [ngClass]=\"{ 'w-48 d-flex flex-column align-items-center' : isMobile}\">\n <img [simpoCorner]=\"styles?.corners\"\n [style.height.px]=\"(styles?.containerHeight ?? 1) / (isMobile ? 2 : 1)\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\" loading=\"lazy\"\n onerror=\"this.src='https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\"\n [src]=\"data.imgUrl?.[0] ?? 'https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\" alt=\"\"\n class=\"category-image\" [ngClass]=\"{'category-new-image' : isMobile && getDirection == 'COLUMN'}\">\n <div *ngIf=\"content?.display?.showHeading\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\">{{data.categoryName}}</div>\n <!-- class=\"category-name body-large\" -->\n </div>\n </div>\n </ng-container>\n <ng-template #categoryStyle2>\n <div class=\"w-100\">\n <simpo-categories-with-image-background-columns [responseData]=\"responseData\" [styles]=\"styles\"\n [content]=\"content\"></simpo-categories-with-image-background-columns>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.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\n </section>\n</ng-container>\n\n<ngx-skeleton-loader *ngIf=\"isLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\n width: '100%',\n height: '40vh',\n 'border-radius': '10px',\n 'position': 'relative',\n 'right': '5px'\n}\">\n</ngx-skeleton-loader>", styles: [".mt-15{margin-top:15px}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.text-container{min-width:100px}.w-fit-content{width:fit-content!important}.total-container{height:fit-content!important;position:relative;display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.category-parent{padding:25px 0% 2%;display:flex;width:100%;max-width:100%;gap:25px;overflow-x:scroll;font-size:16px!important;cursor:pointer}.hovering-effect:hover{font-size:22px!important;transition:.3s ease-in-out}.category-image{display:flex;flex-wrap:wrap;margin-bottom:15px;transition-duration:.3s;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out}.category-image:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.category-parent::-webkit-scrollbar{display:none}.span{width:141px;height:15px}.category-name{color:#222;font-size:16px;line-height:normal;font-weight:600}.border-radius-unset{border-radius:unset!important}@media screen and (max-width : 475px){.main-container{padding-left:10px;padding-right:10px}.total-container{height:fit-content!important}.w-48{width:48%!important}.category-new-image{height:150px!important;width:100%!important}.header{gap:7px}.category-parent{gap:8px;margin-top:15px;padding-left:0!important;padding-right:0!important;padding-top:0!important}.category-parent::-webkit-scrollbar{display:flex!important;height:3px}.span{width:70.5px;height:7.5px}.category-name{font-size:12px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.SlicePipe, name: "slice" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i5.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i6.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: i7.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "directive", type:
|
|
110
110
|
//directive
|
|
111
111
|
AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: SimpoContainerAligment, selector: "[simpoContainerAlignment]", inputs: ["simpoContainerAlignment"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "component", type: SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "isRTE", "sectionId", "label", "type", "inputTextIndex", "itemIndex"], outputs: ["valueChange"] }, { kind: "directive", type: SpacingAroundDirective, selector: "[spacingAround]", inputs: ["spacingAround", "backgroundInfo"] }, { kind: "component", type: CategoriesWithImageBackgroundColumnsComponent, selector: "simpo-categories-with-image-background-columns", inputs: ["responseData", "styles", "content"] }] }); }
|
|
112
112
|
}
|
|
@@ -130,7 +130,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
130
130
|
TextEditorComponent,
|
|
131
131
|
SpacingAroundDirective,
|
|
132
132
|
CategoriesWithImageBackgroundColumnsComponent
|
|
133
|
-
], template: "<ng-container *ngIf=\"!isLoading\">\
|
|
133
|
+
], template: "<ng-container *ngIf=\"!isLoading\">\n <section class=\"container-fluid total-container p-0\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\" class=\"border-radius-unset\">\n <div [id]=\"data?.id\" #mainContainer [simpoAnimation]=\"styles?.animation\" [simpoBackground]=\"styles?.background\"\n [simpoCorner]=\"styles?.corners\" class=\"d-flex w-100\">\n <div class=\"d-flex flex-column w-100\" [simpoOverlay]=\"styles?.background\" [simpoCorner]=\"styles?.corners\"\n [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" [spacingHorizontal]=\"stylesLayout\"\n [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let item of content?.inputText\" class=\"text-container\">\n <!-- <div class = \"content-side\"[innerHTML]=\"item.value | sanitizeHtml\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"> -->\n <ng-container *ngIf=\"edit || item.value\">\n <div class=\"pt-3 w-100\">\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\n </div>\n </ng-container>\n <!-- </div> -->\n </div>\n <ng-container *ngIf=\"styles?.componentStyle === 'Style1';else categoryStyle2\">\n <div class=\"category-parent\" [ngClass]=\"{'flex-wrap': getDirection == 'COLUMN'}\"\n [simpoContainerAlignment]=\"styles?.layout\" [id]=\"data?.id\"\n [style.justifyContent]=\"!isMobile ? getJustifyContent() : ''\" #categoryParent1>\n <div\n *ngFor=\"let data of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\"\n (click)=\"redirectToListPage(data)\" class=\"d-flex flex-column align-items-center w-fit-content\"\n [ngClass]=\"{ 'w-48 d-flex flex-column align-items-center' : isMobile}\">\n <img [simpoCorner]=\"styles?.corners\"\n [style.height.px]=\"(styles?.containerHeight ?? 1) / (isMobile ? 2 : 1)\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\" loading=\"lazy\"\n onerror=\"this.src='https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\"\n [src]=\"data.imgUrl?.[0] ?? 'https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\" alt=\"\"\n class=\"category-image\" [ngClass]=\"{'category-new-image' : isMobile && getDirection == 'COLUMN'}\">\n <div *ngIf=\"content?.display?.showHeading\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\">{{data.categoryName}}</div>\n <!-- class=\"category-name body-large\" -->\n </div>\n </div>\n </ng-container>\n <ng-template #categoryStyle2>\n <div class=\"w-100\">\n <simpo-categories-with-image-background-columns [responseData]=\"responseData\" [styles]=\"styles\"\n [content]=\"content\"></simpo-categories-with-image-background-columns>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.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\n </section>\n</ng-container>\n\n<ngx-skeleton-loader *ngIf=\"isLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\n width: '100%',\n height: '40vh',\n 'border-radius': '10px',\n 'position': 'relative',\n 'right': '5px'\n}\">\n</ngx-skeleton-loader>", styles: [".mt-15{margin-top:15px}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.text-container{min-width:100px}.w-fit-content{width:fit-content!important}.total-container{height:fit-content!important;position:relative;display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.category-parent{padding:25px 0% 2%;display:flex;width:100%;max-width:100%;gap:25px;overflow-x:scroll;font-size:16px!important;cursor:pointer}.hovering-effect:hover{font-size:22px!important;transition:.3s ease-in-out}.category-image{display:flex;flex-wrap:wrap;margin-bottom:15px;transition-duration:.3s;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out}.category-image:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.category-parent::-webkit-scrollbar{display:none}.span{width:141px;height:15px}.category-name{color:#222;font-size:16px;line-height:normal;font-weight:600}.border-radius-unset{border-radius:unset!important}@media screen and (max-width : 475px){.main-container{padding-left:10px;padding-right:10px}.total-container{height:fit-content!important}.w-48{width:48%!important}.category-new-image{height:150px!important;width:100%!important}.header{gap:7px}.category-parent{gap:8px;margin-top:15px;padding-left:0!important;padding-right:0!important;padding-top:0!important}.category-parent::-webkit-scrollbar{display:flex!important;height:3px}.span{width:70.5px;height:7.5px}.category-name{font-size:12px}}\n"] }]
|
|
134
134
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.RestService }, { type: i3.EventsService }], propDecorators: { categoryParent: [{
|
|
135
135
|
type: ViewChild,
|
|
136
136
|
args: ['categoryParent1', { static: false }]
|
|
@@ -149,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
149
149
|
}], nextComponentColor: [{
|
|
150
150
|
type: Input
|
|
151
151
|
}] } });
|
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZWQtY29sbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2Vjb21tZXJjZS9zZWN0aW9ucy9mZWF0dXJlZC1jYXRlZ29yeS9mZWF0dXJlZC1jb2xsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZWNvbW1lcmNlL3NlY3Rpb25zL2ZlYXR1cmVkLWNhdGVnb3J5L2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQW9DLEtBQUssRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxXQUFXLE1BQU0sK0JBQStCLENBQUM7QUFLeEQsT0FBTyxFQUFFLFFBQVEs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TTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5wdXQsIFBMQVRGT1JNX0lELCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPdmVybGF5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL292ZXJsYXktZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IFNpbXBvQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9pbmRleCc7XHJcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi8uLi8uLi9zZWN0aW9ucy9CYXNlU2VjdGlvbic7XHJcbmltcG9ydCB7IEZlYXR1cmVkQ2F0ZWdvcnlDb250ZW50TW9kYWwsIEZlYXR1cmVkQ2F0ZWdvcnlNb2RhbCwgRmVhdHVyZWRDYXRlZ29yeVN0eWxlc01vZGVsIH0gZnJvbSAnLi9mZWF0dXJlZC1jYXRlZ29yeS5tb2RhbCc7XHJcbmltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi4vLi4vc3R5bGVzL2NhdGVnb3J5Lm1vZGFsJztcclxuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBsaXN0UGF0aCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2xpc3Qtcm91dGUudXRpbCc7XHJcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9zdHlsZXMvQ29sbGVjdGlvbi5tb2RhbCc7XHJcbmltcG9ydCB7IFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaW1wb0NvbnRhaW5lckFsaWdtZW50IH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2NvbnRhaW5lci1hbGlnbm1lbnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBTdmdEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZWxlbWVudHMvc3ZnLWRpdmlkZXIvc3ZnLWRpdmlkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2VsZW1lbnRzL3RleHQtZWRpdG9yL3RleHQtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNwYWNpbmdBcm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1hcm91bmQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ2F0ZWdvcmllc1dpdGhJbWFnZUJhY2tncm91bmRDb2x1bW5zQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NhdGVnb3JpZXMtd2l0aC1pbWFnZS1iYWNrZ3JvdW5kLWNvbHVtbnMvY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucy5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8tZmVhdHVyZWQtY29sbGVjdGlvbicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFNpbXBvQ29tcG9uZW50TW9kdWxlLFxyXG5cclxuICAgIC8vZGlyZWN0aXZlXHJcbiAgICBBbmltYXRpb25EaXJlY3RpdmUsXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcclxuICAgIEJvcmRlckRpcmVjdGl2ZSxcclxuICAgIFNpbXBvQ29udGFpbmVyQWxpZ21lbnQsXHJcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFN2Z0RpdmlkZXJDb21wb25lbnQsXHJcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxyXG4gICAgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSxcclxuICAgIENhdGVnb3JpZXNXaXRoSW1hZ2VCYWNrZ3JvdW5kQ29sdW1uc0NvbXBvbmVudFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vZmVhdHVyZWQtY2F0ZWdvcnkuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEZlYXR1cmVkQ29sbGVjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIHtcclxuICBAVmlld0NoaWxkKCdjYXRlZ29yeVBhcmVudDEnLCB7IHN0YXRpYzogZmFsc2UgfSkgY2F0ZWdvcnlQYXJlbnQhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcclxuICBASW5wdXQoKSBkYXRhPzogRmVhdHVyZWRDYXRlZ29yeU1vZGFsO1xyXG4gIEBJbnB1dCgpIHJlc3BvbnNlRGF0YT86IENhdGVnb3J5W107XHJcbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xyXG4gIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNvbnRlbnQ/OiBGZWF0dXJlZENhdGVnb3J5Q29udGVudE1vZGFsO1xyXG4gIHN0eWxlcz86IEZlYXR1cmVkQ2F0ZWdvcnlTdHlsZXNNb2RlbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXN0U2VydmljZTogUmVzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpXHJcbiAgfVxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLmRhdGE/LnN0eWxlcztcclxuICAgIHRoaXMuZ2V0Q29sbGVjdGlvbnNJZHMoKTtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5zaG93TG9hZGluZ1NjcmVlbi5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gcmVzcG9uc2U7XHJcbiAgICB9KVxyXG4gICAgLy8gdGhpcy5fZXZlbnRTZXJ2aWNlLndyYXBEaXJlY3Rpb24uc3Vic2NyaWJlKChyZXNwb25zZSk9PiB7XHJcbiAgICAvLyAgIGlmIChyZXNwb25zZSA9PT0gdGhpcy5kYXRhPy5pZCAmJiB0aGlzLnN0eWxlcylcclxuICAgIC8vICAgICB0aGlzLnN0eWxlcy5kaXJlY3Rpb24gPSByZXNwb25zZSBhcyBcIlJPV1wiIHwgXCJDT0xVTU5cIjtcclxuICAgIC8vIH0pXHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuY29sbGVjdGlvbnNMaXN0RXZlbnQuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICB0aGlzLmdldENvbGxlY3Rpb25zSWRzKCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0U2xpY2VQYXJhbWV0ZXJzKCkge1xyXG4gICAgcmV0dXJuIFswLCAodGhpcy5zdHlsZXM/Lm1heGltdW1Qcm9kdWN0IHx8IDApXTtcclxuICB9XHJcbiAgZ2V0Q29sbGVjdGlvbnNJZHMoKSB7XHJcbiAgICBpZiAoIXRoaXMuY29udGVudD8uY29sbGVjdGlvbklkcylcclxuICAgICAgcmV0dXJuO1xyXG4gICAgdGhpcy5yZXN0U2VydmljZS5nZXRDb2xsZWN0aW9uQnlJZHModGhpcy5jb250ZW50Py5jb2xsZWN0aW9uSWRzKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5yZXNwb25zZURhdGEgPSByZXNwb25zZS5maWx0ZXIoKGNhdGVnb3J5OiBhbnkpID0+IGNhdGVnb3J5LmZlYXR1cmVkQ29sbGVjdGlvbiB8fCB0cnVlKS5tYXAoKGNvbGxlY3Rpb246IENvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4uY29sbGVjdGlvbixcclxuICAgICAgICAgIGNhdGVnb3J5TmFtZTogY29sbGVjdGlvbi5jb2xsZWN0aW9uTmFtZSxcclxuICAgICAgICAgIGNhdGVnb3J5SWQ6IGNvbGxlY3Rpb24uY29sbGVjdGlvbklkXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgICB0aGlzLmNvbnRlbnQ/LmNvbGxlY3Rpb25JZHM/LmZvckVhY2goKGlkOiBzdHJpbmcsIGNvbGxlY3Rpb25JbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgbGV0IGluZGV4ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yZXNwb25zZURhdGE/LmZvckVhY2goKGRhdGE6IGFueSwgaWR4KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZGF0YS5jb2xsZWN0aW9uSWQgPT0gaWQpXHJcbiAgICAgICAgICAgIGluZGV4ID0gaWR4O1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5kcm9wQ29sbGVjdGlvbihpbmRleCwgY29sbGVjdGlvbkluZGV4KTtcclxuICAgICAgfSlcclxuICAgIH0pXHJcblxyXG4gIH1cclxuICBkcm9wQ29sbGVjdGlvbihzdGFydElkeDogbnVtYmVyLCBlbmRJZHg6IG51bWJlcikge1xyXG4gICAgaWYgKHRoaXMucmVzcG9uc2VEYXRhKVxyXG4gICAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5yZXNwb25zZURhdGEsIHN0YXJ0SWR4LCBlbmRJZHgpO1xyXG4gIH1cclxuICByZWRpcmVjdFRvTGlzdFBhZ2UoY29sbGVjdGlvbjogYW55KSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShsaXN0UGF0aCh7IGNvbGxlY3Rpb24gfSkpO1xyXG4gIH1cclxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xyXG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZXM/LmxheW91dCB9IGFzIExheU91dE1vZGVsO1xyXG4gIH1cclxuICBnZXQgZ2V0RGlyZWN0aW9uKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5kaXJlY3Rpb247XHJcbiAgfVxyXG4gIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCA8PSA0NzU7XHJcbiAgfVxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbiAgZ2V0SnVzdGlmeUNvbnRlbnQoKSB7XHJcbiAgICBjb25zdCBlbCA9IHRoaXMuY2F0ZWdvcnlQYXJlbnQ/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBpZiAoIWVsKSByZXR1cm4gJyc7XHJcbiAgICBjb25zdCBpc092ZXJmbG93aW5nID0gZWwuc2Nyb2xsV2lkdGggPiBlbC5jbGllbnRXaWR0aDtcclxuICAgIGlmIChpc092ZXJmbG93aW5nKSB7XHJcbiAgICAgIHJldHVybiAnZmxleC1zdGFydCc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/LmxheW91dD8uYWxpZ24gfHwgJyc7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XHJcbiAgPHNlY3Rpb24gY2xhc3M9XCJjb250YWluZXItZmx1aWQgdG90YWwtY29udGFpbmVyIHAtMFwiIFtpZF09XCJkYXRhPy5pZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCJcclxuICAgIFthdHRyLnN0eWxlXT1cImN1c3RvbUNsYXNzXCI+XHJcbiAgICA8ZGl2IFtzcGFjaW5nQXJvdW5kXT1cInN0eWxlc0xheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZXM/LmJvcmRlclwiIGNsYXNzPVwiYm9yZGVyLXJhZGl1cy11bnNldFwiPlxyXG4gICAgICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiICNtYWluQ29udGFpbmVyIFtzaW1wb0FuaW1hdGlvbl09XCJzdHlsZXM/LmFuaW1hdGlvblwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCJcclxuICAgICAgICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgY2xhc3M9XCJkLWZsZXggdy0xMDBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIHctMTAwXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCJcclxuICAgICAgICAgIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0xheW91dF09XCJzdHlsZXM/LmxheW91dFwiIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIlxyXG4gICAgICAgICAgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/LmlucHV0VGV4dFwiIGNsYXNzPVwidGV4dC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPCEtLSA8ZGl2ICBjbGFzcyA9IFwiY29udGVudC1zaWRlXCJbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWUgfCBzYW5pdGl6ZUh0bWxcIiBbbmdDbGFzc109XCJpdGVtLmxhYmVsID09PSAnSGVhZGluZycgPyAnaGVhZGluZy1sYXJnZSBsaC0yIG1iLTMnIDogJ2JvZHktbGFyZ2UnXCI+IC0tPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdCB8fCBpdGVtLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB0LTMgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJpdGVtLnZhbHVlXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIiBbaXNSVEVdPVwiaXRlbS5pc1JURVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8IS0tIDwvZGl2PiAtLT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlcz8uY29tcG9uZW50U3R5bGUgPT09ICdTdHlsZTEnO2Vsc2UgY2F0ZWdvcnlTdHlsZTJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhdGVnb3J5LXBhcmVudFwiIFtuZ0NsYXNzXT1cInsnZmxleC13cmFwJzogZ2V0RGlyZWN0aW9uID09ICdDT0xVTU4nfVwiXHJcbiAgICAgICAgICAgICAgW3NpbXBvQ29udGFpbmVyQWxpZ25tZW50XT1cInN0eWxlcz8ubGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICAgICAgICBbc3R5bGUuanVzdGlmeUNvbnRlbnRdPVwiIWlzTW9iaWxlID8gZ2V0SnVzdGlmeUNvbnRlbnQoKSA6ICcnXCIgI2NhdGVnb3J5UGFyZW50MT5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZGF0YSBvZiByZXNwb25zZURhdGEgfCBzbGljZTpnZXRTbGljZVBhcmFtZXRlcnMoKVswXTpnZXRTbGljZVBhcmFtZXRlcnMoKVsxXTsgbGV0IGlkeCA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJyZWRpcmVjdFRvTGlzdFBhZ2UoZGF0YSlcIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgdy1maXQtY29udGVudFwiXHJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICd3LTQ4IGQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXInIDogaXNNb2JpbGV9XCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCJcclxuICAgICAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodC5weF09XCIoc3R5bGVzPy5jb250YWluZXJIZWlnaHQgPz8gMSkgLyAoaXNNb2JpbGUgPyAyIDogMSlcIlxyXG4gICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwiKHN0eWxlcz8uY29udGFpbmVyV2lkdGggPz8gMSkgLyAoaXNNb2JpbGUgPyAyIDogMSlcIiBsb2FkaW5nPVwibGF6eVwiXHJcbiAgICAgICAgICAgICAgICAgIG9uZXJyb3I9XCJ0aGlzLnNyYz0naHR0cHM6Ly9pLnBvc3RpbWcuY2MvaFBTMkpwVjAvbm8taW1hZ2UtYXZhaWxhYmxlLmpwZydcIlxyXG4gICAgICAgICAgICAgICAgICBbc3JjXT1cImRhdGEuaW1nVXJsPy5bMF0gPz8gJ2h0dHBzOi8vaS5wb3N0aW1nLmNjL2hQUzJKcFYwL25vLWltYWdlLWF2YWlsYWJsZS5qcGcnXCIgYWx0PVwiXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXRlZ29yeS1pbWFnZVwiIFtuZ0NsYXNzXT1cInsnY2F0ZWdvcnktbmV3LWltYWdlJyA6IGlzTW9iaWxlICYmIGdldERpcmVjdGlvbiA9PSAnQ09MVU1OJ31cIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5Py5zaG93SGVhZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS53aWR0aC5weF09XCIoc3R5bGVzPy5jb250YWluZXJXaWR0aCA/PyAxKSAvIChpc01vYmlsZSA/IDIgOiAxKVwiPnt7ZGF0YS5jYXRlZ29yeU5hbWV9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPCEtLSBjbGFzcz1cImNhdGVnb3J5LW5hbWUgYm9keS1sYXJnZVwiICAtLT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2F0ZWdvcnlTdHlsZTI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMFwiPlxyXG4gICAgICAgICAgICAgIDxzaW1wby1jYXRlZ29yaWVzLXdpdGgtaW1hZ2UtYmFja2dyb3VuZC1jb2x1bW5zIFtyZXNwb25zZURhdGFdPVwicmVzcG9uc2VEYXRhXCIgW3N0eWxlc109XCJzdHlsZXNcIlxyXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiPjwvc2ltcG8tY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZXM/LmRldmlkZXI/LmRpc3BsYXlcIj5cclxuICAgICAgPHNpbXBvLXN2Zy1kaXZpZGVyIFtkaXZpZGVyVHlwZV09XCJzdHlsZXM/LmRldmlkZXI/LmRldmlkZXJUeXBlXCJcclxuICAgICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cclxuICAgICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XHJcbiAgICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L3NlY3Rpb24+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuPG5neC1za2VsZXRvbi1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBjb3VudD1cIjFcIiBhcHBlYXJhbmNlPVwiY2lyY2xlXCIgW3RoZW1lXT1cIntcclxuICB3aWR0aDogJzEwMCUnLFxyXG4gIGhlaWdodDogJzQwdmgnLFxyXG4gICdib3JkZXItcmFkaXVzJzogJzEwcHgnLFxyXG4gICdwb3NpdGlvbic6ICdyZWxhdGl2ZScsXHJcbiAgJ3JpZ2h0JzogJzVweCdcclxufVwiPlxyXG48L25neC1za2VsZXRvbi1sb2FkZXI+Il19
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZWQtY29sbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2Vjb21tZXJjZS9zZWN0aW9ucy9mZWF0dXJlZC1jYXRlZ29yeS9mZWF0dXJlZC1jb2xsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZWNvbW1lcmNlL3NlY3Rpb25zL2ZlYXR1cmVkLWNhdGVnb3J5L2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQW9DLEtBQUssRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxXQUFXLE1BQU0sK0JBQStCLENBQUM7QUFLeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTFELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRTFGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsNkNBQTZDLEVBQUUsTUFBTSxnR0FBZ0csQ0FBQzs7Ozs7Ozs7O0FBNEIvSixNQUFNLE9BQU8sMkJBQTRCLFNBQVEsV0FBVztJQWMxRCxZQUNtQixNQUFjLEVBQ2QsV0FBd0IsRUFDeEIsYUFBNEI7UUFFN0MsS0FBSyxFQUFFLENBQUE7UUFKVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFQL0MsY0FBUyxHQUFZLEtBQUssQ0FBQztJQVUzQixDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7UUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztRQUNoQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQzFELElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFBO1FBQ0YsNERBQTREO1FBQzVELG1EQUFtRDtRQUNuRCw0REFBNEQ7UUFDNUQsS0FBSztRQUNMLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDN0QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLGNBQWMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhO1lBQzlCLE9BQU87UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBYSxFQUFFLEVBQUU7WUFDM0YsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBYSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLElBQUksSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBc0IsRUFBRSxFQUFFO2dCQUN6SCxPQUFPO29CQUNMLEdBQUcsVUFBVTtvQkFDYixZQUFZLEVBQUUsVUFBVSxDQUFDLGNBQWM7b0JBQ3ZDLFVBQVUsRUFBRSxVQUFVLENBQUMsWUFBWTtpQkFDcEMsQ0FBQTtZQUNILENBQUMsQ0FBQyxDQUFBO1lBQ0YsSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBVSxFQUFFLGVBQXVCLEVBQUUsRUFBRTtnQkFDM0UsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2YsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFTLEVBQUUsR0FBRyxFQUFFLEVBQUU7b0JBQzVDLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxFQUFFO3dCQUN6QixLQUFLLEdBQUcsR0FBRyxDQUFDO2dCQUNoQixDQUFDLENBQUMsQ0FBQTtnQkFDRixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxlQUFlLENBQUMsQ0FBQztZQUM5QyxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO0lBRUosQ0FBQztJQUNELGNBQWMsQ0FBQyxRQUFnQixFQUFFLE1BQWM7UUFDN0MsSUFBSSxJQUFJLENBQUMsWUFBWTtZQUNuQixlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUNELGtCQUFrQixDQUFDLFVBQWU7UUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDRCxJQUFJLFlBQVk7UUFDZCxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBaUIsQ0FBQztJQUNuRCxDQUFDO0lBQ0QsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxNQUFNLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUNELGlCQUFpQjtRQUNmLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDO1FBQzlDLElBQUksQ0FBQyxFQUFFO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDbkIsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDO1FBQ3RELElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsT0FBTyxZQUFZLENBQUM7UUFDdEIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUMxQyxDQUFDOytHQTVGVSwyQkFBMkI7bUdBQTNCLDJCQUEyQiw2WUN0RHhDLHduSUFxRXNCLDJpRERyQ2xCLFlBQVksa1pBQ1osV0FBVyw4QkFDWCxvQkFBb0I7Z0JBRXBCLFdBQVc7Z0JBQ1gsa0JBQWtCLHlGQUNsQixtQkFBbUIsbUZBQ25CLG1CQUFtQiwwR0FDbkIsZUFBZSxtRkFDZixzQkFBc0IsMkdBQ3RCLDBCQUEwQiwyR0FDMUIsZUFBZSxtRkFDZixjQUFjLGdGQUNkLGdCQUFnQixxRkFDaEIsbUJBQW1CLGdHQUNuQixtQkFBbUIsNkxBQ25CLHNCQUFzQix5R0FDdEIsNkNBQTZDOzs0RkFLcEMsMkJBQTJCO2tCQTFCdkMsU0FBUzsrQkFDRSwyQkFBMkIsY0FDekIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxvQkFBb0I7d0JBRXBCLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLDBCQUEwQjt3QkFDMUIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHNCQUFzQjt3QkFDdEIsNkNBQTZDO3FCQUM5QztpSUFLZ0QsY0FBYztzQkFBOUQsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5wdXQsIFBMQVRGT1JNX0lELCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEJvcmRlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9ib3JkZXItZGlyZWN0aXZlJztcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uLy4vLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2ltcG9Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2luZGV4JztcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi8uLi8uLi9zZWN0aW9ucy9CYXNlU2VjdGlvbic7XG5pbXBvcnQgeyBGZWF0dXJlZENhdGVnb3J5Q29udGVudE1vZGFsLCBGZWF0dXJlZENhdGVnb3J5TW9kYWwsIEZlYXR1cmVkQ2F0ZWdvcnlTdHlsZXNNb2RlbCB9IGZyb20gJy4vZmVhdHVyZWQtY2F0ZWdvcnkubW9kYWwnO1xuaW1wb3J0IHsgQ2F0ZWdvcnkgfSBmcm9tICcuLi8uLi9zdHlsZXMvY2F0ZWdvcnkubW9kYWwnO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGxpc3RQYXRoIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvbGlzdC1yb3V0ZS51dGlsJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9zdHlsZXMvQ29sbGVjdGlvbi5tb2RhbCc7XG5pbXBvcnQgeyBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWhvcml6b250YWwuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNpbXBvQ29udGFpbmVyQWxpZ21lbnQgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvY29udGFpbmVyLWFsaWdubWVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IFN2Z0RpdmlkZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9lbGVtZW50cy9zdmctZGl2aWRlci9zdmctZGl2aWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2VsZW1lbnRzL3RleHQtZWRpdG9yL3RleHQtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcGFjaW5nQXJvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctYXJvdW5kLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDYXRlZ29yaWVzV2l0aEltYWdlQmFja2dyb3VuZENvbHVtbnNDb21wb25lbnQgfSBmcm9tIFwiLi4vY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucy9jYXRlZ29yaWVzLXdpdGgtaW1hZ2UtYmFja2dyb3VuZC1jb2x1bW5zLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaW1wby1mZWF0dXJlZC1jb2xsZWN0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBTaW1wb0NvbXBvbmVudE1vZHVsZSxcblxuICAgIC8vZGlyZWN0aXZlXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxuICAgIENvbnRlbnRGaXREaXJlY3RpdmUsXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcbiAgICBCb3JkZXJEaXJlY3RpdmUsXG4gICAgU2ltcG9Db250YWluZXJBbGlnbWVudCxcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcbiAgICBDb3JuZXJEaXJlY3RpdmUsXG4gICAgSG92ZXJEaXJlY3RpdmUsXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcbiAgICBTdmdEaXZpZGVyQ29tcG9uZW50LFxuICAgIFRleHRFZGl0b3JDb21wb25lbnQsXG4gICAgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSxcbiAgICBDYXRlZ29yaWVzV2l0aEltYWdlQmFja2dyb3VuZENvbHVtbnNDb21wb25lbnRcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVkQ29sbGVjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIHtcbiAgQFZpZXdDaGlsZCgnY2F0ZWdvcnlQYXJlbnQxJywgeyBzdGF0aWM6IGZhbHNlIH0pIGNhdGVnb3J5UGFyZW50ITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG4gIEBJbnB1dCgpIGRhdGE/OiBGZWF0dXJlZENhdGVnb3J5TW9kYWw7XG4gIEBJbnB1dCgpIHJlc3BvbnNlRGF0YT86IENhdGVnb3J5W107XG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xuICBASW5wdXQoKSBlZGl0PzogYm9vbGVhbjtcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xuICBpc0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgY29udGVudD86IEZlYXR1cmVkQ2F0ZWdvcnlDb250ZW50TW9kYWw7XG4gIHN0eWxlcz86IEZlYXR1cmVkQ2F0ZWdvcnlTdHlsZXNNb2RlbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzdFNlcnZpY2U6IFJlc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIoKVxuICB9XG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMuZGF0YT8uc3R5bGVzO1xuICAgIHRoaXMuZ2V0Q29sbGVjdGlvbnNJZHMoKTtcbiAgICB0aGlzLl9ldmVudFNlcnZpY2Uuc2hvd0xvYWRpbmdTY3JlZW4uc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5pc0xvYWRpbmcgPSByZXNwb25zZTtcbiAgICB9KVxuICAgIC8vIHRoaXMuX2V2ZW50U2VydmljZS53cmFwRGlyZWN0aW9uLnN1YnNjcmliZSgocmVzcG9uc2UpPT4ge1xuICAgIC8vICAgaWYgKHJlc3BvbnNlID09PSB0aGlzLmRhdGE/LmlkICYmIHRoaXMuc3R5bGVzKVxuICAgIC8vICAgICB0aGlzLnN0eWxlcy5kaXJlY3Rpb24gPSByZXNwb25zZSBhcyBcIlJPV1wiIHwgXCJDT0xVTU5cIjtcbiAgICAvLyB9KVxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5jb2xsZWN0aW9uc0xpc3RFdmVudC5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLmdldENvbGxlY3Rpb25zSWRzKCk7XG4gICAgfSlcbiAgfVxuXG4gIGdldFNsaWNlUGFyYW1ldGVycygpIHtcbiAgICByZXR1cm4gWzAsICh0aGlzLnN0eWxlcz8ubWF4aW11bVByb2R1Y3QgfHwgMCldO1xuICB9XG4gIGdldENvbGxlY3Rpb25zSWRzKCkge1xuICAgIGlmICghdGhpcy5jb250ZW50Py5jb2xsZWN0aW9uSWRzKVxuICAgICAgcmV0dXJuO1xuICAgIHRoaXMucmVzdFNlcnZpY2UuZ2V0Q29sbGVjdGlvbkJ5SWRzKHRoaXMuY29udGVudD8uY29sbGVjdGlvbklkcykuc3Vic2NyaWJlKChyZXNwb25zZTogYW55KSA9PiB7XG4gICAgICB0aGlzLnJlc3BvbnNlRGF0YSA9IHJlc3BvbnNlLmZpbHRlcigoY2F0ZWdvcnk6IGFueSkgPT4gY2F0ZWdvcnkuZmVhdHVyZWRDb2xsZWN0aW9uIHx8IHRydWUpLm1hcCgoY29sbGVjdGlvbjogQ29sbGVjdGlvbikgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmNvbGxlY3Rpb24sXG4gICAgICAgICAgY2F0ZWdvcnlOYW1lOiBjb2xsZWN0aW9uLmNvbGxlY3Rpb25OYW1lLFxuICAgICAgICAgIGNhdGVnb3J5SWQ6IGNvbGxlY3Rpb24uY29sbGVjdGlvbklkXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICB0aGlzLmNvbnRlbnQ/LmNvbGxlY3Rpb25JZHM/LmZvckVhY2goKGlkOiBzdHJpbmcsIGNvbGxlY3Rpb25JbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGxldCBpbmRleCA9IC0xO1xuICAgICAgICB0aGlzLnJlc3BvbnNlRGF0YT8uZm9yRWFjaCgoZGF0YTogYW55LCBpZHgpID0+IHtcbiAgICAgICAgICBpZiAoZGF0YS5jb2xsZWN0aW9uSWQgPT0gaWQpXG4gICAgICAgICAgICBpbmRleCA9IGlkeDtcbiAgICAgICAgfSlcbiAgICAgICAgdGhpcy5kcm9wQ29sbGVjdGlvbihpbmRleCwgY29sbGVjdGlvbkluZGV4KTtcbiAgICAgIH0pXG4gICAgfSlcblxuICB9XG4gIGRyb3BDb2xsZWN0aW9uKHN0YXJ0SWR4OiBudW1iZXIsIGVuZElkeDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMucmVzcG9uc2VEYXRhKVxuICAgICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMucmVzcG9uc2VEYXRhLCBzdGFydElkeCwgZW5kSWR4KTtcbiAgfVxuICByZWRpcmVjdFRvTGlzdFBhZ2UoY29sbGVjdGlvbjogYW55KSB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUobGlzdFBhdGgoeyBjb2xsZWN0aW9uIH0pKTtcbiAgfVxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xuICAgIHJldHVybiB7IC4uLnRoaXMuc3R5bGVzPy5sYXlvdXQgfSBhcyBMYXlPdXRNb2RlbDtcbiAgfVxuICBnZXQgZ2V0RGlyZWN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnN0eWxlcz8uZGlyZWN0aW9uO1xuICB9XG4gIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gd2luZG93LmlubmVyV2lkdGggPD0gNDc1O1xuICB9XG4gIGVkaXRTZWN0aW9uKCkge1xuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xuICAgIH0sIDEwMCk7XG4gIH1cbiAgZ2V0SnVzdGlmeUNvbnRlbnQoKSB7XG4gICAgY29uc3QgZWwgPSB0aGlzLmNhdGVnb3J5UGFyZW50Py5uYXRpdmVFbGVtZW50O1xuICAgIGlmICghZWwpIHJldHVybiAnJztcbiAgICBjb25zdCBpc092ZXJmbG93aW5nID0gZWwuc2Nyb2xsV2lkdGggPiBlbC5jbGllbnRXaWR0aDtcbiAgICBpZiAoaXNPdmVyZmxvd2luZykge1xuICAgICAgcmV0dXJuICdmbGV4LXN0YXJ0JztcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5sYXlvdXQ/LmFsaWduIHx8ICcnO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGluZ1wiPlxuICA8c2VjdGlvbiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCB0b3RhbC1jb250YWluZXIgcC0wXCIgW2lkXT1cImRhdGE/LmlkXCIgc2ltcG9Ib3ZlciAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIlxuICAgIFthdHRyLnN0eWxlXT1cImN1c3RvbUNsYXNzXCI+XG4gICAgPGRpdiBbc3BhY2luZ0Fyb3VuZF09XCJzdHlsZXNMYXlvdXRcIiBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9Cb3JkZXJdPVwic3R5bGVzPy5ib3JkZXJcIiBjbGFzcz1cImJvcmRlci1yYWRpdXMtdW5zZXRcIj5cbiAgICAgIDxkaXYgW2lkXT1cImRhdGE/LmlkXCIgI21haW5Db250YWluZXIgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCIgW3NpbXBvQmFja2dyb3VuZF09XCJzdHlsZXM/LmJhY2tncm91bmRcIlxuICAgICAgICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgY2xhc3M9XCJkLWZsZXggdy0xMDBcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiB3LTEwMFwiIFtzaW1wb092ZXJsYXldPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCIgW3NpbXBvQ29ybmVyXT1cInN0eWxlcz8uY29ybmVyc1wiXG4gICAgICAgICAgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlcz8ubGF5b3V0XCIgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiXG4gICAgICAgICAgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCI+XG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZW50Py5pbnB1dFRleHRcIiBjbGFzcz1cInRleHQtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8IS0tIDxkaXYgIGNsYXNzID0gXCJjb250ZW50LXNpZGVcIltpbm5lckhUTUxdPVwiaXRlbS52YWx1ZSB8IHNhbml0aXplSHRtbFwiIFtuZ0NsYXNzXT1cIml0ZW0ubGFiZWwgPT09ICdIZWFkaW5nJyA/ICdoZWFkaW5nLWxhcmdlIGxoLTIgbWItMycgOiAnYm9keS1sYXJnZSdcIj4gLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdCB8fCBpdGVtLnZhbHVlXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwdC0zIHctMTAwXCI+XG4gICAgICAgICAgICAgICAgPHNpbXBvLXRleHQtZWRpdG9yIFsodmFsdWUpXT1cIml0ZW0udmFsdWVcIiBbZWRpdGFibGVdPVwiZWRpdCB8fCBmYWxzZVwiIFtpc1JURV09XCJpdGVtLmlzUlRFXCI+PC9zaW1wby10ZXh0LWVkaXRvcj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwhLS0gPC9kaXY+IC0tPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZXM/LmNvbXBvbmVudFN0eWxlID09PSAnU3R5bGUxJztlbHNlIGNhdGVnb3J5U3R5bGUyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2F0ZWdvcnktcGFyZW50XCIgW25nQ2xhc3NdPVwieydmbGV4LXdyYXAnOiBnZXREaXJlY3Rpb24gPT0gJ0NPTFVNTid9XCJcbiAgICAgICAgICAgICAgW3NpbXBvQ29udGFpbmVyQWxpZ25tZW50XT1cInN0eWxlcz8ubGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCJcbiAgICAgICAgICAgICAgW3N0eWxlLmp1c3RpZnlDb250ZW50XT1cIiFpc01vYmlsZSA/IGdldEp1c3RpZnlDb250ZW50KCkgOiAnJ1wiICNjYXRlZ29yeVBhcmVudDE+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZGF0YSBvZiByZXNwb25zZURhdGEgfCBzbGljZTpnZXRTbGljZVBhcmFtZXRlcnMoKVswXTpnZXRTbGljZVBhcmFtZXRlcnMoKVsxXTsgbGV0IGlkeCA9IGluZGV4XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVkaXJlY3RUb0xpc3RQYWdlKGRhdGEpXCIgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIHctZml0LWNvbnRlbnRcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3ctNDggZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlcicgOiBpc01vYmlsZX1cIj5cbiAgICAgICAgICAgICAgICA8aW1nICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiKHN0eWxlcz8uY29udGFpbmVySGVpZ2h0ID8/IDEpIC8gKGlzTW9iaWxlID8gMiA6IDEpXCJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS53aWR0aC5weF09XCIoc3R5bGVzPy5jb250YWluZXJXaWR0aCA/PyAxKSAvIChpc01vYmlsZSA/IDIgOiAxKVwiIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgIG9uZXJyb3I9XCJ0aGlzLnNyYz0naHR0cHM6Ly9pLnBvc3RpbWcuY2MvaFBTMkpwVjAvbm8taW1hZ2UtYXZhaWxhYmxlLmpwZydcIlxuICAgICAgICAgICAgICAgICAgW3NyY109XCJkYXRhLmltZ1VybD8uWzBdID8/ICdodHRwczovL2kucG9zdGltZy5jYy9oUFMySnBWMC9uby1pbWFnZS1hdmFpbGFibGUuanBnJ1wiIGFsdD1cIlwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImNhdGVnb3J5LWltYWdlXCIgW25nQ2xhc3NdPVwieydjYXRlZ29yeS1uZXctaW1hZ2UnIDogaXNNb2JpbGUgJiYgZ2V0RGlyZWN0aW9uID09ICdDT0xVTU4nfVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5Py5zaG93SGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwiKHN0eWxlcz8uY29udGFpbmVyV2lkdGggPz8gMSkgLyAoaXNNb2JpbGUgPyAyIDogMSlcIj57e2RhdGEuY2F0ZWdvcnlOYW1lfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tIGNsYXNzPVwiY2F0ZWdvcnktbmFtZSBib2R5LWxhcmdlXCIgIC0tPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2F0ZWdvcnlTdHlsZTI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDBcIj5cbiAgICAgICAgICAgICAgPHNpbXBvLWNhdGVnb3JpZXMtd2l0aC1pbWFnZS1iYWNrZ3JvdW5kLWNvbHVtbnMgW3Jlc3BvbnNlRGF0YV09XCJyZXNwb25zZURhdGFcIiBbc3R5bGVzXT1cInN0eWxlc1wiXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiPjwvc2ltcG8tY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGVzPy5kZXZpZGVyPy5kaXNwbGF5XCI+XG4gICAgICA8c2ltcG8tc3ZnLWRpdmlkZXIgW2RpdmlkZXJUeXBlXT1cInN0eWxlcz8uZGV2aWRlcj8uZGV2aWRlclR5cGVcIlxuICAgICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxuICAgICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cbiAgICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cbiAgICA8L2Rpdj5cblxuICA8L3NlY3Rpb24+XG48L25nLWNvbnRhaW5lcj5cblxuPG5neC1za2VsZXRvbi1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBjb3VudD1cIjFcIiBhcHBlYXJhbmNlPVwiY2lyY2xlXCIgW3RoZW1lXT1cIntcbiAgd2lkdGg6ICcxMDAlJyxcbiAgaGVpZ2h0OiAnNDB2aCcsXG4gICdib3JkZXItcmFkaXVzJzogJzEwcHgnLFxuICAncG9zaXRpb24nOiAncmVsYXRpdmUnLFxuICAncmlnaHQnOiAnNXB4J1xufVwiPlxuPC9uZ3gtc2tlbGV0b24tbG9hZGVyPiJdfQ==
|