barsa-tiles 2.0.27 → 2.0.29
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/esm2022/lib/barsa-pin-app/barsa-pin-app.component.mjs +34 -0
- package/esm2022/lib/barsa-shellbar/barsa-shellbar.component.mjs +3 -3
- package/esm2022/lib/barsa-tiles.module.mjs +8 -4
- package/esm2022/lib/shellbar/shellbar.component.mjs +3 -3
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/barsa-tiles.mjs +40 -10
- package/fesm2022/barsa-tiles.mjs.map +1 -1
- package/lib/barsa-pin-app/barsa-pin-app.component.d.ts +14 -0
- package/lib/barsa-tiles.module.d.ts +25 -23
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, inject, Input, signal } from '@angular/core';
|
|
2
|
+
import { BarsaTreeItemComponent } from 'barsa-sap-ui';
|
|
3
|
+
import { takeUntil } from 'rxjs';
|
|
4
|
+
import { AppFinderService } from '../app-finder.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "@fundamental-ngx/core/button";
|
|
8
|
+
export class BarsaPinAppComponent extends BarsaTreeItemComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this._appFinderService = inject(AppFinderService);
|
|
12
|
+
this.appGroups$ = signal([]);
|
|
13
|
+
this.pinnedAppInAppTileGroups$ = signal({});
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
super.ngOnInit();
|
|
17
|
+
this._appFinderService.appGroups$.pipe(takeUntil(this._onDestroy$)).subscribe((c) => {
|
|
18
|
+
this.appGroups$.set(c);
|
|
19
|
+
});
|
|
20
|
+
this._appFinderService.pinnedAppInAppTileGroups$.pipe(takeUntil(this._onDestroy$)).subscribe((c) => {
|
|
21
|
+
this.pinnedAppInAppTileGroups$.set(c);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
onPinTap() { }
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaPinAppComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: BarsaPinAppComponent, selector: "bt-barsa-pin-app", inputs: { titleTemplateRef: "titleTemplateRef" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"titleTemplateRef\">\n <ng-container *ngTemplateOutlet=\"titleTemplateRef\"></ng-container>\n</ng-container>\n<button\n fd-button\n [glyph]=\"'pushpin-off'\"\n [fdType]=\"\n pinnedAppInAppTileGroups$()[node.Data.Id]\n ? pinnedAppInAppTileGroups$()[node.Data.Id].length\n ? 'emphasized'\n : 'standard'\n : node.Data.$HasPinned\n ? 'emphasized'\n : 'standard'\n \"\n (click)=\"onPinTap()\"\n></button>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaPinAppComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'bt-barsa-pin-app', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"titleTemplateRef\">\n <ng-container *ngTemplateOutlet=\"titleTemplateRef\"></ng-container>\n</ng-container>\n<button\n fd-button\n [glyph]=\"'pushpin-off'\"\n [fdType]=\"\n pinnedAppInAppTileGroups$()[node.Data.Id]\n ? pinnedAppInAppTileGroups$()[node.Data.Id].length\n ? 'emphasized'\n : 'standard'\n : node.Data.$HasPinned\n ? 'emphasized'\n : 'standard'\n \"\n (click)=\"onPinTap()\"\n></button>\n" }]
|
|
31
|
+
}], propDecorators: { titleTemplateRef: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}] } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcGluLWFwcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL2JhcnNhLXBpbi1hcHAvYmFyc2EtcGluLWFwcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL2JhcnNhLXBpbi1hcHAvYmFyc2EtcGluLWFwcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUErQixNQUFNLGVBQWUsQ0FBQztBQUN2SCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQVF6RCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsc0JBQXNCO0lBTmhFOztRQVFZLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JELGVBQVUsR0FBMEMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRS9ELDhCQUF5QixHQUE2QyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7S0FZcEY7SUFWRyxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoRixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQy9GLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsUUFBUSxLQUFVLENBQUM7OEdBaEJWLG9CQUFvQjtrR0FBcEIsb0JBQW9CLGlJQ2JqQywyZ0JBaUJBOzsyRkRKYSxvQkFBb0I7a0JBTmhDLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLGdCQUFnQjtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgSW5wdXQsIHNpZ25hbCwgVGVtcGxhdGVSZWYsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXJzYVRyZWVJdGVtQ29tcG9uZW50IH0gZnJvbSAnYmFyc2Etc2FwLXVpJztcblxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNZXRhb2JqZWN0RGF0YU1vZGVsIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHsgQXBwRmluZGVyU2VydmljZSB9IGZyb20gJy4uL2FwcC1maW5kZXIuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnQtYmFyc2EtcGluLWFwcCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLXBpbi1hcHAuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JhcnNhLXBpbi1hcHAuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYVBpbkFwcENvbXBvbmVudCBleHRlbmRzIEJhcnNhVHJlZUl0ZW1Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIHRpdGxlVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgcHJpdmF0ZSBfYXBwRmluZGVyU2VydmljZSA9IGluamVjdChBcHBGaW5kZXJTZXJ2aWNlKTtcbiAgICBhcHBHcm91cHMkOiBXcml0YWJsZVNpZ25hbDxNZXRhb2JqZWN0RGF0YU1vZGVsW10+ID0gc2lnbmFsKFtdKTtcblxuICAgIHBpbm5lZEFwcEluQXBwVGlsZUdyb3VwcyQ6IFdyaXRhYmxlU2lnbmFsPFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4gPSBzaWduYWwoe30pO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuX2FwcEZpbmRlclNlcnZpY2UuYXBwR3JvdXBzJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFwcEdyb3VwcyQuc2V0KGMpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fYXBwRmluZGVyU2VydmljZS5waW5uZWRBcHBJbkFwcFRpbGVHcm91cHMkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICAgIHRoaXMucGlubmVkQXBwSW5BcHBUaWxlR3JvdXBzJC5zZXQoYyk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBvblBpblRhcCgpOiB2b2lkIHt9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidGl0bGVUZW1wbGF0ZVJlZlwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0aXRsZVRlbXBsYXRlUmVmXCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbjxidXR0b25cbiAgICBmZC1idXR0b25cbiAgICBbZ2x5cGhdPVwiJ3B1c2hwaW4tb2ZmJ1wiXG4gICAgW2ZkVHlwZV09XCJcbiAgICAgICAgcGlubmVkQXBwSW5BcHBUaWxlR3JvdXBzJCgpW25vZGUuRGF0YS5JZF1cbiAgICAgICAgICAgID8gcGlubmVkQXBwSW5BcHBUaWxlR3JvdXBzJCgpW25vZGUuRGF0YS5JZF0ubGVuZ3RoXG4gICAgICAgICAgICAgICAgPyAnZW1waGFzaXplZCdcbiAgICAgICAgICAgICAgICA6ICdzdGFuZGFyZCdcbiAgICAgICAgICAgIDogbm9kZS5EYXRhLiRIYXNQaW5uZWRcbiAgICAgICAgICAgID8gJ2VtcGhhc2l6ZWQnXG4gICAgICAgICAgICA6ICdzdGFuZGFyZCdcbiAgICBcIlxuICAgIChjbGljayk9XCJvblBpblRhcCgpXCJcbj48L2J1dHRvbj5cbiJdfQ==
|
|
@@ -106,11 +106,11 @@ export class BarsaShellbarComponent extends BaseComponent {
|
|
|
106
106
|
this.cultureChanged.emit(culture);
|
|
107
107
|
}
|
|
108
108
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaShellbarComponent, deps: [{ token: i1.NotificationService }, { token: i2.DialogService }, { token: i3.Router }, { token: i1.PortalService }, { token: DOCUMENT }, { token: APP_VERSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaShellbarComponent, selector: "bt-barsa-shellbar", inputs: { cssCustomUrl: "cssCustomUrl", cssUrl: "cssUrl", allowAnonymous: "allowAnonymous", multiLanguages: "multiLanguages", userLoggedIn: "userLoggedIn", settings: "settings", productMenuControl: "productMenuControl", deviceSize: "deviceSize", cultures: "cultures", shellbarData: "shellbarData", notificationCount: "notificationCount", notifcationLoaded: "notifcationLoaded", notificationLoading: "notificationLoading", notifications: "notifications", productMenuItems1: "productMenuItems1", bodyClick: "bodyClick", logo: "logo", actions: "actions", userMenu: "userMenu", productSwitcher: "productSwitcher", subtitle: "subtitle", isMobile: "isMobile", hideShellbarActions: "hideShellbarActions", showExtraButton: "showExtraButton", isTablet: "isTablet", isDesktop: "isDesktop", isServiceDesk: "isServiceDesk", isOpenQuickAccess: "isOpenQuickAccess", sideMenuTemplate: "sideMenuTemplate" }, outputs: { isOpenQuickAccessChanged: "isOpenQuickAccessChanged", openNotificationPanel: "openNotificationPanel", openQuickAccessPanel: "openQuickAccessPanel", cultureChanged: "cultureChanged", notificationLoadMore: "notificationLoadMore", removeNotification: "removeNotification", notifiationActionClick: "notifiationActionClick", notificationViewed: "notificationViewed" }, viewQueries: [{ propertyName: "comboboxComponent", first: true, predicate: ComboboxComponent, descendants: true }, { propertyName: "popoverComponent", first: true, predicate: ["popoverComponent"], descendants: true }, { propertyName: "_notificationsDialog", first: true, predicate: ["notificationsDialog"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if (cssUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n} @if (cssCustomUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n} @if (userLoggedIn || allowAnonymous) {\n<fd-shellbar\n [size]=\"deviceSize\"\n [ngClass]=\"deviceSize\"\n routeFormChange\n (stateChanged)=\"onRouteFormStateChange()\"\n [bodyClick]=\"true\"\n>\n @if (sideMenuTemplate) {\n <fd-shellbar-action\n [glyph]=\"'apps'\"\n [label]=\"'Quick Access' | bbbTranslate\"\n [notificationCount]=\"notificationCount.unread ?? 0\"\n [notificationLabel]=\"'Quick Access' | bbbTranslate\"\n [callback]=\"onOpenQuickAccess\"\n >\n </fd-shellbar-action>\n } @if (sideMenuTemplate) {\n <button\n fd-shellbar-side-nav\n fd-button\n fdType=\"transparent\"\n glyph=\"menu2\"\n style=\"width: 2.75rem\"\n (click)=\"$event.stopPropagation(); isOpenQuickAccessChanged.emit(!isOpenQuickAccess)\"\n ></button>\n } @if (logo) {\n <fd-shellbar-logo>\n <a\n [style.backgroundImage]=\"'url(' + (logo?.FileId | picFieldSrc: 'GetPictureFromFileInfo':null) + ')'\"\n href=\"/\"\n class=\"fd-shellbar__logo fd-shellbar__logo--image-replaced\"\n aria-label=\"Barsa Novin Ray\"\n ></a>\n </fd-shellbar-logo>\n } @if (!settings?.HideProductMenu && productMenuItems1 && productMenuItems1.length > 0) {\n <fd-product-menu [control]=\"productMenuControl\" [closePopoverOnSelect]=\"true\" [items]=\"productMenuItems1\">\n </fd-product-menu>\n }\n <fd-shellbar-subtitle> {{ subtitle | bbbTranslate }}{{ showVersion ? appVersion : '' }}</fd-shellbar-subtitle>\n @if (!hideShellbarActions&& user && (userMenu?.length || !settings?.HideLanguage)) {\n <fd-shellbar-actions [user]=\"user\" [userMenu]=\"userMenu\" #langRef>\n @for (action of actions; track action) {\n <fd-shellbar-action\n [glyph]=\"action.Icon\"\n [callback]=\"action.Callback\"\n [label]=\"action.Label\"\n notificationLabel=\"login\"\n >\n </fd-shellbar-action>\n } @if (deviceSize === 's' && userLoggedIn && !settings?.HideNotifications) {\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notifications' | bbbTranslate\"\n [notificationCount]=\"notificationCount.unread ?? 0\"\n [notificationLabel]=\"'Notifications' | bbbTranslate\"\n [callback]=\"onBellNotification\"\n >\n </fd-shellbar-action>\n } @if (!settings?.HideNotifications && userLoggedIn) {\n <fd-popover\n [(isOpen)]=\"isOpenNotificatoin\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [noArrow]=\"true\"\n placement=\"bottom\"\n title=\"Notification Popover\"\n [focusAutoCapture]=\"true\"\n [mobile]=\"deviceSize === 's'\"\n #popoverComponent\n >\n <fd-popover-control>\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notification'\"\n [notificationCount]=\"notificationCount.unread\"\n [notificationLabel]=\"'Notification Label'\"\n [callback]=\"onOpenNotification\"\n >\n </fd-shellbar-action>\n </fd-popover-control>\n <fd-popover-body style=\"min-width: 320px; overflow-x: auto; box-shadow: var(--sapContent_Shadow0)\">\n <ng-container\n *ngTemplateOutlet=\"notificationGroupTpl; context: { notificationCount: notificationCount }\"\n ></ng-container>\n </fd-popover-body>\n </fd-popover>\n } @if (!settings?.HideLanguage && deviceSize !== 's' && multiLanguages) {\n <fd-shellbar-action [glyph]=\"'world'\" [label]=\"'language'\" [fdMenuTrigger]=\"menu\" (callback)=\"(onLanguage)\">\n </fd-shellbar-action>\n } @if (!settings?.HideLanguage && deviceSize === 's' && multiLanguages) { @for (culture of cultures | keyvalue;\n track culture) {\n <fd-shellbar-action\n [label]=\"culture.value\"\n [callback]=\"onLanguage\"\n class=\"culture-abbrivation\"\n [glyph]=\"culture.key\"\n [ngClass]=\"'flags'\"\n >\n </fd-shellbar-action>\n } } @if (productSwitcher?.length) {\n <fd-product-switch>\n <fd-product-switch-body [products]=\"productSwitcher\" [forceListMode]=\"deviceSize === 's'\">\n </fd-product-switch-body>\n </fd-product-switch>\n }\n </fd-shellbar-actions>\n }\n</fd-shellbar>\n} @if(showExtraButton){\n<div\n [class.fd-shellbar--xl]=\"isDesktop\"\n [class.fd-shellbar--m]=\"isTablet\"\n [class.fd-shellbar--s]=\"isMobile\"\n class=\"extra-button-wrapper\"\n [class.service-desk]=\"isServiceDesk\"\n>\n <ng-content select=\"button\"></ng-content>\n</div>\n}\n<ng-template #loading>\n <bsu-mask></bsu-mask>\n</ng-template>\n\n<div\n *ngIf=\"sideMenuTemplate\"\n class=\"sidemenu-h tw-fixed tw-bg-white tw-transition-all tw-z-[100] tw-shadow-2xl tw-overflow-auto\"\n [class.tw-w-screen]=\"isMobile\"\n [class.-tw-right-full]=\"isMobile\"\n [class.tw-w-96]=\"!isMobile\"\n [class.-tw-right-96]=\"!isMobile\"\n [class.!tw-right-0]=\"isOpenQuickAccess\"\n (click)=\"$event.stopPropagation()\"\n>\n <ng-container *ngTemplateOutlet=\"sideMenuTemplate\"></ng-container>\n</div>\n\n@if(isOpenQuickAccess) {\n<div\n class=\"sidemenu-h tw-fixed tw-right-0 tw-bg-slate-800/[.5] tw-z-[90] tw-w-screen tw-backdrop-blur-sm\"\n (click)=\"isOpenQuickAccessChanged.emit(false)\"\n></div>\n}\n<fd-menu #menu>\n <ul fd-list>\n @for (culture of cultures | keyvalue; track culture) {\n <li fd-list-item>\n <a fd-list-link (click)=\"onCultureChange(culture.value)\">\n <span fd-list-title>\n <img width=\"14px\" height=\"12px\" [src]=\"'/assets/flags/' + culture.key + '.png'\" />\n <span class=\"culture-abbrivation\" [ngClass]=\"culture.key\"> {{ culture.key }}</span>\n </span>\n </a>\n </li>\n }\n </ul>\n</fd-menu>\n<ng-template #notificationGroupTpl let-notificationCount=\"notificationCount\">\n @if (!notifcationLoaded && notificationLoading === true) {\n <div style=\"position: relative; height: 100px\">\n <bsu-mask size=\"s\"></bsu-mask>\n </div>\n }\n <bt-notification-group\n [notifications]=\"notifications\"\n [notificationCount]=\"notificationCount\"\n [loading]=\"notificationLoading === true\"\n (viewed)=\"onNotificationItemViewed($event)\"\n (remove)=\"onRemoveNotifications($event)\"\n (showEvent)=\"popoverComponent.close(); onShowNotification($event)\"\n (actionClick)=\"popoverComponent.close(); onNotificationAction($event)\"\n (loadMore)=\"onNotificationLoadMore()\"\n [deviceSize]=\"deviceSize\"\n ></bt-notification-group>\n</ng-template>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #notificationsDialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header-10\" fd-title>{{ 'Notification' | bbbTranslate }}</h1>\n <button fd-dialog-close-button (click)=\"dialog.dismiss()\"></button>\n </fd-dialog-header>\n <fd-dialog-body class=\"mobile\">\n <ng-container\n *ngTemplateOutlet=\"notificationGroupTpl; context: { notificationCount: notificationCount }\"\n ></ng-container>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n", styles: [":host{display:block;position:relative}:host ::ng-deep fd-shellbar-actions fd-avatar{background-color:transparent!important;color:var(--sapShell_InteractiveTextColor, #d1e8ff)}:host ::ng-deep fd-combobox .fd-input-group input{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}:host ::ng-deep fd-combobox .fd-input-group span{min-width:2rem;min-height:1.625rem}:host ::ng-deep .fd-shellbar__subtitle{font-size:1rem}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__subtitle{display:block;overflow:hidden;text-wrap:wrap;width:100%;word-break:break-all}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__group.fd-shellbar__group--product{flex:1}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__group.fd-shellbar__group--actions{max-width:120px}.fd-shellbar__logo{min-height:3rem;height:3rem;width:3rem}.extra-button-wrapper{display:flex;height:100%;align-items:center;position:absolute;left:10px;top:0;gap:.285rem}.sidemenu-h{top:var(--fdShellbar_Height);height:calc(100vh - var(--fdShellbar_Height))}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i6.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator", "role"], outputs: ["focusEscapeList"] }, { kind: "component", type: i6.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "ariaRole", "id"], outputs: ["keyDown"] }, { kind: "directive", type: i6.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i6.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: i7.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "directive", type: i7.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i8.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i8.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i8.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i8.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: i9.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i10.ProductSwitchComponent, selector: "fd-product-switch", inputs: ["placement", "disabled"] }, { kind: "component", type: i10.ProductSwitchBodyComponent, selector: "fd-product-switch-body", inputs: ["dragAndDropEnabled", "products", "forceListMode"], outputs: ["productsChange", "itemClicked"] }, { kind: "component", type: i11.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i11.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i11.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i12.ShellbarComponent, selector: "fd-shellbar", inputs: ["size", "breakpoints", "sideNav", "groupFlex"] }, { kind: "component", type: i12.ProductMenuComponent, selector: "fd-product-menu", inputs: ["closeOnEscapeKey", "closeOnOutsideClick", "triggers", "placement", "disabled", "fillControlMode", "control", "items", "closePopoverOnSelect"] }, { kind: "component", type: i12.ShellbarSubtitleComponent, selector: "fd-shellbar-subtitle" }, { kind: "component", type: i12.ShellbarActionsComponent, selector: "fd-shellbar-actions", inputs: ["user", "userMenu", "closePopoverOnSelect"], outputs: ["searchOpen"] }, { kind: "component", type: i12.ShellbarActionComponent, selector: "fd-shellbar-action", inputs: ["glyph", "glyphFont", "callback", "label", "notificationLabel", "notificationCount"] }, { kind: "component", type: i12.ShellbarLogoComponent, selector: "fd-shellbar-logo" }, { kind: "directive", type: i12.ShellbarSidenavDirective, selector: "[fdShellbarSidenav], [fd-shellbar-side-nav]" }, { kind: "directive", type: i1.MobileDirective, selector: "[mobile]" }, { kind: "directive", type: i1.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "directive", type: i1.RouteFormChangeDirective, selector: "[routeFormChange]", inputs: ["bodyClick"], outputs: ["stateChanged"] }, { kind: "component", type: i13.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i14.NotificationGroupComponent, selector: "bt-notification-group", inputs: ["notifications", "loading", "deviceSize", "notificationCount"], outputs: ["viewed", "remove", "actionClick", "showEvent", "loadMore"] }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i1.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaShellbarComponent, selector: "bt-barsa-shellbar", inputs: { cssCustomUrl: "cssCustomUrl", cssUrl: "cssUrl", allowAnonymous: "allowAnonymous", multiLanguages: "multiLanguages", userLoggedIn: "userLoggedIn", settings: "settings", productMenuControl: "productMenuControl", deviceSize: "deviceSize", cultures: "cultures", shellbarData: "shellbarData", notificationCount: "notificationCount", notifcationLoaded: "notifcationLoaded", notificationLoading: "notificationLoading", notifications: "notifications", productMenuItems1: "productMenuItems1", bodyClick: "bodyClick", logo: "logo", actions: "actions", userMenu: "userMenu", productSwitcher: "productSwitcher", subtitle: "subtitle", isMobile: "isMobile", hideShellbarActions: "hideShellbarActions", showExtraButton: "showExtraButton", isTablet: "isTablet", isDesktop: "isDesktop", isServiceDesk: "isServiceDesk", isOpenQuickAccess: "isOpenQuickAccess", sideMenuTemplate: "sideMenuTemplate" }, outputs: { isOpenQuickAccessChanged: "isOpenQuickAccessChanged", openNotificationPanel: "openNotificationPanel", openQuickAccessPanel: "openQuickAccessPanel", cultureChanged: "cultureChanged", notificationLoadMore: "notificationLoadMore", removeNotification: "removeNotification", notifiationActionClick: "notifiationActionClick", notificationViewed: "notificationViewed" }, viewQueries: [{ propertyName: "comboboxComponent", first: true, predicate: ComboboxComponent, descendants: true }, { propertyName: "popoverComponent", first: true, predicate: ["popoverComponent"], descendants: true }, { propertyName: "_notificationsDialog", first: true, predicate: ["notificationsDialog"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if (cssUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n} @if (cssCustomUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n} @if (userLoggedIn || allowAnonymous) {\n<fd-shellbar\n [size]=\"deviceSize\"\n [ngClass]=\"deviceSize\"\n routeFormChange\n (stateChanged)=\"onRouteFormStateChange()\"\n [handleBodyClick]=\"true\"\n>\n @if (sideMenuTemplate) {\n <fd-shellbar-action\n [glyph]=\"'apps'\"\n [label]=\"'Quick Access' | bbbTranslate\"\n [notificationCount]=\"notificationCount.unread ?? 0\"\n [notificationLabel]=\"'Quick Access' | bbbTranslate\"\n [callback]=\"onOpenQuickAccess\"\n >\n </fd-shellbar-action>\n } @if (sideMenuTemplate) {\n <button\n fd-shellbar-side-nav\n fd-button\n fdType=\"transparent\"\n glyph=\"menu2\"\n style=\"width: 2.75rem\"\n (click)=\"$event.stopPropagation(); isOpenQuickAccessChanged.emit(!isOpenQuickAccess)\"\n ></button>\n } @if (logo) {\n <fd-shellbar-logo>\n <a\n [style.backgroundImage]=\"'url(' + (logo?.FileId | picFieldSrc: 'GetPictureFromFileInfo':null) + ')'\"\n href=\"/\"\n class=\"fd-shellbar__logo fd-shellbar__logo--image-replaced\"\n aria-label=\"Barsa Novin Ray\"\n ></a>\n </fd-shellbar-logo>\n } @if (!settings?.HideProductMenu && productMenuItems1 && productMenuItems1.length > 0) {\n <fd-product-menu [control]=\"productMenuControl\" [closePopoverOnSelect]=\"true\" [items]=\"productMenuItems1\">\n </fd-product-menu>\n }\n <fd-shellbar-subtitle> {{ subtitle | bbbTranslate }}{{ showVersion ? appVersion : '' }}</fd-shellbar-subtitle>\n @if (!hideShellbarActions&& user && (userMenu?.length || !settings?.HideLanguage)) {\n <fd-shellbar-actions [user]=\"user\" [userMenu]=\"userMenu\" #langRef>\n @for (action of actions; track action) {\n <fd-shellbar-action\n [glyph]=\"action.Icon\"\n [callback]=\"action.Callback\"\n [label]=\"action.Label\"\n notificationLabel=\"login\"\n >\n </fd-shellbar-action>\n } @if (deviceSize === 's' && userLoggedIn && !settings?.HideNotifications) {\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notifications' | bbbTranslate\"\n [notificationCount]=\"notificationCount.unread ?? 0\"\n [notificationLabel]=\"'Notifications' | bbbTranslate\"\n [callback]=\"onBellNotification\"\n >\n </fd-shellbar-action>\n } @if (!settings?.HideNotifications && userLoggedIn) {\n <fd-popover\n [(isOpen)]=\"isOpenNotificatoin\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [noArrow]=\"true\"\n placement=\"bottom\"\n title=\"Notification Popover\"\n [focusAutoCapture]=\"true\"\n [mobile]=\"deviceSize === 's'\"\n #popoverComponent\n >\n <fd-popover-control>\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notification'\"\n [notificationCount]=\"notificationCount.unread\"\n [notificationLabel]=\"'Notification Label'\"\n [callback]=\"onOpenNotification\"\n >\n </fd-shellbar-action>\n </fd-popover-control>\n <fd-popover-body style=\"min-width: 320px; overflow-x: auto; box-shadow: var(--sapContent_Shadow0)\">\n <ng-container\n *ngTemplateOutlet=\"notificationGroupTpl; context: { notificationCount: notificationCount }\"\n ></ng-container>\n </fd-popover-body>\n </fd-popover>\n } @if (!settings?.HideLanguage && deviceSize !== 's' && multiLanguages) {\n <fd-shellbar-action [glyph]=\"'world'\" [label]=\"'language'\" [fdMenuTrigger]=\"menu\" (callback)=\"(onLanguage)\">\n </fd-shellbar-action>\n } @if (!settings?.HideLanguage && deviceSize === 's' && multiLanguages) { @for (culture of cultures | keyvalue;\n track culture) {\n <fd-shellbar-action\n [label]=\"culture.value\"\n [callback]=\"onLanguage\"\n class=\"culture-abbrivation\"\n [glyph]=\"culture.key\"\n [ngClass]=\"'flags'\"\n >\n </fd-shellbar-action>\n } } @if (productSwitcher?.length) {\n <fd-product-switch>\n <fd-product-switch-body [products]=\"productSwitcher\" [forceListMode]=\"deviceSize === 's'\">\n </fd-product-switch-body>\n </fd-product-switch>\n }\n </fd-shellbar-actions>\n }\n</fd-shellbar>\n} @if(showExtraButton){\n<div\n [class.fd-shellbar--xl]=\"isDesktop\"\n [class.fd-shellbar--m]=\"isTablet\"\n [class.fd-shellbar--s]=\"isMobile\"\n class=\"extra-button-wrapper\"\n [class.service-desk]=\"isServiceDesk\"\n>\n <ng-content select=\"button\"></ng-content>\n</div>\n}\n<ng-template #loading>\n <bsu-mask></bsu-mask>\n</ng-template>\n\n<div\n *ngIf=\"sideMenuTemplate\"\n class=\"sidemenu-h tw-fixed tw-bg-white tw-transition-all tw-z-[100] tw-shadow-2xl tw-overflow-auto\"\n [class.tw-w-screen]=\"isMobile\"\n [class.-tw-right-full]=\"isMobile\"\n [class.tw-w-96]=\"!isMobile\"\n [class.-tw-right-96]=\"!isMobile\"\n [class.!tw-right-0]=\"isOpenQuickAccess\"\n (click)=\"$event.stopPropagation()\"\n>\n <ng-container *ngTemplateOutlet=\"sideMenuTemplate\"></ng-container>\n</div>\n\n@if(isOpenQuickAccess) {\n<div\n class=\"sidemenu-h tw-fixed tw-right-0 tw-bg-slate-800/[.5] tw-z-[90] tw-w-screen tw-backdrop-blur-sm\"\n (click)=\"isOpenQuickAccessChanged.emit(false)\"\n></div>\n}\n<fd-menu #menu>\n <ul fd-list>\n @for (culture of cultures | keyvalue; track culture) {\n <li fd-list-item>\n <a fd-list-link (click)=\"onCultureChange(culture.value)\">\n <span fd-list-title>\n <img width=\"14px\" height=\"12px\" [src]=\"'/assets/flags/' + culture.key + '.png'\" />\n <span class=\"culture-abbrivation\" [ngClass]=\"culture.key\"> {{ culture.key }}</span>\n </span>\n </a>\n </li>\n }\n </ul>\n</fd-menu>\n<ng-template #notificationGroupTpl let-notificationCount=\"notificationCount\">\n @if (!notifcationLoaded && notificationLoading === true) {\n <div style=\"position: relative; height: 100px\">\n <bsu-mask size=\"s\"></bsu-mask>\n </div>\n }\n <bt-notification-group\n [notifications]=\"notifications\"\n [notificationCount]=\"notificationCount\"\n [loading]=\"notificationLoading === true\"\n (viewed)=\"onNotificationItemViewed($event)\"\n (remove)=\"onRemoveNotifications($event)\"\n (showEvent)=\"popoverComponent.close(); onShowNotification($event)\"\n (actionClick)=\"popoverComponent.close(); onNotificationAction($event)\"\n (loadMore)=\"onNotificationLoadMore()\"\n [deviceSize]=\"deviceSize\"\n ></bt-notification-group>\n</ng-template>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #notificationsDialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header-10\" fd-title>{{ 'Notification' | bbbTranslate }}</h1>\n <button fd-dialog-close-button (click)=\"dialog.dismiss()\"></button>\n </fd-dialog-header>\n <fd-dialog-body class=\"mobile\">\n <ng-container\n *ngTemplateOutlet=\"notificationGroupTpl; context: { notificationCount: notificationCount }\"\n ></ng-container>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n", styles: [":host{display:block;position:relative}:host ::ng-deep fd-shellbar-actions fd-avatar{background-color:transparent!important;color:var(--sapShell_InteractiveTextColor, #d1e8ff)}:host ::ng-deep fd-combobox .fd-input-group input{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}:host ::ng-deep fd-combobox .fd-input-group span{min-width:2rem;min-height:1.625rem}:host ::ng-deep .fd-shellbar__subtitle{font-size:1rem}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__subtitle{display:block;overflow:hidden;text-wrap:wrap;width:100%;word-break:break-all}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__group.fd-shellbar__group--product{flex:1}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__group.fd-shellbar__group--actions{max-width:120px}.fd-shellbar__logo{min-height:3rem;height:3rem;width:3rem}.extra-button-wrapper{display:flex;height:100%;align-items:center;position:absolute;left:10px;top:0;gap:.285rem}.sidemenu-h{top:var(--fdShellbar_Height);height:calc(100vh - var(--fdShellbar_Height))}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i6.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator", "role"], outputs: ["focusEscapeList"] }, { kind: "component", type: i6.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "ariaRole", "id"], outputs: ["keyDown"] }, { kind: "directive", type: i6.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i6.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: i7.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "directive", type: i7.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i8.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i8.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i8.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i8.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: i9.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i10.ProductSwitchComponent, selector: "fd-product-switch", inputs: ["placement", "disabled"] }, { kind: "component", type: i10.ProductSwitchBodyComponent, selector: "fd-product-switch-body", inputs: ["dragAndDropEnabled", "products", "forceListMode"], outputs: ["productsChange", "itemClicked"] }, { kind: "component", type: i11.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i11.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i11.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i12.ShellbarComponent, selector: "fd-shellbar", inputs: ["size", "breakpoints", "sideNav", "groupFlex"] }, { kind: "component", type: i12.ProductMenuComponent, selector: "fd-product-menu", inputs: ["closeOnEscapeKey", "closeOnOutsideClick", "triggers", "placement", "disabled", "fillControlMode", "control", "items", "closePopoverOnSelect"] }, { kind: "component", type: i12.ShellbarSubtitleComponent, selector: "fd-shellbar-subtitle" }, { kind: "component", type: i12.ShellbarActionsComponent, selector: "fd-shellbar-actions", inputs: ["user", "userMenu", "closePopoverOnSelect"], outputs: ["searchOpen"] }, { kind: "component", type: i12.ShellbarActionComponent, selector: "fd-shellbar-action", inputs: ["glyph", "glyphFont", "callback", "label", "notificationLabel", "notificationCount"] }, { kind: "component", type: i12.ShellbarLogoComponent, selector: "fd-shellbar-logo" }, { kind: "directive", type: i12.ShellbarSidenavDirective, selector: "[fdShellbarSidenav], [fd-shellbar-side-nav]" }, { kind: "directive", type: i1.MobileDirective, selector: "[mobile]" }, { kind: "directive", type: i1.RouteFormChangeDirective, selector: "[routeFormChange]", inputs: ["handleBodyClick"], outputs: ["stateChanged"] }, { kind: "component", type: i13.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i14.NotificationGroupComponent, selector: "bt-notification-group", inputs: ["notifications", "loading", "deviceSize", "notificationCount"], outputs: ["viewed", "remove", "actionClick", "showEvent", "loadMore"] }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i1.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
110
110
|
}
|
|
111
111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaShellbarComponent, decorators: [{
|
|
112
112
|
type: Component,
|
|
113
|
-
args: [{ selector: 'bt-barsa-shellbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (cssUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n} @if (cssCustomUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n} @if (userLoggedIn || allowAnonymous) {\n<fd-shellbar\n [size]=\"deviceSize\"\n [ngClass]=\"deviceSize\"\n routeFormChange\n (stateChanged)=\"onRouteFormStateChange()\"\n [
|
|
113
|
+
args: [{ selector: 'bt-barsa-shellbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (cssUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n} @if (cssCustomUrl) {\n<link type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n} @if (userLoggedIn || allowAnonymous) {\n<fd-shellbar\n [size]=\"deviceSize\"\n [ngClass]=\"deviceSize\"\n routeFormChange\n (stateChanged)=\"onRouteFormStateChange()\"\n [handleBodyClick]=\"true\"\n>\n @if (sideMenuTemplate) {\n <fd-shellbar-action\n [glyph]=\"'apps'\"\n [label]=\"'Quick Access' | bbbTranslate\"\n [notificationCount]=\"notificationCount.unread ?? 0\"\n [notificationLabel]=\"'Quick Access' | bbbTranslate\"\n [callback]=\"onOpenQuickAccess\"\n >\n </fd-shellbar-action>\n } @if (sideMenuTemplate) {\n <button\n fd-shellbar-side-nav\n fd-button\n fdType=\"transparent\"\n glyph=\"menu2\"\n style=\"width: 2.75rem\"\n (click)=\"$event.stopPropagation(); isOpenQuickAccessChanged.emit(!isOpenQuickAccess)\"\n ></button>\n } @if (logo) {\n <fd-shellbar-logo>\n <a\n [style.backgroundImage]=\"'url(' + (logo?.FileId | picFieldSrc: 'GetPictureFromFileInfo':null) + ')'\"\n href=\"/\"\n class=\"fd-shellbar__logo fd-shellbar__logo--image-replaced\"\n aria-label=\"Barsa Novin Ray\"\n ></a>\n </fd-shellbar-logo>\n } @if (!settings?.HideProductMenu && productMenuItems1 && productMenuItems1.length > 0) {\n <fd-product-menu [control]=\"productMenuControl\" [closePopoverOnSelect]=\"true\" [items]=\"productMenuItems1\">\n </fd-product-menu>\n }\n <fd-shellbar-subtitle> {{ subtitle | bbbTranslate }}{{ showVersion ? appVersion : '' }}</fd-shellbar-subtitle>\n @if (!hideShellbarActions&& user && (userMenu?.length || !settings?.HideLanguage)) {\n <fd-shellbar-actions [user]=\"user\" [userMenu]=\"userMenu\" #langRef>\n @for (action of actions; track action) {\n <fd-shellbar-action\n [glyph]=\"action.Icon\"\n [callback]=\"action.Callback\"\n [label]=\"action.Label\"\n notificationLabel=\"login\"\n >\n </fd-shellbar-action>\n } @if (deviceSize === 's' && userLoggedIn && !settings?.HideNotifications) {\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notifications' | bbbTranslate\"\n [notificationCount]=\"notificationCount.unread ?? 0\"\n [notificationLabel]=\"'Notifications' | bbbTranslate\"\n [callback]=\"onBellNotification\"\n >\n </fd-shellbar-action>\n } @if (!settings?.HideNotifications && userLoggedIn) {\n <fd-popover\n [(isOpen)]=\"isOpenNotificatoin\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [noArrow]=\"true\"\n placement=\"bottom\"\n title=\"Notification Popover\"\n [focusAutoCapture]=\"true\"\n [mobile]=\"deviceSize === 's'\"\n #popoverComponent\n >\n <fd-popover-control>\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notification'\"\n [notificationCount]=\"notificationCount.unread\"\n [notificationLabel]=\"'Notification Label'\"\n [callback]=\"onOpenNotification\"\n >\n </fd-shellbar-action>\n </fd-popover-control>\n <fd-popover-body style=\"min-width: 320px; overflow-x: auto; box-shadow: var(--sapContent_Shadow0)\">\n <ng-container\n *ngTemplateOutlet=\"notificationGroupTpl; context: { notificationCount: notificationCount }\"\n ></ng-container>\n </fd-popover-body>\n </fd-popover>\n } @if (!settings?.HideLanguage && deviceSize !== 's' && multiLanguages) {\n <fd-shellbar-action [glyph]=\"'world'\" [label]=\"'language'\" [fdMenuTrigger]=\"menu\" (callback)=\"(onLanguage)\">\n </fd-shellbar-action>\n } @if (!settings?.HideLanguage && deviceSize === 's' && multiLanguages) { @for (culture of cultures | keyvalue;\n track culture) {\n <fd-shellbar-action\n [label]=\"culture.value\"\n [callback]=\"onLanguage\"\n class=\"culture-abbrivation\"\n [glyph]=\"culture.key\"\n [ngClass]=\"'flags'\"\n >\n </fd-shellbar-action>\n } } @if (productSwitcher?.length) {\n <fd-product-switch>\n <fd-product-switch-body [products]=\"productSwitcher\" [forceListMode]=\"deviceSize === 's'\">\n </fd-product-switch-body>\n </fd-product-switch>\n }\n </fd-shellbar-actions>\n }\n</fd-shellbar>\n} @if(showExtraButton){\n<div\n [class.fd-shellbar--xl]=\"isDesktop\"\n [class.fd-shellbar--m]=\"isTablet\"\n [class.fd-shellbar--s]=\"isMobile\"\n class=\"extra-button-wrapper\"\n [class.service-desk]=\"isServiceDesk\"\n>\n <ng-content select=\"button\"></ng-content>\n</div>\n}\n<ng-template #loading>\n <bsu-mask></bsu-mask>\n</ng-template>\n\n<div\n *ngIf=\"sideMenuTemplate\"\n class=\"sidemenu-h tw-fixed tw-bg-white tw-transition-all tw-z-[100] tw-shadow-2xl tw-overflow-auto\"\n [class.tw-w-screen]=\"isMobile\"\n [class.-tw-right-full]=\"isMobile\"\n [class.tw-w-96]=\"!isMobile\"\n [class.-tw-right-96]=\"!isMobile\"\n [class.!tw-right-0]=\"isOpenQuickAccess\"\n (click)=\"$event.stopPropagation()\"\n>\n <ng-container *ngTemplateOutlet=\"sideMenuTemplate\"></ng-container>\n</div>\n\n@if(isOpenQuickAccess) {\n<div\n class=\"sidemenu-h tw-fixed tw-right-0 tw-bg-slate-800/[.5] tw-z-[90] tw-w-screen tw-backdrop-blur-sm\"\n (click)=\"isOpenQuickAccessChanged.emit(false)\"\n></div>\n}\n<fd-menu #menu>\n <ul fd-list>\n @for (culture of cultures | keyvalue; track culture) {\n <li fd-list-item>\n <a fd-list-link (click)=\"onCultureChange(culture.value)\">\n <span fd-list-title>\n <img width=\"14px\" height=\"12px\" [src]=\"'/assets/flags/' + culture.key + '.png'\" />\n <span class=\"culture-abbrivation\" [ngClass]=\"culture.key\"> {{ culture.key }}</span>\n </span>\n </a>\n </li>\n }\n </ul>\n</fd-menu>\n<ng-template #notificationGroupTpl let-notificationCount=\"notificationCount\">\n @if (!notifcationLoaded && notificationLoading === true) {\n <div style=\"position: relative; height: 100px\">\n <bsu-mask size=\"s\"></bsu-mask>\n </div>\n }\n <bt-notification-group\n [notifications]=\"notifications\"\n [notificationCount]=\"notificationCount\"\n [loading]=\"notificationLoading === true\"\n (viewed)=\"onNotificationItemViewed($event)\"\n (remove)=\"onRemoveNotifications($event)\"\n (showEvent)=\"popoverComponent.close(); onShowNotification($event)\"\n (actionClick)=\"popoverComponent.close(); onNotificationAction($event)\"\n (loadMore)=\"onNotificationLoadMore()\"\n [deviceSize]=\"deviceSize\"\n ></bt-notification-group>\n</ng-template>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #notificationsDialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 id=\"fd-dialog-header-10\" fd-title>{{ 'Notification' | bbbTranslate }}</h1>\n <button fd-dialog-close-button (click)=\"dialog.dismiss()\"></button>\n </fd-dialog-header>\n <fd-dialog-body class=\"mobile\">\n <ng-container\n *ngTemplateOutlet=\"notificationGroupTpl; context: { notificationCount: notificationCount }\"\n ></ng-container>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n", styles: [":host{display:block;position:relative}:host ::ng-deep fd-shellbar-actions fd-avatar{background-color:transparent!important;color:var(--sapShell_InteractiveTextColor, #d1e8ff)}:host ::ng-deep fd-combobox .fd-input-group input{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}:host ::ng-deep fd-combobox .fd-input-group span{min-width:2rem;min-height:1.625rem}:host ::ng-deep .fd-shellbar__subtitle{font-size:1rem}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__subtitle{display:block;overflow:hidden;text-wrap:wrap;width:100%;word-break:break-all}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__group.fd-shellbar__group--product{flex:1}:host ::ng-deep .fd-shellbar--s ::ng-deep .fd-shellbar__group.fd-shellbar__group--actions{max-width:120px}.fd-shellbar__logo{min-height:3rem;height:3rem;width:3rem}.extra-button-wrapper{display:flex;height:100%;align-items:center;position:absolute;left:10px;top:0;gap:.285rem}.sidemenu-h{top:var(--fdShellbar_Height);height:calc(100vh - var(--fdShellbar_Height))}\n"] }]
|
|
114
114
|
}], ctorParameters: () => [{ type: i1.NotificationService }, { type: i2.DialogService }, { type: i3.Router }, { type: i1.PortalService }, { type: Document, decorators: [{
|
|
115
115
|
type: Inject,
|
|
116
116
|
args: [DOCUMENT]
|
|
@@ -201,4 +201,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
201
201
|
type: ViewChild,
|
|
202
202
|
args: ['notificationsDialog', { static: true, read: TemplateRef }]
|
|
203
203
|
}] } });
|
|
204
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etc2hlbGxiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9iYXJzYS1zaGVsbGJhci9iYXJzYS1zaGVsbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL2JhcnNhLXNoZWxsYmFyL2JhcnNhLXNoZWxsYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUNILGlCQUFpQixFQU1wQixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLE9BQU8sRUFDSCxhQUFhLEVBSWIsV0FBVyxFQU1kLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtQjlCLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhO0lBeUVyRCxZQUNZLG9CQUF5QyxFQUN6QyxjQUE2QixFQUM3QixPQUFlLEVBQ2YsY0FBNkIsRUFDWCxTQUFtQixFQUNqQixVQUFrQjtRQUU5QyxLQUFLLEVBQUUsQ0FBQztRQVBBLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFDekMsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQ1gsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNqQixlQUFVLEdBQVYsVUFB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SUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgQ29tYm9ib3hDb21wb25lbnQsXG4gICAgRGlhbG9nU2VydmljZSxcbiAgICBQb3BvdmVyQ29tcG9uZW50LFxuICAgIFByb2R1Y3RTd2l0Y2hJdGVtLFxuICAgIFNoZWxsYmFyTWVudUl0ZW0sXG4gICAgU2hlbGxiYXJVc2VyXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5cbmltcG9ydCB7XG4gICAgQmFzZUNvbXBvbmVudCxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxuICAgIEZpbGVQaWN0dXJlSW5mb01vZGVsLFxuICAgIE1vRm9yUmVwb3J0TW9kZWwsXG4gICAgQVBQX1ZFUlNJT04sXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBOb3RpZmljYXRpb25JdGVtLFxuICAgIE5vdGlmaWNhdGlvbkFjdGlvbixcbiAgICBBYmJyZXZhdGlvbkRldmljZVNpemUsXG4gICAgUG9ydGFsU2VydmljZVxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbnRlcmZhY2UgU2hlbGxiYXJTZXR0aW5nIGV4dGVuZHMgTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgc3VidGl0bGU6IHN0cmluZztcbiAgICBjYWxjU3VidGl0bGU6IHN0cmluZztcbiAgICBsb2dvOiBGaWxlUGljdHVyZUluZm9Nb2RlbDtcbiAgICBQcm9kdWN0U3dpdGNoSXRlbXM6IE1vRm9yUmVwb3J0TW9kZWw7XG4gICAgUHJvZHVjdE1lbnVJdGVtczogTW9Gb3JSZXBvcnRNb2RlbDtcbiAgICBVc2VyTWVudUl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xuICAgIEFjdGlvbkl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2J0LWJhcnNhLXNoZWxsYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFyc2Etc2hlbGxiYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JhcnNhLXNoZWxsYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQmFyc2FTaGVsbGJhckNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIGNzc0N1c3RvbVVybDogU2FmZVJlc291cmNlVXJsIHwgbnVsbDtcbiAgICBASW5wdXQoKSBjc3NVcmw6IFNhZmVSZXNvdXJjZVVybCB8IG51bGw7XG4gICAgQElucHV0KCkgYWxsb3dBbm9ueW1vdXM6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbXVsdGlMYW5ndWFnZXM6IGJvb2xlYW47XG4gICAgQElucHV0KCkgdXNlckxvZ2dlZEluOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHNldHRpbmdzOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xuICAgIEBJbnB1dCgpIHByb2R1Y3RNZW51Q29udHJvbDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRldmljZVNpemU6IEFiYnJldmF0aW9uRGV2aWNlU2l6ZTtcbiAgICBASW5wdXQoKSBjdWx0dXJlczogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBASW5wdXQoKSBzaGVsbGJhckRhdGE6IFNoZWxsYmFyU2V0dGluZztcbiAgICBASW5wdXQoKSBub3RpZmljYXRpb25Db3VudDogeyB1bnJlYWQ6IG51bWJlcjsgYWxsOiBudW1iZXIgfTtcbiAgICBASW5wdXQoKSBub3RpZmNhdGlvbkxvYWRlZDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBub3RpZmljYXRpb25Mb2FkaW5nOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIG5vdGlmaWNhdGlvbnM6IE5vdGlmaWNhdGlvbkl0ZW1bXTtcbiAgICBASW5wdXQoKSBwcm9kdWN0TWVudUl0ZW1zMTogU2hlbGxiYXJNZW51SXRlbVtdO1xuICAgIEBJbnB1dCgpIGJvZHlDbGljazogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGxvZ286IHsgRmlsZUlkOiBzdHJpbmcgfTtcbiAgICBASW5wdXQoKSBhY3Rpb25zOiBBcnJheTxNZXRhb2JqZWN0RGF0YU1vZGVsPjtcbiAgICBASW5wdXQoKSB1c2VyTWVudTogeyB0ZXh0OiBzdHJpbmc7IGNhbGxiYWNrOiAoKSA9PiB2b2lkIH1bXTtcbiAgICBASW5wdXQoKSBwcm9kdWN0U3dpdGNoZXI6IFByb2R1Y3RTd2l0Y2hJdGVtW107XG4gICAgQElucHV0KCkgc3VidGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBpc01vYmlsZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBoaWRlU2hlbGxiYXJBY3Rpb25zOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHNob3dFeHRyYUJ1dHRvbjogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBpc1RhYmxldDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBpc0Rlc2t0b3A6IGJvb2xlYW47XG4gICAgQElucHV0KCkgaXNTZXJ2aWNlRGVzayA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGlzT3BlblF1aWNrQWNjZXNzO1xuICAgIEBJbnB1dCgpIHNpZGVNZW51VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsO1xuXG4gICAgQE91dHB1dCgpIGlzT3BlblF1aWNrQWNjZXNzQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xuICAgIEBPdXRwdXQoKSBvcGVuTm90aWZpY2F0aW9uUGFuZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIG9wZW5RdWlja0FjY2Vzc1BhbmVsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSBjdWx0dXJlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICAgIEBPdXRwdXQoKSBub3RpZmljYXRpb25Mb2FkTW9yZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCkgcmVtb3ZlTm90aWZpY2F0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjx7IGl0ZW1zOiBNZXRhb2JqZWN0RGF0YU1vZGVsW107IHNpbGVudDogYm9vbGVhbiB9PigpO1xuICAgIEBPdXRwdXQoKSBub3RpZmlhdGlvbkFjdGlvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx7IGl0ZW06IE5vdGlmaWNhdGlvbkl0ZW07IGJ0bjogTm90aWZpY2F0aW9uQWN0aW9uIH0+KCk7XG4gICAgQE91dHB1dCgpIG5vdGlmaWNhdGlvblZpZXdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm90aWZpY2F0aW9uSXRlbT4oKTtcblxuICAgIEBWaWV3Q2hpbGQoQ29tYm9ib3hDb21wb25lbnQpIGNvbWJvYm94Q29tcG9uZW50OiBDb21ib2JveENvbXBvbmVudDtcbiAgICBAVmlld0NoaWxkKCdwb3BvdmVyQ29tcG9uZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pIHBvcG92ZXJDb21wb25lbnQ6IFBvcG92ZXJDb21wb25lbnQ7XG4gICAgQFZpZXdDaGlsZCgnbm90aWZpY2F0aW9uc0RpYWxvZycsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KSBfbm90aWZpY2F0aW9uc0RpYWxvZzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIHByaXZhdGUgX2NkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICBBcnJheSA9IEFycmF5O1xuICAgIGlzT3Blbk5vdGlmaWNhdG9pbiA9IGZhbHNlO1xuXG4gICAgdXNlcjogU2hlbGxiYXJVc2VyID0ge1xuICAgICAgICBpbml0aWFsczogJ1dXJyxcbiAgICAgICAgY29sb3JBY2NlbnQ6IDFcbiAgICB9O1xuICAgIHNlYXJjaFRlcm1zID0gWyfZhdix2K7YtduMJywgJ9mF2KfZhdmI2LHbjNiqJywgJ9iq24zaqdiqJywgJ9m+2LHZiNqY2YcnXTtcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmc7XG4gICAgYWN0aW9ucyQ6IE9ic2VydmFibGU8U2hlbGxiYXJNZW51SXRlbVtdPjtcblxuICAgIHNob3dWZXJzaW9uID0gZmFsc2U7XG5cbiAgICBfdmlld2VkTm90aWZpY2F0aW9ucyQgPSBuZXcgU3ViamVjdDxOb3RpZmljYXRpb25JdGVtPigpO1xuICAgIG9uQmVsbE5vdGlmaWNhdGlvbiA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5fZG9jdW1lbnQ/LmJvZHkgJiYgdGhpcy5fZG9jdW1lbnQuYm9keS5jbGljaygpO1xuICAgICAgICB0aGlzLl9kaWFsb2dTZXJ2aWNlXG4gICAgICAgICAgICAub3Blbih0aGlzLl9ub3RpZmljYXRpb25zRGlhbG9nLCB7XG4gICAgICAgICAgICAgICAgbW9iaWxlOiB0cnVlLFxuICAgICAgICAgICAgICAgIHZlcnRpY2FsUGFkZGluZzogZmFsc2UsXG4gICAgICAgICAgICAgICAgY2xvc2VPbk5hdmlnYXRpb246IHRydWVcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWZ0ZXJMb2FkZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW5Ob3RpZmljYXRpb25QYW5lbC5lbWl0KCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9O1xuICAgIF92aWV3ZWROb3RpZmljYXRpb25zOiBOb3RpZmljYXRpb25JdGVtW10gPSBbXTtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50OiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChBUFBfVkVSU0lPTikgcHVibGljIGFwcFZlcnNpb246IHN0cmluZ1xuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNob3dWZXJzaW9uID0gZmFsc2U7XG4gICAgfVxuICAgIG9uUm91dGVGb3JtU3RhdGVDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Nsb3NlU2lkZU1lbnUoKTtcbiAgICB9XG4gICAgb25DdWx0dXJlQ2hhbmdlKGN1bHR1cmUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlQ3VsdHVyZShjdWx0dXJlKTtcbiAgICB9XG4gICAgb25TaG93Tm90aWZpY2F0aW9uKGU6IHsgdGFnOiBzdHJpbmc7IG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsOyBuYW1hOiBzdHJpbmcgfSk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzT3Blbk5vdGlmaWNhdG9pbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLlNob3dOb3RpZmljYXRpb25SZWxhdGVkTW8oZSk7XG4gICAgfVxuICAgIG9uTm90aWZpY2F0aW9uSXRlbVZpZXdlZCh2aWV3ZWRNbzogTm90aWZpY2F0aW9uSXRlbSk6IHZvaWQge1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblZpZXdlZC5lbWl0KHZpZXdlZE1vKTtcbiAgICB9XG5cbiAgICBvblJlbW92ZU5vdGlmaWNhdGlvbnMoZTogeyBpdGVtczogTWV0YW9iamVjdERhdGFNb2RlbFtdOyBzaWxlbnQ6IGJvb2xlYW4gfSk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbW92ZU5vdGlmaWNhdGlvbi5lbWl0KGUpO1xuICAgIH1cbiAgICBvbk9wZW5RdWlja0FjY2VzcyA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5pc09wZW5RdWlja0FjY2Vzc0NoYW5nZWQuZW1pdCh0cnVlKTtcbiAgICAgICAgdGhpcy5vcGVuUXVpY2tBY2Nlc3NQYW5lbC5lbWl0KCk7XG4gICAgfTtcbiAgICBvbk9wZW5Ob3RpZmljYXRpb24gPSAoKTogdm9pZCA9PiB7XG4gICAgICAgIHRoaXMuaXNPcGVuTm90aWZpY2F0b2luID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5vcGVuTm90aWZpY2F0aW9uUGFuZWwuZW1pdCgpO1xuICAgIH07XG4gICAgb25Ob3RpZmljYXRpb25BY3Rpb24oZTogeyBpdGVtOiBOb3RpZmljYXRpb25JdGVtOyBidG46IE5vdGlmaWNhdGlvbkFjdGlvbiB9KTogdm9pZCB7XG4gICAgICAgIHRoaXMubm90aWZpYXRpb25BY3Rpb25DbGljay5lbWl0KGUpO1xuICAgIH1cbiAgICBvbkxhbmd1YWdlID0gKGUpOiB2b2lkID0+IHtcbiAgICAgICAgY29uc3QgY3VsdHVyZSA9IGUuY3VycmVudFRhcmdldC50ZXh0Q29udGVudC50cmltKCk7XG4gICAgICAgIHRoaXMuX2NoYW5nZUN1bHR1cmUoY3VsdHVyZSk7XG4gICAgfTtcbiAgICBvbk5vdGlmaWNhdGlvbkxvYWRNb3JlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbkxvYWRNb3JlLmVtaXQoKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfY2xvc2VTaWRlTWVudSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzT3BlblF1aWNrQWNjZXNzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pc09wZW5RdWlja0FjY2Vzc0NoYW5nZWQuZW1pdChmYWxzZSk7XG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICAgIHByaXZhdGUgX2NoYW5nZUN1bHR1cmUoY3VsdHVyZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VsdHVyZUNoYW5nZWQuZW1pdChjdWx0dXJlKTtcbiAgICB9XG59XG4iLCJAaWYgKGNzc1VybCkge1xuPGxpbmsgdHlwZT1cInRleHQvY3NzXCIgcmVsPVwic3R5bGVzaGVldFwiIFtocmVmXT1cImNzc1VybFwiIC8+XG59IEBpZiAoY3NzQ3VzdG9tVXJsKSB7XG48bGluayB0eXBlPVwidGV4dC9jc3NcIiByZWw9XCJzdHlsZXNoZWV0XCIgW2hyZWZdPVwiY3NzQ3VzdG9tVXJsXCIgLz5cbn0gQGlmICh1c2VyTG9nZ2VkSW4gfHwgYWxsb3dBbm9ueW1vdXMpIHtcbjxmZC1zaGVsbGJhclxuICAgIFtzaXplXT1cImRldmljZVNpemVcIlxuICAgIFtuZ0NsYXNzXT1cImRldmljZVNpemVcIlxuICAgIHJvdXRlRm9ybUNoYW5nZVxuICAgIChzdGF0ZUNoYW5nZWQpPVwib25Sb3V0ZUZvcm1TdGF0ZUNoYW5nZSgpXCJcbiAgICBbYm9keUNsaWNrXT1cInRydWVcIlxuPlxuICAgIEBpZiAoc2lkZU1lbnVUZW1wbGF0ZSkge1xuICAgIDxmZC1zaGVsbGJhci1hY3Rpb25cbiAgICAgICAgW2dseXBoXT1cIidhcHBzJ1wiXG4gICAgICAgIFtsYWJlbF09XCInUXVpY2sgQWNjZXNzJyB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgICAgIFtub3RpZmljYXRpb25Db3VudF09XCJub3RpZmljYXRpb25Db3VudC51bnJlYWQgPz8gMFwiXG4gICAgICAgIFtub3RpZmljYXRpb25MYWJlbF09XCInUXVpY2sgQWNjZXNzJyB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgICAgIFtjYWxsYmFja109XCJvbk9wZW5RdWlja0FjY2Vzc1wiXG4gICAgPlxuICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgIH0gQGlmIChzaWRlTWVudVRlbXBsYXRlKSB7XG4gICAgPGJ1dHRvblxuICAgICAgICBmZC1zaGVsbGJhci1zaWRlLW5hdlxuICAgICAgICBmZC1idXR0b25cbiAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBnbHlwaD1cIm1lbnUyXCJcbiAgICAgICAgc3R5bGU9XCJ3aWR0aDogMi43NXJlbVwiXG4gICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGlzT3BlblF1aWNrQWNjZXNzQ2hhbmdlZC5lbWl0KCFpc09wZW5RdWlja0FjY2VzcylcIlxuICAgID48L2J1dHRvbj5cbiAgICB9IEBpZiAobG9nbykge1xuICAgIDxmZC1zaGVsbGJhci1sb2dvPlxuICAgICAgICA8YVxuICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRJbWFnZV09XCIndXJsKCcgKyAobG9nbz8uRmlsZUlkIHwgcGljRmllbGRTcmM6ICdHZXRQaWN0dXJlRnJvbUZpbGVJbmZvJzpudWxsKSArICcpJ1wiXG4gICAgICAgICAgICBocmVmPVwiL1wiXG4gICAgICAgICAgICBjbGFzcz1cImZkLXNoZWxsYmFyX19sb2dvIGZkLXNoZWxsYmFyX19sb2dvLS1pbWFnZS1yZXBsYWNlZFwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwiQmFyc2EgTm92aW4gUmF5XCJcbiAgICAgICAgPjwvYT5cbiAgICA8L2ZkLXNoZWxsYmFyLWxvZ28+XG4gICAgfSBAaWYgKCFzZXR0aW5ncz8uSGlkZVByb2R1Y3RNZW51ICYmIHByb2R1Y3RNZW51SXRlbXMxICYmIHByb2R1Y3RNZW51SXRlbXMxLmxlbmd0aCA+IDApIHtcbiAgICA8ZmQtcHJvZHVjdC1tZW51IFtjb250cm9sXT1cInByb2R1Y3RNZW51Q29udHJvbFwiIFtjbG9zZVBvcG92ZXJPblNlbGVjdF09XCJ0cnVlXCIgW2l0ZW1zXT1cInByb2R1Y3RNZW51SXRlbXMxXCI+XG4gICAgPC9mZC1wcm9kdWN0LW1lbnU+XG4gICAgfVxuICAgIDxmZC1zaGVsbGJhci1zdWJ0aXRsZT4ge3sgc3VidGl0bGUgfCBiYmJUcmFuc2xhdGUgfX17eyBzaG93VmVyc2lvbiA/IGFwcFZlcnNpb24gOiAnJyB9fTwvZmQtc2hlbGxiYXItc3VidGl0bGU+XG4gICAgQGlmICghaGlkZVNoZWxsYmFyQWN0aW9ucyYmIHVzZXIgJiYgKHVzZXJNZW51Py5sZW5ndGggfHwgIXNldHRpbmdzPy5IaWRlTGFuZ3VhZ2UpKSB7XG4gICAgPGZkLXNoZWxsYmFyLWFjdGlvbnMgW3VzZXJdPVwidXNlclwiIFt1c2VyTWVudV09XCJ1c2VyTWVudVwiICNsYW5nUmVmPlxuICAgICAgICBAZm9yIChhY3Rpb24gb2YgYWN0aW9uczsgdHJhY2sgYWN0aW9uKSB7XG4gICAgICAgIDxmZC1zaGVsbGJhci1hY3Rpb25cbiAgICAgICAgICAgIFtnbHlwaF09XCJhY3Rpb24uSWNvblwiXG4gICAgICAgICAgICBbY2FsbGJhY2tdPVwiYWN0aW9uLkNhbGxiYWNrXCJcbiAgICAgICAgICAgIFtsYWJlbF09XCJhY3Rpb24uTGFiZWxcIlxuICAgICAgICAgICAgbm90aWZpY2F0aW9uTGFiZWw9XCJsb2dpblwiXG4gICAgICAgID5cbiAgICAgICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG4gICAgICAgIH0gQGlmIChkZXZpY2VTaXplID09PSAncycgJiYgdXNlckxvZ2dlZEluICYmICFzZXR0aW5ncz8uSGlkZU5vdGlmaWNhdGlvbnMpIHtcbiAgICAgICAgPGZkLXNoZWxsYmFyLWFjdGlvblxuICAgICAgICAgICAgW2dseXBoXT1cIidiZWxsJ1wiXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ05vdGlmaWNhdGlvbnMnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgIFtub3RpZmljYXRpb25Db3VudF09XCJub3RpZmljYXRpb25Db3VudC51bnJlYWQgPz8gMFwiXG4gICAgICAgICAgICBbbm90aWZpY2F0aW9uTGFiZWxdPVwiJ05vdGlmaWNhdGlvbnMnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgIFtjYWxsYmFja109XCJvbkJlbGxOb3RpZmljYXRpb25cIlxuICAgICAgICA+XG4gICAgICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgICAgICB9IEBpZiAoIXNldHRpbmdzPy5IaWRlTm90aWZpY2F0aW9ucyAmJiB1c2VyTG9nZ2VkSW4pIHtcbiAgICAgICAgPGZkLXBvcG92ZXJcbiAgICAgICAgICAgIFsoaXNPcGVuKV09XCJpc09wZW5Ob3RpZmljYXRvaW5cIlxuICAgICAgICAgICAgW3RyaWdnZXJzXT1cIltdXCJcbiAgICAgICAgICAgIFtmb2N1c1RyYXBwZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbbm9BcnJvd109XCJ0cnVlXCJcbiAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICAgICAgICB0aXRsZT1cIk5vdGlmaWNhdGlvbiBQb3BvdmVyXCJcbiAgICAgICAgICAgIFtmb2N1c0F1dG9DYXB0dXJlXT1cInRydWVcIlxuICAgICAgICAgICAgW21vYmlsZV09XCJkZXZpY2VTaXplID09PSAncydcIlxuICAgICAgICAgICAgI3BvcG92ZXJDb21wb25lbnRcbiAgICAgICAgPlxuICAgICAgICAgICAgPGZkLXBvcG92ZXItY29udHJvbD5cbiAgICAgICAgICAgICAgICA8ZmQtc2hlbGxiYXItYWN0aW9uXG4gICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCInYmVsbCdcIlxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ05vdGlmaWNhdGlvbidcIlxuICAgICAgICAgICAgICAgICAgICBbbm90aWZpY2F0aW9uQ291bnRdPVwibm90aWZpY2F0aW9uQ291bnQudW5yZWFkXCJcbiAgICAgICAgICAgICAgICAgICAgW25vdGlmaWNhdGlvbkxhYmVsXT1cIidOb3RpZmljYXRpb24gTGFiZWwnXCJcbiAgICAgICAgICAgICAgICAgICAgW2NhbGxiYWNrXT1cIm9uT3Blbk5vdGlmaWNhdGlvblwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5IHN0eWxlPVwibWluLXdpZHRoOiAzMjBweDsgb3ZlcmZsb3cteDogYXV0bzsgYm94LXNoYWRvdzogdmFyKC0tc2FwQ29udGVudF9TaGFkb3cwKVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJub3RpZmljYXRpb25Hcm91cFRwbDsgY29udGV4dDogeyBub3RpZmljYXRpb25Db3VudDogbm90aWZpY2F0aW9uQ291bnQgfVwiXG4gICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgfSBAaWYgKCFzZXR0aW5ncz8uSGlkZUxhbmd1YWdlICYmIGRldmljZVNpemUgIT09ICdzJyAmJiBtdWx0aUxhbmd1YWdlcykge1xuICAgICAgICA8ZmQtc2hlbGxiYXItYWN0aW9uIFtnbHlwaF09XCInd29ybGQnXCIgW2xhYmVsXT1cIidsYW5ndWFnZSdcIiBbZmRNZW51VHJpZ2dlcl09XCJtZW51XCIgKGNhbGxiYWNrKT1cIihvbkxhbmd1YWdlKVwiPlxuICAgICAgICA8L2ZkLXNoZWxsYmFyLWFjdGlvbj5cbiAgICAgICAgfSBAaWYgKCFzZXR0aW5ncz8uSGlkZUxhbmd1YWdlICYmIGRldmljZVNpemUgPT09ICdzJyAmJiBtdWx0aUxhbmd1YWdlcykgeyBAZm9yIChjdWx0dXJlIG9mIGN1bHR1cmVzIHwga2V5dmFsdWU7XG4gICAgICAgIHRyYWNrIGN1bHR1cmUpIHtcbiAgICAgICAgPGZkLXNoZWxsYmFyLWFjdGlvblxuICAgICAgICAgICAgW2xhYmVsXT1cImN1bHR1cmUudmFsdWVcIlxuICAgICAgICAgICAgW2NhbGxiYWNrXT1cIm9uTGFuZ3VhZ2VcIlxuICAgICAgICAgICAgY2xhc3M9XCJjdWx0dXJlLWFiYnJpdmF0aW9uXCJcbiAgICAgICAgICAgIFtnbHlwaF09XCJjdWx0dXJlLmtleVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCInZmxhZ3MnXCJcbiAgICAgICAgPlxuICAgICAgICA8L2ZkLXNoZWxsYmFyLWFjdGlvbj5cbiAgICAgICAgfSB9IEBpZiAocHJvZHVjdFN3aXRjaGVyPy5sZW5ndGgpIHtcbiAgICAgICAgPGZkLXByb2R1Y3Qtc3dpdGNoPlxuICAgICAgICAgICAgPGZkLXByb2R1Y3Qtc3dpdGNoLWJvZHkgW3Byb2R1Y3RzXT1cInByb2R1Y3RTd2l0Y2hlclwiIFtmb3JjZUxpc3RNb2RlXT1cImRldmljZVNpemUgPT09ICdzJ1wiPlxuICAgICAgICAgICAgPC9mZC1wcm9kdWN0LXN3aXRjaC1ib2R5PlxuICAgICAgICA8L2ZkLXByb2R1Y3Qtc3dpdGNoPlxuICAgICAgICB9XG4gICAgPC9mZC1zaGVsbGJhci1hY3Rpb25zPlxuICAgIH1cbjwvZmQtc2hlbGxiYXI+XG59IEBpZihzaG93RXh0cmFCdXR0b24pe1xuPGRpdlxuICAgIFtjbGFzcy5mZC1zaGVsbGJhci0teGxdPVwiaXNEZXNrdG9wXCJcbiAgICBbY2xhc3MuZmQtc2hlbGxiYXItLW1dPVwiaXNUYWJsZXRcIlxuICAgIFtjbGFzcy5mZC1zaGVsbGJhci0tc109XCJpc01vYmlsZVwiXG4gICAgY2xhc3M9XCJleHRyYS1idXR0b24td3JhcHBlclwiXG4gICAgW2NsYXNzLnNlcnZpY2UtZGVza109XCJpc1NlcnZpY2VEZXNrXCJcbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJidXR0b25cIj48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbn1cbjxuZy10ZW1wbGF0ZSAjbG9hZGluZz5cbiAgICA8YnN1LW1hc2s+PC9ic3UtbWFzaz5cbjwvbmctdGVtcGxhdGU+XG5cbjxkaXZcbiAgICAqbmdJZj1cInNpZGVNZW51VGVtcGxhdGVcIlxuICAgIGNsYXNzPVwic2lkZW1lbnUtaCB0dy1maXhlZCB0dy1iZy13aGl0ZSB0dy10cmFuc2l0aW9uLWFsbCB0dy16LVsxMDBdIHR3LXNoYWRvdy0yeGwgdHctb3ZlcmZsb3ctYXV0b1wiXG4gICAgW2NsYXNzLnR3LXctc2NyZWVuXT1cImlzTW9iaWxlXCJcbiAgICBbY2xhc3MuLXR3LXJpZ2h0LWZ1bGxdPVwiaXNNb2JpbGVcIlxuICAgIFtjbGFzcy50dy13LTk2XT1cIiFpc01vYmlsZVwiXG4gICAgW2NsYXNzLi10dy1yaWdodC05Nl09XCIhaXNNb2JpbGVcIlxuICAgIFtjbGFzcy4hdHctcmlnaHQtMF09XCJpc09wZW5RdWlja0FjY2Vzc1wiXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNpZGVNZW51VGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG5AaWYoaXNPcGVuUXVpY2tBY2Nlc3MpIHtcbjxkaXZcbiAgICBjbGFzcz1cInNpZGVtZW51LWggdHctZml4ZWQgdHctcmlnaHQtMCB0dy1iZy1zbGF0ZS04MDAvWy41XSB0dy16LVs5MF0gdHctdy1zY3JlZW4gdHctYmFja2Ryb3AtYmx1ci1zbVwiXG4gICAgKGNsaWNrKT1cImlzT3BlblF1aWNrQWNjZXNzQ2hhbmdlZC5lbWl0KGZhbHNlKVwiXG4+PC9kaXY+XG59XG48ZmQtbWVudSAjbWVudT5cbiAgICA8dWwgZmQtbGlzdD5cbiAgICAgICAgQGZvciAoY3VsdHVyZSBvZiBjdWx0dXJlcyB8IGtleXZhbHVlOyB0cmFjayBjdWx0dXJlKSB7XG4gICAgICAgIDxsaSBmZC1saXN0LWl0ZW0+XG4gICAgICAgICAgICA8YSBmZC1saXN0LWxpbmsgKGNsaWNrKT1cIm9uQ3VsdHVyZUNoYW5nZShjdWx0dXJlLnZhbHVlKVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGZkLWxpc3QtdGl0bGU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgd2lkdGg9XCIxNHB4XCIgaGVpZ2h0PVwiMTJweFwiIFtzcmNdPVwiJy9hc3NldHMvZmxhZ3MvJyArIGN1bHR1cmUua2V5ICsgJy5wbmcnXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdWx0dXJlLWFiYnJpdmF0aW9uXCIgW25nQ2xhc3NdPVwiY3VsdHVyZS5rZXlcIj4ge3sgY3VsdHVyZS5rZXkgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICA8L2xpPlxuICAgICAgICB9XG4gICAgPC91bD5cbjwvZmQtbWVudT5cbjxuZy10ZW1wbGF0ZSAjbm90aWZpY2F0aW9uR3JvdXBUcGwgbGV0LW5vdGlmaWNhdGlvbkNvdW50PVwibm90aWZpY2F0aW9uQ291bnRcIj5cbiAgICBAaWYgKCFub3RpZmNhdGlvbkxvYWRlZCAmJiBub3RpZmljYXRpb25Mb2FkaW5nID09PSB0cnVlKSB7XG4gICAgPGRpdiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTsgaGVpZ2h0OiAxMDBweFwiPlxuICAgICAgICA8YnN1LW1hc2sgc2l6ZT1cInNcIj48L2JzdS1tYXNrPlxuICAgIDwvZGl2PlxuICAgIH1cbiAgICA8YnQtbm90aWZpY2F0aW9uLWdyb3VwXG4gICAgICAgIFtub3RpZmljYXRpb25zXT1cIm5vdGlmaWNhdGlvbnNcIlxuICAgICAgICBbbm90aWZpY2F0aW9uQ291bnRdPVwibm90aWZpY2F0aW9uQ291bnRcIlxuICAgICAgICBbbG9hZGluZ109XCJub3RpZmljYXRpb25Mb2FkaW5nID09PSB0cnVlXCJcbiAgICAgICAgKHZpZXdlZCk9XCJvbk5vdGlmaWNhdGlvbkl0ZW1WaWV3ZWQoJGV2ZW50KVwiXG4gICAgICAgIChyZW1vdmUpPVwib25SZW1vdmVOb3RpZmljYXRpb25zKCRldmVudClcIlxuICAgICAgICAoc2hvd0V2ZW50KT1cInBvcG92ZXJDb21wb25lbnQuY2xvc2UoKTsgb25TaG93Tm90aWZpY2F0aW9uKCRldmVudClcIlxuICAgICAgICAoYWN0aW9uQ2xpY2spPVwicG9wb3ZlckNvbXBvbmVudC5jbG9zZSgpOyBvbk5vdGlmaWNhdGlvbkFjdGlvbigkZXZlbnQpXCJcbiAgICAgICAgKGxvYWRNb3JlKT1cIm9uTm90aWZpY2F0aW9uTG9hZE1vcmUoKVwiXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxuICAgID48L2J0LW5vdGlmaWNhdGlvbi1ncm91cD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSBsZXQtZGlhbG9nIGxldC1kaWFsb2dDb25maWc9XCJkaWFsb2dDb25maWdcIiAjbm90aWZpY2F0aW9uc0RpYWxvZz5cbiAgICA8ZmQtZGlhbG9nIFtkaWFsb2dDb25maWddPVwiZGlhbG9nQ29uZmlnXCIgW2RpYWxvZ1JlZl09XCJkaWFsb2dcIj5cbiAgICAgICAgPGZkLWRpYWxvZy1oZWFkZXI+XG4gICAgICAgICAgICA8aDEgaWQ9XCJmZC1kaWFsb2ctaGVhZGVyLTEwXCIgZmQtdGl0bGU+e3sgJ05vdGlmaWNhdGlvbicgfCBiYmJUcmFuc2xhdGUgfX08L2gxPlxuICAgICAgICAgICAgPGJ1dHRvbiBmZC1kaWFsb2ctY2xvc2UtYnV0dG9uIChjbGljayk9XCJkaWFsb2cuZGlzbWlzcygpXCI+PC9idXR0b24+XG4gICAgICAgIDwvZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgPGZkLWRpYWxvZy1ib2R5IGNsYXNzPVwibW9iaWxlXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJub3RpZmljYXRpb25Hcm91cFRwbDsgY29udGV4dDogeyBub3RpZmljYXRpb25Db3VudDogbm90aWZpY2F0aW9uQ291bnQgfVwiXG4gICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZmQtZGlhbG9nLWJvZHk+XG4gICAgPC9mZC1kaWFsb2c+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etc2hlbGxiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9iYXJzYS1zaGVsbGJhci9iYXJzYS1zaGVsbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL2JhcnNhLXNoZWxsYmFyL2JhcnNhLXNoZWxsYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUNILGlCQUFpQixFQU1wQixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLE9BQU8sRUFDSCxhQUFhLEVBSWIsV0FBVyxFQU1kLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtQjlCLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhO0lBeUVyRCxZQUNZLG9CQUF5QyxFQUN6QyxjQUE2QixFQUM3QixPQUFlLEVBQ2YsY0FBNkIsRUFDWCxTQUFtQixFQUNqQixVQUFrQjtRQUU5QyxLQUFLLEVBQUUsQ0FBQztRQVBBLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFDekMsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQ1gsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNqQixlQUFVLEdBQVYsVUFB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SUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIENvbXBvbmVudCxcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIGluamVjdCxcclxuICAgIEluamVjdCxcclxuICAgIElucHV0LFxyXG4gICAgT25Jbml0LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgVGVtcGxhdGVSZWYsXHJcbiAgICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgICBDb21ib2JveENvbXBvbmVudCxcclxuICAgIERpYWxvZ1NlcnZpY2UsXHJcbiAgICBQb3BvdmVyQ29tcG9uZW50LFxyXG4gICAgUHJvZHVjdFN3aXRjaEl0ZW0sXHJcbiAgICBTaGVsbGJhck1lbnVJdGVtLFxyXG4gICAgU2hlbGxiYXJVc2VyXHJcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlJztcclxuXHJcbmltcG9ydCB7XHJcbiAgICBCYXNlQ29tcG9uZW50LFxyXG4gICAgTWV0YW9iamVjdERhdGFNb2RlbCxcclxuICAgIEZpbGVQaWN0dXJlSW5mb01vZGVsLFxyXG4gICAgTW9Gb3JSZXBvcnRNb2RlbCxcclxuICAgIEFQUF9WRVJTSU9OLFxyXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgIE5vdGlmaWNhdGlvbkl0ZW0sXHJcbiAgICBOb3RpZmljYXRpb25BY3Rpb24sXHJcbiAgICBBYmJyZXZhdGlvbkRldmljZVNpemUsXHJcbiAgICBQb3J0YWxTZXJ2aWNlXHJcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW50ZXJmYWNlIFNoZWxsYmFyU2V0dGluZyBleHRlbmRzIE1ldGFvYmplY3REYXRhTW9kZWwge1xyXG4gICAgc3VidGl0bGU6IHN0cmluZztcclxuICAgIGNhbGNTdWJ0aXRsZTogc3RyaW5nO1xyXG4gICAgbG9nbzogRmlsZVBpY3R1cmVJbmZvTW9kZWw7XHJcbiAgICBQcm9kdWN0U3dpdGNoSXRlbXM6IE1vRm9yUmVwb3J0TW9kZWw7XHJcbiAgICBQcm9kdWN0TWVudUl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xyXG4gICAgVXNlck1lbnVJdGVtczogTW9Gb3JSZXBvcnRNb2RlbDtcclxuICAgIEFjdGlvbkl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnQtYmFyc2Etc2hlbGxiYXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLXNoZWxsYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2JhcnNhLXNoZWxsYmFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFyc2FTaGVsbGJhckNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgQElucHV0KCkgY3NzQ3VzdG9tVXJsOiBTYWZlUmVzb3VyY2VVcmwgfCBudWxsO1xyXG4gICAgQElucHV0KCkgY3NzVXJsOiBTYWZlUmVzb3VyY2VVcmwgfCBudWxsO1xyXG4gICAgQElucHV0KCkgYWxsb3dBbm9ueW1vdXM6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBtdWx0aUxhbmd1YWdlczogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIHVzZXJMb2dnZWRJbjogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIHNldHRpbmdzOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xyXG4gICAgQElucHV0KCkgcHJvZHVjdE1lbnVDb250cm9sOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBkZXZpY2VTaXplOiBBYmJyZXZhdGlvbkRldmljZVNpemU7XHJcbiAgICBASW5wdXQoKSBjdWx0dXJlczogUmVjb3JkPHN0cmluZywgYW55PjtcclxuICAgIEBJbnB1dCgpIHNoZWxsYmFyRGF0YTogU2hlbGxiYXJTZXR0aW5nO1xyXG4gICAgQElucHV0KCkgbm90aWZpY2F0aW9uQ291bnQ6IHsgdW5yZWFkOiBudW1iZXI7IGFsbDogbnVtYmVyIH07XHJcbiAgICBASW5wdXQoKSBub3RpZmNhdGlvbkxvYWRlZDogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIG5vdGlmaWNhdGlvbkxvYWRpbmc6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBub3RpZmljYXRpb25zOiBOb3RpZmljYXRpb25JdGVtW107XHJcbiAgICBASW5wdXQoKSBwcm9kdWN0TWVudUl0ZW1zMTogU2hlbGxiYXJNZW51SXRlbVtdO1xyXG4gICAgQElucHV0KCkgYm9keUNsaWNrOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBsb2dvOiB7IEZpbGVJZDogc3RyaW5nIH07XHJcbiAgICBASW5wdXQoKSBhY3Rpb25zOiBBcnJheTxNZXRhb2JqZWN0RGF0YU1vZGVsPjtcclxuICAgIEBJbnB1dCgpIHVzZXJNZW51OiB7IHRleHQ6IHN0cmluZzsgY2FsbGJhY2s6ICgpID0+IHZvaWQgfVtdO1xyXG4gICAgQElucHV0KCkgcHJvZHVjdFN3aXRjaGVyOiBQcm9kdWN0U3dpdGNoSXRlbVtdO1xyXG4gICAgQElucHV0KCkgc3VidGl0bGU6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIGlzTW9iaWxlOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgaGlkZVNoZWxsYmFyQWN0aW9uczogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIHNob3dFeHRyYUJ1dHRvbjogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGlzVGFibGV0OiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgaXNEZXNrdG9wOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgaXNTZXJ2aWNlRGVzayA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgaXNPcGVuUXVpY2tBY2Nlc3M7XHJcbiAgICBASW5wdXQoKSBzaWRlTWVudVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbDtcclxuXHJcbiAgICBAT3V0cHV0KCkgaXNPcGVuUXVpY2tBY2Nlc3NDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XHJcbiAgICBAT3V0cHV0KCkgb3Blbk5vdGlmaWNhdGlvblBhbmVsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gICAgQE91dHB1dCgpIG9wZW5RdWlja0FjY2Vzc1BhbmVsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gICAgQE91dHB1dCgpIGN1bHR1cmVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgICBAT3V0cHV0KCkgbm90aWZpY2F0aW9uTG9hZE1vcmUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgICBAT3V0cHV0KCkgcmVtb3ZlTm90aWZpY2F0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjx7IGl0ZW1zOiBNZXRhb2JqZWN0RGF0YU1vZGVsW107IHNpbGVudDogYm9vbGVhbiB9PigpO1xyXG4gICAgQE91dHB1dCgpIG5vdGlmaWF0aW9uQWN0aW9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHsgaXRlbTogTm90aWZpY2F0aW9uSXRlbTsgYnRuOiBOb3RpZmljYXRpb25BY3Rpb24gfT4oKTtcclxuICAgIEBPdXRwdXQoKSBub3RpZmljYXRpb25WaWV3ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGlmaWNhdGlvbkl0ZW0+KCk7XHJcblxyXG4gICAgQFZpZXdDaGlsZChDb21ib2JveENvbXBvbmVudCkgY29tYm9ib3hDb21wb25lbnQ6IENvbWJvYm94Q29tcG9uZW50O1xyXG4gICAgQFZpZXdDaGlsZCgncG9wb3ZlckNvbXBvbmVudCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwb3BvdmVyQ29tcG9uZW50OiBQb3BvdmVyQ29tcG9uZW50O1xyXG4gICAgQFZpZXdDaGlsZCgnbm90aWZpY2F0aW9uc0RpYWxvZycsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KSBfbm90aWZpY2F0aW9uc0RpYWxvZzogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgICBwcml2YXRlIF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG5cclxuICAgIEFycmF5ID0gQXJyYXk7XHJcbiAgICBpc09wZW5Ob3RpZmljYXRvaW4gPSBmYWxzZTtcclxuXHJcbiAgICB1c2VyOiBTaGVsbGJhclVzZXIgPSB7XHJcbiAgICAgICAgaW5pdGlhbHM6ICdXVycsXHJcbiAgICAgICAgY29sb3JBY2NlbnQ6IDFcclxuICAgIH07XHJcbiAgICBzZWFyY2hUZXJtcyA9IFsn2YXYsdiu2LXbjCcsICfZhdin2YXZiNix24zYqicsICfYqtuM2qnYqicsICfZvtix2YjamNmHJ107XHJcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmc7XHJcbiAgICBhY3Rpb25zJDogT2JzZXJ2YWJsZTxTaGVsbGJhck1lbnVJdGVtW10+O1xyXG5cclxuICAgIHNob3dWZXJzaW9uID0gZmFsc2U7XHJcblxyXG4gICAgX3ZpZXdlZE5vdGlmaWNhdGlvbnMkID0gbmV3IFN1YmplY3Q8Tm90aWZpY2F0aW9uSXRlbT4oKTtcclxuICAgIG9uQmVsbE5vdGlmaWNhdGlvbiA9ICgpOiB2b2lkID0+IHtcclxuICAgICAgICB0aGlzLl9kb2N1bWVudD8uYm9keSAmJiB0aGlzLl9kb2N1bWVudC5ib2R5LmNsaWNrKCk7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nU2VydmljZVxyXG4gICAgICAgICAgICAub3Blbih0aGlzLl9ub3RpZmljYXRpb25zRGlhbG9nLCB7XHJcbiAgICAgICAgICAgICAgICBtb2JpbGU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbFBhZGRpbmc6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgY2xvc2VPbk5hdmlnYXRpb246IHRydWVcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmFmdGVyTG9hZGVkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW5Ob3RpZmljYXRpb25QYW5lbC5lbWl0KCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfTtcclxuICAgIF92aWV3ZWROb3RpZmljYXRpb25zOiBOb3RpZmljYXRpb25JdGVtW10gPSBbXTtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICBwcml2YXRlIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50OiBEb2N1bWVudCxcclxuICAgICAgICBASW5qZWN0KEFQUF9WRVJTSU9OKSBwdWJsaWMgYXBwVmVyc2lvbjogc3RyaW5nXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIHRoaXMuc2hvd1ZlcnNpb24gPSBmYWxzZTtcclxuICAgIH1cclxuICAgIG9uUm91dGVGb3JtU3RhdGVDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY2xvc2VTaWRlTWVudSgpO1xyXG4gICAgfVxyXG4gICAgb25DdWx0dXJlQ2hhbmdlKGN1bHR1cmUpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9jaGFuZ2VDdWx0dXJlKGN1bHR1cmUpO1xyXG4gICAgfVxyXG4gICAgb25TaG93Tm90aWZpY2F0aW9uKGU6IHsgdGFnOiBzdHJpbmc7IG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsOyBuYW1hOiBzdHJpbmcgfSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNPcGVuTm90aWZpY2F0b2luID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5TaG93Tm90aWZpY2F0aW9uUmVsYXRlZE1vKGUpO1xyXG4gICAgfVxyXG4gICAgb25Ob3RpZmljYXRpb25JdGVtVmlld2VkKHZpZXdlZE1vOiBOb3RpZmljYXRpb25JdGVtKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25WaWV3ZWQuZW1pdCh2aWV3ZWRNbyk7XHJcbiAgICB9XHJcblxyXG4gICAgb25SZW1vdmVOb3RpZmljYXRpb25zKGU6IHsgaXRlbXM6IE1ldGFvYmplY3REYXRhTW9kZWxbXTsgc2lsZW50OiBib29sZWFuIH0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnJlbW92ZU5vdGlmaWNhdGlvbi5lbWl0KGUpO1xyXG4gICAgfVxyXG4gICAgb25PcGVuUXVpY2tBY2Nlc3MgPSAoKTogdm9pZCA9PiB7XHJcbiAgICAgICAgdGhpcy5pc09wZW5RdWlja0FjY2Vzc0NoYW5nZWQuZW1pdCh0cnVlKTtcclxuICAgICAgICB0aGlzLm9wZW5RdWlja0FjY2Vzc1BhbmVsLmVtaXQoKTtcclxuICAgIH07XHJcbiAgICBvbk9wZW5Ob3RpZmljYXRpb24gPSAoKTogdm9pZCA9PiB7XHJcbiAgICAgICAgdGhpcy5pc09wZW5Ob3RpZmljYXRvaW4gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMub3Blbk5vdGlmaWNhdGlvblBhbmVsLmVtaXQoKTtcclxuICAgIH07XHJcbiAgICBvbk5vdGlmaWNhdGlvbkFjdGlvbihlOiB7IGl0ZW06IE5vdGlmaWNhdGlvbkl0ZW07IGJ0bjogTm90aWZpY2F0aW9uQWN0aW9uIH0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWF0aW9uQWN0aW9uQ2xpY2suZW1pdChlKTtcclxuICAgIH1cclxuICAgIG9uTGFuZ3VhZ2UgPSAoZSk6IHZvaWQgPT4ge1xyXG4gICAgICAgIGNvbnN0IGN1bHR1cmUgPSBlLmN1cnJlbnRUYXJnZXQudGV4dENvbnRlbnQudHJpbSgpO1xyXG4gICAgICAgIHRoaXMuX2NoYW5nZUN1bHR1cmUoY3VsdHVyZSk7XHJcbiAgICB9O1xyXG4gICAgb25Ob3RpZmljYXRpb25Mb2FkTW9yZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbkxvYWRNb3JlLmVtaXQoKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgX2Nsb3NlU2lkZU1lbnUoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmlzT3BlblF1aWNrQWNjZXNzKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pc09wZW5RdWlja0FjY2Vzc0NoYW5nZWQuZW1pdChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgX2NoYW5nZUN1bHR1cmUoY3VsdHVyZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5jdWx0dXJlQ2hhbmdlZC5lbWl0KGN1bHR1cmUpO1xyXG4gICAgfVxyXG59XHJcbiIsIkBpZiAoY3NzVXJsKSB7XG48bGluayB0eXBlPVwidGV4dC9jc3NcIiByZWw9XCJzdHlsZXNoZWV0XCIgW2hyZWZdPVwiY3NzVXJsXCIgLz5cbn0gQGlmIChjc3NDdXN0b21VcmwpIHtcbjxsaW5rIHR5cGU9XCJ0ZXh0L2Nzc1wiIHJlbD1cInN0eWxlc2hlZXRcIiBbaHJlZl09XCJjc3NDdXN0b21VcmxcIiAvPlxufSBAaWYgKHVzZXJMb2dnZWRJbiB8fCBhbGxvd0Fub255bW91cykge1xuPGZkLXNoZWxsYmFyXG4gICAgW3NpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgW25nQ2xhc3NdPVwiZGV2aWNlU2l6ZVwiXG4gICAgcm91dGVGb3JtQ2hhbmdlXG4gICAgKHN0YXRlQ2hhbmdlZCk9XCJvblJvdXRlRm9ybVN0YXRlQ2hhbmdlKClcIlxuICAgIFtoYW5kbGVCb2R5Q2xpY2tdPVwidHJ1ZVwiXG4+XG4gICAgQGlmIChzaWRlTWVudVRlbXBsYXRlKSB7XG4gICAgPGZkLXNoZWxsYmFyLWFjdGlvblxuICAgICAgICBbZ2x5cGhdPVwiJ2FwcHMnXCJcbiAgICAgICAgW2xhYmVsXT1cIidRdWljayBBY2Nlc3MnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgW25vdGlmaWNhdGlvbkNvdW50XT1cIm5vdGlmaWNhdGlvbkNvdW50LnVucmVhZCA/PyAwXCJcbiAgICAgICAgW25vdGlmaWNhdGlvbkxhYmVsXT1cIidRdWljayBBY2Nlc3MnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgW2NhbGxiYWNrXT1cIm9uT3BlblF1aWNrQWNjZXNzXCJcbiAgICA+XG4gICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG4gICAgfSBAaWYgKHNpZGVNZW51VGVtcGxhdGUpIHtcbiAgICA8YnV0dG9uXG4gICAgICAgIGZkLXNoZWxsYmFyLXNpZGUtbmF2XG4gICAgICAgIGZkLWJ1dHRvblxuICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIGdseXBoPVwibWVudTJcIlxuICAgICAgICBzdHlsZT1cIndpZHRoOiAyLjc1cmVtXCJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgaXNPcGVuUXVpY2tBY2Nlc3NDaGFuZ2VkLmVtaXQoIWlzT3BlblF1aWNrQWNjZXNzKVwiXG4gICAgPjwvYnV0dG9uPlxuICAgIH0gQGlmIChsb2dvKSB7XG4gICAgPGZkLXNoZWxsYmFyLWxvZ28+XG4gICAgICAgIDxhXG4gICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZEltYWdlXT1cIid1cmwoJyArIChsb2dvPy5GaWxlSWQgfCBwaWNGaWVsZFNyYzogJ0dldFBpY3R1cmVGcm9tRmlsZUluZm8nOm51bGwpICsgJyknXCJcbiAgICAgICAgICAgIGhyZWY9XCIvXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZmQtc2hlbGxiYXJfX2xvZ28gZmQtc2hlbGxiYXJfX2xvZ28tLWltYWdlLXJlcGxhY2VkXCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJCYXJzYSBOb3ZpbiBSYXlcIlxuICAgICAgICA+PC9hPlxuICAgIDwvZmQtc2hlbGxiYXItbG9nbz5cbiAgICB9IEBpZiAoIXNldHRpbmdzPy5IaWRlUHJvZHVjdE1lbnUgJiYgcHJvZHVjdE1lbnVJdGVtczEgJiYgcHJvZHVjdE1lbnVJdGVtczEubGVuZ3RoID4gMCkge1xuICAgIDxmZC1wcm9kdWN0LW1lbnUgW2NvbnRyb2xdPVwicHJvZHVjdE1lbnVDb250cm9sXCIgW2Nsb3NlUG9wb3Zlck9uU2VsZWN0XT1cInRydWVcIiBbaXRlbXNdPVwicHJvZHVjdE1lbnVJdGVtczFcIj5cbiAgICA8L2ZkLXByb2R1Y3QtbWVudT5cbiAgICB9XG4gICAgPGZkLXNoZWxsYmFyLXN1YnRpdGxlPiB7eyBzdWJ0aXRsZSB8IGJiYlRyYW5zbGF0ZSB9fXt7IHNob3dWZXJzaW9uID8gYXBwVmVyc2lvbiA6ICcnIH19PC9mZC1zaGVsbGJhci1zdWJ0aXRsZT5cbiAgICBAaWYgKCFoaWRlU2hlbGxiYXJBY3Rpb25zJiYgdXNlciAmJiAodXNlck1lbnU/Lmxlbmd0aCB8fCAhc2V0dGluZ3M/LkhpZGVMYW5ndWFnZSkpIHtcbiAgICA8ZmQtc2hlbGxiYXItYWN0aW9ucyBbdXNlcl09XCJ1c2VyXCIgW3VzZXJNZW51XT1cInVzZXJNZW51XCIgI2xhbmdSZWY+XG4gICAgICAgIEBmb3IgKGFjdGlvbiBvZiBhY3Rpb25zOyB0cmFjayBhY3Rpb24pIHtcbiAgICAgICAgPGZkLXNoZWxsYmFyLWFjdGlvblxuICAgICAgICAgICAgW2dseXBoXT1cImFjdGlvbi5JY29uXCJcbiAgICAgICAgICAgIFtjYWxsYmFja109XCJhY3Rpb24uQ2FsbGJhY2tcIlxuICAgICAgICAgICAgW2xhYmVsXT1cImFjdGlvbi5MYWJlbFwiXG4gICAgICAgICAgICBub3RpZmljYXRpb25MYWJlbD1cImxvZ2luXCJcbiAgICAgICAgPlxuICAgICAgICA8L2ZkLXNoZWxsYmFyLWFjdGlvbj5cbiAgICAgICAgfSBAaWYgKGRldmljZVNpemUgPT09ICdzJyAmJiB1c2VyTG9nZ2VkSW4gJiYgIXNldHRpbmdzPy5IaWRlTm90aWZpY2F0aW9ucykge1xuICAgICAgICA8ZmQtc2hlbGxiYXItYWN0aW9uXG4gICAgICAgICAgICBbZ2x5cGhdPVwiJ2JlbGwnXCJcbiAgICAgICAgICAgIFtsYWJlbF09XCInTm90aWZpY2F0aW9ucycgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgW25vdGlmaWNhdGlvbkNvdW50XT1cIm5vdGlmaWNhdGlvbkNvdW50LnVucmVhZCA/PyAwXCJcbiAgICAgICAgICAgIFtub3RpZmljYXRpb25MYWJlbF09XCInTm90aWZpY2F0aW9ucycgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgW2NhbGxiYWNrXT1cIm9uQmVsbE5vdGlmaWNhdGlvblwiXG4gICAgICAgID5cbiAgICAgICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG4gICAgICAgIH0gQGlmICghc2V0dGluZ3M/LkhpZGVOb3RpZmljYXRpb25zICYmIHVzZXJMb2dnZWRJbikge1xuICAgICAgICA8ZmQtcG9wb3ZlclxuICAgICAgICAgICAgWyhpc09wZW4pXT1cImlzT3Blbk5vdGlmaWNhdG9pblwiXG4gICAgICAgICAgICBbdHJpZ2dlcnNdPVwiW11cIlxuICAgICAgICAgICAgW2ZvY3VzVHJhcHBlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtub0Fycm93XT1cInRydWVcIlxuICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgICAgICAgIHRpdGxlPVwiTm90aWZpY2F0aW9uIFBvcG92ZXJcIlxuICAgICAgICAgICAgW2ZvY3VzQXV0b0NhcHR1cmVdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbbW9iaWxlXT1cImRldmljZVNpemUgPT09ICdzJ1wiXG4gICAgICAgICAgICAjcG9wb3ZlckNvbXBvbmVudFxuICAgICAgICA+XG4gICAgICAgICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgIDxmZC1zaGVsbGJhci1hY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIidiZWxsJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInTm90aWZpY2F0aW9uJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtub3RpZmljYXRpb25Db3VudF09XCJub3RpZmljYXRpb25Db3VudC51bnJlYWRcIlxuICAgICAgICAgICAgICAgICAgICBbbm90aWZpY2F0aW9uTGFiZWxdPVwiJ05vdGlmaWNhdGlvbiBMYWJlbCdcIlxuICAgICAgICAgICAgICAgICAgICBbY2FsbGJhY2tdPVwib25PcGVuTm90aWZpY2F0aW9uXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG4gICAgICAgICAgICA8L2ZkLXBvcG92ZXItY29udHJvbD5cbiAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHkgc3R5bGU9XCJtaW4td2lkdGg6IDMyMHB4OyBvdmVyZmxvdy14OiBhdXRvOyBib3gtc2hhZG93OiB2YXIoLS1zYXBDb250ZW50X1NoYWRvdzApXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIm5vdGlmaWNhdGlvbkdyb3VwVHBsOyBjb250ZXh0OiB7IG5vdGlmaWNhdGlvbkNvdW50OiBub3RpZmljYXRpb25Db3VudCB9XCJcbiAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cbiAgICAgICAgPC9mZC1wb3BvdmVyPlxuICAgICAgICB9IEBpZiAoIXNldHRpbmdzPy5IaWRlTGFuZ3VhZ2UgJiYgZGV2aWNlU2l6ZSAhPT0gJ3MnICYmIG11bHRpTGFuZ3VhZ2VzKSB7XG4gICAgICAgIDxmZC1zaGVsbGJhci1hY3Rpb24gW2dseXBoXT1cIid3b3JsZCdcIiBbbGFiZWxdPVwiJ2xhbmd1YWdlJ1wiIFtmZE1lbnVUcmlnZ2VyXT1cIm1lbnVcIiAoY2FsbGJhY2spPVwiKG9uTGFuZ3VhZ2UpXCI+XG4gICAgICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgICAgICB9IEBpZiAoIXNldHRpbmdzPy5IaWRlTGFuZ3VhZ2UgJiYgZGV2aWNlU2l6ZSA9PT0gJ3MnICYmIG11bHRpTGFuZ3VhZ2VzKSB7IEBmb3IgKGN1bHR1cmUgb2YgY3VsdHVyZXMgfCBrZXl2YWx1ZTtcbiAgICAgICAgdHJhY2sgY3VsdHVyZSkge1xuICAgICAgICA8ZmQtc2hlbGxiYXItYWN0aW9uXG4gICAgICAgICAgICBbbGFiZWxdPVwiY3VsdHVyZS52YWx1ZVwiXG4gICAgICAgICAgICBbY2FsbGJhY2tdPVwib25MYW5ndWFnZVwiXG4gICAgICAgICAgICBjbGFzcz1cImN1bHR1cmUtYWJicml2YXRpb25cIlxuICAgICAgICAgICAgW2dseXBoXT1cImN1bHR1cmUua2V5XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIidmbGFncydcIlxuICAgICAgICA+XG4gICAgICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgICAgICB9IH0gQGlmIChwcm9kdWN0U3dpdGNoZXI/Lmxlbmd0aCkge1xuICAgICAgICA8ZmQtcHJvZHVjdC1zd2l0Y2g+XG4gICAgICAgICAgICA8ZmQtcHJvZHVjdC1zd2l0Y2gtYm9keSBbcHJvZHVjdHNdPVwicHJvZHVjdFN3aXRjaGVyXCIgW2ZvcmNlTGlzdE1vZGVdPVwiZGV2aWNlU2l6ZSA9PT0gJ3MnXCI+XG4gICAgICAgICAgICA8L2ZkLXByb2R1Y3Qtc3dpdGNoLWJvZHk+XG4gICAgICAgIDwvZmQtcHJvZHVjdC1zd2l0Y2g+XG4gICAgICAgIH1cbiAgICA8L2ZkLXNoZWxsYmFyLWFjdGlvbnM+XG4gICAgfVxuPC9mZC1zaGVsbGJhcj5cbn0gQGlmKHNob3dFeHRyYUJ1dHRvbil7XG48ZGl2XG4gICAgW2NsYXNzLmZkLXNoZWxsYmFyLS14bF09XCJpc0Rlc2t0b3BcIlxuICAgIFtjbGFzcy5mZC1zaGVsbGJhci0tbV09XCJpc1RhYmxldFwiXG4gICAgW2NsYXNzLmZkLXNoZWxsYmFyLS1zXT1cImlzTW9iaWxlXCJcbiAgICBjbGFzcz1cImV4dHJhLWJ1dHRvbi13cmFwcGVyXCJcbiAgICBbY2xhc3Muc2VydmljZS1kZXNrXT1cImlzU2VydmljZURlc2tcIlxuPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImJ1dHRvblwiPjwvbmctY29udGVudD5cbjwvZGl2PlxufVxuPG5nLXRlbXBsYXRlICNsb2FkaW5nPlxuICAgIDxic3UtbWFzaz48L2JzdS1tYXNrPlxuPC9uZy10ZW1wbGF0ZT5cblxuPGRpdlxuICAgICpuZ0lmPVwic2lkZU1lbnVUZW1wbGF0ZVwiXG4gICAgY2xhc3M9XCJzaWRlbWVudS1oIHR3LWZpeGVkIHR3LWJnLXdoaXRlIHR3LXRyYW5zaXRpb24tYWxsIHR3LXotWzEwMF0gdHctc2hhZG93LTJ4bCB0dy1vdmVyZmxvdy1hdXRvXCJcbiAgICBbY2xhc3MudHctdy1zY3JlZW5dPVwiaXNNb2JpbGVcIlxuICAgIFtjbGFzcy4tdHctcmlnaHQtZnVsbF09XCJpc01vYmlsZVwiXG4gICAgW2NsYXNzLnR3LXctOTZdPVwiIWlzTW9iaWxlXCJcbiAgICBbY2xhc3MuLXR3LXJpZ2h0LTk2XT1cIiFpc01vYmlsZVwiXG4gICAgW2NsYXNzLiF0dy1yaWdodC0wXT1cImlzT3BlblF1aWNrQWNjZXNzXCJcbiAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2lkZU1lbnVUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbkBpZihpc09wZW5RdWlja0FjY2Vzcykge1xuPGRpdlxuICAgIGNsYXNzPVwic2lkZW1lbnUtaCB0dy1maXhlZCB0dy1yaWdodC0wIHR3LWJnLXNsYXRlLTgwMC9bLjVdIHR3LXotWzkwXSB0dy13LXNjcmVlbiB0dy1iYWNrZHJvcC1ibHVyLXNtXCJcbiAgICAoY2xpY2spPVwiaXNPcGVuUXVpY2tBY2Nlc3NDaGFuZ2VkLmVtaXQoZmFsc2UpXCJcbj48L2Rpdj5cbn1cbjxmZC1tZW51ICNtZW51PlxuICAgIDx1bCBmZC1saXN0PlxuICAgICAgICBAZm9yIChjdWx0dXJlIG9mIGN1bHR1cmVzIHwga2V5dmFsdWU7IHRyYWNrIGN1bHR1cmUpIHtcbiAgICAgICAgPGxpIGZkLWxpc3QtaXRlbT5cbiAgICAgICAgICAgIDxhIGZkLWxpc3QtbGluayAoY2xpY2spPVwib25DdWx0dXJlQ2hhbmdlKGN1bHR1cmUudmFsdWUpXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyB3aWR0aD1cIjE0cHhcIiBoZWlnaHQ9XCIxMnB4XCIgW3NyY109XCInL2Fzc2V0cy9mbGFncy8nICsgY3VsdHVyZS5rZXkgKyAnLnBuZydcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1bHR1cmUtYWJicml2YXRpb25cIiBbbmdDbGFzc109XCJjdWx0dXJlLmtleVwiPiB7eyBjdWx0dXJlLmtleSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICA8L3VsPlxuPC9mZC1tZW51PlxuPG5nLXRlbXBsYXRlICNub3RpZmljYXRpb25Hcm91cFRwbCBsZXQtbm90aWZpY2F0aW9uQ291bnQ9XCJub3RpZmljYXRpb25Db3VudFwiPlxuICAgIEBpZiAoIW5vdGlmY2F0aW9uTG9hZGVkICYmIG5vdGlmaWNhdGlvbkxvYWRpbmcgPT09IHRydWUpIHtcbiAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDEwMHB4XCI+XG4gICAgICAgIDxic3UtbWFzayBzaXplPVwic1wiPjwvYnN1LW1hc2s+XG4gICAgPC9kaXY+XG4gICAgfVxuICAgIDxidC1ub3RpZmljYXRpb24tZ3JvdXBcbiAgICAgICAgW25vdGlmaWNhdGlvbnNdPVwibm90aWZpY2F0aW9uc1wiXG4gICAgICAgIFtub3RpZmljYXRpb25Db3VudF09XCJub3RpZmljYXRpb25Db3VudFwiXG4gICAgICAgIFtsb2FkaW5nXT1cIm5vdGlmaWNhdGlvbkxvYWRpbmcgPT09IHRydWVcIlxuICAgICAgICAodmlld2VkKT1cIm9uTm90aWZpY2F0aW9uSXRlbVZpZXdlZCgkZXZlbnQpXCJcbiAgICAgICAgKHJlbW92ZSk9XCJvblJlbW92ZU5vdGlmaWNhdGlvbnMoJGV2ZW50KVwiXG4gICAgICAgIChzaG93RXZlbnQpPVwicG9wb3ZlckNvbXBvbmVudC5jbG9zZSgpOyBvblNob3dOb3RpZmljYXRpb24oJGV2ZW50KVwiXG4gICAgICAgIChhY3Rpb25DbGljayk9XCJwb3BvdmVyQ29tcG9uZW50LmNsb3NlKCk7IG9uTm90aWZpY2F0aW9uQWN0aW9uKCRldmVudClcIlxuICAgICAgICAobG9hZE1vcmUpPVwib25Ob3RpZmljYXRpb25Mb2FkTW9yZSgpXCJcbiAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgPjwvYnQtbm90aWZpY2F0aW9uLWdyb3VwPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiICNub3RpZmljYXRpb25zRGlhbG9nPlxuICAgIDxmZC1kaWFsb2cgW2RpYWxvZ0NvbmZpZ109XCJkaWFsb2dDb25maWdcIiBbZGlhbG9nUmVmXT1cImRpYWxvZ1wiPlxuICAgICAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgICAgIDxoMSBpZD1cImZkLWRpYWxvZy1oZWFkZXItMTBcIiBmZC10aXRsZT57eyAnTm90aWZpY2F0aW9uJyB8IGJiYlRyYW5zbGF0ZSB9fTwvaDE+XG4gICAgICAgICAgICA8YnV0dG9uIGZkLWRpYWxvZy1jbG9zZS1idXR0b24gKGNsaWNrKT1cImRpYWxvZy5kaXNtaXNzKClcIj48L2J1dHRvbj5cbiAgICAgICAgPC9mZC1kaWFsb2ctaGVhZGVyPlxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHkgY2xhc3M9XCJtb2JpbGVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIm5vdGlmaWNhdGlvbkdyb3VwVHBsOyBjb250ZXh0OiB7IG5vdGlmaWNhdGlvbkNvdW50OiBub3RpZmljYXRpb25Db3VudCB9XCJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICA8L2ZkLWRpYWxvZz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -54,6 +54,7 @@ import { PopoverAppFinderComponent } from './popover-app-finder/popover-app-find
|
|
|
54
54
|
import { FilterAppsGroupedPipe, FilterAppsPipe } from './popover-app-finder/filter-apps-grouped.pipe';
|
|
55
55
|
import { TileStyleDirective } from './tile-style.directive';
|
|
56
56
|
import { TileSizeDirective } from './tile-size.directive';
|
|
57
|
+
import { BarsaPinAppComponent } from './barsa-pin-app/barsa-pin-app.component';
|
|
57
58
|
import * as i0 from "@angular/core";
|
|
58
59
|
import * as i1 from "barsa-novin-ray-core";
|
|
59
60
|
const components = [
|
|
@@ -88,7 +89,8 @@ const components = [
|
|
|
88
89
|
TilesViewerGroupComponent,
|
|
89
90
|
FormTileComponent,
|
|
90
91
|
BarsaShellbarComponent,
|
|
91
|
-
PopoverAppFinderComponent
|
|
92
|
+
PopoverAppFinderComponent,
|
|
93
|
+
BarsaPinAppComponent
|
|
92
94
|
];
|
|
93
95
|
const pipes = [GroupTilesPipe, TileHomeFilterPipe, HomeGroupPipe, ActionLinksPipe, TilePropPipe];
|
|
94
96
|
const directives = [EmptyListDirective, TileRendererDirective, TileStyleDirective, TileSizeDirective];
|
|
@@ -131,7 +133,8 @@ export class BarsaTilesModule extends BaseModule {
|
|
|
131
133
|
TilesViewerGroupComponent,
|
|
132
134
|
FormTileComponent,
|
|
133
135
|
BarsaShellbarComponent,
|
|
134
|
-
PopoverAppFinderComponent,
|
|
136
|
+
PopoverAppFinderComponent,
|
|
137
|
+
BarsaPinAppComponent, GroupTilesPipe, TileHomeFilterPipe, HomeGroupPipe, ActionLinksPipe, TilePropPipe, EmptyListDirective, TileRendererDirective, TileStyleDirective, TileSizeDirective, NotificationGroupComponent,
|
|
135
138
|
NotificationGroupHeaderComponent], imports: [CommonModule,
|
|
136
139
|
FormsModule,
|
|
137
140
|
DragDropModule,
|
|
@@ -177,7 +180,8 @@ export class BarsaTilesModule extends BaseModule {
|
|
|
177
180
|
TilesViewerGroupComponent,
|
|
178
181
|
FormTileComponent,
|
|
179
182
|
BarsaShellbarComponent,
|
|
180
|
-
PopoverAppFinderComponent
|
|
183
|
+
PopoverAppFinderComponent,
|
|
184
|
+
BarsaPinAppComponent] }); }
|
|
181
185
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaTilesModule, providers: [TilesService, AppFinderService, LowerCasePipe], imports: [CommonModule,
|
|
182
186
|
FormsModule,
|
|
183
187
|
DragDropModule,
|
|
@@ -223,4 +227,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
223
227
|
exports: [...components]
|
|
224
228
|
}]
|
|
225
229
|
}], ctorParameters: () => [{ type: i1.DynamicComponentService }, { type: i0.ComponentFactoryResolver }] });
|
|
226
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtdGlsZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9iYXJzYS10aWxlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFakYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBMkIsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFeEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDbkcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDbEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDbEgsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDeEgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDNUcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZILE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN0RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBRTFELE1BQU0sVUFBVSxHQUFHO0lBQ2YsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixvQkFBb0I7SUFDcEIsb0JBQW9CO0lBQ3BCLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUN0QixnQkFBZ0I7SUFDaEIsc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QiwyQkFBMkI7SUFDM0IsK0JBQStCO0lBQy9CLDJCQUEyQjtJQUMzQiwrQkFBK0I7SUFDL0IsaUNBQWlDO0lBQ2pDLDBCQUEwQjtJQUMxQiw2QkFBNkI7SUFDN0IsNkJBQTZCO0lBQzdCLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQix1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLHlCQUF5QjtJQUN6QixpQkFBaUI7SUFDakIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtDQUM1QixDQUFDO0FBQ0YsTUFBTSxLQUFLLEdBQUcsQ0FBQyxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxZQUFZLENBQUMsQ0FBQztBQUNqRyxNQUFNLFVBQVUsR0FBRyxDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGlCQUFpQixDQUFDLENBQUM7QUErQnRHLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxVQUFVO0lBRzVDLFlBQXNCLEdBQTRCLEVBQVksd0JBQWtEO1FBQzVHLEtBQUssQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUR2QyxRQUFHLEdBQUgsR0FBRyxDQUF5QjtRQUFZLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFGdEcsc0JBQWlCLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO0lBSTlDLENBQUM7OEdBTFEsZ0JBQWdCOytHQUFoQixnQkFBZ0IsaUJBakV6QixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLG9CQUFvQjtZQUNwQixvQkFBb0I7WUFDcEIsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLG9CQUFvQjtZQUNwQix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLGdCQUFnQjtZQUNoQixzQkFBc0I7WUFDdEIsdUJBQXVCO1lBQ3ZCLDJCQUEyQjtZQUMzQiwrQkFBK0I7WUFDL0IsMkJBQTJCO1lBQzNCLCtCQUErQjtZQUMvQixpQ0FBaUM7WUFDakMsMEJBQTBCO1lBQzFCLDZCQUE2QjtZQUM3Qiw2QkFBNkI7WUFDN0IsaUJBQWlCO1lBQ2pCLG9CQUFvQjtZQUNwQixtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLHVCQUF1QjtZQUN2Qix5QkFBeUI7WUFDekIseUJBQXlCO1lBQ3pCLGlCQUFpQjtZQUNqQixzQkFBc0I7WUFDdEIseUJBQXlCLEVBRWQsY0FBYyxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUMzRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsRUEwQjVGLDBCQUEwQjtZQUMxQixnQ0FBZ0MsYUF0QmhDLFlBQVk7WUFDWixXQUFXO1lBQ1gsY0FBYztZQUNkLGNBQWM7WUFDZCx3QkFBd0I7WUFDeEIsY0FBYztZQUNkLG1CQUFtQjtZQUNuQix1QkFBdUI7WUFDdkIsZ0JBQWdCO1lBQ2hCLGtCQUFrQjtZQUNsQixtQkFBbUI7WUFDbkIsc0JBQXNCO1lBQ3RCLDZCQUE2QjtZQUM3QixxQkFBcUI7WUFDckIsY0FBYyxhQXJEbEIsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixvQkFBb0I7WUFDcEIsb0JBQW9CO1lBQ3BCLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsYUFBYTtZQUNiLGlCQUFpQjtZQUNqQixvQkFBb0I7WUFDcEIsdUJBQXVCO1lBQ3ZCLHNCQUFzQjtZQUN0QixnQkFBZ0I7WUFDaEIsc0JBQXNCO1lBQ3RCLHVCQUF1QjtZQUN2QiwyQkFBMkI7WUFDM0IsK0JBQStCO1lBQy9CLDJCQUEyQjtZQUMzQiwrQkFBK0I7WUFDL0IsaUNBQWlDO1lBQ2pDLDBCQUEwQjtZQUMxQiw2QkFBNkI7WUFDN0IsNkJBQTZCO1lBQzdCLGlCQUFpQjtZQUNqQixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLGtCQUFrQjtZQUNsQix1QkFBdUI7WUFDdkIseUJBQXlCO1lBQ3pCLHlCQUF5QjtZQUN6QixpQkFBaUI7WUFDakIsc0JBQXNCO1lBQ3RCLHlCQUF5QjsrR0FrQ2hCLGdCQUFnQixhQVZkLENBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxZQWhCdEQsWUFBWTtZQUNaLFdBQVc7WUFDWCxjQUFjO1lBQ2QsY0FBYztZQUNkLHdCQUF3QjtZQUN4QixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLHVCQUF1QjtZQUN2QixnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLG1CQUFtQjtZQUNuQixzQkFBc0I7OzJGQWVqQixnQkFBZ0I7a0JBN0I1QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCx3QkFBd0I7d0JBQ3hCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLHNCQUFzQjt3QkFDdEIsNkJBQTZCO3dCQUM3QixxQkFBcUI7d0JBQ3JCLGNBQWM7cUJBQ2pCO29CQUNELFNBQVMsRUFBRSxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLENBQUM7b0JBQzFELFlBQVksRUFBRTt3QkFDVixHQUFHLFVBQVU7d0JBQ2IsR0FBRyxLQUFLO3dCQUNSLEdBQUcsVUFBVTt3QkFDYiwwQkFBMEI7d0JBQzFCLGdDQUFnQztxQkFDbkM7b0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBOZ01vZHVsZSwgTk9fRVJST1JTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIExvd2VyQ2FzZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IENka1RhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RhYmxlJztcbmltcG9ydCB7IEZ1bmRhbWVudGFsTmd4Q29yZU1vZHVsZSwgR3JpZExpc3RNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQgeyBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSwgQmFzZU1vZHVsZSwgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBCYXJzYVNhcFVpTW9kdWxlIH0gZnJvbSAnYmFyc2Etc2FwLXVpJztcbmltcG9ydCB7IEJhcnNhRWNoYXJ0c01vZHVsZSB9IGZyb20gJ2JhcnNhLWVjaGFydHMnO1xuXG5pbXBvcnQgeyBTaGVsbGJhckNvbXBvbmVudCB9IGZyb20gJy4vc2hlbGxiYXIvc2hlbGxiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRpbGVzVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi90aWxlcy12aWV3ZXIvdGlsZXMtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9maWxlVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vcHJvZmlsZS10aWxlL3Byb2ZpbGUtdGlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2ltcGxlVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vc2ltcGxlLXRpbGUvc2ltcGxlLXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEZlZWRUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9mZWVkLXRpbGUvZmVlZC10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb290ZXJUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9mb290ZXItdGlsZS9mb290ZXItdGlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vdGlsZS90aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2dvVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vbG9nby10aWxlL2xvZ28tdGlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTnVtZXJpY1RpbGVDb21wb25lbnQgfSBmcm9tICcuL251bWVyaWMtdGlsZS9udW1lcmljLXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFRpbGVIb21lRmlsdGVyUGlwZSB9IGZyb20gJy4vcGlwZXMvdGlsZS1ob21lLWZpbHRlci5waXBlJztcbmltcG9ydCB7IEZvb3RlckVkaXRUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9mb290ZXItZWRpdC10aWxlL2Zvb3Rlci1lZGl0LXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1BcHBGaW5kZXJDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tYXBwLWZpbmRlci9mb3JtLWFwcC1maW5kZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFBpblRpbGVDb21wb25lbnQgfSBmcm9tICcuL3Bpbi10aWxlL3Bpbi10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcm91cFRpbGVzUGlwZSB9IGZyb20gJy4vcGlwZXMvZ3JvdXAtdGlsZXMucGlwZSc7XG5pbXBvcnQgeyBIb21lR3JvdXBQaXBlIH0gZnJvbSAnLi9waXBlcy9ob21lLWdyb3VwLnBpcGUnO1xuaW1wb3J0IHsgVGlsZVByb3BQaXBlIH0gZnJvbSAnLi9waXBlcy90aWxlLXByb3AucGlwZSc7XG5cbmltcG9ydCB7IFRpbGVzU2VydmljZSB9IGZyb20gJy4vdGlsZXMuc2VydmljZSc7XG5pbXBvcnQgeyBFbXB0eUxpc3REaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZW1wdHlsaXN0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDaGFuZ2VBcHBUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jaGFuZ2UtYXBwLXRpbGUvY2hhbmdlLWFwcC10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDcmVhdGVBcHBHcm91cENvbXBvbmVudCB9IGZyb20gJy4vY3JlYXRlLWFwcC1ncm91cC9jcmVhdGUtYXBwLWdyb3VwLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IE1pY3JvVGlsZUNoYXJ0QmFyQ29tcG9uZW50IH0gZnJvbSAnLi9taWNyby10aWxlLWNoYXJ0LWJhci9taWNyby10aWxlLWNoYXJ0LWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWljcm9UaWxlQ2hhcnRBcmVhQ29tcG9uZW50IH0gZnJvbSAnLi9taWNyby10aWxlLWNoYXJ0LWFyZWEvbWljcm8tdGlsZS1jaGFydC1hcmVhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaWNyb1RpbGVDaGFydENpcmN1bGFyQ29tcG9uZW50IH0gZnJvbSAnLi9taWNyby10aWxlLWNoYXJ0LWNpcmN1bGFyL21pY3JvLXRpbGUtY2hhcnQtY2lyY3VsYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1pY3JvVGlsZUNoYXJ0TGluZUNvbXBvbmVudCB9IGZyb20gJy4vbWljcm8tdGlsZS1jaGFydC1saW5lL21pY3JvLXRpbGUtY2hhcnQtbGluZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWljcm9UaWxlQ2hhcnRTdGFja2JhckNvbXBvbmVudCB9IGZyb20gJy4vbWljcm8tdGlsZS1jaGFydC1zdGFja2Jhci9taWNyby10aWxlLWNoYXJ0LXN0YWNrYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaWNyb1RpbGVDaGFydENvbXBhcmlzb25Db21wb25lbnQgfSBmcm9tICcuL21pY3JvLXRpbGUtY2hhcnQtY29tcGFyaXNvbi9taWNyby10aWxlLWNoYXJ0LWNvbXBhcmlzb24uY29tcG9uZW50JztcbmltcG9ydCB7IE5ld3NUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9uZXdzLXRpbGUvbmV3cy10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY3Rpb25zTGlua0NvbXBvbmVudCB9IGZyb20gJy4vYWN0aW9ucy1saW5rL2FjdGlvbnMtbGluay5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWN0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYWN0aW9uLWl0ZW0vYWN0aW9uLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE1pY3JvVGlsZUNoYXJ0QnVsbGV0Q29tcG9uZW50IH0gZnJvbSAnLi9taWNyby10aWxlLWNoYXJ0LWJ1bGxldC9taWNyby10aWxlLWNoYXJ0LWJ1bGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWN0aW9uTGlua3NQaXBlIH0gZnJvbSAnLi9hY3Rpb24tbGlua3MucGlwZSc7XG5pbXBvcnQgeyBBcHBGaW5kZXJTZXJ2aWNlIH0gZnJvbSAnLi9hcHAtZmluZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGlsZXNWaWV3ZXJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3RpbGVzLXZpZXdlci1jb250YWluZXIvdGlsZXMtdmlld2VyLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwRmluZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAtZmluZGVyL2FwcC1maW5kZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFwcEZpbmRlckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAtZmluZGVyLWdyb3VwL2FwcC1maW5kZXItZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEFwcEZpbmRlckFwcExpc3RDb21wb25lbnQgfSBmcm9tICcuL2FwcC1maW5kZXItYXBwLWxpc3QvYXBwLWZpbmRlci1hcHAtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGlsZVJlbmRlcmVyRGlyZWN0aXZlIH0gZnJvbSAnLi90aWxlLXJlbmRlcmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUaWxlc1ZpZXdlckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi90aWxlcy12aWV3ZXItZ3JvdXAvdGlsZXMtdmlld2VyLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS10aWxlL2Zvcm0tdGlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL25vdGlmaWNhdGlvbi1ncm91cC9ub3RpZmljYXRpb24tZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkdyb3VwSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb24tZ3JvdXAtaGVhZGVyL25vdGlmaWNhdGlvbi1ncm91cC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhU2hlbGxiYXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXNoZWxsYmFyL2JhcnNhLXNoZWxsYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uVGFiQmFyQ29tcG9uZW50LCBJY29uVGFiQmFyVGFiQ29tcG9uZW50LCBJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0nO1xuaW1wb3J0IHsgUG9wb3ZlckFwcEZpbmRlckNvbXBvbmVudCB9IGZyb20gJy4vcG9wb3Zlci1hcHAtZmluZGVyL3BvcG92ZXItYXBwLWZpbmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsdGVyQXBwc0dyb3VwZWRQaXBlLCBGaWx0ZXJBcHBzUGlwZSB9IGZyb20gJy4vcG9wb3Zlci1hcHAtZmluZGVyL2ZpbHRlci1hcHBzLWdyb3VwZWQucGlwZSc7XG5pbXBvcnQgeyBUaWxlU3R5bGVEaXJlY3RpdmUgfSBmcm9tICcuL3RpbGUtc3R5bGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRpbGVTaXplRGlyZWN0aXZlIH0gZnJvbSAnLi90aWxlLXNpemUuZGlyZWN0aXZlJztcblxuY29uc3QgY29tcG9uZW50cyA9IFtcbiAgICBTaGVsbGJhckNvbXBvbmVudCxcbiAgICBTaW1wbGVUaWxlQ29tcG9uZW50LFxuICAgIFRpbGVzVmlld2VyQ29tcG9uZW50LFxuICAgIFByb2ZpbGVUaWxlQ29tcG9uZW50LFxuICAgIEZlZWRUaWxlQ29tcG9uZW50LFxuICAgIEZvb3RlclRpbGVDb21wb25lbnQsXG4gICAgVGlsZUNvbXBvbmVudCxcbiAgICBMb2dvVGlsZUNvbXBvbmVudCxcbiAgICBOdW1lcmljVGlsZUNvbXBvbmVudCxcbiAgICBGb290ZXJFZGl0VGlsZUNvbXBvbmVudCxcbiAgICBGb3JtQXBwRmluZGVyQ29tcG9uZW50LFxuICAgIFBpblRpbGVDb21wb25lbnQsXG4gICAgQ2hhbmdlQXBwVGlsZUNvbXBvbmVudCxcbiAgICBDcmVhdGVBcHBHcm91cENvbXBvbmVudCxcbiAgICBNaWNyb1RpbGVDaGFydEFyZWFDb21wb25lbnQsXG4gICAgTWljcm9UaWxlQ2hhcnRDaXJjdWxhckNvbXBvbmVudCxcbiAgICBNaWNyb1RpbGVDaGFydExpbmVDb21wb25lbnQsXG4gICAgTWljcm9UaWxlQ2hhcnRTdGFja2JhckNvbXBvbmVudCxcbiAgICBNaWNyb1RpbGVDaGFydENvbXBhcmlzb25Db21wb25lbnQsXG4gICAgTWljcm9UaWxlQ2hhcnRCYXJDb21wb25lbnQsXG4gICAgTWljcm9UaWxlQ2hhcnRCdWxsZXRDb21wb25lbnQsXG4gICAgVGlsZXNWaWV3ZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgTmV3c1RpbGVDb21wb25lbnQsXG4gICAgQWN0aW9uc0xpbmtDb21wb25lbnQsXG4gICAgQWN0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBBcHBGaW5kZXJDb21wb25lbnQsXG4gICAgQXBwRmluZGVyR3JvdXBDb21wb25lbnQsXG4gICAgQXBwRmluZGVyQXBwTGlzdENvbXBvbmVudCxcbiAgICBUaWxlc1ZpZXdlckdyb3VwQ29tcG9uZW50LFxuICAgIEZvcm1UaWxlQ29tcG9uZW50LFxuICAgIEJhcnNhU2hlbGxiYXJDb21wb25lbnQsXG4gICAgUG9wb3ZlckFwcEZpbmRlckNvbXBvbmVudFxuXTtcbmNvbnN0IHBpcGVzID0gW0dyb3VwVGlsZXNQaXBlLCBUaWxlSG9tZUZpbHRlclBpcGUsIEhvbWVHcm91cFBpcGUsIEFjdGlvbkxpbmtzUGlwZSwgVGlsZVByb3BQaXBlXTtcbmNvbnN0IGRpcmVjdGl2ZXMgPSBbRW1wdHlMaXN0RGlyZWN0aXZlLCBUaWxlUmVuZGVyZXJEaXJlY3RpdmUsIFRpbGVTdHlsZURpcmVjdGl2ZSwgVGlsZVNpemVEaXJlY3RpdmVdO1xuXG5ATmdNb2R1bGUoe1xuICAgIHNjaGVtYXM6IFtOT19FUlJPUlNfU0NIRU1BXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIERyYWdEcm9wTW9kdWxlLFxuICAgICAgICBDZGtUYWJsZU1vZHVsZSxcbiAgICAgICAgRnVuZGFtZW50YWxOZ3hDb3JlTW9kdWxlLFxuICAgICAgICBHcmlkTGlzdE1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUsXG4gICAgICAgIEJhcnNhU2FwVWlNb2R1bGUsXG4gICAgICAgIEJhcnNhRWNoYXJ0c01vZHVsZSxcbiAgICAgICAgSWNvblRhYkJhckNvbXBvbmVudCxcbiAgICAgICAgSWNvblRhYkJhclRhYkNvbXBvbmVudCxcbiAgICAgICAgSWNvblRhYkJhclRhYkNvbnRlbnREaXJlY3RpdmUsXG4gICAgICAgIEZpbHRlckFwcHNHcm91cGVkUGlwZSxcbiAgICAgICAgRmlsdGVyQXBwc1BpcGVcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1RpbGVzU2VydmljZSwgQXBwRmluZGVyU2VydmljZSwgTG93ZXJDYXNlUGlwZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIC4uLmNvbXBvbmVudHMsXG4gICAgICAgIC4uLnBpcGVzLFxuICAgICAgICAuLi5kaXJlY3RpdmVzLFxuICAgICAgICBOb3RpZmljYXRpb25Hcm91cENvbXBvbmVudCxcbiAgICAgICAgTm90aWZpY2F0aW9uR3JvdXBIZWFkZXJDb21wb25lbnRcbiAgICBdLFxuICAgIGV4cG9ydHM6IFsuLi5jb21wb25lbnRzXVxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYVRpbGVzTW9kdWxlIGV4dGVuZHMgQmFzZU1vZHVsZSB7XG4gICAgcHJvdGVjdGVkIGR5bmFtaWNDb21wb25lbnRzID0gWy4uLmNvbXBvbmVudHNdO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGRjbTogRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsIHByb3RlY3RlZCBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcikge1xuICAgICAgICBzdXBlcihkY20sIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgJ0JhcnNhVGlsZXNNb2R1bGUnKTtcbiAgICB9XG59XG4iXX0=
|
|
230
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtdGlsZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9iYXJzYS10aWxlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFakYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBMkIsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUs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QUFHLEtBQUs7d0JBQ1IsR0FBRyxVQUFVO3dCQUNiLDBCQUEwQjt3QkFDMUIsZ0NBQWdDO3FCQUNuQztvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIE5nTW9kdWxlLCBOT19FUlJPUlNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgTG93ZXJDYXNlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgQ2RrVGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHsgRnVuZGFtZW50YWxOZ3hDb3JlTW9kdWxlLCBHcmlkTGlzdE1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5cbmltcG9ydCB7IEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlLCBCYXNlTW9kdWxlLCBEeW5hbWljQ29tcG9uZW50U2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IEJhcnNhU2FwVWlNb2R1bGUgfSBmcm9tICdiYXJzYS1zYXAtdWknO1xuaW1wb3J0IHsgQmFyc2FFY2hhcnRzTW9kdWxlIH0gZnJvbSAnYmFyc2EtZWNoYXJ0cyc7XG5cbmltcG9ydCB7IFNoZWxsYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9zaGVsbGJhci9zaGVsbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGlsZXNWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3RpbGVzLXZpZXdlci90aWxlcy12aWV3ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2ZpbGVUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9maWxlLXRpbGUvcHJvZmlsZS10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaW1wbGVUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9zaW1wbGUtdGlsZS9zaW1wbGUtdGlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmVlZFRpbGVDb21wb25lbnQgfSBmcm9tICcuL2ZlZWQtdGlsZS9mZWVkLXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEZvb3RlclRpbGVDb21wb25lbnQgfSBmcm9tICcuL2Zvb3Rlci10aWxlL2Zvb3Rlci10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi90aWxlL3RpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IExvZ29UaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9sb2dvLXRpbGUvbG9nby10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOdW1lcmljVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vbnVtZXJpYy10aWxlL251bWVyaWMtdGlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGlsZUhvbWVGaWx0ZXJQaXBlIH0gZnJvbSAnLi9waXBlcy90aWxlLWhvbWUtZmlsdGVyLnBpcGUnO1xuaW1wb3J0IHsgRm9vdGVyRWRpdFRpbGVDb21wb25lbnQgfSBmcm9tICcuL2Zvb3Rlci1lZGl0LXRpbGUvZm9vdGVyLWVkaXQtdGlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybUFwcEZpbmRlckNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1hcHAtZmluZGVyL2Zvcm0tYXBwLWZpbmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGluVGlsZUNvbXBvbmVudCB9IGZyb20gJy4vcGluLXRpbGUvcGluLXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEdyb3VwVGlsZXNQaXBlIH0gZnJvbSAnLi9waXBlcy9ncm91cC10aWxlcy5waXBlJztcbmltcG9ydCB7IEhvbWVHcm91cFBpcGUgfSBmcm9tICcuL3BpcGVzL2hvbWUtZ3JvdXAucGlwZSc7XG5pbXBvcnQgeyBUaWxlUHJvcFBpcGUgfSBmcm9tICcuL3BpcGVzL3RpbGUtcHJvcC5waXBlJztcblxuaW1wb3J0IHsgVGlsZXNTZXJ2aWNlIH0gZnJvbSAnLi90aWxlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEVtcHR5TGlzdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lbXB0eWxpc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IENoYW5nZUFwcFRpbGVDb21wb25lbnQgfSBmcm9tICcuL2NoYW5nZS1hcHAtdGlsZS9jaGFuZ2UtYXBwLXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IENyZWF0ZUFwcEdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jcmVhdGUtYXBwLWdyb3VwL2NyZWF0ZS1hcHAtZ3JvdXAuY29tcG9uZW50JztcblxuaW1wb3J0IHsgTWljcm9UaWxlQ2hhcnRCYXJDb21wb25lbnQgfSBmcm9tICcuL21pY3JvLXRpbGUtY2hhcnQtYmFyL21pY3JvLXRpbGUtY2hhcnQtYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaWNyb1RpbGVDaGFydEFyZWFDb21wb25lbnQgfSBmcm9tICcuL21pY3JvLXRpbGUtY2hhcnQtYXJlYS9taWNyby10aWxlLWNoYXJ0LWFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IE1pY3JvVGlsZUNoYXJ0Q2lyY3VsYXJDb21wb25lbnQgfSBmcm9tICcuL21pY3JvLXRpbGUtY2hhcnQtY2lyY3VsYXIvbWljcm8tdGlsZS1jaGFydC1jaXJjdWxhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWljcm9UaWxlQ2hhcnRMaW5lQ29tcG9uZW50IH0gZnJvbSAnLi9taWNyby10aWxlLWNoYXJ0LWxpbmUvbWljcm8tdGlsZS1jaGFydC1saW5lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaWNyb1RpbGVDaGFydFN0YWNrYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9taWNyby10aWxlLWNoYXJ0LXN0YWNrYmFyL21pY3JvLXRpbGUtY2hhcnQtc3RhY2tiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1pY3JvVGlsZUNoYXJ0Q29tcGFyaXNvbkNvbXBvbmVudCB9IGZyb20gJy4vbWljcm8tdGlsZS1jaGFydC1jb21wYXJpc29uL21pY3JvLXRpbGUtY2hhcnQtY29tcGFyaXNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmV3c1RpbGVDb21wb25lbnQgfSBmcm9tICcuL25ld3MtdGlsZS9uZXdzLXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEFjdGlvbnNMaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9hY3Rpb25zLWxpbmsvYWN0aW9ucy1saW5rLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY3Rpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9hY3Rpb24taXRlbS9hY3Rpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWljcm9UaWxlQ2hhcnRCdWxsZXRDb21wb25lbnQgfSBmcm9tICcuL21pY3JvLXRpbGUtY2hhcnQtYnVsbGV0L21pY3JvLXRpbGUtY2hhcnQtYnVsbGV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY3Rpb25MaW5rc1BpcGUgfSBmcm9tICcuL2FjdGlvbi1saW5rcy5waXBlJztcbmltcG9ydCB7IEFwcEZpbmRlclNlcnZpY2UgfSBmcm9tICcuL2FwcC1maW5kZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUaWxlc1ZpZXdlckNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdGlsZXMtdmlld2VyLWNvbnRhaW5lci90aWxlcy12aWV3ZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBGaW5kZXJDb21wb25lbnQgfSBmcm9tICcuL2FwcC1maW5kZXIvYXBwLWZpbmRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwRmluZGVyR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL2FwcC1maW5kZXItZ3JvdXAvYXBwLWZpbmRlci1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwRmluZGVyQXBwTGlzdENvbXBvbmVudCB9IGZyb20gJy4vYXBwLWZpbmRlci1hcHAtbGlzdC9hcHAtZmluZGVyLWFwcC1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaWxlUmVuZGVyZXJEaXJlY3RpdmUgfSBmcm9tICcuL3RpbGUtcmVuZGVyZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRpbGVzVmlld2VyR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3RpbGVzLXZpZXdlci1ncm91cC90aWxlcy12aWV3ZXItZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1UaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLXRpbGUvZm9ybS10aWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vbm90aWZpY2F0aW9uLWdyb3VwL25vdGlmaWNhdGlvbi1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uR3JvdXBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL25vdGlmaWNhdGlvbi1ncm91cC1oZWFkZXIvbm90aWZpY2F0aW9uLWdyb3VwLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FTaGVsbGJhckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2Etc2hlbGxiYXIvYmFyc2Etc2hlbGxiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25UYWJCYXJDb21wb25lbnQsIEljb25UYWJCYXJUYWJDb21wb25lbnQsIEljb25UYWJCYXJUYWJDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBQb3BvdmVyQXBwRmluZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVyLWFwcC1maW5kZXIvcG9wb3Zlci1hcHAtZmluZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWx0ZXJBcHBzR3JvdXBlZFBpcGUsIEZpbHRlckFwcHNQaXBlIH0gZnJvbSAnLi9wb3BvdmVyLWFwcC1maW5kZXIvZmlsdGVyLWFwcHMtZ3JvdXBlZC5waXBlJztcbmltcG9ydCB7IFRpbGVTdHlsZURpcmVjdGl2ZSB9IGZyb20gJy4vdGlsZS1zdHlsZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVGlsZVNpemVEaXJlY3RpdmUgfSBmcm9tICcuL3RpbGUtc2l6ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFyc2FQaW5BcHBDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXBpbi1hcHAvYmFyc2EtcGluLWFwcC5jb21wb25lbnQnO1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICAgIFNoZWxsYmFyQ29tcG9uZW50LFxuICAgIFNpbXBsZVRpbGVDb21wb25lbnQsXG4gICAgVGlsZXNWaWV3ZXJDb21wb25lbnQsXG4gICAgUHJvZmlsZVRpbGVDb21wb25lbnQsXG4gICAgRmVlZFRpbGVDb21wb25lbnQsXG4gICAgRm9vdGVyVGlsZUNvbXBvbmVudCxcbiAgICBUaWxlQ29tcG9uZW50LFxuICAgIExvZ29UaWxlQ29tcG9uZW50LFxuICAgIE51bWVyaWNUaWxlQ29tcG9uZW50LFxuICAgIEZvb3RlckVkaXRUaWxlQ29tcG9uZW50LFxuICAgIEZvcm1BcHBGaW5kZXJDb21wb25lbnQsXG4gICAgUGluVGlsZUNvbXBvbmVudCxcbiAgICBDaGFuZ2VBcHBUaWxlQ29tcG9uZW50LFxuICAgIENyZWF0ZUFwcEdyb3VwQ29tcG9uZW50LFxuICAgIE1pY3JvVGlsZUNoYXJ0QXJlYUNvbXBvbmVudCxcbiAgICBNaWNyb1RpbGVDaGFydENpcmN1bGFyQ29tcG9uZW50LFxuICAgIE1pY3JvVGlsZUNoYXJ0TGluZUNvbXBvbmVudCxcbiAgICBNaWNyb1RpbGVDaGFydFN0YWNrYmFyQ29tcG9uZW50LFxuICAgIE1pY3JvVGlsZUNoYXJ0Q29tcGFyaXNvbkNvbXBvbmVudCxcbiAgICBNaWNyb1RpbGVDaGFydEJhckNvbXBvbmVudCxcbiAgICBNaWNyb1RpbGVDaGFydEJ1bGxldENvbXBvbmVudCxcbiAgICBUaWxlc1ZpZXdlckNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBOZXdzVGlsZUNvbXBvbmVudCxcbiAgICBBY3Rpb25zTGlua0NvbXBvbmVudCxcbiAgICBBY3Rpb25JdGVtQ29tcG9uZW50LFxuICAgIEFwcEZpbmRlckNvbXBvbmVudCxcbiAgICBBcHBGaW5kZXJHcm91cENvbXBvbmVudCxcbiAgICBBcHBGaW5kZXJBcHBMaXN0Q29tcG9uZW50LFxuICAgIFRpbGVzVmlld2VyR3JvdXBDb21wb25lbnQsXG4gICAgRm9ybVRpbGVDb21wb25lbnQsXG4gICAgQmFyc2FTaGVsbGJhckNvbXBvbmVudCxcbiAgICBQb3BvdmVyQXBwRmluZGVyQ29tcG9uZW50LFxuICAgIEJhcnNhUGluQXBwQ29tcG9uZW50XG5dO1xuY29uc3QgcGlwZXMgPSBbR3JvdXBUaWxlc1BpcGUsIFRpbGVIb21lRmlsdGVyUGlwZSwgSG9tZUdyb3VwUGlwZSwgQWN0aW9uTGlua3NQaXBlLCBUaWxlUHJvcFBpcGVdO1xuY29uc3QgZGlyZWN0aXZlcyA9IFtFbXB0eUxpc3REaXJlY3RpdmUsIFRpbGVSZW5kZXJlckRpcmVjdGl2ZSwgVGlsZVN0eWxlRGlyZWN0aXZlLCBUaWxlU2l6ZURpcmVjdGl2ZV07XG5cbkBOZ01vZHVsZSh7XG4gICAgc2NoZW1hczogW05PX0VSUk9SU19TQ0hFTUFdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgICAgIENka1RhYmxlTW9kdWxlLFxuICAgICAgICBGdW5kYW1lbnRhbE5neENvcmVNb2R1bGUsXG4gICAgICAgIEdyaWRMaXN0TW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSxcbiAgICAgICAgQmFyc2FTYXBVaU1vZHVsZSxcbiAgICAgICAgQmFyc2FFY2hhcnRzTW9kdWxlLFxuICAgICAgICBJY29uVGFiQmFyQ29tcG9uZW50LFxuICAgICAgICBJY29uVGFiQmFyVGFiQ29tcG9uZW50LFxuICAgICAgICBJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZSxcbiAgICAgICAgRmlsdGVyQXBwc0dyb3VwZWRQaXBlLFxuICAgICAgICBGaWx0ZXJBcHBzUGlwZVxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbVGlsZXNTZXJ2aWNlLCBBcHBGaW5kZXJTZXJ2aWNlLCBMb3dlckNhc2VQaXBlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgLi4uY29tcG9uZW50cyxcbiAgICAgICAgLi4ucGlwZXMsXG4gICAgICAgIC4uLmRpcmVjdGl2ZXMsXG4gICAgICAgIE5vdGlmaWNhdGlvbkdyb3VwQ29tcG9uZW50LFxuICAgICAgICBOb3RpZmljYXRpb25Hcm91cEhlYWRlckNvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0czogWy4uLmNvbXBvbmVudHNdXG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhVGlsZXNNb2R1bGUgZXh0ZW5kcyBCYXNlTW9kdWxlIHtcbiAgICBwcm90ZWN0ZWQgZHluYW1pY0NvbXBvbmVudHMgPSBbLi4uY29tcG9uZW50c107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZGNtOiBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICAgIHN1cGVyKGRjbSwgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCAnQmFyc2FUaWxlc01vZHVsZScpO1xuICAgIH1cbn1cbiJdfQ==
|