@net7/boilerplate-arianna 3.7.3 → 3.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/index.mjs +2 -1
- package/esm2020/lib/components/scheda-image-navigator/scheda-image-navigator.mjs +22 -0
- package/esm2020/lib/config-types/arianna/layouts.mjs +1 -1
- package/esm2020/lib/data-sources/index.mjs +2 -1
- package/esm2020/lib/data-sources/scheda-image-navigator.ds.mjs +82 -0
- package/esm2020/lib/data-sources/scheda-image.ds.mjs +11 -2
- package/esm2020/lib/event-handlers/index.mjs +2 -1
- package/esm2020/lib/event-handlers/scheda-image-navigator.eh.mjs +18 -0
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.config.mjs +2 -1
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.ds.mjs +11 -3
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.mjs +7 -6
- package/esm2020/lib/n7-boilerplate-arianna.module.mjs +7 -3
- package/fesm2015/net7-boilerplate-arianna.mjs +148 -7
- package/fesm2015/net7-boilerplate-arianna.mjs.map +1 -1
- package/fesm2020/net7-boilerplate-arianna.mjs +146 -7
- package/fesm2020/net7-boilerplate-arianna.mjs.map +1 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/scheda-image-navigator/scheda-image-navigator.d.ts +17 -0
- package/lib/config-types/arianna/layouts.d.ts +6 -0
- package/lib/data-sources/index.d.ts +1 -0
- package/lib/data-sources/scheda-image-navigator.ds.d.ts +16 -0
- package/lib/data-sources/scheda-image.ds.d.ts +2 -0
- package/lib/event-handlers/index.d.ts +1 -0
- package/lib/event-handlers/scheda-image-navigator.eh.d.ts +6 -0
- package/lib/n7-boilerplate-arianna.module.d.ts +7 -6
- package/package.json +1 -1
- package/src/lib/styles/arianna/components/_scheda-image-navigator.scss +51 -0
|
@@ -8,9 +8,10 @@ import * as i3 from "@angular/platform-browser";
|
|
|
8
8
|
import * as i4 from "../../components/smart-breadcrumbs/smart-breadcrumbs";
|
|
9
9
|
import * as i5 from "@net7/components";
|
|
10
10
|
import * as i6 from "../../components/scheda-dropdown/scheda-dropdown";
|
|
11
|
-
import * as i7 from "../../components/
|
|
12
|
-
import * as i8 from "../../components/
|
|
13
|
-
import * as i9 from "
|
|
11
|
+
import * as i7 from "../../components/scheda-image-navigator/scheda-image-navigator";
|
|
12
|
+
import * as i8 from "../../components/pdf-viewer/pdf-viewer";
|
|
13
|
+
import * as i9 from "../../components/extended-tree/extended-tree";
|
|
14
|
+
import * as i10 from "@angular/common";
|
|
14
15
|
export class AwSchedaLayoutComponent extends AbstractLayout {
|
|
15
16
|
constructor(router, route, configuration, layoutsConfiguration, mainState, titleService, communication) {
|
|
16
17
|
super(layoutsConfiguration.get('AwPatrimonioLayoutConfig') || config);
|
|
@@ -46,9 +47,9 @@ export class AwSchedaLayoutComponent extends AbstractLayout {
|
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
49
|
AwSchedaLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", 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 });
|
|
49
|
-
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 [ngClass]=\"{ \n 'navigation-hidden': !$do.hasNavigation\n }\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\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 <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 <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: i5.ImageViewerComponent, selector: "n7-image-viewer", inputs: ["data", "emit"] }, { type: i7.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: i8.ExtendedTreeComponent, selector: "aw-extended-tree", inputs: ["data", "emit", "lb"] }], directives: [{ type: i9.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i9.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: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i9.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i9.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "async": i9.AsyncPipe } });
|
|
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 [ngClass]=\"{ \n 'navigation-hidden': !($do.hasNavigation$ | async)\n }\">\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 } });
|
|
50
51
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AwSchedaLayoutComponent, decorators: [{
|
|
51
52
|
type: Component,
|
|
52
|
-
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 [ngClass]=\"{ \n 'navigation-hidden': !$do.hasNavigation\n }\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\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 <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 <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>" }]
|
|
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 [ngClass]=\"{ \n 'navigation-hidden': !($do.hasNavigation$ | async)\n }\">\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>" }]
|
|
53
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 }]; } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWRhLWxheW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRzdELE9BQU8sRUFDTCxjQUFjLEVBS2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsd0JBQXdCLElBQUksTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7O0FBTzVFLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxjQUFjO0lBQ3pELFlBQ1UsTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLGFBQW1DLEVBQ25DLG9CQUFpRCxFQUNqRCxTQUEyQixFQUMzQixZQUFtQixFQUNuQixhQUFtQztRQUczQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLElBQUksTUFBTSxDQUFDLENBQUM7UUFUOUQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQTZCO1FBQ2pELGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLGlCQUFZLEdBQVosWUFBWSxDQUFPO1FBQ25CLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtJQUk3QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLFdBQVc7UUFDbkIsT0FBTztZQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFO1NBQ25DLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDOztvSEFyQ1UsdUJBQXVCO3dHQUF2Qix1QkFBdUIsK0VDakJwQyx1NVpBc1JjOzJGRHJRRCx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0Usa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyLCBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RMYXlvdXQsXG4gIENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBMYXlvdXRzQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gIE1haW5TdGF0ZVNlcnZpY2UsXG4gIENvbW11bmljYXRpb25TZXJ2aWNlXG59IGZyb20gJ0BuZXQ3L2JvaWxlcnBsYXRlLWNvbW1vbic7XG5pbXBvcnQgeyBBd1BhdHJpbW9uaW9MYXlvdXRDb25maWcgYXMgY29uZmlnIH0gZnJvbSAnLi9zY2hlZGEtbGF5b3V0LmNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F3LXNjaGVkYS1sYXlvdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2NoZWRhLWxheW91dC5odG1sJyxcbn0pXG5cbmV4cG9ydCBjbGFzcyBBd1NjaGVkYUxheW91dENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0TGF5b3V0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYXlvdXRzQ29uZmlndXJhdGlvbjogTGF5b3V0c0NvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbWFpblN0YXRlOiBNYWluU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGl0bGVTZXJ2aWNlOiBUaXRsZSxcbiAgICBwcml2YXRlIGNvbW11bmljYXRpb246IENvbW11bmljYXRpb25TZXJ2aWNlLFxuXG4gICkge1xuICAgIHN1cGVyKGxheW91dHNDb25maWd1cmF0aW9uLmdldCgnQXdQYXRyaW1vbmlvTGF5b3V0Q29uZmlnJykgfHwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcHRpb25hbCB2YXJpYWJsZXMgdGhhdCBjYW4gYmUgYWNjZXNzZWQgZnJvbSB0aGUgbGF5b3V0J3MgbG9naWMuXG4gICAqIElmIHJlbW92ZWQsIHRoZXkgbXVzdCBhbHNvIGJlIHJlbW92ZWQgZnJvbSB0aGUgbGF5b3V0J3MgRGF0YVNvdXJjZSBmaWxlLFxuICAgKiBhbmQgZnJvbSB0aGlzIGZpbGUgaW1wb3J0cy5cbiAgICovXG4gIHByb3RlY3RlZCBpbml0UGF5bG9hZCgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY29uZmlndXJhdGlvbjogdGhpcy5jb25maWd1cmF0aW9uLFxuICAgICAgbWFpblN0YXRlOiB0aGlzLm1haW5TdGF0ZSxcbiAgICAgIHJvdXRlcjogdGhpcy5yb3V0ZXIsXG4gICAgICByb3V0ZTogdGhpcy5yb3V0ZSxcbiAgICAgIHRpdGxlU2VydmljZTogdGhpcy50aXRsZVNlcnZpY2UsXG4gICAgICBjb21tdW5pY2F0aW9uOiB0aGlzLmNvbW11bmljYXRpb24sXG4gICAgICBvcHRpb25zOiB0aGlzLmNvbmZpZy5vcHRpb25zIHx8IHt9LFxuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm9uSW5pdCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5vbkRlc3Ryb3koKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF3LXNjaGVkYVwiXG4gICAgIGlkPVwic2NoZWRhLWxheW91dFwiPlxuICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2NvbnRlbnQgbjctc2lkZS1hdXRvLXBhZGRpbmcgc3RpY2t5LXBhcmVudFwiXG4gICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1jb2xsYXBzZWQnIDogbGIuZGF0YVNvdXJjZS5zaWRlYmFyQ29sbGFwc2VkIH1cIj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidHJlZVwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3NjaGVkYS13cmFwcGVyXCJcbiAgICAgICAgICAgICBbaGlkZGVuXT1cImxiLmRhdGFTb3VyY2UuY29udGVudElzTG9hZGluZ1wiPlxuXG4gICAgICAgICAgICA8bjctc21hcnQtYnJlYWRjcnVtYnMgKm5nSWY9XCJsYi5kYXRhU291cmNlLmhhc0JyZWFkY3J1bWJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1icmVhZGNydW1icyddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWJyZWFkY3J1bWJzJ10uZW1pdFwiPlxuICAgICAgICAgICAgPC9uNy1zbWFydC1icmVhZGNydW1icz5cblxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFsYi5kYXRhU291cmNlLmhhc0JyZWFkY3J1bWJcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fZmFrZS1icmVhZGNydW1ic1wiXG4gICAgICAgICAgICAgICAgIChjbGljayk9XCJsYi5ldmVudEhhbmRsZXIuZW1pdElubmVyKCd0b2dnbGVzaWRlYmFyJywge30pXCI+XG4gICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYXctc2NoZWRhX19mYWtlLWJyZWFkY3J1bWJzLW9wZW5cIiBcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJsYi5kYXRhU291cmNlLnNpZGViYXJDb2xsYXBzZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgQ29uc3VsdGEgaWwgcGF0cmltb25pb1xuICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFsYi5kYXRhU291cmNlLmN1cnJlbnRJZFwiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19pbnRyby10ZXh0XCJcbiAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJsYi5kYXRhU291cmNlLmVtcHR5TGFiZWxcIj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX190aXRsZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxiLmRhdGFTb3VyY2UudGl0bGVOYXZpZ2F0aW9uIGFzIHRpdGxlTmF2XCIgY2xhc3M9XCJhdy1zY2hlZGFfX3ByZXZcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJuNy1idG4gbjctYnRuLWxpZ2h0XCIgW3JvdXRlckxpbmtdPVwidGl0bGVOYXYucHJldj8uaHJlZiA/IFt0aXRsZU5hdi5wcmV2LmhyZWZdIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ0aXRsZU5hdi5wcmV2Py5sYWJlbCB8fCAnJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWRpc2FibGVkJzogIXRpdGxlTmF2LnByZXY/LmhyZWYgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuNy1pY29uLWFuZ2xlLWxlZnRcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX190aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5kb2N1bWVudFR5cGUgYXMgZG9jdW1lbnRUeXBlXCIgY2xhc3M9XCJhdy1zY2hlZGFfX2RvY3VtZW50LXR5cGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZG9jdW1lbnRUeXBlLmljb25cIiBjbGFzcz1cImF3LXNjaGVkYV9fZG9jdW1lbnQtdHlwZS1pY29uIHt7IGRvY3VtZW50VHlwZS5pY29uIH19XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhdy1zY2hlZGFfX2RvY3VtZW50LXR5cGUtbGFiZWxcIj57eyBkb2N1bWVudFR5cGUubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8bjctaW5uZXItdGl0bGUgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWlubmVyLXRpdGxlJ10uZHMub3V0JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbjctaW5uZXItdGl0bGU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxiLmRhdGFTb3VyY2UudGl0bGVOYXZpZ2F0aW9uIGFzIHRpdGxlTmF2XCIgY2xhc3M9XCJhdy1zY2hlZGFfX25leHRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJuNy1idG4gbjctYnRuLWxpZ2h0XCIgW3JvdXRlckxpbmtdPVwidGl0bGVOYXYubmV4dD8uaHJlZiA/IFt0aXRsZU5hdi5uZXh0LmhyZWZdIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ0aXRsZU5hdi5uZXh0Py5sYWJlbCB8fCAnJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWRpc2FibGVkJzogIXRpdGxlTmF2Lm5leHQ/LmhyZWYgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuNy1pY29uLWFuZ2xlLXJpZ2h0XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPCEtLSBFbXB0eSBzdGF0ZSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbGIuZGF0YVNvdXJjZS5oYXNDb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVtcHR5XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPCEtLSBDb250ZW50IHNlY3Rpb25zIC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzQ29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPCEtLSBFeHRlbmRlZCB0cmVlIC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImV4dGVuZGVkdHJlZVwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjdHJlZT5cbiAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX190cmVlIHN0aWNreS10YXJnZXRcIlxuICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtc3RpY2t5JzogbGIuZGF0YVNvdXJjZS5zaWRlYmFySXNTdGlja3kgfVwiPlxuICAgICAgICA8bjctc2lkZWJhci1oZWFkZXIgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2lkZWJhci1oZWFkZXInXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2lkZWJhci1oZWFkZXInXS5lbWl0XCI+PC9uNy1zaWRlYmFyLWhlYWRlcj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fdHJlZS1jb250ZW50LWxvYWRpbmdcIlxuICAgICAgICAgICAgICpuZ0lmPVwiIShsYi53aWRnZXRzWydhdy10cmVlJ10uZHMub3V0JCB8IGFzeW5jKVwiPlxuICAgICAgICAgICAgPG43LWNvbnRlbnQtcGxhY2Vob2xkZXIgKm5nRm9yPVwibGV0IG4gb2YgWzAsMSwyLDNdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3M6IFt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXM6ICd0cmVlLXBsYWNlaG9sZGVyLWl0ZW0nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfV1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cIj48L243LWNvbnRlbnQtcGxhY2Vob2xkZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX190cmVlLWNvbnRlbnRcIlxuICAgICAgICAgICAgIChjbGljayk9XCJsYi5ldmVudEhhbmRsZXIuZW1pdE91dGVyKCd0cmVlcG9zaXRpb24nLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21heC1oZWlnaHQnOiBsYi5kYXRhU291cmNlLnRyZWVNYXhIZWlnaHQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ292ZXJmbG93JzogJ2F1dG8nXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCI+XG4gICAgICAgICAgICA8bjctdHJlZSBbZGF0YV09XCJsYi53aWRnZXRzWydhdy10cmVlJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXRyZWUnXS5lbWl0XCJcbiAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWxiLmRhdGFTb3VyY2Uuc2lkZWJhckNvbGxhcHNlZFwiPlxuICAgICAgICAgICAgPC9uNy10cmVlPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24gYXctc2NoZWRhX19lbXB0eVwiXG4gICAgICAgICAgICAgW2lubmVySFRNTF09XCJsYi5kYXRhU291cmNlLmVtcHR5U3RhdGVTdHJpbmdcIj5cbiAgICA8L3NlY3Rpb24+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NvbnRlbnQ+XG4gICAgPCEtLSBEaWdpdGFsIE9iamVjdCBzZWxlY3Rpb24gZHJvcGRvd24gLS0+XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJhdy1zY2hlZGFfX2RpZ2l0YWwtb2JqZWN0LWRyb3Bkb3duXCJcbiAgICAgICAgICAgICpuZ0lmPVwiKFxuICAgICAgICAgICAgICAgIGxiLmRhdGFTb3VyY2UuaGFzRGlnaXRhbE9iamVjdHMgXG4gICAgICAgICAgICAgICAgJiYgbGIuZGF0YVNvdXJjZS5kaWdpdGFsT2JqZWN0cy5sZW5ndGggPiAxXG4gICAgICAgICAgICApXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiYXctc2NoZWRhX19kaWdpdGFsLW9iamVjdC1kcm9wZG93bi1sYWJlbFwiPlxuICAgICAgICAgICAgU2VsZXppb25hIGwnb2dnZXR0byBkaWdpdGFsZSBkYSB2aXN1YWxpenphcmU6XG4gICAgICAgIDwvcD5cbiAgICAgICAgPGF3LXNjaGVkYS1kcm9wZG93biBcbiAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWRyb3Bkb3duJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLWRyb3Bkb3duJ10uZW1pdFwiPlxuICAgICAgICA8L2F3LXNjaGVkYS1kcm9wZG93bj5cbiAgICA8L3NlY3Rpb24+XG4gICAgPCEtLSBFTkQgLy8gRGlnaXRhbCBPYmplY3Qgc2VsZWN0aW9uIGRyb3Bkb3duIC0tPlxuXG4gICAgPCEtLSBEaWdpdGFsIE9iamVjdHM6IGltYWdlcywgSUlQLCBQREZzLCBleHRlcm5hbCBsaW5rcyAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuY3VycmVudERpZ2l0YWxPYmplY3QgYXMgJGRvXCIgXG4gICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19tZWRpYSBhdy1zY2hlZGFfX3t7ICRkby50eXBlIH19XCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyBcbiAgICAgICAgICAgICduYXZpZ2F0aW9uLWhpZGRlbic6ICEkZG8uaGFzTmF2aWdhdGlvblxuICAgICAgICB9XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIiRkby50eXBlXCI+XG4gICAgICAgICAgICA8IS0tIElNQUdFIFZJRVdFUiAoSUlQKSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbWFnZXMtaWlwJ1wiPlxuICAgICAgICAgICAgICAgIDxuNy1pbWFnZS12aWV3ZXIgXG4gICAgICAgICAgICAgICAgKGNvbnRleHRtZW51KT1cImxiLmRhdGFTb3VyY2UuaGFzQ29udGV4dE1lbnUoKVwiIFxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbWFnZSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDwvbjctaW1hZ2Utdmlld2VyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS0gSU1BR0UgVklFV0VSIChJSUlGKSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbWFnZXMtaWlpZidcIj5cbiAgICAgICAgICAgICAgICA8bjctaW1hZ2Utdmlld2VyIFxuICAgICAgICAgICAgICAgIChjb250ZXh0bWVudSk9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRleHRNZW51KClcIiBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UnXS5kcy5vdXQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICA8L243LWltYWdlLXZpZXdlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8IS0tIElNQUdFIFZJRVdFUiAoU2ltcGxlOiBqcGcsIHBuZykgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2VzLXNpbXBsZSdcIj5cbiAgICAgICAgICAgICAgICA8bjctaW1hZ2Utdmlld2VyIFxuICAgICAgICAgICAgICAgIChjb250ZXh0bWVudSk9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRleHRNZW51KClcIlxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbWFnZSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDwvbjctaW1hZ2Utdmlld2VyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgXG4gICAgICAgICAgICA8IS0tIFBERiAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidwZGYnXCI+XG4gICAgICAgICAgICAgICAgPGF3LXBkZi12aWV3ZXIgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLXBkZiddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLXBkZiddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICA8L2F3LXBkZi12aWV3ZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICBcbiAgICAgICAgICAgIDwhLS0gRVhURVJOQUwgVVJMIC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2V4dGVybmFsJ1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2V4dGVybmFsLXVybFwiPlxuICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cImF3LXNjaGVkYV9fZXh0ZXJuYWwtdXJsLWxpbmtcIiBocmVmPVwie3sgJGRvLnVybCB9fVwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJGRvLmxhYmVsIHx8IGxiLmRhdGFTb3VyY2UuZXh0ZXJuYWxVcmxUZXh0IH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm43LWljb24tZXh0ZXJuYWwtbGlua1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBEaWdpdGFsIE9iamVjdHMgLS0+XG5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuY29udGVudFBhcnRzLmNvbnRlbnRcIiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbiBhdy1zY2hlZGFfX2Rlc2NyaXB0aW9uXCI+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHBhcnQgb2YgbGIuZGF0YVNvdXJjZS5jb250ZW50UGFydHNcIj5cbiAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJwYXJ0LmNvbnRlbnRcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuXG4gICAgPCEtLSBNZXRhZGF0YSAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzTWV0YWRhdGFcIiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbiBhdy1zY2hlZGFfX21ldGFkYXRhXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tdGl0bGUtd3JhcHBlclwiIChjbGljayk9XCJsYi5kYXRhU291cmNlLm9uU2VjdGlvbkNvbGxhcHNlKCdtZXRhZGF0YScpXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sbGFwc2U7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiAnbWV0YWRhdGEnIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2lubmVyLXRpdGxlXCJcbiAgICAgICAgICAgICAgICAgKm5nSWY9XCJsYi5kYXRhU291cmNlLm1ldGFkYXRhU2VjdGlvblRpdGxlXCI+XG4gICAgICAgICAgICAgICAge3tsYi5kYXRhU291cmNlLm1ldGFkYXRhU2VjdGlvblRpdGxlfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbaGlkZGVuXT1cIiEhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVsnbWV0YWRhdGEnXVwiIFxuICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbi1jb250ZW50LXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxuNy1tZXRhZGF0YS12aWV3ZXIgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLW1ldGFkYXRhJ10uZHMub3V0JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICA8L243LW1ldGFkYXRhLXZpZXdlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIE1ldGFkYXRhIC0tPlxuXG4gICAgPCEtLSBSZWxhdGVkIGVudGl0aWVzIC0tPlxuICAgIDxzZWN0aW9uICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNSZWxhdGVkRW50aXRpZXNcIlxuICAgICAgICAgICAgIGlkPVwicmVsYXRlZC1pdGVtLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24gYXctc2NoZWRhX19yZWxhdGVkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tdGl0bGUtd3JhcHBlclwiIChjbGljayk9XCJsYi5kYXRhU291cmNlLm9uU2VjdGlvbkNvbGxhcHNlKCdyZWxhdGVkLWVudGl0aWVzJylcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2xsYXBzZTsgY29udGV4dDogeyAkaW1wbGljaXQ6ICdyZWxhdGVkLWVudGl0aWVzJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19pbm5lci10aXRsZVwiPlxuICAgICAgICAgICAgICAgIHt7bGIuZGF0YVNvdXJjZS5yZWxhdGVkRW50aXRpZXNIZWFkZXJ9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IFtoaWRkZW5dPVwiISFsYi5kYXRhU291cmNlLnNlY3Rpb25Db2xsYXBzZVN0YXRlWydyZWxhdGVkLWVudGl0aWVzJ11cIiBcbiAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX3JlbGF0ZWQtaXRlbXMgYXctaXRlbS1wcmV2aWV3LWxpc3QgbjctZ3JpZC0yXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwcmV2aWV3IG9mIChsYi53aWRnZXRzWydhdy1yZWxhdGVkLWVudGl0aWVzJ10uZHMub3V0JCB8IGFzeW5jKT8ucHJldmlld3NcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlldyBbZGF0YV09XCJwcmV2aWV3XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1yZWxhdGVkLWVudGl0aWVzJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgICAgICA8L243LWl0ZW0tcHJldmlldz5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBSZWxhdGlvbiAtLT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1yZWxhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJwcmV2aWV3LnJlbGF0aW9uPy52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctcmVsYXRpb25fX2Rlc2NyaXB0aW9uXCI+VGlwbyBkaSByZWxhemlvbmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXJlbGF0aW9uX19rZXlcIj57e3ByZXZpZXcucmVsYXRpb24ua2V5fX08L3NwYW4+OiAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1yZWxhdGlvbl9fdmFsdWVcIj57e3ByZXZpZXcucmVsYXRpb24udmFsdWV9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIFJlbGF0ZWQgZW50aXRpZXMgLS0+XG5cbiAgICA8IS0tIFNpbWlsYXIgT2JqZWN0cyAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzU2ltaWxhckl0ZW1zXCJcbiAgICBpZD1cInJlbGF0ZWQtaXRlbS1jb250YWluZXJcIlxuICAgIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uIGF3LXNjaGVkYV9fcmVsYXRlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uLXRpdGxlLXdyYXBwZXJcIiAoY2xpY2spPVwibGIuZGF0YVNvdXJjZS5vblNlY3Rpb25Db2xsYXBzZSgnc2ltaWxhci1pdGVtcycpXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sbGFwc2U7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiAnc2ltaWxhci1pdGVtcycgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9faW5uZXItdGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7e2xiLmRhdGFTb3VyY2Uuc2ltaWxhckl0ZW1zU2VjdGlvblRpdGxlfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbaGlkZGVuXT1cIiEhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVsnc2ltaWxhci1pdGVtcyddXCIgXG4gICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19yZWxhdGVkLWl0ZW1zIGF3LWl0ZW0tcHJldmlldy1saXN0IG43LWdyaWQtMlwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcHJldmlldyBvZiAobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5wcmV2aWV3c1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICA8bjctaXRlbS1wcmV2aWV3IFtkYXRhXT1cInByZXZpZXdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5lbWl0XCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L3NlY3Rpb24+XG4gICAgPCEtLSBFTkQgLy8gU2ltaWxhciBPYmplY3RzIC0tPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb2xsYXBzZSBsZXQtaWQ+XG4gICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fY29sbGFwc2VcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm43LWJ0biBuNy1idG4tbGlnaHRcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibjctaWNvbi1hbmdsZS1yaWdodFwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ243LWljb24tYW5nbGUtcmlnaHQnOiAhIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbaWRdLFxuICAgICAgICAgICAgICAgICduNy1pY29uLWFuZ2xlLWRvd24nOiAhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVtpZF1cbiAgICAgICAgICAgIH1cIj48L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNleHRlbmRlZHRyZWU+XG4gICAgPCEtLSBFeHRlbmRlZCBUcmVlIC0tPlxuICAgIDxzZWN0aW9uICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNFeHRlbmRlZFRyZWVcIiBpZD1cImV4dGVuZGVkLXRyZWUtY29udGFpbmVyXCIgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbi1leHRlbmRlZC10cmVlLWxvYWRlclwiICpuZ0lmPVwiIShsYi53aWRnZXRzWydhdy1leHRlbmRlZC10cmVlJ10uZHMub3V0JCB8IGFzeW5jKVwiPlxuICAgICAgICAgICAgPG43LWxvYWRlcj48L243LWxvYWRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxhdy1leHRlbmRlZC10cmVlXG4gICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWV4dGVuZGVkLXRyZWUnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1leHRlbmRlZC10cmVlJ10uZW1pdFwiXG4gICAgICAgIFtsYl09XCJsYlwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbGxhcHNlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogJ2V4dGVuZGVkLXRyZWUnIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hdy1leHRlbmRlZC10cmVlPlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBFeHRlbmRlZCBUcmVlIC0tPlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWRhLWxheW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWFyaWFubmEvc3JjL2xpYi9sYXlvdXRzL3NjaGVkYS1sYXlvdXQvc2NoZWRhLWxheW91dC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRzdELE9BQU8sRUFDTCxjQUFjLEVBS2YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsd0JBQXdCLElBQUksTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7OztBQU81RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsY0FBYztJQUN6RCxZQUNVLE1BQWMsRUFDZCxLQUFxQixFQUNyQixhQUFtQyxFQUNuQyxvQkFBaUQsRUFDakQsU0FBMkIsRUFDM0IsWUFBbUIsRUFDbkIsYUFBbUM7UUFHM0MsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBVDlELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUE2QjtRQUNqRCxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBTztRQUNuQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7SUFJN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxXQUFXO1FBQ25CLE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7b0hBckNVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLCtFQ2pCcEMsdWxiQStSYzsyRkQ5UUQsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gIEFic3RyYWN0TGF5b3V0LFxuICBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTGF5b3V0c0NvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBNYWluU3RhdGVTZXJ2aWNlLFxuICBDb21tdW5pY2F0aW9uU2VydmljZVxufSBmcm9tICdAbmV0Ny9ib2lsZXJwbGF0ZS1jb21tb24nO1xuaW1wb3J0IHsgQXdQYXRyaW1vbmlvTGF5b3V0Q29uZmlnIGFzIGNvbmZpZyB9IGZyb20gJy4vc2NoZWRhLWxheW91dC5jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdy1zY2hlZGEtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NjaGVkYS1sYXlvdXQuaHRtbCcsXG59KVxuXG5leHBvcnQgY2xhc3MgQXdTY2hlZGFMYXlvdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExheW91dCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbGF5b3V0c0NvbmZpZ3VyYXRpb246IExheW91dHNDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1haW5TdGF0ZTogTWFpblN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHRpdGxlU2VydmljZTogVGl0bGUsXG4gICAgcHJpdmF0ZSBjb21tdW5pY2F0aW9uOiBDb21tdW5pY2F0aW9uU2VydmljZSxcblxuICApIHtcbiAgICBzdXBlcihsYXlvdXRzQ29uZmlndXJhdGlvbi5nZXQoJ0F3UGF0cmltb25pb0xheW91dENvbmZpZycpIHx8IGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogT3B0aW9uYWwgdmFyaWFibGVzIHRoYXQgY2FuIGJlIGFjY2Vzc2VkIGZyb20gdGhlIGxheW91dCdzIGxvZ2ljLlxuICAgKiBJZiByZW1vdmVkLCB0aGV5IG11c3QgYWxzbyBiZSByZW1vdmVkIGZyb20gdGhlIGxheW91dCdzIERhdGFTb3VyY2UgZmlsZSxcbiAgICogYW5kIGZyb20gdGhpcyBmaWxlIGltcG9ydHMuXG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdFBheWxvYWQoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbmZpZ3VyYXRpb246IHRoaXMuY29uZmlndXJhdGlvbixcbiAgICAgIG1haW5TdGF0ZTogdGhpcy5tYWluU3RhdGUsXG4gICAgICByb3V0ZXI6IHRoaXMucm91dGVyLFxuICAgICAgcm91dGU6IHRoaXMucm91dGUsXG4gICAgICB0aXRsZVNlcnZpY2U6IHRoaXMudGl0bGVTZXJ2aWNlLFxuICAgICAgY29tbXVuaWNhdGlvbjogdGhpcy5jb21tdW5pY2F0aW9uLFxuICAgICAgb3B0aW9uczogdGhpcy5jb25maWcub3B0aW9ucyB8fCB7fSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5vbkluaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25EZXN0cm95KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhdy1zY2hlZGFcIlxuICAgICBpZD1cInNjaGVkYS1sYXlvdXRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19jb250ZW50IG43LXNpZGUtYXV0by1wYWRkaW5nIHN0aWNreS1wYXJlbnRcIlxuICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtY29sbGFwc2VkJyA6IGxiLmRhdGFTb3VyY2Uuc2lkZWJhckNvbGxhcHNlZCB9XCI+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+XG4gICAgPHNlY3Rpb24gKm5nSWY9XCJsYi5kYXRhU291cmNlLmN1cnJlbnREaWdpdGFsT2JqZWN0IGFzICRkb1wiIFxuICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fbWVkaWEgYXctc2NoZWRhX197eyAkZG8udHlwZSB9fVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgXG4gICAgICAgICAgICAnbmF2aWdhdGlvbi1oaWRkZW4nOiAhKCRkby5oYXNOYXZpZ2F0aW9uJCB8IGFzeW5jKVxuICAgICAgICB9XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIiRkby50eXBlXCI+XG4gICAgICAgICAgICA8IS0tIElNQUdFIFZJRVdFUiAoSUlQKSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbWFnZXMtaWlwJ1wiPlxuICAgICAgICAgICAgICAgIDxhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yIFxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3InXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbWFnZS1uYXZpZ2F0b3InXS5lbWl0XCI+PC9hdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yPlxuICAgICAgICAgICAgICAgIDxuNy1pbWFnZS12aWV3ZXIgXG4gICAgICAgICAgICAgICAgKGNvbnRleHRtZW51KT1cImxiLmRhdGFTb3VyY2UuaGFzQ29udGV4dE1lbnUoKVwiIFxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbWFnZSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDwvbjctaW1hZ2Utdmlld2VyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS0gSU1BR0UgVklFV0VSIChJSUlGKSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbWFnZXMtaWlpZidcIj5cbiAgICAgICAgICAgICAgICA8YXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZW1pdFwiPjwvYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvcj5cbiAgICAgICAgICAgICAgICA8bjctaW1hZ2Utdmlld2VyIFxuICAgICAgICAgICAgICAgIChjb250ZXh0bWVudSk9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRleHRNZW51KClcIiBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UnXS5kcy5vdXQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICA8L243LWltYWdlLXZpZXdlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8IS0tIElNQUdFIFZJRVdFUiAoU2ltcGxlOiBqcGcsIHBuZykgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1hZ2VzLXNpbXBsZSdcIj5cbiAgICAgICAgICAgICAgICA8YXctc2NoZWRhLWltYWdlLW5hdmlnYXRvciBcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJ10uZW1pdFwiPjwvYXctc2NoZWRhLWltYWdlLW5hdmlnYXRvcj5cbiAgICAgICAgICAgICAgICA8bjctaW1hZ2Utdmlld2VyIFxuICAgICAgICAgICAgICAgIChjb250ZXh0bWVudSk9XCJsYi5kYXRhU291cmNlLmhhc0NvbnRleHRNZW51KClcIlxuICAgICAgICAgICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LXNjaGVkYS1pbWFnZSddLmRzLm91dCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDwvbjctaW1hZ2Utdmlld2VyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgXG4gICAgICAgICAgICA8IS0tIFBERiAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidwZGYnXCI+XG4gICAgICAgICAgICAgICAgPGF3LXBkZi12aWV3ZXIgXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLXBkZiddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLXBkZiddLmVtaXRcIj5cbiAgICAgICAgICAgICAgICA8L2F3LXBkZi12aWV3ZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICBcbiAgICAgICAgICAgIDwhLS0gRVhURVJOQUwgVVJMIC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2V4dGVybmFsJ1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2V4dGVybmFsLXVybFwiPlxuICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cImF3LXNjaGVkYV9fZXh0ZXJuYWwtdXJsLWxpbmtcIiBocmVmPVwie3sgJGRvLnVybCB9fVwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJGRvLmxhYmVsIHx8IGxiLmRhdGFTb3VyY2UuZXh0ZXJuYWxVcmxUZXh0IH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm43LWljb24tZXh0ZXJuYWwtbGlua1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBEaWdpdGFsIE9iamVjdHMgLS0+XG5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuY29udGVudFBhcnRzLmNvbnRlbnRcIiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbiBhdy1zY2hlZGFfX2Rlc2NyaXB0aW9uXCI+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHBhcnQgb2YgbGIuZGF0YVNvdXJjZS5jb250ZW50UGFydHNcIj5cbiAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJwYXJ0LmNvbnRlbnRcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuXG4gICAgPCEtLSBNZXRhZGF0YSAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzTWV0YWRhdGFcIiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbiBhdy1zY2hlZGFfX21ldGFkYXRhXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tdGl0bGUtd3JhcHBlclwiIChjbGljayk9XCJsYi5kYXRhU291cmNlLm9uU2VjdGlvbkNvbGxhcHNlKCdtZXRhZGF0YScpXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sbGFwc2U7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiAnbWV0YWRhdGEnIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX2lubmVyLXRpdGxlXCJcbiAgICAgICAgICAgICAgICAgKm5nSWY9XCJsYi5kYXRhU291cmNlLm1ldGFkYXRhU2VjdGlvblRpdGxlXCI+XG4gICAgICAgICAgICAgICAge3tsYi5kYXRhU291cmNlLm1ldGFkYXRhU2VjdGlvblRpdGxlfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbaGlkZGVuXT1cIiEhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVsnbWV0YWRhdGEnXVwiIFxuICAgICAgICBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbi1jb250ZW50LXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxuNy1tZXRhZGF0YS12aWV3ZXIgW2RhdGFdPVwibGIud2lkZ2V0c1snYXctc2NoZWRhLW1ldGFkYXRhJ10uZHMub3V0JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICA8L243LW1ldGFkYXRhLXZpZXdlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIE1ldGFkYXRhIC0tPlxuXG4gICAgPCEtLSBSZWxhdGVkIGVudGl0aWVzIC0tPlxuICAgIDxzZWN0aW9uICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNSZWxhdGVkRW50aXRpZXNcIlxuICAgICAgICAgICAgIGlkPVwicmVsYXRlZC1pdGVtLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24gYXctc2NoZWRhX19yZWxhdGVkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb24tdGl0bGUtd3JhcHBlclwiIChjbGljayk9XCJsYi5kYXRhU291cmNlLm9uU2VjdGlvbkNvbGxhcHNlKCdyZWxhdGVkLWVudGl0aWVzJylcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2xsYXBzZTsgY29udGV4dDogeyAkaW1wbGljaXQ6ICdyZWxhdGVkLWVudGl0aWVzJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19pbm5lci10aXRsZVwiPlxuICAgICAgICAgICAgICAgIHt7bGIuZGF0YVNvdXJjZS5yZWxhdGVkRW50aXRpZXNIZWFkZXJ9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IFtoaWRkZW5dPVwiISFsYi5kYXRhU291cmNlLnNlY3Rpb25Db2xsYXBzZVN0YXRlWydyZWxhdGVkLWVudGl0aWVzJ11cIiBcbiAgICAgICAgY2xhc3M9XCJhdy1zY2hlZGFfX3JlbGF0ZWQtaXRlbXMgYXctaXRlbS1wcmV2aWV3LWxpc3QgbjctZ3JpZC0yXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwcmV2aWV3IG9mIChsYi53aWRnZXRzWydhdy1yZWxhdGVkLWVudGl0aWVzJ10uZHMub3V0JCB8IGFzeW5jKT8ucHJldmlld3NcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlldyBbZGF0YV09XCJwcmV2aWV3XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1yZWxhdGVkLWVudGl0aWVzJ10uZW1pdFwiPlxuICAgICAgICAgICAgICAgICAgICA8L243LWl0ZW0tcHJldmlldz5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBSZWxhdGlvbiAtLT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1yZWxhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJwcmV2aWV3LnJlbGF0aW9uPy52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctcmVsYXRpb25fX2Rlc2NyaXB0aW9uXCI+VGlwbyBkaSByZWxhemlvbmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiYXctaXRlbS1wcmV2aWV3LXJlbGF0aW9uX19rZXlcIj57e3ByZXZpZXcucmVsYXRpb24ua2V5fX08L3NwYW4+OiAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImF3LWl0ZW0tcHJldmlldy1yZWxhdGlvbl9fdmFsdWVcIj57e3ByZXZpZXcucmVsYXRpb24udmFsdWV9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICAgIDwhLS0gRU5EIC8vIFJlbGF0ZWQgZW50aXRpZXMgLS0+XG5cbiAgICA8IS0tIFNpbWlsYXIgT2JqZWN0cyAtLT5cbiAgICA8c2VjdGlvbiAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzU2ltaWxhckl0ZW1zXCJcbiAgICBpZD1cInJlbGF0ZWQtaXRlbS1jb250YWluZXJcIlxuICAgIGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uIGF3LXNjaGVkYV9fcmVsYXRlZFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXctc2NoZWRhX19zZWN0aW9uLXRpdGxlLXdyYXBwZXJcIiAoY2xpY2spPVwibGIuZGF0YVNvdXJjZS5vblNlY3Rpb25Db2xsYXBzZSgnc2ltaWxhci1pdGVtcycpXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sbGFwc2U7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiAnc2ltaWxhci1pdGVtcycgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9faW5uZXItdGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7e2xiLmRhdGFTb3VyY2Uuc2ltaWxhckl0ZW1zU2VjdGlvblRpdGxlfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbaGlkZGVuXT1cIiEhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVsnc2ltaWxhci1pdGVtcyddXCIgXG4gICAgICAgIGNsYXNzPVwiYXctc2NoZWRhX19yZWxhdGVkLWl0ZW1zIGF3LWl0ZW0tcHJldmlldy1saXN0IG43LWdyaWQtMlwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcHJldmlldyBvZiAobGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5kcy5vdXQkIHwgYXN5bmMpPy5wcmV2aWV3c1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdy1pdGVtLXByZXZpZXctd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICA8bjctaXRlbS1wcmV2aWV3IFtkYXRhXT1cInByZXZpZXdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snYXctbGlua2VkLW9iamVjdHMnXS5lbWl0XCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L3NlY3Rpb24+XG4gICAgPCEtLSBFTkQgLy8gU2ltaWxhciBPYmplY3RzIC0tPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb2xsYXBzZSBsZXQtaWQ+XG4gICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fY29sbGFwc2VcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm43LWJ0biBuNy1idG4tbGlnaHRcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibjctaWNvbi1hbmdsZS1yaWdodFwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ243LWljb24tYW5nbGUtcmlnaHQnOiAhIWxiLmRhdGFTb3VyY2Uuc2VjdGlvbkNvbGxhcHNlU3RhdGVbaWRdLFxuICAgICAgICAgICAgICAgICduNy1pY29uLWFuZ2xlLWRvd24nOiAhbGIuZGF0YVNvdXJjZS5zZWN0aW9uQ29sbGFwc2VTdGF0ZVtpZF1cbiAgICAgICAgICAgIH1cIj48L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNleHRlbmRlZHRyZWU+XG4gICAgPCEtLSBFeHRlbmRlZCBUcmVlIC0tPlxuICAgIDxzZWN0aW9uICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNFeHRlbmRlZFRyZWVcIiBpZD1cImV4dGVuZGVkLXRyZWUtY29udGFpbmVyXCIgY2xhc3M9XCJhdy1zY2hlZGFfX3NlY3Rpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF3LXNjaGVkYV9fc2VjdGlvbi1leHRlbmRlZC10cmVlLWxvYWRlclwiICpuZ0lmPVwiIShsYi53aWRnZXRzWydhdy1leHRlbmRlZC10cmVlJ10uZHMub3V0JCB8IGFzeW5jKVwiPlxuICAgICAgICAgICAgPG43LWxvYWRlcj48L243LWxvYWRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxhdy1leHRlbmRlZC10cmVlXG4gICAgICAgIFtkYXRhXT1cImxiLndpZGdldHNbJ2F3LWV4dGVuZGVkLXRyZWUnXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICBbZW1pdF09XCJsYi53aWRnZXRzWydhdy1leHRlbmRlZC10cmVlJ10uZW1pdFwiXG4gICAgICAgIFtsYl09XCJsYlwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbGxhcHNlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogJ2V4dGVuZGVkLXRyZWUnIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hdy1leHRlbmRlZC10cmVlPlxuICAgIDwvc2VjdGlvbj5cbiAgICA8IS0tIEVORCAvLyBFeHRlbmRlZCBUcmVlIC0tPlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
@@ -23,6 +23,7 @@ import { PdfViewerComponent } from './components/pdf-viewer/pdf-viewer';
|
|
|
23
23
|
import { SchedaDropdownComponent } from './components/scheda-dropdown/scheda-dropdown';
|
|
24
24
|
import { SmartBreadcrumbsComponent } from './components/smart-breadcrumbs/smart-breadcrumbs';
|
|
25
25
|
import { ExtendedTreeComponent } from './components/extended-tree/extended-tree';
|
|
26
|
+
import { SchedaImageNavigatorComponent } from './components/scheda-image-navigator/scheda-image-navigator';
|
|
26
27
|
// LIBS
|
|
27
28
|
import apolloConfig from './config/apollo.config';
|
|
28
29
|
import * as i0 from "@angular/core";
|
|
@@ -43,6 +44,7 @@ const COMPONENTS = [
|
|
|
43
44
|
SchedaDropdownComponent,
|
|
44
45
|
SmartBreadcrumbsComponent,
|
|
45
46
|
ExtendedTreeComponent,
|
|
47
|
+
SchedaImageNavigatorComponent,
|
|
46
48
|
];
|
|
47
49
|
export class N7BoilerplateAriannaModule {
|
|
48
50
|
constructor(initStatus, config) {
|
|
@@ -71,7 +73,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
|
|
|
71
73
|
PdfViewerComponent,
|
|
72
74
|
SchedaDropdownComponent,
|
|
73
75
|
SmartBreadcrumbsComponent,
|
|
74
|
-
ExtendedTreeComponent
|
|
76
|
+
ExtendedTreeComponent,
|
|
77
|
+
SchedaImageNavigatorComponent], imports: [CommonModule,
|
|
75
78
|
RouterModule,
|
|
76
79
|
DvComponentsLibModule,
|
|
77
80
|
N7BoilerplateCommonModule,
|
|
@@ -89,7 +92,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
|
|
|
89
92
|
PdfViewerComponent,
|
|
90
93
|
SchedaDropdownComponent,
|
|
91
94
|
SmartBreadcrumbsComponent,
|
|
92
|
-
ExtendedTreeComponent
|
|
95
|
+
ExtendedTreeComponent,
|
|
96
|
+
SchedaImageNavigatorComponent] });
|
|
93
97
|
N7BoilerplateAriannaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: N7BoilerplateAriannaModule, imports: [[
|
|
94
98
|
CommonModule,
|
|
95
99
|
RouterModule,
|
|
@@ -111,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
111
115
|
exports: COMPONENTS
|
|
112
116
|
}]
|
|
113
117
|
}], ctorParameters: function () { return [{ type: i0.ApplicationInitStatus }, { type: i1.ConfigurationService }]; } });
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibjctYm9pbGVycGxhdGUtYXJpYW5uYS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1hcmlhbm5hL3NyYy9saWIvbjctYm9pbGVycGxhdGUtYXJpYW5uYS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQXlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyw2REFBNkQ7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBd0IsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRSxVQUFVO0FBQ1YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDNUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEYsYUFBYTtBQUNiLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzNHLE9BQU87QUFFUCxPQUFPLFlBQVksTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRWxELE1BQU0sVUFBVSxHQUFHO0lBQ2pCLDJCQUEyQjtJQUMzQix1QkFBdUI7SUFDdkIsd0JBQXdCO0lBQ3hCLHdCQUF3QjtJQUN4QixxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLHVCQUF1QjtJQUN2Qix1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLDJCQUEyQjtJQUMzQixtQkFBbUI7SUFDbkIsa0JBQWtCO0lBQ2xCLHVCQUF1QjtJQUN2Qix5QkFBeUI7SUFDekIscUJBQXFCO0lBQ3JCLDZCQUE2QjtDQUM5QixDQUFDO0FBYUYsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxZQUNFLFVBQWlDLEVBQ2pDLE1BQTRCO1FBRTVCLGdDQUFnQztRQUNoQyx5Q0FBeUM7UUFDekMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQy9CLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDbEQsTUFBTSxFQUFFLGVBQWUsRUFBRSxHQUFHLGFBQWEsQ0FBQztZQUMxQyxhQUFhLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxZQUFZLENBQUM7WUFDL0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt1SEFiVSwwQkFBMEI7d0hBQTFCLDBCQUEwQixpQkE3QnJDLDJCQUEyQjtRQUMzQix1QkFBdUI7UUFDdkIsd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFDckIsb0JBQW9CO1FBQ3BCLHVCQUF1QjtRQUN2Qix1QkFBdUI7UUFDdkIseUJBQXlCO1FBQ3pCLDJCQUEyQjtRQUMzQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIscUJBQXFCO1FBQ3JCLDZCQUE2QixhQU0zQixZQUFZO1FBQ1osWUFBWTtRQUNaLHFCQUFxQjtRQUNyQix5QkFBeUI7UUFDekIsMEJBQTBCLGFBekI1QiwyQkFBMkI7UUFDM0IsdUJBQXVCO1FBQ3ZCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIscUJBQXFCO1FBQ3JCLG9CQUFvQjtRQUNwQix1QkFBdUI7UUFDdkIsdUJBQXVCO1FBQ3ZCLHlCQUF5QjtRQUN6QiwyQkFBMkI7UUFDM0IsbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIseUJBQXlCO1FBQ3pCLHFCQUFxQjtRQUNyQiw2QkFBNkI7d0hBY2xCLDBCQUEwQixZQVQ1QjtZQUNQLFlBQVk7WUFDWixZQUFZO1lBQ1oscUJBQXFCO1lBQ3JCLHlCQUF5QjtZQUN6QiwwQkFBMEI7U0FDM0I7MkZBR1UsMEJBQTBCO2tCQVh0QyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxVQUFVO29CQUN4QixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixZQUFZO3dCQUNaLHFCQUFxQjt3QkFDckIseUJBQXlCO3dCQUN6QiwwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRSxVQUFVO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIE1PRFVMRVNcbmltcG9ydCB7IE5nTW9kdWxlLCBBcHBsaWNhdGlvbkluaXRTdGF0dXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRHZDb21wb25lbnRzTGliTW9kdWxlIH0gZnJvbSAnQG5ldDcvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBON0JvaWxlcnBsYXRlQ29tbW9uTW9kdWxlLCBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJ0BuZXQ3L2JvaWxlcnBsYXRlLWNvbW1vbic7XG5pbXBvcnQgeyBOZ3hFeHRlbmRlZFBkZlZpZXdlck1vZHVsZSB9IGZyb20gJ25neC1leHRlbmRlZC1wZGYtdmlld2VyJztcbi8vIExBWU9VVFNcbmltcG9ydCB7IEF3Q29sbGVjdGlvbkxheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9jb2xsZWN0aW9uLWxheW91dC9jb2xsZWN0aW9uLWxheW91dCc7XG5pbXBvcnQgeyBBd0VudGl0YUxheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9lbnRpdGEtbGF5b3V0L2VudGl0YS1sYXlvdXQnO1xuaW1wb3J0IHsgQXdHYWxsZXJ5TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL2dhbGxlcnktbGF5b3V0L2dhbGxlcnktbGF5b3V0JztcbmltcG9ydCB7IEF3SG9tZUxheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9ob21lLWxheW91dC9ob21lLWxheW91dCc7XG5pbXBvcnQgeyBBd01hcExheW91dENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9tYXAtbGF5b3V0L21hcC1sYXlvdXQnO1xuaW1wb3J0IHsgQXdTY2hlZGFMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvc2NoZWRhLWxheW91dC9zY2hlZGEtbGF5b3V0JztcbmltcG9ydCB7IEF3U2VhcmNoTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL3NlYXJjaC1sYXlvdXQvc2VhcmNoLWxheW91dCc7XG5pbXBvcnQgeyBBd1RpbWVsaW5lTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL3RpbWVsaW5lLWxheW91dC90aW1lbGluZS1sYXlvdXQnO1xuLy8gQ09NUE9ORU5UU1xuaW1wb3J0IHsgQXdGYWNldHNXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2F3LWZhY2V0cy13cmFwcGVyL2F3LWZhY2V0cy13cmFwcGVyJztcbmltcG9ydCB7IEJ1YmJsZUNoYXJ0V3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9idWJibGUtY2hhcnQtd3JhcHBlci9idWJibGUtY2hhcnQtd3JhcHBlcic7XG5pbXBvcnQgeyBDaGFydFRpcHB5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYXJ0LXRpcHB5L2NoYXJ0LXRpcHB5JztcbmltcG9ydCB7IFBkZlZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wZGYtdmlld2VyL3BkZi12aWV3ZXInO1xuaW1wb3J0IHsgU2NoZWRhRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2NoZWRhLWRyb3Bkb3duL3NjaGVkYS1kcm9wZG93bic7XG5pbXBvcnQgeyBTbWFydEJyZWFkY3J1bWJzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWJyZWFkY3J1bWJzL3NtYXJ0LWJyZWFkY3J1bWJzJztcbmltcG9ydCB7IEV4dGVuZGVkVHJlZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9leHRlbmRlZC10cmVlL2V4dGVuZGVkLXRyZWUnO1xuaW1wb3J0IHsgU2NoZWRhSW1hZ2VOYXZpZ2F0b3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2NoZWRhLWltYWdlLW5hdmlnYXRvci9zY2hlZGEtaW1hZ2UtbmF2aWdhdG9yJztcbi8vIExJQlNcblxuaW1wb3J0IGFwb2xsb0NvbmZpZyBmcm9tICcuL2NvbmZpZy9hcG9sbG8uY29uZmlnJztcblxuY29uc3QgQ09NUE9ORU5UUyA9IFtcbiAgQXdDb2xsZWN0aW9uTGF5b3V0Q29tcG9uZW50LFxuICBBd0VudGl0YUxheW91dENvbXBvbmVudCxcbiAgQXdGYWNldHNXcmFwcGVyQ29tcG9uZW50LFxuICBBd0dhbGxlcnlMYXlvdXRDb21wb25lbnQsXG4gIEF3SG9tZUxheW91dENvbXBvbmVudCxcbiAgQXdNYXBMYXlvdXRDb21wb25lbnQsXG4gIEF3U2NoZWRhTGF5b3V0Q29tcG9uZW50LFxuICBBd1NlYXJjaExheW91dENvbXBvbmVudCxcbiAgQXdUaW1lbGluZUxheW91dENvbXBvbmVudCxcbiAgQnViYmxlQ2hhcnRXcmFwcGVyQ29tcG9uZW50LFxuICBDaGFydFRpcHB5Q29tcG9uZW50LFxuICBQZGZWaWV3ZXJDb21wb25lbnQsXG4gIFNjaGVkYURyb3Bkb3duQ29tcG9uZW50LFxuICBTbWFydEJyZWFkY3J1bWJzQ29tcG9uZW50LFxuICBFeHRlbmRlZFRyZWVDb21wb25lbnQsXG4gIFNjaGVkYUltYWdlTmF2aWdhdG9yQ29tcG9uZW50LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBDT01QT05FTlRTLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBEdkNvbXBvbmVudHNMaWJNb2R1bGUsXG4gICAgTjdCb2lsZXJwbGF0ZUNvbW1vbk1vZHVsZSxcbiAgICBOZ3hFeHRlbmRlZFBkZlZpZXdlck1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBDT01QT05FTlRTXG59KVxuZXhwb3J0IGNsYXNzIE43Qm9pbGVycGxhdGVBcmlhbm5hTW9kdWxlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgaW5pdFN0YXR1czogQXBwbGljYXRpb25Jbml0U3RhdHVzLFxuICAgIGNvbmZpZzogQ29uZmlndXJhdGlvblNlcnZpY2VcbiAgKSB7XG4gICAgLy8gYWRkIGFwb2xsbyBjb25maWcgb24gYXBwIGluaXRcbiAgICAvLyBub3RlOiB0aGlzIGlzIGp1c3QgZm9yIGFyaWFubmEqIHNpdGVzIVxuICAgIGluaXRTdGF0dXMuZG9uZVByb21pc2UudGhlbigoKSA9PiB7XG4gICAgICBjb25zdCBjb21tdW5pY2F0aW9uID0gY29uZmlnLmdldCgnY29tbXVuaWNhdGlvbicpO1xuICAgICAgY29uc3QgeyBkZWZhdWx0UHJvdmlkZXIgfSA9IGNvbW11bmljYXRpb247XG4gICAgICBjb21tdW5pY2F0aW9uLnByb3ZpZGVyc1tkZWZhdWx0UHJvdmlkZXJdLmNvbmZpZyA9IGFwb2xsb0NvbmZpZztcbiAgICAgIGNvbmZpZy5zZXQoJ2NvbW11bmljYXRpb24nLCBjb21tdW5pY2F0aW9uKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|