ontimize-web-ngx 15.6.0-next.4 → 15.6.0-next.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/app-sidenav/menu-group/o-app-sidenav-menu-group.component.mjs +19 -3
- package/esm2020/lib/components/app-sidenav/menu-item/o-app-sidenav-menu-item.component.mjs +17 -4
- package/esm2020/lib/components/app-sidenav/o-app-sidenav.component.mjs +7 -5
- package/esm2020/lib/components/table/o-table.component.mjs +11 -2
- package/esm2020/lib/injection-tokens/index.mjs +2 -1
- package/esm2020/lib/interfaces/index.mjs +2 -1
- package/esm2020/lib/layouts/app-layout/o-app-layout-base.class.mjs +1 -1
- package/esm2020/lib/layouts/app-layout/o-app-layout.component.mjs +26 -9
- package/esm2020/lib/services/factories.mjs +7 -2
- package/esm2020/lib/util/codes.mjs +3 -1
- package/fesm2015/ontimize-web-ngx.mjs +82 -16
- package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
- package/fesm2020/ontimize-web-ngx.mjs +82 -16
- package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
- package/lib/components/app-sidenav/menu-group/o-app-sidenav-menu-group.component.d.ts +3 -0
- package/lib/components/app-sidenav/menu-item/o-app-sidenav-menu-item.component.d.ts +1 -0
- package/lib/components/app-sidenav/o-app-sidenav.component.d.ts +2 -1
- package/lib/components/table/o-table.component.d.ts +1 -0
- package/lib/injection-tokens/index.d.ts +2 -0
- package/lib/interfaces/index.d.ts +1 -0
- package/lib/layouts/app-layout/o-app-layout-base.class.d.ts +1 -1
- package/lib/layouts/app-layout/o-app-layout.component.d.ts +7 -3
- package/lib/util/codes.d.ts +3 -0
- package/package.json +1 -1
- package/theme.scss +26 -26
|
@@ -28,7 +28,8 @@ export const DEFAULT_INPUTS_O_APP_SIDENAV = [
|
|
|
28
28
|
'closedSidenavImg: closed-sidenav-image',
|
|
29
29
|
'layoutMode: layout-mode',
|
|
30
30
|
'sidenavMode: sidenav-mode',
|
|
31
|
-
'storeState: store-state'
|
|
31
|
+
'storeState: store-state',
|
|
32
|
+
'showEllipsisMenu: show-ellipsis-menu'
|
|
32
33
|
];
|
|
33
34
|
export const DEFAULT_OUTPUTS_O_APP_SIDENAV = [
|
|
34
35
|
'onSidenavOpenedChange',
|
|
@@ -48,6 +49,7 @@ export class OAppSidenavComponent extends OAppSidenavComponentStateService {
|
|
|
48
49
|
this.menuRootArray = [];
|
|
49
50
|
this._layoutMode = Codes.APP_LAYOUT_MODE_DESKTOP;
|
|
50
51
|
this.opened = true;
|
|
52
|
+
this.showEllipsisMenu = false;
|
|
51
53
|
this._showUserInfo = true;
|
|
52
54
|
this._showToggleButton = true;
|
|
53
55
|
this.onSidenavOpenedChange = new EventEmitter();
|
|
@@ -241,9 +243,9 @@ export class OAppSidenavComponent extends OAppSidenavComponentStateService {
|
|
|
241
243
|
}
|
|
242
244
|
}
|
|
243
245
|
OAppSidenavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OAppSidenavComponent, deps: [{ token: i0.Injector }, { token: i1.Router }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i2.MediaObserver }], target: i0.ɵɵFactoryTarget.Component });
|
|
244
|
-
OAppSidenavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OAppSidenavComponent, selector: "o-app-sidenav", inputs: { opened: "opened", showUserInfo: ["show-user-info", "showUserInfo"], showToggleButton: ["show-toggle-button", "showToggleButton"], openedSidenavImg: ["opened-sidenav-image", "openedSidenavImg"], closedSidenavImg: ["closed-sidenav-image", "closedSidenavImg"], layoutMode: ["layout-mode", "layoutMode"], sidenavMode: ["sidenav-mode", "sidenavMode"], storeState: ["store-state", "storeState"] }, outputs: { onSidenavOpenedChange: "onSidenavOpenedChange", onSidenavOpenedStart: "onSidenavOpenedStart", onSidenavClosedStart: "onSidenavClosedStart", onSidenavToggle: "onSidenavToggle", afterSidenavToggle: "afterSidenavToggle" }, host: { listeners: { "window:beforeunload": "beforeunloadHandler()", "window:resize": "onResize()" }, properties: { "class.o-app-sidenav": "true" } }, providers: [
|
|
246
|
+
OAppSidenavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OAppSidenavComponent, selector: "o-app-sidenav", inputs: { opened: "opened", showUserInfo: ["show-user-info", "showUserInfo"], showToggleButton: ["show-toggle-button", "showToggleButton"], openedSidenavImg: ["opened-sidenav-image", "openedSidenavImg"], closedSidenavImg: ["closed-sidenav-image", "closedSidenavImg"], layoutMode: ["layout-mode", "layoutMode"], sidenavMode: ["sidenav-mode", "sidenavMode"], storeState: ["store-state", "storeState"], showEllipsisMenu: ["show-ellipsis-menu", "showEllipsisMenu"] }, outputs: { onSidenavOpenedChange: "onSidenavOpenedChange", onSidenavOpenedStart: "onSidenavOpenedStart", onSidenavClosedStart: "onSidenavClosedStart", onSidenavToggle: "onSidenavToggle", afterSidenavToggle: "afterSidenavToggle" }, host: { listeners: { "window:beforeunload": "beforeunloadHandler()", "window:resize": "onResize()" }, properties: { "class.o-app-sidenav": "true" } }, providers: [
|
|
245
247
|
{ provide: OAppSidenavBase, useExisting: forwardRef(() => OAppSidenavComponent) }
|
|
246
|
-
], viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-sidenav-container class=\"o-app-sidenav-container\" [class.opened]=\"sidenav.opened\"\n [class.o-app-sidenav-mode-desktop]=\"(layoutMode || 'desktop') === 'desktop'\"\n [class.o-app-sidenav-mode-mobile]=\"(layoutMode || 'desktop') !== 'desktop'\">\n\n <mat-sidenav #sidenav class=\"o-app-sidenav-sidenav o-scroll\" [opened]=\"isSidenavOpened()\"\n [mode]=\"(sidenavMode || ((layoutMode || 'desktop') === 'desktop' ? 'side' : 'over'))\" [class.mat-drawer-opened]=\"sidenav.opened\"\n [class.mat-drawer-closed]=\"!sidenav.opened\" fxLayoutAlign=\"start stretch\" (openedChange)=\"sidenavOpenedChange()\"\n (closedStart)=\"sidenavClosedStart()\" (openedStart)=\"sidenavOpenedStart()\">\n <div fxFlex fxLayout=\"column\">\n <div fxLayout=\"row\" fxLayoutAlign=\"end center\" class=\"sidenav-toggle-container\" *ngIf=\"isDesktopMode()\">\n <mat-icon class=\"sidenav-toggle\" (click)=\"toggleSidenav()\" svgIcon=\"ontimize:menu\">menu</mat-icon>\n </div>\n\n <o-app-sidenav-image [opened-src]=\"openedSidenavImg\" [closed-src]=\"closedSidenavImg\"> </o-app-sidenav-image>\n <ng-content select=\"o-app-layout-sidenav-projection-start\"></ng-content>\n <div class=\"navMenu\">\n <nav *ngFor=\"let menuRootItem of menuRootArray\">\n\n <ul *ngIf=\"appMenuService.getMenuItemType(menuRootItem) !== 'group' && appMenuService.isVisible(menuRootItem)\">\n <o-app-sidenav-menu-item [menu-item]=\"menuRootItem\" [menu-item-type]=\"appMenuService.getMenuItemType(menuRootItem)\"\n [sidenav-opened]=\"sidenav.opened\" (onClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-item>\n </ul>\n\n <o-app-sidenav-menu-group [menu-group]=\"menuRootItem\" [sidenav-opened]=\"sidenav.opened\" level=\"1\"\n *ngIf=\"appMenuService.getMenuItemType(menuRootItem) === 'group' && appMenuService.isVisible(menuRootItem)\"\n (onItemClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-group>\n\n </nav>\n </div>\n <div class=\"layout-sidenav-projection-end\">\n <ng-content select=\"o-app-layout-sidenav-projection-end\"></ng-content>\n </div>\n </div>\n </mat-sidenav>\n\n <mat-sidenav-content class=\"o-app-sidenav-content\">\n <ng-content></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [".o-app-sidenav.header-layout .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 48px 6px #0000003d}.o-app-sidenav .navMenu{flex:1;display:flex;flex-direction:column;overflow:auto}@-moz-document url-prefix(){.o-app-sidenav .navMenu{height:100%}}.o-app-sidenav .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-menu-item a{margin-left:8px}.o-app-sidenav .o-app-sidenav-menu-group a .mat-icon svg,.o-app-sidenav .o-app-sidenav-menu-item a .mat-icon svg{display:flex}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-mdc-button-persistent-ripple,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-mdc-button-persistent-ripple{display:none}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .o-app-sidenav-item,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .o-app-sidenav-item{opacity:.5}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] a,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] a{cursor:initial}.o-app-sidenav .o-app-sidenav-menugroup{transition:background-color .5s}.o-app-sidenav .o-app-sidenav-menugroup-items-container{overflow:hidden}.o-app-sidenav .o-app-sidenav-container{width:100%;height:100%}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-sidenav.mat-drawer-closed{visibility:visible!important;transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-content.mat-drawer-content{margin-right:48px!important;transform:translate3d(48px,0,0)!important}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content{position:absolute;right:0;left:0;min-height:100%;display:flex;flex-direction:column}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content router-outlet+*{flex-grow:1}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 0 6px #0000003d;width:240px;bottom:0;overflow:auto;height:100%}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup{transition:padding .5s 0s}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup .o-app-sidenav-menugroup-arrow{transition:.5s transform cubic-bezier(.25,.8,.25,1)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup.opened .o-app-sidenav-menugroup-arrow{transform:rotate(90deg)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup-title,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:28px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-right:4px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup mat-icon:not(.o-app-sidenav-menugroup-arrow),.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem mat-icon:not(.o-app-sidenav-menugroup-arrow){margin-right:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closing{transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed{text-align:center}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item:not(.o-user-info){cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:focus,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:hover{color:inherit}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-group:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-item:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected{padding:0 8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed nav{width:48px;min-width:48px;margin-left:auto}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container{padding:0;text-align:end;max-height:36px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container .o-app-sidenav-image{max-height:36px;margin-right:8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container{padding-bottom:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .sidenav-toggle-container{height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container nav a{border-radius:0;box-sizing:border-box;display:block;line-height:48px;height:auto;font-size:14px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container nav a>.mat-icon{vertical-align:middle;height:24px;width:24px;font-size:24px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container ul{list-style-type:none;margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container ul li{margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .sidenav-toggle{padding:4px 12px 8px;cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a{font-size:14px;line-height:48px;height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:11px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-icon,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-icon{font-size:20px;height:20px;width:20px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menugroup-arrow{display:flex}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i6.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i6.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "component", type: i7.OAppSidenavMenuGroupComponent, selector: "o-app-sidenav-menu-group", inputs: ["menu-group", "sidenav-opened", "level"], outputs: ["onItemClick"] }, { kind: "component", type: i8.OAppSidenavImageComponent, selector: "o-app-sidenav-image", inputs: ["opened-src", "closed-src"] }, { kind: "component", type: i9.OAppSidenavMenuItemComponent, selector: "o-app-sidenav-menu-item", inputs: ["menu-item", "menu-item-type", "sidenav-opened", "disabled"], outputs: ["onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
248
|
+
], viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-sidenav-container class=\"o-app-sidenav-container\" [class.opened]=\"sidenav.opened\"\n [class.o-app-sidenav-mode-desktop]=\"(layoutMode || 'desktop') === 'desktop'\"\n [class.o-app-sidenav-mode-mobile]=\"(layoutMode || 'desktop') !== 'desktop'\">\n\n <mat-sidenav #sidenav class=\"o-app-sidenav-sidenav o-scroll\" [opened]=\"isSidenavOpened()\"\n [mode]=\"(sidenavMode || ((layoutMode || 'desktop') === 'desktop' ? 'side' : 'over'))\" [class.mat-drawer-opened]=\"sidenav.opened\"\n [class.mat-drawer-closed]=\"!sidenav.opened\" [class.ellipsis-menu-items]=\"showEllipsisMenu\" (openedChange)=\"sidenavOpenedChange()\"\n (closedStart)=\"sidenavClosedStart()\" (openedStart)=\"sidenavOpenedStart()\">\n <div fxLayout=\"column\" class=\"sidenav-wrapper\">\n <div fxLayout=\"row\" fxLayoutAlign=\"end center\" class=\"sidenav-toggle-container\" *ngIf=\"isDesktopMode()\">\n <mat-icon id=\"sidenav-menu\" class=\"sidenav-toggle\" (click)=\"toggleSidenav()\" svgIcon=\"ontimize:menu\">menu</mat-icon>\n </div>\n\n <o-app-sidenav-image [opened-src]=\"openedSidenavImg\" [closed-src]=\"closedSidenavImg\"> </o-app-sidenav-image>\n <ng-content select=\"o-app-layout-sidenav-projection-start\"></ng-content>\n <div class=\"navMenu\">\n <nav *ngFor=\"let menuRootItem of menuRootArray\">\n\n <ul *ngIf=\"appMenuService.getMenuItemType(menuRootItem) !== 'group' && appMenuService.isVisible(menuRootItem)\">\n <o-app-sidenav-menu-item [menu-item]=\"menuRootItem\" [menu-item-type]=\"appMenuService.getMenuItemType(menuRootItem)\"\n [sidenav-opened]=\"sidenav.opened\" (onClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-item>\n </ul>\n\n <o-app-sidenav-menu-group [menu-group]=\"menuRootItem\" [sidenav-opened]=\"sidenav.opened\" level=\"1\"\n *ngIf=\"appMenuService.getMenuItemType(menuRootItem) === 'group' && appMenuService.isVisible(menuRootItem)\"\n (onItemClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-group>\n\n </nav>\n </div>\n <div class=\"layout-sidenav-projection-end\">\n <ng-content select=\"o-app-layout-sidenav-projection-end\"></ng-content>\n </div>\n </div>\n </mat-sidenav>\n\n <mat-sidenav-content class=\"o-app-sidenav-content\">\n <ng-content></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [".o-app-sidenav.header-layout .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 48px 6px #0000003d}.o-app-sidenav .navMenu{flex:1;display:flex;flex-direction:column;overflow:auto}@-moz-document url-prefix(){.o-app-sidenav .navMenu{height:100%}}.o-app-sidenav .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-menu-item a{margin-left:8px}.o-app-sidenav .o-app-sidenav-menu-group a .mat-icon svg,.o-app-sidenav .o-app-sidenav-menu-item a .mat-icon svg{display:flex}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-mdc-button-persistent-ripple,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-mdc-button-persistent-ripple{display:none}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .o-app-sidenav-item,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .o-app-sidenav-item{opacity:.5}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] a,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] a{cursor:initial}.o-app-sidenav .o-app-sidenav-menugroup{transition:background-color .5s}.o-app-sidenav .o-app-sidenav-menugroup-items-container{overflow:hidden}.o-app-sidenav .o-app-sidenav-container{width:100%;height:100%}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-sidenav.mat-drawer-closed{visibility:visible!important;transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-content.mat-drawer-content{margin-right:48px!important;transform:translate3d(48px,0,0)!important}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content{position:absolute;right:0;left:0;min-height:100%;display:flex;flex-direction:column}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content router-outlet+*{flex-grow:1}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 0 6px #0000003d;width:240px;bottom:0;overflow:auto;height:100%;display:flex}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup{transition:padding .5s 0s}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup .o-app-sidenav-menugroup-arrow{transition:.5s transform cubic-bezier(.25,.8,.25,1)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup.opened .o-app-sidenav-menugroup-arrow{transform:rotate(90deg)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup-title,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:28px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-right:4px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup mat-icon:not(.o-app-sidenav-menugroup-arrow),.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem mat-icon:not(.o-app-sidenav-menugroup-arrow){margin-right:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closing{transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed{text-align:center}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item:not(.o-user-info){cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:focus,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:hover{color:inherit}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-group:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-item:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected{padding:0 8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed nav{width:48px;min-width:48px;margin-left:auto}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container{padding:0;text-align:end;max-height:36px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container .o-app-sidenav-image{max-height:36px;margin-right:8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.ellipsis-menu-items,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.ellipsis-menu-items .mat-drawer-inner-container{display:block}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.ellipsis-menu-items .sidenav-wrapper{height:100%;width:100%;padding-bottom:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container{display:flex}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .sidenav-wrapper{flex:1}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-content-container{padding-bottom:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .sidenav-toggle-container{height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav nav a{border-radius:0;box-sizing:border-box;display:block;line-height:48px;height:auto;font-size:14px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav nav a>.mat-icon{vertical-align:middle;height:24px;width:24px;font-size:24px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav ul{list-style-type:none;margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav ul li{margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .sidenav-toggle{padding:4px 12px 8px;cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a{font-size:14px;line-height:48px;height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:11px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-icon,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-icon{font-size:20px;height:20px;width:20px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menugroup-arrow{display:flex}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i6.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i6.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "component", type: i7.OAppSidenavMenuGroupComponent, selector: "o-app-sidenav-menu-group", inputs: ["menu-group", "sidenav-opened", "level"], outputs: ["onItemClick"] }, { kind: "component", type: i8.OAppSidenavImageComponent, selector: "o-app-sidenav-image", inputs: ["opened-src", "closed-src"] }, { kind: "component", type: i9.OAppSidenavMenuItemComponent, selector: "o-app-sidenav-menu-item", inputs: ["menu-item", "menu-item-type", "sidenav-opened", "disabled"], outputs: ["onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
247
249
|
__decorate([
|
|
248
250
|
BooleanInputConverter(),
|
|
249
251
|
__metadata("design:type", Boolean)
|
|
@@ -254,7 +256,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
254
256
|
'[class.o-app-sidenav]': 'true'
|
|
255
257
|
}, providers: [
|
|
256
258
|
{ provide: OAppSidenavBase, useExisting: forwardRef(() => OAppSidenavComponent) }
|
|
257
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-sidenav-container class=\"o-app-sidenav-container\" [class.opened]=\"sidenav.opened\"\n [class.o-app-sidenav-mode-desktop]=\"(layoutMode || 'desktop') === 'desktop'\"\n [class.o-app-sidenav-mode-mobile]=\"(layoutMode || 'desktop') !== 'desktop'\">\n\n <mat-sidenav #sidenav class=\"o-app-sidenav-sidenav o-scroll\" [opened]=\"isSidenavOpened()\"\n [mode]=\"(sidenavMode || ((layoutMode || 'desktop') === 'desktop' ? 'side' : 'over'))\" [class.mat-drawer-opened]=\"sidenav.opened\"\n [class.mat-drawer-closed]=\"!sidenav.opened\" fxLayoutAlign=\"start stretch\" (openedChange)=\"sidenavOpenedChange()\"\n (closedStart)=\"sidenavClosedStart()\" (openedStart)=\"sidenavOpenedStart()\">\n <div fxFlex fxLayout=\"column\">\n <div fxLayout=\"row\" fxLayoutAlign=\"end center\" class=\"sidenav-toggle-container\" *ngIf=\"isDesktopMode()\">\n <mat-icon class=\"sidenav-toggle\" (click)=\"toggleSidenav()\" svgIcon=\"ontimize:menu\">menu</mat-icon>\n </div>\n\n <o-app-sidenav-image [opened-src]=\"openedSidenavImg\" [closed-src]=\"closedSidenavImg\"> </o-app-sidenav-image>\n <ng-content select=\"o-app-layout-sidenav-projection-start\"></ng-content>\n <div class=\"navMenu\">\n <nav *ngFor=\"let menuRootItem of menuRootArray\">\n\n <ul *ngIf=\"appMenuService.getMenuItemType(menuRootItem) !== 'group' && appMenuService.isVisible(menuRootItem)\">\n <o-app-sidenav-menu-item [menu-item]=\"menuRootItem\" [menu-item-type]=\"appMenuService.getMenuItemType(menuRootItem)\"\n [sidenav-opened]=\"sidenav.opened\" (onClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-item>\n </ul>\n\n <o-app-sidenav-menu-group [menu-group]=\"menuRootItem\" [sidenav-opened]=\"sidenav.opened\" level=\"1\"\n *ngIf=\"appMenuService.getMenuItemType(menuRootItem) === 'group' && appMenuService.isVisible(menuRootItem)\"\n (onItemClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-group>\n\n </nav>\n </div>\n <div class=\"layout-sidenav-projection-end\">\n <ng-content select=\"o-app-layout-sidenav-projection-end\"></ng-content>\n </div>\n </div>\n </mat-sidenav>\n\n <mat-sidenav-content class=\"o-app-sidenav-content\">\n <ng-content></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [".o-app-sidenav.header-layout .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 48px 6px #0000003d}.o-app-sidenav .navMenu{flex:1;display:flex;flex-direction:column;overflow:auto}@-moz-document url-prefix(){.o-app-sidenav .navMenu{height:100%}}.o-app-sidenav .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-menu-item a{margin-left:8px}.o-app-sidenav .o-app-sidenav-menu-group a .mat-icon svg,.o-app-sidenav .o-app-sidenav-menu-item a .mat-icon svg{display:flex}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-mdc-button-persistent-ripple,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-mdc-button-persistent-ripple{display:none}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .o-app-sidenav-item,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .o-app-sidenav-item{opacity:.5}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] a,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] a{cursor:initial}.o-app-sidenav .o-app-sidenav-menugroup{transition:background-color .5s}.o-app-sidenav .o-app-sidenav-menugroup-items-container{overflow:hidden}.o-app-sidenav .o-app-sidenav-container{width:100%;height:100%}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-sidenav.mat-drawer-closed{visibility:visible!important;transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-content.mat-drawer-content{margin-right:48px!important;transform:translate3d(48px,0,0)!important}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content{position:absolute;right:0;left:0;min-height:100%;display:flex;flex-direction:column}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content router-outlet+*{flex-grow:1}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 0 6px #0000003d;width:240px;bottom:0;overflow:auto;height:100%}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup{transition:padding .5s 0s}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup .o-app-sidenav-menugroup-arrow{transition:.5s transform cubic-bezier(.25,.8,.25,1)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup.opened .o-app-sidenav-menugroup-arrow{transform:rotate(90deg)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup-title,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:28px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-right:4px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup mat-icon:not(.o-app-sidenav-menugroup-arrow),.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem mat-icon:not(.o-app-sidenav-menugroup-arrow){margin-right:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closing{transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed{text-align:center}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item:not(.o-user-info){cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:focus,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:hover{color:inherit}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-group:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-item:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected{padding:0 8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed nav{width:48px;min-width:48px;margin-left:auto}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container{padding:0;text-align:end;max-height:36px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container .o-app-sidenav-image{max-height:36px;margin-right:8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container{padding-bottom:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .sidenav-toggle-container{height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container nav a{border-radius:0;box-sizing:border-box;display:block;line-height:48px;height:auto;font-size:14px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container nav a>.mat-icon{vertical-align:middle;height:24px;width:24px;font-size:24px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container ul{list-style-type:none;margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container ul li{margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .sidenav-toggle{padding:4px 12px 8px;cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a{font-size:14px;line-height:48px;height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:11px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-icon,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-icon{font-size:20px;height:20px;width:20px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .o-app-sidenav-menugroup-arrow{display:flex}\n"] }]
|
|
259
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-sidenav-container class=\"o-app-sidenav-container\" [class.opened]=\"sidenav.opened\"\n [class.o-app-sidenav-mode-desktop]=\"(layoutMode || 'desktop') === 'desktop'\"\n [class.o-app-sidenav-mode-mobile]=\"(layoutMode || 'desktop') !== 'desktop'\">\n\n <mat-sidenav #sidenav class=\"o-app-sidenav-sidenav o-scroll\" [opened]=\"isSidenavOpened()\"\n [mode]=\"(sidenavMode || ((layoutMode || 'desktop') === 'desktop' ? 'side' : 'over'))\" [class.mat-drawer-opened]=\"sidenav.opened\"\n [class.mat-drawer-closed]=\"!sidenav.opened\" [class.ellipsis-menu-items]=\"showEllipsisMenu\" (openedChange)=\"sidenavOpenedChange()\"\n (closedStart)=\"sidenavClosedStart()\" (openedStart)=\"sidenavOpenedStart()\">\n <div fxLayout=\"column\" class=\"sidenav-wrapper\">\n <div fxLayout=\"row\" fxLayoutAlign=\"end center\" class=\"sidenav-toggle-container\" *ngIf=\"isDesktopMode()\">\n <mat-icon id=\"sidenav-menu\" class=\"sidenav-toggle\" (click)=\"toggleSidenav()\" svgIcon=\"ontimize:menu\">menu</mat-icon>\n </div>\n\n <o-app-sidenav-image [opened-src]=\"openedSidenavImg\" [closed-src]=\"closedSidenavImg\"> </o-app-sidenav-image>\n <ng-content select=\"o-app-layout-sidenav-projection-start\"></ng-content>\n <div class=\"navMenu\">\n <nav *ngFor=\"let menuRootItem of menuRootArray\">\n\n <ul *ngIf=\"appMenuService.getMenuItemType(menuRootItem) !== 'group' && appMenuService.isVisible(menuRootItem)\">\n <o-app-sidenav-menu-item [menu-item]=\"menuRootItem\" [menu-item-type]=\"appMenuService.getMenuItemType(menuRootItem)\"\n [sidenav-opened]=\"sidenav.opened\" (onClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-item>\n </ul>\n\n <o-app-sidenav-menu-group [menu-group]=\"menuRootItem\" [sidenav-opened]=\"sidenav.opened\" level=\"1\"\n *ngIf=\"appMenuService.getMenuItemType(menuRootItem) === 'group' && appMenuService.isVisible(menuRootItem)\"\n (onItemClick)=\"onMenuItemClick()\">\n </o-app-sidenav-menu-group>\n\n </nav>\n </div>\n <div class=\"layout-sidenav-projection-end\">\n <ng-content select=\"o-app-layout-sidenav-projection-end\"></ng-content>\n </div>\n </div>\n </mat-sidenav>\n\n <mat-sidenav-content class=\"o-app-sidenav-content\">\n <ng-content></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [".o-app-sidenav.header-layout .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 48px 6px #0000003d}.o-app-sidenav .navMenu{flex:1;display:flex;flex-direction:column;overflow:auto}@-moz-document url-prefix(){.o-app-sidenav .navMenu{height:100%}}.o-app-sidenav .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-menu-item a{margin-left:8px}.o-app-sidenav .o-app-sidenav-menu-group a .mat-icon svg,.o-app-sidenav .o-app-sidenav-menu-item a .mat-icon svg{display:flex}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .mat-mdc-button-persistent-ripple,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-button-focus-overlay,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .mat-mdc-button-persistent-ripple{display:none}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] .o-app-sidenav-item,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] .o-app-sidenav-item{opacity:.5}.o-app-sidenav .o-app-sidenav-menu-group[disabled=true] a,.o-app-sidenav .o-app-sidenav-menu-item[disabled=true] a{cursor:initial}.o-app-sidenav .o-app-sidenav-menugroup{transition:background-color .5s}.o-app-sidenav .o-app-sidenav-menugroup-items-container{overflow:hidden}.o-app-sidenav .o-app-sidenav-container{width:100%;height:100%}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-sidenav.mat-drawer-closed{visibility:visible!important;transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container.o-app-sidenav-mode-desktop:not(.opened) .o-app-sidenav-content.mat-drawer-content{margin-right:48px!important;transform:translate3d(48px,0,0)!important}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content{position:absolute;right:0;left:0;min-height:100%;display:flex;flex-direction:column}.o-app-sidenav .o-app-sidenav-container .o-app-sidenav-content router-outlet+*{flex-grow:1}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav{box-shadow:3px 0 6px #0000003d;width:240px;bottom:0;overflow:auto;height:100%;display:flex}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup{transition:padding .5s 0s}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup .o-app-sidenav-menugroup-arrow{transition:.5s transform cubic-bezier(.25,.8,.25,1)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup.opened .o-app-sidenav-menugroup-arrow{transform:rotate(90deg)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup-title,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:28px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-2 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-right:4px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-3 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-4 a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menu-group-level-5 a{padding-left:52px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menugroup mat-icon:not(.o-app-sidenav-menugroup-arrow),.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav:not(.mat-drawer-closed) .o-app-sidenav-menuitem mat-icon:not(.o-app-sidenav-menugroup-arrow){margin-right:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closing{transform:translate3d(-191px,0,0)}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed{text-align:center}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item:not(.o-user-info){cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:focus,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-item.o-user-info:hover{color:inherit}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-group:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-menu-item:not([disabled=true]) a.o-app-sidenav-viewer-sidenav-item-selected{padding:0 8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed nav{width:48px;min-width:48px;margin-left:auto}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container{padding:0;text-align:end;max-height:36px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.mat-drawer-closed .o-app-sidenav-image .o-app-sidenav-image-container .o-app-sidenav-image{max-height:36px;margin-right:8px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.ellipsis-menu-items,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.ellipsis-menu-items .mat-drawer-inner-container{display:block}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav.ellipsis-menu-items .sidenav-wrapper{height:100%;width:100%;padding-bottom:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container{display:flex}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .mat-drawer-inner-container .sidenav-wrapper{flex:1}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-content-container{padding-bottom:16px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .sidenav-toggle-container{height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav nav a{border-radius:0;box-sizing:border-box;display:block;line-height:48px;height:auto;font-size:14px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav nav a>.mat-icon{vertical-align:middle;height:24px;width:24px;font-size:24px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav ul{list-style-type:none;margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav ul li{margin:0;padding:0}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .sidenav-toggle{padding:4px 12px 8px;cursor:pointer}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a{font-size:14px;line-height:48px;height:48px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-1 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a{font-size:12px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a{font-size:11px;line-height:40px;height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-mdc-button-touch-target,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-mdc-button-touch-target{height:40px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-group a .mat-icon,.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menu-group-level-2 a+.o-app-sidenav-menugroup-items-container .o-app-sidenav-menu-item a .mat-icon{font-size:20px;height:20px;width:20px}.o-app-sidenav .o-app-sidenav-container .mat-drawer.o-app-sidenav-sidenav .o-app-sidenav-menugroup-arrow{display:flex}\n"] }]
|
|
258
260
|
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.Router }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i2.MediaObserver }]; }, propDecorators: { sidenav: [{
|
|
259
261
|
type: ViewChild,
|
|
260
262
|
args: [MatSidenav]
|
|
@@ -265,4 +267,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
265
267
|
type: HostListener,
|
|
266
268
|
args: ['window:resize', []]
|
|
267
269
|
}] } });
|
|
268
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1hcHAtc2lkZW5hdi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9hcHAtc2lkZW5hdi9vLWFwcC1zaWRlbmF2LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1zaWRlbmF2L28tYXBwLXNpZGVuYXYuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osUUFBUSxFQUdSLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBWSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBRTNHLE9BQU8sRUFBRSxLQUFLLEVBQWdDLE1BQU0sa0JBQWtCLENBQUM7QUFDdkUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7Ozs7QUFFN0QsTUFB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bnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3RvcixcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZWRpYU9ic2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHsgTWF0U2lkZW5hdiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBCb29sZWFuSW5wdXRDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi9kZWNvcmF0b3JzL2lucHV0LWNvbnZlcnRlcic7XG5pbXBvcnQgeyBNZW51R3JvdXAsIE1lbnVJdGVtVXNlckluZm8gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2FwcC1tZW51LmludGVyZmFjZSc7XG5pbXBvcnQgeyBBcHBNZW51U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FwcC1tZW51LnNlcnZpY2UnO1xuaW1wb3J0IHsgT1VzZXJJbmZvU2VydmljZSwgVXNlckluZm8gfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vLXVzZXItaW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IE9BcHBTaWRlbmF2Q29tcG9uZW50U3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc3RhdGUvby1hcHAtbWVudS1jb21wb25lbnQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBNZW51Um9vdEl0ZW0gfSBmcm9tICcuLi8uLi90eXBlcy9tZW51LXJvb3QtaXRlbS50eXBlJztcbmltcG9ydCB7IENvZGVzLCBPQXBwTGF5b3V0TW9kZSwgT1NpZGVuYXZNb2RlIH0gZnJvbSAnLi4vLi4vdXRpbC9jb2Rlcyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB7IE9BcHBTaWRlbmF2QmFzZSB9IGZyb20gJy4vby1hcHAtc2lkZW5hdi1iYXNlLmNsYXNzJztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfSU5QVVRTX09fQVBQX1NJREVOQVYgPSBbXG4gICdvcGVuZWQnLFxuICAnc2hvd1VzZXJJbmZvOiBzaG93LXVzZXItaW5mbycsXG4gICdzaG93VG9nZ2xlQnV0dG9uOiBzaG93LXRvZ2dsZS1idXR0b24nLFxuICAnb3BlbmVkU2lkZW5hdkltZzogb3BlbmVkLXNpZGVuYXYtaW1hZ2UnLFxuICAnY2xvc2VkU2lkZW5hdkltZzogY2xvc2VkLXNpZGVuYXYtaW1hZ2UnLFxuICAnbGF5b3V0TW9kZTogbGF5b3V0LW1vZGUnLFxuICAnc2lkZW5hdk1vZGU6IHNpZGVuYXYtbW9kZScsXG4gICdzdG9yZVN0YXRlOiBzdG9yZS1zdGF0ZSdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19BUFBfU0lERU5BViA9IFtcbiAgJ29uU2lkZW5hdk9wZW5lZENoYW5nZScsXG4gICdvblNpZGVuYXZPcGVuZWRTdGFydCcsXG4gICdvblNpZGVuYXZDbG9zZWRTdGFydCcsXG4gICdvblNpZGVuYXZUb2dnbGUnLFxuICAnYWZ0ZXJTaWRlbmF2VG9nZ2xlJ1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby1hcHAtc2lkZW5hdicsXG4gIGlucHV0czogREVGQVVMVF9JTlBVVFNfT19BUFBfU0lERU5BVixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fQVBQX1NJREVOQVYsXG4gIHRlbXBsYXRlVXJsOiAnLi9vLWFwcC1zaWRlbmF2LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby1hcHAtc2lkZW5hdi5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vLWFwcC1zaWRlbmF2XSc6ICd0cnVlJ1xuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IE9BcHBTaWRlbmF2QmFzZSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT0FwcFNpZGVuYXZDb21wb25lbnQpIH1cbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgT0FwcFNpZGVuYXZDb21wb25lbnQgZXh0ZW5kcyBPQXBwU2lkZW5hdkNvbXBvbmVudFN0YXRlU2VydmljZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcblxuICBAVmlld0NoaWxkKE1hdFNpZGVuYXYpXG4gIHNpZGVuYXY6IE1hdFNpZGVuYXY7XG5cbiAgcHJvdGVjdGVkIHJvdXRlclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBhcHBNZW51U2VydmljZTogQXBwTWVudVNlcnZpY2U7XG4gIG1lbnVSb290QXJyYXk6IE1lbnVSb290SXRlbVtdID0gW107XG4gIHByb3RlY3RlZCBfbGF5b3V0TW9kZTogT0FwcExheW91dE1vZGUgPSBDb2Rlcy5BUFBfTEFZT1VUX01PREVfREVTS1RPUDtcbiAgcHJvdGVjdGVkIF9zaWRlbmF2TW9kZTogT1NpZGVuYXZNb2RlO1xuICBAQm9vbGVhbklucHV0Q29udmVydGVyKClcbiAgcHJvdGVjdGVkIG9wZW5lZDogYm9vbGVhbiA9IHRydWU7XG4gIF9zaG93VXNlckluZm86IGJvb2xlYW4gPSB0cnVlO1xuICBfc2hvd1RvZ2dsZUJ1dHRvbjogYm9vbGVhbiA9IHRydWU7XG4gIG9wZW5lZFNpZGVuYXZJbWc6IHN0cmluZztcbiAgY2xvc2VkU2lkZW5hdkltZzogc3RyaW5nO1xuXG4gIG9uU2lkZW5hdk9wZW5lZENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBvblNpZGVuYXZPcGVuZWRTdGFydDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBvblNpZGVuYXZDbG9zZWRTdGFydDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBvblNpZGVuYXZUb2dnbGU6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgYWZ0ZXJTaWRlbmF2VG9nZ2xlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIHByb3RlY3RlZCBvVXNlckluZm9TZXJ2aWNlOiBPVXNlckluZm9TZXJ2aWNlO1xuICBwcm90ZWN0ZWQgdXNlckluZm9TdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJvdGVjdGVkIHBlcm1pc3Npb25TdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJvdGVjdGVkIHVzZXJJbmZvOiBVc2VySW5mbztcblxuICBwcm90ZWN0ZWQgbWVkaWFXYXRjaDogU3Vic2NyaXB0aW9uO1xuICBwcm90ZWN0ZWQgbWFudWFsbHlDbG9zZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgb25Sb3V0ZUNoYW5nZVN0b3JhZ2VTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgc3RvcmVTdGF0ZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJvdGVjdGVkIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgIHByb3RlY3RlZCBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJvdGVjdGVkIG1lZGlhOiBNZWRpYU9ic2VydmVyXG4gICkge1xuICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB0aGlzLmFwcE1lbnVTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoQXBwTWVudVNlcnZpY2UpO1xuICAgIHRoaXMubWVudVJvb3RBcnJheSA9IHRoaXMuYXBwTWVudVNlcnZpY2UuZ2V0TWVudVJvb3RzKCk7XG4gICAgdGhpcy5wZXJtaXNzaW9uU3Vic2NyaXB0aW9uID0gdGhpcy5hcHBNZW51U2VydmljZS5vblBlcm1pc3Npb25NZW51Q2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZWZyZXNoTWVudVJvb3RzKCkpO1xuICAgIHRoaXMub1VzZXJJbmZvU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KE9Vc2VySW5mb1NlcnZpY2UpO1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIHRoaXMubWVkaWFXYXRjaCA9IHRoaXMubWVkaWEuYXNPYnNlcnZhYmxlKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmIChzZWxmLmlzU2NyZWVuU21hbGwoKSAmJiBzZWxmLnNpZGVuYXYpIHtcbiAgICAgICAgc2VsZi5zaWRlbmF2LmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5yZWdpc3RlckxvY2FsU3RvcmFnZVNlcnZpY2VSb3V0ZUNoYW5nZSgpO1xuICB9XG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pc1NjcmVlblNtYWxsKCkpIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2LmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmluaXRpYWxpemUodGhpcyk7XG4gICAgdGhpcy5yZXN0b3JlTWVudUdyb3VwU3RhdGUoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5zaG93VXNlckluZm8gJiYgdGhpcy5zaG93VG9nZ2xlQnV0dG9uKSB7XG4gICAgICB0aGlzLnVzZXJJbmZvID0gdGhpcy5vVXNlckluZm9TZXJ2aWNlLmdldFVzZXJJbmZvKCk7XG4gICAgICB0aGlzLnVzZXJJbmZvU3Vic2NyaXB0aW9uID0gdGhpcy5vVXNlckluZm9TZXJ2aWNlLmdldFVzZXJJbmZvT2JzZXJ2YWJsZSgpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICB0aGlzLnVzZXJJbmZvID0gcmVzO1xuICAgICAgICB0aGlzLnJlZnJlc2hNZW51SXRlbVVzZXJJbmZvKCk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5yZWZyZXNoTWVudUl0ZW1Vc2VySW5mbygpO1xuICB9XG5cbiAgZ2V0RGF0YVRvU3RvcmUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZTtcblxuICB9XG5cbiAgcmVzdG9yZU1lbnVHcm91cFN0YXRlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UgJiYgdGhpcy5zdG9yZVN0YXRlKSB7XG4gICAgICBsZXQgbWVudVN0YXRlOiB7IGlkOiBzdHJpbmcsIG9wZW5lZDogYm9vbGVhbiB9W10gPSB0aGlzLnN0YXRlLm1lbnUgPz8gW107XG5cbiAgICAgIHRoaXMubWVudVJvb3RBcnJheS5mb3JFYWNoKChncm91cDogTWVudUdyb3VwKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhdmVkU3RhdGUgPSBtZW51U3RhdGUuZmluZChtZW51T3B0aW9uID0+IG1lbnVPcHRpb24uaWQgPT09IGdyb3VwLmlkKTtcbiAgICAgICAgaWYgKHNhdmVkU3RhdGUpIHtcbiAgICAgICAgICBncm91cC5vcGVuZWQgPSBzYXZlZFN0YXRlLm9wZW5lZDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0Q29tcG9uZW50S2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdPQXBwU2lkZW5hdkNvbXBvbmVudCc7XG4gIH1cblxuICBnZXRSb3V0ZUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6YmVmb3JldW5sb2FkJywgW10pXG4gIGJlZm9yZXVubG9hZEhhbmRsZXIoKSB7XG4gICAgdGhpcy51cGRhdGVTdGF0ZVN0b3JhZ2UoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWdpc3RlckxvY2FsU3RvcmFnZVNlcnZpY2VSb3V0ZUNoYW5nZSgpIHtcbiAgICBpZiAodGhpcy5zdG9yZVN0YXRlKSB7XG4gICAgICB0aGlzLm9uUm91dGVDaGFuZ2VTdG9yYWdlU3Vic2NyaXB0aW9uID0gdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlLm9uUm91dGVDaGFuZ2Uuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlU3RhdGVTdG9yYWdlKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdXBkYXRlU3RhdGVTdG9yYWdlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UgJiYgdGhpcy5zdG9yZVN0YXRlKSB7XG4gICAgICB0aGlzLnN0b3JlTWVudSgpO1xuICAgIH1cbiAgfVxuXG4gIHJlZnJlc2hNZW51Um9vdHMoKTogdm9pZCB7XG4gICAgdGhpcy5tZW51Um9vdEFycmF5ID0gWy4uLnRoaXMuYXBwTWVudVNlcnZpY2UuZ2V0TWVudVJvb3RzKCldO1xuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFtdKVxuICBvblJlc2l6ZSgpIHtcbiAgICBpZiAoIXRoaXMubWFudWFsbHlDbG9zZWQgJiYgIXRoaXMuaXNTY3JlZW5TbWFsbCgpICYmICF0aGlzLmlzTW9iaWxlTW9kZSgpKSB7XG4gICAgICB0aGlzLnNpZGVuYXYub3BlbigpO1xuICAgIH1cbiAgfVxuXG5cbiAgZ2V0IGxheW91dE1vZGUoKTogT0FwcExheW91dE1vZGUge1xuICAgIHJldHVybiB0aGlzLl9sYXlvdXRNb2RlO1xuICB9XG5cbiAgc2V0IGxheW91dE1vZGUodmFsOiBPQXBwTGF5b3V0TW9kZSkge1xuICAgIGNvbnN0IG0gPSBDb2Rlcy5PQXBwTGF5b3V0TW9kZXMuZmluZChlID0+IGUgPT09IHZhbCk7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKG0pKSB7XG4gICAgICB0aGlzLl9sYXlvdXRNb2RlID0gbTtcbiAgICB9XG4gIH1cblxuICBnZXQgc2lkZW5hdk1vZGUoKTogT1NpZGVuYXZNb2RlIHtcbiAgICByZXR1cm4gdGhpcy5fc2lkZW5hdk1vZGU7XG4gIH1cblxuICBzZXQgc2lkZW5hdk1vZGUodmFsOiBPU2lkZW5hdk1vZGUpIHtcbiAgICBjb25zdCBtID0gQ29kZXMuT1NpZGVuYXZNb2Rlcy5maW5kKGUgPT4gZSA9PT0gdmFsKTtcbiAgICBpZiAoVXRpbC5pc0RlZmluZWQobSkpIHtcbiAgICAgIHRoaXMuX3NpZGVuYXZNb2RlID0gbTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVmcmVzaE1lbnVJdGVtVXNlckluZm8oKSB7XG4gICAgaWYgKHRoaXMuc2hvd1VzZXJJbmZvICYmIHRoaXMudXNlckluZm8gJiYgdGhpcy5fc2hvd1RvZ2dsZUJ1dHRvbikge1xuICAgICAgY29uc3QgZmlyc3RSb290ID0gdGhpcy5tZW51Um9vdEFycmF5WzBdO1xuICAgICAgY29uc3QgYWxyZWFkeUV4aXN0c1VzZXJJbmZvID0gZmlyc3RSb290ID8gZmlyc3RSb290LmlkID09PSAndXNlci1pbmZvJyA6IGZhbHNlO1xuICAgICAgaWYgKGFscmVhZHlFeGlzdHNVc2VySW5mbykge1xuICAgICAgICBjb25zdCB1c2VySW5mb0l0ZW06IE1lbnVJdGVtVXNlckluZm8gPSAodGhpcy5tZW51Um9vdEFycmF5WzBdIGFzIE1lbnVHcm91cCkuaXRlbXNbMF0gYXMgTWVudUl0ZW1Vc2VySW5mbztcbiAgICAgICAgdXNlckluZm9JdGVtLmlkID0gdGhpcy51c2VySW5mby51c2VybmFtZTtcbiAgICAgICAgdXNlckluZm9JdGVtLm5hbWUgPSB0aGlzLnVzZXJJbmZvLnVzZXJuYW1lO1xuICAgICAgICB1c2VySW5mb0l0ZW0udXNlciA9IHRoaXMudXNlckluZm8udXNlcm5hbWU7XG4gICAgICAgIHVzZXJJbmZvSXRlbS5hdmF0YXIgPSB0aGlzLnVzZXJJbmZvLmF2YXRhcjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHVzZXJJbmZvSXRlbTogTWVudUl0ZW1Vc2VySW5mbyA9IHtcbiAgICAgICAgICBpZDogdGhpcy51c2VySW5mby51c2VybmFtZSxcbiAgICAgICAgICBuYW1lOiB0aGlzLnVzZXJJbmZvLnVzZXJuYW1lLFxuICAgICAgICAgIHVzZXI6IHRoaXMudXNlckluZm8udXNlcm5hbWUsXG4gICAgICAgICAgYXZhdGFyOiB0aGlzLnVzZXJJbmZvLmF2YXRhclxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBtZW51R3JvdXBVc2VySW5mbzogTWVudUdyb3VwID0ge1xuICAgICAgICAgIGlkOiAndXNlci1pbmZvJyxcbiAgICAgICAgICBuYW1lOiAnQVBQX0xBWU9VVC5VU0VSX1BST0ZJTEUnLFxuICAgICAgICAgIGl0ZW1zOiBbdXNlckluZm9JdGVtXSxcbiAgICAgICAgICBvcGVuZWQ6IHRydWUsXG4gICAgICAgICAgaWNvbjogJ3BlcnNvbl9waW4nXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMubWVudVJvb3RBcnJheS51bnNoaWZ0KG1lbnVHcm91cFVzZXJJbmZvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudXNlckluZm9TdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMudXNlckluZm9TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wZXJtaXNzaW9uU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnBlcm1pc3Npb25TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBpc1NjcmVlblNtYWxsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5tYW51YWxseUNsb3NlZCAmJiB0aGlzLm1lZGlhLmlzQWN0aXZlKCdsdC1zbScpO1xuICB9XG5cbiAgaXNNb2JpbGVNb2RlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9sYXlvdXRNb2RlID09PSBDb2Rlcy5BUFBfTEFZT1VUX01PREVfTU9CSUxFO1xuICB9XG5cbiAgaXNEZXNrdG9wTW9kZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0TW9kZSA9PT0gQ29kZXMuQVBQX0xBWU9VVF9NT0RFX0RFU0tUT1A7XG4gIH1cblxuICBpc1NpZGVuYXZPcGVuZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3BlbmVkICYmICF0aGlzLmlzTW9iaWxlTW9kZSgpICYmICF0aGlzLmlzU2NyZWVuU21hbGwoKTtcbiAgfVxuXG4gIHRvZ2dsZVNpZGVuYXYoKSB7XG4gICAgY29uc3QgcHJvbWlzZSA9IHRoaXMuc2lkZW5hdi5vcGVuZWQgPyB0aGlzLnNpZGVuYXYuY2xvc2UoKSA6IHRoaXMuc2lkZW5hdi5vcGVuKCk7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgcHJvbWlzZS50aGVuKCgpID0+IHtcbiAgICAgIHNlbGYuYWZ0ZXJTaWRlbmF2VG9nZ2xlLmVtaXQoc2VsZi5zaWRlbmF2Lm9wZW5lZCk7XG4gICAgfSk7XG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgdGhpcy5vcGVuZWQgPSB0aGlzLnNpZGVuYXYub3BlbmVkO1xuICAgIHRoaXMubWFudWFsbHlDbG9zZWQgPSAhdGhpcy5vcGVuZWQ7XG4gICAgdGhpcy5vblNpZGVuYXZUb2dnbGUuZW1pdCh0aGlzLnNpZGVuYXYub3BlbmVkKTtcbiAgfVxuXG4gIGdldCBzaG93VXNlckluZm8oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Nob3dVc2VySW5mbztcbiAgfVxuXG4gIHNldCBzaG93VXNlckluZm8oYXJnOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2hvd1VzZXJJbmZvID0gYXJnO1xuICB9XG5cbiAgZ2V0IHNob3dUb2dnbGVCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Nob3dUb2dnbGVCdXR0b247XG4gIH1cblxuICBzZXQgc2hvd1RvZ2dsZUJ1dHRvbihhcmc6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zaG93VG9nZ2xlQnV0dG9uID0gYXJnO1xuICB9XG5cbiAgb25NZW51SXRlbUNsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzTW9iaWxlTW9kZSgpKSB7XG4gICAgICB0aGlzLnNpZGVuYXYuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBzaWRlbmF2Q2xvc2VkU3RhcnQoKSB7XG4gICAgdGhpcy5vblNpZGVuYXZDbG9zZWRTdGFydC5lbWl0KCk7XG4gIH1cblxuICBzaWRlbmF2T3BlbmVkU3RhcnQoKSB7XG4gICAgdGhpcy5vblNpZGVuYXZPcGVuZWRTdGFydC5lbWl0KCk7XG4gIH1cblxuICBzaWRlbmF2T3BlbmVkQ2hhbmdlKCkge1xuICAgIHRoaXMub25TaWRlbmF2T3BlbmVkQ2hhbmdlLmVtaXQoKTtcbiAgfVxufVxuXG4iLCI8bWF0LXNpZGVuYXYtY29udGFpbmVyIGNsYXNzPVwiby1hcHAtc2lkZW5hdi1jb250YWluZXJcIiBbY2xhc3Mub3BlbmVkXT1cInNpZGVuYXYub3BlbmVkXCJcbiAgW2NsYXNzLm8tYXBwLXNpZGVuYXYtbW9kZS1kZXNrdG9wXT1cIihsYXlvdXRNb2RlIHx8ICdkZXNrdG9wJykgPT09ICdkZXNrdG9wJ1wiXG4gIFtjbGFzcy5vLWFwcC1zaWRlbmF2LW1vZGUtbW9iaWxlXT1cIihsYXlvdXRNb2RlIHx8ICdkZXNrdG9wJykgIT09ICdkZXNrdG9wJ1wiPlxuXG4gIDxtYXQtc2lkZW5hdiAjc2lkZW5hdiBjbGFzcz1cIm8tYXBwLXNpZGVuYXYtc2lkZW5hdiBvLXNjcm9sbFwiIFtvcGVuZWRdPVwiaXNTaWRlbmF2T3BlbmVkKClcIlxuICAgIFttb2RlXT1cIihzaWRlbmF2TW9kZSB8fCAoKGxheW91dE1vZGUgfHwgJ2Rlc2t0b3AnKSA9PT0gJ2Rlc2t0b3AnID8gJ3NpZGUnIDogJ292ZXInKSlcIiBbY2xhc3MubWF0LWRyYXdlci1vcGVuZWRdPVwic2lkZW5hdi5vcGVuZWRcIlxuICAgIFtjbGFzcy5tYXQtZHJhd2VyLWNsb3NlZF09XCIhc2lkZW5hdi5vcGVuZWRcIiBmeExheW91dEFsaWduPVwic3RhcnQgc3RyZXRjaFwiIChvcGVuZWRDaGFuZ2UpPVwic2lkZW5hdk9wZW5lZENoYW5nZSgpXCJcbiAgICAoY2xvc2VkU3RhcnQpPVwic2lkZW5hdkNsb3NlZFN0YXJ0KClcIiAob3BlbmVkU3RhcnQpPVwic2lkZW5hdk9wZW5lZFN0YXJ0KClcIj5cbiAgICA8ZGl2IGZ4RmxleCBmeExheW91dD1cImNvbHVtblwiPlxuICAgICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJlbmQgY2VudGVyXCIgY2xhc3M9XCJzaWRlbmF2LXRvZ2dsZS1jb250YWluZXJcIiAqbmdJZj1cImlzRGVza3RvcE1vZGUoKVwiPlxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJzaWRlbmF2LXRvZ2dsZVwiIChjbGljayk9XCJ0b2dnbGVTaWRlbmF2KClcIiBzdmdJY29uPVwib250aW1pemU6bWVudVwiPm1lbnU8L21hdC1pY29uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxvLWFwcC1zaWRlbmF2LWltYWdlIFtvcGVuZWQtc3JjXT1cIm9wZW5lZFNpZGVuYXZJbWdcIiBbY2xvc2VkLXNyY109XCJjbG9zZWRTaWRlbmF2SW1nXCI+IDwvby1hcHAtc2lkZW5hdi1pbWFnZT5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIm8tYXBwLWxheW91dC1zaWRlbmF2LXByb2plY3Rpb24tc3RhcnRcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwibmF2TWVudVwiPlxuICAgICAgICA8bmF2ICpuZ0Zvcj1cImxldCBtZW51Um9vdEl0ZW0gb2YgbWVudVJvb3RBcnJheVwiPlxuXG4gICAgICAgICAgPHVsICpuZ0lmPVwiYXBwTWVudVNlcnZpY2UuZ2V0TWVudUl0ZW1UeXBlKG1lbnVSb290SXRlbSkgIT09ICdncm91cCcgJiYgYXBwTWVudVNlcnZpY2UuaXNWaXNpYmxlKG1lbnVSb290SXRlbSlcIj5cbiAgICAgICAgICAgIDxvLWFwcC1zaWRlbmF2LW1lbnUtaXRlbSBbbWVudS1pdGVtXT1cIm1lbnVSb290SXRlbVwiIFttZW51LWl0ZW0tdHlwZV09XCJhcHBNZW51U2VydmljZS5nZXRNZW51SXRlbVR5cGUobWVudVJvb3RJdGVtKVwiXG4gICAgICAgICAgICAgIFtzaWRlbmF2LW9wZW5lZF09XCJzaWRlbmF2Lm9wZW5lZFwiIChvbkNsaWNrKT1cIm9uTWVudUl0ZW1DbGljaygpXCI+XG4gICAgICAgICAgICA8L28tYXBwLXNpZGVuYXYtbWVudS1pdGVtPlxuICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICA8by1hcHAtc2lkZW5hdi1tZW51LWdyb3VwIFttZW51LWdyb3VwXT1cIm1lbnVSb290SXRlbVwiIFtzaWRlbmF2LW9wZW5lZF09XCJzaWRlbmF2Lm9wZW5lZFwiIGxldmVsPVwiMVwiXG4gICAgICAgICAgICAqbmdJZj1cImFwcE1lbnVTZXJ2aWNlLmdldE1lbnVJdGVtVHlwZShtZW51Um9vdEl0ZW0pID09PSAnZ3JvdXAnICYmIGFwcE1lbnVTZXJ2aWNlLmlzVmlzaWJsZShtZW51Um9vdEl0ZW0pXCJcbiAgICAgICAgICAgIChvbkl0ZW1DbGljayk9XCJvbk1lbnVJdGVtQ2xpY2soKVwiPlxuICAgICAgICAgIDwvby1hcHAtc2lkZW5hdi1tZW51LWdyb3VwPlxuXG4gICAgICAgIDwvbmF2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXNpZGVuYXYtcHJvamVjdGlvbi1lbmRcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiby1hcHAtbGF5b3V0LXNpZGVuYXYtcHJvamVjdGlvbi1lbmRcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtc2lkZW5hdj5cblxuICA8bWF0LXNpZGVuYXYtY29udGVudCBjbGFzcz1cIm8tYXBwLXNpZGVuYXYtY29udGVudFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxuPC9tYXQtc2lkZW5hdi1jb250YWluZXI+XG4iXX0=
|
|
270
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1hcHAtc2lkZW5hdi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9hcHAtc2lkZW5hdi9vLWFwcC1zaWRlbmF2LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1zaWRlbmF2L28tYXBwLXNpZGVuYXYuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osUUFBUSxFQUdSLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBWSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBRTNHLE9BQU8sRUFBRSxLQUFLLEVBQWdDLE1BQU0sa0JBQWtCLENBQUM7QUFDdkUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7Ozs7QUFFN0QsTUFB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LFlBQVk7dUJBQUMsZUFBZSxFQUFFLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdG9yLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lZGlhT2JzZXJ2ZXIgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEJvb2xlYW5JbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IE1lbnVHcm91cCwgTWVudUl0ZW1Vc2VySW5mbyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYXBwLW1lbnUuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFwcE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXBwLW1lbnUuc2VydmljZSc7XG5pbXBvcnQgeyBPVXNlckluZm9TZXJ2aWNlLCBVc2VySW5mbyB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL28tdXNlci1pbmZvLnNlcnZpY2UnO1xuaW1wb3J0IHsgT0FwcFNpZGVuYXZDb21wb25lbnRTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zdGF0ZS9vLWFwcC1tZW51LWNvbXBvbmVudC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1lbnVSb290SXRlbSB9IGZyb20gJy4uLy4uL3R5cGVzL21lbnUtcm9vdC1pdGVtLnR5cGUnO1xuaW1wb3J0IHsgQ29kZXMsIE9BcHBMYXlvdXRNb2RlLCBPU2lkZW5hdk1vZGUgfSBmcm9tICcuLi8uLi91dGlsL2NvZGVzJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi8uLi91dGlsL3V0aWwnO1xuaW1wb3J0IHsgT0FwcFNpZGVuYXZCYXNlIH0gZnJvbSAnLi9vLWFwcC1zaWRlbmF2LWJhc2UuY2xhc3MnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JTlBVVFNfT19BUFBfU0lERU5BViA9IFtcbiAgJ29wZW5lZCcsXG4gICdzaG93VXNlckluZm86IHNob3ctdXNlci1pbmZvJyxcbiAgJ3Nob3dUb2dnbGVCdXR0b246IHNob3ctdG9nZ2xlLWJ1dHRvbicsXG4gICdvcGVuZWRTaWRlbmF2SW1nOiBvcGVuZWQtc2lkZW5hdi1pbWFnZScsXG4gICdjbG9zZWRTaWRlbmF2SW1nOiBjbG9zZWQtc2lkZW5hdi1pbWFnZScsXG4gICdsYXlvdXRNb2RlOiBsYXlvdXQtbW9kZScsXG4gICdzaWRlbmF2TW9kZTogc2lkZW5hdi1tb2RlJyxcbiAgJ3N0b3JlU3RhdGU6IHN0b3JlLXN0YXRlJyxcbiAgJ3Nob3dFbGxpcHNpc01lbnU6IHNob3ctZWxsaXBzaXMtbWVudSdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19BUFBfU0lERU5BViA9IFtcbiAgJ29uU2lkZW5hdk9wZW5lZENoYW5nZScsXG4gICdvblNpZGVuYXZPcGVuZWRTdGFydCcsXG4gICdvblNpZGVuYXZDbG9zZWRTdGFydCcsXG4gICdvblNpZGVuYXZUb2dnbGUnLFxuICAnYWZ0ZXJTaWRlbmF2VG9nZ2xlJ1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby1hcHAtc2lkZW5hdicsXG4gIGlucHV0czogREVGQVVMVF9JTlBVVFNfT19BUFBfU0lERU5BVixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fQVBQX1NJREVOQVYsXG4gIHRlbXBsYXRlVXJsOiAnLi9vLWFwcC1zaWRlbmF2LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby1hcHAtc2lkZW5hdi5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vLWFwcC1zaWRlbmF2XSc6ICd0cnVlJ1xuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IE9BcHBTaWRlbmF2QmFzZSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT0FwcFNpZGVuYXZDb21wb25lbnQpIH1cbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgT0FwcFNpZGVuYXZDb21wb25lbnQgZXh0ZW5kcyBPQXBwU2lkZW5hdkNvbXBvbmVudFN0YXRlU2VydmljZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcblxuICBAVmlld0NoaWxkKE1hdFNpZGVuYXYpXG4gIHNpZGVuYXY6IE1hdFNpZGVuYXY7XG5cbiAgcHJvdGVjdGVkIHJvdXRlclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBhcHBNZW51U2VydmljZTogQXBwTWVudVNlcnZpY2U7XG4gIG1lbnVSb290QXJyYXk6IE1lbnVSb290SXRlbVtdID0gW107XG4gIHByb3RlY3RlZCBfbGF5b3V0TW9kZTogT0FwcExheW91dE1vZGUgPSBDb2Rlcy5BUFBfTEFZT1VUX01PREVfREVTS1RPUDtcbiAgcHJvdGVjdGVkIF9zaWRlbmF2TW9kZTogT1NpZGVuYXZNb2RlO1xuICBAQm9vbGVhbklucHV0Q29udmVydGVyKClcbiAgcHJvdGVjdGVkIG9wZW5lZDogYm9vbGVhbiA9IHRydWU7XG5cbiAgc2hvd0VsbGlwc2lzTWVudTogYm9vbGVhbiA9IGZhbHNlO1xuICBfc2hvd1VzZXJJbmZvOiBib29sZWFuID0gdHJ1ZTtcbiAgX3Nob3dUb2dnbGVCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xuICBvcGVuZWRTaWRlbmF2SW1nOiBzdHJpbmc7XG4gIGNsb3NlZFNpZGVuYXZJbWc6IHN0cmluZztcblxuICBvblNpZGVuYXZPcGVuZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgb25TaWRlbmF2T3BlbmVkU3RhcnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgb25TaWRlbmF2Q2xvc2VkU3RhcnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgb25TaWRlbmF2VG9nZ2xlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIGFmdGVyU2lkZW5hdlRvZ2dsZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBwcm90ZWN0ZWQgb1VzZXJJbmZvU2VydmljZTogT1VzZXJJbmZvU2VydmljZTtcbiAgcHJvdGVjdGVkIHVzZXJJbmZvU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByb3RlY3RlZCBwZXJtaXNzaW9uU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByb3RlY3RlZCB1c2VySW5mbzogVXNlckluZm87XG5cbiAgcHJvdGVjdGVkIG1lZGlhV2F0Y2g6IFN1YnNjcmlwdGlvbjtcbiAgcHJvdGVjdGVkIG1hbnVhbGx5Q2xvc2VkOiBib29sZWFuID0gZmFsc2U7XG4gIG9uUm91dGVDaGFuZ2VTdG9yYWdlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHN0b3JlU3RhdGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxuICAgIHByb3RlY3RlZCBlbFJlZjogRWxlbWVudFJlZixcbiAgICBwcm90ZWN0ZWQgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCBtZWRpYTogTWVkaWFPYnNlcnZlclxuICApIHtcbiAgICBzdXBlcihpbmplY3Rvcik7XG4gICAgdGhpcy5hcHBNZW51U2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KEFwcE1lbnVTZXJ2aWNlKTtcbiAgICB0aGlzLm1lbnVSb290QXJyYXkgPSB0aGlzLmFwcE1lbnVTZXJ2aWNlLmdldE1lbnVSb290cygpO1xuICAgIHRoaXMucGVybWlzc2lvblN1YnNjcmlwdGlvbiA9IHRoaXMuYXBwTWVudVNlcnZpY2Uub25QZXJtaXNzaW9uTWVudUNoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVmcmVzaE1lbnVSb290cygpKTtcbiAgICB0aGlzLm9Vc2VySW5mb1NlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChPVXNlckluZm9TZXJ2aWNlKTtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICB0aGlzLm1lZGlhV2F0Y2ggPSB0aGlzLm1lZGlhLmFzT2JzZXJ2YWJsZSgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAoc2VsZi5pc1NjcmVlblNtYWxsKCkgJiYgc2VsZi5zaWRlbmF2KSB7XG4gICAgICAgIHNlbGYuc2lkZW5hdi5jbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMucmVnaXN0ZXJMb2NhbFN0b3JhZ2VTZXJ2aWNlUm91dGVDaGFuZ2UoKTtcbiAgfVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbiA9IHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuaXNTY3JlZW5TbWFsbCgpKSB7XG4gICAgICAgIHRoaXMuc2lkZW5hdi5jbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5pbml0aWFsaXplKHRoaXMpO1xuICAgIHRoaXMucmVzdG9yZU1lbnVHcm91cFN0YXRlKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuc2hvd1VzZXJJbmZvICYmIHRoaXMuc2hvd1RvZ2dsZUJ1dHRvbikge1xuICAgICAgdGhpcy51c2VySW5mbyA9IHRoaXMub1VzZXJJbmZvU2VydmljZS5nZXRVc2VySW5mbygpO1xuICAgICAgdGhpcy51c2VySW5mb1N1YnNjcmlwdGlvbiA9IHRoaXMub1VzZXJJbmZvU2VydmljZS5nZXRVc2VySW5mb09ic2VydmFibGUoKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgdGhpcy51c2VySW5mbyA9IHJlcztcbiAgICAgICAgdGhpcy5yZWZyZXNoTWVudUl0ZW1Vc2VySW5mbygpO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMucmVmcmVzaE1lbnVJdGVtVXNlckluZm8oKTtcbiAgfVxuXG4gIGdldERhdGFUb1N0b3JlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGU7XG5cbiAgfVxuXG4gIHJlc3RvcmVNZW51R3JvdXBTdGF0ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlICYmIHRoaXMuc3RvcmVTdGF0ZSkge1xuICAgICAgbGV0IG1lbnVTdGF0ZTogeyBpZDogc3RyaW5nLCBvcGVuZWQ6IGJvb2xlYW4gfVtdID0gdGhpcy5zdGF0ZS5tZW51ID8/IFtdO1xuXG4gICAgICB0aGlzLm1lbnVSb290QXJyYXkuZm9yRWFjaCgoZ3JvdXA6IE1lbnVHcm91cCkgPT4ge1xuICAgICAgICBjb25zdCBzYXZlZFN0YXRlID0gbWVudVN0YXRlLmZpbmQobWVudU9wdGlvbiA9PiBtZW51T3B0aW9uLmlkID09PSBncm91cC5pZCk7XG4gICAgICAgIGlmIChzYXZlZFN0YXRlKSB7XG4gICAgICAgICAgZ3JvdXAub3BlbmVkID0gc2F2ZWRTdGF0ZS5vcGVuZWQ7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGdldENvbXBvbmVudEtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnT0FwcFNpZGVuYXZDb21wb25lbnQnO1xuICB9XG5cbiAgZ2V0Um91dGVLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmJlZm9yZXVubG9hZCcsIFtdKVxuICBiZWZvcmV1bmxvYWRIYW5kbGVyKCkge1xuICAgIHRoaXMudXBkYXRlU3RhdGVTdG9yYWdlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVnaXN0ZXJMb2NhbFN0b3JhZ2VTZXJ2aWNlUm91dGVDaGFuZ2UoKSB7XG4gICAgaWYgKHRoaXMuc3RvcmVTdGF0ZSkge1xuICAgICAgdGhpcy5vblJvdXRlQ2hhbmdlU3RvcmFnZVN1YnNjcmlwdGlvbiA9IHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5vblJvdXRlQ2hhbmdlLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZVN0YXRlU3RvcmFnZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZVN0YXRlU3RvcmFnZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlICYmIHRoaXMuc3RvcmVTdGF0ZSkge1xuICAgICAgdGhpcy5zdG9yZU1lbnUoKTtcbiAgICB9XG4gIH1cblxuICByZWZyZXNoTWVudVJvb3RzKCk6IHZvaWQge1xuICAgIHRoaXMubWVudVJvb3RBcnJheSA9IFsuLi50aGlzLmFwcE1lbnVTZXJ2aWNlLmdldE1lbnVSb290cygpXTtcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbXSlcbiAgb25SZXNpemUoKSB7XG4gICAgaWYgKCF0aGlzLm1hbnVhbGx5Q2xvc2VkICYmICF0aGlzLmlzU2NyZWVuU21hbGwoKSAmJiAhdGhpcy5pc01vYmlsZU1vZGUoKSkge1xuICAgICAgdGhpcy5zaWRlbmF2Lm9wZW4oKTtcbiAgICB9XG4gIH1cblxuXG4gIGdldCBsYXlvdXRNb2RlKCk6IE9BcHBMYXlvdXRNb2RlIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0TW9kZTtcbiAgfVxuXG4gIHNldCBsYXlvdXRNb2RlKHZhbDogT0FwcExheW91dE1vZGUpIHtcbiAgICBjb25zdCBtID0gQ29kZXMuT0FwcExheW91dE1vZGVzLmZpbmQoZSA9PiBlID09PSB2YWwpO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZChtKSkge1xuICAgICAgdGhpcy5fbGF5b3V0TW9kZSA9IG07XG4gICAgfVxuICB9XG5cbiAgZ2V0IHNpZGVuYXZNb2RlKCk6IE9TaWRlbmF2TW9kZSB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZGVuYXZNb2RlO1xuICB9XG5cbiAgc2V0IHNpZGVuYXZNb2RlKHZhbDogT1NpZGVuYXZNb2RlKSB7XG4gICAgY29uc3QgbSA9IENvZGVzLk9TaWRlbmF2TW9kZXMuZmluZChlID0+IGUgPT09IHZhbCk7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKG0pKSB7XG4gICAgICB0aGlzLl9zaWRlbmF2TW9kZSA9IG07XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHJlZnJlc2hNZW51SXRlbVVzZXJJbmZvKCkge1xuICAgIGlmICh0aGlzLnNob3dVc2VySW5mbyAmJiB0aGlzLnVzZXJJbmZvICYmIHRoaXMuX3Nob3dUb2dnbGVCdXR0b24pIHtcbiAgICAgIGNvbnN0IGZpcnN0Um9vdCA9IHRoaXMubWVudVJvb3RBcnJheVswXTtcbiAgICAgIGNvbnN0IGFscmVhZHlFeGlzdHNVc2VySW5mbyA9IGZpcnN0Um9vdCA/IGZpcnN0Um9vdC5pZCA9PT0gJ3VzZXItaW5mbycgOiBmYWxzZTtcbiAgICAgIGlmIChhbHJlYWR5RXhpc3RzVXNlckluZm8pIHtcbiAgICAgICAgY29uc3QgdXNlckluZm9JdGVtOiBNZW51SXRlbVVzZXJJbmZvID0gKHRoaXMubWVudVJvb3RBcnJheVswXSBhcyBNZW51R3JvdXApLml0ZW1zWzBdIGFzIE1lbnVJdGVtVXNlckluZm87XG4gICAgICAgIHVzZXJJbmZvSXRlbS5pZCA9IHRoaXMudXNlckluZm8udXNlcm5hbWU7XG4gICAgICAgIHVzZXJJbmZvSXRlbS5uYW1lID0gdGhpcy51c2VySW5mby51c2VybmFtZTtcbiAgICAgICAgdXNlckluZm9JdGVtLnVzZXIgPSB0aGlzLnVzZXJJbmZvLnVzZXJuYW1lO1xuICAgICAgICB1c2VySW5mb0l0ZW0uYXZhdGFyID0gdGhpcy51c2VySW5mby5hdmF0YXI7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB1c2VySW5mb0l0ZW06IE1lbnVJdGVtVXNlckluZm8gPSB7XG4gICAgICAgICAgaWQ6IHRoaXMudXNlckluZm8udXNlcm5hbWUsXG4gICAgICAgICAgbmFtZTogdGhpcy51c2VySW5mby51c2VybmFtZSxcbiAgICAgICAgICB1c2VyOiB0aGlzLnVzZXJJbmZvLnVzZXJuYW1lLFxuICAgICAgICAgIGF2YXRhcjogdGhpcy51c2VySW5mby5hdmF0YXJcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgbWVudUdyb3VwVXNlckluZm86IE1lbnVHcm91cCA9IHtcbiAgICAgICAgICBpZDogJ3VzZXItaW5mbycsXG4gICAgICAgICAgbmFtZTogJ0FQUF9MQVlPVVQuVVNFUl9QUk9GSUxFJyxcbiAgICAgICAgICBpdGVtczogW3VzZXJJbmZvSXRlbV0sXG4gICAgICAgICAgb3BlbmVkOiB0cnVlLFxuICAgICAgICAgIGljb246ICdwZXJzb25fcGluJ1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLm1lbnVSb290QXJyYXkudW5zaGlmdChtZW51R3JvdXBVc2VySW5mbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMucm91dGVyU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnVzZXJJbmZvU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnVzZXJJbmZvU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucGVybWlzc2lvblN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5wZXJtaXNzaW9uU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgaXNTY3JlZW5TbWFsbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMubWFudWFsbHlDbG9zZWQgJiYgdGhpcy5tZWRpYS5pc0FjdGl2ZSgnbHQtc20nKTtcbiAgfVxuXG4gIGlzTW9iaWxlTW9kZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0TW9kZSA9PT0gQ29kZXMuQVBQX0xBWU9VVF9NT0RFX01PQklMRTtcbiAgfVxuXG4gIGlzRGVza3RvcE1vZGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2xheW91dE1vZGUgPT09IENvZGVzLkFQUF9MQVlPVVRfTU9ERV9ERVNLVE9QO1xuICB9XG5cbiAgaXNTaWRlbmF2T3BlbmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm9wZW5lZCAmJiAhdGhpcy5pc01vYmlsZU1vZGUoKSAmJiAhdGhpcy5pc1NjcmVlblNtYWxsKCk7XG4gIH1cblxuICB0b2dnbGVTaWRlbmF2KCkge1xuICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLnNpZGVuYXYub3BlbmVkID8gdGhpcy5zaWRlbmF2LmNsb3NlKCkgOiB0aGlzLnNpZGVuYXYub3BlbigpO1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIHByb21pc2UudGhlbigoKSA9PiB7XG4gICAgICBzZWxmLmFmdGVyU2lkZW5hdlRvZ2dsZS5lbWl0KHNlbGYuc2lkZW5hdi5vcGVuZWQpO1xuICAgIH0pO1xuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHRoaXMub3BlbmVkID0gdGhpcy5zaWRlbmF2Lm9wZW5lZDtcbiAgICB0aGlzLm1hbnVhbGx5Q2xvc2VkID0gIXRoaXMub3BlbmVkO1xuICAgIHRoaXMub25TaWRlbmF2VG9nZ2xlLmVtaXQodGhpcy5zaWRlbmF2Lm9wZW5lZCk7XG4gIH1cblxuICBnZXQgc2hvd1VzZXJJbmZvKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zaG93VXNlckluZm87XG4gIH1cblxuICBzZXQgc2hvd1VzZXJJbmZvKGFyZzogYm9vbGVhbikge1xuICAgIHRoaXMuX3Nob3dVc2VySW5mbyA9IGFyZztcbiAgfVxuXG4gIGdldCBzaG93VG9nZ2xlQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zaG93VG9nZ2xlQnV0dG9uO1xuICB9XG5cbiAgc2V0IHNob3dUb2dnbGVCdXR0b24oYXJnOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2hvd1RvZ2dsZUJ1dHRvbiA9IGFyZztcbiAgfVxuXG4gIG9uTWVudUl0ZW1DbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc01vYmlsZU1vZGUoKSkge1xuICAgICAgdGhpcy5zaWRlbmF2LmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgc2lkZW5hdkNsb3NlZFN0YXJ0KCkge1xuICAgIHRoaXMub25TaWRlbmF2Q2xvc2VkU3RhcnQuZW1pdCgpO1xuICB9XG5cbiAgc2lkZW5hdk9wZW5lZFN0YXJ0KCkge1xuICAgIHRoaXMub25TaWRlbmF2T3BlbmVkU3RhcnQuZW1pdCgpO1xuICB9XG5cbiAgc2lkZW5hdk9wZW5lZENoYW5nZSgpIHtcbiAgICB0aGlzLm9uU2lkZW5hdk9wZW5lZENoYW5nZS5lbWl0KCk7XG4gIH1cbn1cblxuIiwiPG1hdC1zaWRlbmF2LWNvbnRhaW5lciBjbGFzcz1cIm8tYXBwLXNpZGVuYXYtY29udGFpbmVyXCIgW2NsYXNzLm9wZW5lZF09XCJzaWRlbmF2Lm9wZW5lZFwiXG4gIFtjbGFzcy5vLWFwcC1zaWRlbmF2LW1vZGUtZGVza3RvcF09XCIobGF5b3V0TW9kZSB8fCAnZGVza3RvcCcpID09PSAnZGVza3RvcCdcIlxuICBbY2xhc3Muby1hcHAtc2lkZW5hdi1tb2RlLW1vYmlsZV09XCIobGF5b3V0TW9kZSB8fCAnZGVza3RvcCcpICE9PSAnZGVza3RvcCdcIj5cblxuICA8bWF0LXNpZGVuYXYgI3NpZGVuYXYgY2xhc3M9XCJvLWFwcC1zaWRlbmF2LXNpZGVuYXYgby1zY3JvbGxcIiBbb3BlbmVkXT1cImlzU2lkZW5hdk9wZW5lZCgpXCJcbiAgICBbbW9kZV09XCIoc2lkZW5hdk1vZGUgfHwgKChsYXlvdXRNb2RlIHx8ICdkZXNrdG9wJykgPT09ICdkZXNrdG9wJyA/ICdzaWRlJyA6ICdvdmVyJykpXCIgW2NsYXNzLm1hdC1kcmF3ZXItb3BlbmVkXT1cInNpZGVuYXYub3BlbmVkXCJcbiAgICBbY2xhc3MubWF0LWRyYXdlci1jbG9zZWRdPVwiIXNpZGVuYXYub3BlbmVkXCIgW2NsYXNzLmVsbGlwc2lzLW1lbnUtaXRlbXNdPVwic2hvd0VsbGlwc2lzTWVudVwiIChvcGVuZWRDaGFuZ2UpPVwic2lkZW5hdk9wZW5lZENoYW5nZSgpXCJcbiAgICAoY2xvc2VkU3RhcnQpPVwic2lkZW5hdkNsb3NlZFN0YXJ0KClcIiAob3BlbmVkU3RhcnQpPVwic2lkZW5hdk9wZW5lZFN0YXJ0KClcIj5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCIgY2xhc3M9XCJzaWRlbmF2LXdyYXBwZXJcIj5cbiAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiZW5kIGNlbnRlclwiIGNsYXNzPVwic2lkZW5hdi10b2dnbGUtY29udGFpbmVyXCIgKm5nSWY9XCJpc0Rlc2t0b3BNb2RlKClcIj5cbiAgICAgICAgPG1hdC1pY29uIGlkPVwic2lkZW5hdi1tZW51XCIgY2xhc3M9XCJzaWRlbmF2LXRvZ2dsZVwiIChjbGljayk9XCJ0b2dnbGVTaWRlbmF2KClcIiBzdmdJY29uPVwib250aW1pemU6bWVudVwiPm1lbnU8L21hdC1pY29uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxvLWFwcC1zaWRlbmF2LWltYWdlIFtvcGVuZWQtc3JjXT1cIm9wZW5lZFNpZGVuYXZJbWdcIiBbY2xvc2VkLXNyY109XCJjbG9zZWRTaWRlbmF2SW1nXCI+IDwvby1hcHAtc2lkZW5hdi1pbWFnZT5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIm8tYXBwLWxheW91dC1zaWRlbmF2LXByb2plY3Rpb24tc3RhcnRcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwibmF2TWVudVwiPlxuICAgICAgICA8bmF2ICpuZ0Zvcj1cImxldCBtZW51Um9vdEl0ZW0gb2YgbWVudVJvb3RBcnJheVwiPlxuXG4gICAgICAgICAgPHVsICpuZ0lmPVwiYXBwTWVudVNlcnZpY2UuZ2V0TWVudUl0ZW1UeXBlKG1lbnVSb290SXRlbSkgIT09ICdncm91cCcgJiYgYXBwTWVudVNlcnZpY2UuaXNWaXNpYmxlKG1lbnVSb290SXRlbSlcIj5cbiAgICAgICAgICAgIDxvLWFwcC1zaWRlbmF2LW1lbnUtaXRlbSBbbWVudS1pdGVtXT1cIm1lbnVSb290SXRlbVwiIFttZW51LWl0ZW0tdHlwZV09XCJhcHBNZW51U2VydmljZS5nZXRNZW51SXRlbVR5cGUobWVudVJvb3RJdGVtKVwiXG4gICAgICAgICAgICAgIFtzaWRlbmF2LW9wZW5lZF09XCJzaWRlbmF2Lm9wZW5lZFwiIChvbkNsaWNrKT1cIm9uTWVudUl0ZW1DbGljaygpXCI+XG4gICAgICAgICAgICA8L28tYXBwLXNpZGVuYXYtbWVudS1pdGVtPlxuICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICA8by1hcHAtc2lkZW5hdi1tZW51LWdyb3VwIFttZW51LWdyb3VwXT1cIm1lbnVSb290SXRlbVwiIFtzaWRlbmF2LW9wZW5lZF09XCJzaWRlbmF2Lm9wZW5lZFwiIGxldmVsPVwiMVwiXG4gICAgICAgICAgICAqbmdJZj1cImFwcE1lbnVTZXJ2aWNlLmdldE1lbnVJdGVtVHlwZShtZW51Um9vdEl0ZW0pID09PSAnZ3JvdXAnICYmIGFwcE1lbnVTZXJ2aWNlLmlzVmlzaWJsZShtZW51Um9vdEl0ZW0pXCJcbiAgICAgICAgICAgIChvbkl0ZW1DbGljayk9XCJvbk1lbnVJdGVtQ2xpY2soKVwiPlxuICAgICAgICAgIDwvby1hcHAtc2lkZW5hdi1tZW51LWdyb3VwPlxuXG4gICAgICAgIDwvbmF2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXNpZGVuYXYtcHJvamVjdGlvbi1lbmRcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiby1hcHAtbGF5b3V0LXNpZGVuYXYtcHJvamVjdGlvbi1lbmRcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXNpZGVuYXY+XG5cbiAgPG1hdC1zaWRlbmF2LWNvbnRlbnQgY2xhc3M9XCJvLWFwcC1zaWRlbmF2LWNvbnRlbnRcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvbWF0LXNpZGVuYXYtY29udGVudD5cbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxuIl19
|