desy-angular 9.0.0 → 9.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/esm2022/lib/desy-buttons/components/dropdown/dropdown.component.mjs +20 -4
  2. package/esm2022/lib/desy-forms/components/file-upload/file-upload.component.mjs +18 -8
  3. package/esm2022/lib/desy-forms/components/input/input.component.mjs +5 -3
  4. package/esm2022/lib/desy-forms/components/select/select.component.mjs +3 -2
  5. package/esm2022/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +3 -3
  6. package/esm2022/lib/desy-nav/components/footer/footer.component.mjs +3 -3
  7. package/esm2022/lib/desy-nav/components/header/header-mobileText/header-mobile-text.component.mjs +1 -1
  8. package/esm2022/lib/desy-nav/components/notification/notification.component.mjs +3 -3
  9. package/esm2022/lib/desy-pagination/components/pagination/pagination.component.mjs +14 -10
  10. package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.mjs +4 -2
  11. package/esm2022/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +24 -10
  12. package/esm2022/lib/desy-tables/interfaces/head-cell-data.mjs +1 -1
  13. package/fesm2022/desy-angular.mjs +86 -37
  14. package/fesm2022/desy-angular.mjs.map +1 -1
  15. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +2 -0
  16. package/lib/desy-forms/components/file-upload/file-upload.component.d.ts +4 -1
  17. package/lib/desy-forms/components/input/input.component.d.ts +1 -1
  18. package/lib/desy-nav/components/header/header-mobileText/header-mobile-text.component.d.ts +14 -14
  19. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +1 -0
  20. package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +2 -1
  21. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +1 -0
  22. package/lib/desy-tables/interfaces/head-cell-data.d.ts +1 -0
  23. package/package.json +1 -1
@@ -45,7 +45,7 @@ export class NotificationComponent extends AccessibilityComponent {
45
45
  this.changeDetectorRef.detectChanges();
46
46
  }
