ctt-puro 0.43.0 → 0.43.1
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.
|
@@ -36,7 +36,7 @@ export class PuroHeaderComponent {
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
39
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroHeaderComponent, isStandalone: true, selector: "lib-puro-header", inputs: { titleMenu: "titleMenu", titleLang: "titleLang", navLinks: "navLinks", bottomLinks: "bottomLinks", siteId: "siteId", isHotelsPage: "isHotelsPage", btnBook: "btnBook", btnCheckinOnline: "btnCheckinOnline", btnCheckin: "btnCheckin", isDynamic: "isDynamic", logoHotel: "logoHotel", linkHotel: "linkHotel", hotelBrand: "hotelBrand" }, outputs: { btnClick: "btnClick", btnClickCheckin: "btnClickCheckin", btnClickCheckinOnline: "btnClickCheckinOnline" }, providers: [PuroActiveModalDirective], ngImport: i0, template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n
|
|
39
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroHeaderComponent, isStandalone: true, selector: "lib-puro-header", inputs: { titleMenu: "titleMenu", titleLang: "titleLang", navLinks: "navLinks", bottomLinks: "bottomLinks", siteId: "siteId", isHotelsPage: "isHotelsPage", btnBook: "btnBook", btnCheckinOnline: "btnCheckinOnline", btnCheckin: "btnCheckin", isDynamic: "isDynamic", logoHotel: "logoHotel", linkHotel: "linkHotel", hotelBrand: "hotelBrand" }, outputs: { btnClick: "btnClick", btnClickCheckin: "btnClickCheckin", btnClickCheckinOnline: "btnClickCheckinOnline" }, providers: [PuroActiveModalDirective], ngImport: i0, template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n @if(link.url === \"lang\"){\n <li \n class=\"modal__nav--link js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"link.label ?? 'Language Menu'\"\n >\n <a>\n {{link.label}}\n </a>\n </li>\n }\n @else {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroActiveModalDirective, selector: "[activeModal]" }, { kind: "directive", type: PuroNavStickyDirective, selector: "[navSticky]", inputs: ["isDynamic"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
40
40
|
}
|
|
41
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroHeaderComponent, decorators: [{
|
|
42
42
|
type: Component,
|
|
@@ -46,7 +46,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
46
46
|
PuroActiveModalDirective,
|
|
47
47
|
PuroNavStickyDirective,
|
|
48
48
|
NgOptimizedImage
|
|
49
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, providers: [PuroActiveModalDirective], template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n
|
|
49
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, providers: [PuroActiveModalDirective], template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n @if(link.url === \"lang\"){\n <li \n class=\"modal__nav--link js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"link.label ?? 'Language Menu'\"\n >\n <a>\n {{link.label}}\n </a>\n </li>\n }\n @else {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"] }]
|
|
50
50
|
}], propDecorators: { titleMenu: [{
|
|
51
51
|
type: Input
|
|
52
52
|
}], titleLang: [{
|
|
@@ -80,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
80
80
|
}], btnClickCheckinOnline: [{
|
|
81
81
|
type: Output
|
|
82
82
|
}] } });
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXIvcHVyby1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXIvcHVyby1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pFLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsd0JBQXdCLEVBQ3hCLHFCQUFxQixHQUN4QixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDOztBQWtCcEcsTUFBTSxPQUFPLG1CQUFtQjtJQWZoQztRQWdCWSxtQkFBYyxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBU2pELGlCQUFZLEdBQWEsS0FBSyxDQUFDO1FBSS9CLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFLakIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3JDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFNUMsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFFeEIsYUFBUSxHQUFHLEVBQUUsQ0FBQztLQXVCakI7SUFyQkcsWUFBWTtRQUNSLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2pCLEtBQUssSUFBSSxDQUFDLFVBQVU7Z0JBQ2hCLE1BQU07WUFDVixLQUFLLElBQUksQ0FBQyxXQUFXO2dCQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNsQyxNQUFNO1lBQ1YsS0FBSyxJQUFJLENBQUMsVUFBVTtnQkFDaEIsTUFBTTtZQUVWO2dCQUNJLE1BQU07U0FDYjtJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRTtZQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztTQUNuRDtJQUNMLENBQUM7K0dBakRRLG1CQUFtQjttR0FBbkIsbUJBQW1CLHlnQkFGakIsQ0FBQyx3QkFBd0IsQ0FBQywwQkM5QnpDLGdsTEFrS0Esc0lEN0lJLFlBQVksK0JBQ1oscUJBQXFCLDRJQUNyQix3QkFBd0IsMERBQ3hCLHNCQUFzQiwrRUFDdEIsZ0JBQWdCOzs0RkFPUCxtQkFBbUI7a0JBZi9CLFNBQVM7K0JBQ0ksaUJBQWlCLGNBQ2YsSUFBSSxXQUNQO3dCQUNULFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQix3QkFBd0I7d0JBQ3hCLHNCQUFzQjt3QkFDdEIsZ0JBQWdCO3FCQUNuQixtQkFHb0IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLHdCQUF3QixDQUFDOzhCQUk1QixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFJRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxxQkFBcUI7c0JBQTlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlLFxuICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbn0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBQdXJvTmF2U3RpY2t5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wdXJvLW5hdi1zdGlja3kvcHVyby1uYXYtc3RpY2t5LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQdXJvQnV0dG9uSSwgUHVyb0ltYWdlSSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLWhlYWRlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICBQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmUsXG4gICAgUHVyb05hdlN0aWNreURpcmVjdGl2ZSxcbiAgICBOZ09wdGltaXplZEltYWdlXG5dLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdXJvLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL3B1cm8taGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBQdXJvSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xuICAgIHByaXZhdGUgYWN0aXZlTW9kYWxEdHYgPSBpbmplY3QoUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlKTtcbiAgICBASW5wdXQoKSB0aXRsZU1lbnU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgdGl0bGVMYW5nPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIG5hdkxpbmtzPzogUHVyb0J1dHRvbklbXTtcbiAgICBASW5wdXQoKSBib3R0b21MaW5rcz86IFB1cm9CdXR0b25JW107XG4gICAgQElucHV0KCkgc2l0ZUlkPzpcbiAgICB8IHR5cGVvZiB0aGlzLlNJVEVfR1JPVVBcbiAgICB8IHR5cGVvZiB0aGlzLlNJVEVfQkVBQ0hcbiAgICB8IHR5cGVvZiB0aGlzLlNJVEVfSE9URUxTO1xuICAgIEBJbnB1dCgpIGlzSG90ZWxzUGFnZT86IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBidG5Cb29rPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGJ0bkNoZWNraW5PbmxpbmU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnRuQ2hlY2tpbj86IHN0cmluZztcbiAgICBASW5wdXQoKSBpc0R5bmFtaWMgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBsb2dvSG90ZWw/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgbGlua0hvdGVsPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGhvdGVsQnJhbmQ/OiBQdXJvSW1hZ2VJO1xuXG4gICAgQE91dHB1dCgpIGJ0bkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIEBPdXRwdXQoKSBidG5DbGlja0NoZWNraW4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIGJ0bkNsaWNrQ2hlY2tpbk9ubGluZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHJlYWRvbmx5IFNJVEVfR1JPVVAgPSAxO1xuICAgIHJlYWRvbmx5IFNJVEVfSE9URUxTID0gMjtcbiAgICByZWFkb25seSBTSVRFX0JFQUNIID0gMztcblxuICAgIGNzc0JnVXJsID0gJyc7XG5cbiAgICBjbGlja0J0bkJvb2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYnRuQ2xpY2suZW1pdCgpO1xuICAgICAgICBzd2l0Y2ggKHRoaXMuc2l0ZUlkKSB7XG4gICAgICAgICAgICBjYXNlIHRoaXMuU0lURV9HUk9VUDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgdGhpcy5TSVRFX0hPVEVMUzpcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2ZU1vZGFsRHR2LmhhbmRsZUNsaWNrKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHRoaXMuU0lURV9CRUFDSDpcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ob3RlbEJyYW5kPy5zcmMpIHtcbiAgICAgICAgICAgIHRoaXMuY3NzQmdVcmwgPSBgdXJsKFwiJHt0aGlzLmhvdGVsQnJhbmQuc3JjfVwiKWA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8aGVhZGVyIGNsYXNzPVwiaGVhZGVyXCIgbmF2U3RpY2t5IFtpc0R5bmFtaWNdPVwiaXNEeW5hbWljXCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fbG9nb1wiPlxuICAgICAgICBAaWYgKGxvZ29Ib3RlbCkge1xuICAgICAgICAgICAgPGEgW2hyZWZdPVwibGlua0hvdGVsXCIgbGlua1R5cGU9XCJpbnRlcm5hbFwiPlxuICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cImxvZ29Ib3RlbFwiXG4gICAgICAgICAgICAgICAgICAgIGFsdD1cIkxvZ29cIlxuICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjMwMVwiXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjMyXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJoZWFkZXJfX2xvZ28tLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgIHByaW9yaXR5XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8YSBbaHJlZl09XCJuYXZMaW5rcz8uWzBdPy51cmxcIiBbbGlua1R5cGVdPVwibmF2TGlua3M/LlswXT8ubGlua1R5cGVcIj5cbiAgICAgICAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzMDFcIlxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIzMlwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaGVhZGVyX19sb2dvLS1pbWdcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChzaXRlSWQgPT09IFNJVEVfSE9URUxTKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9XCIjcHVyby1sb2dvXCI+PC91c2U+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChzaXRlSWQgPT09IFNJVEVfQkVBQ0gpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgaHJlZj1cIiNwdXJvYmVhY2gtbG9nb1wiPjwvdXNlPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoc2l0ZUlkID09PSBTSVRFX0dST1VQKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9XCIjcHVyb2dyb3VwLWxvZ29cIj48L3VzZT5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fbGVmdE5hdlwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImhlYWRlcl9fbWVudSBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cIm5hdmlnYXRpb25cIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRpdGxlTWVudSA/PyAnTWVudSdcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImljb24tODNcIj48L2k+XG4gICAgICAgICAgICBAaWYgKHRpdGxlTWVudSkge1xuICAgICAgICAgICAgICAgIDxzcGFuPnt7IHRpdGxlTWVudSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiaGVhZGVyX19sYW5ndWFnZSBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cImxhbmd1YWdlXCJcbiAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0aXRsZUxhbmcgPz8gJ0xhbmd1YWdlIE1lbnUnXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgQGlmICh0aXRsZUxhbmcpIHtcbiAgICAgICAgICAgICAgICB7eyB0aXRsZUxhbmcgfX1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgQGlmIChpc0hvdGVsc1BhZ2UpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fcmVzZXJ2ZXJcIj5cbiAgICAgICAgICAgIEBpZiAoYnRuQ2hlY2tpbk9ubGluZSkge1xuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGlja0NoZWNraW5PbmxpbmUuZW1pdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuX19wcmltYXJ5IGJ0bi0tbGcgY2hlY2tJblwiXG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkNoZWNraW5PbmxpbmVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYnRuQ2hlY2tpbk9ubGluZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoYnRuQ2hlY2tpbikge1xuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGlja0NoZWNraW4uZW1pdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJoZWFkZXJfX2NoZWNrSW5cIlxuICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidG5DaGVja2luXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IGJ0bkNoZWNraW4gfX1cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoYnRuQm9vaykge1xuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGljay5lbWl0KClcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fX3ByaW1hcnkgYnRuLS1sZyByZXNlcnZhclwiXG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkJvb2tcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYnRuQm9vayB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAaWYgKGJ0bkJvb2spIHtcbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImJ0bkNsaWNrLmVtaXQoKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJoZWFkZXJfX3Jlc2VydmVyXCJcbiAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkJvb2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG4gYnRuX19wcmltYXJ5IGJ0bi0tbGdcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYnRuQm9vayB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgfVxuICAgIH1cbjwvaGVhZGVyPlxuXG48ZGl2IGNsYXNzPVwibW9kYWwgbW9kYWwtLXNvbGlkQ3JlYW0gbW9kYWwtLW5hdmlnYXRpb25cIj5cbiAgICA8ZGl2IGNsYXNzPVwibW9kYWxfX2lubmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbF9fYm9keVwiIFtzdHlsZS4tLWJnLXVybF09XCJjc3NCZ1VybFwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibW9kYWxfX2Nsb3NlIGpzLWNsb3NlXCJcbiAgICAgICAgICAgICAgICBhY3RpdmVNb2RhbFxuICAgICAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cIm5hdmlnYXRpb25cIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJDbG9zZSBCdXR0b25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1vZGFsX19jbG9zZS0taWNvblwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9XCIjbW9kYWwtY2xvc2VcIj48L3VzZT5cbiAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsX19uYXZcIj5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJtb2RhbF9fbmF2LS1pdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKG5hdkxpbmtzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChsaW5rIG9mIG5hdkxpbmtzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJtb2RhbF9fbmF2LS1saW5rXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJsaW5rLnVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwibGluay5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImxpbmsubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGxpbmsubGFiZWwgfX08L2FcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cIm1vZGFsX19uYXYtLWl0ZW1zU21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChib3R0b21MaW5rcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAobGluayBvZiBib3R0b21MaW5rczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibW9kYWxfX25hdi0tbGlua1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImxpbmsubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibGluay51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJsaW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBsaW5rLmxhYmVsIH19PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXIvcHVyby1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXIvcHVyby1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pFLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsd0JBQXdCLEVBQ3hCLHFCQUFxQixHQUN4QixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDOztBQWtCcEcsTUFBTSxPQUFPLG1CQUFtQjtJQWZoQztRQWdCWSxtQkFBYyxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBU2pELGlCQUFZLEdBQWEsS0FBSyxDQUFDO1FBSS9CLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFLakIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3JDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFNUMsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFFeEIsYUFBUSxHQUFHLEVBQUUsQ0FBQztLQXVCakI7SUFyQkcsWUFBWTtRQUNSLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2pCLEtBQUssSUFBSSxDQUFDLFVBQVU7Z0JBQ2hCLE1BQU07WUFDVixLQUFLLElBQUksQ0FBQyxXQUFXO2dCQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNsQyxNQUFNO1lBQ1YsS0FBSyxJQUFJLENBQUMsVUFBVTtnQkFDaEIsTUFBTTtZQUVWO2dCQUNJLE1BQU07U0FDYjtJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRTtZQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztTQUNuRDtJQUNMLENBQUM7K0dBakRRLG1CQUFtQjttR0FBbkIsbUJBQW1CLHlnQkFGakIsQ0FBQyx3QkFBd0IsQ0FBQywwQkM5QnpDLHcxTUFpTEEsc0lENUpJLFlBQVksK0JBQ1oscUJBQXFCLDRJQUNyQix3QkFBd0IsMERBQ3hCLHNCQUFzQiwrRUFDdEIsZ0JBQWdCOzs0RkFPUCxtQkFBbUI7a0JBZi9CLFNBQVM7K0JBQ0ksaUJBQWlCLGNBQ2YsSUFBSSxXQUNQO3dCQUNULFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQix3QkFBd0I7d0JBQ3hCLHNCQUFzQjt3QkFDdEIsZ0JBQWdCO3FCQUNuQixtQkFHb0IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLHdCQUF3QixDQUFDOzhCQUk1QixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFJRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxxQkFBcUI7c0JBQTlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlLFxuICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbn0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBQdXJvTmF2U3RpY2t5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wdXJvLW5hdi1zdGlja3kvcHVyby1uYXYtc3RpY2t5LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQdXJvQnV0dG9uSSwgUHVyb0ltYWdlSSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLWhlYWRlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICBQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmUsXG4gICAgUHVyb05hdlN0aWNreURpcmVjdGl2ZSxcbiAgICBOZ09wdGltaXplZEltYWdlXG5dLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdXJvLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL3B1cm8taGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBQdXJvSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xuICAgIHByaXZhdGUgYWN0aXZlTW9kYWxEdHYgPSBpbmplY3QoUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlKTtcbiAgICBASW5wdXQoKSB0aXRsZU1lbnU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgdGl0bGVMYW5nPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIG5hdkxpbmtzPzogUHVyb0J1dHRvbklbXTtcbiAgICBASW5wdXQoKSBib3R0b21MaW5rcz86IFB1cm9CdXR0b25JW107XG4gICAgQElucHV0KCkgc2l0ZUlkPzpcbiAgICB8IHR5cGVvZiB0aGlzLlNJVEVfR1JPVVBcbiAgICB8IHR5cGVvZiB0aGlzLlNJVEVfQkVBQ0hcbiAgICB8IHR5cGVvZiB0aGlzLlNJVEVfSE9URUxTO1xuICAgIEBJbnB1dCgpIGlzSG90ZWxzUGFnZT86IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBidG5Cb29rPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGJ0bkNoZWNraW5PbmxpbmU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnRuQ2hlY2tpbj86IHN0cmluZztcbiAgICBASW5wdXQoKSBpc0R5bmFtaWMgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBsb2dvSG90ZWw/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgbGlua0hvdGVsPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGhvdGVsQnJhbmQ/OiBQdXJvSW1hZ2VJO1xuXG4gICAgQE91dHB1dCgpIGJ0bkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIEBPdXRwdXQoKSBidG5DbGlja0NoZWNraW4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIGJ0bkNsaWNrQ2hlY2tpbk9ubGluZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHJlYWRvbmx5IFNJVEVfR1JPVVAgPSAxO1xuICAgIHJlYWRvbmx5IFNJVEVfSE9URUxTID0gMjtcbiAgICByZWFkb25seSBTSVRFX0JFQUNIID0gMztcblxuICAgIGNzc0JnVXJsID0gJyc7XG5cbiAgICBjbGlja0J0bkJvb2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYnRuQ2xpY2suZW1pdCgpO1xuICAgICAgICBzd2l0Y2ggKHRoaXMuc2l0ZUlkKSB7XG4gICAgICAgICAgICBjYXNlIHRoaXMuU0lURV9HUk9VUDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgdGhpcy5TSVRFX0hPVEVMUzpcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2ZU1vZGFsRHR2LmhhbmRsZUNsaWNrKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHRoaXMuU0lURV9CRUFDSDpcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ob3RlbEJyYW5kPy5zcmMpIHtcbiAgICAgICAgICAgIHRoaXMuY3NzQmdVcmwgPSBgdXJsKFwiJHt0aGlzLmhvdGVsQnJhbmQuc3JjfVwiKWA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8aGVhZGVyIGNsYXNzPVwiaGVhZGVyXCIgbmF2U3RpY2t5IFtpc0R5bmFtaWNdPVwiaXNEeW5hbWljXCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fbG9nb1wiPlxuICAgICAgICBAaWYgKGxvZ29Ib3RlbCkge1xuICAgICAgICAgICAgPGEgW2hyZWZdPVwibGlua0hvdGVsXCIgbGlua1R5cGU9XCJpbnRlcm5hbFwiPlxuICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cImxvZ29Ib3RlbFwiXG4gICAgICAgICAgICAgICAgICAgIGFsdD1cIkxvZ29cIlxuICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjMwMVwiXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjMyXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJoZWFkZXJfX2xvZ28tLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgIHByaW9yaXR5XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8YSBbaHJlZl09XCJuYXZMaW5rcz8uWzBdPy51cmxcIiBbbGlua1R5cGVdPVwibmF2TGlua3M/LlswXT8ubGlua1R5cGVcIj5cbiAgICAgICAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzMDFcIlxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIzMlwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaGVhZGVyX19sb2dvLS1pbWdcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChzaXRlSWQgPT09IFNJVEVfSE9URUxTKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9XCIjcHVyby1sb2dvXCI+PC91c2U+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChzaXRlSWQgPT09IFNJVEVfQkVBQ0gpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgaHJlZj1cIiNwdXJvYmVhY2gtbG9nb1wiPjwvdXNlPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoc2l0ZUlkID09PSBTSVRFX0dST1VQKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9XCIjcHVyb2dyb3VwLWxvZ29cIj48L3VzZT5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fbGVmdE5hdlwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImhlYWRlcl9fbWVudSBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cIm5hdmlnYXRpb25cIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRpdGxlTWVudSA/PyAnTWVudSdcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImljb24tODNcIj48L2k+XG4gICAgICAgICAgICBAaWYgKHRpdGxlTWVudSkge1xuICAgICAgICAgICAgICAgIDxzcGFuPnt7IHRpdGxlTWVudSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiaGVhZGVyX19sYW5ndWFnZSBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cImxhbmd1YWdlXCJcbiAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0aXRsZUxhbmcgPz8gJ0xhbmd1YWdlIE1lbnUnXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgQGlmICh0aXRsZUxhbmcpIHtcbiAgICAgICAgICAgICAgICB7eyB0aXRsZUxhbmcgfX1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgQGlmIChpc0hvdGVsc1BhZ2UpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fcmVzZXJ2ZXJcIj5cbiAgICAgICAgICAgIEBpZiAoYnRuQ2hlY2tpbk9ubGluZSkge1xuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGlja0NoZWNraW5PbmxpbmUuZW1pdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuX19wcmltYXJ5IGJ0bi0tbGcgY2hlY2tJblwiXG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkNoZWNraW5PbmxpbmVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYnRuQ2hlY2tpbk9ubGluZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoYnRuQ2hlY2tpbikge1xuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGlja0NoZWNraW4uZW1pdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJoZWFkZXJfX2NoZWNrSW5cIlxuICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidG5DaGVja2luXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IGJ0bkNoZWNraW4gfX1cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoYnRuQm9vaykge1xuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGljay5lbWl0KClcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fX3ByaW1hcnkgYnRuLS1sZyByZXNlcnZhclwiXG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkJvb2tcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYnRuQm9vayB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAaWYgKGJ0bkJvb2spIHtcbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImJ0bkNsaWNrLmVtaXQoKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJoZWFkZXJfX3Jlc2VydmVyXCJcbiAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkJvb2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG4gYnRuX19wcmltYXJ5IGJ0bi0tbGdcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYnRuQm9vayB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgfVxuICAgIH1cbjwvaGVhZGVyPlxuXG48ZGl2IGNsYXNzPVwibW9kYWwgbW9kYWwtLXNvbGlkQ3JlYW0gbW9kYWwtLW5hdmlnYXRpb25cIj5cbiAgICA8ZGl2IGNsYXNzPVwibW9kYWxfX2lubmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbF9fYm9keVwiIFtzdHlsZS4tLWJnLXVybF09XCJjc3NCZ1VybFwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibW9kYWxfX2Nsb3NlIGpzLWNsb3NlXCJcbiAgICAgICAgICAgICAgICBhY3RpdmVNb2RhbFxuICAgICAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cIm5hdmlnYXRpb25cIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJDbG9zZSBCdXR0b25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1vZGFsX19jbG9zZS0taWNvblwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dXNlIGhyZWY9XCIjbW9kYWwtY2xvc2VcIj48L3VzZT5cbiAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsX19uYXZcIj5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJtb2RhbF9fbmF2LS1pdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKG5hdkxpbmtzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChsaW5rIG9mIG5hdkxpbmtzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJtb2RhbF9fbmF2LS1saW5rXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJsaW5rLnVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwibGluay5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImxpbmsubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGxpbmsubGFiZWwgfX08L2FcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cIm1vZGFsX19uYXYtLWl0ZW1zU21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChib3R0b21MaW5rcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAobGluayBvZiBib3R0b21MaW5rczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmKGxpbmsudXJsID09PSBcImxhbmdcIil7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibW9kYWxfX25hdi0tbGluayBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cImxhbmd1YWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJsaW5rLmxhYmVsID8/ICdMYW5ndWFnZSBNZW51J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7bGluay5sYWJlbH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibW9kYWxfX25hdi0tbGlua1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwibGluay5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibGluay51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGluay5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGxpbmsubGFiZWwgfX08L2FcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
package/fesm2022/ctt-puro.mjs
CHANGED
|
@@ -6420,7 +6420,7 @@ class PuroHeaderComponent {
|
|
|
6420
6420
|
}
|
|
6421
6421
|
}
|
|
6422
6422
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6423
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroHeaderComponent, isStandalone: true, selector: "lib-puro-header", inputs: { titleMenu: "titleMenu", titleLang: "titleLang", navLinks: "navLinks", bottomLinks: "bottomLinks", siteId: "siteId", isHotelsPage: "isHotelsPage", btnBook: "btnBook", btnCheckinOnline: "btnCheckinOnline", btnCheckin: "btnCheckin", isDynamic: "isDynamic", logoHotel: "logoHotel", linkHotel: "linkHotel", hotelBrand: "hotelBrand" }, outputs: { btnClick: "btnClick", btnClickCheckin: "btnClickCheckin", btnClickCheckinOnline: "btnClickCheckinOnline" }, providers: [PuroActiveModalDirective], ngImport: i0, template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n
|
|
6423
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroHeaderComponent, isStandalone: true, selector: "lib-puro-header", inputs: { titleMenu: "titleMenu", titleLang: "titleLang", navLinks: "navLinks", bottomLinks: "bottomLinks", siteId: "siteId", isHotelsPage: "isHotelsPage", btnBook: "btnBook", btnCheckinOnline: "btnCheckinOnline", btnCheckin: "btnCheckin", isDynamic: "isDynamic", logoHotel: "logoHotel", linkHotel: "linkHotel", hotelBrand: "hotelBrand" }, outputs: { btnClick: "btnClick", btnClickCheckin: "btnClickCheckin", btnClickCheckinOnline: "btnClickCheckinOnline" }, providers: [PuroActiveModalDirective], ngImport: i0, template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n @if(link.url === \"lang\"){\n <li \n class=\"modal__nav--link js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"link.label ?? 'Language Menu'\"\n >\n <a>\n {{link.label}}\n </a>\n </li>\n }\n @else {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroActiveModalDirective, selector: "[activeModal]" }, { kind: "directive", type: PuroNavStickyDirective, selector: "[navSticky]", inputs: ["isDynamic"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
6424
6424
|
}
|
|
6425
6425
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroHeaderComponent, decorators: [{
|
|
6426
6426
|
type: Component,
|
|
@@ -6430,7 +6430,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
6430
6430
|
PuroActiveModalDirective,
|
|
6431
6431
|
PuroNavStickyDirective,
|
|
6432
6432
|
NgOptimizedImage
|
|
6433
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, providers: [PuroActiveModalDirective], template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n
|
|
6433
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, providers: [PuroActiveModalDirective], template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"header__logo\">\n @if (logoHotel) {\n <a [href]=\"linkHotel\" linkType=\"internal\">\n <img\n [ngSrc]=\"logoHotel\"\n alt=\"Logo\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n priority\n />\n </a>\n } @else {\n <a [href]=\"navLinks?.[0]?.url\" [linkType]=\"navLinks?.[0]?.linkType\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"301\"\n height=\"32\"\n class=\"header__logo--img\"\n >\n @if (siteId === SITE_HOTELS) {\n <use href=\"#puro-logo\"></use>\n }\n @if (siteId === SITE_BEACH) {\n <use href=\"#purobeach-logo\"></use>\n }\n @if (siteId === SITE_GROUP) {\n <use href=\"#purogroup-logo\"></use>\n }\n </svg>\n </a>\n }\n </div>\n <div class=\"header__leftNav\">\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n </div>\n @if (isHotelsPage) {\n <div class=\"header__reserver\">\n @if (btnCheckinOnline) {\n <a\n (click)=\"btnClickCheckinOnline.emit()\"\n class=\"btn btn__primary btn--lg checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckinOnline\"\n >\n <span>{{ btnCheckinOnline }}</span>\n </a>\n }\n\n @if (btnCheckin) {\n <a\n (click)=\"btnClickCheckin.emit()\"\n class=\"header__checkIn\"\n role=\"button\"\n [attr.aria-label]=\"btnCheckin\"\n >\n {{ btnCheckin }}\n </a>\n }\n\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"btn btn__primary btn--lg reservar\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n } @else {\n @if (btnBook) {\n <a\n (click)=\"btnClick.emit()\"\n class=\"header__reserver\"\n role=\"button\"\n [attr.aria-label]=\"btnBook\"\n >\n <div class=\"btn btn__primary btn--lg\">\n <span>{{ btnBook }}</span>\n </div>\n </a>\n }\n }\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\" [style.--bg-url]=\"cssBgUrl\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n @if(link.url === \"lang\"){\n <li \n class=\"modal__nav--link js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"link.label ?? 'Language Menu'\"\n >\n <a>\n {{link.label}}\n </a>\n </li>\n }\n @else {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"] }]
|
|
6434
6434
|
}], propDecorators: { titleMenu: [{
|
|
6435
6435
|
type: Input
|
|
6436
6436
|
}], titleLang: [{
|