@eui/showcase 15.4.0 → 15.4.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/LICENSE +296 -296
- package/README.md +26 -26
- package/esm2020/eui-showcase.mjs +4 -4
- package/esm2020/index.mjs +3 -3
- package/esm2020/lib/components/doc-page/doc-page.component.mjs +357 -357
- package/esm2020/lib/components/doc-page-code/doc-page-code.component.mjs +27 -27
- package/esm2020/lib/components/doc-page-code-fab/doc-page-code-fab.component.mjs +39 -39
- package/esm2020/lib/components/doc-page-pattern/doc-page-pattern.component.mjs +114 -114
- package/esm2020/lib/components/doc-sample/doc-sample.component.mjs +158 -158
- package/esm2020/lib/components/doc-sample-api/doc-sample-api.component.mjs +11 -11
- package/esm2020/lib/components/doc-section/doc-section.component.mjs +27 -27
- package/esm2020/lib/components/doc-section-code/doc-section-code.component.mjs +106 -106
- package/esm2020/lib/components/eui-code-highlighter/eui-code-highlighter.component.mjs +21 -21
- package/esm2020/lib/components/index.mjs +13 -13
- package/esm2020/lib/components/lorem-ipsum/lorem-ipsum-sample.component.mjs +17 -17
- package/esm2020/lib/components/playground/playground.component.mjs +198 -198
- package/esm2020/lib/components/playground/stackblitz.files.mjs +210 -210
- package/esm2020/lib/eui-showcase.module.mjs +150 -150
- package/fesm2015/eui-showcase.mjs +1307 -1307
- package/fesm2015/eui-showcase.mjs.map +1 -1
- package/fesm2020/eui-showcase.mjs +1309 -1309
- package/fesm2020/eui-showcase.mjs.map +1 -1
- package/index.d.ts +2 -2
- package/lib/components/doc-page/doc-page.component.d.ts +90 -90
- package/lib/components/doc-page-code/doc-page-code.component.d.ts +8 -8
- package/lib/components/doc-page-code-fab/doc-page-code-fab.component.d.ts +15 -15
- package/lib/components/doc-page-pattern/doc-page-pattern.component.d.ts +43 -43
- package/lib/components/doc-sample/doc-sample.component.d.ts +45 -45
- package/lib/components/doc-sample-api/doc-sample-api.component.d.ts +5 -5
- package/lib/components/doc-section/doc-section.component.d.ts +10 -10
- package/lib/components/doc-section-code/doc-section-code.component.d.ts +44 -44
- package/lib/components/eui-code-highlighter/eui-code-highlighter.component.d.ts +9 -9
- package/lib/components/index.d.ts +12 -12
- package/lib/components/lorem-ipsum/lorem-ipsum-sample.component.d.ts +6 -6
- package/lib/components/playground/playground.component.d.ts +61 -61
- package/lib/components/playground/stackblitz.files.d.ts +15 -15
- package/lib/eui-showcase.module.d.ts +29 -29
- package/package.json +2 -2
|
@@ -1,114 +1,114 @@
|
|
|
1
|
-
/* eslint-disable max-len */
|
|
2
|
-
import { Component, HostBinding, ViewEncapsulation, Input, Directive, ContentChild, forwardRef, HostListener, } from '@angular/core';
|
|
3
|
-
import { BaseDirective } from '@eui/components/shared';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/platform-browser";
|
|
6
|
-
import * as i2 from "@angular/common";
|
|
7
|
-
import * as i3 from "@eui/components/eui-card";
|
|
8
|
-
import * as i4 from "@eui/components/eui-button";
|
|
9
|
-
import * as i5 from "@eui/components/eui-tabs";
|
|
10
|
-
import * as i6 from "@eui/components/eui-chip";
|
|
11
|
-
import * as i7 from "@eui/components/eui-badge";
|
|
12
|
-
import * as i8 from "@eui/components/eui-icon";
|
|
13
|
-
import * as i9 from "@eui/components/eui-label";
|
|
14
|
-
/* eslint-disable */
|
|
15
|
-
export class DocPagePatternSampleDirective {
|
|
16
|
-
}
|
|
17
|
-
/** @nocollapse */ DocPagePatternSampleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternSampleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
|
-
/** @nocollapse */ DocPagePatternSampleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DocPagePatternSampleDirective, selector: "docPagePatternSample", ngImport: i0 });
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternSampleDirective, decorators: [{
|
|
20
|
-
type: Directive,
|
|
21
|
-
args: [{ selector: 'docPagePatternSample' }]
|
|
22
|
-
}] });
|
|
23
|
-
export class DocPagePatternDocDirective {
|
|
24
|
-
}
|
|
25
|
-
/** @nocollapse */ DocPagePatternDocDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternDocDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
26
|
-
/** @nocollapse */ DocPagePatternDocDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DocPagePatternDocDirective, selector: "docPagePatternDoc", ngImport: i0 });
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternDocDirective, decorators: [{
|
|
28
|
-
type: Directive,
|
|
29
|
-
args: [{ selector: 'docPagePatternDoc' }]
|
|
30
|
-
}] });
|
|
31
|
-
export class DocPagePatternComponent extends BaseDirective {
|
|
32
|
-
constructor(sanitizer) {
|
|
33
|
-
super();
|
|
34
|
-
this.sanitizer = sanitizer;
|
|
35
|
-
this.docEntries = [];
|
|
36
|
-
this.dos = [];
|
|
37
|
-
this.donts = [];
|
|
38
|
-
this.topPosToStartShowing = 100;
|
|
39
|
-
this.tabSelectedIndex = 0;
|
|
40
|
-
}
|
|
41
|
-
get cssClasses() {
|
|
42
|
-
return [
|
|
43
|
-
super.getCssClasses('doc-page-pattern'),
|
|
44
|
-
].join(' ').trim();
|
|
45
|
-
}
|
|
46
|
-
checkScroll() {
|
|
47
|
-
const scrollPosition = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
|
|
48
|
-
if (scrollPosition >= this.topPosToStartShowing) {
|
|
49
|
-
this.isShowGoTop = true;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
this.isShowGoTop = false;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
ngOnInit() {
|
|
56
|
-
if (this.figmaEmbedSrc) {
|
|
57
|
-
this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(this.figmaEmbedSrc);
|
|
58
|
-
const iFrame = document.getElementById('iframe-figma');
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
onNavigateToCode(event) {
|
|
62
|
-
// eslint-disable-next-line max-len
|
|
63
|
-
const showcase = 'ux-patterns';
|
|
64
|
-
const sourceRootPath = `https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-${showcase}/browse/src/app/features/`;
|
|
65
|
-
window.open(sourceRootPath + this.sourceUrl, '_blank');
|
|
66
|
-
}
|
|
67
|
-
onTabSelect(event) {
|
|
68
|
-
this.tabSelectedIndex = event.index;
|
|
69
|
-
}
|
|
70
|
-
gotoTop() {
|
|
71
|
-
window.scroll({
|
|
72
|
-
top: 0,
|
|
73
|
-
left: 0,
|
|
74
|
-
behavior: 'smooth',
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
/** @nocollapse */ DocPagePatternComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
79
|
-
/** @nocollapse */ DocPagePatternComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DocPagePatternComponent, selector: "eui-showcase-doc-page-pattern", inputs: { id: "id", label: "label", anatomyImage: "anatomyImage", docEntries: "docEntries", dos: "dos", donts: "donts", sourceUrl: "sourceUrl", figmaUrl: "figmaUrl", figmaEmbedSrc: "figmaEmbedSrc" }, host: { listeners: { "window:scroll": "checkScroll()" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "sampleContent", first: true, predicate: i0.forwardRef(function () { return DocPagePatternSampleDirective; }), descendants: true }, { propertyName: "docContent", first: true, predicate: i0.forwardRef(function () { return DocPagePatternDocDirective; }), descendants: true }], usesInheritance: true, ngImport: i0, template: "<eui-tabs (tabSelect)=\"onTabSelect($event)\">\n <eui-tab>\n <euiTabLabel>Usage and documentation</euiTabLabel>\n <euiTabContent>\n <h2 class=\"eui-u-color-primary-100 eui-u-mb-none\">{{ label }}</h2>\n\n <h3>Information</h3>\n <ng-content select=\"docPagePatternDoc\"></ng-content>\n\n <ng-container *ngIf=\"figmaEmbedSrc; else screenshot\">\n <h3 class=\"eui-u-mt-2xl\">Figma design anatomy</h3>\n <iframe id=\"iframe-figma\" style=\"border: 1px solid rgba(0, 0, 0, 0.1)\" width=\"100%\" height=\"650\" [src]=\"urlSafe\"></iframe>\n </ng-container>\n <ng-template #screenshot>\n <ng-container *ngIf=\"figmaUrl !== 'PENDING_DS'\">\n <h3 class=\"eui-u-mt-2xl\">Anatomy</h3>\n <img\n src=\"assets/images/design-system/{{ anatomyImage }}\"\n alt=\"Design anatomy image\"\n width=\"90%\"\n class=\"eui-u-shadow-6 eui-u-mb-m\" />\n </ng-container>\n </ng-template>\n\n <ng-container *ngIf=\"docEntries.length !== 0\">\n <h3 class=\"eui-u-mt-2xl\">Design system references</h3>\n\n <eui-card *ngFor=\"let ref of docEntries\" class=\"eui-u-mb-m\" [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\">\n <eui-card-header>\n <eui-card-header-title>\n <div class=\"eui-u-flex\">\n <eui-badge *ngIf=\"ref?.id\" euiSizeXL class=\"eui-u-mr-s\">{{ ref.id }}</eui-badge>\n <span class=\"eui-u-font-size-l\">{{ ref.name }}</span>\n </div>\n </eui-card-header-title>\n <eui-card-header-right-content>\n <eui-chip [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\" class=\"eui-u-ml-m\">\n <span *ngIf=\"ref.mandatory\" euiLabel><strong> Mandatory </strong></span>\n <span *ngIf=\"!ref.mandatory\" euiLabel><strong> Optional </strong></span>\n </eui-chip>\n </eui-card-header-right-content>\n </eui-card-header>\n <eui-card-content>\n <h6 class=\"section-title eui-u-mt-none\"><strong>Description</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.description\"></div>\n\n <ng-container *ngIf=\"ref.whenToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenToUse\"></div>\n </ng-container>\n <ng-container *ngIf=\"ref.whenNotToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to not use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenNotToUse\"></div>\n </ng-container>\n <div class=\"row\">\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.dos && ref.dos.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"thumbs-up\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"success-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Do's</strong>\n </h6>\n <li *ngFor=\"let do of ref.dos\">{{ do }}</li>\n </ng-container>\n </div>\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.donts && ref.donts.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"hand-right\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"danger-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Dont's</strong>\n </h6>\n <li *ngFor=\"let dont of ref.donts\">{{ dont }}</li>\n </ng-container>\n </div>\n </div>\n </eui-card-content>\n </eui-card>\n </ng-container>\n\n <!-- <ng-container *ngIf=\"dos.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-success-100\">Do's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of dos\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container>\n\n <ng-container *ngIf=\"donts.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-danger-100\">Dont's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of donts\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container> -->\n\n <h3 class=\"eui-u-mt-2xl\">Figma resource</h3>\n <ng-container *ngIf=\"figmaUrl === 'PENDING_DS'; else figmaOK\">\n Pending Design system publication. Will be available in a future release.\n </ng-container>\n <ng-template #figmaOK>\n <eui-card>\n <eui-card-header>\n <eui-card-header-left-content>\n <img\n width=\"32\"\n height=\"32\"\n alt=\"Figma Logo\"\n src=\"data:image/png;base64,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\" />\n </eui-card-header-left-content>\n <eui-card-header-title>\n <a\n class=\"h5 eui-u-text-link-external\"\n href=\"https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}\"\n target=\"blank\">\n <span class=\"eui-u-color-grey-75\">Layout component /</span>\n {{ label }}\n </a>\n </eui-card-header-title>\n </eui-card-header>\n </eui-card>\n </ng-template>\n </euiTabContent>\n </eui-tab>\n <eui-tab>\n <euiTabLabel>Pattern sample</euiTabLabel>\n <euiTabContent>\n <ng-content select=\"docPagePatternSample\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <euiTabsRightContent>\n <button type=\"button\" euiButton euiAccent euiSizeS (click)=\"onNavigateToCode($event)\">\n <span class=\"eui-icon eui-icon-code\"></span>\n View sources\n </button>\n </euiTabsRightContent>\n</eui-tabs>\n\n<button\n type=\"button\"\n *ngIf=\"isShowGoTop && tabSelectedIndex === 0\"\n euiButton\n euiIconButton\n euiOutline\n euiRounded\n euiSizeL\n class=\"eui-button-fixed eui-u-shadow-8\"\n (click)=\"gotoTop()\"\n title=\"Goto Top\"\n aria-label=\"Goto Top\">\n <!-- \uD83D\uDC46 -->\n <eui-icon-svg icon=\"eui-arrow-up\" set=\"eui\" size=\"l\" fillColor=\"grey-50\"></eui-icon-svg>\n</button>\n", styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:1.5rem;background-color:#f0f0f0}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .eui-tabs .eui-tabs__items{background-color:#f0f0f0}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:#fff}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:1rem}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .html{display:block;line-height:var(--eui-base-line-height);position:relative;text-align:left}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.EuiCardComponent, selector: "eui-card", inputs: ["e2eAttr", "euiSelected", "euiCollapsible", "euiCollapsed", "euiUrgent", "euiNoShadow", "euiNoContentPadding", "euiHoverable"], outputs: ["onCollapsed", "collapse"] }, { kind: "component", type: i3.EuiCardHeaderComponent, selector: "eui-card-header", inputs: ["avatarUrl", "expandLabel", "collapseLabel", "iconClass", "avatarDerscription", "iconDescription", "isHeaderBodyOnly", "hasHeaderClickToggle", "hasBottomExpander", "hasFullTitle", "isHeaderMultilines"], outputs: ["collapse"] }, { kind: "component", type: i3.EuiCardHeaderTitleComponent, selector: "eui-card-header-title" }, { kind: "component", type: i3.EuiCardContentComponent, selector: "eui-card-content" }, { kind: "component", type: i3.EuiCardHeaderLeftContentComponent, selector: "eui-card-header-left-content" }, { kind: "component", type: i3.EuiCardHeaderRightContentComponent, selector: "eui-card-header-right-content" }, { kind: "component", type: i4.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i5.EuiTabsComponent, selector: "eui-tabs", inputs: ["styleClass", "tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClosed", "tabSelected", "tabClose", "tabSelect"] }, { kind: "component", type: i5.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "directive", type: i5.EuiTabsRightContentTagDirective, selector: "euiTabsRightContent" }, { kind: "component", type: i5.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "component", type: i5.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i6.EuiChipComponent, selector: "eui-chip, span[euiChip], li[euiChip]", inputs: ["euiInternalId", "tooltipMessage", "id", "data", "isChipRemovable", "isSquared"], outputs: ["remove"] }, { kind: "component", type: i7.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["aria-label"] }, { kind: "component", type: i8.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i9.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
80
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternComponent, decorators: [{
|
|
81
|
-
type: Component,
|
|
82
|
-
args: [{ selector: 'eui-showcase-doc-page-pattern', encapsulation: ViewEncapsulation.None, template: "<eui-tabs (tabSelect)=\"onTabSelect($event)\">\n <eui-tab>\n <euiTabLabel>Usage and documentation</euiTabLabel>\n <euiTabContent>\n <h2 class=\"eui-u-color-primary-100 eui-u-mb-none\">{{ label }}</h2>\n\n <h3>Information</h3>\n <ng-content select=\"docPagePatternDoc\"></ng-content>\n\n <ng-container *ngIf=\"figmaEmbedSrc; else screenshot\">\n <h3 class=\"eui-u-mt-2xl\">Figma design anatomy</h3>\n <iframe id=\"iframe-figma\" style=\"border: 1px solid rgba(0, 0, 0, 0.1)\" width=\"100%\" height=\"650\" [src]=\"urlSafe\"></iframe>\n </ng-container>\n <ng-template #screenshot>\n <ng-container *ngIf=\"figmaUrl !== 'PENDING_DS'\">\n <h3 class=\"eui-u-mt-2xl\">Anatomy</h3>\n <img\n src=\"assets/images/design-system/{{ anatomyImage }}\"\n alt=\"Design anatomy image\"\n width=\"90%\"\n class=\"eui-u-shadow-6 eui-u-mb-m\" />\n </ng-container>\n </ng-template>\n\n <ng-container *ngIf=\"docEntries.length !== 0\">\n <h3 class=\"eui-u-mt-2xl\">Design system references</h3>\n\n <eui-card *ngFor=\"let ref of docEntries\" class=\"eui-u-mb-m\" [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\">\n <eui-card-header>\n <eui-card-header-title>\n <div class=\"eui-u-flex\">\n <eui-badge *ngIf=\"ref?.id\" euiSizeXL class=\"eui-u-mr-s\">{{ ref.id }}</eui-badge>\n <span class=\"eui-u-font-size-l\">{{ ref.name }}</span>\n </div>\n </eui-card-header-title>\n <eui-card-header-right-content>\n <eui-chip [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\" class=\"eui-u-ml-m\">\n <span *ngIf=\"ref.mandatory\" euiLabel><strong> Mandatory </strong></span>\n <span *ngIf=\"!ref.mandatory\" euiLabel><strong> Optional </strong></span>\n </eui-chip>\n </eui-card-header-right-content>\n </eui-card-header>\n <eui-card-content>\n <h6 class=\"section-title eui-u-mt-none\"><strong>Description</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.description\"></div>\n\n <ng-container *ngIf=\"ref.whenToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenToUse\"></div>\n </ng-container>\n <ng-container *ngIf=\"ref.whenNotToUse\">\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to not use ?</strong></h6>\n <div class=\"html\" [innerHTML]=\"ref.whenNotToUse\"></div>\n </ng-container>\n <div class=\"row\">\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.dos && ref.dos.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"thumbs-up\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"success-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Do's</strong>\n </h6>\n <li *ngFor=\"let do of ref.dos\">{{ do }}</li>\n </ng-container>\n </div>\n <div class=\"col-md-6\">\n <ng-container *ngIf=\"ref.donts && ref.donts.length !== 0\">\n <h6 class=\"section-title eui-u-mt-xl\">\n <eui-icon-svg\n icon=\"hand-right\"\n set=\"sharp\"\n size=\"m\"\n fillColor=\"danger-100\"\n class=\"eui-u-mr-m\"></eui-icon-svg>\n <strong>Dont's</strong>\n </h6>\n <li *ngFor=\"let dont of ref.donts\">{{ dont }}</li>\n </ng-container>\n </div>\n </div>\n </eui-card-content>\n </eui-card>\n </ng-container>\n\n <!-- <ng-container *ngIf=\"dos.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-success-100\">Do's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of dos\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container>\n\n <ng-container *ngIf=\"donts.length !== 0\">\n <h3 class=\"eui-u-mt-2xl eui-u-color-danger-100\">Dont's</h3>\n <table class=\"eui-table-default\">\n <tr *ngFor=\"let ref of donts\">\n <td>{{ref.description}}</td>\n </tr>\n </table>\n </ng-container> -->\n\n <h3 class=\"eui-u-mt-2xl\">Figma resource</h3>\n <ng-container *ngIf=\"figmaUrl === 'PENDING_DS'; else figmaOK\">\n Pending Design system publication. Will be available in a future release.\n </ng-container>\n <ng-template #figmaOK>\n <eui-card>\n <eui-card-header>\n <eui-card-header-left-content>\n <img\n width=\"32\"\n height=\"32\"\n alt=\"Figma Logo\"\n src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAMAAAAJbSJIAAABL1BMVEX/////cmLyTh6iWf8Kz4MavP7yTBr5YUWeUP8AzX3UuP//bVwAt/6jV///rKTyRgr2TwCxX+kA032m6Mf3m4uabPb/aVf/8O8AzHmbSf/xPAD/a1rxQgDyShaaR/8Avv74pJP/urP/6Ob/ZVLQ7//839n5tqj/xL7/b1f/9O/59f/r3v+65/9jzP6yef/p+P+u4//Mqv/iz//cxf/I7P/fvf+U2v71/fqO5LzW9ed74LIp043/y8b4rJz0dln/i3/zXTX2jnf/19P/emv0bEv/p5//l4zzWCz2h270dVf4g2D2Whzt5v+6hfuzbfCuWOjE2+6nz+6BxO5lu+5o1v9Nx/7BlP930v63rf+UoP90lP7n1v/Prv/iwf/Onf+hefiWZPZi36O07dLf9+2A4bX7S8Q6AAAGG0lEQVR4nO2aeVcaZxSHZ6JYhsHYFjsig3UhaHG3RkHBxMRE2zR2M5SuaUW//2cow4CgwMz7uzl65x3v8/+cM8+5y7tdwxAEQRAEQRAEQRAEQRAEQRAEQRCEiFJcOVqYDuDt0wAWV2pFboFAikcv8rl8fiqA/LE9Gtd1Hcd5ubjELTKC5eNcfu5JCBOfmWHYrnOyWOK2GWQhn58I01Mz9HDdp9xCd6g9UfJTNmw5mjVuqX5e5dT8AEPTLJxya92wdJZX9IMMTduMSMsphvcXmqFpOq+55TxeK2cobmgWIqBYhARRQ7PAvgOYmYIEYUPTmWE2PAZqkGRon/AKTqt3UaKh6b7lFCzmQEGCIW8pvgFzlGRov+QTrMEhpBhyrop4CEmGfEHEq5BmaBa4dm+vph7I0OZqp3PYYk83NE0eQUqSEg0dngXjCF3t6YbuIovhO7yTUg1tnsPwGaEMqXXIszmllCHVsMAhOPOghhxnKFIrpRo6HGu+GOpvuBT7OizFvpcalC0N1ZBnY0o4HZL3NDwnxGnC4YlqyHN8Wnm4nbfD8w5FajVEQ6YHU0oh0s74XBc1y4Q0JRkyJWkLxXffT48hlyClm1IMGd/0S3iakm6E2QQpVzUEQ4fnkqbDGdpOCYa8z2vwEQo3ZLvw7nAEKuJvwKw56vEdVoqoocP6PurzPaQIGrqRmBqCFMF5mkgIthIVqEXIsBCBFPVZzikvGoCh7axwi/VYOlbdoqobOicRmWrrsKw2Xqps6NoRCqBPaSGvMsGnZGg7NvsqOJTai1xuam4iMJahhrbr2KcRmNcbQam28O6HzwM584bVB/nGxzRPF9ln9YJ5v7tz/uMXo/lprzRzl1Jp5udffr24uKjXP3zYfsatEMDq3mZyNpmcHAsgmRr4bGu/nkgnuqTTifr2FsPfh7N2PhssN9xwvd6z61luRC+Sa5uz4XqDhuvzg36+ZD1icfxNze+O4daQ+PUcG2w2g6yNJdX8bhuuB/h5ionIpGpKNYC3DRvBgp7jNqNVHztfK/v1G26ECrYU9znFuuzMAoI9QxXBaCimkAj2DMNTNCqJ+i0UwRvDfUXBliJzu1lVbqK3DJ8pC7bgNdxU76L9hoBfIrHBKbgL5mjHUD1H23n6nNFwEg1h23ALEkwk5vkEU2gV+oYNTJCzn47BIfQM0RAyBhFdKTqG+6ggXyWe4yH0DOdhwwTTMQNeC31DaC3swmNISdKx5B6epGxp+pEUw706wTDBswGH9zNtwxShDLn2NQS/luHvJEOe9QI7NnUN/yAZpjkE31MazdjknzRDjpu3+BuuPaghxzk4/jGMv6FBMtSplz6C9TD+e5qd2O9L/3rAswXTpWnsz4fxP+M/gnua+N+1Ue9LN9AQMr4/4UGk3Hlzvs3gldh+t1B9POyEkPPdwjinva5BEWR9e3oE74fwxka7N2DyO77aoEIU3vEfwSyGYfx9j/M0EYigx+69zUStM1rd4p7m2uajNJ4Y99lE4xHMlxrejHDIAPQwQ41mhD1WU/6cdxDD57zT6XTPLrJz3j5r/3w8//er0fy3O+yrref7jbrHRiPSs/qGUW5WLr8MJsP9j59C89JqMR6Ipa9huRJqp7dhRkVPY8OrqpqftoYZVT9dDS+zyoJ6Gl6qR1BPQ0hQR8NDSFBDwwpQg1oaHoCC+hlWQUHtDCtYEepnWIYFdTO8jrshIYSaGQLbUU0N4UaqmyElSfUybMbeENyRamhIKUO9DCkh1MqwjG66tTO8ir0hfHASw8gR/ywlGja5/xuAZnjA/dsAtBX/ivu3AbCL0q4h918j4Jc0LcFL7r9GoCwXVoX7ryFwwfGsTo2GdHyqcv8zBp6mOq33bfAb7zL3L4M00WeZQ+4/hgGDqF0I0UrUbKnwge71NWukHZTHTDTbkva4UjbM6nRu6ke1FLM6FqGP2pKhsaBaFLUWbNXieFgxaluDXcrBc19WVc8ueovm6DBammfoDZXhA6ZW9lC/rdoIyplq9o6kZVmHMUjQPg4qVStrdclWD3VvMEM5aGYq19fXleZBbLJTEARBEARBEARBEARBEARBEARBEHz+B91xJIzYVK0AAAAAAElFTkSuQmCC\" />\n </eui-card-header-left-content>\n <eui-card-header-title>\n <a\n class=\"h5 eui-u-text-link-external\"\n href=\"https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}\"\n target=\"blank\">\n <span class=\"eui-u-color-grey-75\">Layout component /</span>\n {{ label }}\n </a>\n </eui-card-header-title>\n </eui-card-header>\n </eui-card>\n </ng-template>\n </euiTabContent>\n </eui-tab>\n <eui-tab>\n <euiTabLabel>Pattern sample</euiTabLabel>\n <euiTabContent>\n <ng-content select=\"docPagePatternSample\"></ng-content>\n </euiTabContent>\n </eui-tab>\n\n <euiTabsRightContent>\n <button type=\"button\" euiButton euiAccent euiSizeS (click)=\"onNavigateToCode($event)\">\n <span class=\"eui-icon eui-icon-code\"></span>\n View sources\n </button>\n </euiTabsRightContent>\n</eui-tabs>\n\n<button\n type=\"button\"\n *ngIf=\"isShowGoTop && tabSelectedIndex === 0\"\n euiButton\n euiIconButton\n euiOutline\n euiRounded\n euiSizeL\n class=\"eui-button-fixed eui-u-shadow-8\"\n (click)=\"gotoTop()\"\n title=\"Goto Top\"\n aria-label=\"Goto Top\">\n <!-- \uD83D\uDC46 -->\n <eui-icon-svg icon=\"eui-arrow-up\" set=\"eui\" size=\"l\" fillColor=\"grey-50\"></eui-icon-svg>\n</button>\n", styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:1.5rem;background-color:#f0f0f0}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .eui-tabs .eui-tabs__items{background-color:#f0f0f0}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:#fff}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:1rem}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .html{display:block;line-height:var(--eui-base-line-height);position:relative;text-align:left}\n"] }]
|
|
83
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { cssClasses: [{
|
|
84
|
-
type: HostBinding,
|
|
85
|
-
args: ['class']
|
|
86
|
-
}], sampleContent: [{
|
|
87
|
-
type: ContentChild,
|
|
88
|
-
args: [forwardRef(() => DocPagePatternSampleDirective)]
|
|
89
|
-
}], docContent: [{
|
|
90
|
-
type: ContentChild,
|
|
91
|
-
args: [forwardRef(() => DocPagePatternDocDirective)]
|
|
92
|
-
}], id: [{
|
|
93
|
-
type: Input
|
|
94
|
-
}], label: [{
|
|
95
|
-
type: Input
|
|
96
|
-
}], anatomyImage: [{
|
|
97
|
-
type: Input
|
|
98
|
-
}], docEntries: [{
|
|
99
|
-
type: Input
|
|
100
|
-
}], dos: [{
|
|
101
|
-
type: Input
|
|
102
|
-
}], donts: [{
|
|
103
|
-
type: Input
|
|
104
|
-
}], sourceUrl: [{
|
|
105
|
-
type: Input
|
|
106
|
-
}], figmaUrl: [{
|
|
107
|
-
type: Input
|
|
108
|
-
}], figmaEmbedSrc: [{
|
|
109
|
-
type: Input
|
|
110
|
-
}], checkScroll: [{
|
|
111
|
-
type: HostListener,
|
|
112
|
-
args: ['window:scroll']
|
|
113
|
-
}] } });
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jLXBhZ2UtcGF0dGVybi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZG9jLXBhZ2UtcGF0dGVybi9kb2MtcGFnZS1wYXR0ZXJuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9kb2MtcGFnZS1wYXR0ZXJuL2RvYy1wYWdlLXBhdHRlcm4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEJBQTRCO0FBQzVCLE9BQU8sRUFDSCxTQUFTLEVBQ1QsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixLQUFLLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBRVYsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7QUFHdkQsb0JBQW9CO0FBRXBCLE1BQU0sT0FBTyw2QkFBNkI7OzZJQUE3Qiw2QkFBNkI7aUlBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUR6QyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFOztBQUcvQyxNQUFNLE9BQU8sMEJBQTBCOzswSUFBMUIsMEJBQTBCOzhIQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFEdEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxtQkFBbUIsRUFBRTs7QUFTNUMsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUFxQ3RELFlBQW1CLFNBQXVCO1FBQ3RDLEtBQUssRUFBRSxDQUFDO1FBRE8sY0FBUyxHQUFULFNBQVMsQ0FBYztRQXJCakMsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixRQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ1QsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQU9iLHlCQUFvQixHQUFHLEdBQUcsQ0FBQztRQUMzQixxQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFhNUIsQ0FBQztJQXRDRCxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQztTQUMxQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBc0I4QixXQUFXO1FBQ3RDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDO1FBQ2hILElBQUksY0FBYyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUM3QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUMzQjthQUFNO1lBQ0gsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBTUQsUUFBUTtRQUNKLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2pGLE1BQU0sTUFBTSxHQUF5QyxRQUFRLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ2hHO0lBQ0wsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEtBQVU7UUFDOUIsbUNBQW1DO1FBQ25DLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQztRQUMvQixNQUFNLGNBQWMsR0FBRyxzRkFBc0YsUUFBUSwyQkFBMkIsQ0FBQztRQUNqSixNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTSxXQUFXLENBQUMsS0FBOEM7UUFDN0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDeEMsQ0FBQztJQUVNLE9BQU87UUFDVixNQUFNLENBQUMsTUFBTSxDQUFDO1lBQ1YsR0FBRyxFQUFFLENBQUM7WUFDTixJQUFJLEVBQUUsQ0FBQztZQUNQLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUMsQ0FBQztJQUNQLENBQUM7O3VJQWpFUSx1QkFBdUI7MkhBQXZCLHVCQUF1QixrY0FRRCw2QkFBNkIsb0hBRTdCLDBCQUEwQiwyRUN0QzdELHNsVkFvS0E7MkZEeElhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDSSwrQkFBK0IsaUJBRTFCLGlCQUFpQixDQUFDLElBQUk7bUdBS2pDLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPO2dCQVFwQixhQUFhO3NCQURaLFlBQVk7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDZCQUE2QixDQUFDO2dCQUc3RCxVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO2dCQUdqRCxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQU95QixXQUFXO3NCQUF6QyxZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovXG5pbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBIb3N0QmluZGluZyxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBJbnB1dCxcbiAgICBEaXJlY3RpdmUsXG4gICAgQ29udGVudENoaWxkLFxuICAgIGZvcndhcmRSZWYsXG4gICAgUXVlcnlMaXN0LFxuICAgIEhvc3RMaXN0ZW5lcixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgQmFzZURpcmVjdGl2ZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9zaGFyZWQnO1xuaW1wb3J0IHsgRXVpVGFiQ29tcG9uZW50IH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS10YWJzJztcblxuLyogZXNsaW50LWRpc2FibGUgKi9cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ2RvY1BhZ2VQYXR0ZXJuU2FtcGxlJyB9KVxuZXhwb3J0IGNsYXNzIERvY1BhZ2VQYXR0ZXJuU2FtcGxlRGlyZWN0aXZlIHsgfVxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnZG9jUGFnZVBhdHRlcm5Eb2MnIH0pXG5leHBvcnQgY2xhc3MgRG9jUGFnZVBhdHRlcm5Eb2NEaXJlY3RpdmUgeyB9XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpLXNob3djYXNlLWRvYy1wYWdlLXBhdHRlcm4nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kb2MtcGFnZS1wYXR0ZXJuLmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHN0eWxlVXJsczogWycuL2RvYy1wYWdlLXBhdHRlcm4uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9jUGFnZVBhdHRlcm5Db21wb25lbnQgZXh0ZW5kcyBCYXNlRGlyZWN0aXZlIHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZG9jLXBhZ2UtcGF0dGVybicpLFxuICAgICAgICBdLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQENvbnRlbnRDaGlsZChmb3J3YXJkUmVmKCgpID0+IERvY1BhZ2VQYXR0ZXJuU2FtcGxlRGlyZWN0aXZlKSlcbiAgICBzYW1wbGVDb250ZW50OiBRdWVyeUxpc3Q8RG9jUGFnZVBhdHRlcm5TYW1wbGVEaXJlY3RpdmU+O1xuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBEb2NQYWdlUGF0dGVybkRvY0RpcmVjdGl2ZSkpXG4gICAgZG9jQ29udGVudDogUXVlcnlMaXN0PERvY1BhZ2VQYXR0ZXJuRG9jRGlyZWN0aXZlPjtcblxuICAgIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcbiAgICBASW5wdXQoKSBhbmF0b215SW1hZ2U6IHN0cmluZztcbiAgICBASW5wdXQoKSBkb2NFbnRyaWVzID0gW107XG4gICAgQElucHV0KCkgZG9zID0gW107XG4gICAgQElucHV0KCkgZG9udHMgPSBbXTtcbiAgICBASW5wdXQoKSBzb3VyY2VVcmw6IHN0cmluZztcbiAgICBASW5wdXQoKSBmaWdtYVVybDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGZpZ21hRW1iZWRTcmM6IHN0cmluZztcblxuICAgIHB1YmxpYyB1cmxTYWZlOiBTYWZlUmVzb3VyY2VVcmw7XG4gICAgcHVibGljIGlzU2hvd0dvVG9wOiBib29sZWFuO1xuICAgIHB1YmxpYyB0b3BQb3NUb1N0YXJ0U2hvd2luZyA9IDEwMDtcbiAgICBwdWJsaWMgdGFiU2VsZWN0ZWRJbmRleCA9IDA7XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJykgY2hlY2tTY3JvbGwoKSB7XG4gICAgICAgIGNvbnN0IHNjcm9sbFBvc2l0aW9uID0gd2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgfHwgMDtcbiAgICAgICAgaWYgKHNjcm9sbFBvc2l0aW9uID49IHRoaXMudG9wUG9zVG9TdGFydFNob3dpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuaXNTaG93R29Ub3AgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pc1Nob3dHb1RvcCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHVibGljIHNhbml0aXplcjogRG9tU2FuaXRpemVyICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAodGhpcy5maWdtYUVtYmVkU3JjKSB7XG4gICAgICAgICAgICB0aGlzLnVybFNhZmUgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodGhpcy5maWdtYUVtYmVkU3JjKTtcbiAgICAgICAgICAgIGNvbnN0IGlGcmFtZTogSFRNTElGcmFtZUVsZW1lbnQgPSA8SFRNTElGcmFtZUVsZW1lbnQ+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lmcmFtZS1maWdtYScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uTmF2aWdhdGVUb0NvZGUoZXZlbnQ6IGFueSkge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxuICAgICAgICBjb25zdCBzaG93Y2FzZSA9ICd1eC1wYXR0ZXJucyc7XG4gICAgICAgIGNvbnN0IHNvdXJjZVJvb3RQYXRoID0gYGh0dHBzOi8vY2l0bmV0LnRlY2guZWMuZXVyb3BhLmV1L0NJVG5ldC9zdGFzaC9wcm9qZWN0cy9DU0RSL3JlcG9zL2FwcC1ldWktc2hvd2Nhc2UtJHtzaG93Y2FzZX0vYnJvd3NlL3NyYy9hcHAvZmVhdHVyZXMvYDtcbiAgICAgICAgd2luZG93Lm9wZW4oc291cmNlUm9vdFBhdGggKyB0aGlzLnNvdXJjZVVybCwgJ19ibGFuaycpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblRhYlNlbGVjdChldmVudDogeyB0YWI6IEV1aVRhYkNvbXBvbmVudDsgaW5kZXg6IG51bWJlciB9KSB7XG4gICAgICAgIHRoaXMudGFiU2VsZWN0ZWRJbmRleCA9IGV2ZW50LmluZGV4O1xuICAgIH1cblxuICAgIHB1YmxpYyBnb3RvVG9wKCkge1xuICAgICAgICB3aW5kb3cuc2Nyb2xsKHtcbiAgICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICAgIGxlZnQ6IDAsXG4gICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxldWktdGFicyAodGFiU2VsZWN0KT1cIm9uVGFiU2VsZWN0KCRldmVudClcIj5cbiAgICA8ZXVpLXRhYj5cbiAgICAgICAgPGV1aVRhYkxhYmVsPlVzYWdlIGFuZCBkb2N1bWVudGF0aW9uPC9ldWlUYWJMYWJlbD5cbiAgICAgICAgPGV1aVRhYkNvbnRlbnQ+XG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJldWktdS1jb2xvci1wcmltYXJ5LTEwMCBldWktdS1tYi1ub25lXCI+e3sgbGFiZWwgfX08L2gyPlxuXG4gICAgICAgICAgICA8aDM+SW5mb3JtYXRpb248L2gzPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZG9jUGFnZVBhdHRlcm5Eb2NcIj48L25nLWNvbnRlbnQ+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWdtYUVtYmVkU3JjOyBlbHNlIHNjcmVlbnNob3RcIj5cbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJldWktdS1tdC0yeGxcIj5GaWdtYSBkZXNpZ24gYW5hdG9teTwvaDM+XG4gICAgICAgICAgICAgICAgPGlmcmFtZSBpZD1cImlmcmFtZS1maWdtYVwiIHN0eWxlPVwiYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiNjUwXCIgW3NyY109XCJ1cmxTYWZlXCI+PC9pZnJhbWU+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc2NyZWVuc2hvdD5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmlnbWFVcmwgIT09ICdQRU5ESU5HX0RTJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJldWktdS1tdC0yeGxcIj5BbmF0b215PC9oMz5cbiAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiYXNzZXRzL2ltYWdlcy9kZXNpZ24tc3lzdGVtL3t7IGFuYXRvbXlJbWFnZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHQ9XCJEZXNpZ24gYW5hdG9teSBpbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjkwJVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS11LXNoYWRvdy02IGV1aS11LW1iLW1cIiAvPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRvY0VudHJpZXMubGVuZ3RoICE9PSAwXCI+XG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiZXVpLXUtbXQtMnhsXCI+RGVzaWduIHN5c3RlbSByZWZlcmVuY2VzPC9oMz5cblxuICAgICAgICAgICAgICAgIDxldWktY2FyZCAqbmdGb3I9XCJsZXQgcmVmIG9mIGRvY0VudHJpZXNcIiBjbGFzcz1cImV1aS11LW1iLW1cIiBbZXVpV2FybmluZ109XCJyZWYubWFuZGF0b3J5XCIgW2V1aUluZm9dPVwiIXJlZi5tYW5kYXRvcnlcIj5cbiAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxldWktY2FyZC1oZWFkZXItdGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11LWZsZXhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1iYWRnZSAqbmdJZj1cInJlZj8uaWRcIiBldWlTaXplWEwgY2xhc3M9XCJldWktdS1tci1zXCI+e3sgcmVmLmlkIH19PC9ldWktYmFkZ2U+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtZm9udC1zaXplLWxcIj57eyByZWYubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZXVpLWNhcmQtaGVhZGVyLXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlci1yaWdodC1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktY2hpcCBbZXVpV2FybmluZ109XCJyZWYubWFuZGF0b3J5XCIgW2V1aUluZm9dPVwiIXJlZi5tYW5kYXRvcnlcIiBjbGFzcz1cImV1aS11LW1sLW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJyZWYubWFuZGF0b3J5XCIgZXVpTGFiZWw+PHN0cm9uZz4gTWFuZGF0b3J5IDwvc3Ryb25nPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhcmVmLm1hbmRhdG9yeVwiIGV1aUxhYmVsPjxzdHJvbmc+IE9wdGlvbmFsIDwvc3Ryb25nPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2V1aS1jaGlwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9ldWktY2FyZC1oZWFkZXItcmlnaHQtY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgPC9ldWktY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICAgICAgICAgIDxldWktY2FyZC1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwic2VjdGlvbi10aXRsZSBldWktdS1tdC1ub25lXCI+PHN0cm9uZz5EZXNjcmlwdGlvbjwvc3Ryb25nPjwvaDY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaHRtbFwiIFtpbm5lckhUTUxdPVwicmVmLmRlc2NyaXB0aW9uXCI+PC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZWYud2hlblRvVXNlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwic2VjdGlvbi10aXRsZSBldWktdS1tdC14bFwiPjxzdHJvbmc+V2hlbiB0byB1c2UgPzwvc3Ryb25nPjwvaDY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImh0bWxcIiBbaW5uZXJIVE1MXT1cInJlZi53aGVuVG9Vc2VcIj48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlZi53aGVuTm90VG9Vc2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3M9XCJzZWN0aW9uLXRpdGxlIGV1aS11LW10LXhsXCI+PHN0cm9uZz5XaGVuIHRvIG5vdCB1c2UgPzwvc3Ryb25nPjwvaDY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImh0bWxcIiBbaW5uZXJIVE1MXT1cInJlZi53aGVuTm90VG9Vc2VcIj48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicmVmLmRvcyAmJiByZWYuZG9zLmxlbmd0aCAhPT0gMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwic2VjdGlvbi10aXRsZSBldWktdS1tdC14bFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cInRodW1icy11cFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldD1cInNoYXJwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsQ29sb3I9XCJzdWNjZXNzLTEwMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXUtbXItbVwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+RG8nczwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oNj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgZG8gb2YgcmVmLmRvc1wiPnt7IGRvIH19PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZWYuZG9udHMgJiYgcmVmLmRvbnRzLmxlbmd0aCAhPT0gMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwic2VjdGlvbi10aXRsZSBldWktdS1tdC14bFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cImhhbmQtcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQ9XCJzaGFycFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbENvbG9yPVwiZGFuZ2VyLTEwMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXUtbXItbVwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+RG9udCdzPC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2g2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBkb250IG9mIHJlZi5kb250c1wiPnt7IGRvbnQgfX08L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2V1aS1jYXJkLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPC9ldWktY2FyZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJkb3MubGVuZ3RoICE9PSAwXCI+XG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiZXVpLXUtbXQtMnhsIGV1aS11LWNvbG9yLXN1Y2Nlc3MtMTAwXCI+RG8nczwvaDM+XG4gICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwiZXVpLXRhYmxlLWRlZmF1bHRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCByZWYgb2YgZG9zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tyZWYuZGVzY3JpcHRpb259fTwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZG9udHMubGVuZ3RoICE9PSAwXCI+XG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiZXVpLXUtbXQtMnhsIGV1aS11LWNvbG9yLWRhbmdlci0xMDBcIj5Eb250J3M8L2gzPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImV1aS10YWJsZS1kZWZhdWx0XCI+XG4gICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcmVmIG9mIGRvbnRzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tyZWYuZGVzY3JpcHRpb259fTwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiAtLT5cblxuICAgICAgICAgICAgPGgzIGNsYXNzPVwiZXVpLXUtbXQtMnhsXCI+RmlnbWEgcmVzb3VyY2U8L2gzPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpZ21hVXJsID09PSAnUEVORElOR19EUyc7IGVsc2UgZmlnbWFPS1wiPlxuICAgICAgICAgICAgICAgIFBlbmRpbmcgRGVzaWduIHN5c3RlbSBwdWJsaWNhdGlvbi4gV2lsbCBiZSBhdmFpbGFibGUgaW4gYSBmdXR1cmUgcmVsZWFzZS5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNmaWdtYU9LPlxuICAgICAgICAgICAgICAgIDxldWktY2FyZD5cbiAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxldWktY2FyZC1oZWFkZXItbGVmdC1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzMlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjMyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PVwiRmlnbWEgTG9nb1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBT0VBQUFEaENBTUFBQUFKYlNKSUFBQUJMMUJNVkVYLy8vLy9jbUx5VGg2aVdmOEt6NE1hdlA3eVRCcjVZVVdlVVA4QXpYM1V1UC8vYlZ3QXQvNmpWLy8vcktUeVJncjJUd0N4WCtrQTAzMm02TWYzbTR1YWJQYi9hVmYvOE84QXpIbWJTZi94UEFEL2ExcnhRZ0R5U2hhYVIvOEF2djc0cEpQL3VyUC82T2IvWlZMUTcvLzgzOW41dHFqL3hMNy9iMWYvOU8vNTlmL3Izdis2NS85anpQNnllZi9wK1ArdTQvL01xdi9pei8vY3hmL0k3UC9mdmYrVTJ2NzEvZnFPNUx6VzllZDc0TElwMDQzL3k4YjRySnowZGxuL2kzL3pYVFgyam5mLzE5UC9lbXYwYkV2L3A1Ly9sNHp6V0N6MmgyNzBkVmY0ZzJEMldoenQ1dis2aGZ1emJmQ3VXT2pFMis2bnorNkJ4TzVsdSs1bzF2OU54LzdCbFA5MzB2NjNyZitVb1A5MGxQN24xdi9QcnYvaXdmL09uZitoZWZpV1pQWmkzNk8wN2RMZjkrMkE0Ylg3UzhRNkFBQUdHMGxFUVZSNG5PMmFlVmNhWnhTSFo2Slloc0hZRmpzaWczVWhhSEczUmtIQnhNUkUyelIyTTVTdWFVVy8vMmNvdzRDZ3dNejd1emw2NXgzdjgvK2NNOCs1eTd0ZHd4QUVRUkFFUVJBRVFSQUVRUkFFUVJBRVFSQ0VpRkpjT1ZxWUR1RHQwd0FXVjJwRmJvRkFpa2N2OHJsOGZpcUEvTEU5R3RkMUhjZDV1YmpFTFRLQzVlTmNmdTVKQ0JPZm1XSFlybk95V09LMkdXUWhuNThJMDFNejlIRGRwOXhDZDZnOVVmSlRObXc1bWpWdXFYNWU1ZFQ4QUVQVExKeHlhOTJ3ZEpaWDlJTU1UZHVNU01zcGh2Y1htcUZwT3ErNTVUeGVLMmNvYm1nV0lxQlloQVJSUTdQQXZnT1ltWUlFWVVQVG1XRTJQQVpxa0dSb24vQUtUcXQzVWFLaDZiN2xGQ3ptUUVHQ0lXOHB2Z0Z6bEdSb3YrUVRyTUVocEJoeXJvcDRDRW1HZkVIRXE1Qm1hQmE0ZG0rdnBoN0kwT1pxcDNQWVlrODNORTBlUVVxU0VnMGRuZ1hqQ0YzdDZZYnVJb3ZoTzd5VFVnMXRuc1B3R2FFTXFYWElzem1sbENIVnNNQWhPUE9naGh4bktGSXJwUm82SEd1K0dPcHZ1QlQ3T2l6RnZwY2FsQzBOMVpCblkwbzRIWkwzTkR3bnhHbkM0WWxxeUhOOFdubTRuYmZEOHc1RmFqVkVRNllIVTBvaDBzNzRYQmMxeTRRMEpSa3lKV2tMeFhmZlQ0OGhseUNsbTFJTUdkLzBTM2lha202RTJRUXBWelVFUTRmbmtxYkRHZHBPQ1lhOHoydndFUW8zWkx2dzduQUVLdUp2d0t3NTZ2RWRWb3Fvb2NQNlB1cnpQYVFJR3JxUm1CcUNGTUY1bWtnSXRoSVZxRVhJc0JDQkZQVlp6aWt2R29DaDdheHdpL1ZZT2xiZG9xb2JPaWNSbVdycnNLdzJYcXBzNk5vUkNxQlBhU0d2TXNHblpHZzdOdnNxT0pUYWkxeHVhbTRpTUphaGhyYnIyS2NSbU5jYlFhbTI4TzZIendNNTg0YlZCL25HeHpSUEY5bG45WUo1djd0ei91TVhvL2xwcnpSemwxSnA1dWRmZnIyNHVLalhQM3pZZnNhdEVNRHEzbVp5TnBtY0hBc2dtUnI0Ykd1L25rZ251cVRUaWZyMkZzUGZoN04yUGhzc045eHd2ZDZ6NjFsdVJDK1NhNXV6NFhxRGh1dnpnMzYrWkQxaWNmeE56ZStPNGRhUStQVWNHMncyZzZ5TkpkWDhiaHV1Qi9oNWlvbklwR3BLTllDM0RSdkJncDdqTnFOVkh6dGZLL3YxRzI2RUNyWVU5em5GdXV6TUFvSTlReFhCYUNpbWtBajJETU5UTkNxSitpMFV3UnZEZlVYQmxpSnp1MWxWYnFLM0RKOHBDN2JnTmR4VTc2TDlob0JmSXJIQktiZ0w1bWpIVUQxSDIzbjZuTkZ3RWcxaDIzQUxFa3drNXZrRVUyZ1Yrb1lOVEpDem40N0JJZlFNMFJBeUJoRmRLVHFHKzZnZ1h5V2U0eUgwRE9kaHd3VFRNUU5lQzMxRGFDM3N3bU5JU2RLeDVCNmVwR3hwK3BFVXc3MDZ3VERCc3dHSDl6TnR3eFNoRExuMk5RUy9sdUh2SkVPZTlRSTdOblVOL3lBWnBqa0UzMU1hemRqa256UkRqcHUzK0J1dVBhZ2h4ems0L2pHTXY2RkJNdFNwbHo2QzlURCtlNXFkMk85TC8zckFzd1hUcFduc3o0ZnhQK00vZ251YStOKzFVZTlMTjlBUU1yNC80VUdrM0hsenZzM2dsZGgrdDFCOVBPeUVrUFBkd2ppbnZhNUJFV1I5ZTNvRTc0Znd4a2E3TjJEeU83N2FvRUlVM3ZFZndTeUdZZng5ai9NMEVZaWd4KzY5elVTdE0xcmQ0cDdtMnVhak5KNFk5OWxFNHhITWx4cmVqSERJQVBRd1E0MW1oRDFXVS82Y2R4REQ1N3pUNlhUUExySnozajVyLzN3OC8vZXIwZnkzTyt5cnJlZjdqYnJIUmlQU3MvcUdVVzVXTHI4TUpzUDlqNTlDODlKcU1SNklwYTlodVJKcXA3ZGhSa1ZQWThPcnFwcWZ0b1laVlQ5ZERTK3p5b0o2R2w2cVIxQlBRMGhRUjhORFNGQkR3d3BRZzFvYUhvQ0MraGxXUVVIdERDdFlFZXBuV0lZRmRUTzhqcnNoSVlTYUdRTGJVVTBONFVhcW15RWxTZlV5Yk1iZUVOeVJhbWhJS1VPOURDa2gxTXF3akc2NnRUTzhpcjBoZkhBU3c4Z1IveXdsR2phNS94dUFabmpBL2RzQXRCWC9pdnUzQWJDTDBxNGg5MThqNEpjMExjRkw3cjlHb0N3WFZvWDdyeUZ3d2ZHc1RvMkdkSHlxY3Y4ekJwNm1PcTMzYmZBYjd6TDNMNE0wMFdlWlErNC9oZ0dEcUYwSTBVclViS253Z2U3MU5XdWtIWlRIVERUYmt2YTRVamJNNm5SdTZrZTFGTE02RnFHUDJwS2hzYUJhRkxVV2JOWGllRmd4YWx1RFhjckJjMTlXVmM4dWVvdm02REJhbW1mb0RaWGhBNlpXOWxDL3Jkb0l5cGxxOW82a1pWbUhNVWpRUGc0cVZTdHJkY2xXRDNWdk1FTTVhR1lxMTlmWGxlWkJiTEpURUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUh6K0I5MXhKSXpZVkswQUFBQUFBRWxGVGtTdVFtQ0NcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9ldWktY2FyZC1oZWFkZXItbGVmdC1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlci10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImg1IGV1aS11LXRleHQtbGluay1leHRlcm5hbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9XCJodHRwczovL3d3dy5maWdtYS5jb20vZmlsZS9qUTlodFd2U004U1dUUHVrM2hvaWdjL3t7IGZpZ21hVXJsIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiYmxhbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktdS1jb2xvci1ncmV5LTc1XCI+TGF5b3V0IGNvbXBvbmVudCAvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBsYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZXVpLWNhcmQtaGVhZGVyLXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8L2V1aS1jYXJkLWhlYWRlcj5cbiAgICAgICAgICAgICAgICA8L2V1aS1jYXJkPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9ldWlUYWJDb250ZW50PlxuICAgIDwvZXVpLXRhYj5cbiAgICA8ZXVpLXRhYj5cbiAgICAgICAgPGV1aVRhYkxhYmVsPlBhdHRlcm4gc2FtcGxlPC9ldWlUYWJMYWJlbD5cbiAgICAgICAgPGV1aVRhYkNvbnRlbnQ+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkb2NQYWdlUGF0dGVyblNhbXBsZVwiPjwvbmctY29udGVudD5cbiAgICAgICAgPC9ldWlUYWJDb250ZW50PlxuICAgIDwvZXVpLXRhYj5cblxuICAgIDxldWlUYWJzUmlnaHRDb250ZW50PlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBldWlCdXR0b24gZXVpQWNjZW50IGV1aVNpemVTIChjbGljayk9XCJvbk5hdmlnYXRlVG9Db2RlKCRldmVudClcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLWljb24gZXVpLWljb24tY29kZVwiPjwvc3Bhbj5cbiAgICAgICAgICAgIFZpZXcgc291cmNlc1xuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2V1aVRhYnNSaWdodENvbnRlbnQ+XG48L2V1aS10YWJzPlxuXG48YnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgKm5nSWY9XCJpc1Nob3dHb1RvcCAmJiB0YWJTZWxlY3RlZEluZGV4ID09PSAwXCJcbiAgICBldWlCdXR0b25cbiAgICBldWlJY29uQnV0dG9uXG4gICAgZXVpT3V0bGluZVxuICAgIGV1aVJvdW5kZWRcbiAgICBldWlTaXplTFxuICAgIGNsYXNzPVwiZXVpLWJ1dHRvbi1maXhlZCBldWktdS1zaGFkb3ctOFwiXG4gICAgKGNsaWNrKT1cImdvdG9Ub3AoKVwiXG4gICAgdGl0bGU9XCJHb3RvIFRvcFwiXG4gICAgYXJpYS1sYWJlbD1cIkdvdG8gVG9wXCI+XG4gICAgPCEtLSDwn5GGIC0tPlxuICAgIDxldWktaWNvbi1zdmcgaWNvbj1cImV1aS1hcnJvdy11cFwiIHNldD1cImV1aVwiIHNpemU9XCJsXCIgZmlsbENvbG9yPVwiZ3JleS01MFwiPjwvZXVpLWljb24tc3ZnPlxuPC9idXR0b24+XG4iXX0=
|
|
1
|
+
/* eslint-disable max-len */
|
|
2
|
+
import { Component, HostBinding, ViewEncapsulation, Input, Directive, ContentChild, forwardRef, HostListener, } from '@angular/core';
|
|
3
|
+
import { BaseDirective } from '@eui/components/shared';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/platform-browser";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
7
|
+
import * as i3 from "@eui/components/eui-card";
|
|
8
|
+
import * as i4 from "@eui/components/eui-button";
|
|
9
|
+
import * as i5 from "@eui/components/eui-tabs";
|
|
10
|
+
import * as i6 from "@eui/components/eui-chip";
|
|
11
|
+
import * as i7 from "@eui/components/eui-badge";
|
|
12
|
+
import * as i8 from "@eui/components/eui-icon";
|
|
13
|
+
import * as i9 from "@eui/components/eui-label";
|
|
14
|
+
/* eslint-disable */
|
|
15
|
+
export class DocPagePatternSampleDirective {
|
|
16
|
+
}
|
|
17
|
+
/** @nocollapse */ DocPagePatternSampleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternSampleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
|
+
/** @nocollapse */ DocPagePatternSampleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DocPagePatternSampleDirective, selector: "docPagePatternSample", ngImport: i0 });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternSampleDirective, decorators: [{
|
|
20
|
+
type: Directive,
|
|
21
|
+
args: [{ selector: 'docPagePatternSample' }]
|
|
22
|
+
}] });
|
|
23
|
+
export class DocPagePatternDocDirective {
|
|
24
|
+
}
|
|
25
|
+
/** @nocollapse */ DocPagePatternDocDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternDocDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
26
|
+
/** @nocollapse */ DocPagePatternDocDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DocPagePatternDocDirective, selector: "docPagePatternDoc", ngImport: i0 });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternDocDirective, decorators: [{
|
|
28
|
+
type: Directive,
|
|
29
|
+
args: [{ selector: 'docPagePatternDoc' }]
|
|
30
|
+
}] });
|
|
31
|
+
export class DocPagePatternComponent extends BaseDirective {
|
|
32
|
+
constructor(sanitizer) {
|
|
33
|
+
super();
|
|
34
|
+
this.sanitizer = sanitizer;
|
|
35
|
+
this.docEntries = [];
|
|
36
|
+
this.dos = [];
|
|
37
|
+
this.donts = [];
|
|
38
|
+
this.topPosToStartShowing = 100;
|
|
39
|
+
this.tabSelectedIndex = 0;
|
|
40
|
+
}
|
|
41
|
+
get cssClasses() {
|
|
42
|
+
return [
|
|
43
|
+
super.getCssClasses('doc-page-pattern'),
|
|
44
|
+
].join(' ').trim();
|
|
45
|
+
}
|
|
46
|
+
checkScroll() {
|
|
47
|
+
const scrollPosition = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
|
|
48
|
+
if (scrollPosition >= this.topPosToStartShowing) {
|
|
49
|
+
this.isShowGoTop = true;
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
this.isShowGoTop = false;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
ngOnInit() {
|
|
56
|
+
if (this.figmaEmbedSrc) {
|
|
57
|
+
this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(this.figmaEmbedSrc);
|
|
58
|
+
const iFrame = document.getElementById('iframe-figma');
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
onNavigateToCode(event) {
|
|
62
|
+
// eslint-disable-next-line max-len
|
|
63
|
+
const showcase = 'ux-patterns';
|
|
64
|
+
const sourceRootPath = `https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/app-eui-showcase-${showcase}/browse/src/app/features/`;
|
|
65
|
+
window.open(sourceRootPath + this.sourceUrl, '_blank');
|
|
66
|
+
}
|
|
67
|
+
onTabSelect(event) {
|
|
68
|
+
this.tabSelectedIndex = event.index;
|
|
69
|
+
}
|
|
70
|
+
gotoTop() {
|
|
71
|
+
window.scroll({
|
|
72
|
+
top: 0,
|
|
73
|
+
left: 0,
|
|
74
|
+
behavior: 'smooth',
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/** @nocollapse */ DocPagePatternComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
79
|
+
/** @nocollapse */ DocPagePatternComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DocPagePatternComponent, selector: "eui-showcase-doc-page-pattern", inputs: { id: "id", label: "label", anatomyImage: "anatomyImage", docEntries: "docEntries", dos: "dos", donts: "donts", sourceUrl: "sourceUrl", figmaUrl: "figmaUrl", figmaEmbedSrc: "figmaEmbedSrc" }, host: { listeners: { "window:scroll": "checkScroll()" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "sampleContent", first: true, predicate: i0.forwardRef(function () { return DocPagePatternSampleDirective; }), descendants: true }, { propertyName: "docContent", first: true, predicate: i0.forwardRef(function () { return DocPagePatternDocDirective; }), descendants: true }], usesInheritance: true, ngImport: i0, template: "<eui-tabs (tabSelect)=\"onTabSelect($event)\">\r\n <eui-tab>\r\n <euiTabLabel>Usage and documentation</euiTabLabel>\r\n <euiTabContent>\r\n <h2 class=\"eui-u-color-primary-100 eui-u-mb-none\">{{ label }}</h2>\r\n\r\n <h3>Information</h3>\r\n <ng-content select=\"docPagePatternDoc\"></ng-content>\r\n\r\n <ng-container *ngIf=\"figmaEmbedSrc; else screenshot\">\r\n <h3 class=\"eui-u-mt-2xl\">Figma design anatomy</h3>\r\n <iframe id=\"iframe-figma\" style=\"border: 1px solid rgba(0, 0, 0, 0.1)\" width=\"100%\" height=\"650\" [src]=\"urlSafe\"></iframe>\r\n </ng-container>\r\n <ng-template #screenshot>\r\n <ng-container *ngIf=\"figmaUrl !== 'PENDING_DS'\">\r\n <h3 class=\"eui-u-mt-2xl\">Anatomy</h3>\r\n <img\r\n src=\"assets/images/design-system/{{ anatomyImage }}\"\r\n alt=\"Design anatomy image\"\r\n width=\"90%\"\r\n class=\"eui-u-shadow-6 eui-u-mb-m\" />\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-container *ngIf=\"docEntries.length !== 0\">\r\n <h3 class=\"eui-u-mt-2xl\">Design system references</h3>\r\n\r\n <eui-card *ngFor=\"let ref of docEntries\" class=\"eui-u-mb-m\" [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\">\r\n <eui-card-header>\r\n <eui-card-header-title>\r\n <div class=\"eui-u-flex\">\r\n <eui-badge *ngIf=\"ref?.id\" euiSizeXL class=\"eui-u-mr-s\">{{ ref.id }}</eui-badge>\r\n <span class=\"eui-u-font-size-l\">{{ ref.name }}</span>\r\n </div>\r\n </eui-card-header-title>\r\n <eui-card-header-right-content>\r\n <eui-chip [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\" class=\"eui-u-ml-m\">\r\n <span *ngIf=\"ref.mandatory\" euiLabel><strong> Mandatory </strong></span>\r\n <span *ngIf=\"!ref.mandatory\" euiLabel><strong> Optional </strong></span>\r\n </eui-chip>\r\n </eui-card-header-right-content>\r\n </eui-card-header>\r\n <eui-card-content>\r\n <h6 class=\"section-title eui-u-mt-none\"><strong>Description</strong></h6>\r\n <div class=\"html\" [innerHTML]=\"ref.description\"></div>\r\n\r\n <ng-container *ngIf=\"ref.whenToUse\">\r\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to use ?</strong></h6>\r\n <div class=\"html\" [innerHTML]=\"ref.whenToUse\"></div>\r\n </ng-container>\r\n <ng-container *ngIf=\"ref.whenNotToUse\">\r\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to not use ?</strong></h6>\r\n <div class=\"html\" [innerHTML]=\"ref.whenNotToUse\"></div>\r\n </ng-container>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <ng-container *ngIf=\"ref.dos && ref.dos.length !== 0\">\r\n <h6 class=\"section-title eui-u-mt-xl\">\r\n <eui-icon-svg\r\n icon=\"thumbs-up\"\r\n set=\"sharp\"\r\n size=\"m\"\r\n fillColor=\"success-100\"\r\n class=\"eui-u-mr-m\"></eui-icon-svg>\r\n <strong>Do's</strong>\r\n </h6>\r\n <li *ngFor=\"let do of ref.dos\">{{ do }}</li>\r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <ng-container *ngIf=\"ref.donts && ref.donts.length !== 0\">\r\n <h6 class=\"section-title eui-u-mt-xl\">\r\n <eui-icon-svg\r\n icon=\"hand-right\"\r\n set=\"sharp\"\r\n size=\"m\"\r\n fillColor=\"danger-100\"\r\n class=\"eui-u-mr-m\"></eui-icon-svg>\r\n <strong>Dont's</strong>\r\n </h6>\r\n <li *ngFor=\"let dont of ref.donts\">{{ dont }}</li>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </eui-card-content>\r\n </eui-card>\r\n </ng-container>\r\n\r\n <!-- <ng-container *ngIf=\"dos.length !== 0\">\r\n <h3 class=\"eui-u-mt-2xl eui-u-color-success-100\">Do's</h3>\r\n <table class=\"eui-table-default\">\r\n <tr *ngFor=\"let ref of dos\">\r\n <td>{{ref.description}}</td>\r\n </tr>\r\n </table>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"donts.length !== 0\">\r\n <h3 class=\"eui-u-mt-2xl eui-u-color-danger-100\">Dont's</h3>\r\n <table class=\"eui-table-default\">\r\n <tr *ngFor=\"let ref of donts\">\r\n <td>{{ref.description}}</td>\r\n </tr>\r\n </table>\r\n </ng-container> -->\r\n\r\n <h3 class=\"eui-u-mt-2xl\">Figma resource</h3>\r\n <ng-container *ngIf=\"figmaUrl === 'PENDING_DS'; else figmaOK\">\r\n Pending Design system publication. Will be available in a future release.\r\n </ng-container>\r\n <ng-template #figmaOK>\r\n <eui-card>\r\n <eui-card-header>\r\n <eui-card-header-left-content>\r\n <img\r\n width=\"32\"\r\n height=\"32\"\r\n alt=\"Figma Logo\"\r\n src=\"data:image/png;base64,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\" />\r\n </eui-card-header-left-content>\r\n <eui-card-header-title>\r\n <a\r\n class=\"h5 eui-u-text-link-external\"\r\n href=\"https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}\"\r\n target=\"blank\">\r\n <span class=\"eui-u-color-grey-75\">Layout component /</span>\r\n {{ label }}\r\n </a>\r\n </eui-card-header-title>\r\n </eui-card-header>\r\n </eui-card>\r\n </ng-template>\r\n </euiTabContent>\r\n </eui-tab>\r\n <eui-tab>\r\n <euiTabLabel>Pattern sample</euiTabLabel>\r\n <euiTabContent>\r\n <ng-content select=\"docPagePatternSample\"></ng-content>\r\n </euiTabContent>\r\n </eui-tab>\r\n\r\n <euiTabsRightContent>\r\n <button type=\"button\" euiButton euiAccent euiSizeS (click)=\"onNavigateToCode($event)\">\r\n <span class=\"eui-icon eui-icon-code\"></span>\r\n View sources\r\n </button>\r\n </euiTabsRightContent>\r\n</eui-tabs>\r\n\r\n<button\r\n type=\"button\"\r\n *ngIf=\"isShowGoTop && tabSelectedIndex === 0\"\r\n euiButton\r\n euiIconButton\r\n euiOutline\r\n euiRounded\r\n euiSizeL\r\n class=\"eui-button-fixed eui-u-shadow-8\"\r\n (click)=\"gotoTop()\"\r\n title=\"Goto Top\"\r\n aria-label=\"Goto Top\">\r\n <!-- \uD83D\uDC46 -->\r\n <eui-icon-svg icon=\"eui-arrow-up\" set=\"eui\" size=\"l\" fillColor=\"grey-50\"></eui-icon-svg>\r\n</button>\r\n", styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:1.5rem;background-color:#f0f0f0}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .eui-tabs .eui-tabs__items{background-color:#f0f0f0}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:#fff}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:1rem}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .html{display:block;line-height:var(--eui-base-line-height);position:relative;text-align:left}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.EuiCardComponent, selector: "eui-card", inputs: ["e2eAttr", "euiSelected", "euiCollapsible", "euiCollapsed", "euiUrgent", "euiNoShadow", "euiNoContentPadding", "euiHoverable"], outputs: ["onCollapsed", "collapse"] }, { kind: "component", type: i3.EuiCardHeaderComponent, selector: "eui-card-header", inputs: ["avatarUrl", "expandLabel", "collapseLabel", "iconClass", "avatarDerscription", "iconDescription", "isHeaderBodyOnly", "hasHeaderClickToggle", "hasBottomExpander", "hasFullTitle", "isHeaderMultilines"], outputs: ["collapse"] }, { kind: "component", type: i3.EuiCardHeaderTitleComponent, selector: "eui-card-header-title" }, { kind: "component", type: i3.EuiCardContentComponent, selector: "eui-card-content" }, { kind: "component", type: i3.EuiCardHeaderLeftContentComponent, selector: "eui-card-header-left-content" }, { kind: "component", type: i3.EuiCardHeaderRightContentComponent, selector: "eui-card-header-right-content" }, { kind: "component", type: i4.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i5.EuiTabsComponent, selector: "eui-tabs", inputs: ["styleClass", "tabs", "activeTabIndex", "e2eAttr", "pathMatch", "isMainNavigation", "isHandleChangeTab", "isSubTabs", "isVerticalTabs"], outputs: ["tabClosed", "tabSelected", "tabClose", "tabSelect"] }, { kind: "component", type: i5.EuiTabComponent, selector: "eui-tab", inputs: ["url", "e2eAttr", "tooltip", "isClosable", "isVisible", "isActive", "isDisabled", "hasBackgroundFilled", "isHandleCloseOnClose"] }, { kind: "directive", type: i5.EuiTabsRightContentTagDirective, selector: "euiTabsRightContent" }, { kind: "component", type: i5.EuiTabLabelComponent, selector: "eui-tab-label, euiTabLabel" }, { kind: "component", type: i5.EuiTabContentComponent, selector: "eui-tab-content, euiTabContent", inputs: ["hasNoContentPadding"] }, { kind: "component", type: i6.EuiChipComponent, selector: "eui-chip, span[euiChip], li[euiChip]", inputs: ["euiInternalId", "tooltipMessage", "id", "data", "isChipRemovable", "isSquared"], outputs: ["remove"] }, { kind: "component", type: i7.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["aria-label"] }, { kind: "component", type: i8.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i9.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DocPagePatternComponent, decorators: [{
|
|
81
|
+
type: Component,
|
|
82
|
+
args: [{ selector: 'eui-showcase-doc-page-pattern', encapsulation: ViewEncapsulation.None, template: "<eui-tabs (tabSelect)=\"onTabSelect($event)\">\r\n <eui-tab>\r\n <euiTabLabel>Usage and documentation</euiTabLabel>\r\n <euiTabContent>\r\n <h2 class=\"eui-u-color-primary-100 eui-u-mb-none\">{{ label }}</h2>\r\n\r\n <h3>Information</h3>\r\n <ng-content select=\"docPagePatternDoc\"></ng-content>\r\n\r\n <ng-container *ngIf=\"figmaEmbedSrc; else screenshot\">\r\n <h3 class=\"eui-u-mt-2xl\">Figma design anatomy</h3>\r\n <iframe id=\"iframe-figma\" style=\"border: 1px solid rgba(0, 0, 0, 0.1)\" width=\"100%\" height=\"650\" [src]=\"urlSafe\"></iframe>\r\n </ng-container>\r\n <ng-template #screenshot>\r\n <ng-container *ngIf=\"figmaUrl !== 'PENDING_DS'\">\r\n <h3 class=\"eui-u-mt-2xl\">Anatomy</h3>\r\n <img\r\n src=\"assets/images/design-system/{{ anatomyImage }}\"\r\n alt=\"Design anatomy image\"\r\n width=\"90%\"\r\n class=\"eui-u-shadow-6 eui-u-mb-m\" />\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-container *ngIf=\"docEntries.length !== 0\">\r\n <h3 class=\"eui-u-mt-2xl\">Design system references</h3>\r\n\r\n <eui-card *ngFor=\"let ref of docEntries\" class=\"eui-u-mb-m\" [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\">\r\n <eui-card-header>\r\n <eui-card-header-title>\r\n <div class=\"eui-u-flex\">\r\n <eui-badge *ngIf=\"ref?.id\" euiSizeXL class=\"eui-u-mr-s\">{{ ref.id }}</eui-badge>\r\n <span class=\"eui-u-font-size-l\">{{ ref.name }}</span>\r\n </div>\r\n </eui-card-header-title>\r\n <eui-card-header-right-content>\r\n <eui-chip [euiWarning]=\"ref.mandatory\" [euiInfo]=\"!ref.mandatory\" class=\"eui-u-ml-m\">\r\n <span *ngIf=\"ref.mandatory\" euiLabel><strong> Mandatory </strong></span>\r\n <span *ngIf=\"!ref.mandatory\" euiLabel><strong> Optional </strong></span>\r\n </eui-chip>\r\n </eui-card-header-right-content>\r\n </eui-card-header>\r\n <eui-card-content>\r\n <h6 class=\"section-title eui-u-mt-none\"><strong>Description</strong></h6>\r\n <div class=\"html\" [innerHTML]=\"ref.description\"></div>\r\n\r\n <ng-container *ngIf=\"ref.whenToUse\">\r\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to use ?</strong></h6>\r\n <div class=\"html\" [innerHTML]=\"ref.whenToUse\"></div>\r\n </ng-container>\r\n <ng-container *ngIf=\"ref.whenNotToUse\">\r\n <h6 class=\"section-title eui-u-mt-xl\"><strong>When to not use ?</strong></h6>\r\n <div class=\"html\" [innerHTML]=\"ref.whenNotToUse\"></div>\r\n </ng-container>\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <ng-container *ngIf=\"ref.dos && ref.dos.length !== 0\">\r\n <h6 class=\"section-title eui-u-mt-xl\">\r\n <eui-icon-svg\r\n icon=\"thumbs-up\"\r\n set=\"sharp\"\r\n size=\"m\"\r\n fillColor=\"success-100\"\r\n class=\"eui-u-mr-m\"></eui-icon-svg>\r\n <strong>Do's</strong>\r\n </h6>\r\n <li *ngFor=\"let do of ref.dos\">{{ do }}</li>\r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <ng-container *ngIf=\"ref.donts && ref.donts.length !== 0\">\r\n <h6 class=\"section-title eui-u-mt-xl\">\r\n <eui-icon-svg\r\n icon=\"hand-right\"\r\n set=\"sharp\"\r\n size=\"m\"\r\n fillColor=\"danger-100\"\r\n class=\"eui-u-mr-m\"></eui-icon-svg>\r\n <strong>Dont's</strong>\r\n </h6>\r\n <li *ngFor=\"let dont of ref.donts\">{{ dont }}</li>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </eui-card-content>\r\n </eui-card>\r\n </ng-container>\r\n\r\n <!-- <ng-container *ngIf=\"dos.length !== 0\">\r\n <h3 class=\"eui-u-mt-2xl eui-u-color-success-100\">Do's</h3>\r\n <table class=\"eui-table-default\">\r\n <tr *ngFor=\"let ref of dos\">\r\n <td>{{ref.description}}</td>\r\n </tr>\r\n </table>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"donts.length !== 0\">\r\n <h3 class=\"eui-u-mt-2xl eui-u-color-danger-100\">Dont's</h3>\r\n <table class=\"eui-table-default\">\r\n <tr *ngFor=\"let ref of donts\">\r\n <td>{{ref.description}}</td>\r\n </tr>\r\n </table>\r\n </ng-container> -->\r\n\r\n <h3 class=\"eui-u-mt-2xl\">Figma resource</h3>\r\n <ng-container *ngIf=\"figmaUrl === 'PENDING_DS'; else figmaOK\">\r\n Pending Design system publication. Will be available in a future release.\r\n </ng-container>\r\n <ng-template #figmaOK>\r\n <eui-card>\r\n <eui-card-header>\r\n <eui-card-header-left-content>\r\n <img\r\n width=\"32\"\r\n height=\"32\"\r\n alt=\"Figma Logo\"\r\n src=\"data:image/png;base64,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\" />\r\n </eui-card-header-left-content>\r\n <eui-card-header-title>\r\n <a\r\n class=\"h5 eui-u-text-link-external\"\r\n href=\"https://www.figma.com/file/jQ9htWvSM8SWTPuk3hoigc/{{ figmaUrl }}\"\r\n target=\"blank\">\r\n <span class=\"eui-u-color-grey-75\">Layout component /</span>\r\n {{ label }}\r\n </a>\r\n </eui-card-header-title>\r\n </eui-card-header>\r\n </eui-card>\r\n </ng-template>\r\n </euiTabContent>\r\n </eui-tab>\r\n <eui-tab>\r\n <euiTabLabel>Pattern sample</euiTabLabel>\r\n <euiTabContent>\r\n <ng-content select=\"docPagePatternSample\"></ng-content>\r\n </euiTabContent>\r\n </eui-tab>\r\n\r\n <euiTabsRightContent>\r\n <button type=\"button\" euiButton euiAccent euiSizeS (click)=\"onNavigateToCode($event)\">\r\n <span class=\"eui-icon eui-icon-code\"></span>\r\n View sources\r\n </button>\r\n </euiTabsRightContent>\r\n</eui-tabs>\r\n\r\n<button\r\n type=\"button\"\r\n *ngIf=\"isShowGoTop && tabSelectedIndex === 0\"\r\n euiButton\r\n euiIconButton\r\n euiOutline\r\n euiRounded\r\n euiSizeL\r\n class=\"eui-button-fixed eui-u-shadow-8\"\r\n (click)=\"gotoTop()\"\r\n title=\"Goto Top\"\r\n aria-label=\"Goto Top\">\r\n <!-- \uD83D\uDC46 -->\r\n <eui-icon-svg icon=\"eui-arrow-up\" set=\"eui\" size=\"l\" fillColor=\"grey-50\"></eui-icon-svg>\r\n</button>\r\n", styles: [".doc-page-pattern{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;padding:1.5rem;background-color:#f0f0f0}.doc-page-pattern sample,.doc-page-pattern eui-tabs,.doc-page-pattern .eui-tabs,.doc-page-pattern .eui-tab-content-wrapper,.doc-page-pattern .eui-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .eui-tabs .eui-tabs__items{background-color:#f0f0f0}.doc-page-pattern .eui-tabs .eui-tab-item--active,.doc-page-pattern .eui-tabs .eui-tab-item:focus{background-color:#fff}.doc-page-pattern .eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:1rem}.doc-page-pattern docPagePatternSample{display:flex;flex-direction:column;flex-grow:1;min-height:0;position:relative;width:100%;background-color:var(--eui-app-main-bg-color)}.doc-page-pattern .html{display:block;line-height:var(--eui-base-line-height);position:relative;text-align:left}\n"] }]
|
|
83
|
+
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { cssClasses: [{
|
|
84
|
+
type: HostBinding,
|
|
85
|
+
args: ['class']
|
|
86
|
+
}], sampleContent: [{
|
|
87
|
+
type: ContentChild,
|
|
88
|
+
args: [forwardRef(() => DocPagePatternSampleDirective)]
|
|
89
|
+
}], docContent: [{
|
|
90
|
+
type: ContentChild,
|
|
91
|
+
args: [forwardRef(() => DocPagePatternDocDirective)]
|
|
92
|
+
}], id: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], label: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], anatomyImage: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], docEntries: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}], dos: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], donts: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}], sourceUrl: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}], figmaUrl: [{
|
|
107
|
+
type: Input
|
|
108
|
+
}], figmaEmbedSrc: [{
|
|
109
|
+
type: Input
|
|
110
|
+
}], checkScroll: [{
|
|
111
|
+
type: HostListener,
|
|
112
|
+
args: ['window:scroll']
|
|
113
|
+
}] } });
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jLXBhZ2UtcGF0dGVybi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZG9jLXBhZ2UtcGF0dGVybi9kb2MtcGFnZS1wYXR0ZXJuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9kb2MtcGFnZS1wYXR0ZXJuL2RvYy1wYWdlLXBhdHRlcm4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEJBQTRCO0FBQzVCLE9BQU8sRUFDSCxTQUFTLEVBQ1QsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixLQUFLLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBRVYsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7QUFHdkQsb0JBQW9CO0FBRXBCLE1BQU0sT0FBTyw2QkFBNkI7OzZJQUE3Qiw2QkFBNkI7aUlBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUR6QyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFOztBQUcvQyxNQUFNLE9BQU8sMEJBQTBCOzswSUFBMUIsMEJBQTBCOzhIQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFEdEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxtQkFBbUIsRUFBRTs7QUFTNUMsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUFxQ3RELFlBQW1CLFNBQXVCO1FBQ3RDLEtBQUssRUFBRSxDQUFDO1FBRE8sY0FBUyxHQUFULFNBQVMsQ0FBYztRQXJCakMsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixRQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ1QsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQU9iLHlCQUFvQixHQUFHLEdBQUcsQ0FBQztRQUMzQixxQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFhNUIsQ0FBQztJQXRDRCxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQztTQUMxQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBc0I4QixXQUFXO1FBQ3RDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDO1FBQ2hILElBQUksY0FBYyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUM3QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUMzQjthQUFNO1lBQ0gsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBTUQsUUFBUTtRQUNKLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2pGLE1BQU0sTUFBTSxHQUF5QyxRQUFRLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ2hHO0lBQ0wsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEtBQVU7UUFDOUIsbUNBQW1DO1FBQ25DLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQztRQUMvQixNQUFNLGNBQWMsR0FBRyxzRkFBc0YsUUFBUSwyQkFBMkIsQ0FBQztRQUNqSixNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTSxXQUFXLENBQUMsS0FBOEM7UUFDN0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDeEMsQ0FBQztJQUVNLE9BQU87UUFDVixNQUFNLENBQUMsTUFBTSxDQUFDO1lBQ1YsR0FBRyxFQUFFLENBQUM7WUFDTixJQUFJLEVBQUUsQ0FBQztZQUNQLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUMsQ0FBQztJQUNQLENBQUM7O3VJQWpFUSx1QkFBdUI7MkhBQXZCLHVCQUF1QixrY0FRRCw2QkFBNkIsb0hBRTdCLDBCQUEwQiwyRUN0QzdELDg1VkFvS0E7MkZEeElhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDSSwrQkFBK0IsaUJBRTFCLGlCQUFpQixDQUFDLElBQUk7bUdBS2pDLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPO2dCQVFwQixhQUFhO3NCQURaLFlBQVk7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDZCQUE2QixDQUFDO2dCQUc3RCxVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO2dCQUdqRCxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQU95QixXQUFXO3NCQUF6QyxZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovXHJcbmltcG9ydCB7XHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBIb3N0QmluZGluZyxcclxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gICAgSW5wdXQsXHJcbiAgICBEaXJlY3RpdmUsXHJcbiAgICBDb250ZW50Q2hpbGQsXHJcbiAgICBmb3J3YXJkUmVmLFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBCYXNlRGlyZWN0aXZlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL3NoYXJlZCc7XHJcbmltcG9ydCB7IEV1aVRhYkNvbXBvbmVudCB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktdGFicyc7XHJcblxyXG4vKiBlc2xpbnQtZGlzYWJsZSAqL1xyXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdkb2NQYWdlUGF0dGVyblNhbXBsZScgfSlcclxuZXhwb3J0IGNsYXNzIERvY1BhZ2VQYXR0ZXJuU2FtcGxlRGlyZWN0aXZlIHsgfVxyXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdkb2NQYWdlUGF0dGVybkRvYycgfSlcclxuZXhwb3J0IGNsYXNzIERvY1BhZ2VQYXR0ZXJuRG9jRGlyZWN0aXZlIHsgfVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2V1aS1zaG93Y2FzZS1kb2MtcGFnZS1wYXR0ZXJuJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9kb2MtcGFnZS1wYXR0ZXJuLmNvbXBvbmVudC5odG1sJyxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9kb2MtcGFnZS1wYXR0ZXJuLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEb2NQYWdlUGF0dGVybkNvbXBvbmVudCBleHRlbmRzIEJhc2VEaXJlY3RpdmUge1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXHJcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2RvYy1wYWdlLXBhdHRlcm4nKSxcclxuICAgICAgICBdLmpvaW4oJyAnKS50cmltKCk7XHJcbiAgICB9XHJcblxyXG4gICAgQENvbnRlbnRDaGlsZChmb3J3YXJkUmVmKCgpID0+IERvY1BhZ2VQYXR0ZXJuU2FtcGxlRGlyZWN0aXZlKSlcclxuICAgIHNhbXBsZUNvbnRlbnQ6IFF1ZXJ5TGlzdDxEb2NQYWdlUGF0dGVyblNhbXBsZURpcmVjdGl2ZT47XHJcbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gRG9jUGFnZVBhdHRlcm5Eb2NEaXJlY3RpdmUpKVxyXG4gICAgZG9jQ29udGVudDogUXVlcnlMaXN0PERvY1BhZ2VQYXR0ZXJuRG9jRGlyZWN0aXZlPjtcclxuXHJcbiAgICBASW5wdXQoKSBpZDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIGFuYXRvbXlJbWFnZTogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZG9jRW50cmllcyA9IFtdO1xyXG4gICAgQElucHV0KCkgZG9zID0gW107XHJcbiAgICBASW5wdXQoKSBkb250cyA9IFtdO1xyXG4gICAgQElucHV0KCkgc291cmNlVXJsOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBmaWdtYVVybDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZmlnbWFFbWJlZFNyYzogc3RyaW5nO1xyXG5cclxuICAgIHB1YmxpYyB1cmxTYWZlOiBTYWZlUmVzb3VyY2VVcmw7XHJcbiAgICBwdWJsaWMgaXNTaG93R29Ub3A6IGJvb2xlYW47XHJcbiAgICBwdWJsaWMgdG9wUG9zVG9TdGFydFNob3dpbmcgPSAxMDA7XHJcbiAgICBwdWJsaWMgdGFiU2VsZWN0ZWRJbmRleCA9IDA7XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnNjcm9sbCcpIGNoZWNrU2Nyb2xsKCkge1xyXG4gICAgICAgIGNvbnN0IHNjcm9sbFBvc2l0aW9uID0gd2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgfHwgMDtcclxuICAgICAgICBpZiAoc2Nyb2xsUG9zaXRpb24gPj0gdGhpcy50b3BQb3NUb1N0YXJ0U2hvd2luZykge1xyXG4gICAgICAgICAgICB0aGlzLmlzU2hvd0dvVG9wID0gdHJ1ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmlzU2hvd0dvVG9wID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBzYW5pdGl6ZXI6IERvbVNhbml0aXplciApIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIGlmICh0aGlzLmZpZ21hRW1iZWRTcmMpIHtcclxuICAgICAgICAgICAgdGhpcy51cmxTYWZlID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHRoaXMuZmlnbWFFbWJlZFNyYyk7XHJcbiAgICAgICAgICAgIGNvbnN0IGlGcmFtZTogSFRNTElGcmFtZUVsZW1lbnQgPSA8SFRNTElGcmFtZUVsZW1lbnQ+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lmcmFtZS1maWdtYScpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb25OYXZpZ2F0ZVRvQ29kZShldmVudDogYW55KSB7XHJcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cclxuICAgICAgICBjb25zdCBzaG93Y2FzZSA9ICd1eC1wYXR0ZXJucyc7XHJcbiAgICAgICAgY29uc3Qgc291cmNlUm9vdFBhdGggPSBgaHR0cHM6Ly9jaXRuZXQudGVjaC5lYy5ldXJvcGEuZXUvQ0lUbmV0L3N0YXNoL3Byb2plY3RzL0NTRFIvcmVwb3MvYXBwLWV1aS1zaG93Y2FzZS0ke3Nob3djYXNlfS9icm93c2Uvc3JjL2FwcC9mZWF0dXJlcy9gO1xyXG4gICAgICAgIHdpbmRvdy5vcGVuKHNvdXJjZVJvb3RQYXRoICsgdGhpcy5zb3VyY2VVcmwsICdfYmxhbmsnKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb25UYWJTZWxlY3QoZXZlbnQ6IHsgdGFiOiBFdWlUYWJDb21wb25lbnQ7IGluZGV4OiBudW1iZXIgfSkge1xyXG4gICAgICAgIHRoaXMudGFiU2VsZWN0ZWRJbmRleCA9IGV2ZW50LmluZGV4O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnb3RvVG9wKCkge1xyXG4gICAgICAgIHdpbmRvdy5zY3JvbGwoe1xyXG4gICAgICAgICAgICB0b3A6IDAsXHJcbiAgICAgICAgICAgIGxlZnQ6IDAsXHJcbiAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iLCI8ZXVpLXRhYnMgKHRhYlNlbGVjdCk9XCJvblRhYlNlbGVjdCgkZXZlbnQpXCI+XHJcbiAgICA8ZXVpLXRhYj5cclxuICAgICAgICA8ZXVpVGFiTGFiZWw+VXNhZ2UgYW5kIGRvY3VtZW50YXRpb248L2V1aVRhYkxhYmVsPlxyXG4gICAgICAgIDxldWlUYWJDb250ZW50PlxyXG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJldWktdS1jb2xvci1wcmltYXJ5LTEwMCBldWktdS1tYi1ub25lXCI+e3sgbGFiZWwgfX08L2gyPlxyXG5cclxuICAgICAgICAgICAgPGgzPkluZm9ybWF0aW9uPC9oMz5cclxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZG9jUGFnZVBhdHRlcm5Eb2NcIj48L25nLWNvbnRlbnQ+XHJcblxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmlnbWFFbWJlZFNyYzsgZWxzZSBzY3JlZW5zaG90XCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJldWktdS1tdC0yeGxcIj5GaWdtYSBkZXNpZ24gYW5hdG9teTwvaDM+XHJcbiAgICAgICAgICAgICAgICA8aWZyYW1lIGlkPVwiaWZyYW1lLWZpZ21hXCIgc3R5bGU9XCJib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSlcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCI2NTBcIiBbc3JjXT1cInVybFNhZmVcIj48L2lmcmFtZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc2NyZWVuc2hvdD5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWdtYVVybCAhPT0gJ1BFTkRJTkdfRFMnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiZXVpLXUtbXQtMnhsXCI+QW5hdG9teTwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJhc3NldHMvaW1hZ2VzL2Rlc2lnbi1zeXN0ZW0ve3sgYW5hdG9teUltYWdlIH19XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgYWx0PVwiRGVzaWduIGFuYXRvbXkgaW1hZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjkwJVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXUtc2hhZG93LTYgZXVpLXUtbWItbVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkb2NFbnRyaWVzLmxlbmd0aCAhPT0gMFwiPlxyXG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiZXVpLXUtbXQtMnhsXCI+RGVzaWduIHN5c3RlbSByZWZlcmVuY2VzPC9oMz5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZXVpLWNhcmQgKm5nRm9yPVwibGV0IHJlZiBvZiBkb2NFbnRyaWVzXCIgY2xhc3M9XCJldWktdS1tYi1tXCIgW2V1aVdhcm5pbmddPVwicmVmLm1hbmRhdG9yeVwiIFtldWlJbmZvXT1cIiFyZWYubWFuZGF0b3J5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlci10aXRsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdS1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1iYWRnZSAqbmdJZj1cInJlZj8uaWRcIiBldWlTaXplWEwgY2xhc3M9XCJldWktdS1tci1zXCI+e3sgcmVmLmlkIH19PC9ldWktYmFkZ2U+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktdS1mb250LXNpemUtbFwiPnt7IHJlZi5uYW1lIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZXVpLWNhcmQtaGVhZGVyLXRpdGxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZXVpLWNhcmQtaGVhZGVyLXJpZ2h0LWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXVpLWNoaXAgW2V1aVdhcm5pbmddPVwicmVmLm1hbmRhdG9yeVwiIFtldWlJbmZvXT1cIiFyZWYubWFuZGF0b3J5XCIgY2xhc3M9XCJldWktdS1tbC1tXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJyZWYubWFuZGF0b3J5XCIgZXVpTGFiZWw+PHN0cm9uZz4gTWFuZGF0b3J5IDwvc3Ryb25nPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFyZWYubWFuZGF0b3J5XCIgZXVpTGFiZWw+PHN0cm9uZz4gT3B0aW9uYWwgPC9zdHJvbmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ldWktY2hpcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9ldWktY2FyZC1oZWFkZXItcmlnaHQtY29udGVudD5cclxuICAgICAgICAgICAgICAgICAgICA8L2V1aS1jYXJkLWhlYWRlcj5cclxuICAgICAgICAgICAgICAgICAgICA8ZXVpLWNhcmQtY29udGVudD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwic2VjdGlvbi10aXRsZSBldWktdS1tdC1ub25lXCI+PHN0cm9uZz5EZXNjcmlwdGlvbjwvc3Ryb25nPjwvaDY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJodG1sXCIgW2lubmVySFRNTF09XCJyZWYuZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZWYud2hlblRvVXNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3M9XCJzZWN0aW9uLXRpdGxlIGV1aS11LW10LXhsXCI+PHN0cm9uZz5XaGVuIHRvIHVzZSA/PC9zdHJvbmc+PC9oNj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJodG1sXCIgW2lubmVySFRNTF09XCJyZWYud2hlblRvVXNlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicmVmLndoZW5Ob3RUb1VzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwic2VjdGlvbi10aXRsZSBldWktdS1tdC14bFwiPjxzdHJvbmc+V2hlbiB0byBub3QgdXNlID88L3N0cm9uZz48L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImh0bWxcIiBbaW5uZXJIVE1MXT1cInJlZi53aGVuTm90VG9Vc2VcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZWYuZG9zICYmIHJlZi5kb3MubGVuZ3RoICE9PSAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNiBjbGFzcz1cInNlY3Rpb24tdGl0bGUgZXVpLXUtbXQteGxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwidGh1bWJzLXVwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQ9XCJzaGFycFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGxDb2xvcj1cInN1Y2Nlc3MtMTAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS11LW1yLW1cIj48L2V1aS1pY29uLXN2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+RG8nczwvc3Ryb25nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGRvIG9mIHJlZi5kb3NcIj57eyBkbyB9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZWYuZG9udHMgJiYgcmVmLmRvbnRzLmxlbmd0aCAhPT0gMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3M9XCJzZWN0aW9uLXRpdGxlIGV1aS11LW10LXhsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cImhhbmQtcmlnaHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldD1cInNoYXJwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbENvbG9yPVwiZGFuZ2VyLTEwMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1tci1tXCI+PC9ldWktaWNvbi1zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkRvbnQnczwvc3Ryb25nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGRvbnQgb2YgcmVmLmRvbnRzXCI+e3sgZG9udCB9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9ldWktY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPC9ldWktY2FyZD5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJkb3MubGVuZ3RoICE9PSAwXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJldWktdS1tdC0yeGwgZXVpLXUtY29sb3Itc3VjY2Vzcy0xMDBcIj5EbydzPC9oMz5cclxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImV1aS10YWJsZS1kZWZhdWx0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCByZWYgb2YgZG9zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e3JlZi5kZXNjcmlwdGlvbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZG9udHMubGVuZ3RoICE9PSAwXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJldWktdS1tdC0yeGwgZXVpLXUtY29sb3ItZGFuZ2VyLTEwMFwiPkRvbnQnczwvaDM+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJldWktdGFibGUtZGVmYXVsdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcmVmIG9mIGRvbnRzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e3JlZi5kZXNjcmlwdGlvbn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+IC0tPlxyXG5cclxuICAgICAgICAgICAgPGgzIGNsYXNzPVwiZXVpLXUtbXQtMnhsXCI+RmlnbWEgcmVzb3VyY2U8L2gzPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmlnbWFVcmwgPT09ICdQRU5ESU5HX0RTJzsgZWxzZSBmaWdtYU9LXCI+XHJcbiAgICAgICAgICAgICAgICBQZW5kaW5nIERlc2lnbiBzeXN0ZW0gcHVibGljYXRpb24uIFdpbGwgYmUgYXZhaWxhYmxlIGluIGEgZnV0dXJlIHJlbGVhc2UuXHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2ZpZ21hT0s+XHJcbiAgICAgICAgICAgICAgICA8ZXVpLWNhcmQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1jYXJkLWhlYWRlci1sZWZ0LWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMzJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD1cIkZpZ21hIExvZ29cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBT0VBQUFEaENBTUFBQUFKYlNKSUFBQUJMMUJNVkVYLy8vLy9jbUx5VGg2aVdmOEt6NE1hdlA3eVRCcjVZVVdlVVA4QXpYM1V1UC8vYlZ3QXQvNmpWLy8vcktUeVJncjJUd0N4WCtrQTAzMm02TWYzbTR1YWJQYi9hVmYvOE84QXpIbWJTZi94UEFEL2ExcnhRZ0R5U2hhYVIvOEF2djc0cEpQL3VyUC82T2IvWlZMUTcvLzgzOW41dHFqL3hMNy9iMWYvOU8vNTlmL3Izdis2NS85anpQNnllZi9wK1ArdTQvL01xdi9pei8vY3hmL0k3UC9mdmYrVTJ2NzEvZnFPNUx6VzllZDc0TElwMDQzL3k4YjRySnowZGxuL2kzL3pYVFgyam5mLzE5UC9lbXYwYkV2L3A1Ly9sNHp6V0N6MmgyNzBkVmY0ZzJEMldoenQ1dis2aGZ1emJmQ3VXT2pFMis2bnorNkJ4TzVsdSs1bzF2OU54LzdCbFA5MzB2NjNyZitVb1A5MGxQN24xdi9QcnYvaXdmL09uZitoZWZpV1pQWmkzNk8wN2RMZjkrMkE0Ylg3UzhRNkFBQUdHMGxFUVZSNG5PMmFlVmNhWnhTSFo2Slloc0hZRmpzaWczVWhhSEczUmtIQnhNUkUyelIyTTVTdWFVVy8vMmNvdzRDZ3dNejd1emw2NXgzdjgvK2NNOCs1eTd0ZHd4QUVRUkFFUVJBRVFSQUVRUkFFUVJBRVFSQ0VpRkpjT1ZxWUR1RHQwd0FXVjJwRmJvRkFpa2N2OHJsOGZpcUEvTEU5R3RkMUhjZDV1YmpFTFRLQzVlTmNmdTVKQ0JPZm1XSFlybk95V09LMkdXUWhuNThJMDFNejlIRGRwOXhDZDZnOVVmSlRObXc1bWpWdXFYNWU1ZFQ4QUVQVExKeHlhOTJ3ZEpaWDlJTU1UZHVNU01zcGh2Y1htcUZwT3ErNTVUeGVLMmNvYm1nV0lxQlloQVJSUTdQQXZnT1ltWUlFWVVQVG1XRTJQQVpxa0dSb24vQUtUcXQzVWFLaDZiN2xGQ3ptUUVHQ0lXOHB2Z0Z6bEdSb3YrUVRyTUVocEJoeXJvcDRDRW1HZkVIRXE1Qm1hQmE0ZG0rdnBoN0kwT1pxcDNQWVlrODNORTBlUVVxU0VnMGRuZ1hqQ0YzdDZZYnVJb3ZoTzd5VFVnMXRuc1B3R2FFTXFYWElzem1sbENIVnNNQWhPUE9naGh4bktGSXJwUm82SEd1K0dPcHZ1QlQ3T2l6RnZwY2FsQzBOMVpCblkwbzRIWkwzTkR3bnhHbkM0WWxxeUhOOFdubTRuYmZEOHc1RmFqVkVRNllIVTBvaDBzNzRYQmMxeTRRMEpSa3lKV2tMeFhmZlQ0OGhseUNsbTFJTUdkLzBTM2lha202RTJRUXBWelVFUTRmbmtxYkRHZHBPQ1lhOHoydndFUW8zWkx2dzduQUVLdUp2d0t3NTZ2RWRWb3Fvb2NQNlB1cnpQYVFJR3JxUm1CcUNGTUY1bWtnSXRoSVZxRVhJc0JDQkZQVlp6aWt2R29DaDdheHdpL1ZZT2xiZG9xb2JPaWNSbVdycnNLdzJYcXBzNk5vUkNxQlBhU0d2TXNHblpHZzdOdnNxT0pUYWkxeHVhbTRpTUphaGhyYnIyS2NSbU5jYlFhbTI4TzZIendNNTg0YlZCL25HeHpSUEY5bG45WUo1djd0ei91TVhvL2xwcnpSemwxSnA1dWRmZnIyNHVLalhQM3pZZnNhdEVNRHEzbVp5TnBtY0hBc2dtUnI0Ykd1L25rZ251cVRUaWZyMkZzUGZoN04yUGhzc045eHd2ZDZ6NjFsdVJDK1NhNXV6NFhxRGh1dnpnMzYrWkQxaWNmeE56ZStPNGRhUStQVWNHMncyZzZ5TkpkWDhiaHV1Qi9oNWlvbklwR3BLTllDM0RSdkJncDdqTnFOVkh6dGZLL3YxRzI2RUNyWVU5em5GdXV6TUFvSTlReFhCYUNpbWtBajJETU5UTkNxSitpMFV3UnZEZlVYQmxpSnp1MWxWYnFLM0RKOHBDN2JnTmR4VTc2TDlob0JmSXJIQktiZ0w1bWpIVUQxSDIzbjZuTkZ3RWcxaDIzQUxFa3drNXZrRVUyZ1Yrb1lOVEpDem40N0JJZlFNMFJBeUJoRmRLVHFHKzZnZ1h5V2U0eUgwRE9kaHd3VFRNUU5lQzMxRGFDM3N3bU5JU2RLeDVCNmVwR3hwK3BFVXc3MDZ3VERCc3dHSDl6TnR3eFNoRExuMk5RUy9sdUh2SkVPZTlRSTdOblVOL3lBWnBqa0UzMU1hemRqa256UkRqcHUzK0J1dVBhZ2h4ems0L2pHTXY2RkJNdFNwbHo2QzlURCtlNXFkMk85TC8zckFzd1hUcFduc3o0ZnhQK00vZ251YStOKzFVZTlMTjlBUU1yNC80VUdrM0hsenZzM2dsZGgrdDFCOVBPeUVrUFBkd2ppbnZhNUJFV1I5ZTNvRTc0Znd4a2E3TjJEeU83N2FvRUlVM3ZFZndTeUdZZng5ai9NMEVZaWd4KzY5elVTdE0xcmQ0cDdtMnVhak5KNFk5OWxFNHhITWx4cmVqSERJQVBRd1E0MW1oRDFXVS82Y2R4REQ1N3pUNlhUUExySnozajVyLzN3OC8vZXIwZnkzTyt5cnJlZjdqYnJIUmlQU3MvcUdVVzVXTHI4TUpzUDlqNTlDODlKcU1SNklwYTlodVJKcXA3ZGhSa1ZQWThPcnFwcWZ0b1laVlQ5ZERTK3p5b0o2R2w2cVIxQlBRMGhRUjhORFNGQkR3d3BRZzFvYUhvQ0MraGxXUVVIdERDdFlFZXBuV0lZRmRUTzhqcnNoSVlTYUdRTGJVVTBONFVhcW15RWxTZlV5Yk1iZUVOeVJhbWhJS1VPOURDa2gxTXF3akc2NnRUTzhpcjBoZkhBU3c4Z1IveXdsR2phNS94dUFabmpBL2RzQXRCWC9pdnUzQWJDTDBxNGg5MThqNEpjMExjRkw3cjlHb0N3WFZvWDdyeUZ3d2ZHc1RvMkdkSHlxY3Y4ekJwNm1PcTMzYmZBYjd6TDNMNE0wMFdlWlErNC9oZ0dEcUYwSTBVclViS253Z2U3MU5XdWtIWlRIVERUYmt2YTRVamJNNm5SdTZrZTFGTE02RnFHUDJwS2hzYUJhRkxVV2JOWGllRmd4YWx1RFhjckJjMTlXVmM4dWVvdm02REJhbW1mb0RaWGhBNlpXOWxDL3Jkb0l5cGxxOW82a1pWbUhNVWpRUGc0cVZTdHJkY2xXRDNWdk1FTTVhR1lxMTlmWGxlWkJiTEpURUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUh6K0I5MXhKSXpZVkswQUFBQUFBRWxGVGtTdVFtQ0NcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2V1aS1jYXJkLWhlYWRlci1sZWZ0LWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxldWktY2FyZC1oZWFkZXItdGl0bGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaDUgZXVpLXUtdGV4dC1saW5rLWV4dGVybmFsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiaHR0cHM6Ly93d3cuZmlnbWEuY29tL2ZpbGUvalE5aHRXdlNNOFNXVFB1azNob2lnYy97eyBmaWdtYVVybCB9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiYmxhbmtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS11LWNvbG9yLWdyZXktNzVcIj5MYXlvdXQgY29tcG9uZW50IC88L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgbGFiZWwgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9ldWktY2FyZC1oZWFkZXItdGl0bGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9ldWktY2FyZC1oZWFkZXI+XHJcbiAgICAgICAgICAgICAgICA8L2V1aS1jYXJkPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvZXVpVGFiQ29udGVudD5cclxuICAgIDwvZXVpLXRhYj5cclxuICAgIDxldWktdGFiPlxyXG4gICAgICAgIDxldWlUYWJMYWJlbD5QYXR0ZXJuIHNhbXBsZTwvZXVpVGFiTGFiZWw+XHJcbiAgICAgICAgPGV1aVRhYkNvbnRlbnQ+XHJcbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRvY1BhZ2VQYXR0ZXJuU2FtcGxlXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvZXVpVGFiQ29udGVudD5cclxuICAgIDwvZXVpLXRhYj5cclxuXHJcbiAgICA8ZXVpVGFic1JpZ2h0Q29udGVudD5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBldWlCdXR0b24gZXVpQWNjZW50IGV1aVNpemVTIChjbGljayk9XCJvbk5hdmlnYXRlVG9Db2RlKCRldmVudClcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktaWNvbiBldWktaWNvbi1jb2RlXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICBWaWV3IHNvdXJjZXNcclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvZXVpVGFic1JpZ2h0Q29udGVudD5cclxuPC9ldWktdGFicz5cclxuXHJcbjxidXR0b25cclxuICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgKm5nSWY9XCJpc1Nob3dHb1RvcCAmJiB0YWJTZWxlY3RlZEluZGV4ID09PSAwXCJcclxuICAgIGV1aUJ1dHRvblxyXG4gICAgZXVpSWNvbkJ1dHRvblxyXG4gICAgZXVpT3V0bGluZVxyXG4gICAgZXVpUm91bmRlZFxyXG4gICAgZXVpU2l6ZUxcclxuICAgIGNsYXNzPVwiZXVpLWJ1dHRvbi1maXhlZCBldWktdS1zaGFkb3ctOFwiXHJcbiAgICAoY2xpY2spPVwiZ290b1RvcCgpXCJcclxuICAgIHRpdGxlPVwiR290byBUb3BcIlxyXG4gICAgYXJpYS1sYWJlbD1cIkdvdG8gVG9wXCI+XHJcbiAgICA8IS0tIPCfkYYgLS0+XHJcbiAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktYXJyb3ctdXBcIiBzZXQ9XCJldWlcIiBzaXplPVwibFwiIGZpbGxDb2xvcj1cImdyZXktNTBcIj48L2V1aS1pY29uLXN2Zz5cclxuPC9idXR0b24+XHJcbiJdfQ==
|