47
47
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NotificationComponent, selector: "desy-notification", inputs: { id: "id", classes: "classes", isOpen: "isOpen", title: "title", description: "description", content: "content", items: "items", icon: "icon", type: "type", isDismissible: "isDismissible", headingLevel: "headingLevel" }, outputs: { isOpenChange: "isOpenChange" }, queries: [{ propertyName: "titleComponent", predicate: TitleComponent }, { propertyName: "descriptionComponent", predicate: DescriptionComponent }, { propertyName: "contentComponent", predicate: ContentComponent }, { propertyName: "iconComponent", predicate: IconComponent }, { propertyName: "itemCompontents", predicate: NotificationItemComponent }], usesInheritance: true, ngImport: i0, template: "<div [attr.id]=\"id ? id : null\" [class]=\"(classes ? 'c-notification ' + classes : type==='success' ? 'c-notification c-notification--' + type : type==='alert' ? 'c-notification c-notification--' + type : 'c-notification c-notification--primary') \"\n *ngIf=\"isOpen && !isDismissing\"\n @displayNotification\n [attr.role]=\"role\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-errormessage]=\"ariaErrorMessage\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.aria-disabled]=\"ariaDisabled\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-current]=\"ariaCurrent\"\n [attr.aria-live]=\"ariaLive\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-haspopup]=\"ariaHasPopup\"\n [attr.tabindex]=\"tabindex\">\n <div *ngIf=\"iconComponent || icon || type\" class=\"h-full mr-base\">\n <ng-container *desyCustomInnerContent=\"{ component: iconComponent, html: icon ? icon.html : null }\"></ng-container>\n <ng-container *ngIf=\"displayDefaultIcon && type\">\n <ng-container [ngSwitch]=\"getType()\">\n <svg *ngSwitchCase=\"'success'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-success-dark\" aria-label=\"\u00C9xito\" focusable=\"false\" role=\"img\"><path d=\"M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'alert'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-alert-base\" aria-label=\"Error\" focusable=\"false\" role=\"img\"><path d=\"M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'info'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-primary-base\" aria-label=\"Informaci\u00F3n\" focusable=\"false\" role=\"img\"><path d=\"M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"lg:flex flex-1 self-center\">\n <div class=\"lg:flex-1 lg:self-center\">\n <ng-container *ngIf=\"titleComponent || title\" [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h1>\n <h2 *ngSwitchCase=\"2\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h2>\n <h3 *ngSwitchCase=\"3\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h3>\n <h4 *ngSwitchCase=\"4\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h4>\n <h5 *ngSwitchCase=\"5\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h5>\n <p *ngSwitchDefault [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ng-container *ngIf=\"descriptionComponent || description\">\n <p [class]=\"descriptionComponent ? descriptionComponent.classes : description.classes\">\n <ng-container *desyCustomInnerContent=\"{\n component: descriptionComponent,\n html: description ? description.html : null,\n text: description ? description.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ul *ngIf=\"(itemCompontents && itemCompontents.length > 0) || items\">\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <li *ngIf=\"item.routerLink || item.href\">\n <a *ngIf=\"item.routerLink\" class=\"c-link\"\n [routerLink]=\"item.routerLink\"\n [fragment]=\"item.fragment\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n <a *ngIf=\"!item.routerLink && item.href\" class=\"c-link\"\n [href]=\"item.href | externalHref\"\n [target]=\"item.target\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n </li>\n <li *ngIf=\"!item.routerLink && !item.href\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </li>\n </ng-container>\n </ul>\n <p *ngIf=\"contentComponent || content\" [class]=\"['text-sm', contentComponent ? contentComponent.classes : content.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: contentComponent,\n html: content ? content.html : null,\n text: content ? content.text : null\n }\"></ng-container>\n </p>\n </div>\n <ng-container *ngIf=\"isDismissible\">\n <div class=\"absolute top-0 right-0 p-sm\">\n <button (click)=\"dismiss()\" class=\"p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none\" aria-label=\"X: Cerrar notificaci\u00F3n\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-4 h-4 pointer-events-none\" aria-hidden=\"true\" role=\"presentation\"><path d=\"M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z\" fill=\"currentColor\"/></svg>\n </button>\n </div>\n </ng-container>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.CustomInnerContentDirective, selector: "[desyCustomInnerContent]", inputs: ["desyCustomInnerContent"] }, { kind: "pipe", type: i4.MakeHtmlListPipe, name: "makeHtmlList" }, { kind: "pipe", type: i5.ExternalHrefPipe, name: "externalHref" }], animations: [
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NotificationComponent, selector: "desy-notification", inputs: { id: "id", classes: "classes", isOpen: "isOpen", title: "title", description: "description", content: "content", items: "items", icon: "icon", type: "type", isDismissible: "isDismissible", headingLevel: "headingLevel" }, outputs: { isOpenChange: "isOpenChange" }, queries: [{ propertyName: "titleComponent", predicate: TitleComponent }, { propertyName: "descriptionComponent", predicate: DescriptionComponent }, { propertyName: "contentComponent", predicate: ContentComponent }, { propertyName: "iconComponent", predicate: IconComponent }, { propertyName: "itemCompontents", predicate: NotificationItemComponent }], usesInheritance: true, ngImport: i0, template: "<div [attr.id]=\"id ? id : null\" [class]=\"(classes ? 'c-notification ' + classes : type==='success' ? 'c-notification c-notification--success' : type==='alert' ? 'c-notification c-notification--alert' : 'c-notification c-notification--primary') \"\n *ngIf=\"isOpen && !isDismissing\"\n @displayNotification\n [attr.role]=\"role\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-errormessage]=\"ariaErrorMessage\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.aria-disabled]=\"ariaDisabled\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-current]=\"ariaCurrent\"\n [attr.aria-live]=\"ariaLive\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-haspopup]=\"ariaHasPopup\"\n [attr.tabindex]=\"tabindex\">\n <div *ngIf=\"iconComponent || icon || type\" class=\"h-full mr-base\">\n <ng-container *desyCustomInnerContent=\"{ component: iconComponent, html: icon ? icon.html : null }\"></ng-container>\n <ng-container *ngIf=\"displayDefaultIcon && type\">\n <ng-container [ngSwitch]=\"getType()\">\n <svg *ngSwitchCase=\"'success'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-success-dark\" aria-label=\"\u00C9xito\" focusable=\"false\" role=\"img\"><path d=\"M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'alert'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-alert-base\" aria-label=\"Error\" focusable=\"false\" role=\"img\"><path d=\"M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'info'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-primary-base\" aria-label=\"Informaci\u00F3n\" focusable=\"false\" role=\"img\"><path d=\"M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"lg:flex flex-1 self-center\">\n <div class=\"lg:flex-1 lg:self-center\">\n <ng-container *ngIf=\"titleComponent || title\" [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h1>\n <h2 *ngSwitchCase=\"2\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h2>\n <h3 *ngSwitchCase=\"3\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h3>\n <h4 *ngSwitchCase=\"4\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h4>\n <h5 *ngSwitchCase=\"5\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h5>\n <p *ngSwitchDefault [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ng-container *ngIf=\"descriptionComponent || description\">\n <p [class]=\"descriptionComponent ? descriptionComponent.classes : description.classes\">\n <ng-container *desyCustomInnerContent=\"{\n component: descriptionComponent,\n html: description ? description.html : null,\n text: description ? description.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ul *ngIf=\"(itemCompontents && itemCompontents.length > 0) || items\">\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <li *ngIf=\"item.routerLink || item.href\">\n <a *ngIf=\"item.routerLink\" class=\"c-link\"\n [routerLink]=\"item.routerLink\"\n [fragment]=\"item.fragment\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n <a *ngIf=\"!item.routerLink && item.href\" class=\"c-link\"\n [href]=\"item.href | externalHref\"\n [target]=\"item.target\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n </li>\n <li *ngIf=\"!item.routerLink && !item.href\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </li>\n </ng-container>\n </ul>\n <p *ngIf=\"contentComponent || content\" [class]=\"['text-sm', contentComponent ? contentComponent.classes : content.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: contentComponent,\n html: content ? content.html : null,\n text: content ? content.text : null\n }\"></ng-container>\n </p>\n </div>\n <ng-container *ngIf=\"isDismissible\">\n <div class=\"absolute top-0 right-0 p-sm\">\n <button (click)=\"dismiss()\" class=\"p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none\" aria-label=\"X: Cerrar notificaci\u00F3n\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-4 h-4 pointer-events-none\" aria-hidden=\"true\" role=\"presentation\"><path d=\"M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z\" fill=\"currentColor\"/></svg>\n </button>\n </div>\n </ng-container>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.CustomInnerContentDirective, selector: "[desyCustomInnerContent]", inputs: ["desyCustomInnerContent"] }, { kind: "pipe", type: i4.MakeHtmlListPipe, name: "makeHtmlList" }, { kind: "pipe", type: i5.ExternalHrefPipe, name: "externalHref" }], animations: [
49
49
  trigger('displayNotification', [
50
50
  state('void', style({
51
51
  opacity: '0.0',
@@ -95,7 +95,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
95
95
  animate('150ms ease-in')
96
96
  ])
97
97
  ])
98
- ], template: "<div [attr.id]=\"id ? id : null\" [class]=\"(classes ? 'c-notification ' + classes : type==='success' ? 'c-notification c-notification--' + type : type==='alert' ? 'c-notification c-notification--' + type : 'c-notification c-notification--primary') \"\n *ngIf=\"isOpen && !isDismissing\"\n @displayNotification\n [attr.role]=\"role\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-errormessage]=\"ariaErrorMessage\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.aria-disabled]=\"ariaDisabled\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-current]=\"ariaCurrent\"\n [attr.aria-live]=\"ariaLive\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-haspopup]=\"ariaHasPopup\"\n [attr.tabindex]=\"tabindex\">\n <div *ngIf=\"iconComponent || icon || type\" class=\"h-full mr-base\">\n <ng-container *desyCustomInnerContent=\"{ component: iconComponent, html: icon ? icon.html : null }\"></ng-container>\n <ng-container *ngIf=\"displayDefaultIcon && type\">\n <ng-container [ngSwitch]=\"getType()\">\n <svg *ngSwitchCase=\"'success'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-success-dark\" aria-label=\"\u00C9xito\" focusable=\"false\" role=\"img\"><path d=\"M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'alert'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-alert-base\" aria-label=\"Error\" focusable=\"false\" role=\"img\"><path d=\"M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'info'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-primary-base\" aria-label=\"Informaci\u00F3n\" focusable=\"false\" role=\"img\"><path d=\"M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"lg:flex flex-1 self-center\">\n <div class=\"lg:flex-1 lg:self-center\">\n <ng-container *ngIf=\"titleComponent || title\" [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h1>\n <h2 *ngSwitchCase=\"2\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h2>\n <h3 *ngSwitchCase=\"3\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h3>\n <h4 *ngSwitchCase=\"4\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h4>\n <h5 *ngSwitchCase=\"5\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h5>\n <p *ngSwitchDefault [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ng-container *ngIf=\"descriptionComponent || description\">\n <p [class]=\"descriptionComponent ? descriptionComponent.classes : description.classes\">\n <ng-container *desyCustomInnerContent=\"{\n component: descriptionComponent,\n html: description ? description.html : null,\n text: description ? description.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ul *ngIf=\"(itemCompontents && itemCompontents.length > 0) || items\">\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <li *ngIf=\"item.routerLink || item.href\">\n <a *ngIf=\"item.routerLink\" class=\"c-link\"\n [routerLink]=\"item.routerLink\"\n [fragment]=\"item.fragment\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n <a *ngIf=\"!item.routerLink && item.href\" class=\"c-link\"\n [href]=\"item.href | externalHref\"\n [target]=\"item.target\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n </li>\n <li *ngIf=\"!item.routerLink && !item.href\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </li>\n </ng-container>\n </ul>\n <p *ngIf=\"contentComponent || content\" [class]=\"['text-sm', contentComponent ? contentComponent.classes : content.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: contentComponent,\n html: content ? content.html : null,\n text: content ? content.text : null\n }\"></ng-container>\n </p>\n </div>\n <ng-container *ngIf=\"isDismissible\">\n <div class=\"absolute top-0 right-0 p-sm\">\n <button (click)=\"dismiss()\" class=\"p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none\" aria-label=\"X: Cerrar notificaci\u00F3n\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-4 h-4 pointer-events-none\" aria-hidden=\"true\" role=\"presentation\"><path d=\"M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z\" fill=\"currentColor\"/></svg>\n </button>\n </div>\n </ng-container>\n </div>\n</div>\n" }]
98
+ ], template: "<div [attr.id]=\"id ? id : null\" [class]=\"(classes ? 'c-notification ' + classes : type==='success' ? 'c-notification c-notification--success' : type==='alert' ? 'c-notification c-notification--alert' : 'c-notification c-notification--primary') \"\n *ngIf=\"isOpen && !isDismissing\"\n @displayNotification\n [attr.role]=\"role\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-errormessage]=\"ariaErrorMessage\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.aria-disabled]=\"ariaDisabled\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-current]=\"ariaCurrent\"\n [attr.aria-live]=\"ariaLive\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-haspopup]=\"ariaHasPopup\"\n [attr.tabindex]=\"tabindex\">\n <div *ngIf=\"iconComponent || icon || type\" class=\"h-full mr-base\">\n <ng-container *desyCustomInnerContent=\"{ component: iconComponent, html: icon ? icon.html : null }\"></ng-container>\n <ng-container *ngIf=\"displayDefaultIcon && type\">\n <ng-container [ngSwitch]=\"getType()\">\n <svg *ngSwitchCase=\"'success'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-success-dark\" aria-label=\"\u00C9xito\" focusable=\"false\" role=\"img\"><path d=\"M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'alert'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-alert-base\" aria-label=\"Error\" focusable=\"false\" role=\"img\"><path d=\"M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n <svg *ngSwitchCase=\"'info'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-5 h-5 text-primary-base\" aria-label=\"Informaci\u00F3n\" focusable=\"false\" role=\"img\"><path d=\"M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z\" fill=\"currentColor\"/></svg>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"lg:flex flex-1 self-center\">\n <div class=\"lg:flex-1 lg:self-center\">\n <ng-container *ngIf=\"titleComponent || title\" [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h1>\n <h2 *ngSwitchCase=\"2\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h2>\n <h3 *ngSwitchCase=\"3\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h3>\n <h4 *ngSwitchCase=\"4\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h4>\n <h5 *ngSwitchCase=\"5\" [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </h5>\n <p *ngSwitchDefault [id]=\"id ? id + '-title' : null\" tabindex=\"-1\"\n [class]=\"['font-bold pr-base focus:outline-none focus:underline', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: titleComponent,\n html: title ? title.html : null,\n text: title ? title.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ng-container *ngIf=\"descriptionComponent || description\">\n <p [class]=\"descriptionComponent ? descriptionComponent.classes : description.classes\">\n <ng-container *desyCustomInnerContent=\"{\n component: descriptionComponent,\n html: description ? description.html : null,\n text: description ? description.text : null\n }\"></ng-container>\n </p>\n </ng-container>\n <ul *ngIf=\"(itemCompontents && itemCompontents.length > 0) || items\">\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <li *ngIf=\"item.routerLink || item.href\">\n <a *ngIf=\"item.routerLink\" class=\"c-link\"\n [routerLink]=\"item.routerLink\"\n [fragment]=\"item.fragment\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n <a *ngIf=\"!item.routerLink && item.href\" class=\"c-link\"\n [href]=\"item.href | externalHref\"\n [target]=\"item.target\"\n [ngClass]=\"{'c-link--alert': type==='alert'}\"\n [attr.id]=\"item.id ? item.id : null\"\n [attr.role]=\"item.role\"\n [attr.ariaLabel]=\"item.ariaLabel\"\n [attr.ariaDescribedBy]=\"item.ariaDescribedBy\"\n [attr.ariaLabelledBy]=\"item.ariaLabelledBy\"\n [attr.ariaHidden]=\"item.ariaHidden\"\n [attr.ariaDisabled]=\"item.ariaDisabled\"\n [attr.ariaControls]=\"item.ariaControls\"\n [attr.ariaCurrent]=\"item.ariaCurrent\"\n [attr.ariaLive]=\"item.ariaLive\"\n [attr.ariaExpanded]=\"item.ariaExpanded\"\n [attr.ariaErrorMessage]=\"item.ariaErrorMessage\"\n [attr.ariaHasPopup]=\"item.ariaHasPopup\"\n [attr.tabindex]=\"item.tabindex\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </a>\n </li>\n <li *ngIf=\"!item.routerLink && !item.href\">\n <ng-container *desyCustomInnerContent=\"{ component: item, html: item.html, text: item.text }\"></ng-container>\n </li>\n </ng-container>\n </ul>\n <p *ngIf=\"contentComponent || content\" [class]=\"['text-sm', contentComponent ? contentComponent.classes : content.classes] | makeHtmlList\">\n <ng-container *desyCustomInnerContent=\"{\n component: contentComponent,\n html: content ? content.html : null,\n text: content ? content.text : null\n }\"></ng-container>\n </p>\n </div>\n <ng-container *ngIf=\"isDismissible\">\n <div class=\"absolute top-0 right-0 p-sm\">\n <button (click)=\"dismiss()\" class=\"p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none\" aria-label=\"X: Cerrar notificaci\u00F3n\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 140 140\" width=\"1em\" height=\"1em\" class=\"w-4 h-4 pointer-events-none\" aria-hidden=\"true\" role=\"presentation\"><path d=\"M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z\" fill=\"currentColor\"/></svg>\n </button>\n </div>\n </ng-container>\n </div>\n</div>\n" }]
99
99
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { id: [{
100
100
  type: Input
101
101
  }], classes: [{
@@ -136,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
136
136
  type: ContentChildren,
137
137
  args: [NotificationItemComponent]
138
138
  }] } });
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDdEYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ25GLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG9FQUFvRSxDQUFDO0FBQ3hHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQzVGLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBRTFGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlEQUF5RCxDQUFDOzs7Ozs7O0FBc0J6RixNQUFNLE9BQU8scUJBQXNCLFNBQVEsc0JBQXNCO0lBa0MvRCxZQUFvQixpQkFBb0M7UUFDdEQsS0FBSyxFQUFF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QUFPO3NCQUFmLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU07Z0JBRUUsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFHMkIsY0FBYztzQkFBOUMsZUFBZTt1QkFBQyxjQUFjO2dCQUdRLG9CQUFvQjtzQkFBMUQsZUFBZTt1QkFBQyxvQkFBb0I7Z0JBR0YsZ0JBQWdCO3NCQUFsRCxlQUFlO3VCQUFDLGdCQUFnQjtnQkFHRCxhQUFhO3NCQUE1QyxlQUFlO3VCQUFDLGFBQWE7Z0JBRWMsZUFBZTtzQkFBMUQsZUFBZTt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFjY2Vzc2liaWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XG5pbXBvcnQge05vdGlmaWNhdGlvbkl0ZW1zRGF0YX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7VGl0bGVDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQge0ljb25Db21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHtEZXNjcmlwdGlvbkNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZGVzeS1jb21tb25zL2NvbXBvbmVudHMvZGVzY3JpcHRpb24vZGVzY3JpcHRpb24uY29tcG9uZW50JztcbmltcG9ydCB7Q29udGVudENvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZGVzeS1jb21tb25zL2NvbXBvbmVudHMvY29udGVudC9jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQge05vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnR9IGZyb20gJy4vbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7Q29udGVudERhdGEsIERlc2NyaXB0aW9uRGF0YSwgSWNvbkRhdGEsIFRpdGxlRGF0YX0gZnJvbSAnLi4vLi4vLi4vZGVzeS1jb21tb25zL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtEZXN5Q29udGVudENoaWxkfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1ub3RpZmljYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2Rpc3BsYXlOb3RpZmljYXRpb24nLCBbXG4gICAgICBzdGF0ZSgndm9pZCcsIHN0eWxlKHtcbiAgICAgICAgb3BhY2l0eTogJzAuMCcsXG4gICAgICB9KSksXG4gICAgICBzdGF0ZSgnKicsIHN0eWxlKHtcbiAgICAgICAgb3BhY2l0eTogJzEuMCcsXG4gICAgICB9KSksXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIGFuaW1hdGUoJzE1MG1zIGVhc2Utb3V0JylcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBhbmltYXRlKCcxNTBtcyBlYXNlLWluJylcbiAgICAgIF0pXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IHtcblxuICBASW5wdXQoKSBpZDogc3RyaW5nO1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlzT3BlbiA9IHRydWU7XG4gIEBPdXRwdXQoKSBpc09wZW5DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQElucHV0KCkgdGl0bGU6IFRpdGxlRGF0YTtcbiAgQElucHV0KCkgZGVzY3JpcHRpb246IERlc2NyaXB0aW9uRGF0YTtcbiAgQElucHV0KCkgY29udGVudDogQ29udGVudERhdGE7XG4gIEBJbnB1dCgpIGl0ZW1zOiBOb3RpZmljYXRpb25JdGVtc0RhdGFbXTtcblxuICBASW5wdXQoKSBpY29uOiBJY29uRGF0YTtcbiAgQElucHV0KCkgdHlwZTogc3RyaW5nO1xuICBASW5wdXQoKSBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBASW5wdXQoKSBoZWFkaW5nTGV2ZWw6IG51bWJlcjtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oVGl0bGVDb21wb25lbnQpIHRpdGxlQ29tcG9uZW50OiBUaXRsZUNvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oRGVzY3JpcHRpb25Db21wb25lbnQpIGRlc2NyaXB0aW9uQ29tcG9uZW50OiBEZXNjcmlwdGlvbkNvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29udGVudENvbXBvbmVudCkgY29udGVudENvbXBvbmVudDogQ29udGVudENvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oSWNvbkNvbXBvbmVudCkgaWNvbkNvbXBvbmVudDogSWNvbkNvbXBvbmVudDtcblxuICBAQ29udGVudENoaWxkcmVuKE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQpIGl0ZW1Db21wb250ZW50czogUXVlcnlMaXN0PE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQ+O1xuXG4gIGlzRGlzbWlzc2luZyA9IGZhbHNlO1xuICBkaXNwbGF5RGVmYXVsdEljb24gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBkaXNtaXNzKCk6IHZvaWQge1xuICAgIC8vIFNlIGVtaXRlIDc1bXMgbcOhcyB0YXJkZSBwYXJhIHBvZGVyIHZpc3VhbGl6YXIgbGEgYW5pbWFjacOzbiBlbiBjdWFscXVpZXIgY2Fzb1xuICAgIHRoaXMuaXNEaXNtaXNzaW5nID0gdHJ1ZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuaXNEaXNtaXNzaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLmlzT3BlbkNoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICB9LCA3NSk7XG4gIH1cblxuICBnZXRUeXBlKCk6IHN0cmluZyB7XG4gICAgbGV0IHR5cGU6IHN0cmluZztcbiAgICBpZiAodGhpcy50eXBlKXtcbiAgICAgIHR5cGUgPSB0aGlzLnR5cGUudG9Mb2NhbGVMb3dlckNhc2UoKTtcbiAgICB9XG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBnZXRJdGVtcygpOiBOb3RpZmljYXRpb25JdGVtc0RhdGFbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbUNvbXBvbnRlbnRzICYmIHRoaXMuaXRlbUNvbXBvbnRlbnRzLmxlbmd0aCA+IDAgPyB0aGlzLml0ZW1Db21wb250ZW50cy50b0FycmF5KCkgOiB0aGlzLml0ZW1zO1xuICB9XG5cbiAgaGFuZGxlSWNvbkVtcHR5KGVtcHR5OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwbGF5RGVmYXVsdEljb24gPSBlbXB0eTtcblxuICAgIC8vIENvbW8gcXVlIGVsIGNvbnRlbmlkbyB2YWPDrW8gc2UgY29tcHJ1ZWJhIGEgcG9zdGVyaW9yaSwgZXMgbmVjZXNhcmlvIGZvcnphciBsYSBkZXRlY2Npw7NuIGRlIGNhbWJpb3MgcGFyYSBtb3N0cmFyIGVsIGljb25vIHBvciBkZWZlY3RvXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cbiIsIjxkaXYgW2F0dHIuaWRdPVwiaWQgPyBpZCA6IG51bGxcIiBbY2xhc3NdPVwiKGNsYXNzZXMgPyAnYy1ub3RpZmljYXRpb24gJyArIGNsYXNzZXMgOiB0eXBlPT09J3N1Y2Nlc3MnID8gJ2Mtbm90aWZpY2F0aW9uIGMtbm90aWZpY2F0aW9uLS0nICsgdHlwZSA6IHR5cGU9PT0nYWxlcnQnID8gJ2Mtbm90aWZpY2F0aW9uIGMtbm90aWZpY2F0aW9uLS0nICsgdHlwZSA6ICdjLW5vdGlmaWNhdGlvbiBjLW5vdGlmaWNhdGlvbi0tcHJpbWFyeScpIFwiXG4gICAgICpuZ0lmPVwiaXNPcGVuICYmICFpc0Rpc21pc3NpbmdcIlxuICAgICBAZGlzcGxheU5vdGlmaWNhdGlvblxuICAgICBbYXR0ci5yb2xlXT1cInJvbGVcIlxuICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRCeVwiXG4gICAgIFthdHRyLmFyaWEtZXJyb3JtZXNzYWdlXT1cImFyaWFFcnJvck1lc3NhZ2VcIlxuICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImFyaWFIaWRkZW5cIlxuICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImFyaWFEaXNhYmxlZFwiXG4gICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiYXJpYUNvbnRyb2xzXCJcbiAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50XCJcbiAgICAgW2F0dHIuYXJpYS1saXZlXT1cImFyaWFMaXZlXCJcbiAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWRcIlxuICAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cImFyaWFIYXNQb3B1cFwiXG4gICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4XCI+XG4gIDxkaXYgKm5nSWY9XCJpY29uQ29tcG9uZW50IHx8IGljb24gfHwgdHlwZVwiIGNsYXNzPVwiaC1mdWxsIG1yLWJhc2VcIj5cbiAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwieyBjb21wb25lbnQ6IGljb25Db21wb25lbnQsIGh0bWw6IGljb24gPyBpY29uLmh0bWwgOiBudWxsIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGlzcGxheURlZmF1bHRJY29uICYmIHR5cGVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImdldFR5cGUoKVwiPlxuICAgICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInc3VjY2VzcydcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNDAgMTQwXCIgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInctNSBoLTUgdGV4dC1zdWNjZXNzLWRhcmtcIiBhcmlhLWxhYmVsPVwiw4l4aXRvXCIgZm9jdXNhYmxlPVwiZmFsc2VcIiByb2xlPVwiaW1nXCI+PHBhdGggZD1cIk0zOS45NCAxMjVhMTkuODggMTkuODggMCAwMS0xNS41My03LjgxTDIuNDggOTIuMjZhMTAgMTAgMCAwMTE1LTEzLjJsMjAuNTUgMjMuMzlhMi41IDIuNSAwIDAwMy42OC4wOGw4MS04NC40MmExMC4wMDIgMTAuMDAyIDAgMTExNC41IDEzLjc4bC04Mi4wMiA4Ni4zM0ExOS40MSAxOS40MSAwIDAxMzkuOTQgMTI1elwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIi8+PC9zdmc+XG4gICAgICAgIDxzdmcgKm5nU3dpdGNoQ2FzZT1cIidhbGVydCdcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNDAgMTQwXCIgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInctNSBoLTUgdGV4dC1hbGVydC1iYXNlXCIgYXJpYS1sYWJlbD1cIkVycm9yXCIgZm9jdXNhYmxlPVwiZmFsc2VcIiByb2xlPVwiaW1nXCI+PHBhdGggZD1cIk0xMzguNDIgMTE4LjI5bC01NS0xMTBhMTUgMTUgMCAwMC0yNi44NCAwbC01NSAxMTBBMTUgMTUgMCAwMDE1IDE0MGgxMTBhMTUgMTUgMCAwMDEzLjQyLTIxLjcxek02Mi41IDUwYTcuNSA3LjUgMCAwMTE1IDB2MzBhNy41IDcuNSAwIDAxLTE1IDB6bTcuNSA3MGExMCAxMCAwIDExMTAtMTAgMTAgMTAgMCAwMS0xMCAxMHpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPjwvc3ZnPlxuICAgICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInaW5mbydcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNDAgMTQwXCIgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInctNSBoLTUgdGV4dC1wcmltYXJ5LWJhc2VcIiBhcmlhLWxhYmVsPVwiSW5mb3JtYWNpw7NuXCIgZm9jdXNhYmxlPVwiZmFsc2VcIiByb2xlPVwiaW1nXCI+PHBhdGggZD1cIk03MCAwYTcwIDcwIDAgMTA3MCA3MEE3MC4wOCA3MC4wOCAwIDAwNzAgMHptNy41IDEwNWE3LjUgNy41IDAgMDEtMTUgMFY3MGE3LjUgNy41IDAgMDExNSAwek03MCA1MGExMCAxMCAwIDExMTAtMTAgMTAgMTAgMCAwMS0xMCAxMHpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPjwvc3ZnPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwibGc6ZmxleCBmbGV4LTEgc2VsZi1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwibGc6ZmxleC0xIGxnOnNlbGYtY2VudGVyXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidGl0bGVDb21wb25lbnQgfHwgdGl0bGVcIiBbbmdTd2l0Y2hdPVwiaGVhZGluZ0xldmVsXCI+XG4gICAgICAgIDxoMSAqbmdTd2l0Y2hDYXNlPVwiMVwiIFtpZF09XCJpZCA/IGlkICsgJy10aXRsZScgOiBudWxsXCIgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwiWydmb250LWJvbGQgcHItYmFzZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6dW5kZXJsaW5lJywgdGl0bGVDb21wb25lbnQgPyB0aXRsZUNvbXBvbmVudC5jbGFzc2VzIDogdGl0bGUuY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwie1xuICAgICAgICAgICAgY29tcG9uZW50OiB0aXRsZUNvbXBvbmVudCxcbiAgICAgICAgICAgIGh0bWw6IHRpdGxlID8gdGl0bGUuaHRtbCA6IG51bGwsXG4gICAgICAgICAgICB0ZXh0OiB0aXRsZSA/IHRpdGxlLnRleHQgOiBudWxsXG4gICAgICAgICAgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2gxPlxuICAgICAgICA8aDIgKm5nU3dpdGNoQ2FzZT1cIjJcIiBbaWRdPVwiaWQgPyBpZCArICctdGl0bGUnIDogbnVsbFwiIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgW2NsYXNzXT1cIlsnZm9udC1ib2xkIHByLWJhc2UgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnVuZGVybGluZScsIHRpdGxlQ29tcG9uZW50ID8gdGl0bGVDb21wb25lbnQuY2xhc3NlcyA6IHRpdGxlLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cIntcbiAgICAgICAgICAgIGNvbXBvbmVudDogdGl0bGVDb21wb25lbnQsXG4gICAgICAgICAgICBodG1sOiB0aXRsZSA/IHRpdGxlLmh0bWwgOiBudWxsLFxuICAgICAgICAgICAgdGV4dDogdGl0bGUgPyB0aXRsZS50ZXh0IDogbnVsbFxuICAgICAgICAgIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9oMj5cbiAgICAgICAgPGgzICpuZ1N3aXRjaENhc2U9XCIzXCIgW2lkXT1cImlkID8gaWQgKyAnLXRpdGxlJyA6IG51bGxcIiB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJbJ2ZvbnQtYm9sZCBwci1iYXNlIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czp1bmRlcmxpbmUnLCB0aXRsZUNvbXBvbmVudCA/IHRpdGxlQ29tcG9uZW50LmNsYXNzZXMgOiB0aXRsZS5jbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7XG4gICAgICAgICAgICBjb21wb25lbnQ6IHRpdGxlQ29tcG9uZW50LFxuICAgICAgICAgICAgaHRtbDogdGl0bGUgPyB0aXRsZS5odG1sIDogbnVsbCxcbiAgICAgICAgICAgIHRleHQ6IHRpdGxlID8gdGl0bGUudGV4dCA6IG51bGxcbiAgICAgICAgICB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvaDM+XG4gICAgICAgIDxoNCAqbmdTd2l0Y2hDYXNlPVwiNFwiIFtpZF09XCJpZCA/IGlkICsgJy10aXRsZScgOiBudWxsXCIgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwiWydmb250LWJvbGQgcHItYmFzZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6dW5kZXJsaW5lJywgdGl0bGVDb21wb25lbnQgPyB0aXRsZUNvbXBvbmVudC5jbGFzc2VzIDogdGl0bGUuY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwie1xuICAgICAgICAgICAgY29tcG9uZW50OiB0aXRsZUNvbXBvbmVudCxcbiAgICAgICAgICAgIGh0bWw6IHRpdGxlID8gdGl0bGUuaHRtbCA6IG51bGwsXG4gICAgICAgICAgICB0ZXh0OiB0aXRsZSA/IHRpdGxlLnRleHQgOiBudWxsXG4gICAgICAgICAgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2g0PlxuICAgICAgICA8aDUgKm5nU3dpdGNoQ2FzZT1cIjVcIiBbaWRdPVwiaWQgPyBpZCArICctdGl0bGUnIDogbnVsbFwiIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgW2NsYXNzXT1cIlsnZm9udC1ib2xkIHByLWJhc2UgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnVuZGVybGluZScsIHRpdGxlQ29tcG9uZW50ID8gdGl0bGVDb21wb25lbnQuY2xhc3NlcyA6IHRpdGxlLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cIntcbiAgICAgICAgICAgIGNvbXBvbmVudDogdGl0bGVDb21wb25lbnQsXG4gICAgICAgICAgICBodG1sOiB0aXRsZSA/IHRpdGxlLmh0bWwgOiBudWxsLFxuICAgICAgICAgICAgdGV4dDogdGl0bGUgPyB0aXRsZS50ZXh0IDogbnVsbFxuICAgICAgICAgIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9oNT5cbiAgICAgICAgPHAgKm5nU3dpdGNoRGVmYXVsdCBbaWRdPVwiaWQgPyBpZCArICctdGl0bGUnIDogbnVsbFwiIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICBbY2xhc3NdPVwiWydmb250LWJvbGQgcHItYmFzZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6dW5kZXJsaW5lJywgdGl0bGVDb21wb25lbnQgPyB0aXRsZUNvbXBvbmVudC5jbGFzc2VzIDogdGl0bGUuY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwie1xuICAgICAgICAgICAgY29tcG9uZW50OiB0aXRsZUNvbXBvbmVudCxcbiAgICAgICAgICAgIGh0bWw6IHRpdGxlID8gdGl0bGUuaHRtbCA6IG51bGwsXG4gICAgICAgICAgICB0ZXh0OiB0aXRsZSA/IHRpdGxlLnRleHQgOiBudWxsXG4gICAgICAgICAgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L3A+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkZXNjcmlwdGlvbkNvbXBvbmVudCB8fCBkZXNjcmlwdGlvblwiPlxuICAgICAgICA8cCBbY2xhc3NdPVwiZGVzY3JpcHRpb25Db21wb25lbnQgPyBkZXNjcmlwdGlvbkNvbXBvbmVudC5jbGFzc2VzIDogZGVzY3JpcHRpb24uY2xhc3Nlc1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7XG4gICAgICAgICAgICBjb21wb25lbnQ6IGRlc2NyaXB0aW9uQ29tcG9uZW50LFxuICAgICAgICAgICAgaHRtbDogZGVzY3JpcHRpb24gPyBkZXNjcmlwdGlvbi5odG1sIDogbnVsbCxcbiAgICAgICAgICAgIHRleHQ6IGRlc2NyaXB0aW9uID8gZGVzY3JpcHRpb24udGV4dCA6IG51bGxcbiAgICAgICAgICB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvcD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPHVsICpuZ0lmPVwiKGl0ZW1Db21wb250ZW50cyAmJiBpdGVtQ29tcG9udGVudHMubGVuZ3RoID4gMCkgfHwgaXRlbXNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBnZXRJdGVtcygpOyBpbmRleCBhcyBpXCI+XG4gICAgICAgICAgPGxpICpuZ0lmPVwiaXRlbS5yb3V0ZXJMaW5rIHx8IGl0ZW0uaHJlZlwiPlxuICAgICAgICAgICAgPGEgKm5nSWY9XCJpdGVtLnJvdXRlckxpbmtcIiBjbGFzcz1cImMtbGlua1wiXG4gICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJpdGVtLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgW2ZyYWdtZW50XT1cIml0ZW0uZnJhZ21lbnRcIlxuICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydjLWxpbmstLWFsZXJ0JzogdHlwZT09PSdhbGVydCd9XCJcbiAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIml0ZW0uaWQgPyBpdGVtLmlkIDogbnVsbFwiXG4gICAgICAgICAgICAgICBbYXR0ci5yb2xlXT1cIml0ZW0ucm9sZVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhTGFiZWxdPVwiaXRlbS5hcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYURlc2NyaWJlZEJ5XT1cIml0ZW0uYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFMYWJlbGxlZEJ5XT1cIml0ZW0uYXJpYUxhYmVsbGVkQnlcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUhpZGRlbl09XCJpdGVtLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYURpc2FibGVkXT1cIml0ZW0uYXJpYURpc2FibGVkXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFDb250cm9sc109XCJpdGVtLmFyaWFDb250cm9sc1wiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhQ3VycmVudF09XCJpdGVtLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFMaXZlXT1cIml0ZW0uYXJpYUxpdmVcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUV4cGFuZGVkXT1cIml0ZW0uYXJpYUV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFFcnJvck1lc3NhZ2VdPVwiaXRlbS5hcmlhRXJyb3JNZXNzYWdlXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFIYXNQb3B1cF09XCJpdGVtLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICBbYXR0ci50YWJpbmRleF09XCJpdGVtLnRhYmluZGV4XCI+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7IGNvbXBvbmVudDogaXRlbSwgaHRtbDogaXRlbS5odG1sLCB0ZXh0OiBpdGVtLnRleHQgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPGEgKm5nSWY9XCIhaXRlbS5yb3V0ZXJMaW5rICYmIGl0ZW0uaHJlZlwiIGNsYXNzPVwiYy1saW5rXCJcbiAgICAgICAgICAgICAgIFtocmVmXT1cIml0ZW0uaHJlZiB8IGV4dGVybmFsSHJlZlwiXG4gICAgICAgICAgICAgICBbdGFyZ2V0XT1cIml0ZW0udGFyZ2V0XCJcbiAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYy1saW5rLS1hbGVydCc6IHR5cGU9PT0nYWxlcnQnfVwiXG4gICAgICAgICAgICAgICBbYXR0ci5pZF09XCJpdGVtLmlkID8gaXRlbS5pZCA6IG51bGxcIlxuICAgICAgICAgICAgICAgW2F0dHIucm9sZV09XCJpdGVtLnJvbGVcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUxhYmVsXT1cIml0ZW0uYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFEZXNjcmliZWRCeV09XCJpdGVtLmFyaWFEZXNjcmliZWRCeVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhTGFiZWxsZWRCeV09XCJpdGVtLmFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFIaWRkZW5dPVwiaXRlbS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFEaXNhYmxlZF09XCJpdGVtLmFyaWFEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhQ29udHJvbHNdPVwiaXRlbS5hcmlhQ29udHJvbHNcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUN1cnJlbnRdPVwiaXRlbS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhTGl2ZV09XCJpdGVtLmFyaWFMaXZlXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFFeHBhbmRlZF09XCJpdGVtLmFyaWFFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhRXJyb3JNZXNzYWdlXT1cIml0ZW0uYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhSGFzUG9wdXBdPVwiaXRlbS5hcmlhSGFzUG9wdXBcIlxuICAgICAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiaXRlbS50YWJpbmRleFwiPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwieyBjb21wb25lbnQ6IGl0ZW0sIGh0bWw6IGl0ZW0uaHRtbCwgdGV4dDogaXRlbS50ZXh0IH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaSAqbmdJZj1cIiFpdGVtLnJvdXRlckxpbmsgJiYgIWl0ZW0uaHJlZlwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgY29tcG9uZW50OiBpdGVtLCBodG1sOiBpdGVtLmh0bWwsIHRleHQ6IGl0ZW0udGV4dCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L3VsPlxuICAgICAgPHAgKm5nSWY9XCJjb250ZW50Q29tcG9uZW50IHx8IGNvbnRlbnRcIiBbY2xhc3NdPVwiWyd0ZXh0LXNtJywgY29udGVudENvbXBvbmVudCA/IGNvbnRlbnRDb21wb25lbnQuY2xhc3NlcyA6IGNvbnRlbnQuY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cIntcbiAgICAgICAgICBjb21wb25lbnQ6IGNvbnRlbnRDb21wb25lbnQsXG4gICAgICAgICAgaHRtbDogY29udGVudCA/IGNvbnRlbnQuaHRtbCA6IG51bGwsXG4gICAgICAgICAgdGV4dDogY29udGVudCA/IGNvbnRlbnQudGV4dCA6IG51bGxcbiAgICAgICAgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0Rpc21pc3NpYmxlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWJzb2x1dGUgdG9wLTAgcmlnaHQtMCBwLXNtXCI+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cImRpc21pc3MoKVwiIGNsYXNzPVwicC1zbSBmb2N1czpiZy13YXJuaW5nLWJhc2UgZm9jdXM6Ym9yZGVyLXdhcm5pbmctYmFzZSBmb2N1czpzaGFkb3ctb3V0bGluZS1ibGFjayBmb2N1czp0ZXh0LWJsYWNrIGZvY3VzOm91dGxpbmUtbm9uZVwiIGFyaWEtbGFiZWw9XCJYOiBDZXJyYXIgbm90aWZpY2FjacOzblwiPlxuICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTQwIDE0MFwiIHdpZHRoPVwiMWVtXCIgaGVpZ2h0PVwiMWVtXCIgY2xhc3M9XCJ3LTQgaC00IHBvaW50ZXItZXZlbnRzLW5vbmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiByb2xlPVwicHJlc2VudGF0aW9uXCI+PHBhdGggZD1cIk04NS45MSA3MS43N2EyLjUgMi41IDAgMDEwLTMuNTRsNDYuMTYtNDYuMTZhMTAgMTAgMCAxMC0xNC4xNC0xNC4xNEw3MS43NyA1NC4wOWEyLjUgMi41IDAgMDEtMy41NCAwTDIyLjA3IDcuOTNBMTAgMTAgMCAwMDcuOTMgMjIuMDdsNDYuMTYgNDYuMTZhMi41IDIuNSAwIDAxMCAzLjU0TDcuOTMgMTE3LjkzYTEwIDEwIDAgMDAxNC4xNCAxNC4xNGw0Ni4xNi00Ni4xNmEyLjUgMi41IDAgMDEzLjU0IDBsNDYuMTYgNDYuMTZhMTAgMTAgMCAwMDE0LjE0LTE0LjE0elwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIi8+PC9zdmc+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDdEYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ25GLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG9FQUFvRSxDQUFDO0FBQ3hHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQzVGLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBRTFGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlEQUF5RCxDQUFDOzs7Ozs7O0FBc0J6RixNQUFNLE9BQU8scUJBQXNCLFNBQVEsc0JBQXNCO0lBa0MvRCxZQUFvQixpQkFBb0M7UUFDdEQsS0FBSyxFQUFF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QUFPO3NCQUFmLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU07Z0JBRUUsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFHMkIsY0FBYztzQkFBOUMsZUFBZTt1QkFBQyxjQUFjO2dCQUdRLG9CQUFvQjtzQkFBMUQsZUFBZTt1QkFBQyxvQkFBb0I7Z0JBR0YsZ0JBQWdCO3NCQUFsRCxlQUFlO3VCQUFDLGdCQUFnQjtnQkFHRCxhQUFhO3NCQUE1QyxlQUFlO3VCQUFDLGFBQWE7Z0JBRWMsZUFBZTtzQkFBMUQsZUFBZTt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFjY2Vzc2liaWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XG5pbXBvcnQge05vdGlmaWNhdGlvbkl0ZW1zRGF0YX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7VGl0bGVDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQge0ljb25Db21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHtEZXNjcmlwdGlvbkNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZGVzeS1jb21tb25zL2NvbXBvbmVudHMvZGVzY3JpcHRpb24vZGVzY3JpcHRpb24uY29tcG9uZW50JztcbmltcG9ydCB7Q29udGVudENvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZGVzeS1jb21tb25zL2NvbXBvbmVudHMvY29udGVudC9jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQge05vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnR9IGZyb20gJy4vbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7Q29udGVudERhdGEsIERlc2NyaXB0aW9uRGF0YSwgSWNvbkRhdGEsIFRpdGxlRGF0YX0gZnJvbSAnLi4vLi4vLi4vZGVzeS1jb21tb25zL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtEZXN5Q29udGVudENoaWxkfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1ub3RpZmljYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2Rpc3BsYXlOb3RpZmljYXRpb24nLCBbXG4gICAgICBzdGF0ZSgndm9pZCcsIHN0eWxlKHtcbiAgICAgICAgb3BhY2l0eTogJzAuMCcsXG4gICAgICB9KSksXG4gICAgICBzdGF0ZSgnKicsIHN0eWxlKHtcbiAgICAgICAgb3BhY2l0eTogJzEuMCcsXG4gICAgICB9KSksXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIGFuaW1hdGUoJzE1MG1zIGVhc2Utb3V0JylcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBhbmltYXRlKCcxNTBtcyBlYXNlLWluJylcbiAgICAgIF0pXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IHtcblxuICBASW5wdXQoKSBpZDogc3RyaW5nO1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlzT3BlbiA9IHRydWU7XG4gIEBPdXRwdXQoKSBpc09wZW5DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQElucHV0KCkgdGl0bGU6IFRpdGxlRGF0YTtcbiAgQElucHV0KCkgZGVzY3JpcHRpb246IERlc2NyaXB0aW9uRGF0YTtcbiAgQElucHV0KCkgY29udGVudDogQ29udGVudERhdGE7XG4gIEBJbnB1dCgpIGl0ZW1zOiBOb3RpZmljYXRpb25JdGVtc0RhdGFbXTtcblxuICBASW5wdXQoKSBpY29uOiBJY29uRGF0YTtcbiAgQElucHV0KCkgdHlwZTogc3RyaW5nO1xuICBASW5wdXQoKSBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBASW5wdXQoKSBoZWFkaW5nTGV2ZWw6IG51bWJlcjtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oVGl0bGVDb21wb25lbnQpIHRpdGxlQ29tcG9uZW50OiBUaXRsZUNvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oRGVzY3JpcHRpb25Db21wb25lbnQpIGRlc2NyaXB0aW9uQ29tcG9uZW50OiBEZXNjcmlwdGlvbkNvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29udGVudENvbXBvbmVudCkgY29udGVudENvbXBvbmVudDogQ29udGVudENvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oSWNvbkNvbXBvbmVudCkgaWNvbkNvbXBvbmVudDogSWNvbkNvbXBvbmVudDtcblxuICBAQ29udGVudENoaWxkcmVuKE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQpIGl0ZW1Db21wb250ZW50czogUXVlcnlMaXN0PE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQ+O1xuXG4gIGlzRGlzbWlzc2luZyA9IGZhbHNlO1xuICBkaXNwbGF5RGVmYXVsdEljb24gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBkaXNtaXNzKCk6IHZvaWQge1xuICAgIC8vIFNlIGVtaXRlIDc1bXMgbcOhcyB0YXJkZSBwYXJhIHBvZGVyIHZpc3VhbGl6YXIgbGEgYW5pbWFjacOzbiBlbiBjdWFscXVpZXIgY2Fzb1xuICAgIHRoaXMuaXNEaXNtaXNzaW5nID0gdHJ1ZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuaXNEaXNtaXNzaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLmlzT3BlbkNoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICB9LCA3NSk7XG4gIH1cblxuICBnZXRUeXBlKCk6IHN0cmluZyB7XG4gICAgbGV0IHR5cGU6IHN0cmluZztcbiAgICBpZiAodGhpcy50eXBlKXtcbiAgICAgIHR5cGUgPSB0aGlzLnR5cGUudG9Mb2NhbGVMb3dlckNhc2UoKTtcbiAgICB9XG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBnZXRJdGVtcygpOiBOb3RpZmljYXRpb25JdGVtc0RhdGFbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbUNvbXBvbnRlbnRzICYmIHRoaXMuaXRlbUNvbXBvbnRlbnRzLmxlbmd0aCA+IDAgPyB0aGlzLml0ZW1Db21wb250ZW50cy50b0FycmF5KCkgOiB0aGlzLml0ZW1zO1xuICB9XG5cbiAgaGFuZGxlSWNvbkVtcHR5KGVtcHR5OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwbGF5RGVmYXVsdEljb24gPSBlbXB0eTtcblxuICAgIC8vIENvbW8gcXVlIGVsIGNvbnRlbmlkbyB2YWPDrW8gc2UgY29tcHJ1ZWJhIGEgcG9zdGVyaW9yaSwgZXMgbmVjZXNhcmlvIGZvcnphciBsYSBkZXRlY2Npw7NuIGRlIGNhbWJpb3MgcGFyYSBtb3N0cmFyIGVsIGljb25vIHBvciBkZWZlY3RvXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cbiIsIjxkaXYgW2F0dHIuaWRdPVwiaWQgPyBpZCA6IG51bGxcIiBbY2xhc3NdPVwiKGNsYXNzZXMgPyAnYy1ub3RpZmljYXRpb24gJyArIGNsYXNzZXMgOiB0eXBlPT09J3N1Y2Nlc3MnID8gJ2Mtbm90aWZpY2F0aW9uIGMtbm90aWZpY2F0aW9uLS1zdWNjZXNzJyA6IHR5cGU9PT0nYWxlcnQnID8gJ2Mtbm90aWZpY2F0aW9uIGMtbm90aWZpY2F0aW9uLS1hbGVydCcgOiAnYy1ub3RpZmljYXRpb24gYy1ub3RpZmljYXRpb24tLXByaW1hcnknKSBcIlxuICAgICAqbmdJZj1cImlzT3BlbiAmJiAhaXNEaXNtaXNzaW5nXCJcbiAgICAgQGRpc3BsYXlOb3RpZmljYXRpb25cbiAgICAgW2F0dHIucm9sZV09XCJyb2xlXCJcbiAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkQnlcIlxuICAgICBbYXR0ci5hcmlhLWVycm9ybWVzc2FnZV09XCJhcmlhRXJyb3JNZXNzYWdlXCJcbiAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIlxuICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnlcIlxuICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJhcmlhSGlkZGVuXCJcbiAgICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJhcmlhRGlzYWJsZWRcIlxuICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImFyaWFDb250cm9sc1wiXG4gICAgIFthdHRyLmFyaWEtY3VycmVudF09XCJhcmlhQ3VycmVudFwiXG4gICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZVwiXG4gICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiYXJpYUV4cGFuZGVkXCJcbiAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJhcmlhSGFzUG9wdXBcIlxuICAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJpbmRleFwiPlxuICA8ZGl2ICpuZ0lmPVwiaWNvbkNvbXBvbmVudCB8fCBpY29uIHx8IHR5cGVcIiBjbGFzcz1cImgtZnVsbCBtci1iYXNlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgY29tcG9uZW50OiBpY29uQ29tcG9uZW50LCBodG1sOiBpY29uID8gaWNvbi5odG1sIDogbnVsbCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRpc3BsYXlEZWZhdWx0SWNvbiAmJiB0eXBlXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJnZXRUeXBlKClcIj5cbiAgICAgICAgPHN2ZyAqbmdTd2l0Y2hDYXNlPVwiJ3N1Y2Nlc3MnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTQwIDE0MFwiIHdpZHRoPVwiMWVtXCIgaGVpZ2h0PVwiMWVtXCIgY2xhc3M9XCJ3LTUgaC01IHRleHQtc3VjY2Vzcy1kYXJrXCIgYXJpYS1sYWJlbD1cIsOJeGl0b1wiIGZvY3VzYWJsZT1cImZhbHNlXCIgcm9sZT1cImltZ1wiPjxwYXRoIGQ9XCJNMzkuOTQgMTI1YTE5Ljg4IDE5Ljg4IDAgMDEtMTUuNTMtNy44MUwyLjQ4IDkyLjI2YTEwIDEwIDAgMDExNS0xMy4ybDIwLjU1IDIzLjM5YTIuNSAyLjUgMCAwMDMuNjguMDhsODEtODQuNDJhMTAuMDAyIDEwLjAwMiAwIDExMTQuNSAxMy43OGwtODIuMDIgODYuMzNBMTkuNDEgMTkuNDEgMCAwMTM5Ljk0IDEyNXpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPjwvc3ZnPlxuICAgICAgICA8c3ZnICpuZ1N3aXRjaENhc2U9XCInYWxlcnQnXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTQwIDE0MFwiIHdpZHRoPVwiMWVtXCIgaGVpZ2h0PVwiMWVtXCIgY2xhc3M9XCJ3LTUgaC01IHRleHQtYWxlcnQtYmFzZVwiIGFyaWEtbGFiZWw9XCJFcnJvclwiIGZvY3VzYWJsZT1cImZhbHNlXCIgcm9sZT1cImltZ1wiPjxwYXRoIGQ9XCJNMTM4LjQyIDExOC4yOWwtNTUtMTEwYTE1IDE1IDAgMDAtMjYuODQgMGwtNTUgMTEwQTE1IDE1IDAgMDAxNSAxNDBoMTEwYTE1IDE1IDAgMDAxMy40Mi0yMS43MXpNNjIuNSA1MGE3LjUgNy41IDAgMDExNSAwdjMwYTcuNSA3LjUgMCAwMS0xNSAwem03LjUgNzBhMTAgMTAgMCAxMTEwLTEwIDEwIDEwIDAgMDEtMTAgMTB6XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiLz48L3N2Zz5cbiAgICAgICAgPHN2ZyAqbmdTd2l0Y2hDYXNlPVwiJ2luZm8nXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTQwIDE0MFwiIHdpZHRoPVwiMWVtXCIgaGVpZ2h0PVwiMWVtXCIgY2xhc3M9XCJ3LTUgaC01IHRleHQtcHJpbWFyeS1iYXNlXCIgYXJpYS1sYWJlbD1cIkluZm9ybWFjacOzblwiIGZvY3VzYWJsZT1cImZhbHNlXCIgcm9sZT1cImltZ1wiPjxwYXRoIGQ9XCJNNzAgMGE3MCA3MCAwIDEwNzAgNzBBNzAuMDggNzAuMDggMCAwMDcwIDB6bTcuNSAxMDVhNy41IDcuNSAwIDAxLTE1IDBWNzBhNy41IDcuNSAwIDAxMTUgMHpNNzAgNTBhMTAgMTAgMCAxMTEwLTEwIDEwIDEwIDAgMDEtMTAgMTB6XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiLz48L3N2Zz5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImxnOmZsZXggZmxleC0xIHNlbGYtY2VudGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImxnOmZsZXgtMSBsZzpzZWxmLWNlbnRlclwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRpdGxlQ29tcG9uZW50IHx8IHRpdGxlXCIgW25nU3dpdGNoXT1cImhlYWRpbmdMZXZlbFwiPlxuICAgICAgICA8aDEgKm5nU3dpdGNoQ2FzZT1cIjFcIiBbaWRdPVwiaWQgPyBpZCArICctdGl0bGUnIDogbnVsbFwiIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgW2NsYXNzXT1cIlsnZm9udC1ib2xkIHByLWJhc2UgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnVuZGVybGluZScsIHRpdGxlQ29tcG9uZW50ID8gdGl0bGVDb21wb25lbnQuY2xhc3NlcyA6IHRpdGxlLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cIntcbiAgICAgICAgICAgIGNvbXBvbmVudDogdGl0bGVDb21wb25lbnQsXG4gICAgICAgICAgICBodG1sOiB0aXRsZSA/IHRpdGxlLmh0bWwgOiBudWxsLFxuICAgICAgICAgICAgdGV4dDogdGl0bGUgPyB0aXRsZS50ZXh0IDogbnVsbFxuICAgICAgICAgIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9oMT5cbiAgICAgICAgPGgyICpuZ1N3aXRjaENhc2U9XCIyXCIgW2lkXT1cImlkID8gaWQgKyAnLXRpdGxlJyA6IG51bGxcIiB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJbJ2ZvbnQtYm9sZCBwci1iYXNlIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czp1bmRlcmxpbmUnLCB0aXRsZUNvbXBvbmVudCA/IHRpdGxlQ29tcG9uZW50LmNsYXNzZXMgOiB0aXRsZS5jbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7XG4gICAgICAgICAgICBjb21wb25lbnQ6IHRpdGxlQ29tcG9uZW50LFxuICAgICAgICAgICAgaHRtbDogdGl0bGUgPyB0aXRsZS5odG1sIDogbnVsbCxcbiAgICAgICAgICAgIHRleHQ6IHRpdGxlID8gdGl0bGUudGV4dCA6IG51bGxcbiAgICAgICAgICB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvaDI+XG4gICAgICAgIDxoMyAqbmdTd2l0Y2hDYXNlPVwiM1wiIFtpZF09XCJpZCA/IGlkICsgJy10aXRsZScgOiBudWxsXCIgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwiWydmb250LWJvbGQgcHItYmFzZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6dW5kZXJsaW5lJywgdGl0bGVDb21wb25lbnQgPyB0aXRsZUNvbXBvbmVudC5jbGFzc2VzIDogdGl0bGUuY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwie1xuICAgICAgICAgICAgY29tcG9uZW50OiB0aXRsZUNvbXBvbmVudCxcbiAgICAgICAgICAgIGh0bWw6IHRpdGxlID8gdGl0bGUuaHRtbCA6IG51bGwsXG4gICAgICAgICAgICB0ZXh0OiB0aXRsZSA/IHRpdGxlLnRleHQgOiBudWxsXG4gICAgICAgICAgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2gzPlxuICAgICAgICA8aDQgKm5nU3dpdGNoQ2FzZT1cIjRcIiBbaWRdPVwiaWQgPyBpZCArICctdGl0bGUnIDogbnVsbFwiIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgW2NsYXNzXT1cIlsnZm9udC1ib2xkIHByLWJhc2UgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnVuZGVybGluZScsIHRpdGxlQ29tcG9uZW50ID8gdGl0bGVDb21wb25lbnQuY2xhc3NlcyA6IHRpdGxlLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cIntcbiAgICAgICAgICAgIGNvbXBvbmVudDogdGl0bGVDb21wb25lbnQsXG4gICAgICAgICAgICBodG1sOiB0aXRsZSA/IHRpdGxlLmh0bWwgOiBudWxsLFxuICAgICAgICAgICAgdGV4dDogdGl0bGUgPyB0aXRsZS50ZXh0IDogbnVsbFxuICAgICAgICAgIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9oND5cbiAgICAgICAgPGg1ICpuZ1N3aXRjaENhc2U9XCI1XCIgW2lkXT1cImlkID8gaWQgKyAnLXRpdGxlJyA6IG51bGxcIiB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJbJ2ZvbnQtYm9sZCBwci1iYXNlIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czp1bmRlcmxpbmUnLCB0aXRsZUNvbXBvbmVudCA/IHRpdGxlQ29tcG9uZW50LmNsYXNzZXMgOiB0aXRsZS5jbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7XG4gICAgICAgICAgICBjb21wb25lbnQ6IHRpdGxlQ29tcG9uZW50LFxuICAgICAgICAgICAgaHRtbDogdGl0bGUgPyB0aXRsZS5odG1sIDogbnVsbCxcbiAgICAgICAgICAgIHRleHQ6IHRpdGxlID8gdGl0bGUudGV4dCA6IG51bGxcbiAgICAgICAgICB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvaDU+XG4gICAgICAgIDxwICpuZ1N3aXRjaERlZmF1bHQgW2lkXT1cImlkID8gaWQgKyAnLXRpdGxlJyA6IG51bGxcIiB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgW2NsYXNzXT1cIlsnZm9udC1ib2xkIHByLWJhc2UgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnVuZGVybGluZScsIHRpdGxlQ29tcG9uZW50ID8gdGl0bGVDb21wb25lbnQuY2xhc3NlcyA6IHRpdGxlLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cIntcbiAgICAgICAgICAgIGNvbXBvbmVudDogdGl0bGVDb21wb25lbnQsXG4gICAgICAgICAgICBodG1sOiB0aXRsZSA/IHRpdGxlLmh0bWwgOiBudWxsLFxuICAgICAgICAgICAgdGV4dDogdGl0bGUgPyB0aXRsZS50ZXh0IDogbnVsbFxuICAgICAgICAgIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9wPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGVzY3JpcHRpb25Db21wb25lbnQgfHwgZGVzY3JpcHRpb25cIj5cbiAgICAgICAgPHAgW2NsYXNzXT1cImRlc2NyaXB0aW9uQ29tcG9uZW50ID8gZGVzY3JpcHRpb25Db21wb25lbnQuY2xhc3NlcyA6IGRlc2NyaXB0aW9uLmNsYXNzZXNcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwie1xuICAgICAgICAgICAgY29tcG9uZW50OiBkZXNjcmlwdGlvbkNvbXBvbmVudCxcbiAgICAgICAgICAgIGh0bWw6IGRlc2NyaXB0aW9uID8gZGVzY3JpcHRpb24uaHRtbCA6IG51bGwsXG4gICAgICAgICAgICB0ZXh0OiBkZXNjcmlwdGlvbiA/IGRlc2NyaXB0aW9uLnRleHQgOiBudWxsXG4gICAgICAgICAgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L3A+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDx1bCAqbmdJZj1cIihpdGVtQ29tcG9udGVudHMgJiYgaXRlbUNvbXBvbnRlbnRzLmxlbmd0aCA+IDApIHx8IGl0ZW1zXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ2V0SXRlbXMoKTsgaW5kZXggYXMgaVwiPlxuICAgICAgICAgIDxsaSAqbmdJZj1cIml0ZW0ucm91dGVyTGluayB8fCBpdGVtLmhyZWZcIj5cbiAgICAgICAgICAgIDxhICpuZ0lmPVwiaXRlbS5yb3V0ZXJMaW5rXCIgY2xhc3M9XCJjLWxpbmtcIlxuICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiaXRlbS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgIFtmcmFnbWVudF09XCJpdGVtLmZyYWdtZW50XCJcbiAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYy1saW5rLS1hbGVydCc6IHR5cGU9PT0nYWxlcnQnfVwiXG4gICAgICAgICAgICAgICBbYXR0ci5pZF09XCJpdGVtLmlkID8gaXRlbS5pZCA6IG51bGxcIlxuICAgICAgICAgICAgICAgW2F0dHIucm9sZV09XCJpdGVtLnJvbGVcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUxhYmVsXT1cIml0ZW0uYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFEZXNjcmliZWRCeV09XCJpdGVtLmFyaWFEZXNjcmliZWRCeVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhTGFiZWxsZWRCeV09XCJpdGVtLmFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFIaWRkZW5dPVwiaXRlbS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFEaXNhYmxlZF09XCJpdGVtLmFyaWFEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhQ29udHJvbHNdPVwiaXRlbS5hcmlhQ29udHJvbHNcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUN1cnJlbnRdPVwiaXRlbS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhTGl2ZV09XCJpdGVtLmFyaWFMaXZlXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFFeHBhbmRlZF09XCJpdGVtLmFyaWFFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhRXJyb3JNZXNzYWdlXT1cIml0ZW0uYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhSGFzUG9wdXBdPVwiaXRlbS5hcmlhSGFzUG9wdXBcIlxuICAgICAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiaXRlbS50YWJpbmRleFwiPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwieyBjb21wb25lbnQ6IGl0ZW0sIGh0bWw6IGl0ZW0uaHRtbCwgdGV4dDogaXRlbS50ZXh0IH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDxhICpuZ0lmPVwiIWl0ZW0ucm91dGVyTGluayAmJiBpdGVtLmhyZWZcIiBjbGFzcz1cImMtbGlua1wiXG4gICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLmhyZWYgfCBleHRlcm5hbEhyZWZcIlxuICAgICAgICAgICAgICAgW3RhcmdldF09XCJpdGVtLnRhcmdldFwiXG4gICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2MtbGluay0tYWxlcnQnOiB0eXBlPT09J2FsZXJ0J31cIlxuICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiaXRlbS5pZCA/IGl0ZW0uaWQgOiBudWxsXCJcbiAgICAgICAgICAgICAgIFthdHRyLnJvbGVdPVwiaXRlbS5yb2xlXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFMYWJlbF09XCJpdGVtLmFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhRGVzY3JpYmVkQnldPVwiaXRlbS5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUxhYmVsbGVkQnldPVwiaXRlbS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhSGlkZGVuXT1cIml0ZW0uYXJpYUhpZGRlblwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhRGlzYWJsZWRdPVwiaXRlbS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUNvbnRyb2xzXT1cIml0ZW0uYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWFDdXJyZW50XT1cIml0ZW0uYXJpYUN1cnJlbnRcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUxpdmVdPVwiaXRlbS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICBbYXR0ci5hcmlhRXhwYW5kZWRdPVwiaXRlbS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUVycm9yTWVzc2FnZV09XCJpdGVtLmFyaWFFcnJvck1lc3NhZ2VcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYUhhc1BvcHVwXT1cIml0ZW0uYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cIml0ZW0udGFiaW5kZXhcIj5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgY29tcG9uZW50OiBpdGVtLCBodG1sOiBpdGVtLmh0bWwsIHRleHQ6IGl0ZW0udGV4dCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgKm5nSWY9XCIhaXRlbS5yb3V0ZXJMaW5rICYmICFpdGVtLmhyZWZcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7IGNvbXBvbmVudDogaXRlbSwgaHRtbDogaXRlbS5odG1sLCB0ZXh0OiBpdGVtLnRleHQgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC91bD5cbiAgICAgIDxwICpuZ0lmPVwiY29udGVudENvbXBvbmVudCB8fCBjb250ZW50XCIgW2NsYXNzXT1cIlsndGV4dC1zbScsIGNvbnRlbnRDb21wb25lbnQgPyBjb250ZW50Q29tcG9uZW50LmNsYXNzZXMgOiBjb250ZW50LmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7XG4gICAgICAgICAgY29tcG9uZW50OiBjb250ZW50Q29tcG9uZW50LFxuICAgICAgICAgIGh0bWw6IGNvbnRlbnQgPyBjb250ZW50Lmh0bWwgOiBudWxsLFxuICAgICAgICAgIHRleHQ6IGNvbnRlbnQgPyBjb250ZW50LnRleHQgOiBudWxsXG4gICAgICAgIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNEaXNtaXNzaWJsZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHRvcC0wIHJpZ2h0LTAgcC1zbVwiPlxuICAgICAgICA8YnV0dG9uIChjbGljayk9XCJkaXNtaXNzKClcIiBjbGFzcz1cInAtc20gZm9jdXM6Ymctd2FybmluZy1iYXNlIGZvY3VzOmJvcmRlci13YXJuaW5nLWJhc2UgZm9jdXM6c2hhZG93LW91dGxpbmUtYmxhY2sgZm9jdXM6dGV4dC1ibGFjayBmb2N1czpvdXRsaW5lLW5vbmVcIiBhcmlhLWxhYmVsPVwiWDogQ2VycmFyIG5vdGlmaWNhY2nDs25cIj5cbiAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE0MCAxNDBcIiB3aWR0aD1cIjFlbVwiIGhlaWdodD1cIjFlbVwiIGNsYXNzPVwidy00IGgtNCBwb2ludGVyLWV2ZW50cy1ub25lXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgcm9sZT1cInByZXNlbnRhdGlvblwiPjxwYXRoIGQ9XCJNODUuOTEgNzEuNzdhMi41IDIuNSAwIDAxMC0zLjU0bDQ2LjE2LTQ2LjE2YTEwIDEwIDAgMTAtMTQuMTQtMTQuMTRMNzEuNzcgNTQuMDlhMi41IDIuNSAwIDAxLTMuNTQgMEwyMi4wNyA3LjkzQTEwIDEwIDAgMDA3LjkzIDIyLjA3bDQ2LjE2IDQ2LjE2YTIuNSAyLjUgMCAwMTAgMy41NEw3LjkzIDExNy45M2ExMCAxMCAwIDAwMTQuMTQgMTQuMTRsNDYuMTYtNDYuMTZhMi41IDIuNSAwIDAxMy41NCAwbDQ2LjE2IDQ2LjE2YTEwIDEwIDAgMDAxNC4xNC0xNC4xNHpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPjwvc3ZnPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -18,6 +18,7 @@ export class PaginationComponent extends AccessibilityComponent {
18
18
  this.currentPage = 1;
19
19
  this.currentPageChange = new EventEmitter();
20
20
  this.itemsPerPageChange = new EventEmitter();
21
+ this.nPagesHistory = 0;
21
22
  this.defaultText = false;
22
23
  this.previousIcon = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="self-center h-2.5 w-2.5 mr-2" aria-hidden="true" focusable="false"><path d="M54.87 71.77a2.5 2.5 0 010-3.54L106 17.07A10 10 0 1091.89 2.93L35.43 59.39a15 15 0 000 21.22l56.46 56.46A10 10 0 10106 122.93z" fill="currentColor" /></svg>';
23
24
  this.nextIcon = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="self-center h-2.5 w-2.5 ml-2" aria-hidden="true" focusable="false"><path d="M34 137.07a10 10 0 010-14.14l51.13-51.16a2.5 2.5 0 000-3.54L34 17.07A10 10 0 0148.11 2.93l56.46 56.46a15 15 0 010 21.22l-56.46 56.46a10 10 0 01-14.11 0z" fill="currentColor" /></svg>';
@@ -62,16 +63,19 @@ export class PaginationComponent extends AccessibilityComponent {
62
63
  return Math.min((pageIndex + 1) * this.itemsPerPage, this.totalItems);
63
64
  }
64
65
  buildPages() {
65
- const itemList = [];
66
- for (let i = 0; i < this.nPages; i++) {
67
- const item = {
68
- text: i + 1,
69
- active: ((i + 1) === this.currentPage),
70
- routerLink: []
71
- };
72
- itemList.push(item);
66
+ if (this.nPagesHistory != this.nPages) {
67
+ this.nPagesHistory = this.nPages;
68
+ const itemList = [];
69
+ for (let i = 0; i < this.nPages; i++) {
70
+ const item = {
71
+ text: i + 1,
72
+ active: ((i + 1) === this.currentPage),
73
+ routerLink: []
74
+ };
75
+ itemList.push(item);
76
+ }
77
+ this.items = itemList;
73
78
  }
74
- this.items = itemList;
75
79
  }
76
80
  getIdPrefix() {
77
81
  return this.idPrefix ? this.idPrefix : 'pagination-item';
@@ -188,4 +192,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
188
192
  }], itemsPerPageChange: [{
189
193
  type: Output
190
194
  }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXBhZ2luYXRpb24vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1wYWdpbmF0aW9uL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBaUIsU0FBUyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDL0ssT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFFM0YsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDOUcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7Ozs7Ozs7O0FBT2pILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxzQkFBc0I7SUFxQzdELFlBQW9CLGNBQWlDO1FBQ25ELEtBQUssRUFBRSxDQUFDO1FBRFUsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBakI1QyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNmLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFJL0MsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQU0xRCxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUVwQixpQkFBWSxHQUFHLHlVQUF5VSxDQUFDO1FBQ3pWLGFB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S0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRXlCLGdCQUFnQjtzQkFBOUMsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxPQUFPO2dCQUNJLEVBQUU7c0JBQWxDLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsU0FBUztnQkFHbUIsWUFBWTtzQkFBN0QsZUFBZTt1QkFBQywrQkFBK0I7Z0JBRUMsbUJBQW1CO3NCQUFuRSxlQUFlO3VCQUFDLDhCQUE4QjtnQkFFdEMsV0FBVztzQkFBbkIsS0FBSztnQkFDSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBR0UsWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgUXVlcnlMaXN0LCBIb3N0QmluZGluZywgQ2hhbmdlRGV0ZWN0b3JSZWYsIEFmdGVyQ29udGVudEluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjY2Vzc2liaWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBEZXN5Q29udGVudENoaWxkIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XG5pbXBvcnQgeyBQYWdpbmF0aW9uSXRlbURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFnaW5hdGlvbi1saXN0Ym94LWxhYmVsL3BhZ2luYXRpb24tbGlzdGJveC1sYWJlbC5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktcGFnaW5hdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50SW5pdCB7IFxuICBcbiAgQElucHV0KCkgaGFzU2VsZWN0OiBib29sZWFuO1xuICBASW5wdXQoKSBpZFByZWZpeDogc3RyaW5nO1xuICBASW5wdXQoKSB0b3RhbEl0ZW1zOiBudW1iZXI7XG4gIEBJbnB1dCgpIGhhc1ByZXZpb3VzOiBib29sZWFuO1xuICBASW5wdXQoKSBoYXNOZXh0OiBib29sZWFuO1xuICBASW5wdXQoKSBwcmV2aW91c1RleHQ6IHN0cmluZztcbiAgQElucHV0KCkgbmV4dFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgaGFzU2VsZWN0SXRlbXNQZXJQYWdlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcblxuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3Nlc0NvbnRhaW5lcjogYW55O1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKSBpZDogYW55O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50KSBsaXN0Ym94TGFiZWw6IFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQpIGxpc3Rib3hJdGVtc1BlclBhZ2U6IFF1ZXJ5TGlzdDxQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlID0gMTsgLy8gPT0gY3VycmVudFBhZ2VpbmRleCArIDFcbiAgQE91dHB1dCgpIGN1cnJlbnRQYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgXG4gIEBJbnB1dCgpIGl0ZW1zUGVyUGFnZTogbnVtYmVyO1xuICBAT3V0cHV0KCkgaXRlbXNQZXJQYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgblBhZ2VzOiBudW1iZXI7XG4gIGl0ZW1zOiBQYWdpbmF0aW9uSXRlbURhdGFbXTtcbiAgaXRlbXNQZXJQYWdlTGlzdDogUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50W107XG5cbiAgZGVmYXVsdFRleHQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICByZWFkb25seSBwcmV2aW91c0ljb24gPSAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNDAgMTQwXCIgIHdpZHRoPVwiMWVtXCIgaGVpZ2h0PVwiMWVtXCIgY2xhc3M9XCJzZWxmLWNlbnRlciBoLTIuNSB3LTIuNSBtci0yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZm9jdXNhYmxlPVwiZmFsc2VcIj48cGF0aCBkPVwiTTU0Ljg3IDcxLjc3YTIuNSAyLjUgMCAwMTAtMy41NEwxMDYgMTcuMDdBMTAgMTAgMCAxMDkxLjg5IDIuOTNMMzUuNDMgNTkuMzlhMTUgMTUgMCAwMDAgMjEuMjJsNTYuNDYgNTYuNDZBMTAgMTAgMCAxMDEwNiAxMjIuOTN6XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIC8+PC9zdmc+JztcbiAgcmVhZG9ubHkgbmV4dEljb24gPSAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNDAgMTQwXCIgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInNlbGYtY2VudGVyIGgtMi41IHctMi41IG1sLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBmb2N1c2FibGU9XCJmYWxzZVwiPjxwYXRoIGQ9XCJNMzQgMTM3LjA3YTEwIDEwIDAgMDEwLTE0LjE0bDUxLjEzLTUxLjE2YTIuNSAyLjUgMCAwMDAtMy41NEwzNCAxNy4wN0ExMCAxMCAwIDAxNDguMTEgMi45M2w1Ni40NiA1Ni40NmExNSAxNSAwIDAxMCAyMS4yMmwtNTYuNDYgNTYuNDZhMTAgMTAgMCAwMS0xNC4xMSAwelwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiAvPjwvc3ZnPic7XG4gIHJlYWRvbmx5IHByZWZpeCA9ICc8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5Qw6FnaW5hJm5ic3A7PC9zcGFuPic7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRQYWdlID09PSBudWxsIHx8IHRoaXMuY3VycmVudFBhZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5jdXJyZW50UGFnZSA9IDE7XG4gICAgfVxuICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgdGhpcy5jbGFzc2VzQ29udGFpbmVyID0gdGhpcy5jbGFzc2VzQ29udGFpbmVyID8gdGhpcy5jbGFzc2VzQ29udGFpbmVyICs9ICcgbGc6ZmxleCBsZzpmbGV4LXdyYXAgbGc6aXRlbXMtY2VudGVyIGxnOmdhcC1iYXNlJyA6ICdsZzpmbGV4IGxnOmZsZXgtd3JhcCBsZzppdGVtcy1jZW50ZXIgbGc6Z2FwLWJhc2UnXG4gICAgdGhpcy5pZCA9IHRoaXMuaWQgPyB0aGlzLmlkIDogbnVsbFxuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UpIHtcbiAgICAgIHRoaXMuc2V0dXBJdGVtc1BlclBhZ2UoKTtcbiAgICAgIHRoaXMubGlzdGJveEl0ZW1zUGVyUGFnZS5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0dXBJdGVtc1BlclBhZ2UoKTtcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgY2hlY2tDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMublBhZ2VzID0gTWF0aC5jZWlsKHRoaXMudG90YWxJdGVtcyAvIHRoaXMuaXRlbXNQZXJQYWdlKTtcblxuICAgIGlmICghdGhpcy5jdXJyZW50UGFnZSB8fCB0aGlzLmN1cnJlbnRQYWdlIDwgMSB8fCB0aGlzLmN1cnJlbnRQYWdlID4gdGhpcy5uUGFnZXMpIHtcbiAgICAgIHRoaXMuY3VycmVudFBhZ2UgPSAxO1xuICAgICAgdGhpcy5jdXJyZW50UGFnZUNoYW5nZS5lbWl0KHRoaXMuY3VycmVudFBhZ2UpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wcmV2aW91c1RleHQpIHtcbiAgICAgIHRoaXMucHJldmlvdXNUZXh0ID0gJ0FudGVyaW9yJztcbiAgICB9XG4gICAgaWYgKCF0aGlzLm5leHRUZXh0KSB7XG4gICAgICB0aGlzLm5leHRUZXh0ID0gJ1NpZ3VpZW50ZSc7XG4gICAgfVxuICAgIHRoaXMuYnVpbGRQYWdlcygpO1xuICB9XG5cbiAgZ2V0U3VmZml4KHBhZ2U6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHBhZ2UgPj0gMCAmJiBwYWdlICogdGhpcy5pdGVtc1BlclBhZ2UgPCB0aGlzLnRvdGFsSXRlbXMgP1xuICAgICAgYDxzcGFuIGNsYXNzPVwic3Itb25seVwiPjombmJzcDtQw6FnaW5hICR7cGFnZSArIDF9IGNvbiBsb3MgcmVzdWx0YWRvcyBkZWwgJHtwYWdlICogdGhpcy5pdGVtc1BlclBhZ2UgKyAxfSBhbCAke3RoaXMuZ2V0TGFzdEl0ZW1OdW1iZXIocGFnZSl9PC9zcGFuPmBcbiAgICAgIDogJyc7XG4gIH1cblxuICBnZXRMYXN0SXRlbU51bWJlcihwYWdlSW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWluKChwYWdlSW5kZXggKyAxKSAqIHRoaXMuaXRlbXNQZXJQYWdlLCB0aGlzLnRvdGFsSXRlbXMpO1xuICB9XG5cbiAgYnVpbGRQYWdlcygpOiB2b2lkIHtcbiAgICBjb25zdCBpdGVtTGlzdCA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5uUGFnZXM7IGkrKykge1xuICAgICAgY29uc3QgaXRlbTogUGFnaW5hdGlvbkl0ZW1EYXRhID0ge1xuICAgICAgICB0ZXh0OiBpICsgMSxcbiAgICAgICAgYWN0aXZlOiAoIChpICsgMSkgID09PSB0aGlzLmN1cnJlbnRQYWdlKSxcbiAgICAgICAgcm91dGVyTGluazogW11cbiAgICAgIH07XG4gICAgICBpdGVtTGlzdC5wdXNoKGl0ZW0pO1xuICAgIH1cbiAgICB0aGlzLml0ZW1zID0gaXRlbUxpc3Q7XG4gIH1cblxuICBnZXRJZFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlkUHJlZml4ID8gdGhpcy5pZFByZWZpeCA6ICdwYWdpbmF0aW9uLWl0ZW0nO1xuICB9XG5cbiAgZ2V0QnV0dG9uSWQoIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldElkUHJlZml4KCkgKyAoaW5kZXggPT09IDApID8gJycgOiAnLScgKyBpbmRleDtcbiAgfVxuXG4gIGNoYW5nZVBhZ2UoY3VycmVudDogbnVtYmVyKTogdm9pZHtcbiAgICBjb25zdCBoYXNQYWdlQ2hhbmdlID0gY3VycmVudCAhPT0gdGhpcy5jdXJyZW50UGFnZTtcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gY3VycmVudDtcbiAgICBpZiAoaGFzUGFnZUNoYW5nZSkge1xuICAgICAgdGhpcy5jdXJyZW50UGFnZUNoYW5nZS5lbWl0KHRoaXMuY3VycmVudFBhZ2UpO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaXRlbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLml0ZW1zW2ldO1xuICAgICAgaXRlbS5hY3RpdmUgPSAgKChpICsgMSkgPT09IHRoaXMuY3VycmVudFBhZ2UpO1xuICAgIH1cbiAgfVxuXG4gIHByZXZpb3VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRQYWdlID4gMSkge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKHRoaXMuY3VycmVudFBhZ2UgLSAxKTtcbiAgICB9XG4gIH1cblxuICBuZXh0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRQYWdlIDwgdGhpcy5uUGFnZXMpIHtcbiAgICAgIHRoaXMuY2hhbmdlUGFnZSh0aGlzLmN1cnJlbnRQYWdlICsgMSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0QWN0aXZlSXRlbVRleHQoKTogYW55IHtcbiAgICBjb25zdCBhY3RpdmVJdGVtcyA9ICB0aGlzLml0ZW1zLmZpbHRlcihpdGVtID0+IGl0ZW0uYWN0aXZlKTtcbiAgICByZXR1cm4gYWN0aXZlSXRlbXMgJiYgYWN0aXZlSXRlbXMubGVuZ3RoID4gMCA/IGFjdGl2ZUl0ZW1zWzBdLnRleHQgOiAnJztcbiAgfVxuXG4gIGdldExpc3Rib3hMYWJlbCgpOiBQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5saXN0Ym94TGFiZWwgPyB0aGlzLmxpc3Rib3hMYWJlbCA6IG51bGw7XG4gIH1cblxuICBjaGFuZ2VJdGVtc1BlclBhZ2UoZXZlbnQ6IGFueSkge1xuICAgIGlmKGV2ZW50ICYmIGV2ZW50LnZhbHVlKXtcbiAgICAgIGxldCBuZXdWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgICAgdGhpcy5pdGVtc1BlclBhZ2UgPSBuZXdWYWx1ZTtcbiAgICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUFjdGl2ZUl0ZW1DaGFuZ2UoZXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQgIT09IG51bGwgJiYgZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKCtldmVudC50ZXh0KTtcbiAgICB9XG4gIH1cblxuICBzZXR1cEl0ZW1zUGVyUGFnZSgpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zUGVyUGFnZUxpc3QgPSB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UgJiYgdGhpcy5saXN0Ym94SXRlbXNQZXJQYWdlLmxlbmd0aCA+IDAgPyB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UudG9BcnJheSgpIDogbnVsbDtcbiAgICBpZiAodGhpcy5pdGVtc1BlclBhZ2VMaXN0KSB7XG4gICAgICBjb25zdCBjdXJyZW50SXRlbXNQZXJQYWdlSXRlbSA9IHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5maW5kKGkgPT4gaS52YWx1ZSA9PT0gdGhpcy5pdGVtc1BlclBhZ2UpO1xuICAgICAgaWYgKGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtKSB7XG4gICAgICAgIGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtLmFjdGl2ZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBjb25zdCBoYXNBY3RpdmUgPSB0aGlzLml0ZW1zUGVyUGFnZUxpc3QuZmluZChpID0+IGkuYWN0aXZlKTtcbiAgICAgIGlmICghaGFzQWN0aXZlICYmIHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuaXRlbXNQZXJQYWdlTGlzdFswXS5hY3RpdmUgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNTZWxlY3RcIj5cbiAgPHAgY2xhc3M9XCJ3LWZ1bGwgbWIteHMgdGV4dC1zbSB0ZXh0LW5ldXRyYWwtZGFya1wiPlxuICAgIFNlbGVjY2lvbmEgdW5hIHDDoWdpbmEgcGFyYSBjYXJnYXIgZGF0b3NcbiAgPC9wPlxuICA8bmF2IFtjbGFzc109XCJbJ2ZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBmbGV4LTEgbWItYmFzZSBsZzptYi0wIHRleHQtc20nLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsID8gYXJpYUxhYmVsIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZEJ5ID8gYXJpYURlc2NyaWJlZEJ5IDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSA/IGFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImFyaWFIaWRkZW4gPyBhcmlhSGlkZGVuIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiYXJpYURpc2FibGVkID8gYXJpYURpc2FibGVkIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiYXJpYUNvbnRyb2xzID8gYXJpYUNvbnRyb2xzIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtY3VycmVudF09XCJhcmlhQ3VycmVudCA/IGFyaWFDdXJyZW50IDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZSA/IGFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiYXJpYUV4cGFuZGVkID8gYXJpYUV4cGFuZGVkIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZXJyb3JtZXNzYWdlXT1cImFyaWFFcnJvck1lc3NhZ2UgPyBhcmlhRXJyb3JNZXNzYWdlIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiYXJpYUhhc1BvcHVwID8gYXJpYUhhc1BvcHVwIDogbnVsbFwiXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG4gICAgPGRlc3ktYnV0dG9uIChjbGlja0V2ZW50KT1cInByZXZpb3VzKClcIiBbaWRdPVwiZ2V0SWRQcmVmaXgoKSArICctcHJldmlvdXMnXCJcbiAgICAgICAgICAgICAgICAgIFtodG1sXT1cInByZXZpb3VzSWNvbiArIHByZWZpeCArIHByZXZpb3VzVGV4dCArIGdldFN1ZmZpeChjdXJyZW50UGFnZSAtIDIpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSAxIHx8ICFoYXNQcmV2aW91c1wiXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXNtIGMtYnV0dG9uLS10cmFuc3BhcmVudCBtci14c1wiPjwvZGVzeS1idXR0b24+XG4gICAgICA8ZGVzeS1saXN0Ym94ICpuZ0lmPVwiaXRlbXMgJiYgaXRlbXMubGVuZ3RoID4gMFwiIFtpZF09XCJpZCArICctbGlzdGJveCdcIlxuICAgICAgICAgICAgICAgICAgICBbaWRQcmVmaXhdPVwiaWRQcmVmaXhcIlxuICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJnZXRBY3RpdmVJdGVtVGV4dCgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzZXNdPVwiJ2MtbGlzdGJveC0tc20gYy1saXN0Ym94LS10cmFuc3BhcmVudCBtci14cydcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Nlc1Rvb2x0aXBdPVwiJ21heC1oLTUyIG92ZXJmbG93LXktYXV0bydcIlxuICAgICAgICAgICAgICAgICAgICBbZG9lc0NoYW5nZUJ1dHRvblRleHRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJ7IHRleHQ6ICdTZWxlY2Npb25hIHVuYSBww6FnaW5hIHBhcmEgY2FyZ2FyIGRhdG9zJywgY2xhc3NlczogJ3NyLW9ubHknIH1cIlxuICAgICAgICAgICAgICAgICAgICBbKGl0ZW1zKV09XCJpdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgIChhY3RpdmVJdGVtQ2hhbmdlKT1cImhhbmRsZUFjdGl2ZUl0ZW1DaGFuZ2UoJGV2ZW50KVwiPjwvZGVzeS1saXN0Ym94PlxuICAgIDxkZXN5LWJ1dHRvbiAoY2xpY2tFdmVudCk9XCJuZXh0KClcIiBbaWRdPVwiZ2V0SWRQcmVmaXgoKSArICctbmV4dCdcIlxuICAgICAgICAgICAgICAgICAgW2h0bWxdPVwicHJlZml4ICsgbmV4dFRleHQgKyBnZXRTdWZmaXgoY3VycmVudFBhZ2UpICsgbmV4dEljb25cIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IG5QYWdlcyB8fCAhaGFzTmV4dFwiXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXNtIGMtYnV0dG9uLS10cmFuc3BhcmVudCBtci14c1wiPjwvZGVzeS1idXR0b24+XG4gIDwvbmF2PlxuPC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc1NlbGVjdFwiPlxuICA8bmF2IFtjbGFzc109XCJbJ2ZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBmbGV4LTEgbWItYmFzZSBsZzptYi0wIHRleHQtc20nLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgIFthdHRyLnJvbGVdPVwicm9sZSA/IHJvbGUgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgPyBhcmlhTGFiZWwgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkQnkgPyBhcmlhRGVzY3JpYmVkQnkgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5ID8gYXJpYUxhYmVsbGVkQnkgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJhcmlhRGlzYWJsZWQgPyBhcmlhRGlzYWJsZWQgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJhcmlhQ29udHJvbHMgPyBhcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50ID8gYXJpYUN1cnJlbnQgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1saXZlXT1cImFyaWFMaXZlID8gYXJpYUxpdmUgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWQgPyBhcmlhRXhwYW5kZWQgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1lcnJvcm1lc3NhZ2VdPVwiYXJpYUVycm9yTWVzc2FnZSA/IGFyaWFFcnJvck1lc3NhZ2UgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJhcmlhSGFzUG9wdXAgPyBhcmlhSGFzUG9wdXAgOiBudWxsXCJcbiAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwidGFiaW5kZXggPyB0YWJpbmRleCA6IG51bGxcIj5cbiAgICA8dWwgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcFwiPlxuICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBpbmRleCBhcyBpXCI+XG4gICAgICAgIDxkZXN5LWJ1dHRvbiAqbmdJZj1cIml0ZW0uYWN0aXZlXCIgW2lkXT1cImdldEJ1dHRvbklkKGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCInPHN0cm9uZz4nICsgcHJlZml4ICsgKGkgKyAxKSArIGdldFN1ZmZpeChpKSArICc8L3N0cm9uZz4nXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXByaW1hcnkgYy1idXR0b24tLWRpc2FibGVkIG1iLXNtIG1yLXNtXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJ1ZVwiIGFyaWFDdXJyZW50PVwicGFnZVwiIHRhYmluZGV4PVwiLTFcIiA+PC9kZXN5LWJ1dHRvbj5cbiAgICAgICAgPGRlc3ktYnV0dG9uICpuZ0lmPVwiIWl0ZW0uYWN0aXZlXCIgW2lkXT1cImdldEJ1dHRvbklkKGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCJwcmVmaXggKyAoaSArIDEpICsgZ2V0U3VmZml4KGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2tFdmVudCk9XCJjaGFuZ2VQYWdlKGkgKyAxKVwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcz1cIm1iLXNtIG1yLXNtXCI+PC9kZXN5LWJ1dHRvbj5cbiAgICAgIDwvbGk+XG4gICAgPC91bD5cbiAgPC9uYXY+XG48L25nLWNvbnRhaW5lcj5cbiAgXG48ZGl2ICpuZ0lmPVwiaGFzU2VsZWN0SXRlbXNQZXJQYWdlXCIgY2xhc3M9XCJibG9jayByZWxhdGl2ZSAtdG9wLXhzIGxnOm1sLWF1dG8gdGV4dC1zbSB0ZXh0LW5ldXRyYWwtZGFya1wiPlxuICA8ZGVzeS1saXN0Ym94IFtjbGFzc2VzXT1cIidjLWxpc3Rib3gtLXNtIGMtbGlzdGJveC0tdHJhbnNwYXJlbnQnXCIgXG4gICAgICAgICAgICAgICAgW2NsYXNzZXNDb250YWluZXJdPVwiJ2ZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBnYXAteHMnXCIgXG4gICAgICAgICAgICAgICAgW2lkXT1cIidpdGVtcy1saXN0Ym94LScgKyBnZXRJZFByZWZpeCgpXCJcbiAgICAgICAgICAgICAgICBbZG9lc0NoYW5nZUJ1dHRvblRleHRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW2l0ZW1zXT1cIml0ZW1zUGVyUGFnZUxpc3RcIlxuICAgICAgICAgICAgICAgIChhY3RpdmVJdGVtQ2hhbmdlKT1cImNoYW5nZUl0ZW1zUGVyUGFnZSgkZXZlbnQpXCI+XG4gICAgPGRlc3ktbGlzdGJveC1sYWJlbCBbY2xhc3Nlc109XCJsaXN0Ym94TGFiZWwgJiYgbGlzdGJveExhYmVsLmNsYXNzZXMgPyBsaXN0Ym94TGFiZWwuY2xhc3NlcyA6ICdpbmxpbmUtYmxvY2sgYWxpZ24tbWlkZGxlIG1iLTAnXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaXN0Ym94TGFiZWxcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwieyBjb21wb25lbnQ6IGxpc3Rib3hMYWJlbCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxpc3Rib3hMYWJlbFwiPlxuICAgICAgICAgIEl0ZW1zIHBvciBww6FnaW5hXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGVzeS1saXN0Ym94LWxhYmVsPlxuICA8L2Rlc3ktbGlzdGJveD5cbjwvZGl2PlxuXG5cbjxwIGNsYXNzPVwiYmxvY2sgcmVsYXRpdmUgLXRvcC14cyBsZzptbC1hdXRvIHRleHQtc20gdGV4dC1uZXV0cmFsLWRhcmtcIiAqbmdJZj1cInRvdGFsSXRlbXMgJiYgaXRlbXNQZXJQYWdlXCI+XG4gIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlBvc2ljacOzbiBkZSBwYWdpbmFjacOzbjogPC9zcGFuPnt7KGN1cnJlbnRQYWdlIC0gMSkgKiBpdGVtc1BlclBhZ2UgKyAxfX0gLSB7e2dldExhc3RJdGVtTnVtYmVyKGN1cnJlbnRQYWdlIC0gMSl9fSBkZSB7e3RvdGFsSXRlbXN9fVxuPC9wPlxuIl19
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXBhZ2luYXRpb24vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1wYWdpbmF0aW9uL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBaUIsU0FBUyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDL0ssT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFFM0YsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDOUcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7Ozs7Ozs7O0FBT2pILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxzQkFBc0I7SUFzQzdELFlBQW9CLGNBQWlDO1FBQ25ELEtBQUssRUFBRSxDQUFDO1FBRFUsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBbEI1QyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNmLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFJL0MsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUsxRCxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUVsQixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUVwQixpQkFB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REFFL0IsOEJBQThCLHlFQy9CakQsMnJLQXNGQTs7QUQxREU7SUFBQyxnQkFBZ0IsRUFBRTs4QkFDNkMsK0JBQStCO3lEQUFDOzRGQWhCckYsbUJBQW1CO2tCQUovQixTQUFTOytCQUNFLGlCQUFpQjt3R0FLbEIsU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRXlCLGdCQUFnQjtzQkFBOUMsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxPQUFPO2dCQUNJLEVBQUU7c0JBQWxDLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsU0FBUztnQkFHbUIsWUFBWTtzQkFBN0QsZUFBZTt1QkFBQywrQkFBK0I7Z0JBRUMsbUJBQW1CO3NCQUFuRSxlQUFlO3VCQUFDLDhCQUE4QjtnQkFFdEMsV0FBVztzQkFBbkIsS0FBSztnQkFDSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBR0UsWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgUXVlcnlMaXN0LCBIb3N0QmluZGluZywgQ2hhbmdlRGV0ZWN0b3JSZWYsIEFmdGVyQ29udGVudEluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjY2Vzc2liaWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBEZXN5Q29udGVudENoaWxkIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XG5pbXBvcnQgeyBQYWdpbmF0aW9uSXRlbURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFnaW5hdGlvbi1saXN0Ym94LWxhYmVsL3BhZ2luYXRpb24tbGlzdGJveC1sYWJlbC5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktcGFnaW5hdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50SW5pdCB7XG5cbiAgQElucHV0KCkgaGFzU2VsZWN0OiBib29sZWFuO1xuICBASW5wdXQoKSBpZFByZWZpeDogc3RyaW5nO1xuICBASW5wdXQoKSB0b3RhbEl0ZW1zOiBudW1iZXI7XG4gIEBJbnB1dCgpIGhhc1ByZXZpb3VzOiBib29sZWFuO1xuICBASW5wdXQoKSBoYXNOZXh0OiBib29sZWFuO1xuICBASW5wdXQoKSBwcmV2aW91c1RleHQ6IHN0cmluZztcbiAgQElucHV0KCkgbmV4dFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgaGFzU2VsZWN0SXRlbXNQZXJQYWdlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcblxuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3Nlc0NvbnRhaW5lcjogYW55O1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKSBpZDogYW55O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50KSBsaXN0Ym94TGFiZWw6IFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQpIGxpc3Rib3hJdGVtc1BlclBhZ2U6IFF1ZXJ5TGlzdDxQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlID0gMTsgLy8gPT0gY3VycmVudFBhZ2VpbmRleCArIDFcbiAgQE91dHB1dCgpIGN1cnJlbnRQYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cblxuICBASW5wdXQoKSBpdGVtc1BlclBhZ2U6IG51bWJlcjtcbiAgQE91dHB1dCgpIGl0ZW1zUGVyUGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIG5QYWdlczogbnVtYmVyO1xuICBpdGVtczogUGFnaW5hdGlvbkl0ZW1EYXRhW107XG4gIGl0ZW1zUGVyUGFnZUxpc3Q6IFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudFtdO1xuICBuUGFnZXNIaXN0b3J5ID0gMDtcblxuICBkZWZhdWx0VGV4dDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHJlYWRvbmx5IHByZXZpb3VzSWNvbiA9ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE0MCAxNDBcIiAgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInNlbGYtY2VudGVyIGgtMi41IHctMi41IG1yLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBmb2N1c2FibGU9XCJmYWxzZVwiPjxwYXRoIGQ9XCJNNTQuODcgNzEuNzdhMi41IDIuNSAwIDAxMC0zLjU0TDEwNiAxNy4wN0ExMCAxMCAwIDEwOTEuODkgMi45M0wzNS40MyA1OS4zOWExNSAxNSAwIDAwMCAyMS4yMmw1Ni40NiA1Ni40NkExMCAxMCAwIDEwMTA2IDEyMi45M3pcIiBmaWxsPVwiY3VycmVudENvbG9yXCIgLz48L3N2Zz4nO1xuICByZWFkb25seSBuZXh0SWNvbiA9ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE0MCAxNDBcIiB3aWR0aD1cIjFlbVwiIGhlaWdodD1cIjFlbVwiIGNsYXNzPVwic2VsZi1jZW50ZXIgaC0yLjUgdy0yLjUgbWwtMlwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGZvY3VzYWJsZT1cImZhbHNlXCI+PHBhdGggZD1cIk0zNCAxMzcuMDdhMTAgMTAgMCAwMTAtMTQuMTRsNTEuMTMtNTEuMTZhMi41IDIuNSAwIDAwMC0zLjU0TDM0IDE3LjA3QTEwIDEwIDAgMDE0OC4xMSAyLjkzbDU2LjQ2IDU2LjQ2YTE1IDE1IDAgMDEwIDIxLjIybC01Ni40NiA1Ni40NmExMCAxMCAwIDAxLTE0LjExIDB6XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIC8+PC9zdmc+JztcbiAgcmVhZG9ubHkgcHJlZml4ID0gJzxzcGFuIGNsYXNzPVwic3Itb25seVwiPlDDoWdpbmEmbmJzcDs8L3NwYW4+JztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudFBhZ2UgPT09IG51bGwgfHwgdGhpcy5jdXJyZW50UGFnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlID0gMTtcbiAgICB9XG4gICAgdGhpcy5jaGVja0NoYW5nZXMoKTtcbiAgICB0aGlzLmNsYXNzZXNDb250YWluZXIgPSB0aGlzLmNsYXNzZXNDb250YWluZXIgPyB0aGlzLmNsYXNzZXNDb250YWluZXIgKz0gJyBsZzpmbGV4IGxnOmZsZXgtd3JhcCBsZzppdGVtcy1jZW50ZXIgbGc6Z2FwLWJhc2UnIDogJ2xnOmZsZXggbGc6ZmxleC13cmFwIGxnOml0ZW1zLWNlbnRlciBsZzpnYXAtYmFzZSdcbiAgICB0aGlzLmlkID0gdGhpcy5pZCA/IHRoaXMuaWQgOiBudWxsXG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGlzdGJveEl0ZW1zUGVyUGFnZSkge1xuICAgICAgdGhpcy5zZXR1cEl0ZW1zUGVyUGFnZSgpO1xuICAgICAgdGhpcy5saXN0Ym94SXRlbXNQZXJQYWdlLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXR1cEl0ZW1zUGVyUGFnZSgpO1xuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBjaGVja0NoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5uUGFnZXMgPSBNYXRoLmNlaWwodGhpcy50b3RhbEl0ZW1zIC8gdGhpcy5pdGVtc1BlclBhZ2UpO1xuICAgIFxuICAgIGlmICghdGhpcy5jdXJyZW50UGFnZSB8fCB0aGlzLmN1cnJlbnRQYWdlIDwgMSB8fCB0aGlzLmN1cnJlbnRQYWdlID4gdGhpcy5uUGFnZXMpIHtcbiAgICAgIHRoaXMuY3VycmVudFBhZ2UgPSAxO1xuICAgICAgdGhpcy5jdXJyZW50UGFnZUNoYW5nZS5lbWl0KHRoaXMuY3VycmVudFBhZ2UpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wcmV2aW91c1RleHQpIHtcbiAgICAgIHRoaXMucHJldmlvdXNUZXh0ID0gJ0FudGVyaW9yJztcbiAgICB9XG4gICAgaWYgKCF0aGlzLm5leHRUZXh0KSB7XG4gICAgICB0aGlzLm5leHRUZXh0ID0gJ1NpZ3VpZW50ZSc7XG4gICAgfVxuICAgIHRoaXMuYnVpbGRQYWdlcygpO1xuICB9XG5cbiAgZ2V0U3VmZml4KHBhZ2U6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHBhZ2UgPj0gMCAmJiBwYWdlICogdGhpcy5pdGVtc1BlclBhZ2UgPCB0aGlzLnRvdGFsSXRlbXMgP1xuICAgICAgYDxzcGFuIGNsYXNzPVwic3Itb25seVwiPjombmJzcDtQw6FnaW5hICR7cGFnZSArIDF9IGNvbiBsb3MgcmVzdWx0YWRvcyBkZWwgJHtwYWdlICogdGhpcy5pdGVtc1BlclBhZ2UgKyAxfSBhbCAke3RoaXMuZ2V0TGFzdEl0ZW1OdW1iZXIocGFnZSl9PC9zcGFuPmBcbiAgICAgIDogJyc7XG4gIH1cblxuICBnZXRMYXN0SXRlbU51bWJlcihwYWdlSW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWluKChwYWdlSW5kZXggKyAxKSAqIHRoaXMuaXRlbXNQZXJQYWdlLCB0aGlzLnRvdGFsSXRlbXMpO1xuICB9XG5cbiAgYnVpbGRQYWdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5uUGFnZXNIaXN0b3J5ICE9IHRoaXMublBhZ2VzKSB7XG4gICAgICB0aGlzLm5QYWdlc0hpc3RvcnkgPSB0aGlzLm5QYWdlc1xuICAgICAgY29uc3QgaXRlbUxpc3QgPSBbXTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5uUGFnZXM7IGkrKykge1xuICAgICAgICBjb25zdCBpdGVtOiBQYWdpbmF0aW9uSXRlbURhdGEgPSB7XG4gICAgICAgICAgdGV4dDogaSArIDEsXG4gICAgICAgICAgYWN0aXZlOiAoKGkgKyAxKSA9PT0gdGhpcy5jdXJyZW50UGFnZSksXG4gICAgICAgICAgcm91dGVyTGluazogW11cbiAgICAgICAgfTtcbiAgICAgICAgaXRlbUxpc3QucHVzaChpdGVtKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaXRlbXMgPSBpdGVtTGlzdDtcbiAgICB9XG4gIH1cblxuICBnZXRJZFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlkUHJlZml4ID8gdGhpcy5pZFByZWZpeCA6ICdwYWdpbmF0aW9uLWl0ZW0nO1xuICB9XG5cbiAgZ2V0QnV0dG9uSWQoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SWRQcmVmaXgoKSArIChpbmRleCA9PT0gMCkgPyAnJyA6ICctJyArIGluZGV4O1xuICB9XG5cbiAgY2hhbmdlUGFnZShjdXJyZW50OiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCBoYXNQYWdlQ2hhbmdlID0gY3VycmVudCAhPT0gdGhpcy5jdXJyZW50UGFnZTtcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gY3VycmVudDtcbiAgICBpZiAoaGFzUGFnZUNoYW5nZSkge1xuICAgICAgdGhpcy5jdXJyZW50UGFnZUNoYW5nZS5lbWl0KHRoaXMuY3VycmVudFBhZ2UpO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaXRlbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLml0ZW1zW2ldO1xuICAgICAgaXRlbS5hY3RpdmUgPSAoKGkgKyAxKSA9PT0gdGhpcy5jdXJyZW50UGFnZSk7XG4gICAgfVxuICB9XG5cbiAgcHJldmlvdXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudFBhZ2UgPiAxKSB7XG4gICAgICB0aGlzLmNoYW5nZVBhZ2UodGhpcy5jdXJyZW50UGFnZSAtIDEpO1xuICAgIH1cbiAgfVxuXG4gIG5leHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudFBhZ2UgPCB0aGlzLm5QYWdlcykge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKHRoaXMuY3VycmVudFBhZ2UgKyAxKTtcbiAgICB9XG4gIH1cblxuICBnZXRBY3RpdmVJdGVtVGV4dCgpOiBhbnkge1xuICAgIGNvbnN0IGFjdGl2ZUl0ZW1zID0gdGhpcy5pdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLmFjdGl2ZSk7XG4gICAgcmV0dXJuIGFjdGl2ZUl0ZW1zICYmIGFjdGl2ZUl0ZW1zLmxlbmd0aCA+IDAgPyBhY3RpdmVJdGVtc1swXS50ZXh0IDogJyc7XG4gIH1cblxuICBnZXRMaXN0Ym94TGFiZWwoKTogUGFnaW5hdGlvbkxpc3Rib3hMYWJlbENvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMubGlzdGJveExhYmVsID8gdGhpcy5saXN0Ym94TGFiZWwgOiBudWxsO1xuICB9XG5cbiAgY2hhbmdlSXRlbXNQZXJQYWdlKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQgJiYgZXZlbnQudmFsdWUpIHtcbiAgICAgIGxldCBuZXdWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgICAgdGhpcy5pdGVtc1BlclBhZ2UgPSBuZXdWYWx1ZTtcbiAgICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUFjdGl2ZUl0ZW1DaGFuZ2UoZXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQgIT09IG51bGwgJiYgZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKCtldmVudC50ZXh0KTtcbiAgICB9XG4gIH1cblxuICBzZXR1cEl0ZW1zUGVyUGFnZSgpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zUGVyUGFnZUxpc3QgPSB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UgJiYgdGhpcy5saXN0Ym94SXRlbXNQZXJQYWdlLmxlbmd0aCA+IDAgPyB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UudG9BcnJheSgpIDogbnVsbDtcbiAgICBpZiAodGhpcy5pdGVtc1BlclBhZ2VMaXN0KSB7XG4gICAgICBjb25zdCBjdXJyZW50SXRlbXNQZXJQYWdlSXRlbSA9IHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5maW5kKGkgPT4gaS52YWx1ZSA9PT0gdGhpcy5pdGVtc1BlclBhZ2UpO1xuICAgICAgaWYgKGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtKSB7XG4gICAgICAgIGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtLmFjdGl2ZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBjb25zdCBoYXNBY3RpdmUgPSB0aGlzLml0ZW1zUGVyUGFnZUxpc3QuZmluZChpID0+IGkuYWN0aXZlKTtcbiAgICAgIGlmICghaGFzQWN0aXZlICYmIHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuaXRlbXNQZXJQYWdlTGlzdFswXS5hY3RpdmUgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNTZWxlY3RcIj5cbiAgPHAgY2xhc3M9XCJ3LWZ1bGwgbWIteHMgdGV4dC1zbSB0ZXh0LW5ldXRyYWwtZGFya1wiPlxuICAgIFNlbGVjY2lvbmEgdW5hIHDDoWdpbmEgcGFyYSBjYXJnYXIgZGF0b3NcbiAgPC9wPlxuICA8bmF2IFtjbGFzc109XCJbJ2ZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBmbGV4LTEgbWItYmFzZSBsZzptYi0wIHRleHQtc20nLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsID8gYXJpYUxhYmVsIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZEJ5ID8gYXJpYURlc2NyaWJlZEJ5IDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSA/IGFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImFyaWFIaWRkZW4gPyBhcmlhSGlkZGVuIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiYXJpYURpc2FibGVkID8gYXJpYURpc2FibGVkIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiYXJpYUNvbnRyb2xzID8gYXJpYUNvbnRyb2xzIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtY3VycmVudF09XCJhcmlhQ3VycmVudCA/IGFyaWFDdXJyZW50IDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZSA/IGFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiYXJpYUV4cGFuZGVkID8gYXJpYUV4cGFuZGVkIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZXJyb3JtZXNzYWdlXT1cImFyaWFFcnJvck1lc3NhZ2UgPyBhcmlhRXJyb3JNZXNzYWdlIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiYXJpYUhhc1BvcHVwID8gYXJpYUhhc1BvcHVwIDogbnVsbFwiXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG4gICAgPGRlc3ktYnV0dG9uIChjbGlja0V2ZW50KT1cInByZXZpb3VzKClcIiBbaWRdPVwiZ2V0SWRQcmVmaXgoKSArICctcHJldmlvdXMnXCJcbiAgICAgICAgICAgICAgICAgIFtodG1sXT1cInByZXZpb3VzSWNvbiArIHByZWZpeCArIHByZXZpb3VzVGV4dCArIGdldFN1ZmZpeChjdXJyZW50UGFnZSAtIDIpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSAxIHx8ICFoYXNQcmV2aW91c1wiXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXNtIGMtYnV0dG9uLS10cmFuc3BhcmVudCBtci14c1wiPjwvZGVzeS1idXR0b24+XG4gICAgICA8ZGVzeS1saXN0Ym94ICpuZ0lmPVwiaXRlbXMgJiYgaXRlbXMubGVuZ3RoID4gMFwiIFtpZF09XCJpZCArICctbGlzdGJveCdcIlxuICAgICAgICAgICAgICAgICAgICBbaWRQcmVmaXhdPVwiaWRQcmVmaXhcIlxuICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJnZXRBY3RpdmVJdGVtVGV4dCgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzZXNdPVwiJ2MtbGlzdGJveC0tc20gYy1saXN0Ym94LS10cmFuc3BhcmVudCBtci14cydcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Nlc1Rvb2x0aXBdPVwiJ21heC1oLTUyIG92ZXJmbG93LXktYXV0bydcIlxuICAgICAgICAgICAgICAgICAgICBbZG9lc0NoYW5nZUJ1dHRvblRleHRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJ7IHRleHQ6ICdTZWxlY2Npb25hIHVuYSBww6FnaW5hIHBhcmEgY2FyZ2FyIGRhdG9zJywgY2xhc3NlczogJ3NyLW9ubHknIH1cIlxuICAgICAgICAgICAgICAgICAgICBbKGl0ZW1zKV09XCJpdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgIChhY3RpdmVJdGVtQ2hhbmdlKT1cImhhbmRsZUFjdGl2ZUl0ZW1DaGFuZ2UoJGV2ZW50KVwiPjwvZGVzeS1saXN0Ym94PlxuICAgIDxkZXN5LWJ1dHRvbiAoY2xpY2tFdmVudCk9XCJuZXh0KClcIiBbaWRdPVwiZ2V0SWRQcmVmaXgoKSArICctbmV4dCdcIlxuICAgICAgICAgICAgICAgICAgW2h0bWxdPVwicHJlZml4ICsgbmV4dFRleHQgKyBnZXRTdWZmaXgoY3VycmVudFBhZ2UpICsgbmV4dEljb25cIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IG5QYWdlcyB8fCAhaGFzTmV4dFwiXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXNtIGMtYnV0dG9uLS10cmFuc3BhcmVudCBtci14c1wiPjwvZGVzeS1idXR0b24+XG4gIDwvbmF2PlxuPC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc1NlbGVjdFwiPlxuICA8bmF2IFtjbGFzc109XCJbJ2ZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBmbGV4LTEgbWItYmFzZSBsZzptYi0wIHRleHQtc20nLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgIFthdHRyLnJvbGVdPVwicm9sZSA/IHJvbGUgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgPyBhcmlhTGFiZWwgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkQnkgPyBhcmlhRGVzY3JpYmVkQnkgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5ID8gYXJpYUxhYmVsbGVkQnkgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJhcmlhRGlzYWJsZWQgPyBhcmlhRGlzYWJsZWQgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJhcmlhQ29udHJvbHMgPyBhcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50ID8gYXJpYUN1cnJlbnQgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1saXZlXT1cImFyaWFMaXZlID8gYXJpYUxpdmUgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWQgPyBhcmlhRXhwYW5kZWQgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1lcnJvcm1lc3NhZ2VdPVwiYXJpYUVycm9yTWVzc2FnZSA/IGFyaWFFcnJvck1lc3NhZ2UgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJhcmlhSGFzUG9wdXAgPyBhcmlhSGFzUG9wdXAgOiBudWxsXCJcbiAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwidGFiaW5kZXggPyB0YWJpbmRleCA6IG51bGxcIj5cbiAgICA8dWwgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcFwiPlxuICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBpbmRleCBhcyBpXCI+XG4gICAgICAgIDxkZXN5LWJ1dHRvbiAqbmdJZj1cIml0ZW0uYWN0aXZlXCIgW2lkXT1cImdldEJ1dHRvbklkKGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCInPHN0cm9uZz4nICsgcHJlZml4ICsgKGkgKyAxKSArIGdldFN1ZmZpeChpKSArICc8L3N0cm9uZz4nXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXByaW1hcnkgYy1idXR0b24tLWRpc2FibGVkIG1iLXNtIG1yLXNtXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJ1ZVwiIGFyaWFDdXJyZW50PVwicGFnZVwiIHRhYmluZGV4PVwiLTFcIiA+PC9kZXN5LWJ1dHRvbj5cbiAgICAgICAgPGRlc3ktYnV0dG9uICpuZ0lmPVwiIWl0ZW0uYWN0aXZlXCIgW2lkXT1cImdldEJ1dHRvbklkKGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCJwcmVmaXggKyAoaSArIDEpICsgZ2V0U3VmZml4KGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2tFdmVudCk9XCJjaGFuZ2VQYWdlKGkgKyAxKVwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcz1cIm1iLXNtIG1yLXNtXCI+PC9kZXN5LWJ1dHRvbj5cbiAgICAgIDwvbGk+XG4gICAgPC91bD5cbiAgPC9uYXY+XG48L25nLWNvbnRhaW5lcj5cbiAgXG48ZGl2ICpuZ0lmPVwiaGFzU2VsZWN0SXRlbXNQZXJQYWdlXCIgY2xhc3M9XCJibG9jayByZWxhdGl2ZSAtdG9wLXhzIGxnOm1sLWF1dG8gdGV4dC1zbSB0ZXh0LW5ldXRyYWwtZGFya1wiPlxuICA8ZGVzeS1saXN0Ym94IFtjbGFzc2VzXT1cIidjLWxpc3Rib3gtLXNtIGMtbGlzdGJveC0tdHJhbnNwYXJlbnQnXCIgXG4gICAgICAgICAgICAgICAgW2NsYXNzZXNDb250YWluZXJdPVwiJ2ZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBnYXAteHMnXCIgXG4gICAgICAgICAgICAgICAgW2lkXT1cIidpdGVtcy1saXN0Ym94LScgKyBnZXRJZFByZWZpeCgpXCJcbiAgICAgICAgICAgICAgICBbZG9lc0NoYW5nZUJ1dHRvblRleHRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW2l0ZW1zXT1cIml0ZW1zUGVyUGFnZUxpc3RcIlxuICAgICAgICAgICAgICAgIChhY3RpdmVJdGVtQ2hhbmdlKT1cImNoYW5nZUl0ZW1zUGVyUGFnZSgkZXZlbnQpXCI+XG4gICAgPGRlc3ktbGlzdGJveC1sYWJlbCBbY2xhc3Nlc109XCJsaXN0Ym94TGFiZWwgJiYgbGlzdGJveExhYmVsLmNsYXNzZXMgPyBsaXN0Ym94TGFiZWwuY2xhc3NlcyA6ICdpbmxpbmUtYmxvY2sgYWxpZ24tbWlkZGxlIG1iLTAnXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaXN0Ym94TGFiZWxcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwieyBjb21wb25lbnQ6IGxpc3Rib3hMYWJlbCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxpc3Rib3hMYWJlbFwiPlxuICAgICAgICAgIEl0ZW1zIHBvciBww6FnaW5hXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGVzeS1saXN0Ym94LWxhYmVsPlxuICA8L2Rlc3ktbGlzdGJveD5cbjwvZGl2PlxuXG5cbjxwIGNsYXNzPVwiYmxvY2sgcmVsYXRpdmUgLXRvcC14cyBsZzptbC1hdXRvIHRleHQtc20gdGV4dC1uZXV0cmFsLWRhcmtcIiAqbmdJZj1cInRvdGFsSXRlbXMgJiYgaXRlbXNQZXJQYWdlXCI+XG4gIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlBvc2ljacOzbiBkZSBwYWdpbmFjacOzbjogPC9zcGFuPnt7KGN1cnJlbnRQYWdlIC0gMSkgKiBpdGVtc1BlclBhZ2UgKyAxfX0gLSB7e2dldExhc3RJdGVtTnVtYmVyKGN1cnJlbnRQYWdlIC0gMSl9fSBkZSB7e3RvdGFsSXRlbXN9fVxuPC9wPlxuIl19
@@ -8,7 +8,7 @@ import { ContentBaseComponent } from '../../../../shared/components';
8
8
  import * as i0 from "@angular/core";
9
9
  export class TableAdvancedHeaderCellComponent extends ContentBaseComponent {
10
10
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableAdvancedHeaderCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableAdvancedHeaderCellComponent, selector: "desy-table-advanced-header-cell", inputs: { classes: "classes", id: "id", colspan: "colspan", rowspan: "rowspan", orderBy: "orderBy", hasFilter: "hasFilter", filterClasses: "filterClasses", hasSelect: "hasSelect" }, queries: [{ propertyName: "selectComponent", predicate: TableAdvancedSelectComponent }, { propertyName: "contentComponent", predicate: ContentComponent }], usesInheritance: true, ngImport: i0, template: '<ng-template #contentTemplate><ng-content></ng-content></ng-template>', isInline: true }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableAdvancedHeaderCellComponent, selector: "desy-table-advanced-header-cell", inputs: { classes: "classes", id: "id", colspan: "colspan", rowspan: "rowspan", orderBy: "orderBy", hasFilter: "hasFilter", filterClasses: "filterClasses", hasSelect: "hasSelect", identifier: "identifier" }, queries: [{ propertyName: "selectComponent", predicate: TableAdvancedSelectComponent }, { propertyName: "contentComponent", predicate: ContentComponent }], usesInheritance: true, ngImport: i0, template: '<ng-template #contentTemplate><ng-content></ng-content></ng-template>', isInline: true }); }
12
12
  }
