@net7/boilerplate-arianna 3.9.2 → 4.0.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.
- package/esm2020/lib/components/aw-facets-wrapper/aw-facets-wrapper.mjs +6 -6
- package/esm2020/lib/components/bubble-chart-wrapper/bubble-chart-wrapper.mjs +4 -4
- package/esm2020/lib/components/chart-tippy/chart-tippy.mjs +6 -6
- package/esm2020/lib/components/extended-tree/extended-tree.mjs +6 -6
- package/esm2020/lib/components/pdf-viewer/pdf-viewer.mjs +7 -7
- package/esm2020/lib/components/scheda-dropdown/scheda-dropdown.mjs +4 -4
- package/esm2020/lib/components/scheda-image-navigator/scheda-image-navigator.mjs +6 -6
- package/esm2020/lib/components/smart-breadcrumbs/smart-breadcrumbs.mjs +6 -6
- package/esm2020/lib/layouts/collection-layout/collection-layout.mjs +6 -6
- package/esm2020/lib/layouts/entita-layout/entita-layout.mjs +7 -7
- package/esm2020/lib/layouts/gallery-layout/gallery-layout.mjs +8 -8
- package/esm2020/lib/layouts/home-layout/home-layout.mjs +9 -9
- package/esm2020/lib/layouts/map-layout/map-layout.mjs +7 -7
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.mjs +9 -9
- package/esm2020/lib/layouts/search-layout/search-layout.mjs +8 -8
- package/esm2020/lib/layouts/timeline-layout/timeline-layout.mjs +7 -7
- package/esm2020/lib/n7-boilerplate-arianna.module.mjs +9 -11
- package/esm2020/lib/search/aw-search.service.mjs +4 -4
- package/fesm2015/net7-boilerplate-arianna.mjs +93 -95
- package/fesm2015/net7-boilerplate-arianna.mjs.map +1 -1
- package/fesm2020/net7-boilerplate-arianna.mjs +93 -95
- package/fesm2020/net7-boilerplate-arianna.mjs.map +1 -1
- package/{net7-boilerplate-arianna.d.ts → index.d.ts} +0 -0
- package/lib/components/aw-facets-wrapper/aw-facets-wrapper.d.ts +1 -1
- package/lib/components/bubble-chart-wrapper/bubble-chart-wrapper.d.ts +1 -1
- package/lib/components/chart-tippy/chart-tippy.d.ts +1 -1
- package/lib/components/extended-tree/extended-tree.d.ts +1 -1
- package/lib/components/pdf-viewer/pdf-viewer.d.ts +1 -1
- package/lib/components/scheda-dropdown/scheda-dropdown.d.ts +1 -1
- package/lib/components/scheda-image-navigator/scheda-image-navigator.d.ts +1 -1
- package/lib/components/smart-breadcrumbs/smart-breadcrumbs.d.ts +1 -1
- package/lib/layouts/collection-layout/collection-layout.d.ts +1 -1
- package/lib/layouts/entita-layout/entita-layout.d.ts +1 -1
- package/lib/layouts/gallery-layout/gallery-layout.d.ts +1 -1
- package/lib/layouts/home-layout/home-layout.d.ts +1 -1
- package/lib/layouts/map-layout/map-layout.d.ts +1 -1
- package/lib/layouts/scheda-layout/scheda-layout.d.ts +1 -1
- package/lib/layouts/search-layout/search-layout.d.ts +1 -1
- package/lib/layouts/timeline-layout/timeline-layout.d.ts +1 -1
- package/package.json +6 -6
|
@@ -5,11 +5,11 @@ import { AwHomeLayoutConfig as config } from './home-layout.config';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@net7/boilerplate-common";
|
|
7
7
|
import * as i2 from "@angular/router";
|
|
8
|
-
import * as i3 from "@
|
|
9
|
-
import * as i4 from "
|
|
10
|
-
import * as i5 from "../../components/chart-
|
|
11
|
-
import * as i6 from "../../components/
|
|
12
|
-
import * as i7 from "
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
import * as i4 from "@net7/components";
|
|
10
|
+
import * as i5 from "../../components/bubble-chart-wrapper/bubble-chart-wrapper";
|
|
11
|
+
import * as i6 from "../../components/chart-tippy/chart-tippy";
|
|
12
|
+
import * as i7 from "../../components/smart-breadcrumbs/smart-breadcrumbs";
|
|
13
13
|
export class AwHomeLayoutComponent extends AbstractLayout {
|
|
14
14
|
constructor(layoutsConfiguration, router, configuration, communication, mainState) {
|
|
15
15
|
super(layoutsConfiguration.get('AwHomeLayoutConfig') || config);
|
|
@@ -35,10 +35,10 @@ export class AwHomeLayoutComponent extends AbstractLayout {
|
|
|
35
35
|
this.onDestroy();
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
-
AwHomeLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
39
|
-
AwHomeLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AwHomeLayoutComponent, selector: "aw-home-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-home\" *ngIf=\"lb.dataSource\">\n <!-- Carousel -->\n <div class=\"aw-home__carousel\" *ngIf=\"lb.dataSource.carouselEnabled\">\n <n7-carousel [data]=\"lb.widgets['aw-carousel'].ds.out$ | async\">\n </n7-carousel>\n </div>\n\n <!-- Hero section at the top of the page -->\n <div class=\"aw-home__top-hero\">\n <n7-hero [data]=\"lb.widgets['aw-hero'].ds.out$ | async\" [emit]=\"lb.widgets['aw-hero'].emit\">\n </n7-hero>\n </div>\n\n <!-- Bubble chart -->\n <div class=\"aw-home__bubble-wrapper n7-side-auto-padding\"\n [ngClass]=\"{ 'has-results' : lb.dataSource.selectedBubbles.length > 0 }\" *ngIf=\"lb.dataSource.bubblesEnabled\">\n <div class=\"aw-home__facets-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let i of [0,1,2,3]\" [data]=\"{\n blocks: [{\n classes: 'facet-placeholder-header'\n }, {\n classes: 'facet-placeholder-input'\n }] \n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__facets-wrapper\" *ngIf=\"!!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <span class=\"aw-home__facet\"\n *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\">\n <n7-facet-header [data]=\"widgetData.header\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet-header>\n <n7-facet [data]=\"widgetData.input\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet>\n </span>\n </div>\n\n <div class=\"aw-home__bubble-chart-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\">\n <n7-content-placeholder [data]=\"{\n blocks: [\n {\n classes: 'facet-placeholder-item-1'\n }\n ]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__bubble-chart-wrapper\" *ngIf=\"!!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\"\n [style.overflow]=\"lb.dataSource.loadingBubbles ? 'visible' : 'hidden'\">\n <aw-bubble-chart-wrapper>\n <aw-chart-tippy \n [data]=\"lb.widgets['aw-chart-tippy'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-chart-tippy'].emit\">\n </aw-chart-tippy>\n <n7-bubble-chart [data]=\"lb.widgets['aw-bubble-chart'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-bubble-chart'].emit\">\n </n7-bubble-chart>\n </aw-bubble-chart-wrapper>\n </div>\n\n <!-- Linked objects -->\n <ng-container *ngIf=\"(lb.widgets['aw-bubble-chart'].ds.out$ | async)?.selected.length > 0;\">\n <div class=\"aw-home__bubble-results\" id=\"home-bubble-results\">\n <div *ngIf=\"lb.dataSource.numOfItemsStr\" class=\"aw-home__bubble-results-title-wrapper\">\n <h1 class=\"aw-home__bubble-results-title\"><strong class=\"aw-home__bubble-results-title-counter\">\n {{ lb.dataSource.numOfItemsStr }}</strong> <span> Risultati</span>\n </h1>\n </div>\n <div class=\"aw-home__bubble-tags-wrapper\">\n <h3 class=\"aw-home__bubble-tags-title\">Collegati a </h3>\n <ng-container *ngFor=\"let widgetData of lb.widgets['aw-home-item-tags-wrapper'].ds.out$ | async;\">\n <n7-tag [data]=\"widgetData\" [emit]=\"lb.widgets['aw-home-item-tags-wrapper'].emit\">\n </n7-tag>\n <br>\n </ng-container>\n </div>\n <div class=\"aw-home__bubble-results-list-wrapper\">\n <div class=\"aw-home__bubble-results-list-loading\" *ngIf=\"lb.dataSource.resultsListIsLoading\">\n <n7-content-placeholder \n *ngFor=\"let i of [1, 2, 3, 4, 5]\"\n [data]=\"{\n blocks: [{\n classes: 'search-result-placeholder-title'\n }, {\n classes: 'search-result-placeholder-metadata'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div *ngIf=\"!lb.dataSource.resultsListIsLoading\" class=\"aw-home__bubble-results-list\"\n [attr.id]=\"'bubble-results-list'\" (scroll)=\"lb.eventHandler.emitOuter('scroll', $event.target)\">\n\n <div class=\"aw-home__bubble-results-fallback\"\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length < 1;\">\n <p class=\"aw-home__bubble-results-fallback-text\">\n {{ (lb.widgets['aw-linked-objects'].ds.out$ | async)?.fallback }}\n </p>\n <button class=\"n7-btn aw-home__bubble-results-reset\"\n (click)=\"lb.eventHandler.emitInner('clearselection')\">\n Resetta la ricerca\n </button>\n </div>\n\n <div class=\"aw-item-preview-list\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-smart-breadcrumbs [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n \n <!-- <ng-container\n *ngFor=\"let widgetData of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result;\">\n <n7-item-preview [data]=\"widgetData\" [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </ng-container> -->\n\n <ng-container *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.isLoading\">\n <div class=\"aw-home__bubble-results-list-loader\">\n <n7-loader [data]=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.loaderData\">\n </n7-loader>\n </div>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'is-visible' : lb.dataSource.hasScrollBackground }\"\n class=\"aw-home__bubble-results-list-wrapper-with-scroll\"></div>\n </div>\n <!-- aw-linked-objects__actions -->\n <ng-container\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length > 0 && !lb.dataSource.resultsListIsLoading\">\n <div *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.actions as action\"\n class=\"aw-home__bubble-results-list-actions\">\n <button (click)=\"lb.eventHandler.emitInner('bubbleresultsviewallclick')\"\n class=\"n7-btn n7-btn-light n7-btn-l aw-home__bubble-results-list-view-all\">\n {{action[0].label}}\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n\n <!-- Outer links -->\n <div *ngIf=\"lb.dataSource.outerLinks && lb.dataSource.outerLinks.length > 0\" class=\"aw-home__outer-links\">\n <section class=\"aw-home__outer-links-wrapper n7-side-auto-padding\">\n <h2 class=\"aw-home__outer-links-title\" *ngIf=\"lb.dataSource.outerLinksTitle\">\n {{ lb.dataSource.outerLinksTitle }}\n </h2>\n <p class=\"aw-home__outer-links-description\" *ngIf=\"lb.dataSource.outerLinksDescription\">\n {{ lb.dataSource.outerLinksDescription }}\n </p>\n <div class=\"aw-home__outer-links-items\">\n <!-- Item preview -->\n <n7-item-preview *ngFor=\"let outerLink of lb.dataSource.outerLinks\" [data]=\"outerLink\"\n [emit]=\"lb.eventHandler.outerLinkClick.bind(lb.eventHandler)\">\n </n7-item-preview>\n <!-- END // Item preview -->\n </div>\n </section>\n </div>\n <!-- END // Outer links -->\n\n <!-- Hero section at the bottom of the page -->\n <div class=\"aw-home__bottom-hero\">\n <n7-hero [data]=\"lb.widgets['aw-home-hero-patrimonio'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-hero-patrimonio'].emit\">\n </n7-hero>\n </div>\n\n <!-- Adavanced autocomplete popover -->\n <div class=\"aw-home__advanced-autocomplete\" id=\"aw-home-advanced-autocomplete-popover\" style=\"display: none;\">\n <div class=\"aw-home__advanced-autocomplete-loader\" *ngIf=\"lb.dataSource.homeAutocompleteIsLoading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-advanced-autocomplete *ngIf=\"!lb.dataSource.homeAutocompleteIsLoading\"\n [data]=\"lb.widgets['aw-home-autocomplete'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-autocomplete'].emit\">\n </n7-advanced-autocomplete>\n </div>\n\n <!-- Simple autocomplete popover. DO NOT CHANGE parent div class! -->\n <!-- Creating one template for each facet -->\n <div *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\"\n class=\"aw-home__simple-autocomplete aw-simple-autocomplete__template\" style=\"display: none;\">\n <div class=\"aw-home__simple-autocomplete-content aw-simple-autocomplete__tippy-wrapper\">\n <div class=\"aw-home__simple-autocomplete-loader aw-simple-autocomplete__tippy-wrapper-loader\"\n *ngIf=\"(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-simple-autocomplete *ngIf=\"!(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\"\n [data]=\"lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-autocomplete-wrapper'].emit\">\n </n7-simple-autocomplete>\n </div>\n </div>\n</div>\n", components: [{ type: i3.CarouselComponent, selector: "n7-carousel", inputs: ["data", "emit"] }, { type: i3.HeroComponent, selector: "n7-hero", inputs: ["data", "emit"] }, { type: i3.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { type: i3.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { type: i3.FacetComponent, selector: "n7-facet", inputs: ["data", "emit"] }, { type: i4.BubbleChartWrapperComponent, selector: "aw-bubble-chart-wrapper", inputs: ["emit", "container", "buttons"] }, { type: i5.ChartTippyComponent, selector: "aw-chart-tippy", inputs: ["data", "emit", "anchorData"] }, { type: i3.BubbleChartComponent, selector: "n7-bubble-chart", inputs: ["data", "emit"] }, { type: i3.TagComponent, selector: "n7-tag", inputs: ["data", "emit"] }, { type: i6.SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { type: i3.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { type: i3.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { type: i3.AdvancedAutocompleteComponent, selector: "n7-advanced-autocomplete", inputs: ["data", "emit"] }, { type: i3.SimpleAutocompleteComponent, selector: "n7-simple-autocomplete", inputs: ["data", "emit"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i7.AsyncPipe } });
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
+
AwHomeLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwHomeLayoutComponent, deps: [{ token: i1.LayoutsConfigurationService }, { token: i2.Router }, { token: i1.ConfigurationService }, { token: i1.CommunicationService }, { token: i1.MainStateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
+
AwHomeLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: AwHomeLayoutComponent, selector: "aw-home-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-home\" *ngIf=\"lb.dataSource\">\n <!-- Carousel -->\n <div class=\"aw-home__carousel\" *ngIf=\"lb.dataSource.carouselEnabled\">\n <n7-carousel [data]=\"lb.widgets['aw-carousel'].ds.out$ | async\">\n </n7-carousel>\n </div>\n\n <!-- Hero section at the top of the page -->\n <div class=\"aw-home__top-hero\">\n <n7-hero [data]=\"lb.widgets['aw-hero'].ds.out$ | async\" [emit]=\"lb.widgets['aw-hero'].emit\">\n </n7-hero>\n </div>\n\n <!-- Bubble chart -->\n <div class=\"aw-home__bubble-wrapper n7-side-auto-padding\"\n [ngClass]=\"{ 'has-results' : lb.dataSource.selectedBubbles.length > 0 }\" *ngIf=\"lb.dataSource.bubblesEnabled\">\n <div class=\"aw-home__facets-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let i of [0,1,2,3]\" [data]=\"{\n blocks: [{\n classes: 'facet-placeholder-header'\n }, {\n classes: 'facet-placeholder-input'\n }] \n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__facets-wrapper\" *ngIf=\"!!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <span class=\"aw-home__facet\"\n *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\">\n <n7-facet-header [data]=\"widgetData.header\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet-header>\n <n7-facet [data]=\"widgetData.input\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet>\n </span>\n </div>\n\n <div class=\"aw-home__bubble-chart-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\">\n <n7-content-placeholder [data]=\"{\n blocks: [\n {\n classes: 'facet-placeholder-item-1'\n }\n ]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__bubble-chart-wrapper\" *ngIf=\"!!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\"\n [style.overflow]=\"lb.dataSource.loadingBubbles ? 'visible' : 'hidden'\">\n <aw-bubble-chart-wrapper>\n <aw-chart-tippy \n [data]=\"lb.widgets['aw-chart-tippy'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-chart-tippy'].emit\">\n </aw-chart-tippy>\n <n7-bubble-chart [data]=\"lb.widgets['aw-bubble-chart'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-bubble-chart'].emit\">\n </n7-bubble-chart>\n </aw-bubble-chart-wrapper>\n </div>\n\n <!-- Linked objects -->\n <ng-container *ngIf=\"(lb.widgets['aw-bubble-chart'].ds.out$ | async)?.selected.length > 0;\">\n <div class=\"aw-home__bubble-results\" id=\"home-bubble-results\">\n <div *ngIf=\"lb.dataSource.numOfItemsStr\" class=\"aw-home__bubble-results-title-wrapper\">\n <h1 class=\"aw-home__bubble-results-title\"><strong class=\"aw-home__bubble-results-title-counter\">\n {{ lb.dataSource.numOfItemsStr }}</strong> <span> Risultati</span>\n </h1>\n </div>\n <div class=\"aw-home__bubble-tags-wrapper\">\n <h3 class=\"aw-home__bubble-tags-title\">Collegati a </h3>\n <ng-container *ngFor=\"let widgetData of lb.widgets['aw-home-item-tags-wrapper'].ds.out$ | async;\">\n <n7-tag [data]=\"widgetData\" [emit]=\"lb.widgets['aw-home-item-tags-wrapper'].emit\">\n </n7-tag>\n <br>\n </ng-container>\n </div>\n <div class=\"aw-home__bubble-results-list-wrapper\">\n <div class=\"aw-home__bubble-results-list-loading\" *ngIf=\"lb.dataSource.resultsListIsLoading\">\n <n7-content-placeholder \n *ngFor=\"let i of [1, 2, 3, 4, 5]\"\n [data]=\"{\n blocks: [{\n classes: 'search-result-placeholder-title'\n }, {\n classes: 'search-result-placeholder-metadata'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div *ngIf=\"!lb.dataSource.resultsListIsLoading\" class=\"aw-home__bubble-results-list\"\n [attr.id]=\"'bubble-results-list'\" (scroll)=\"lb.eventHandler.emitOuter('scroll', $event.target)\">\n\n <div class=\"aw-home__bubble-results-fallback\"\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length < 1;\">\n <p class=\"aw-home__bubble-results-fallback-text\">\n {{ (lb.widgets['aw-linked-objects'].ds.out$ | async)?.fallback }}\n </p>\n <button class=\"n7-btn aw-home__bubble-results-reset\"\n (click)=\"lb.eventHandler.emitInner('clearselection')\">\n Resetta la ricerca\n </button>\n </div>\n\n <div class=\"aw-item-preview-list\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-smart-breadcrumbs [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n \n <!-- <ng-container\n *ngFor=\"let widgetData of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result;\">\n <n7-item-preview [data]=\"widgetData\" [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </ng-container> -->\n\n <ng-container *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.isLoading\">\n <div class=\"aw-home__bubble-results-list-loader\">\n <n7-loader [data]=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.loaderData\">\n </n7-loader>\n </div>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'is-visible' : lb.dataSource.hasScrollBackground }\"\n class=\"aw-home__bubble-results-list-wrapper-with-scroll\"></div>\n </div>\n <!-- aw-linked-objects__actions -->\n <ng-container\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length > 0 && !lb.dataSource.resultsListIsLoading\">\n <div *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.actions as action\"\n class=\"aw-home__bubble-results-list-actions\">\n <button (click)=\"lb.eventHandler.emitInner('bubbleresultsviewallclick')\"\n class=\"n7-btn n7-btn-light n7-btn-l aw-home__bubble-results-list-view-all\">\n {{action[0].label}}\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n\n <!-- Outer links -->\n <div *ngIf=\"lb.dataSource.outerLinks && lb.dataSource.outerLinks.length > 0\" class=\"aw-home__outer-links\">\n <section class=\"aw-home__outer-links-wrapper n7-side-auto-padding\">\n <h2 class=\"aw-home__outer-links-title\" *ngIf=\"lb.dataSource.outerLinksTitle\">\n {{ lb.dataSource.outerLinksTitle }}\n </h2>\n <p class=\"aw-home__outer-links-description\" *ngIf=\"lb.dataSource.outerLinksDescription\">\n {{ lb.dataSource.outerLinksDescription }}\n </p>\n <div class=\"aw-home__outer-links-items\">\n <!-- Item preview -->\n <n7-item-preview *ngFor=\"let outerLink of lb.dataSource.outerLinks\" [data]=\"outerLink\"\n [emit]=\"lb.eventHandler.outerLinkClick.bind(lb.eventHandler)\">\n </n7-item-preview>\n <!-- END // Item preview -->\n </div>\n </section>\n </div>\n <!-- END // Outer links -->\n\n <!-- Hero section at the bottom of the page -->\n <div class=\"aw-home__bottom-hero\">\n <n7-hero [data]=\"lb.widgets['aw-home-hero-patrimonio'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-hero-patrimonio'].emit\">\n </n7-hero>\n </div>\n\n <!-- Adavanced autocomplete popover -->\n <div class=\"aw-home__advanced-autocomplete\" id=\"aw-home-advanced-autocomplete-popover\" style=\"display: none;\">\n <div class=\"aw-home__advanced-autocomplete-loader\" *ngIf=\"lb.dataSource.homeAutocompleteIsLoading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-advanced-autocomplete *ngIf=\"!lb.dataSource.homeAutocompleteIsLoading\"\n [data]=\"lb.widgets['aw-home-autocomplete'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-autocomplete'].emit\">\n </n7-advanced-autocomplete>\n </div>\n\n <!-- Simple autocomplete popover. DO NOT CHANGE parent div class! -->\n <!-- Creating one template for each facet -->\n <div *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\"\n class=\"aw-home__simple-autocomplete aw-simple-autocomplete__template\" style=\"display: none;\">\n <div class=\"aw-home__simple-autocomplete-content aw-simple-autocomplete__tippy-wrapper\">\n <div class=\"aw-home__simple-autocomplete-loader aw-simple-autocomplete__tippy-wrapper-loader\"\n *ngIf=\"(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-simple-autocomplete *ngIf=\"!(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\"\n [data]=\"lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-autocomplete-wrapper'].emit\">\n </n7-simple-autocomplete>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.AdvancedAutocompleteComponent, selector: "n7-advanced-autocomplete", inputs: ["data", "emit"] }, { kind: "component", type: i4.BubbleChartComponent, selector: "n7-bubble-chart", inputs: ["data", "emit"] }, { kind: "component", type: i4.CarouselComponent, selector: "n7-carousel", inputs: ["data", "emit"] }, { kind: "component", type: i4.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i4.FacetComponent, selector: "n7-facet", inputs: ["data", "emit"] }, { kind: "component", type: i4.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { kind: "component", type: i4.HeroComponent, selector: "n7-hero", inputs: ["data", "emit"] }, { kind: "component", type: i4.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i4.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4.SimpleAutocompleteComponent, selector: "n7-simple-autocomplete", inputs: ["data", "emit"] }, { kind: "component", type: i4.TagComponent, selector: "n7-tag", inputs: ["data", "emit"] }, { kind: "component", type: i5.BubbleChartWrapperComponent, selector: "aw-bubble-chart-wrapper", inputs: ["emit", "container", "buttons"] }, { kind: "component", type: i6.ChartTippyComponent, selector: "aw-chart-tippy", inputs: ["data", "emit", "anchorData"] }, { kind: "component", type: i7.SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwHomeLayoutComponent, decorators: [{
|
|
41
41
|
type: Component,
|
|
42
42
|
args: [{ selector: 'aw-home-layout', template: "<div class=\"aw-home\" *ngIf=\"lb.dataSource\">\n <!-- Carousel -->\n <div class=\"aw-home__carousel\" *ngIf=\"lb.dataSource.carouselEnabled\">\n <n7-carousel [data]=\"lb.widgets['aw-carousel'].ds.out$ | async\">\n </n7-carousel>\n </div>\n\n <!-- Hero section at the top of the page -->\n <div class=\"aw-home__top-hero\">\n <n7-hero [data]=\"lb.widgets['aw-hero'].ds.out$ | async\" [emit]=\"lb.widgets['aw-hero'].emit\">\n </n7-hero>\n </div>\n\n <!-- Bubble chart -->\n <div class=\"aw-home__bubble-wrapper n7-side-auto-padding\"\n [ngClass]=\"{ 'has-results' : lb.dataSource.selectedBubbles.length > 0 }\" *ngIf=\"lb.dataSource.bubblesEnabled\">\n <div class=\"aw-home__facets-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let i of [0,1,2,3]\" [data]=\"{\n blocks: [{\n classes: 'facet-placeholder-header'\n }, {\n classes: 'facet-placeholder-input'\n }] \n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__facets-wrapper\" *ngIf=\"!!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <span class=\"aw-home__facet\"\n *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\">\n <n7-facet-header [data]=\"widgetData.header\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet-header>\n <n7-facet [data]=\"widgetData.input\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet>\n </span>\n </div>\n\n <div class=\"aw-home__bubble-chart-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\">\n <n7-content-placeholder [data]=\"{\n blocks: [\n {\n classes: 'facet-placeholder-item-1'\n }\n ]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__bubble-chart-wrapper\" *ngIf=\"!!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\"\n [style.overflow]=\"lb.dataSource.loadingBubbles ? 'visible' : 'hidden'\">\n <aw-bubble-chart-wrapper>\n <aw-chart-tippy \n [data]=\"lb.widgets['aw-chart-tippy'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-chart-tippy'].emit\">\n </aw-chart-tippy>\n <n7-bubble-chart [data]=\"lb.widgets['aw-bubble-chart'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-bubble-chart'].emit\">\n </n7-bubble-chart>\n </aw-bubble-chart-wrapper>\n </div>\n\n <!-- Linked objects -->\n <ng-container *ngIf=\"(lb.widgets['aw-bubble-chart'].ds.out$ | async)?.selected.length > 0;\">\n <div class=\"aw-home__bubble-results\" id=\"home-bubble-results\">\n <div *ngIf=\"lb.dataSource.numOfItemsStr\" class=\"aw-home__bubble-results-title-wrapper\">\n <h1 class=\"aw-home__bubble-results-title\"><strong class=\"aw-home__bubble-results-title-counter\">\n {{ lb.dataSource.numOfItemsStr }}</strong> <span> Risultati</span>\n </h1>\n </div>\n <div class=\"aw-home__bubble-tags-wrapper\">\n <h3 class=\"aw-home__bubble-tags-title\">Collegati a </h3>\n <ng-container *ngFor=\"let widgetData of lb.widgets['aw-home-item-tags-wrapper'].ds.out$ | async;\">\n <n7-tag [data]=\"widgetData\" [emit]=\"lb.widgets['aw-home-item-tags-wrapper'].emit\">\n </n7-tag>\n <br>\n </ng-container>\n </div>\n <div class=\"aw-home__bubble-results-list-wrapper\">\n <div class=\"aw-home__bubble-results-list-loading\" *ngIf=\"lb.dataSource.resultsListIsLoading\">\n <n7-content-placeholder \n *ngFor=\"let i of [1, 2, 3, 4, 5]\"\n [data]=\"{\n blocks: [{\n classes: 'search-result-placeholder-title'\n }, {\n classes: 'search-result-placeholder-metadata'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div *ngIf=\"!lb.dataSource.resultsListIsLoading\" class=\"aw-home__bubble-results-list\"\n [attr.id]=\"'bubble-results-list'\" (scroll)=\"lb.eventHandler.emitOuter('scroll', $event.target)\">\n\n <div class=\"aw-home__bubble-results-fallback\"\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length < 1;\">\n <p class=\"aw-home__bubble-results-fallback-text\">\n {{ (lb.widgets['aw-linked-objects'].ds.out$ | async)?.fallback }}\n </p>\n <button class=\"n7-btn aw-home__bubble-results-reset\"\n (click)=\"lb.eventHandler.emitInner('clearselection')\">\n Resetta la ricerca\n </button>\n </div>\n\n <div class=\"aw-item-preview-list\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-smart-breadcrumbs [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n \n <!-- <ng-container\n *ngFor=\"let widgetData of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result;\">\n <n7-item-preview [data]=\"widgetData\" [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </ng-container> -->\n\n <ng-container *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.isLoading\">\n <div class=\"aw-home__bubble-results-list-loader\">\n <n7-loader [data]=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.loaderData\">\n </n7-loader>\n </div>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'is-visible' : lb.dataSource.hasScrollBackground }\"\n class=\"aw-home__bubble-results-list-wrapper-with-scroll\"></div>\n </div>\n <!-- aw-linked-objects__actions -->\n <ng-container\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length > 0 && !lb.dataSource.resultsListIsLoading\">\n <div *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.actions as action\"\n class=\"aw-home__bubble-results-list-actions\">\n <button (click)=\"lb.eventHandler.emitInner('bubbleresultsviewallclick')\"\n class=\"n7-btn n7-btn-light n7-btn-l aw-home__bubble-results-list-view-all\">\n {{action[0].label}}\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n\n <!-- Outer links -->\n <div *ngIf=\"lb.dataSource.outerLinks && lb.dataSource.outerLinks.length > 0\" class=\"aw-home__outer-links\">\n <section class=\"aw-home__outer-links-wrapper n7-side-auto-padding\">\n <h2 class=\"aw-home__outer-links-title\" *ngIf=\"lb.dataSource.outerLinksTitle\">\n {{ lb.dataSource.outerLinksTitle }}\n </h2>\n <p class=\"aw-home__outer-links-description\" *ngIf=\"lb.dataSource.outerLinksDescription\">\n {{ lb.dataSource.outerLinksDescription }}\n </p>\n <div class=\"aw-home__outer-links-items\">\n <!-- Item preview -->\n <n7-item-preview *ngFor=\"let outerLink of lb.dataSource.outerLinks\" [data]=\"outerLink\"\n [emit]=\"lb.eventHandler.outerLinkClick.bind(lb.eventHandler)\">\n </n7-item-preview>\n <!-- END // Item preview -->\n </div>\n </section>\n </div>\n <!-- END // Outer links -->\n\n <!-- Hero section at the bottom of the page -->\n <div class=\"aw-home__bottom-hero\">\n <n7-hero [data]=\"lb.widgets['aw-home-hero-patrimonio'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-hero-patrimonio'].emit\">\n </n7-hero>\n </div>\n\n <!-- Adavanced autocomplete popover -->\n <div class=\"aw-home__advanced-autocomplete\" id=\"aw-home-advanced-autocomplete-popover\" style=\"display: none;\">\n <div class=\"aw-home__advanced-autocomplete-loader\" *ngIf=\"lb.dataSource.homeAutocompleteIsLoading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-advanced-autocomplete *ngIf=\"!lb.dataSource.homeAutocompleteIsLoading\"\n [data]=\"lb.widgets['aw-home-autocomplete'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-autocomplete'].emit\">\n </n7-advanced-autocomplete>\n </div>\n\n <!-- Simple autocomplete popover. DO NOT CHANGE parent div class! -->\n <!-- Creating one template for each facet -->\n <div *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\"\n class=\"aw-home__simple-autocomplete aw-simple-autocomplete__template\" style=\"display: none;\">\n <div class=\"aw-home__simple-autocomplete-content aw-simple-autocomplete__tippy-wrapper\">\n <div class=\"aw-home__simple-autocomplete-loader aw-simple-autocomplete__tippy-wrapper-loader\"\n *ngIf=\"(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-simple-autocomplete *ngIf=\"!(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\"\n [data]=\"lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-autocomplete-wrapper'].emit\">\n </n7-simple-autocomplete>\n </div>\n </div>\n</div>\n" }]
|
|
43
43
|
}], ctorParameters: function () { return [{ type: i1.LayoutsConfigurationService }, { type: i2.Router }, { type: i1.ConfigurationService }, { type: i1.CommunicationService }, { type: i1.MainStateService }]; } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS1sYXlvdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1hcmlhbm5hL3NyYy9saWIvbGF5b3V0cy9ob21lLWxheW91dC9ob21lLWxheW91dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL2hvbWUtbGF5b3V0L2hvbWUtbGF5b3V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxLQUFLLE1BQU0sVUFBVSxDQUFDO0FBQzdCLE9BQU8sRUFDTCxjQUFjLEVBS2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLElBQUksTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7OztBQU1wRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsY0FBYztJQUN2RCxZQUNFLG9CQUFpRCxFQUN6QyxNQUFjLEVBQ2QsYUFBbUMsRUFDbkMsYUFBbUMsRUFDbkMsU0FBMkI7UUFFbkMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBTHhELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBR3JDLENBQUM7SUFFUyxXQUFXO1FBQ25CLE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUU7WUFDbEMsS0FBSztTQUNOLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDOztrSEE1QlUscUJBQXFCO3NHQUFyQixxQkFBcUIsNkVDaEJsQyxtOFZBb01BOzJGRHBMYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB0aXBweSBmcm9tICd0aXBweS5qcyc7XG5pbXBvcnQge1xuICBBYnN0cmFjdExheW91dCxcbiAgQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gIExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTWFpblN0YXRlU2VydmljZSxcbiAgQ29tbXVuaWNhdGlvblNlcnZpY2Vcbn0gZnJvbSAnQG5ldDcvYm9pbGVycGxhdGUtY29tbW9uJztcbmltcG9ydCB7IEF3SG9tZUxheW91dENvbmZpZyBhcyBjb25maWcgfSBmcm9tICcuL2hvbWUtbGF5b3V0LmNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F3LWhvbWUtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hvbWUtbGF5b3V0Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBBd0hvbWVMYXlvdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExheW91dCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoXG4gICAgbGF5b3V0c0NvbmZpZ3VyYXRpb246IExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb21tdW5pY2F0aW9uOiBDb21tdW5pY2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1haW5TdGF0ZTogTWFpblN0YXRlU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIobGF5b3V0c0NvbmZpZ3VyYXRpb24uZ2V0KCdBd0hvbWVMYXlvdXRDb25maWcnKSB8fCBjb25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGluaXRQYXlsb2FkKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjb25maWd1cmF0aW9uOiB0aGlzLmNvbmZpZ3VyYXRpb24sXG4gICAgICBtYWluU3RhdGU6IHRoaXMubWFpblN0YXRlLFxuICAgICAgcm91dGVyOiB0aGlzLnJvdXRlcixcbiAgICAgIGNvbW11bmljYXRpb246IHRoaXMuY29tbXVuaWNhdGlvbixcbiAgICAgIG9wdGlvbnM6IHRoaXMuY29uZmlnLm9wdGlvbnMgfHwge30sXG4gICAgICB0aXBweSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5vbkluaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25EZXN0cm95KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhdy1ob21lXCIgKm5nSWY9XCJsYi5kYXRhU291cmNlXCI+XG4gICAgPCEtLSBDYXJvdXNlbCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fY2Fyb3VzZWxcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuY2Fyb3VzZWxFbmFibGVkXCI+XG4gICAgICAgIDxuNy1jYXJvdXNlbCBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1jYXJvdXNlbCddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICA8L243LWNhcm91c2VsPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBIZXJvIHNlY3Rpb24gYXQgdGhlIHRvcCBvZiB0aGUgcGFnZSAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fdG9wLWhlcm9cIj5cbiAgICAgICAgPG43LWhlcm8gW2RhdGFdPVwibGIud2lkZ2V0c1snYXctaGVybyddLmRzLm91dCQgfCBhc3luY1wiIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWhlcm8nXS5lbWl0XCI+XG4gICAgICAgIDwvbjctaGVybz5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gQnViYmxlIGNoYXJ0IC0tPlxuICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtd3JhcHBlciBuNy1zaWRlLWF1dG8tcGFkZGluZ1wiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hhcy1yZXN1bHRzJyA6IGxiLmRhdGFTb3VyY2Uuc2VsZWN0ZWRCdWJibGVzLmxlbmd0aCA+IDAgfVwiICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5idWJibGVzRW5hYmxlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fZmFjZXRzLXdyYXBwZXItbG9hZGluZ1wiICpuZ0lmPVwiIShsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jKVwiPlxuICAgICAgICAgICAgPG43LWNvbnRlbnQtcGxhY2Vob2xkZXIgKm5nRm9yPVwibGV0IGkgb2YgWzAsMSwyLDNdXCIgW2RhdGFdPVwie1xuICAgICAgICAgICAgICAgIGJsb2NrczogW3tcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NlczogJ2ZhY2V0LXBsYWNlaG9sZGVyLWhlYWRlcidcbiAgICAgICAgICAgICAgICB9LCB7XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXM6ICdmYWNldC1wbGFjZWhvbGRlci1pbnB1dCdcbiAgICAgICAgICAgICAgICB9XSBcbiAgICAgICAgICAgIH1cIj48L243LWNvbnRlbnQtcGxhY2Vob2xkZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fZmFjZXRzLXdyYXBwZXJcIiAqbmdJZj1cIiEhKGxiLndpZGdldHNbJ2F3LWhvbWUtZmFjZXRzLXdyYXBwZXInXS5kcy5vdXQkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF3LWhvbWVfX2ZhY2V0XCJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgd2lkZ2V0RGF0YSBvZiBsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jO1wiPlxuICAgICAgICAgICAgICAgIDxuNy1mYWNldC1oZWFkZXIgW2RhdGFdPVwid2lkZ2V0RGF0YS5oZWFkZXJcIiBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgIDwvbjctZmFjZXQtaGVhZGVyPlxuICAgICAgICAgICAgICAgIDxuNy1mYWNldCBbZGF0YV09XCJ3aWRnZXREYXRhLmlucHV0XCIgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctaG9tZS1mYWNldHMtd3JhcHBlciddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICA8L243LWZhY2V0PlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLWNoYXJ0LXdyYXBwZXItbG9hZGluZ1wiICpuZ0lmPVwiIShsYi53aWRnZXRzWydhdy1idWJibGUtY2hhcnQnXS5kcy5vdXQkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICA8bjctY29udGVudC1wbGFjZWhvbGRlciBbZGF0YV09XCJ7XG4gICAgICAgICAgICAgICAgYmxvY2tzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXM6ICdmYWNldC1wbGFjZWhvbGRlci1pdGVtLTEnXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9XCI+PC9uNy1jb250ZW50LXBsYWNlaG9sZGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1jaGFydC13cmFwcGVyXCIgKm5nSWY9XCIhIShsYi53aWRnZXRzWydhdy1idWJibGUtY2hhcnQnXS5kcy5vdXQkIHwgYXN5bmMpXCJcbiAgICAgICAgICAgIFtzdHlsZS5vdmVyZmxvd109XCJsYi5kYXRhU291cmNlLmxvYWRpbmdCdWJibGVzID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj5cbiAgICAgICAgICAgIDxhdy1idWJibGUtY2hhcnQtd3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8YXctY2hhcnQtdGlwcHkgXG4gICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWNoYXJ0LXRpcHB5J10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctY2hhcnQtdGlwcHknXS5lbWl0XCI+XG4gICAgICAgICAgICAgICAgPC9hdy1jaGFydC10aXBweT5cbiAgICAgICAgICAgICAgICA8bjctYnViYmxlLWNoYXJ0IFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWJ1YmJsZS1jaGFydCddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWJ1YmJsZS1jaGFydCddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICA8L243LWJ1YmJsZS1jaGFydD5cbiAgICAgICAgICAgIDwvYXctYnViYmxlLWNoYXJ0LXdyYXBwZXI+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gTGlua2VkIG9iamVjdHMgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIobGIud2lkZ2V0c1snYXctYnViYmxlLWNoYXJ0J10uZHMub3V0JCB8IGFzeW5jKT8uc2VsZWN0ZWQubGVuZ3RoID4gMDtcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0c1wiIGlkPVwiaG9tZS1idWJibGUtcmVzdWx0c1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLm51bU9mSXRlbXNTdHJcIiBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLXRpdGxlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtdGl0bGVcIj48c3Ryb25nIGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtdGl0bGUtY291bnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGxiLmRhdGFTb3VyY2UubnVtT2ZJdGVtc1N0ciB9fTwvc3Ryb25nPiA8c3Bhbj4gUmlzdWx0YXRpPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2gxPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtdGFncy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS10YWdzLXRpdGxlXCI+Q29sbGVnYXRpIGEgPC9oMz5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgd2lkZ2V0RGF0YSBvZiBsYi53aWRnZXRzWydhdy1ob21lLWl0ZW0tdGFncy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG43LXRhZyBbZGF0YV09XCJ3aWRnZXREYXRhXCIgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctaG9tZS1pdGVtLXRhZ3Mtd3JhcHBlciddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbjctdGFnPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtbGlzdC13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0cy1saXN0LWxvYWRpbmdcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UucmVzdWx0c0xpc3RJc0xvYWRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuNy1jb250ZW50LXBsYWNlaG9sZGVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpIG9mIFsxLCAyLCAzLCA0LCA1XVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3M6IFt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzOiAnc2VhcmNoLXJlc3VsdC1wbGFjZWhvbGRlci10aXRsZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NlczogJ3NlYXJjaC1yZXN1bHQtcGxhY2Vob2xkZXItbWV0YWRhdGEnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCI+PC9uNy1jb250ZW50LXBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFsYi5kYXRhU291cmNlLnJlc3VsdHNMaXN0SXNMb2FkaW5nXCIgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0cy1saXN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIididWJibGUtcmVzdWx0cy1saXN0J1wiIChzY3JvbGwpPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRPdXRlcignc2Nyb2xsJywgJGV2ZW50LnRhcmdldClcIj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLWZhbGxiYWNrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LnJlc3VsdC5sZW5ndGggPCAxO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtZmFsbGJhY2stdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5mYWxsYmFjayB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwibjctYnRuIGF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLXJlc2V0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImxiLmV2ZW50SGFuZGxlci5lbWl0SW5uZXIoJ2NsZWFyc2VsZWN0aW9uJylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVzZXR0YSBsYSByaWNlcmNhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1saXN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcHJldmlldyBvZiAobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5yZXN1bHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bjctc21hcnQtYnJlYWRjcnVtYnMgW2RhdGFdPVwicHJldmlldy5icmVhZGNydW1ic1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uNy1zbWFydC1icmVhZGNydW1icz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuNy1pdGVtLXByZXZpZXcgW2RhdGFdPVwicHJldmlld1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWxpbmtlZC1vYmplY3RzJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uNy1pdGVtLXByZXZpZXc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCB3aWRnZXREYXRhIG9mIChsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LnJlc3VsdDtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bjctaXRlbS1wcmV2aWV3IFtkYXRhXT1cIndpZGdldERhdGFcIiBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L243LWl0ZW0tcHJldmlldz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiAtLT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LmlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0cy1saXN0LWxvYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bjctbG9hZGVyIFtkYXRhXT1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LmxvYWRlckRhdGFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uNy1sb2FkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyAnaXMtdmlzaWJsZScgOiBsYi5kYXRhU291cmNlLmhhc1Njcm9sbEJhY2tncm91bmQgfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLWxpc3Qtd3JhcHBlci13aXRoLXNjcm9sbFwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwhLS0gYXctbGlua2VkLW9iamVjdHNfX2FjdGlvbnMgLS0+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LnJlc3VsdC5sZW5ndGggPiAwICYmICFsYi5kYXRhU291cmNlLnJlc3VsdHNMaXN0SXNMb2FkaW5nXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5hY3Rpb25zIGFzIGFjdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLWxpc3QtYWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRJbm5lcignYnViYmxlcmVzdWx0c3ZpZXdhbGxjbGljaycpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm43LWJ0biBuNy1idG4tbGlnaHQgbjctYnRuLWwgYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtbGlzdC12aWV3LWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7YWN0aW9uWzBdLmxhYmVsfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gT3V0ZXIgbGlua3MgLS0+XG4gICAgPGRpdiAqbmdJZj1cImxiLmRhdGFTb3VyY2Uub3V0ZXJMaW5rcyAmJiBsYi5kYXRhU291cmNlLm91dGVyTGlua3MubGVuZ3RoID4gMFwiIGNsYXNzPVwiYXctaG9tZV9fb3V0ZXItbGlua3NcIj5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJhdy1ob21lX19vdXRlci1saW5rcy13cmFwcGVyIG43LXNpZGUtYXV0by1wYWRkaW5nXCI+XG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJhdy1ob21lX19vdXRlci1saW5rcy10aXRsZVwiICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5vdXRlckxpbmtzVGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7eyBsYi5kYXRhU291cmNlLm91dGVyTGlua3NUaXRsZSB9fVxuICAgICAgICAgICAgPC9oMj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwiYXctaG9tZV9fb3V0ZXItbGlua3MtZGVzY3JpcHRpb25cIiAqbmdJZj1cImxiLmRhdGFTb3VyY2Uub3V0ZXJMaW5rc0Rlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgbGIuZGF0YVNvdXJjZS5vdXRlckxpbmtzRGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19vdXRlci1saW5rcy1pdGVtc1wiPlxuICAgICAgICAgICAgICAgIDwhLS0gSXRlbSBwcmV2aWV3IC0tPlxuICAgICAgICAgICAgICAgIDxuNy1pdGVtLXByZXZpZXcgKm5nRm9yPVwibGV0IG91dGVyTGluayBvZiBsYi5kYXRhU291cmNlLm91dGVyTGlua3NcIiBbZGF0YV09XCJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi5ldmVudEhhbmRsZXIub3V0ZXJMaW5rQ2xpY2suYmluZChsYi5ldmVudEhhbmRsZXIpXCI+XG4gICAgICAgICAgICAgICAgPC9uNy1pdGVtLXByZXZpZXc+XG4gICAgICAgICAgICAgICAgPCEtLSBFTkQgLy8gSXRlbSBwcmV2aWV3IC0tPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIEVORCAvLyBPdXRlciBsaW5rcyAtLT5cblxuICAgIDwhLS0gSGVybyBzZWN0aW9uIGF0IHRoZSBib3R0b20gb2YgdGhlIHBhZ2UgLS0+XG4gICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2JvdHRvbS1oZXJvXCI+XG4gICAgICAgIDxuNy1oZXJvIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWhvbWUtaGVyby1wYXRyaW1vbmlvJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWhvbWUtaGVyby1wYXRyaW1vbmlvJ10uZW1pdFwiPlxuICAgICAgICA8L243LWhlcm8+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIEFkYXZhbmNlZCBhdXRvY29tcGxldGUgcG9wb3ZlciAgLS0+XG4gICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2FkdmFuY2VkLWF1dG9jb21wbGV0ZVwiIGlkPVwiYXctaG9tZS1hZHZhbmNlZC1hdXRvY29tcGxldGUtcG9wb3ZlclwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2FkdmFuY2VkLWF1dG9jb21wbGV0ZS1sb2FkZXJcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaG9tZUF1dG9jb21wbGV0ZUlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgPG43LWxvYWRlciBbZGF0YV09XCJ7fVwiPjwvbjctbG9hZGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG43LWFkdmFuY2VkLWF1dG9jb21wbGV0ZSAqbmdJZj1cIiFsYi5kYXRhU291cmNlLmhvbWVBdXRvY29tcGxldGVJc0xvYWRpbmdcIlxuICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctaG9tZS1hdXRvY29tcGxldGUnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctaG9tZS1hdXRvY29tcGxldGUnXS5lbWl0XCI+XG4gICAgICAgIDwvbjctYWR2YW5jZWQtYXV0b2NvbXBsZXRlPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBTaW1wbGUgYXV0b2NvbXBsZXRlIHBvcG92ZXIuIERPIE5PVCBDSEFOR0UgcGFyZW50IGRpdiBjbGFzcyEgLS0+XG4gICAgPCEtLSBDcmVhdGluZyBvbmUgdGVtcGxhdGUgZm9yIGVhY2ggZmFjZXQgLS0+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgd2lkZ2V0RGF0YSBvZiBsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jO1wiXG4gICAgICAgIGNsYXNzPVwiYXctaG9tZV9fc2ltcGxlLWF1dG9jb21wbGV0ZSBhdy1zaW1wbGUtYXV0b2NvbXBsZXRlX190ZW1wbGF0ZVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX3NpbXBsZS1hdXRvY29tcGxldGUtY29udGVudCBhdy1zaW1wbGUtYXV0b2NvbXBsZXRlX190aXBweS13cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fc2ltcGxlLWF1dG9jb21wbGV0ZS1sb2FkZXIgYXctc2ltcGxlLWF1dG9jb21wbGV0ZV9fdGlwcHktd3JhcHBlci1sb2FkZXJcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiKGxiLndpZGdldHNbJ2F3LWF1dG9jb21wbGV0ZS13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jKT8ubG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgIDxuNy1sb2FkZXIgW2RhdGFdPVwie31cIj48L243LWxvYWRlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPG43LXNpbXBsZS1hdXRvY29tcGxldGUgKm5nSWY9XCIhKGxiLndpZGdldHNbJ2F3LWF1dG9jb21wbGV0ZS13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jKT8ubG9hZGluZ1wiXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctYXV0b2NvbXBsZXRlLXdyYXBwZXInXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWF1dG9jb21wbGV0ZS13cmFwcGVyJ10uZW1pdFwiPlxuICAgICAgICAgICAgPC9uNy1zaW1wbGUtYXV0b2NvbXBsZXRlPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS1sYXlvdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1hcmlhbm5hL3NyYy9saWIvbGF5b3V0cy9ob21lLWxheW91dC9ob21lLWxheW91dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL2hvbWUtbGF5b3V0L2hvbWUtbGF5b3V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxLQUFLLE1BQU0sVUFBVSxDQUFDO0FBQzdCLE9BQU8sRUFDTCxjQUFjLEVBS2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLElBQUksTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7OztBQU1wRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsY0FBYztJQUN2RCxZQUNFLG9CQUFpRCxFQUN6QyxNQUFjLEVBQ2QsYUFBbUMsRUFDbkMsYUFBbUMsRUFDbkMsU0FBMkI7UUFFbkMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBTHhELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBR3JDLENBQUM7SUFFUyxXQUFXO1FBQ25CLE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUU7WUFDbEMsS0FBSztTQUNOLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDOzttSEE1QlUscUJBQXFCO3VHQUFyQixxQkFBcUIsNkVDaEJsQyxtOFZBb01BOzRGRHBMYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB0aXBweSBmcm9tICd0aXBweS5qcyc7XG5pbXBvcnQge1xuICBBYnN0cmFjdExheW91dCxcbiAgQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gIExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTWFpblN0YXRlU2VydmljZSxcbiAgQ29tbXVuaWNhdGlvblNlcnZpY2Vcbn0gZnJvbSAnQG5ldDcvYm9pbGVycGxhdGUtY29tbW9uJztcbmltcG9ydCB7IEF3SG9tZUxheW91dENvbmZpZyBhcyBjb25maWcgfSBmcm9tICcuL2hvbWUtbGF5b3V0LmNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F3LWhvbWUtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hvbWUtbGF5b3V0Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBBd0hvbWVMYXlvdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExheW91dCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoXG4gICAgbGF5b3V0c0NvbmZpZ3VyYXRpb246IExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb21tdW5pY2F0aW9uOiBDb21tdW5pY2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1haW5TdGF0ZTogTWFpblN0YXRlU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIobGF5b3V0c0NvbmZpZ3VyYXRpb24uZ2V0KCdBd0hvbWVMYXlvdXRDb25maWcnKSB8fCBjb25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGluaXRQYXlsb2FkKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjb25maWd1cmF0aW9uOiB0aGlzLmNvbmZpZ3VyYXRpb24sXG4gICAgICBtYWluU3RhdGU6IHRoaXMubWFpblN0YXRlLFxuICAgICAgcm91dGVyOiB0aGlzLnJvdXRlcixcbiAgICAgIGNvbW11bmljYXRpb246IHRoaXMuY29tbXVuaWNhdGlvbixcbiAgICAgIG9wdGlvbnM6IHRoaXMuY29uZmlnLm9wdGlvbnMgfHwge30sXG4gICAgICB0aXBweSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5vbkluaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25EZXN0cm95KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhdy1ob21lXCIgKm5nSWY9XCJsYi5kYXRhU291cmNlXCI+XG4gICAgPCEtLSBDYXJvdXNlbCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fY2Fyb3VzZWxcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuY2Fyb3VzZWxFbmFibGVkXCI+XG4gICAgICAgIDxuNy1jYXJvdXNlbCBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1jYXJvdXNlbCddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICA8L243LWNhcm91c2VsPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBIZXJvIHNlY3Rpb24gYXQgdGhlIHRvcCBvZiB0aGUgcGFnZSAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fdG9wLWhlcm9cIj5cbiAgICAgICAgPG43LWhlcm8gW2RhdGFdPVwibGIud2lkZ2V0c1snYXctaGVybyddLmRzLm91dCQgfCBhc3luY1wiIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWhlcm8nXS5lbWl0XCI+XG4gICAgICAgIDwvbjctaGVybz5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gQnViYmxlIGNoYXJ0IC0tPlxuICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtd3JhcHBlciBuNy1zaWRlLWF1dG8tcGFkZGluZ1wiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hhcy1yZXN1bHRzJyA6IGxiLmRhdGFTb3VyY2Uuc2VsZWN0ZWRCdWJibGVzLmxlbmd0aCA+IDAgfVwiICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5idWJibGVzRW5hYmxlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fZmFjZXRzLXdyYXBwZXItbG9hZGluZ1wiICpuZ0lmPVwiIShsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jKVwiPlxuICAgICAgICAgICAgPG43LWNvbnRlbnQtcGxhY2Vob2xkZXIgKm5nRm9yPVwibGV0IGkgb2YgWzAsMSwyLDNdXCIgW2RhdGFdPVwie1xuICAgICAgICAgICAgICAgIGJsb2NrczogW3tcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NlczogJ2ZhY2V0LXBsYWNlaG9sZGVyLWhlYWRlcidcbiAgICAgICAgICAgICAgICB9LCB7XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXM6ICdmYWNldC1wbGFjZWhvbGRlci1pbnB1dCdcbiAgICAgICAgICAgICAgICB9XSBcbiAgICAgICAgICAgIH1cIj48L243LWNvbnRlbnQtcGxhY2Vob2xkZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fZmFjZXRzLXdyYXBwZXJcIiAqbmdJZj1cIiEhKGxiLndpZGdldHNbJ2F3LWhvbWUtZmFjZXRzLXdyYXBwZXInXS5kcy5vdXQkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF3LWhvbWVfX2ZhY2V0XCJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgd2lkZ2V0RGF0YSBvZiBsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jO1wiPlxuICAgICAgICAgICAgICAgIDxuNy1mYWNldC1oZWFkZXIgW2RhdGFdPVwid2lkZ2V0RGF0YS5oZWFkZXJcIiBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgIDwvbjctZmFjZXQtaGVhZGVyPlxuICAgICAgICAgICAgICAgIDxuNy1mYWNldCBbZGF0YV09XCJ3aWRnZXREYXRhLmlucHV0XCIgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctaG9tZS1mYWNldHMtd3JhcHBlciddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICA8L243LWZhY2V0PlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLWNoYXJ0LXdyYXBwZXItbG9hZGluZ1wiICpuZ0lmPVwiIShsYi53aWRnZXRzWydhdy1idWJibGUtY2hhcnQnXS5kcy5vdXQkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICA8bjctY29udGVudC1wbGFjZWhvbGRlciBbZGF0YV09XCJ7XG4gICAgICAgICAgICAgICAgYmxvY2tzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXM6ICdmYWNldC1wbGFjZWhvbGRlci1pdGVtLTEnXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9XCI+PC9uNy1jb250ZW50LXBsYWNlaG9sZGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1jaGFydC13cmFwcGVyXCIgKm5nSWY9XCIhIShsYi53aWRnZXRzWydhdy1idWJibGUtY2hhcnQnXS5kcy5vdXQkIHwgYXN5bmMpXCJcbiAgICAgICAgICAgIFtzdHlsZS5vdmVyZmxvd109XCJsYi5kYXRhU291cmNlLmxvYWRpbmdCdWJibGVzID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj5cbiAgICAgICAgICAgIDxhdy1idWJibGUtY2hhcnQtd3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8YXctY2hhcnQtdGlwcHkgXG4gICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWNoYXJ0LXRpcHB5J10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctY2hhcnQtdGlwcHknXS5lbWl0XCI+XG4gICAgICAgICAgICAgICAgPC9hdy1jaGFydC10aXBweT5cbiAgICAgICAgICAgICAgICA8bjctYnViYmxlLWNoYXJ0IFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWJ1YmJsZS1jaGFydCddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWJ1YmJsZS1jaGFydCddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICA8L243LWJ1YmJsZS1jaGFydD5cbiAgICAgICAgICAgIDwvYXctYnViYmxlLWNoYXJ0LXdyYXBwZXI+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gTGlua2VkIG9iamVjdHMgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIobGIud2lkZ2V0c1snYXctYnViYmxlLWNoYXJ0J10uZHMub3V0JCB8IGFzeW5jKT8uc2VsZWN0ZWQubGVuZ3RoID4gMDtcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0c1wiIGlkPVwiaG9tZS1idWJibGUtcmVzdWx0c1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLm51bU9mSXRlbXNTdHJcIiBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLXRpdGxlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtdGl0bGVcIj48c3Ryb25nIGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtdGl0bGUtY291bnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGxiLmRhdGFTb3VyY2UubnVtT2ZJdGVtc1N0ciB9fTwvc3Ryb25nPiA8c3Bhbj4gUmlzdWx0YXRpPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2gxPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtdGFncy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS10YWdzLXRpdGxlXCI+Q29sbGVnYXRpIGEgPC9oMz5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgd2lkZ2V0RGF0YSBvZiBsYi53aWRnZXRzWydhdy1ob21lLWl0ZW0tdGFncy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG43LXRhZyBbZGF0YV09XCJ3aWRnZXREYXRhXCIgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctaG9tZS1pdGVtLXRhZ3Mtd3JhcHBlciddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbjctdGFnPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtbGlzdC13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0cy1saXN0LWxvYWRpbmdcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UucmVzdWx0c0xpc3RJc0xvYWRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuNy1jb250ZW50LXBsYWNlaG9sZGVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpIG9mIFsxLCAyLCAzLCA0LCA1XVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3M6IFt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzOiAnc2VhcmNoLXJlc3VsdC1wbGFjZWhvbGRlci10aXRsZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NlczogJ3NlYXJjaC1yZXN1bHQtcGxhY2Vob2xkZXItbWV0YWRhdGEnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCI+PC9uNy1jb250ZW50LXBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFsYi5kYXRhU291cmNlLnJlc3VsdHNMaXN0SXNMb2FkaW5nXCIgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0cy1saXN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIididWJibGUtcmVzdWx0cy1saXN0J1wiIChzY3JvbGwpPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRPdXRlcignc2Nyb2xsJywgJGV2ZW50LnRhcmdldClcIj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLWZhbGxiYWNrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LnJlc3VsdC5sZW5ndGggPCAxO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtZmFsbGJhY2stdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5mYWxsYmFjayB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwibjctYnRuIGF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLXJlc2V0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImxiLmV2ZW50SGFuZGxlci5lbWl0SW5uZXIoJ2NsZWFyc2VsZWN0aW9uJylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVzZXR0YSBsYSByaWNlcmNhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1saXN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcHJldmlldyBvZiAobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5yZXN1bHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bjctc21hcnQtYnJlYWRjcnVtYnMgW2RhdGFdPVwicHJldmlldy5icmVhZGNydW1ic1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uNy1zbWFydC1icmVhZGNydW1icz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuNy1pdGVtLXByZXZpZXcgW2RhdGFdPVwicHJldmlld1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWxpbmtlZC1vYmplY3RzJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uNy1pdGVtLXByZXZpZXc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCB3aWRnZXREYXRhIG9mIChsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LnJlc3VsdDtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bjctaXRlbS1wcmV2aWV3IFtkYXRhXT1cIndpZGdldERhdGFcIiBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L243LWl0ZW0tcHJldmlldz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiAtLT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LmlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19idWJibGUtcmVzdWx0cy1saXN0LWxvYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bjctbG9hZGVyIFtkYXRhXT1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LmxvYWRlckRhdGFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uNy1sb2FkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyAnaXMtdmlzaWJsZScgOiBsYi5kYXRhU291cmNlLmhhc1Njcm9sbEJhY2tncm91bmQgfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLWxpc3Qtd3JhcHBlci13aXRoLXNjcm9sbFwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwhLS0gYXctbGlua2VkLW9iamVjdHNfX2FjdGlvbnMgLS0+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIihsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmRzLm91dCQgfCBhc3luYyk/LnJlc3VsdC5sZW5ndGggPiAwICYmICFsYi5kYXRhU291cmNlLnJlc3VsdHNMaXN0SXNMb2FkaW5nXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5hY3Rpb25zIGFzIGFjdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF3LWhvbWVfX2J1YmJsZS1yZXN1bHRzLWxpc3QtYWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRJbm5lcignYnViYmxlcmVzdWx0c3ZpZXdhbGxjbGljaycpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm43LWJ0biBuNy1idG4tbGlnaHQgbjctYnRuLWwgYXctaG9tZV9fYnViYmxlLXJlc3VsdHMtbGlzdC12aWV3LWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7YWN0aW9uWzBdLmxhYmVsfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gT3V0ZXIgbGlua3MgLS0+XG4gICAgPGRpdiAqbmdJZj1cImxiLmRhdGFTb3VyY2Uub3V0ZXJMaW5rcyAmJiBsYi5kYXRhU291cmNlLm91dGVyTGlua3MubGVuZ3RoID4gMFwiIGNsYXNzPVwiYXctaG9tZV9fb3V0ZXItbGlua3NcIj5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJhdy1ob21lX19vdXRlci1saW5rcy13cmFwcGVyIG43LXNpZGUtYXV0by1wYWRkaW5nXCI+XG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJhdy1ob21lX19vdXRlci1saW5rcy10aXRsZVwiICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5vdXRlckxpbmtzVGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7eyBsYi5kYXRhU291cmNlLm91dGVyTGlua3NUaXRsZSB9fVxuICAgICAgICAgICAgPC9oMj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwiYXctaG9tZV9fb3V0ZXItbGlua3MtZGVzY3JpcHRpb25cIiAqbmdJZj1cImxiLmRhdGFTb3VyY2Uub3V0ZXJMaW5rc0Rlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgbGIuZGF0YVNvdXJjZS5vdXRlckxpbmtzRGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1ob21lX19vdXRlci1saW5rcy1pdGVtc1wiPlxuICAgICAgICAgICAgICAgIDwhLS0gSXRlbSBwcmV2aWV3IC0tPlxuICAgICAgICAgICAgICAgIDxuNy1pdGVtLXByZXZpZXcgKm5nRm9yPVwibGV0IG91dGVyTGluayBvZiBsYi5kYXRhU291cmNlLm91dGVyTGlua3NcIiBbZGF0YV09XCJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi5ldmVudEhhbmRsZXIub3V0ZXJMaW5rQ2xpY2suYmluZChsYi5ldmVudEhhbmRsZXIpXCI+XG4gICAgICAgICAgICAgICAgPC9uNy1pdGVtLXByZXZpZXc+XG4gICAgICAgICAgICAgICAgPCEtLSBFTkQgLy8gSXRlbSBwcmV2aWV3IC0tPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIEVORCAvLyBPdXRlciBsaW5rcyAtLT5cblxuICAgIDwhLS0gSGVybyBzZWN0aW9uIGF0IHRoZSBib3R0b20gb2YgdGhlIHBhZ2UgLS0+XG4gICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2JvdHRvbS1oZXJvXCI+XG4gICAgICAgIDxuNy1oZXJvIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWhvbWUtaGVyby1wYXRyaW1vbmlvJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWhvbWUtaGVyby1wYXRyaW1vbmlvJ10uZW1pdFwiPlxuICAgICAgICA8L243LWhlcm8+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIEFkYXZhbmNlZCBhdXRvY29tcGxldGUgcG9wb3ZlciAgLS0+XG4gICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2FkdmFuY2VkLWF1dG9jb21wbGV0ZVwiIGlkPVwiYXctaG9tZS1hZHZhbmNlZC1hdXRvY29tcGxldGUtcG9wb3ZlclwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX2FkdmFuY2VkLWF1dG9jb21wbGV0ZS1sb2FkZXJcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaG9tZUF1dG9jb21wbGV0ZUlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgPG43LWxvYWRlciBbZGF0YV09XCJ7fVwiPjwvbjctbG9hZGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG43LWFkdmFuY2VkLWF1dG9jb21wbGV0ZSAqbmdJZj1cIiFsYi5kYXRhU291cmNlLmhvbWVBdXRvY29tcGxldGVJc0xvYWRpbmdcIlxuICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctaG9tZS1hdXRvY29tcGxldGUnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctaG9tZS1hdXRvY29tcGxldGUnXS5lbWl0XCI+XG4gICAgICAgIDwvbjctYWR2YW5jZWQtYXV0b2NvbXBsZXRlPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBTaW1wbGUgYXV0b2NvbXBsZXRlIHBvcG92ZXIuIERPIE5PVCBDSEFOR0UgcGFyZW50IGRpdiBjbGFzcyEgLS0+XG4gICAgPCEtLSBDcmVhdGluZyBvbmUgdGVtcGxhdGUgZm9yIGVhY2ggZmFjZXQgLS0+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgd2lkZ2V0RGF0YSBvZiBsYi53aWRnZXRzWydhdy1ob21lLWZhY2V0cy13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jO1wiXG4gICAgICAgIGNsYXNzPVwiYXctaG9tZV9fc2ltcGxlLWF1dG9jb21wbGV0ZSBhdy1zaW1wbGUtYXV0b2NvbXBsZXRlX190ZW1wbGF0ZVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LWhvbWVfX3NpbXBsZS1hdXRvY29tcGxldGUtY29udGVudCBhdy1zaW1wbGUtYXV0b2NvbXBsZXRlX190aXBweS13cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaG9tZV9fc2ltcGxlLWF1dG9jb21wbGV0ZS1sb2FkZXIgYXctc2ltcGxlLWF1dG9jb21wbGV0ZV9fdGlwcHktd3JhcHBlci1sb2FkZXJcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiKGxiLndpZGdldHNbJ2F3LWF1dG9jb21wbGV0ZS13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jKT8ubG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgIDxuNy1sb2FkZXIgW2RhdGFdPVwie31cIj48L243LWxvYWRlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPG43LXNpbXBsZS1hdXRvY29tcGxldGUgKm5nSWY9XCIhKGxiLndpZGdldHNbJ2F3LWF1dG9jb21wbGV0ZS13cmFwcGVyJ10uZHMub3V0JCB8IGFzeW5jKT8ubG9hZGluZ1wiXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctYXV0b2NvbXBsZXRlLXdyYXBwZXInXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWF1dG9jb21wbGV0ZS13cmFwcGVyJ10uZW1pdFwiPlxuICAgICAgICAgICAgPC9uNy1zaW1wbGUtYXV0b2NvbXBsZXRlPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -4,9 +4,9 @@ import { AwMapLayoutConfig as config } from './map-layout.config';
|
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "@net7/boilerplate-common";
|
|
6
6
|
import * as i2 from "@angular/platform-browser";
|
|
7
|
-
import * as i3 from "@
|
|
8
|
-
import * as i4 from "
|
|
9
|
-
import * as i5 from "
|
|
7
|
+
import * as i3 from "@angular/common";
|
|
8
|
+
import * as i4 from "@net7/components";
|
|
9
|
+
import * as i5 from "../../components/smart-breadcrumbs/smart-breadcrumbs";
|
|
10
10
|
export class AwMapLayoutComponent extends AbstractLayout {
|
|
11
11
|
constructor(configuration, layoutsConfiguration, communication, mainState, titleService) {
|
|
12
12
|
super(layoutsConfiguration.get('AwMapLayoutConfig') || config);
|
|
@@ -37,10 +37,10 @@ export class AwMapLayoutComponent extends AbstractLayout {
|
|
|
37
37
|
this.onDestroy();
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
AwMapLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
41
|
-
AwMapLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
40
|
+
AwMapLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwMapLayoutComponent, deps: [{ token: i1.ConfigurationService }, { token: i1.LayoutsConfigurationService }, { token: i1.CommunicationService }, { token: i1.MainStateService }, { token: i2.Title }], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
+
AwMapLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: AwMapLayoutComponent, selector: "aw-map-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-multimedia\" id=\"map-layout\" *ngIf=\"lb.dataSource\">\n <n7-inner-title [data]=\"{\n title: {\n main: {\n text: 'I luoghi dell\\'archivio'\n }\n }\n }\">\n </n7-inner-title>\n\n <!-- Map -->\n <div class=\"aw-multimedia__map\">\n <n7-map [data]=\"lb.widgets['aw-map'].ds.out$ | async\"></n7-map>\n </div>\n <!-- END // Map -->\n\n <!-- RESULTS -->\n <div class=\"aw-multimedia__results\">\n <div class=\"aw-multimedia__loader\" *ngIf=\"(lb.dataSource.state$ | async) === 'LOADING'\">\n <ng-container>\n <n7-loader></n7-loader>\n </ng-container>\n </div>\n\n <div class=\"aw-multimedia__empty\" *ngIf=\"(lb.dataSource.state$ | async) === 'EMPTY'\">\n <ng-container>\n <p class=\"aw-multimedia__empty-text\">Clicca su un luogo della mappa per vedere tutti gli oggetti collegati.</p>\n </ng-container>\n </div>\n \n <ng-container *ngIf=\"(lb.dataSource.state$ | async) === 'SUCCESS'\">\n <div class=\"aw-multimedia__results-title\">\n <n7-inner-title \n [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div class=\"aw-multimedia__results-wrapper\">\n <div>\n <div class=\"aw-item-preview-wrapper\" *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <n7-smart-breadcrumbs \n [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\n <n7-item-preview \n [data]=\"preview\" \n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div>\n </div>\n <n7-smart-pagination *ngIf=\"lb.dataSource.total > 0\"\n [data]=\"lb.widgets['n7-smart-pagination'].ds.out$ | async\"\n [emit]=\"lb.widgets['n7-smart-pagination'].emit\">\n </n7-smart-pagination>\n </div>\n </ng-container>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i4.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i4.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4.MapComponent, selector: "n7-map", inputs: ["data", "emit"] }, { kind: "component", type: i1.SmartPaginationComponent, selector: "n7-smart-pagination", inputs: ["data", "emit"] }, { kind: "component", type: i5.SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] });
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwMapLayoutComponent, decorators: [{
|
|
43
43
|
type: Component,
|
|
44
44
|
args: [{ selector: 'aw-map-layout', template: "<div class=\"aw-multimedia\" id=\"map-layout\" *ngIf=\"lb.dataSource\">\n <n7-inner-title [data]=\"{\n title: {\n main: {\n text: 'I luoghi dell\\'archivio'\n }\n }\n }\">\n </n7-inner-title>\n\n <!-- Map -->\n <div class=\"aw-multimedia__map\">\n <n7-map [data]=\"lb.widgets['aw-map'].ds.out$ | async\"></n7-map>\n </div>\n <!-- END // Map -->\n\n <!-- RESULTS -->\n <div class=\"aw-multimedia__results\">\n <div class=\"aw-multimedia__loader\" *ngIf=\"(lb.dataSource.state$ | async) === 'LOADING'\">\n <ng-container>\n <n7-loader></n7-loader>\n </ng-container>\n </div>\n\n <div class=\"aw-multimedia__empty\" *ngIf=\"(lb.dataSource.state$ | async) === 'EMPTY'\">\n <ng-container>\n <p class=\"aw-multimedia__empty-text\">Clicca su un luogo della mappa per vedere tutti gli oggetti collegati.</p>\n </ng-container>\n </div>\n \n <ng-container *ngIf=\"(lb.dataSource.state$ | async) === 'SUCCESS'\">\n <div class=\"aw-multimedia__results-title\">\n <n7-inner-title \n [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div class=\"aw-multimedia__results-wrapper\">\n <div>\n <div class=\"aw-item-preview-wrapper\" *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <n7-smart-breadcrumbs \n [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\n <n7-item-preview \n [data]=\"preview\" \n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div>\n </div>\n <n7-smart-pagination *ngIf=\"lb.dataSource.total > 0\"\n [data]=\"lb.widgets['n7-smart-pagination'].ds.out$ | async\"\n [emit]=\"lb.widgets['n7-smart-pagination'].emit\">\n </n7-smart-pagination>\n </div>\n </ng-container>\n </div>\n</div>" }]
|
|
45
45
|
}], ctorParameters: function () { return [{ type: i1.ConfigurationService }, { type: i1.LayoutsConfigurationService }, { type: i1.CommunicationService }, { type: i1.MainStateService }, { type: i2.Title }]; } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLWxheW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL21hcC1sYXlvdXQvbWFwLWxheW91dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL21hcC1sYXlvdXQvbWFwLWxheW91dC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sRUFDTCxjQUFjLEdBS2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsaUJBQWlCLElBQUksTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFNbEUsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGNBQWM7SUFDdEQsWUFDVSxhQUFtQyxFQUNuQyxvQkFBaUQsRUFDakQsYUFBbUMsRUFDbkMsU0FBMkIsRUFDM0IsWUFBbUI7UUFFM0IsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBTnZELGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQTZCO1FBQ2pELGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBTztJQUc3QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLFdBQVc7UUFDbkIsT0FBTztZQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7a0hBaENVLG9CQUFvQjtzR0FBcEIsb0JBQW9CLDRFQ2ZqQyxveEVBdURNOzRGRHhDTyxvQkFBb0I7a0JBSmhDLFNBQVM7K0JBQ0UsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge1xuICBBYnN0cmFjdExheW91dCxcbiAgQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gIExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTWFpblN0YXRlU2VydmljZSxcbiAgQ29tbXVuaWNhdGlvblNlcnZpY2UsXG59IGZyb20gJ0BuZXQ3L2JvaWxlcnBsYXRlLWNvbW1vbic7XG5pbXBvcnQgeyBBd01hcExheW91dENvbmZpZyBhcyBjb25maWcgfSBmcm9tICcuL21hcC1sYXlvdXQuY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXctbWFwLWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXAtbGF5b3V0Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBBd01hcExheW91dENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0TGF5b3V0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbGF5b3V0c0NvbmZpZ3VyYXRpb246IExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGNvbW11bmljYXRpb246IENvbW11bmljYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbWFpblN0YXRlOiBNYWluU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGl0bGVTZXJ2aWNlOiBUaXRsZSxcbiAgKSB7XG4gICAgc3VwZXIobGF5b3V0c0NvbmZpZ3VyYXRpb24uZ2V0KCdBd01hcExheW91dENvbmZpZycpIHx8IGNvbmZpZyk7XG4gIH1cblxuICAvKlxuICAgIE9wdGlvbmFsIHZhcmlhYmxlcyB0aGF0IGNhbiBiZSBhY2Nlc3NlZCBmcm9tIHRoZSBsYXlvdXQncyBsb2dpYy5cbiAgICBJZiByZW1vdmVkLCB0aGV5IG11c3QgYWxzbyBiZSByZW1vdmVkIGZyb20gdGhlIGxheW91dCdzIERhdGFTb3VyY2UgZmlsZSxcbiAgICBhbmQgZnJvbSB0aGlzIGZpbGUgaW1wb3J0cy5cbiAgICovXG4gIHByb3RlY3RlZCBpbml0UGF5bG9hZCgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY29uZmlndXJhdGlvbjogdGhpcy5jb25maWd1cmF0aW9uLFxuICAgICAgbWFpblN0YXRlOiB0aGlzLm1haW5TdGF0ZSxcbiAgICAgIHRpdGxlU2VydmljZTogdGhpcy50aXRsZVNlcnZpY2UsXG4gICAgICBjb21tdW5pY2F0aW9uOiB0aGlzLmNvbW11bmljYXRpb24sXG4gICAgICBvcHRpb25zOiB0aGlzLmNvbmZpZy5vcHRpb25zIHx8IHt9LFxuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm9uSW5pdCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5vbkRlc3Ryb3koKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF3LW11bHRpbWVkaWFcIiBpZD1cIm1hcC1sYXlvdXRcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2VcIj5cbiAgICA8bjctaW5uZXItdGl0bGUgW2RhdGFdPVwie1xuICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgbWFpbjoge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnSSBsdW9naGkgZGVsbFxcJ2FyY2hpdmlvJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVwiPlxuICAgIDwvbjctaW5uZXItdGl0bGU+XG5cbiAgICA8IS0tIE1hcCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiYXctbXVsdGltZWRpYV9fbWFwXCI+XG4gICAgICAgIDxuNy1tYXAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctbWFwJ10uZHMub3V0JCB8IGFzeW5jXCI+PC9uNy1tYXA+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBFTkQgLy8gTWFwIC0tPlxuXG4gICAgPCEtLSBSRVNVTFRTIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJhdy1tdWx0aW1lZGlhX19yZXN1bHRzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1tdWx0aW1lZGlhX19sb2FkZXJcIiAqbmdJZj1cIihsYi5kYXRhU291cmNlLnN0YXRlJCB8IGFzeW5jKSA9PT0gJ0xPQURJTkcnXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxuNy1sb2FkZXI+PC9uNy1sb2FkZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LW11bHRpbWVkaWFfX2VtcHR5XCIgKm5nSWY9XCIobGIuZGF0YVNvdXJjZS5zdGF0ZSQgfCBhc3luYykgPT09ICdFTVBUWSdcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJhdy1tdWx0aW1lZGlhX19lbXB0eS10ZXh0XCI+Q2xpY2NhIHN1IHVuIGx1b2dvIGRlbGxhIG1hcHBhIHBlciB2ZWRlcmUgdHV0dGkgZ2xpIG9nZ2V0dGkgY29sbGVnYXRpLjwvcD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIobGIuZGF0YVNvdXJjZS5zdGF0ZSQgfCBhc3luYykgPT09ICdTVUNDRVNTJ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LW11bHRpbWVkaWFfX3Jlc3VsdHMtdGl0bGVcIj5cbiAgICAgICAgICAgICAgICA8bjctaW5uZXItdGl0bGUgXG4gICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbm5lci10aXRsZSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDwvbjctaW5uZXItdGl0bGU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1tdWx0aW1lZGlhX19yZXN1bHRzLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXdyYXBwZXJcIiAqbmdGb3I9XCJsZXQgcHJldmlldyBvZiAobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5wcmV2aWV3c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG43LXNtYXJ0LWJyZWFkY3J1bWJzIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cInByZXZpZXcuYnJlYWRjcnVtYnNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbjctc21hcnQtYnJlYWRjcnVtYnM+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bjctaXRlbS1wcmV2aWV3IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cInByZXZpZXdcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1saW5rZWQtb2JqZWN0cyddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8bjctc21hcnQtcGFnaW5hdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UudG90YWwgPiAwXCJcbiAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snbjctc21hcnQtcGFnaW5hdGlvbiddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ243LXNtYXJ0LXBhZ2luYXRpb24nXS5lbWl0XCI+XG4gICAgICAgICAgICAgICAgPC9uNy1zbWFydC1wYWdpbmF0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -5,13 +5,13 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
import * as i1 from "@angular/router";
|
|
6
6
|
import * as i2 from "@net7/boilerplate-common";
|
|
7
7
|
import * as i3 from "@angular/platform-browser";
|
|
8
|
-
import * as i4 from "
|
|
8
|
+
import * as i4 from "@angular/common";
|
|
9
9
|
import * as i5 from "@net7/components";
|
|
10
|
-
import * as i6 from "../../components/
|
|
11
|
-
import * as i7 from "../../components/scheda-
|
|
12
|
-
import * as i8 from "../../components/
|
|
10
|
+
import * as i6 from "../../components/pdf-viewer/pdf-viewer";
|
|
11
|
+
import * as i7 from "../../components/scheda-dropdown/scheda-dropdown";
|
|
12
|
+
import * as i8 from "../../components/smart-breadcrumbs/smart-breadcrumbs";
|
|
13
13
|
import * as i9 from "../../components/extended-tree/extended-tree";
|
|
14
|
-
import * as i10 from "
|
|
14
|
+
import * as i10 from "../../components/scheda-image-navigator/scheda-image-navigator";
|
|
15
15
|
export class AwSchedaLayoutComponent extends AbstractLayout {
|
|
16
16
|
constructor(router, route, configuration, layoutsConfiguration, mainState, titleService, communication) {
|
|
17
17
|
super(layoutsConfiguration.get('AwPatrimonioLayoutConfig') || config);
|
|
@@ -46,10 +46,10 @@ export class AwSchedaLayoutComponent extends AbstractLayout {
|
|
|
46
46
|
this.onDestroy();
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
-
AwSchedaLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
50
|
-
AwSchedaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AwSchedaLayoutComponent, selector: "aw-scheda-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-scheda\"\n id=\"scheda-layout\">\n <div class=\"aw-scheda__content n7-side-auto-padding sticky-parent\"\n [ngClass]=\"{ 'is-collapsed' : lb.dataSource.sidebarCollapsed }\">\n\n <ng-container *ngTemplateOutlet=\"tree\"></ng-container>\n\n <div class=\"aw-scheda__scheda-wrapper\"\n [hidden]=\"lb.dataSource.contentIsLoading\">\n\n <n7-smart-breadcrumbs *ngIf=\"lb.dataSource.hasBreadcrumb\"\n [data]=\"lb.widgets['aw-scheda-breadcrumbs'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-breadcrumbs'].emit\">\n </n7-smart-breadcrumbs>\n\n <div *ngIf=\"!lb.dataSource.hasBreadcrumb\"\n class=\"aw-scheda__fake-breadcrumbs\"\n (click)=\"lb.eventHandler.emitInner('togglesidebar', {})\">\n <p class=\"aw-scheda__fake-breadcrumbs-open\" \n *ngIf=\"lb.dataSource.sidebarCollapsed\">\n Consulta il patrimonio\n </p>\n </div>\n\n <div *ngIf=\"!lb.dataSource.currentId\"\n class=\"aw-scheda__intro-text\"\n [innerHTML]=\"lb.dataSource.emptyLabel\">\n </div>\n\n <div class=\"aw-scheda__title-wrapper\">\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__prev\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.prev?.href ? [titleNav.prev.href] : null\"\n [title]=\"titleNav.prev?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.prev?.href }\">\n <span class=\"n7-icon-angle-left\"></span>\n </a>\n </div>\n <div class=\"aw-scheda__title\">\n <div *ngIf=\"lb.dataSource.documentType as documentType\" class=\"aw-scheda__document-type\">\n <span *ngIf=\"documentType.icon\" class=\"aw-scheda__document-type-icon {{ documentType.icon }}\"></span>\n <span class=\"aw-scheda__document-type-label\">{{ documentType.label }}</span>\n </div>\n <n7-inner-title [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__next\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.next?.href ? [titleNav.next.href] : null\"\n [title]=\"titleNav.next?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.next?.href }\">\n <span class=\"n7-icon-angle-right\"></span>\n </a>\n </div>\n </div>\n\n <!-- Empty state -->\n <ng-container *ngIf=\"!lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n </ng-container>\n\n <!-- Content sections -->\n <ng-container *ngIf=\"lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n\n <!-- Extended tree -->\n <ng-container *ngTemplateOutlet=\"extendedtree\"></ng-container>\n\n </div>\n </div>\n</div>\n\n<ng-template #tree>\n <div class=\"aw-scheda__tree sticky-target\"\n [ngClass]=\"{ 'is-sticky': lb.dataSource.sidebarIsSticky }\">\n <n7-sidebar-header [data]=\"lb.widgets['aw-sidebar-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-sidebar-header'].emit\"></n7-sidebar-header>\n <div class=\"aw-scheda__tree-content-loading\"\n *ngIf=\"!(lb.widgets['aw-tree'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3]\"\n [data]=\"{\n blocks: [{\n classes: 'tree-placeholder-item'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-scheda__tree-content\"\n (click)=\"lb.eventHandler.emitOuter('treeposition', $event)\"\n [ngStyle]=\"{\n 'max-height': lb.dataSource.treeMaxHeight,\n 'overflow': 'auto'\n }\">\n <n7-tree [data]=\"lb.widgets['aw-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-tree'].emit\"\n *ngIf=\"!lb.dataSource.sidebarCollapsed\">\n </n7-tree>\n </div>\n </div>\n</ng-template>\n\n<ng-template #empty>\n <section class=\"aw-scheda__section aw-scheda__empty\"\n [innerHTML]=\"lb.dataSource.emptyStateString\">\n </section>\n</ng-template>\n\n<ng-template #content>\n <!-- Digital Object selection dropdown -->\n <section class=\"aw-scheda__digital-object-dropdown\"\n *ngIf=\"(\n lb.dataSource.hasDigitalObjects \n && lb.dataSource.digitalObjects.length > 1\n )\">\n <p class=\"aw-scheda__digital-object-dropdown-label\">\n Seleziona l'oggetto digitale da visualizzare:\n </p>\n <aw-scheda-dropdown \n [data]=\"lb.widgets['aw-scheda-dropdown'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-dropdown'].emit\">\n </aw-scheda-dropdown>\n </section>\n <!-- END // Digital Object selection dropdown -->\n\n <!-- Digital Objects: images, IIP, PDFs, external links -->\n <section *ngIf=\"lb.dataSource.currentDigitalObject as $do\" \n class=\"aw-scheda__media aw-scheda__{{ $do.type }}\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (IIIF) -->\n <ng-container *ngSwitchCase=\"'images-iiif'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (Simple: jpg, png) -->\n <ng-container *ngSwitchCase=\"'images-simple'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\"\n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n \n <!-- PDF -->\n <ng-container *ngSwitchCase=\"'pdf'\">\n <aw-pdf-viewer \n [data]=\"lb.widgets['aw-scheda-pdf'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-pdf'].emit\">\n </aw-pdf-viewer>\n </ng-container>\n \n <!-- EXTERNAL URL -->\n <ng-container *ngSwitchCase=\"'external'\">\n <div class=\"aw-scheda__external-url\">\n <a class=\"aw-scheda__external-url-link\" href=\"{{ $do.url }}\" target=\"_blank\">\n {{ $do.label || lb.dataSource.externalUrlText }}\n <span class=\"n7-icon-external-link\"></span>\n </a>\n </div>\n </ng-container>\n </ng-container>\n </section>\n <!-- END // Digital Objects -->\n\n <section *ngIf=\"lb.dataSource.contentParts.content\" class=\"aw-scheda__section aw-scheda__description\">\n <div *ngFor=\"let part of lb.dataSource.contentParts\">\n <div [innerHTML]=\"part.content\"></div>\n </div>\n </section>\n\n <!-- Metadata -->\n <section *ngIf=\"lb.dataSource.hasMetadata\" class=\"aw-scheda__section aw-scheda__metadata\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('metadata')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'metadata' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\"\n *ngIf=\"lb.dataSource.metadataSectionTitle\">\n {{lb.dataSource.metadataSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['metadata']\" \n class=\"aw-scheda__section-content-wrapper\">\n <n7-metadata-viewer [data]=\"lb.widgets['aw-scheda-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </div>\n </section>\n <!-- END // Metadata -->\n\n <!-- Related entities -->\n <section *ngIf=\"lb.dataSource.hasRelatedEntities\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('related-entities')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'related-entities' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.relatedEntitiesHeader}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['related-entities']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-related-entities'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-related-entities'].emit\">\n </n7-item-preview>\n <!-- Relation -->\n <div class=\"aw-item-preview-relation\"\n *ngIf=\"preview.relation?.value\">\n <p class=\"aw-item-preview-relation__description\">Tipo di relazione\n <!-- <span class=\"aw-item-preview-relation__key\">{{preview.relation.key}}</span>: -->\n <span class=\"aw-item-preview-relation__value\">{{preview.relation.value}}</span>\n </p>\n </div>\n </div>\n </ng-container>\n </div>\n </section>\n <!-- END // Related entities -->\n\n <!-- Similar Objects -->\n <section *ngIf=\"lb.dataSource.hasSimilarItems\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('similar-items')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'similar-items' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.similarItemsSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['similar-items']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div> \n </ng-container>\n </div>\n </section>\n <!-- END // Similar Objects -->\n</ng-template>\n\n<ng-template #collapse let-id>\n <div class=\"aw-scheda__collapse\">\n <button class=\"n7-btn n7-btn-light\">\n <span class=\"n7-icon-angle-right\"\n [ngClass]=\"{\n 'n7-icon-angle-right': !!lb.dataSource.sectionCollapseState[id],\n 'n7-icon-angle-down': !lb.dataSource.sectionCollapseState[id]\n }\"></span>\n </button>\n </div>\n</ng-template>\n\n<ng-template #extendedtree>\n <!-- Extended Tree -->\n <section *ngIf=\"lb.dataSource.hasExtendedTree\" id=\"extended-tree-container\" class=\"aw-scheda__section\">\n <div class=\"aw-scheda__section-extended-tree-loader\" *ngIf=\"!(lb.widgets['aw-extended-tree'].ds.out$ | async)\">\n <n7-loader></n7-loader>\n </div>\n <aw-extended-tree\n [data]=\"lb.widgets['aw-extended-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-extended-tree'].emit\"\n [lb]=\"lb\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'extended-tree' }\"></ng-container>\n </aw-extended-tree>\n </section>\n <!-- END // Extended Tree -->\n</ng-template>", components: [{ type: i4.SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { type: i5.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { type: i5.SidebarHeaderComponent, selector: "n7-sidebar-header", inputs: ["data", "emit"] }, { type: i5.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { type: i5.TreeComponent, selector: "n7-tree", inputs: ["data", "emit"] }, { type: i6.SchedaDropdownComponent, selector: "aw-scheda-dropdown", inputs: ["data", "emit"] }, { type: i7.SchedaImageNavigatorComponent, selector: "aw-scheda-image-navigator", inputs: ["data", "emit"] }, { type: i5.ImageViewerComponent, selector: "n7-image-viewer", inputs: ["data", "emit"] }, { type: i8.PdfViewerComponent, selector: "aw-pdf-viewer", inputs: ["data", "emit"] }, { type: i5.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { type: i5.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { type: i5.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { type: i9.ExtendedTreeComponent, selector: "aw-extended-tree", inputs: ["data", "emit", "lb"] }], directives: [{ type: i10.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i10.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i10.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "async": i10.AsyncPipe } });
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
+
AwSchedaLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwSchedaLayoutComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.ConfigurationService }, { token: i2.LayoutsConfigurationService }, { token: i2.MainStateService }, { token: i3.Title }, { token: i2.CommunicationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
+
AwSchedaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: AwSchedaLayoutComponent, selector: "aw-scheda-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-scheda\"\n id=\"scheda-layout\">\n <div class=\"aw-scheda__content n7-side-auto-padding sticky-parent\"\n [ngClass]=\"{ 'is-collapsed' : lb.dataSource.sidebarCollapsed }\">\n\n <ng-container *ngTemplateOutlet=\"tree\"></ng-container>\n\n <div class=\"aw-scheda__scheda-wrapper\"\n [hidden]=\"lb.dataSource.contentIsLoading\">\n\n <n7-smart-breadcrumbs *ngIf=\"lb.dataSource.hasBreadcrumb\"\n [data]=\"lb.widgets['aw-scheda-breadcrumbs'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-breadcrumbs'].emit\">\n </n7-smart-breadcrumbs>\n\n <div *ngIf=\"!lb.dataSource.hasBreadcrumb\"\n class=\"aw-scheda__fake-breadcrumbs\"\n (click)=\"lb.eventHandler.emitInner('togglesidebar', {})\">\n <p class=\"aw-scheda__fake-breadcrumbs-open\" \n *ngIf=\"lb.dataSource.sidebarCollapsed\">\n Consulta il patrimonio\n </p>\n </div>\n\n <div *ngIf=\"!lb.dataSource.currentId\"\n class=\"aw-scheda__intro-text\"\n [innerHTML]=\"lb.dataSource.emptyLabel\">\n </div>\n\n <div class=\"aw-scheda__title-wrapper\">\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__prev\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.prev?.href ? [titleNav.prev.href] : null\"\n [title]=\"titleNav.prev?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.prev?.href }\">\n <span class=\"n7-icon-angle-left\"></span>\n </a>\n </div>\n <div class=\"aw-scheda__title\">\n <div *ngIf=\"lb.dataSource.documentType as documentType\" class=\"aw-scheda__document-type\">\n <span *ngIf=\"documentType.icon\" class=\"aw-scheda__document-type-icon {{ documentType.icon }}\"></span>\n <span class=\"aw-scheda__document-type-label\">{{ documentType.label }}</span>\n </div>\n <n7-inner-title [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__next\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.next?.href ? [titleNav.next.href] : null\"\n [title]=\"titleNav.next?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.next?.href }\">\n <span class=\"n7-icon-angle-right\"></span>\n </a>\n </div>\n </div>\n\n <!-- Empty state -->\n <ng-container *ngIf=\"!lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n </ng-container>\n\n <!-- Content sections -->\n <ng-container *ngIf=\"lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n\n <!-- Extended tree -->\n <ng-container *ngTemplateOutlet=\"extendedtree\"></ng-container>\n\n </div>\n </div>\n</div>\n\n<ng-template #tree>\n <div class=\"aw-scheda__tree sticky-target\"\n [ngClass]=\"{ 'is-sticky': lb.dataSource.sidebarIsSticky }\">\n <n7-sidebar-header [data]=\"lb.widgets['aw-sidebar-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-sidebar-header'].emit\"></n7-sidebar-header>\n <div class=\"aw-scheda__tree-content-loading\"\n *ngIf=\"!(lb.widgets['aw-tree'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3]\"\n [data]=\"{\n blocks: [{\n classes: 'tree-placeholder-item'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-scheda__tree-content\"\n (click)=\"lb.eventHandler.emitOuter('treeposition', $event)\"\n [ngStyle]=\"{\n 'max-height': lb.dataSource.treeMaxHeight,\n 'overflow': 'auto'\n }\">\n <n7-tree [data]=\"lb.widgets['aw-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-tree'].emit\"\n *ngIf=\"!lb.dataSource.sidebarCollapsed\">\n </n7-tree>\n </div>\n </div>\n</ng-template>\n\n<ng-template #empty>\n <section class=\"aw-scheda__section aw-scheda__empty\"\n [innerHTML]=\"lb.dataSource.emptyStateString\">\n </section>\n</ng-template>\n\n<ng-template #content>\n <!-- Digital Object selection dropdown -->\n <section class=\"aw-scheda__digital-object-dropdown\"\n *ngIf=\"(\n lb.dataSource.hasDigitalObjects \n && lb.dataSource.digitalObjects.length > 1\n )\">\n <p class=\"aw-scheda__digital-object-dropdown-label\">\n Seleziona l'oggetto digitale da visualizzare:\n </p>\n <aw-scheda-dropdown \n [data]=\"lb.widgets['aw-scheda-dropdown'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-dropdown'].emit\">\n </aw-scheda-dropdown>\n </section>\n <!-- END // Digital Object selection dropdown -->\n\n <!-- Digital Objects: images, IIP, PDFs, external links -->\n <section *ngIf=\"lb.dataSource.currentDigitalObject as $do\" \n class=\"aw-scheda__media aw-scheda__{{ $do.type }}\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (IIIF) -->\n <ng-container *ngSwitchCase=\"'images-iiif'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (Simple: jpg, png) -->\n <ng-container *ngSwitchCase=\"'images-simple'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\"\n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n \n <!-- PDF -->\n <ng-container *ngSwitchCase=\"'pdf'\">\n <aw-pdf-viewer \n [data]=\"lb.widgets['aw-scheda-pdf'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-pdf'].emit\">\n </aw-pdf-viewer>\n </ng-container>\n \n <!-- EXTERNAL URL -->\n <ng-container *ngSwitchCase=\"'external'\">\n <div class=\"aw-scheda__external-url\">\n <a class=\"aw-scheda__external-url-link\" href=\"{{ $do.url }}\" target=\"_blank\">\n {{ $do.label || lb.dataSource.externalUrlText }}\n <span class=\"n7-icon-external-link\"></span>\n </a>\n </div>\n </ng-container>\n </ng-container>\n </section>\n <!-- END // Digital Objects -->\n\n <section *ngIf=\"lb.dataSource.contentParts.content\" class=\"aw-scheda__section aw-scheda__description\">\n <div *ngFor=\"let part of lb.dataSource.contentParts\">\n <div [innerHTML]=\"part.content\"></div>\n </div>\n </section>\n\n <!-- Metadata -->\n <section *ngIf=\"lb.dataSource.hasMetadata\" class=\"aw-scheda__section aw-scheda__metadata\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('metadata')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'metadata' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\"\n *ngIf=\"lb.dataSource.metadataSectionTitle\">\n {{lb.dataSource.metadataSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['metadata']\" \n class=\"aw-scheda__section-content-wrapper\">\n <n7-metadata-viewer [data]=\"lb.widgets['aw-scheda-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </div>\n </section>\n <!-- END // Metadata -->\n\n <!-- Related entities -->\n <section *ngIf=\"lb.dataSource.hasRelatedEntities\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('related-entities')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'related-entities' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.relatedEntitiesHeader}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['related-entities']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-related-entities'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-related-entities'].emit\">\n </n7-item-preview>\n <!-- Relation -->\n <div class=\"aw-item-preview-relation\"\n *ngIf=\"preview.relation?.value\">\n <p class=\"aw-item-preview-relation__description\">Tipo di relazione\n <!-- <span class=\"aw-item-preview-relation__key\">{{preview.relation.key}}</span>: -->\n <span class=\"aw-item-preview-relation__value\">{{preview.relation.value}}</span>\n </p>\n </div>\n </div>\n </ng-container>\n </div>\n </section>\n <!-- END // Related entities -->\n\n <!-- Similar Objects -->\n <section *ngIf=\"lb.dataSource.hasSimilarItems\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('similar-items')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'similar-items' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.similarItemsSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['similar-items']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div> \n </ng-container>\n </div>\n </section>\n <!-- END // Similar Objects -->\n</ng-template>\n\n<ng-template #collapse let-id>\n <div class=\"aw-scheda__collapse\">\n <button class=\"n7-btn n7-btn-light\">\n <span class=\"n7-icon-angle-right\"\n [ngClass]=\"{\n 'n7-icon-angle-right': !!lb.dataSource.sectionCollapseState[id],\n 'n7-icon-angle-down': !lb.dataSource.sectionCollapseState[id]\n }\"></span>\n </button>\n </div>\n</ng-template>\n\n<ng-template #extendedtree>\n <!-- Extended Tree -->\n <section *ngIf=\"lb.dataSource.hasExtendedTree\" id=\"extended-tree-container\" class=\"aw-scheda__section\">\n <div class=\"aw-scheda__section-extended-tree-loader\" *ngIf=\"!(lb.widgets['aw-extended-tree'].ds.out$ | async)\">\n <n7-loader></n7-loader>\n </div>\n <aw-extended-tree\n [data]=\"lb.widgets['aw-extended-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-extended-tree'].emit\"\n [lb]=\"lb\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'extended-tree' }\"></ng-container>\n </aw-extended-tree>\n </section>\n <!-- END // Extended Tree -->\n</ng-template>", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i5.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i5.ImageViewerComponent, selector: "n7-image-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i5.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i5.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i5.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i5.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i5.SidebarHeaderComponent, selector: "n7-sidebar-header", inputs: ["data", "emit"] }, { kind: "component", type: i5.TreeComponent, selector: "n7-tree", inputs: ["data", "emit"] }, { kind: "component", type: i6.PdfViewerComponent, selector: "aw-pdf-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i7.SchedaDropdownComponent, selector: "aw-scheda-dropdown", inputs: ["data", "emit"] }, { kind: "component", type: i8.SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { kind: "component", type: i9.ExtendedTreeComponent, selector: "aw-extended-tree", inputs: ["data", "emit", "lb"] }, { kind: "component", type: i10.SchedaImageNavigatorComponent, selector: "aw-scheda-image-navigator", inputs: ["data", "emit"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwSchedaLayoutComponent, decorators: [{
|
|
52
52
|
type: Component,
|
|
53
53
|
args: [{ selector: 'aw-scheda-layout', template: "<div class=\"aw-scheda\"\n id=\"scheda-layout\">\n <div class=\"aw-scheda__content n7-side-auto-padding sticky-parent\"\n [ngClass]=\"{ 'is-collapsed' : lb.dataSource.sidebarCollapsed }\">\n\n <ng-container *ngTemplateOutlet=\"tree\"></ng-container>\n\n <div class=\"aw-scheda__scheda-wrapper\"\n [hidden]=\"lb.dataSource.contentIsLoading\">\n\n <n7-smart-breadcrumbs *ngIf=\"lb.dataSource.hasBreadcrumb\"\n [data]=\"lb.widgets['aw-scheda-breadcrumbs'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-breadcrumbs'].emit\">\n </n7-smart-breadcrumbs>\n\n <div *ngIf=\"!lb.dataSource.hasBreadcrumb\"\n class=\"aw-scheda__fake-breadcrumbs\"\n (click)=\"lb.eventHandler.emitInner('togglesidebar', {})\">\n <p class=\"aw-scheda__fake-breadcrumbs-open\" \n *ngIf=\"lb.dataSource.sidebarCollapsed\">\n Consulta il patrimonio\n </p>\n </div>\n\n <div *ngIf=\"!lb.dataSource.currentId\"\n class=\"aw-scheda__intro-text\"\n [innerHTML]=\"lb.dataSource.emptyLabel\">\n </div>\n\n <div class=\"aw-scheda__title-wrapper\">\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__prev\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.prev?.href ? [titleNav.prev.href] : null\"\n [title]=\"titleNav.prev?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.prev?.href }\">\n <span class=\"n7-icon-angle-left\"></span>\n </a>\n </div>\n <div class=\"aw-scheda__title\">\n <div *ngIf=\"lb.dataSource.documentType as documentType\" class=\"aw-scheda__document-type\">\n <span *ngIf=\"documentType.icon\" class=\"aw-scheda__document-type-icon {{ documentType.icon }}\"></span>\n <span class=\"aw-scheda__document-type-label\">{{ documentType.label }}</span>\n </div>\n <n7-inner-title [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__next\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.next?.href ? [titleNav.next.href] : null\"\n [title]=\"titleNav.next?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.next?.href }\">\n <span class=\"n7-icon-angle-right\"></span>\n </a>\n </div>\n </div>\n\n <!-- Empty state -->\n <ng-container *ngIf=\"!lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n </ng-container>\n\n <!-- Content sections -->\n <ng-container *ngIf=\"lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n\n <!-- Extended tree -->\n <ng-container *ngTemplateOutlet=\"extendedtree\"></ng-container>\n\n </div>\n </div>\n</div>\n\n<ng-template #tree>\n <div class=\"aw-scheda__tree sticky-target\"\n [ngClass]=\"{ 'is-sticky': lb.dataSource.sidebarIsSticky }\">\n <n7-sidebar-header [data]=\"lb.widgets['aw-sidebar-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-sidebar-header'].emit\"></n7-sidebar-header>\n <div class=\"aw-scheda__tree-content-loading\"\n *ngIf=\"!(lb.widgets['aw-tree'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3]\"\n [data]=\"{\n blocks: [{\n classes: 'tree-placeholder-item'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-scheda__tree-content\"\n (click)=\"lb.eventHandler.emitOuter('treeposition', $event)\"\n [ngStyle]=\"{\n 'max-height': lb.dataSource.treeMaxHeight,\n 'overflow': 'auto'\n }\">\n <n7-tree [data]=\"lb.widgets['aw-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-tree'].emit\"\n *ngIf=\"!lb.dataSource.sidebarCollapsed\">\n </n7-tree>\n </div>\n </div>\n</ng-template>\n\n<ng-template #empty>\n <section class=\"aw-scheda__section aw-scheda__empty\"\n [innerHTML]=\"lb.dataSource.emptyStateString\">\n </section>\n</ng-template>\n\n<ng-template #content>\n <!-- Digital Object selection dropdown -->\n <section class=\"aw-scheda__digital-object-dropdown\"\n *ngIf=\"(\n lb.dataSource.hasDigitalObjects \n && lb.dataSource.digitalObjects.length > 1\n )\">\n <p class=\"aw-scheda__digital-object-dropdown-label\">\n Seleziona l'oggetto digitale da visualizzare:\n </p>\n <aw-scheda-dropdown \n [data]=\"lb.widgets['aw-scheda-dropdown'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-dropdown'].emit\">\n </aw-scheda-dropdown>\n </section>\n <!-- END // Digital Object selection dropdown -->\n\n <!-- Digital Objects: images, IIP, PDFs, external links -->\n <section *ngIf=\"lb.dataSource.currentDigitalObject as $do\" \n class=\"aw-scheda__media aw-scheda__{{ $do.type }}\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (IIIF) -->\n <ng-container *ngSwitchCase=\"'images-iiif'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (Simple: jpg, png) -->\n <ng-container *ngSwitchCase=\"'images-simple'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\"\n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n \n <!-- PDF -->\n <ng-container *ngSwitchCase=\"'pdf'\">\n <aw-pdf-viewer \n [data]=\"lb.widgets['aw-scheda-pdf'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-pdf'].emit\">\n </aw-pdf-viewer>\n </ng-container>\n \n <!-- EXTERNAL URL -->\n <ng-container *ngSwitchCase=\"'external'\">\n <div class=\"aw-scheda__external-url\">\n <a class=\"aw-scheda__external-url-link\" href=\"{{ $do.url }}\" target=\"_blank\">\n {{ $do.label || lb.dataSource.externalUrlText }}\n <span class=\"n7-icon-external-link\"></span>\n </a>\n </div>\n </ng-container>\n </ng-container>\n </section>\n <!-- END // Digital Objects -->\n\n <section *ngIf=\"lb.dataSource.contentParts.content\" class=\"aw-scheda__section aw-scheda__description\">\n <div *ngFor=\"let part of lb.dataSource.contentParts\">\n <div [innerHTML]=\"part.content\"></div>\n </div>\n </section>\n\n <!-- Metadata -->\n <section *ngIf=\"lb.dataSource.hasMetadata\" class=\"aw-scheda__section aw-scheda__metadata\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('metadata')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'metadata' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\"\n *ngIf=\"lb.dataSource.metadataSectionTitle\">\n {{lb.dataSource.metadataSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['metadata']\" \n class=\"aw-scheda__section-content-wrapper\">\n <n7-metadata-viewer [data]=\"lb.widgets['aw-scheda-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </div>\n </section>\n <!-- END // Metadata -->\n\n <!-- Related entities -->\n <section *ngIf=\"lb.dataSource.hasRelatedEntities\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('related-entities')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'related-entities' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.relatedEntitiesHeader}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['related-entities']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-related-entities'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-related-entities'].emit\">\n </n7-item-preview>\n <!-- Relation -->\n <div class=\"aw-item-preview-relation\"\n *ngIf=\"preview.relation?.value\">\n <p class=\"aw-item-preview-relation__description\">Tipo di relazione\n <!-- <span class=\"aw-item-preview-relation__key\">{{preview.relation.key}}</span>: -->\n <span class=\"aw-item-preview-relation__value\">{{preview.relation.value}}</span>\n </p>\n </div>\n </div>\n </ng-container>\n </div>\n </section>\n <!-- END // Related entities -->\n\n <!-- Similar Objects -->\n <section *ngIf=\"lb.dataSource.hasSimilarItems\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('similar-items')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'similar-items' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.similarItemsSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['similar-items']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div> \n </ng-container>\n </div>\n </section>\n <!-- END // Similar Objects -->\n</ng-template>\n\n<ng-template #collapse let-id>\n <div class=\"aw-scheda__collapse\">\n <button class=\"n7-btn n7-btn-light\">\n <span class=\"n7-icon-angle-right\"\n [ngClass]=\"{\n 'n7-icon-angle-right': !!lb.dataSource.sectionCollapseState[id],\n 'n7-icon-angle-down': !lb.dataSource.sectionCollapseState[id]\n }\"></span>\n </button>\n </div>\n</ng-template>\n\n<ng-template #extendedtree>\n <!-- Extended Tree -->\n <section *ngIf=\"lb.dataSource.hasExtendedTree\" id=\"extended-tree-container\" class=\"aw-scheda__section\">\n <div class=\"aw-scheda__section-extended-tree-loader\" *ngIf=\"!(lb.widgets['aw-extended-tree'].ds.out$ | async)\">\n <n7-loader></n7-loader>\n </div>\n <aw-extended-tree\n [data]=\"lb.widgets['aw-extended-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-extended-tree'].emit\"\n [lb]=\"lb\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'extended-tree' }\"></ng-container>\n </aw-extended-tree>\n </section>\n <!-- END // Extended Tree -->\n</ng-template>" }]
|
|
54
54
|
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.ConfigurationService }, { type: i2.LayoutsConfigurationService }, { type: i2.MainStateService }, { type: i3.Title }, { type: i2.CommunicationService }]; } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWRhLWxheW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRzdELE9BQU8sRUFDTCxjQUFjLEVBS2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsd0JBQXdCLElBQUksTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7OztBQU81RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsY0FBYztJQUN6RCxZQUNVLE1BQWMsRUFDZCxLQUFxQixFQUNyQixhQUFtQyxFQUNuQyxvQkFBaUQsRUFDakQsU0FBMkIsRUFDM0IsWUFBbUIsRUFDbkIsYUFBbUM7UUFHM0MsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBVDlELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUE2QjtRQUNqRCxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBTztRQUNuQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7SUFJN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxXQUFXO1FBQ25CLE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7b0hBckNVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLCtFQ2pCcEMsay9hQTRSYzsyRkQzUUQsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gIEFic3RyYWN0TGF5b3V0LFxuICBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTGF5b3V0c0NvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBNYWluU3RhdGVTZXJ2aWNlLFxuICBDb21tdW5pY2F0aW9uU2VydmljZVxufSBmcm9tICdAbmV0Ny9ib2lsZXJwbGF0ZS1jb21tb24nO1xuaW1wb3J0IHsgQXdQYXRyaW1vbmlvTGF5b3V0Q29uZmlnIGFzIGNvbmZpZyB9IGZyb20gJy4vc2NoZWRhLWxheW91dC5jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdy1zY2hlZGEtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NjaGVkYS1sYXlvdXQuaHRtbCcsXG59KVxuXG5leHBvcnQgY2xhc3MgQXdTY2hlZGFMYXlvdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExheW91dCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbGF5b3V0c0NvbmZpZ3VyYXRpb246IExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1haW5TdGF0ZTogTWFpblN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHRpdGxlU2VydmljZTogVGl0bGUsXG4gICAgcHJpdmF0ZSBjb21tdW5pY2F0aW9uOiBDb21tdW5pY2F0aW9uU2VydmljZSxcblxuICApIHtcbiAgICBzdXBlcihsYXlvdXRzQ29uZmlndXJhdGlvbi5nZXQoJ0F3UGF0cmltb25pb0xheW91dENvbmZpZycpIHx8IGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogT3B0aW9uYWwgdmFyaWFibGVzIHRoYXQgY2FuIGJlIGFjY2Vzc2VkIGZyb20gdGhlIGxheW91dCdzIGxvZ2ljLlxuICAgKiBJZiByZW1vdmVkLCB0aGV5IG11c3QgYWxzbyBiZSByZW1vdmVkIGZyb20gdGhlIGxheW91dCdzIERhdGFTb3VyY2UgZmlsZSxcbiAgICogYW5kIGZyb20gdGhpcyBmaWxlIGltcG9ydHMuXG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdFBheWxvYWQoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbmZpZ3VyYXRpb246IHRoaXMuY29uZmlndXJhdGlvbixcbiAgICAgIG1haW5TdGF0ZTogdGhpcy5tYWluU3RhdGUsXG4gICAgICByb3V0ZXI6IHRoaXMucm91dGVyLFxuICAgICAgcm91dGU6IHRoaXMucm91dGUsXG4gICAgICB0aXRsZVNlcnZpY2U6IHRoaXMudGl0bGVTZXJ2aWNlLFxuICAgICAgY29tbXVuaWNhdGlvbjogdGhpcy5jb21tdW5pY2F0aW9uLFxuICAgICAgb3B0aW9uczogdGhpcy5jb25maWcub3B0aW9ucyB8fCB7fSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5vbkluaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25EZXN0cm95KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhdy1zY2hlZGFcIlxuICAgICBpZD1cInNjaGVkYS1sYXlvdXRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19jb250ZW50IG43LXNpZGUtYXV0by1wYWRkaW5nIHN0aWNreS1wYXJlbnRcIlxuICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtY29sbGFwc2VkJyA6IGxiLmRhdGFTb3VyY2Uuc2lkZWJhckNvbGxhcHNlZCB9XCI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRyZWVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zY2hlZGEtd3JhcHBlclwiXG4gICAgICAgICAgICAgW2hpZGRlbl09XCJsYi5kYXRhU291cmNlLmNvbnRlbnRJc0xvYWRpbmdcIj5cblxuICAgICAgICAgICAgPG43LXNtYXJ0LWJyZWFkY3J1bWJzICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNCcmVhZGNydW1iXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtYnJlYWRjcnVtYnMnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1icmVhZGNydW1icyddLmVtaXRcIj5cbiAgICAgICAgICAgIDwvbjctc21hcnQtYnJlYWRjcnVtYnM+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbGIuZGF0YVNvdXJjZS5oYXNCcmVhZGNydW1iXCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX2Zha2UtYnJlYWRjcnVtYnNcIlxuICAgICAgICAgICAgICAgICAoY2xpY2spPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRJbm5lcigndG9nZ2xlc2lkZWJhcicsIHt9KVwiPlxuICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImF3LXNjaGVkYV9fZmFrZS1icmVhZGNydW1icy1vcGVuXCIgXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5zaWRlYmFyQ29sbGFwc2VkXCI+XG4gICAgICAgICAgICAgICAgICAgIENvbnN1bHRhIGlsIHBhdHJpbW9uaW9cbiAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbGIuZGF0YVNvdXJjZS5jdXJyZW50SWRcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9faW50cm8tdGV4dFwiXG4gICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwibGIuZGF0YVNvdXJjZS5lbXB0eUxhYmVsXCI+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdGl0bGUtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLnRpdGxlTmF2aWdhdGlvbiBhcyB0aXRsZU5hdlwiIGNsYXNzPVwiYXctc2NoZWRhX19wcmV2XCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibjctYnRuIG43LWJ0bi1saWdodFwiIFtyb3V0ZXJMaW5rXT1cInRpdGxlTmF2LnByZXY/LmhyZWYgPyBbdGl0bGVOYXYucHJldi5ocmVmXSA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidGl0bGVOYXYucHJldj8ubGFiZWwgfHwgJydcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1kaXNhYmxlZCc6ICF0aXRsZU5hdi5wcmV2Py5ocmVmIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibjctaWNvbi1hbmdsZS1sZWZ0XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuZG9jdW1lbnRUeXBlIGFzIGRvY3VtZW50VHlwZVwiIGNsYXNzPVwiYXctc2NoZWRhX19kb2N1bWVudC10eXBlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImRvY3VtZW50VHlwZS5pY29uXCIgY2xhc3M9XCJhdy1zY2hlZGFfX2RvY3VtZW50LXR5cGUtaWNvbiB7eyBkb2N1bWVudFR5cGUuaWNvbiB9fVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXctc2NoZWRhX19kb2N1bWVudC10eXBlLWxhYmVsXCI+e3sgZG9jdW1lbnRUeXBlLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWlubmVyLXRpdGxlIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbm5lci10aXRsZSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgICAgICA8L243LWlubmVyLXRpdGxlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLnRpdGxlTmF2aWdhdGlvbiBhcyB0aXRsZU5hdlwiIGNsYXNzPVwiYXctc2NoZWRhX19uZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibjctYnRuIG43LWJ0bi1saWdodFwiIFtyb3V0ZXJMaW5rXT1cInRpdGxlTmF2Lm5leHQ/LmhyZWYgPyBbdGl0bGVOYXYubmV4dC5ocmVmXSA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidGl0bGVOYXYubmV4dD8ubGFiZWwgfHwgJydcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1kaXNhYmxlZCc6ICF0aXRsZU5hdi5uZXh0Py5ocmVmIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibjctaWNvbi1hbmdsZS1yaWdodFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDwhLS0gRW1wdHkgc3RhdGUgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxiLmRhdGFTb3VyY2UuaGFzQ29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlbXB0eVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS0gQ29udGVudCBzZWN0aW9ucyAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS0gRXh0ZW5kZWQgdHJlZSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJleHRlbmRlZHRyZWVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RyZWU+XG4gICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdHJlZSBzdGlja3ktdGFyZ2V0XCJcbiAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLXN0aWNreSc6IGxiLmRhdGFTb3VyY2Uuc2lkZWJhcklzU3RpY2t5IH1cIj5cbiAgICAgICAgPG43LXNpZGViYXItaGVhZGVyIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNpZGViYXItaGVhZGVyJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNpZGViYXItaGVhZGVyJ10uZW1pdFwiPjwvbjctc2lkZWJhci1oZWFkZXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3RyZWUtY29udGVudC1sb2FkaW5nXCJcbiAgICAgICAgICAgICAqbmdJZj1cIiEobGIud2lkZ2V0c1snYXctdHJlZSddLmRzLm91dCQgfCBhc3luYylcIj5cbiAgICAgICAgICAgIDxuNy1jb250ZW50LXBsYWNlaG9sZGVyICpuZ0Zvcj1cImxldCBuIG9mIFswLDEsMiwzXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tzOiBbe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzOiAndHJlZS1wbGFjZWhvbGRlci1pdGVtJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCI+PC9uNy1jb250ZW50LXBsYWNlaG9sZGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdHJlZS1jb250ZW50XCJcbiAgICAgICAgICAgICAoY2xpY2spPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRPdXRlcigndHJlZXBvc2l0aW9uJywgJGV2ZW50KVwiXG4gICAgICAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtYXgtaGVpZ2h0JzogbGIuZGF0YVNvdXJjZS50cmVlTWF4SGVpZ2h0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvdmVyZmxvdyc6ICdhdXRvJ1xuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgPG43LXRyZWUgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctdHJlZSddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy10cmVlJ10uZW1pdFwiXG4gICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFsYi5kYXRhU291cmNlLnNpZGViYXJDb2xsYXBzZWRcIj5cbiAgICAgICAgICAgIDwvbjctdHJlZT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2VtcHR5PlxuICAgIDxzZWN0aW9uIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uIGF3LXNjaGVkYV9fZW1wdHlcIlxuICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwibGIuZGF0YVNvdXJjZS5lbXB0eVN0YXRlU3RyaW5nXCI+XG4gICAgPC9zZWN0aW9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDwhLS0gRGlnaXRhbCBPYmplY3Qgc2VsZWN0aW9uIGRyb3Bkb3duIC0tPlxuICAgIDxzZWN0aW9uIGNsYXNzPVwiYXctc2NoZWRhX19kaWdpdGFsLW9iamVjdC1kcm9wZG93blwiXG4gICAgICAgICAgICAqbmdJZj1cIihcbiAgICAgICAgICAgICAgICBsYi5kYXRhU291cmNlLmhhc0RpZ2l0YWxPYmplY3RzIFxuICAgICAgICAgICAgICAgICYmIGxiLmRhdGFTb3VyY2UuZGlnaXRhbE9iamVjdHMubGVuZ3RoID4gMVxuICAgICAgICAgICAgKVwiPlxuICAgICAgICA8cCBjbGFzcz1cImF3LXNjaGVkYV9fZGlnaXRhbC1vYmplY3QtZHJvcGRvd24tbGFiZWxcIj5cbiAgICAgICAgICAgIFNlbGV6aW9uYSBsJ29nZ2V0dG8gZGlnaXRhbGUgZGEgdmlzdWFsaXp6YXJlOlxuICAgICAgICA8L3A+XG4gICAgICAgIDxhdy1zY2hlZGEtZHJvcGRvd24gXG4gICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1kcm9wZG93biddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1kcm9wZG93biddLmVtaXRcIj5cbiAgICAgICAgPC9hdy1zY2hlZGEtZHJvcGRvd24+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIERpZ2l0YWwgT2JqZWN0IHNlbGVjdGlvbiBkcm9wZG93biAtLT5cblxuICAgIDwhLS0gRGlnaXRhbCBPYmplY3RzOiBpbWFnZXMsIElJUCwgUERGcywgZXh0ZXJuYWwgbGlua3MgLS0+XG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmN1cnJlbnREaWdpdGFsT2JqZWN0IGFzICRkb1wiIFxuICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fbWVkaWEgYXctc2NoZWRhX197eyAkZG8udHlwZSB9fVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCIkZG8udHlwZVwiPlxuICAgICAgICAgICAgPCEtLSBJTUFHRSBWSUVXRVIgKElJUCkgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2VzLWlpcCdcIj5cbiAgICAgICAgICAgICAgICA8YXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZW1pdFwiPjwvYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvcj5cbiAgICAgICAgICAgICAgICA8bjctaW1hZ2Utdmlld2VyIFxuICAgICAgICAgICAgICAgIChjb250ZXh0bWVudSk9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRleHRNZW51KClcIiBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UnXS5kcy5vdXQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICA8L243LWltYWdlLXZpZXdlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8IS0tIElNQUdFIFZJRVdFUiAoSUlJRikgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2VzLWlpaWYnXCI+XG4gICAgICAgICAgICAgICAgPGF3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3IgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmVtaXRcIj48L2F3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3I+XG4gICAgICAgICAgICAgICAgPG43LWltYWdlLXZpZXdlciBcbiAgICAgICAgICAgICAgICAoY29udGV4dG1lbnUpPVwibGIuZGF0YVNvdXJjZS5oYXNDb250ZXh0TWVudSgpXCIgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlJ10uZHMub3V0JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgPC9uNy1pbWFnZS12aWV3ZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPCEtLSBJTUFHRSBWSUVXRVIgKFNpbXBsZToganBnLCBwbmcpIC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ltYWdlcy1zaW1wbGUnXCI+XG4gICAgICAgICAgICAgICAgPGF3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3IgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmVtaXRcIj48L2F3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3I+XG4gICAgICAgICAgICAgICAgPG43LWltYWdlLXZpZXdlciBcbiAgICAgICAgICAgICAgICAoY29udGV4dG1lbnUpPVwibGIuZGF0YVNvdXJjZS5oYXNDb250ZXh0TWVudSgpXCJcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UnXS5kcy5vdXQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICA8L243LWltYWdlLXZpZXdlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIFxuICAgICAgICAgICAgPCEtLSBQREYgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIncGRmJ1wiPlxuICAgICAgICAgICAgICAgIDxhdy1wZGYtdmlld2VyIFxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1wZGYnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1wZGYnXS5lbWl0XCI+XG4gICAgICAgICAgICAgICAgPC9hdy1wZGYtdmlld2VyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgXG4gICAgICAgICAgICA8IS0tIEVYVEVSTkFMIFVSTCAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidleHRlcm5hbCdcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19leHRlcm5hbC11cmxcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJhdy1zY2hlZGFfX2V4dGVybmFsLXVybC1saW5rXCIgaHJlZj1cInt7ICRkby51cmwgfX1cIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICRkby5sYWJlbCB8fCBsYi5kYXRhU291cmNlLmV4dGVybmFsVXJsVGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuNy1pY29uLWV4dGVybmFsLWxpbmtcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3NlY3Rpb24+XG4gICAgPCEtLSBFTkQgLy8gRGlnaXRhbCBPYmplY3RzIC0tPlxuXG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmNvbnRlbnRQYXJ0cy5jb250ZW50XCIgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24gYXctc2NoZWRhX19kZXNjcmlwdGlvblwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwYXJ0IG9mIGxiLmRhdGFTb3VyY2UuY29udGVudFBhcnRzXCI+XG4gICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwicGFydC5jb250ZW50XCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cblxuICAgIDwhLS0gTWV0YWRhdGEgLS0+XG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmhhc01ldGFkYXRhXCIgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24gYXctc2NoZWRhX19tZXRhZGF0YVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uLXRpdGxlLXdyYXBwZXJcIiAoY2xpY2spPVwibGIuZGF0YVNvdXJjZS5vblNlY3Rpb25Db2xsYXBzZSgnbWV0YWRhdGEnKVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbGxhcHNlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogJ21ldGFkYXRhJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19pbm5lci10aXRsZVwiXG4gICAgICAgICAgICAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5tZXRhZGF0YVNlY3Rpb25UaXRsZVwiPlxuICAgICAgICAgICAgICAgIHt7bGIuZGF0YVNvdXJjZS5tZXRhZGF0YVNlY3Rpb25UaXRsZX19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgW2hpZGRlbl09XCIhIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbJ21ldGFkYXRhJ11cIiBcbiAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tY29udGVudC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8bjctbWV0YWRhdGEtdmlld2VyIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1tZXRhZGF0YSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgPC9uNy1tZXRhZGF0YS12aWV3ZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBNZXRhZGF0YSAtLT5cblxuICAgIDwhLS0gUmVsYXRlZCBlbnRpdGllcyAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzUmVsYXRlZEVudGl0aWVzXCJcbiAgICAgICAgICAgICBpZD1cInJlbGF0ZWQtaXRlbS1jb250YWluZXJcIlxuICAgICAgICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uIGF3LXNjaGVkYV9fcmVsYXRlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uLXRpdGxlLXdyYXBwZXJcIiAoY2xpY2spPVwibGIuZGF0YVNvdXJjZS5vblNlY3Rpb25Db2xsYXBzZSgncmVsYXRlZC1lbnRpdGllcycpXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sbGFwc2U7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiAncmVsYXRlZC1lbnRpdGllcycgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9faW5uZXItdGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7e2xiLmRhdGFTb3VyY2UucmVsYXRlZEVudGl0aWVzSGVhZGVyfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbaGlkZGVuXT1cIiEhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVsncmVsYXRlZC1lbnRpdGllcyddXCIgXG4gICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19yZWxhdGVkLWl0ZW1zIGF3LWl0ZW0tcHJldmlldy1saXN0IG43LWdyaWQtMlwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcHJldmlldyBvZiAobGIud2lkZ2V0c1snYXctcmVsYXRlZC1lbnRpdGllcyddLmRzLm91dCQgfCBhc3luYyk/LnByZXZpZXdzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuNy1pdGVtLXByZXZpZXcgW2RhdGFdPVwicHJldmlld1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctcmVsYXRlZC1lbnRpdGllcyddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9uNy1pdGVtLXByZXZpZXc+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gUmVsYXRpb24gLS0+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctcmVsYXRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicHJldmlldy5yZWxhdGlvbj8udmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXJlbGF0aW9uX19kZXNjcmlwdGlvblwiPlRpcG8gZGkgcmVsYXppb25lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1yZWxhdGlvbl9fa2V5XCI+e3twcmV2aWV3LnJlbGF0aW9uLmtleX19PC9zcGFuPjogLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctcmVsYXRpb25fX3ZhbHVlXCI+e3twcmV2aWV3LnJlbGF0aW9uLnZhbHVlfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBSZWxhdGVkIGVudGl0aWVzIC0tPlxuXG4gICAgPCEtLSBTaW1pbGFyIE9iamVjdHMgLS0+XG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmhhc1NpbWlsYXJJdGVtc1wiXG4gICAgaWQ9XCJyZWxhdGVkLWl0ZW0tY29udGFpbmVyXCJcbiAgICBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbiBhdy1zY2hlZGFfX3JlbGF0ZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbi10aXRsZS13cmFwcGVyXCIgKGNsaWNrKT1cImxiLmRhdGFTb3VyY2Uub25TZWN0aW9uQ29sbGFwc2UoJ3NpbWlsYXItaXRlbXMnKVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbGxhcHNlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogJ3NpbWlsYXItaXRlbXMnIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2lubmVyLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAge3tsYi5kYXRhU291cmNlLnNpbWlsYXJJdGVtc1NlY3Rpb25UaXRsZX19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgW2hpZGRlbl09XCIhIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbJ3NpbWlsYXItaXRlbXMnXVwiIFxuICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fcmVsYXRlZC1pdGVtcyBhdy1pdGVtLXByZXZpZXctbGlzdCBuNy1ncmlkLTJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHByZXZpZXcgb2YgKGxiLndpZGdldHNbJ2F3LWxpbmtlZC1vYmplY3RzJ10uZHMub3V0JCB8IGFzeW5jKT8ucHJldmlld3NcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlldyBbZGF0YV09XCJwcmV2aWV3XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWxpbmtlZC1vYmplY3RzJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgICAgICA8L243LWl0ZW0tcHJldmlldz5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIFNpbWlsYXIgT2JqZWN0cyAtLT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY29sbGFwc2UgbGV0LWlkPlxuICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2NvbGxhcHNlXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJuNy1idG4gbjctYnRuLWxpZ2h0XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm43LWljb24tYW5nbGUtcmlnaHRcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICduNy1pY29uLWFuZ2xlLXJpZ2h0JzogISFsYi5kYXRhU291cmNlLnNlY3Rpb25Db2xsYXBzZVN0YXRlW2lkXSxcbiAgICAgICAgICAgICAgICAnbjctaWNvbi1hbmdsZS1kb3duJzogIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbaWRdXG4gICAgICAgICAgICB9XCI+PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZXh0ZW5kZWR0cmVlPlxuICAgIDwhLS0gRXh0ZW5kZWQgVHJlZSAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzRXh0ZW5kZWRUcmVlXCIgaWQ9XCJleHRlbmRlZC10cmVlLWNvbnRhaW5lclwiIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tZXh0ZW5kZWQtdHJlZS1sb2FkZXJcIiAqbmdJZj1cIiEobGIud2lkZ2V0c1snYXctZXh0ZW5kZWQtdHJlZSddLmRzLm91dCQgfCBhc3luYylcIj5cbiAgICAgICAgICAgIDxuNy1sb2FkZXI+PC9uNy1sb2FkZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YXctZXh0ZW5kZWQtdHJlZVxuICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1leHRlbmRlZC10cmVlJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctZXh0ZW5kZWQtdHJlZSddLmVtaXRcIlxuICAgICAgICBbbGJdPVwibGJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2xsYXBzZTsgY29udGV4dDogeyAkaW1wbGljaXQ6ICdleHRlbmRlZC10cmVlJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYXctZXh0ZW5kZWQtdHJlZT5cbiAgICA8L3NlY3Rpb24+XG4gICAgPCEtLSBFTkQgLy8gRXh0ZW5kZWQgVHJlZSAtLT5cbjwvbmctdGVtcGxhdGU+Il19
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWRhLWxheW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRzdELE9BQU8sRUFDTCxjQUFjLEVBS2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsd0JBQXdCLElBQUksTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7OztBQU81RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsY0FBYztJQUN6RCxZQUNVLE1BQWMsRUFDZCxLQUFxQixFQUNyQixhQUFtQyxFQUNuQyxvQkFBaUQsRUFDakQsU0FBMkIsRUFDM0IsWUFBbUIsRUFDbkIsYUFBbUM7UUFHM0MsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBVDlELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUE2QjtRQUNqRCxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBTztRQUNuQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7SUFJN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxXQUFXO1FBQ25CLE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7cUhBckNVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLCtFQ2pCcEMsay9hQTRSYzs0RkQzUUQsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gIEFic3RyYWN0TGF5b3V0LFxuICBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTGF5b3V0c0NvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBNYWluU3RhdGVTZXJ2aWNlLFxuICBDb21tdW5pY2F0aW9uU2VydmljZVxufSBmcm9tICdAbmV0Ny9ib2lsZXJwbGF0ZS1jb21tb24nO1xuaW1wb3J0IHsgQXdQYXRyaW1vbmlvTGF5b3V0Q29uZmlnIGFzIGNvbmZpZyB9IGZyb20gJy4vc2NoZWRhLWxheW91dC5jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdy1zY2hlZGEtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NjaGVkYS1sYXlvdXQuaHRtbCcsXG59KVxuXG5leHBvcnQgY2xhc3MgQXdTY2hlZGFMYXlvdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExheW91dCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbGF5b3V0c0NvbmZpZ3VyYXRpb246IExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1haW5TdGF0ZTogTWFpblN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHRpdGxlU2VydmljZTogVGl0bGUsXG4gICAgcHJpdmF0ZSBjb21tdW5pY2F0aW9uOiBDb21tdW5pY2F0aW9uU2VydmljZSxcblxuICApIHtcbiAgICBzdXBlcihsYXlvdXRzQ29uZmlndXJhdGlvbi5nZXQoJ0F3UGF0cmltb25pb0xheW91dENvbmZpZycpIHx8IGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogT3B0aW9uYWwgdmFyaWFibGVzIHRoYXQgY2FuIGJlIGFjY2Vzc2VkIGZyb20gdGhlIGxheW91dCdzIGxvZ2ljLlxuICAgKiBJZiByZW1vdmVkLCB0aGV5IG11c3QgYWxzbyBiZSByZW1vdmVkIGZyb20gdGhlIGxheW91dCdzIERhdGFTb3VyY2UgZmlsZSxcbiAgICogYW5kIGZyb20gdGhpcyBmaWxlIGltcG9ydHMuXG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdFBheWxvYWQoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbmZpZ3VyYXRpb246IHRoaXMuY29uZmlndXJhdGlvbixcbiAgICAgIG1haW5TdGF0ZTogdGhpcy5tYWluU3RhdGUsXG4gICAgICByb3V0ZXI6IHRoaXMucm91dGVyLFxuICAgICAgcm91dGU6IHRoaXMucm91dGUsXG4gICAgICB0aXRsZVNlcnZpY2U6IHRoaXMudGl0bGVTZXJ2aWNlLFxuICAgICAgY29tbXVuaWNhdGlvbjogdGhpcy5jb21tdW5pY2F0aW9uLFxuICAgICAgb3B0aW9uczogdGhpcy5jb25maWcub3B0aW9ucyB8fCB7fSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5vbkluaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25EZXN0cm95KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhdy1zY2hlZGFcIlxuICAgICBpZD1cInNjaGVkYS1sYXlvdXRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19jb250ZW50IG43LXNpZGUtYXV0by1wYWRkaW5nIHN0aWNreS1wYXJlbnRcIlxuICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtY29sbGFwc2VkJyA6IGxiLmRhdGFTb3VyY2Uuc2lkZWJhckNvbGxhcHNlZCB9XCI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRyZWVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zY2hlZGEtd3JhcHBlclwiXG4gICAgICAgICAgICAgW2hpZGRlbl09XCJsYi5kYXRhU291cmNlLmNvbnRlbnRJc0xvYWRpbmdcIj5cblxuICAgICAgICAgICAgPG43LXNtYXJ0LWJyZWFkY3J1bWJzICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNCcmVhZGNydW1iXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtYnJlYWRjcnVtYnMnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1icmVhZGNydW1icyddLmVtaXRcIj5cbiAgICAgICAgICAgIDwvbjctc21hcnQtYnJlYWRjcnVtYnM+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbGIuZGF0YVNvdXJjZS5oYXNCcmVhZGNydW1iXCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX2Zha2UtYnJlYWRjcnVtYnNcIlxuICAgICAgICAgICAgICAgICAoY2xpY2spPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRJbm5lcigndG9nZ2xlc2lkZWJhcicsIHt9KVwiPlxuICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImF3LXNjaGVkYV9fZmFrZS1icmVhZGNydW1icy1vcGVuXCIgXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5zaWRlYmFyQ29sbGFwc2VkXCI+XG4gICAgICAgICAgICAgICAgICAgIENvbnN1bHRhIGlsIHBhdHJpbW9uaW9cbiAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbGIuZGF0YVNvdXJjZS5jdXJyZW50SWRcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9faW50cm8tdGV4dFwiXG4gICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwibGIuZGF0YVNvdXJjZS5lbXB0eUxhYmVsXCI+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdGl0bGUtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLnRpdGxlTmF2aWdhdGlvbiBhcyB0aXRsZU5hdlwiIGNsYXNzPVwiYXctc2NoZWRhX19wcmV2XCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibjctYnRuIG43LWJ0bi1saWdodFwiIFtyb3V0ZXJMaW5rXT1cInRpdGxlTmF2LnByZXY/LmhyZWYgPyBbdGl0bGVOYXYucHJldi5ocmVmXSA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidGl0bGVOYXYucHJldj8ubGFiZWwgfHwgJydcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1kaXNhYmxlZCc6ICF0aXRsZU5hdi5wcmV2Py5ocmVmIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibjctaWNvbi1hbmdsZS1sZWZ0XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuZG9jdW1lbnRUeXBlIGFzIGRvY3VtZW50VHlwZVwiIGNsYXNzPVwiYXctc2NoZWRhX19kb2N1bWVudC10eXBlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImRvY3VtZW50VHlwZS5pY29uXCIgY2xhc3M9XCJhdy1zY2hlZGFfX2RvY3VtZW50LXR5cGUtaWNvbiB7eyBkb2N1bWVudFR5cGUuaWNvbiB9fVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXctc2NoZWRhX19kb2N1bWVudC10eXBlLWxhYmVsXCI+e3sgZG9jdW1lbnRUeXBlLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWlubmVyLXRpdGxlIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbm5lci10aXRsZSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgICAgICA8L243LWlubmVyLXRpdGxlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLnRpdGxlTmF2aWdhdGlvbiBhcyB0aXRsZU5hdlwiIGNsYXNzPVwiYXctc2NoZWRhX19uZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibjctYnRuIG43LWJ0bi1saWdodFwiIFtyb3V0ZXJMaW5rXT1cInRpdGxlTmF2Lm5leHQ/LmhyZWYgPyBbdGl0bGVOYXYubmV4dC5ocmVmXSA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidGl0bGVOYXYubmV4dD8ubGFiZWwgfHwgJydcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1kaXNhYmxlZCc6ICF0aXRsZU5hdi5uZXh0Py5ocmVmIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibjctaWNvbi1hbmdsZS1yaWdodFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDwhLS0gRW1wdHkgc3RhdGUgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxiLmRhdGFTb3VyY2UuaGFzQ29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlbXB0eVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS0gQ29udGVudCBzZWN0aW9ucyAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS0gRXh0ZW5kZWQgdHJlZSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJleHRlbmRlZHRyZWVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RyZWU+XG4gICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdHJlZSBzdGlja3ktdGFyZ2V0XCJcbiAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLXN0aWNreSc6IGxiLmRhdGFTb3VyY2Uuc2lkZWJhcklzU3RpY2t5IH1cIj5cbiAgICAgICAgPG43LXNpZGViYXItaGVhZGVyIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNpZGViYXItaGVhZGVyJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNpZGViYXItaGVhZGVyJ10uZW1pdFwiPjwvbjctc2lkZWJhci1oZWFkZXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3RyZWUtY29udGVudC1sb2FkaW5nXCJcbiAgICAgICAgICAgICAqbmdJZj1cIiEobGIud2lkZ2V0c1snYXctdHJlZSddLmRzLm91dCQgfCBhc3luYylcIj5cbiAgICAgICAgICAgIDxuNy1jb250ZW50LXBsYWNlaG9sZGVyICpuZ0Zvcj1cImxldCBuIG9mIFswLDEsMiwzXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tzOiBbe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzOiAndHJlZS1wbGFjZWhvbGRlci1pdGVtJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCI+PC9uNy1jb250ZW50LXBsYWNlaG9sZGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdHJlZS1jb250ZW50XCJcbiAgICAgICAgICAgICAoY2xpY2spPVwibGIuZXZlbnRIYW5kbGVyLmVtaXRPdXRlcigndHJlZXBvc2l0aW9uJywgJGV2ZW50KVwiXG4gICAgICAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtYXgtaGVpZ2h0JzogbGIuZGF0YVNvdXJjZS50cmVlTWF4SGVpZ2h0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvdmVyZmxvdyc6ICdhdXRvJ1xuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgPG43LXRyZWUgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctdHJlZSddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy10cmVlJ10uZW1pdFwiXG4gICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFsYi5kYXRhU291cmNlLnNpZGViYXJDb2xsYXBzZWRcIj5cbiAgICAgICAgICAgIDwvbjctdHJlZT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2VtcHR5PlxuICAgIDxzZWN0aW9uIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uIGF3LXNjaGVkYV9fZW1wdHlcIlxuICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwibGIuZGF0YVNvdXJjZS5lbXB0eVN0YXRlU3RyaW5nXCI+XG4gICAgPC9zZWN0aW9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDwhLS0gRGlnaXRhbCBPYmplY3Qgc2VsZWN0aW9uIGRyb3Bkb3duIC0tPlxuICAgIDxzZWN0aW9uIGNsYXNzPVwiYXctc2NoZWRhX19kaWdpdGFsLW9iamVjdC1kcm9wZG93blwiXG4gICAgICAgICAgICAqbmdJZj1cIihcbiAgICAgICAgICAgICAgICBsYi5kYXRhU291cmNlLmhhc0RpZ2l0YWxPYmplY3RzIFxuICAgICAgICAgICAgICAgICYmIGxiLmRhdGFTb3VyY2UuZGlnaXRhbE9iamVjdHMubGVuZ3RoID4gMVxuICAgICAgICAgICAgKVwiPlxuICAgICAgICA8cCBjbGFzcz1cImF3LXNjaGVkYV9fZGlnaXRhbC1vYmplY3QtZHJvcGRvd24tbGFiZWxcIj5cbiAgICAgICAgICAgIFNlbGV6aW9uYSBsJ29nZ2V0dG8gZGlnaXRhbGUgZGEgdmlzdWFsaXp6YXJlOlxuICAgICAgICA8L3A+XG4gICAgICAgIDxhdy1zY2hlZGEtZHJvcGRvd24gXG4gICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1kcm9wZG93biddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1kcm9wZG93biddLmVtaXRcIj5cbiAgICAgICAgPC9hdy1zY2hlZGEtZHJvcGRvd24+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIERpZ2l0YWwgT2JqZWN0IHNlbGVjdGlvbiBkcm9wZG93biAtLT5cblxuICAgIDwhLS0gRGlnaXRhbCBPYmplY3RzOiBpbWFnZXMsIElJUCwgUERGcywgZXh0ZXJuYWwgbGlua3MgLS0+XG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmN1cnJlbnREaWdpdGFsT2JqZWN0IGFzICRkb1wiIFxuICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fbWVkaWEgYXctc2NoZWRhX197eyAkZG8udHlwZSB9fVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCIkZG8udHlwZVwiPlxuICAgICAgICAgICAgPCEtLSBJTUFHRSBWSUVXRVIgKElJUCkgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2VzLWlpcCdcIj5cbiAgICAgICAgICAgICAgICA8YXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZW1pdFwiPjwvYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvcj5cbiAgICAgICAgICAgICAgICA8bjctaW1hZ2Utdmlld2VyIFxuICAgICAgICAgICAgICAgIChjb250ZXh0bWVudSk9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRleHRNZW51KClcIiBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UnXS5kcy5vdXQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICA8L243LWltYWdlLXZpZXdlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8IS0tIElNQUdFIFZJRVdFUiAoSUlJRikgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2VzLWlpaWYnXCI+XG4gICAgICAgICAgICAgICAgPGF3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3IgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmVtaXRcIj48L2F3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3I+XG4gICAgICAgICAgICAgICAgPG43LWltYWdlLXZpZXdlciBcbiAgICAgICAgICAgICAgICAoY29udGV4dG1lbnUpPVwibGIuZGF0YVNvdXJjZS5oYXNDb250ZXh0TWVudSgpXCIgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlJ10uZHMub3V0JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgPC9uNy1pbWFnZS12aWV3ZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPCEtLSBJTUFHRSBWSUVXRVIgKFNpbXBsZToganBnLCBwbmcpIC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ltYWdlcy1zaW1wbGUnXCI+XG4gICAgICAgICAgICAgICAgPGF3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3IgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciddLmVtaXRcIj48L2F3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3I+XG4gICAgICAgICAgICAgICAgPG43LWltYWdlLXZpZXdlciBcbiAgICAgICAgICAgICAgICAoY29udGV4dG1lbnUpPVwibGIuZGF0YVNvdXJjZS5oYXNDb250ZXh0TWVudSgpXCJcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UnXS5kcy5vdXQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICA8L243LWltYWdlLXZpZXdlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIFxuICAgICAgICAgICAgPCEtLSBQREYgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIncGRmJ1wiPlxuICAgICAgICAgICAgICAgIDxhdy1wZGYtdmlld2VyIFxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1wZGYnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1wZGYnXS5lbWl0XCI+XG4gICAgICAgICAgICAgICAgPC9hdy1wZGYtdmlld2VyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgXG4gICAgICAgICAgICA8IS0tIEVYVEVSTkFMIFVSTCAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidleHRlcm5hbCdcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19leHRlcm5hbC11cmxcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJhdy1zY2hlZGFfX2V4dGVybmFsLXVybC1saW5rXCIgaHJlZj1cInt7ICRkby51cmwgfX1cIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICRkby5sYWJlbCB8fCBsYi5kYXRhU291cmNlLmV4dGVybmFsVXJsVGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuNy1pY29uLWV4dGVybmFsLWxpbmtcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3NlY3Rpb24+XG4gICAgPCEtLSBFTkQgLy8gRGlnaXRhbCBPYmplY3RzIC0tPlxuXG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmNvbnRlbnRQYXJ0cy5jb250ZW50XCIgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24gYXctc2NoZWRhX19kZXNjcmlwdGlvblwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwYXJ0IG9mIGxiLmRhdGFTb3VyY2UuY29udGVudFBhcnRzXCI+XG4gICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwicGFydC5jb250ZW50XCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cblxuICAgIDwhLS0gTWV0YWRhdGEgLS0+XG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmhhc01ldGFkYXRhXCIgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24gYXctc2NoZWRhX19tZXRhZGF0YVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uLXRpdGxlLXdyYXBwZXJcIiAoY2xpY2spPVwibGIuZGF0YVNvdXJjZS5vblNlY3Rpb25Db2xsYXBzZSgnbWV0YWRhdGEnKVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbGxhcHNlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogJ21ldGFkYXRhJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19pbm5lci10aXRsZVwiXG4gICAgICAgICAgICAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5tZXRhZGF0YVNlY3Rpb25UaXRsZVwiPlxuICAgICAgICAgICAgICAgIHt7bGIuZGF0YVNvdXJjZS5tZXRhZGF0YVNlY3Rpb25UaXRsZX19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgW2hpZGRlbl09XCIhIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbJ21ldGFkYXRhJ11cIiBcbiAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tY29udGVudC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8bjctbWV0YWRhdGEtdmlld2VyIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1tZXRhZGF0YSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgPC9uNy1tZXRhZGF0YS12aWV3ZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBNZXRhZGF0YSAtLT5cblxuICAgIDwhLS0gUmVsYXRlZCBlbnRpdGllcyAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzUmVsYXRlZEVudGl0aWVzXCJcbiAgICAgICAgICAgICBpZD1cInJlbGF0ZWQtaXRlbS1jb250YWluZXJcIlxuICAgICAgICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uIGF3LXNjaGVkYV9fcmVsYXRlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uLXRpdGxlLXdyYXBwZXJcIiAoY2xpY2spPVwibGIuZGF0YVNvdXJjZS5vblNlY3Rpb25Db2xsYXBzZSgncmVsYXRlZC1lbnRpdGllcycpXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sbGFwc2U7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiAncmVsYXRlZC1lbnRpdGllcycgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9faW5uZXItdGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7e2xiLmRhdGFTb3VyY2UucmVsYXRlZEVudGl0aWVzSGVhZGVyfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbaGlkZGVuXT1cIiEhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVsncmVsYXRlZC1lbnRpdGllcyddXCIgXG4gICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19yZWxhdGVkLWl0ZW1zIGF3LWl0ZW0tcHJldmlldy1saXN0IG43LWdyaWQtMlwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcHJldmlldyBvZiAobGIud2lkZ2V0c1snYXctcmVsYXRlZC1lbnRpdGllcyddLmRzLm91dCQgfCBhc3luYyk/LnByZXZpZXdzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuNy1pdGVtLXByZXZpZXcgW2RhdGFdPVwicHJldmlld1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctcmVsYXRlZC1lbnRpdGllcyddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9uNy1pdGVtLXByZXZpZXc+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gUmVsYXRpb24gLS0+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctcmVsYXRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicHJldmlldy5yZWxhdGlvbj8udmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXJlbGF0aW9uX19kZXNjcmlwdGlvblwiPlRpcG8gZGkgcmVsYXppb25lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1yZWxhdGlvbl9fa2V5XCI+e3twcmV2aWV3LnJlbGF0aW9uLmtleX19PC9zcGFuPjogLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctcmVsYXRpb25fX3ZhbHVlXCI+e3twcmV2aWV3LnJlbGF0aW9uLnZhbHVlfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBSZWxhdGVkIGVudGl0aWVzIC0tPlxuXG4gICAgPCEtLSBTaW1pbGFyIE9iamVjdHMgLS0+XG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmhhc1NpbWlsYXJJdGVtc1wiXG4gICAgaWQ9XCJyZWxhdGVkLWl0ZW0tY29udGFpbmVyXCJcbiAgICBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbiBhdy1zY2hlZGFfX3JlbGF0ZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbi10aXRsZS13cmFwcGVyXCIgKGNsaWNrKT1cImxiLmRhdGFTb3VyY2Uub25TZWN0aW9uQ29sbGFwc2UoJ3NpbWlsYXItaXRlbXMnKVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbGxhcHNlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogJ3NpbWlsYXItaXRlbXMnIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2lubmVyLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAge3tsYi5kYXRhU291cmNlLnNpbWlsYXJJdGVtc1NlY3Rpb25UaXRsZX19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgW2hpZGRlbl09XCIhIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbJ3NpbWlsYXItaXRlbXMnXVwiIFxuICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fcmVsYXRlZC1pdGVtcyBhdy1pdGVtLXByZXZpZXctbGlzdCBuNy1ncmlkLTJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHByZXZpZXcgb2YgKGxiLndpZGdldHNbJ2F3LWxpbmtlZC1vYmplY3RzJ10uZHMub3V0JCB8IGFzeW5jKT8ucHJldmlld3NcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlldyBbZGF0YV09XCJwcmV2aWV3XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LWxpbmtlZC1vYmplY3RzJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgICAgICA8L243LWl0ZW0tcHJldmlldz5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIFNpbWlsYXIgT2JqZWN0cyAtLT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY29sbGFwc2UgbGV0LWlkPlxuICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2NvbGxhcHNlXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJuNy1idG4gbjctYnRuLWxpZ2h0XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm43LWljb24tYW5nbGUtcmlnaHRcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICduNy1pY29uLWFuZ2xlLXJpZ2h0JzogISFsYi5kYXRhU291cmNlLnNlY3Rpb25Db2xsYXBzZVN0YXRlW2lkXSxcbiAgICAgICAgICAgICAgICAnbjctaWNvbi1hbmdsZS1kb3duJzogIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbaWRdXG4gICAgICAgICAgICB9XCI+PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZXh0ZW5kZWR0cmVlPlxuICAgIDwhLS0gRXh0ZW5kZWQgVHJlZSAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzRXh0ZW5kZWRUcmVlXCIgaWQ9XCJleHRlbmRlZC10cmVlLWNvbnRhaW5lclwiIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tZXh0ZW5kZWQtdHJlZS1sb2FkZXJcIiAqbmdJZj1cIiEobGIud2lkZ2V0c1snYXctZXh0ZW5kZWQtdHJlZSddLmRzLm91dCQgfCBhc3luYylcIj5cbiAgICAgICAgICAgIDxuNy1sb2FkZXI+PC9uNy1sb2FkZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YXctZXh0ZW5kZWQtdHJlZVxuICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1leHRlbmRlZC10cmVlJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctZXh0ZW5kZWQtdHJlZSddLmVtaXRcIlxuICAgICAgICBbbGJdPVwibGJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2xsYXBzZTsgY29udGV4dDogeyAkaW1wbGljaXQ6ICdleHRlbmRlZC10cmVlJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYXctZXh0ZW5kZWQtdHJlZT5cbiAgICA8L3NlY3Rpb24+XG4gICAgPCEtLSBFTkQgLy8gRXh0ZW5kZWQgVHJlZSAtLT5cbjwvbmctdGVtcGxhdGU+Il19
|