13
13
  __decorate([
14
14
  DesyContentChild(),
@@ -40,6 +40,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
40
40
  type: Input
41
41
  }], hasSelect: [{
42
42
  type: Input
43
+ }], identifier: [{
44
+ type: Input
43
45
  }], selectComponent: [{
44
46
  type: ContentChildren,
45
47
  args: [TableAdvancedSelectComponent]
@@ -47,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
47
49
  type: ContentChildren,
48
50
  args: [ContentComponent]
49
51
  }] } });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYWR2YW5jZWQtaGVhZGVyLWNlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS10YWJsZXMvY29tcG9uZW50cy90YWJsZS1hZHZhbmNlZC9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkLWhlYWRlci1jZWxsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDbkcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDOUYsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBb0IsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0QsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7O0FBTW5FLE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSxvQkFBb0I7K0dBQTdELGdDQUFnQzttR0FBaEMsZ0NBQWdDLDZSQWUxQiw0QkFBNEIsbURBRzVCLGdCQUFnQixvREFwQnZCLHVFQUF1RTs7QUFnQmpGO0lBQUMsZ0JBQWdCLEVBQUU7OEJBQzhDLDRCQUE0Qjt5RUFBQztBQUU5RjtJQUFDLGdCQUFnQixFQUFFOzhCQUNtQyxnQkFBZ0I7MEVBQUM7NEZBbEI1RCxnQ0FBZ0M7a0JBSjVDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlDQUFpQztvQkFDM0MsUUFBUSxFQUFFLHVFQUF1RTtpQkFDbEY7OEJBRVUsT0FBTztzQkFBZixLQUFLO2dCQUNHLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFPeUMsZUFBZTtzQkFBN0QsZUFBZTt1QkFBQyw0QkFBNEI7Z0JBR1YsZ0JBQWdCO3NCQUFsRCxlQUFlO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuLy4uLy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFibGVBZHZhbmNlZFNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtYWR2YW5jZWQtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXN5Q29udGVudENoaWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XG5pbXBvcnQge0NvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0hlYWRDZWxsTW9kZWxEYXRhLCBPcmRlckJ5fSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7Q29udGVudEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS10YWJsZS1hZHZhbmNlZC1oZWFkZXItY2VsbCcsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+J1xufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUFkdmFuY2VkSGVhZGVyQ2VsbENvbXBvbmVudCBleHRlbmRzIENvbnRlbnRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgSGVhZENlbGxNb2RlbERhdGEge1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbHNwYW46IG51bWJlcjtcbiAgQElucHV0KCkgcm93c3BhbjogbnVtYmVyO1xuICBASW5wdXQoKSBvcmRlckJ5OiBPcmRlckJ5OyAvLyBQb3NzaWJsZSB2YWx1ZXMgYG5vbmVgLCBgYXNjYCwgYGRlc2NgLlxuICBASW5wdXQoKSBoYXNGaWx0ZXI6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGZpbHRlckNsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCkgaGFzU2VsZWN0PzogYm9vbGVhbjtcbiAgdmFsdWVGaWx0ZXI/OiBzdHJpbmc7XG4gIGFjdGl2ZUZpbHRlcj86IGJvb2xlYW47XG4gIHZhbHVlU2VsZWN0Pzogc3RyaW5nO1xuICBhY3RpdmVTZWxlY3Q/OiBib29sZWFuO1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihUYWJsZUFkdmFuY2VkU2VsZWN0Q29tcG9uZW50KSBzZWxlY3RDb21wb25lbnQ/OiBUYWJsZUFkdmFuY2VkU2VsZWN0Q29tcG9uZW50O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihDb250ZW50Q29tcG9uZW50KSBjb250ZW50Q29tcG9uZW50PzogQ29udGVudENvbXBvbmVudDtcbn1cbiJdfQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYWR2YW5jZWQtaGVhZGVyLWNlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS10YWJsZXMvY29tcG9uZW50cy90YWJsZS1hZHZhbmNlZC9jb21wb25lbnRzL3RhYmxlLWFkdmFuY2VkLWhlYWRlci1jZWxsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDbkcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDOUYsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBb0IsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0QsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7O0FBTW5FLE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSxvQkFBb0I7K0dBQTdELGdDQUFnQzttR0FBaEMsZ0NBQWdDLHVUQWdCMUIsNEJBQTRCLG1EQUc1QixnQkFBZ0Isb0RBckJ2Qix1RUFBdUU7O0FBaUJqRjtJQUFDLGdCQUFnQixFQUFFOzhCQUM4Qyw0QkFBNEI7eUVBQUM7QUFFOUY7SUFBQyxnQkFBZ0IsRUFBRTs4QkFDbUMsZ0JBQWdCOzBFQUFDOzRGQW5CNUQsZ0NBQWdDO2tCQUo1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQ0FBaUM7b0JBQzNDLFFBQVEsRUFBRSx1RUFBdUU7aUJBQ2xGOzhCQUVVLE9BQU87c0JBQWYsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFPeUMsZUFBZTtzQkFBN0QsZUFBZTt1QkFBQyw0QkFBNEI7Z0JBR1YsZ0JBQWdCO3NCQUFsRCxlQUFlO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuLy4uLy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFibGVBZHZhbmNlZFNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtYWR2YW5jZWQtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXN5Q29udGVudENoaWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XG5pbXBvcnQge0NvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0hlYWRDZWxsTW9kZWxEYXRhLCBPcmRlckJ5fSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7Q29udGVudEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS10YWJsZS1hZHZhbmNlZC1oZWFkZXItY2VsbCcsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+J1xufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUFkdmFuY2VkSGVhZGVyQ2VsbENvbXBvbmVudCBleHRlbmRzIENvbnRlbnRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgSGVhZENlbGxNb2RlbERhdGEge1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbHNwYW46IG51bWJlcjtcbiAgQElucHV0KCkgcm93c3BhbjogbnVtYmVyO1xuICBASW5wdXQoKSBvcmRlckJ5OiBPcmRlckJ5OyAvLyBQb3NzaWJsZSB2YWx1ZXMgYG5vbmVgLCBgYXNjYCwgYGRlc2NgLlxuICBASW5wdXQoKSBoYXNGaWx0ZXI6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGZpbHRlckNsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCkgaGFzU2VsZWN0PzogYm9vbGVhbjtcbiAgQElucHV0KCkgaWRlbnRpZmllcj86IHN0cmluZztcbiAgdmFsdWVGaWx0ZXI/OiBzdHJpbmc7XG4gIGFjdGl2ZUZpbHRlcj86IGJvb2xlYW47XG4gIHZhbHVlU2VsZWN0Pzogc3RyaW5nO1xuICBhY3RpdmVTZWxlY3Q/OiBib29sZWFuO1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihUYWJsZUFkdmFuY2VkU2VsZWN0Q29tcG9uZW50KSBzZWxlY3RDb21wb25lbnQ/OiBUYWJsZUFkdmFuY2VkU2VsZWN0Q29tcG9uZW50O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihDb250ZW50Q29tcG9uZW50KSBjb250ZW50Q29tcG9uZW50PzogQ29udGVudENvbXBvbmVudDtcbn1cbiJdfQ==