@flywheel-io/vision 0.15.1 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/layouts/layouts.module.d.ts +6 -4
- package/components/menu/menu-item/menu-item.component.d.ts +2 -3
- package/components/menu/menu.module.d.ts +2 -3
- package/components/select-menu/select-menu.module.d.ts +1 -2
- package/components/snackbar/snackbar/snackbar.component.d.ts +24 -0
- package/components/snackbar/snackbar-container/snackbar-container.component.d.ts +20 -0
- package/components/snackbar/snackbar-message.model.d.ts +12 -0
- package/components/snackbar/snackbar-timer.service.d.ts +10 -0
- package/components/snackbar/snackbar.module.d.ts +14 -0
- package/components/snackbar/snackbar.service.d.ts +13 -0
- package/components/stepper/step.component.d.ts +4 -0
- package/components/stepper/stepper.module.d.ts +1 -1
- package/esm2020/components/alert/alert.component.mjs +2 -2
- package/esm2020/components/app-icon/app-icon.component.mjs +2 -2
- package/esm2020/components/layouts/context/context.component.mjs +4 -2
- package/esm2020/components/layouts/layouts.module.mjs +13 -4
- package/esm2020/components/menu/menu-item/menu-item.component.mjs +9 -9
- package/esm2020/components/menu/menu.component.mjs +4 -4
- package/esm2020/components/menu/menu.module.mjs +1 -5
- package/esm2020/components/select-menu/multi-select-menu/multi-select-menu.component.mjs +3 -3
- package/esm2020/components/select-menu/select-menu.component.mjs +3 -3
- package/esm2020/components/select-menu/select-menu.module.mjs +3 -7
- package/esm2020/components/snackbar/snackbar/snackbar.component.mjs +111 -0
- package/esm2020/components/snackbar/snackbar-container/snackbar-container.component.mjs +63 -0
- package/esm2020/components/snackbar/snackbar-message.model.mjs +2 -0
- package/esm2020/components/snackbar/snackbar-timer.service.mjs +29 -0
- package/esm2020/components/snackbar/snackbar.module.mjs +55 -0
- package/esm2020/components/snackbar/snackbar.service.mjs +36 -0
- package/esm2020/components/stepper/step.component.mjs +9 -1
- package/esm2020/components/stepper/stepper.module.mjs +6 -2
- package/esm2020/public-api.mjs +6 -1
- package/fesm2015/flywheel-io-vision.mjs +311 -33
- package/fesm2015/flywheel-io-vision.mjs.map +1 -1
- package/fesm2020/flywheel-io-vision.mjs +310 -33
- package/fesm2020/flywheel-io-vision.mjs.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +5 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./
|
|
3
|
-
import * as i2 from "./
|
|
4
|
-
import * as i3 from "
|
|
2
|
+
import * as i1 from "./context/context.component";
|
|
3
|
+
import * as i2 from "./toolbar/toolbar.component";
|
|
4
|
+
import * as i3 from "./layout-group.component";
|
|
5
|
+
import * as i4 from "@angular/common";
|
|
6
|
+
import * as i5 from "../icon/icon.module";
|
|
5
7
|
export declare class FwLayoutsModule {
|
|
6
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<FwLayoutsModule, never>;
|
|
7
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<FwLayoutsModule, [typeof i1.
|
|
9
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<FwLayoutsModule, [typeof i1.FwLayoutContextComponent, typeof i2.FwLayoutToolbarComponent, typeof i3.FwLayoutGroupComponent], [typeof i4.CommonModule, typeof i5.FwIconModule], [typeof i1.FwLayoutContextComponent, typeof i2.FwLayoutToolbarComponent, typeof i3.FwLayoutGroupComponent]>;
|
|
8
10
|
static ɵinj: i0.ɵɵInjectorDeclaration<FwLayoutsModule>;
|
|
9
11
|
}
|
|
@@ -12,11 +12,10 @@ export declare class FwMenuItemComponent {
|
|
|
12
12
|
hidden?: boolean;
|
|
13
13
|
collapsed?: boolean;
|
|
14
14
|
href?: string;
|
|
15
|
-
|
|
16
|
-
select?: EventEmitter<string>;
|
|
15
|
+
click: EventEmitter<string>;
|
|
17
16
|
focused?: boolean;
|
|
18
17
|
selected?: boolean;
|
|
19
18
|
handleClick(evt: Event): void;
|
|
20
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<FwMenuItemComponent, never>;
|
|
21
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FwMenuItemComponent, "fw-menu-item", never, { "value": "value"; "variant": "variant"; "size": "size"; "label": "label"; "subtitle": "subtitle"; "icon": "icon"; "disabled": "disabled"; "showCheckbox": "showCheckbox"; "hidden": "hidden"; "collapsed": "collapsed"; "href": "href"; "
|
|
20
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FwMenuItemComponent, "fw-menu-item", never, { "value": "value"; "variant": "variant"; "size": "size"; "label": "label"; "subtitle": "subtitle"; "icon": "icon"; "disabled": "disabled"; "showCheckbox": "showCheckbox"; "hidden": "hidden"; "collapsed": "collapsed"; "href": "href"; "focused": "focused"; "selected": "selected"; }, { "click": "click"; }, never, ["fw-avatar", "*"], false>;
|
|
22
21
|
}
|
|
@@ -11,10 +11,9 @@ import * as i9 from "../icon-button/icon-button.module";
|
|
|
11
11
|
import * as i10 from "../icon/icon.module";
|
|
12
12
|
import * as i11 from "@angular/material/checkbox";
|
|
13
13
|
import * as i12 from "@angular/material/menu";
|
|
14
|
-
import * as i13 from "
|
|
15
|
-
import * as i14 from "../text-input/text-input.module";
|
|
14
|
+
import * as i13 from "../text-input/text-input.module";
|
|
16
15
|
export declare class FwMenuModule {
|
|
17
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<FwMenuModule, never>;
|
|
18
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<FwMenuModule, [typeof i1.FwMenuComponent, typeof i2.FwMenuContainerComponent, typeof i3.FwMenuHeaderComponent, typeof i4.FwMenuItemComponent, typeof i5.FwMenuSeparatorComponent], [typeof i6.CdkMenuModule, typeof i7.CommonModule, typeof i8.FormsModule, typeof i9.FwIconButtonModule, typeof i10.FwIconModule, typeof i11.MatCheckboxModule, typeof i12.MatMenuModule, typeof i13.
|
|
17
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<FwMenuModule, [typeof i1.FwMenuComponent, typeof i2.FwMenuContainerComponent, typeof i3.FwMenuHeaderComponent, typeof i4.FwMenuItemComponent, typeof i5.FwMenuSeparatorComponent], [typeof i6.CdkMenuModule, typeof i7.CommonModule, typeof i8.FormsModule, typeof i9.FwIconButtonModule, typeof i10.FwIconModule, typeof i11.MatCheckboxModule, typeof i12.MatMenuModule, typeof i13.FwTextInputModule], [typeof i1.FwMenuComponent, typeof i2.FwMenuContainerComponent, typeof i3.FwMenuHeaderComponent, typeof i4.FwMenuItemComponent, typeof i5.FwMenuSeparatorComponent]>;
|
|
19
18
|
static ɵinj: i0.ɵɵInjectorDeclaration<FwMenuModule>;
|
|
20
19
|
}
|
|
@@ -8,9 +8,8 @@ import * as i6 from "../chip/chip.module";
|
|
|
8
8
|
import * as i7 from "../icon/icon.module";
|
|
9
9
|
import * as i8 from "../menu/menu.module";
|
|
10
10
|
import * as i9 from "../text-input/text-input.module";
|
|
11
|
-
import * as i10 from "@angular/router";
|
|
12
11
|
export declare class FwSelectMenuModule {
|
|
13
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<FwSelectMenuModule, never>;
|
|
14
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<FwSelectMenuModule, [typeof i1.FwMultiSelectMenuComponent, typeof i2.FwSelectMenuComponent], [typeof i3.CommonModule, typeof i4.CdkMenuModule, typeof i5.FormsModule, typeof i6.FwChipModule, typeof i7.FwIconModule, typeof i8.FwMenuModule, typeof i9.FwTextInputModule
|
|
13
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<FwSelectMenuModule, [typeof i1.FwMultiSelectMenuComponent, typeof i2.FwSelectMenuComponent], [typeof i3.CommonModule, typeof i4.CdkMenuModule, typeof i5.FormsModule, typeof i6.FwChipModule, typeof i7.FwIconModule, typeof i8.FwMenuModule, typeof i9.FwTextInputModule], [typeof i1.FwMultiSelectMenuComponent, typeof i2.FwSelectMenuComponent]>;
|
|
15
14
|
static ɵinj: i0.ɵɵInjectorDeclaration<FwSelectMenuModule>;
|
|
16
15
|
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnInit } from '@angular/core';
|
|
2
|
+
import { FwSnackbarMessage } from '../snackbar-message.model';
|
|
3
|
+
import { FwSnackbarTimerService } from '../snackbar-timer.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class FwSnackbarComponent implements AfterViewInit, OnInit {
|
|
6
|
+
private cdr;
|
|
7
|
+
private timerService;
|
|
8
|
+
message: FwSnackbarMessage;
|
|
9
|
+
messageDuration: number;
|
|
10
|
+
ready: EventEmitter<FwSnackbarComponent>;
|
|
11
|
+
dismiss: EventEmitter<string>;
|
|
12
|
+
action: EventEmitter<string>;
|
|
13
|
+
color: 'primary' | 'success' | 'warning' | 'danger';
|
|
14
|
+
get cssClass(): string;
|
|
15
|
+
constructor(cdr: ChangeDetectorRef, timerService: FwSnackbarTimerService);
|
|
16
|
+
ngAfterViewInit(): void;
|
|
17
|
+
startTimer(): void;
|
|
18
|
+
stopTimer(): void;
|
|
19
|
+
ngOnInit(): void;
|
|
20
|
+
handleDismiss(): void;
|
|
21
|
+
handleAction(): void;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FwSnackbarComponent, never>;
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FwSnackbarComponent, "fw-snackbar", never, { "message": "message"; "messageDuration": "messageDuration"; }, { "ready": "ready"; "dismiss": "dismiss"; "action": "action"; }, never, never, false>;
|
|
24
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ChangeDetectorRef, OnDestroy } from '@angular/core';
|
|
2
|
+
import { FwSnackbarService } from '../snackbar.service';
|
|
3
|
+
import { FwSnackbarComponent } from '../snackbar/snackbar.component';
|
|
4
|
+
import { FwSnackbarMessage } from '../snackbar-message.model';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class FwSnackbarContainerComponent implements OnDestroy {
|
|
7
|
+
private cdr;
|
|
8
|
+
private snackbarService;
|
|
9
|
+
get classes(): string;
|
|
10
|
+
limit: number;
|
|
11
|
+
messages: FwSnackbarMessage[];
|
|
12
|
+
private subscriptions;
|
|
13
|
+
constructor(cdr: ChangeDetectorRef, snackbarService: FwSnackbarService);
|
|
14
|
+
ngOnDestroy(): void;
|
|
15
|
+
onReady(snackbar: FwSnackbarComponent): void;
|
|
16
|
+
onDismiss(messageId: string): void;
|
|
17
|
+
clearAll(): void;
|
|
18
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FwSnackbarContainerComponent, never>;
|
|
19
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FwSnackbarContainerComponent, "fw-snackbar-container", never, {}, {}, never, never, false>;
|
|
20
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FwSnackbarComponent } from './snackbar/snackbar.component';
|
|
2
|
+
export interface FwSnackbarMessage {
|
|
3
|
+
id?: string;
|
|
4
|
+
severity: 'info' | 'success' | 'warning' | 'error';
|
|
5
|
+
message: string;
|
|
6
|
+
icon?: string;
|
|
7
|
+
showClose?: boolean;
|
|
8
|
+
actionText?: string;
|
|
9
|
+
action?: () => void;
|
|
10
|
+
duration?: number;
|
|
11
|
+
ref?: FwSnackbarComponent;
|
|
12
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./snackbar/snackbar.component";
|
|
3
|
+
import * as i2 from "./snackbar-container/snackbar-container.component";
|
|
4
|
+
import * as i3 from "@angular/common";
|
|
5
|
+
import * as i4 from "../button/button.module";
|
|
6
|
+
import * as i5 from "@angular/material/button";
|
|
7
|
+
import * as i6 from "@angular/material/icon";
|
|
8
|
+
import * as i7 from "../icon-button/icon-button.module";
|
|
9
|
+
import * as i8 from "../icon/icon.module";
|
|
10
|
+
export declare class FwSnackbarModule {
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FwSnackbarModule, never>;
|
|
12
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<FwSnackbarModule, [typeof i1.FwSnackbarComponent, typeof i2.FwSnackbarContainerComponent], [typeof i3.CommonModule, typeof i4.FwButtonModule, typeof i5.MatButtonModule, typeof i6.MatIconModule, typeof i7.FwIconButtonModule, typeof i8.FwIconModule], [typeof i1.FwSnackbarComponent, typeof i2.FwSnackbarContainerComponent]>;
|
|
13
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<FwSnackbarModule>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
|
+
import { FwSnackbarMessage } from './snackbar-message.model';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare function genMessageId(): string;
|
|
5
|
+
export declare class FwSnackbarService {
|
|
6
|
+
readonly messages$: BehaviorSubject<FwSnackbarMessage[]>;
|
|
7
|
+
private messageQueue;
|
|
8
|
+
show(message: FwSnackbarMessage): void;
|
|
9
|
+
dismiss(messageId: string): void;
|
|
10
|
+
dismissAll(): void;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FwSnackbarService, never>;
|
|
12
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FwSnackbarService>;
|
|
13
|
+
}
|
|
@@ -18,3 +18,7 @@ export declare class FwStepComponent {
|
|
|
18
18
|
static ɵfac: i0.ɵɵFactoryDeclaration<FwStepComponent, never>;
|
|
19
19
|
static ɵcmp: i0.ɵɵComponentDeclaration<FwStepComponent, "fw-step", never, { "stepNumber": "stepNumber"; "color": "color"; "variant": "variant"; "alignment": "alignment"; "backgroundColor": "backgroundColor"; "title": "title"; "subtitle": "subtitle"; "icon": "icon"; "disabled": "disabled"; "active": "active"; "completed": "completed"; "done": "done"; }, { "select": "select"; }, never, ["fw-step-decorator"], false>;
|
|
20
20
|
}
|
|
21
|
+
export declare class FwStepDecoratorComponent {
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FwStepDecoratorComponent, never>;
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FwStepDecoratorComponent, "fw-step-decorator", never, {}, {}, never, ["*"], false>;
|
|
24
|
+
}
|
|
@@ -6,6 +6,6 @@ import * as i4 from "../icon/icon.module";
|
|
|
6
6
|
import * as i5 from "../icon-button/icon-button.module";
|
|
7
7
|
export declare class FwStepperModule {
|
|
8
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<FwStepperModule, never>;
|
|
9
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<FwStepperModule, [typeof i1.FwStepComponent, typeof i2.FwStepperComponent], [typeof i3.CommonModule, typeof i4.FwIconModule, typeof i5.FwIconButtonModule], [typeof i1.FwStepComponent, typeof i2.FwStepperComponent]>;
|
|
9
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<FwStepperModule, [typeof i1.FwStepComponent, typeof i1.FwStepDecoratorComponent, typeof i2.FwStepperComponent], [typeof i3.CommonModule, typeof i4.FwIconModule, typeof i5.FwIconButtonModule], [typeof i1.FwStepComponent, typeof i1.FwStepDecoratorComponent, typeof i2.FwStepperComponent]>;
|
|
10
10
|
static ɵinj: i0.ɵɵInjectorDeclaration<FwStepperModule>;
|
|
11
11
|
}
|
|
@@ -12,10 +12,10 @@ export class FwAlertComponent {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
FwAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
-
FwAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwAlertComponent, selector: "fw-alert", inputs: { description: "description", icon: "icon", severity: "severity", title: "title", variant: "variant", showClose: "showClose" }, outputs: { close: "close" }, ngImport: i0, template: "<div [ngClass]=\"['alert', variant, severity]\">\n <fw-icon *ngIf=\"icon\" class=\"alert-icon\">{{ icon }}</fw-icon>\n <div class=\"alert-text\">\n <h4 *ngIf=\"title\">{{ title }}</h4>\n <p *ngIf=\"description\">{{ description }}</p>\n <p>\n <ng-content></ng-content>\n </p>\n </div>\n <fw-icon-button\n *ngIf=\"showClose\"\n icon=\"close\" size=\"small\"\n style=\"margin-right: -10px\"\n [color]=\"variant==='filled'?'overlay':severity\"\n (click)=\"close?close.emit():undefined\">\n </fw-icon-button>\n</div>\n", styles: [".alert{border-radius:8px;padding:6px 16px;margin-bottom:15px;display:flex}.alert .alert-icon{padding:7px 12px 7px 0;align-items:flex-start;font-size:22px}.alert .alert-text{padding:8px 0;flex:1}.alert h4{margin:
|
|
15
|
+
FwAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwAlertComponent, selector: "fw-alert", inputs: { description: "description", icon: "icon", severity: "severity", title: "title", variant: "variant", showClose: "showClose" }, outputs: { close: "close" }, ngImport: i0, template: "<div [ngClass]=\"['alert', variant, severity]\">\n <fw-icon *ngIf=\"icon\" class=\"alert-icon\">{{ icon }}</fw-icon>\n <div class=\"alert-text\">\n <h4 *ngIf=\"title\">{{ title }}</h4>\n <p *ngIf=\"description\">{{ description }}</p>\n <p>\n <ng-content></ng-content>\n </p>\n </div>\n <fw-icon-button\n *ngIf=\"showClose\"\n icon=\"close\" size=\"small\"\n style=\"margin-right: -10px\"\n [color]=\"variant==='filled'?'overlay':severity\"\n (click)=\"close?close.emit():undefined\">\n </fw-icon-button>\n</div>\n", styles: [".alert{border-radius:8px;padding:6px 16px;margin-bottom:15px;display:flex}.alert .alert-icon{padding:7px 12px 7px 0;align-items:flex-start;font-size:22px}.alert .alert-text{padding:8px 0;flex:1}.alert h4{margin:2px 0 4px;color:var(--typography-contrast)}.alert p{margin:0;color:inherit;font-size:12px;font-weight:400;line-height:16.8px}.alert.standard.info{color:var(--primary-base);background-color:var(--primary-hover);border:1px solid var(--primary-border)}.alert.standard.info h4{color:var(--primary-base)}.alert.standard.warning{color:var(--orange-base);background-color:var(--orange-hover);border:1px solid var(--orange-border)}.alert.standard.warning h4{color:var(--orange-base)}.alert.standard.success{color:var(--green-base);background-color:var(--green-hover);border:1px solid var(--green-border)}.alert.standard.success h4{color:var(--green-base)}.alert.standard.error{color:var(--red-base);background-color:var(--red-hover);border:1px solid var(--red-border)}.alert.standard.error h4{color:var(--red-base)}.alert.outlined.info{color:var(--primary-base);border:1px solid var(--primary-base)}.alert.outlined.info h4{color:var(--primary-base)}.alert.outlined.warning{color:var(--orange-base);border:1px solid var(--orange-base)}.alert.outlined.warning h4{color:var(--orange-base)}.alert.outlined.success{color:var(--green-base);border:1px solid var(--green-base)}.alert.outlined.success h4{color:var(--green-base)}.alert.outlined.error{color:var(--red-base);border:1px solid var(--red-base)}.alert.outlined.error h4{color:var(--red-base)}.alert.filled.info{color:var(--typography-contrast);background-color:var(--primary-base)}.alert.filled.warning{color:var(--typography-contrast);background-color:var(--orange-base)}.alert.filled.success{color:var(--typography-contrast);background-color:var(--green-base)}.alert.filled.error{color:var(--typography-contrast);background-color:var(--red-base)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconComponent, selector: "fw-icon" }, { kind: "component", type: i3.FwIconButtonComponent, selector: "fw-icon-button", inputs: ["color", "icon", "size", "disabled", "selected"] }] });
|
|
16
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwAlertComponent, decorators: [{
|
|
17
17
|
type: Component,
|
|
18
|
-
args: [{ selector: 'fw-alert', template: "<div [ngClass]=\"['alert', variant, severity]\">\n <fw-icon *ngIf=\"icon\" class=\"alert-icon\">{{ icon }}</fw-icon>\n <div class=\"alert-text\">\n <h4 *ngIf=\"title\">{{ title }}</h4>\n <p *ngIf=\"description\">{{ description }}</p>\n <p>\n <ng-content></ng-content>\n </p>\n </div>\n <fw-icon-button\n *ngIf=\"showClose\"\n icon=\"close\" size=\"small\"\n style=\"margin-right: -10px\"\n [color]=\"variant==='filled'?'overlay':severity\"\n (click)=\"close?close.emit():undefined\">\n </fw-icon-button>\n</div>\n", styles: [".alert{border-radius:8px;padding:6px 16px;margin-bottom:15px;display:flex}.alert .alert-icon{padding:7px 12px 7px 0;align-items:flex-start;font-size:22px}.alert .alert-text{padding:8px 0;flex:1}.alert h4{margin:
|
|
18
|
+
args: [{ selector: 'fw-alert', template: "<div [ngClass]=\"['alert', variant, severity]\">\n <fw-icon *ngIf=\"icon\" class=\"alert-icon\">{{ icon }}</fw-icon>\n <div class=\"alert-text\">\n <h4 *ngIf=\"title\">{{ title }}</h4>\n <p *ngIf=\"description\">{{ description }}</p>\n <p>\n <ng-content></ng-content>\n </p>\n </div>\n <fw-icon-button\n *ngIf=\"showClose\"\n icon=\"close\" size=\"small\"\n style=\"margin-right: -10px\"\n [color]=\"variant==='filled'?'overlay':severity\"\n (click)=\"close?close.emit():undefined\">\n </fw-icon-button>\n</div>\n", styles: [".alert{border-radius:8px;padding:6px 16px;margin-bottom:15px;display:flex}.alert .alert-icon{padding:7px 12px 7px 0;align-items:flex-start;font-size:22px}.alert .alert-text{padding:8px 0;flex:1}.alert h4{margin:2px 0 4px;color:var(--typography-contrast)}.alert p{margin:0;color:inherit;font-size:12px;font-weight:400;line-height:16.8px}.alert.standard.info{color:var(--primary-base);background-color:var(--primary-hover);border:1px solid var(--primary-border)}.alert.standard.info h4{color:var(--primary-base)}.alert.standard.warning{color:var(--orange-base);background-color:var(--orange-hover);border:1px solid var(--orange-border)}.alert.standard.warning h4{color:var(--orange-base)}.alert.standard.success{color:var(--green-base);background-color:var(--green-hover);border:1px solid var(--green-border)}.alert.standard.success h4{color:var(--green-base)}.alert.standard.error{color:var(--red-base);background-color:var(--red-hover);border:1px solid var(--red-border)}.alert.standard.error h4{color:var(--red-base)}.alert.outlined.info{color:var(--primary-base);border:1px solid var(--primary-base)}.alert.outlined.info h4{color:var(--primary-base)}.alert.outlined.warning{color:var(--orange-base);border:1px solid var(--orange-base)}.alert.outlined.warning h4{color:var(--orange-base)}.alert.outlined.success{color:var(--green-base);border:1px solid var(--green-base)}.alert.outlined.success h4{color:var(--green-base)}.alert.outlined.error{color:var(--red-base);border:1px solid var(--red-base)}.alert.outlined.error h4{color:var(--red-base)}.alert.filled.info{color:var(--typography-contrast);background-color:var(--primary-base)}.alert.filled.warning{color:var(--typography-contrast);background-color:var(--orange-base)}.alert.filled.success{color:var(--typography-contrast);background-color:var(--green-base)}.alert.filled.error{color:var(--typography-contrast);background-color:var(--red-base)}\n"] }]
|
|
19
19
|
}], propDecorators: { description: [{
|
|
20
20
|
type: Input
|
|
21
21
|
}], icon: [{
|
|
@@ -17,10 +17,10 @@ export class FwAppIconComponent {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
FwAppIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwAppIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
-
FwAppIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwAppIconComponent, selector: "fw-app-icon", inputs: { label: "label", icon: "icon", color: "color", size: "size", variant: "variant", badge: "badge", tabindex: "tabindex", locked: "locked", animated: "animated" }, host: { properties: { "tabindex": "this.tabindex", "class.locked": "this.locked", "class.animated": "this.animated", "role": "this.role", "class": "this.cssClass" } }, ngImport: i0, template: "<div class=\"icon-highlight\"></div>\n<div class=\"icon-wrapper\">\n <div class=\"app-badge\" *ngIf=\"badge\">{{ badge }}</div>\n <div class=\"app-locked\" *ngIf=\"locked\">\n <fw-icon>lock</fw-icon>\n </div>\n <fw-icon *ngIf=\"icon\">{{ icon }}</fw-icon>\n</div>\n<p class=\"vision-p3\" *ngIf=\"label\">{{ label }}</p>\n", styles: [":host{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;outline:none}:host .icon-highlight{box-sizing:content-box;display:inline-flex;border:4px solid transparent;padding:2px;position:absolute;top:0}:host .icon-wrapper{display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;position:relative;box-sizing:border-box;margin
|
|
20
|
+
FwAppIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwAppIconComponent, selector: "fw-app-icon", inputs: { label: "label", icon: "icon", color: "color", size: "size", variant: "variant", badge: "badge", tabindex: "tabindex", locked: "locked", animated: "animated" }, host: { properties: { "tabindex": "this.tabindex", "class.locked": "this.locked", "class.animated": "this.animated", "role": "this.role", "class": "this.cssClass" } }, ngImport: i0, template: "<div class=\"icon-highlight\"></div>\n<div class=\"icon-wrapper\">\n <div class=\"app-badge\" *ngIf=\"badge\">{{ badge }}</div>\n <div class=\"app-locked\" *ngIf=\"locked\">\n <fw-icon>lock</fw-icon>\n </div>\n <fw-icon *ngIf=\"icon\">{{ icon }}</fw-icon>\n</div>\n<p class=\"vision-p3\" *ngIf=\"label\">{{ label }}</p>\n", styles: [":host{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;outline:none}:host .icon-highlight{box-sizing:content-box;display:inline-flex;border:4px solid transparent;padding:2px;position:absolute;top:0}:host .icon-wrapper{display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;position:relative;box-sizing:border-box;margin:6px}:host p{margin:0;line-height:16.8px;-webkit-user-select:none;user-select:none;display:inline-block;color:var(--typography-muted);text-align:center}:host .app-badge{width:18px;height:18px;border-radius:64px;background:var(--red-base);font-size:10px;font-weight:500;line-height:17px;letter-spacing:0;text-align:center;color:var(--typography-contrast);display:inline-flex;align-items:flex-start;justify-content:center;position:absolute;top:-6px;right:-6px;overflow:hidden;white-space:nowrap;box-shadow:0 1px 2px #0000000d}:host .app-locked{width:21px;height:21px;border-radius:64px;background:var(--slate-base);font-size:15px;color:var(--typography-contrast);display:inline-flex;align-items:center;justify-content:center;position:absolute;top:-6px;right:-6px;overflow:hidden;white-space:nowrap;box-shadow:0 2px 5px #0000001a}:host.primary .icon-wrapper{background-color:var(--primary-base)}:host.primary .icon-wrapper>fw-icon{color:var(--typography-contrast)}:host.dark .icon-wrapper{background-color:var(--primary-dark)}:host.dark .icon-wrapper>fw-icon{color:var(--typography-contrast)}:host.gradient .icon-wrapper{background:linear-gradient(23.3deg,#093af6 -22.41%,#1b68fa 41.03%,#b080fc 94.31%)}:host.gradient .icon-wrapper>fw-icon{color:var(--typography-contrast)}:host.light .icon-wrapper{background-color:var(--page-light);outline:1px solid #e3e6ea}:host.light .icon-wrapper>fw-icon{background:-webkit-linear-gradient(23.3deg,#093af6 -22.41%,#1b68fa 41.03%,#b080fc 94.31%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.small .icon-highlight{border-radius:12px;width:24px;height:24px}:host.small .icon-wrapper{display:inline-flex;width:24px;height:24px;border-radius:6px;align-items:center;justify-content:center}:host.small .icon-wrapper>fw-icon{font-size:16px}:host.small .app-badge{width:8px;height:8px;border-radius:8px;text-indent:-9999px;top:-3px;right:-3px;box-shadow:-1px 1px #00000040}:host.medium .icon-highlight{border-radius:14px;width:32px;height:32px}:host.medium .icon-wrapper{display:inline-flex;width:32px;height:32px;border-radius:8px;align-items:center;justify-content:center}:host.medium .icon-wrapper>fw-icon{font-size:20px}:host.medium .app-badge{width:8px;height:8px;border-radius:8px;text-indent:-9999px;top:-3px;right:-3px;box-shadow:-1px 1px #00000040}:host.large .icon-highlight{border-radius:18px;width:48px;height:48px}:host.large .icon-wrapper{display:inline-flex;width:48px;height:48px;border-radius:12px;align-items:center;justify-content:center}:host.large .icon-wrapper>fw-icon{font-size:32px}:host.extra-large .icon-highlight{border-radius:22px;width:64px;height:64px}:host.extra-large .icon-wrapper{display:inline-flex;width:64px;height:64px;border-radius:16px;align-items:center;justify-content:center}:host.extra-large .icon-wrapper>fw-icon{font-size:48px}:host.extra-large p{max-width:64px}:host.interactive .icon-highlight{border:4px solid transparent}:host.hover .icon-highlight,:host:hover .icon-highlight{border:4px solid var(--primary-border)}@keyframes rubber-band{0%{transform:scale(.95)}20%{transform:scale(1.05)}32%{transform:scale(.95)}48%{transform:scale(1)}}:host.animated.hover .icon-highlight,:host.animated:hover .icon-highlight{animation:rubber-band .5s linear forwards;border:4px solid var(--primary-border)}:host.focused .icon-highlight,:host:focus .icon-highlight,:host.animated:focus .icon-highlight{border:4px solid var(--primary-base)}:host.focused p,:host:focus p,:host.animated:focus p{color:var(--typography-base)}:host.static .icon-highlight,:host.static:hover .icon-highlight,:host.static.animated:hover .icon-highlight{border:4px solid transparent}:host.locked{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconComponent, selector: "fw-icon" }] });
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwAppIconComponent, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
|
-
args: [{ selector: 'fw-app-icon', template: "<div class=\"icon-highlight\"></div>\n<div class=\"icon-wrapper\">\n <div class=\"app-badge\" *ngIf=\"badge\">{{ badge }}</div>\n <div class=\"app-locked\" *ngIf=\"locked\">\n <fw-icon>lock</fw-icon>\n </div>\n <fw-icon *ngIf=\"icon\">{{ icon }}</fw-icon>\n</div>\n<p class=\"vision-p3\" *ngIf=\"label\">{{ label }}</p>\n", styles: [":host{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;outline:none}:host .icon-highlight{box-sizing:content-box;display:inline-flex;border:4px solid transparent;padding:2px;position:absolute;top:0}:host .icon-wrapper{display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;position:relative;box-sizing:border-box;margin
|
|
23
|
+
args: [{ selector: 'fw-app-icon', template: "<div class=\"icon-highlight\"></div>\n<div class=\"icon-wrapper\">\n <div class=\"app-badge\" *ngIf=\"badge\">{{ badge }}</div>\n <div class=\"app-locked\" *ngIf=\"locked\">\n <fw-icon>lock</fw-icon>\n </div>\n <fw-icon *ngIf=\"icon\">{{ icon }}</fw-icon>\n</div>\n<p class=\"vision-p3\" *ngIf=\"label\">{{ label }}</p>\n", styles: [":host{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;outline:none}:host .icon-highlight{box-sizing:content-box;display:inline-flex;border:4px solid transparent;padding:2px;position:absolute;top:0}:host .icon-wrapper{display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;position:relative;box-sizing:border-box;margin:6px}:host p{margin:0;line-height:16.8px;-webkit-user-select:none;user-select:none;display:inline-block;color:var(--typography-muted);text-align:center}:host .app-badge{width:18px;height:18px;border-radius:64px;background:var(--red-base);font-size:10px;font-weight:500;line-height:17px;letter-spacing:0;text-align:center;color:var(--typography-contrast);display:inline-flex;align-items:flex-start;justify-content:center;position:absolute;top:-6px;right:-6px;overflow:hidden;white-space:nowrap;box-shadow:0 1px 2px #0000000d}:host .app-locked{width:21px;height:21px;border-radius:64px;background:var(--slate-base);font-size:15px;color:var(--typography-contrast);display:inline-flex;align-items:center;justify-content:center;position:absolute;top:-6px;right:-6px;overflow:hidden;white-space:nowrap;box-shadow:0 2px 5px #0000001a}:host.primary .icon-wrapper{background-color:var(--primary-base)}:host.primary .icon-wrapper>fw-icon{color:var(--typography-contrast)}:host.dark .icon-wrapper{background-color:var(--primary-dark)}:host.dark .icon-wrapper>fw-icon{color:var(--typography-contrast)}:host.gradient .icon-wrapper{background:linear-gradient(23.3deg,#093af6 -22.41%,#1b68fa 41.03%,#b080fc 94.31%)}:host.gradient .icon-wrapper>fw-icon{color:var(--typography-contrast)}:host.light .icon-wrapper{background-color:var(--page-light);outline:1px solid #e3e6ea}:host.light .icon-wrapper>fw-icon{background:-webkit-linear-gradient(23.3deg,#093af6 -22.41%,#1b68fa 41.03%,#b080fc 94.31%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}:host.small .icon-highlight{border-radius:12px;width:24px;height:24px}:host.small .icon-wrapper{display:inline-flex;width:24px;height:24px;border-radius:6px;align-items:center;justify-content:center}:host.small .icon-wrapper>fw-icon{font-size:16px}:host.small .app-badge{width:8px;height:8px;border-radius:8px;text-indent:-9999px;top:-3px;right:-3px;box-shadow:-1px 1px #00000040}:host.medium .icon-highlight{border-radius:14px;width:32px;height:32px}:host.medium .icon-wrapper{display:inline-flex;width:32px;height:32px;border-radius:8px;align-items:center;justify-content:center}:host.medium .icon-wrapper>fw-icon{font-size:20px}:host.medium .app-badge{width:8px;height:8px;border-radius:8px;text-indent:-9999px;top:-3px;right:-3px;box-shadow:-1px 1px #00000040}:host.large .icon-highlight{border-radius:18px;width:48px;height:48px}:host.large .icon-wrapper{display:inline-flex;width:48px;height:48px;border-radius:12px;align-items:center;justify-content:center}:host.large .icon-wrapper>fw-icon{font-size:32px}:host.extra-large .icon-highlight{border-radius:22px;width:64px;height:64px}:host.extra-large .icon-wrapper{display:inline-flex;width:64px;height:64px;border-radius:16px;align-items:center;justify-content:center}:host.extra-large .icon-wrapper>fw-icon{font-size:48px}:host.extra-large p{max-width:64px}:host.interactive .icon-highlight{border:4px solid transparent}:host.hover .icon-highlight,:host:hover .icon-highlight{border:4px solid var(--primary-border)}@keyframes rubber-band{0%{transform:scale(.95)}20%{transform:scale(1.05)}32%{transform:scale(.95)}48%{transform:scale(1)}}:host.animated.hover .icon-highlight,:host.animated:hover .icon-highlight{animation:rubber-band .5s linear forwards;border:4px solid var(--primary-border)}:host.focused .icon-highlight,:host:focus .icon-highlight,:host.animated:focus .icon-highlight{border:4px solid var(--primary-base)}:host.focused p,:host:focus p,:host.animated:focus p{color:var(--typography-base)}:host.static .icon-highlight,:host.static:hover .icon-highlight,:host.static.animated:hover .icon-highlight{border:4px solid transparent}:host.locked{pointer-events:none}\n"] }]
|
|
24
24
|
}], propDecorators: { label: [{
|
|
25
25
|
type: Input
|
|
26
26
|
}], icon: [{
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
2
|
import { LayoutWidth } from '../layout-width';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "../../icon/icon.component";
|
|
4
6
|
export class FwLayoutContextComponent {
|
|
5
7
|
constructor() {
|
|
6
8
|
this.width = LayoutWidth.Small;
|
|
@@ -17,7 +19,7 @@ export class FwLayoutContextComponent {
|
|
|
17
19
|
;
|
|
18
20
|
}
|
|
19
21
|
FwLayoutContextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutContextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
-
FwLayoutContextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwLayoutContextComponent, selector: "fw-layout-context", inputs: { width: "width", icon: "icon", iconColor: "iconColor", title: "title", description: "description" }, host: { properties: { "attr.class": "this.classes" } }, ngImport: i0, template: "<fw-icon *ngIf=\"icon\" [ngClass]=\"iconColor\">{{ icon }}</fw-icon>\n<h3 *ngIf=\"title\">{{ title }}</h3>\n<p class=\"vision-p3\" *ngIf=\"description\">{{ description }}</p>\n<div class=\"context-actions\">\n <ng-content select=\"fw-button\"></ng-content>\n</div>\n", styles: [":host{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:50px;max-width:100%}:host fw-icon{font-size:50px}:host fw-icon.primary{color:var(--primary-base)}:host fw-icon.secondary{color:var(--secondary-base)}:host fw-icon.slate{color:var(--slate-base)}:host fw-icon.danger{color:var(--red-base)}:host fw-icon.warning{color:var(--orange-base)}:host fw-icon.success{color:var(--green-base)}:host h3{margin:0}:host p{margin:0;text-align:center;color:var(--typography-muted)}:host .context-actions{display:flex;gap:8px}:host.context-width-small{width:444px}:host.context-width-medium{width:600px}:host.context-width-large{width:900px}:host.context-width-extra-large{width:1200px}\n"] });
|
|
22
|
+
FwLayoutContextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwLayoutContextComponent, selector: "fw-layout-context", inputs: { width: "width", icon: "icon", iconColor: "iconColor", title: "title", description: "description" }, host: { properties: { "attr.class": "this.classes" } }, ngImport: i0, template: "<fw-icon *ngIf=\"icon\" [ngClass]=\"iconColor\">{{ icon }}</fw-icon>\n<h3 *ngIf=\"title\">{{ title }}</h3>\n<p class=\"vision-p3\" *ngIf=\"description\">{{ description }}</p>\n<div class=\"context-actions\">\n <ng-content select=\"fw-button\"></ng-content>\n</div>\n", styles: [":host{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:50px;max-width:100%}:host fw-icon{font-size:50px}:host fw-icon.primary{color:var(--primary-base)}:host fw-icon.secondary{color:var(--secondary-base)}:host fw-icon.slate{color:var(--slate-base)}:host fw-icon.danger{color:var(--red-base)}:host fw-icon.warning{color:var(--orange-base)}:host fw-icon.success{color:var(--green-base)}:host h3{margin:0}:host p{margin:0;text-align:center;color:var(--typography-muted)}:host .context-actions{display:flex;gap:8px}:host.context-width-small{width:444px}:host.context-width-medium{width:600px}:host.context-width-large{width:900px}:host.context-width-extra-large{width:1200px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconComponent, selector: "fw-icon" }] });
|
|
21
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutContextComponent, decorators: [{
|
|
22
24
|
type: Component,
|
|
23
25
|
args: [{ selector: 'fw-layout-context', template: "<fw-icon *ngIf=\"icon\" [ngClass]=\"iconColor\">{{ icon }}</fw-icon>\n<h3 *ngIf=\"title\">{{ title }}</h3>\n<p class=\"vision-p3\" *ngIf=\"description\">{{ description }}</p>\n<div class=\"context-actions\">\n <ng-content select=\"fw-button\"></ng-content>\n</div>\n", styles: [":host{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:50px;max-width:100%}:host fw-icon{font-size:50px}:host fw-icon.primary{color:var(--primary-base)}:host fw-icon.secondary{color:var(--secondary-base)}:host fw-icon.slate{color:var(--slate-base)}:host fw-icon.danger{color:var(--red-base)}:host fw-icon.warning{color:var(--orange-base)}:host fw-icon.success{color:var(--green-base)}:host h3{margin:0}:host p{margin:0;text-align:center;color:var(--typography-muted)}:host .context-actions{display:flex;gap:8px}:host.context-width-small{width:444px}:host.context-width-medium{width:600px}:host.context-width-large{width:900px}:host.context-width-extra-large{width:1200px}\n"] }]
|
|
@@ -35,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
35
37
|
type: HostBinding,
|
|
36
38
|
args: ['attr.class']
|
|
37
39
|
}] } });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL2NvbnRleHQvY29udGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL2NvbnRleHQvY29udGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBTzlDLE1BQU0sT0FBTyx3QkFBd0I7SUFMckM7UUFNVyxVQUFLLEdBQWlCLFdBQVcsQ0FBQyxLQUFLLENBQUM7UUFFeEMsY0FBUyxHQUEwRSxXQUFXLENBQUM7S0FZekc7SUFSQyxJQUErQixPQUFPO1FBQ3BDLE1BQU0sT0FBTyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN0QyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFrQixJQUFJLENBQUMsS0FBTSxFQUFFLENBQUMsQ0FBQztRQUM5QyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBa0IsSUFBSSxDQUFDLFNBQVUsRUFBRSxDQUFDLENBQUM7U0FDbkQ7UUFDRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUFBLENBQUM7O3FIQWRTLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLCtOQ1RyQyw2UUFNQTsyRkRHYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsbUJBQW1COzhCQUtwQixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRXlCLE9BQU87c0JBQXJDLFdBQVc7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IExheW91dFdpZHRoIH0gZnJvbSAnLi4vbGF5b3V0LXdpZHRoJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctbGF5b3V0LWNvbnRleHQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGV4dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnRleHQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRndMYXlvdXRDb250ZXh0Q29tcG9uZW50IHtcbiAgQElucHV0KCkgd2lkdGg/OiBMYXlvdXRXaWR0aCA9IExheW91dFdpZHRoLlNtYWxsO1xuICBASW5wdXQoKSBpY29uPzogc3RyaW5nO1xuICBASW5wdXQoKSBpY29uQ29sb3I/OiAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdkYW5nZXInIHwgJ3NsYXRlJyB8ICd3YXJuaW5nJyB8ICdzdWNjZXNzJyA9ICdzZWNvbmRhcnknO1xuICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgQElucHV0KCkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmNsYXNzJykgZ2V0IGNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc2VzID0gWydmdy1sYXlvdXQtY29udGV4dCddO1xuICAgIGNsYXNzZXMucHVzaChgY29udGV4dC13aWR0aC0keyB0aGlzLndpZHRoIH1gKTtcbiAgICBpZiAodGhpcy5pY29uQ29sb3IpIHtcbiAgICAgIGNsYXNzZXMucHVzaChgY29udGV4dC1jb2xvci0keyB0aGlzLmljb25Db2xvciB9YCk7XG4gICAgfVxuICAgIHJldHVybiBjbGFzc2VzLmpvaW4oJyAnKTtcbiAgfTtcbn1cbiIsIjxmdy1pY29uICpuZ0lmPVwiaWNvblwiIFtuZ0NsYXNzXT1cImljb25Db2xvclwiPnt7IGljb24gfX08L2Z3LWljb24+XG48aDMgKm5nSWY9XCJ0aXRsZVwiPnt7IHRpdGxlIH19PC9oMz5cbjxwIGNsYXNzPVwidmlzaW9uLXAzXCIgKm5nSWY9XCJkZXNjcmlwdGlvblwiPnt7IGRlc2NyaXB0aW9uIH19PC9wPlxuPGRpdiBjbGFzcz1cImNvbnRleHQtYWN0aW9uc1wiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmdy1idXR0b25cIj48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,29 +1,38 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
|
+
import { FwIconModule } from '../icon/icon.module';
|
|
4
|
+
import { FwLayoutContextComponent } from './context/context.component';
|
|
3
5
|
import { FwLayoutGroupComponent } from './layout-group.component';
|
|
4
6
|
import { FwLayoutToolbarComponent } from './toolbar/toolbar.component';
|
|
5
7
|
import * as i0 from "@angular/core";
|
|
6
8
|
export class FwLayoutsModule {
|
|
7
9
|
}
|
|
8
10
|
FwLayoutsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
-
FwLayoutsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutsModule, declarations: [
|
|
10
|
-
|
|
11
|
+
FwLayoutsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutsModule, declarations: [FwLayoutContextComponent,
|
|
12
|
+
FwLayoutToolbarComponent,
|
|
13
|
+
FwLayoutGroupComponent], imports: [CommonModule,
|
|
14
|
+
FwIconModule], exports: [FwLayoutContextComponent,
|
|
15
|
+
FwLayoutToolbarComponent,
|
|
11
16
|
FwLayoutGroupComponent] });
|
|
12
|
-
FwLayoutsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutsModule, imports: [CommonModule
|
|
17
|
+
FwLayoutsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutsModule, imports: [CommonModule,
|
|
18
|
+
FwIconModule] });
|
|
13
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwLayoutsModule, decorators: [{
|
|
14
20
|
type: NgModule,
|
|
15
21
|
args: [{
|
|
16
22
|
imports: [
|
|
17
23
|
CommonModule,
|
|
24
|
+
FwIconModule,
|
|
18
25
|
],
|
|
19
26
|
exports: [
|
|
27
|
+
FwLayoutContextComponent,
|
|
20
28
|
FwLayoutToolbarComponent,
|
|
21
29
|
FwLayoutGroupComponent,
|
|
22
30
|
],
|
|
23
31
|
declarations: [
|
|
32
|
+
FwLayoutContextComponent,
|
|
24
33
|
FwLayoutToolbarComponent,
|
|
25
34
|
FwLayoutGroupComponent,
|
|
26
35
|
],
|
|
27
36
|
}]
|
|
28
37
|
}] });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL2xheW91dHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFrQnZFLE1BQU0sT0FBTyxlQUFlOzs0R0FBZixlQUFlOzZHQUFmLGVBQWUsaUJBTHhCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsc0JBQXNCLGFBWHRCLFlBQVk7UUFDWixZQUFZLGFBR1osd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixzQkFBc0I7NkdBUWIsZUFBZSxZQWR4QixZQUFZO1FBQ1osWUFBWTsyRkFhSCxlQUFlO2tCQWhCM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCx3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsc0JBQXNCO3FCQUN2QjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRndJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XG5pbXBvcnQgeyBGd0xheW91dENvbnRleHRDb21wb25lbnQgfSBmcm9tICcuL2NvbnRleHQvY29udGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRndMYXlvdXRHcm91cENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0LWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGd0xheW91dFRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL3Rvb2xiYXIvdG9vbGJhci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZ3SWNvbk1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZ3TGF5b3V0Q29udGV4dENvbXBvbmVudCxcbiAgICBGd0xheW91dFRvb2xiYXJDb21wb25lbnQsXG4gICAgRndMYXlvdXRHcm91cENvbXBvbmVudCxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRndMYXlvdXRDb250ZXh0Q29tcG9uZW50LFxuICAgIEZ3TGF5b3V0VG9vbGJhckNvbXBvbmVudCxcbiAgICBGd0xheW91dEdyb3VwQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGd0xheW91dHNNb2R1bGUge1xufVxuIl19
|
|
@@ -3,7 +3,6 @@ import * as i0 from "@angular/core";
|
|
|
3
3
|
import * as i1 from "@angular/common";
|
|
4
4
|
import * as i2 from "../../icon/icon.component";
|
|
5
5
|
import * as i3 from "@angular/material/checkbox";
|
|
6
|
-
import * as i4 from "@angular/router";
|
|
7
6
|
export class FwMenuItemComponent {
|
|
8
7
|
constructor() {
|
|
9
8
|
this.variant = 'default';
|
|
@@ -11,22 +10,25 @@ export class FwMenuItemComponent {
|
|
|
11
10
|
this.showCheckbox = false;
|
|
12
11
|
this.hidden = false;
|
|
13
12
|
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
14
|
-
this.
|
|
13
|
+
this.click = new EventEmitter();
|
|
15
14
|
this.focused = false;
|
|
16
15
|
this.selected = false;
|
|
17
16
|
}
|
|
18
17
|
handleClick(evt) {
|
|
19
18
|
evt.stopPropagation();
|
|
20
19
|
if (!this.disabled) {
|
|
21
|
-
|
|
20
|
+
if (this.href) {
|
|
21
|
+
window.location.href = this.href;
|
|
22
|
+
}
|
|
23
|
+
this.click.emit(this.value);
|
|
22
24
|
}
|
|
23
25
|
}
|
|
24
26
|
}
|
|
25
27
|
FwMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
26
|
-
FwMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwMenuItemComponent, selector: "fw-menu-item", inputs: { value: "value", variant: "variant", size: "size", label: "label", subtitle: "subtitle", icon: "icon", disabled: "disabled", showCheckbox: "showCheckbox", hidden: "hidden", collapsed: "collapsed", href: "href",
|
|
28
|
+
FwMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FwMenuItemComponent, selector: "fw-menu-item", inputs: { value: "value", variant: "variant", size: "size", label: "label", subtitle: "subtitle", icon: "icon", disabled: "disabled", showCheckbox: "showCheckbox", hidden: "hidden", collapsed: "collapsed", href: "href", focused: "focused", selected: "selected" }, outputs: { click: "click" }, host: { properties: { "class.collapsed": "this.collapsed", "class.focused": "this.focused", "class.selected": "this.selected" } }, ngImport: i0, template: "<div (click)=\"handleClick($event)\" *ngIf=\"!hidden\">\n <div\n [ngClass]=\"['menu-item', 'size-'+size, 'variant-'+variant, disabled?'disabled':'']\"\n [class.disabled]=\"disabled\">\n <div class=\"item-checkbox\" *ngIf=\"showCheckbox\">\n <mat-checkbox\n value=\"true\"\n [disabled]=\"disabled\"\n [checked]=\"selected\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"selected=$event.checked\"></mat-checkbox>\n </div>\n <fw-icon *ngIf=\"icon\" class=\"menu-icon\">{{ icon }}</fw-icon>\n <ng-content select=\"fw-avatar\"></ng-content>\n <div class=\"menu-text\" *ngIf=\"label\">\n <h4>{{ label }}</h4>\n <p *ngIf=\"subtitle\" class=\"vision-p4 subtitle\">{{ subtitle }}</p>\n </div>\n <div class=\"key-text vision-p2\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex}:host>div{display:flex;flex:1;text-decoration:none}:host:hover:not(.selected) .menu-item:not(.disabled),:host.focused:not(.selected) .menu-item:not(.disabled){background-color:var(--slate-hover);cursor:pointer}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-icon,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-icon{color:var(--primary-base)}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-text h4,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-text h4{color:var(--typography-base)}:host.selected .menu-item{background-color:var(--primary-hover);cursor:pointer}:host.selected .menu-item .menu-icon{color:var(--primary-base)}:host.selected .menu-item .menu-text h4{color:var(--typography-base)}:host.selected .menu-item.variant-modern:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.selected .menu-item.variant-modern.size-compact:before{height:16px;border-left:3px solid var(--primary-base)}:host.selected .menu-item.variant-button:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-14px;margin-top:10px}:host.selected .menu-item.variant-button.size-compact:before{margin-left:-15px;margin-top:4px;border-left:1px solid var(--primary-base)}:host.variant-modern.selected:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.variant-modern.size-compact.selected:before{height:16px;border-left:3px solid var(--primary-base)}:host.collapsed .menu-item{container-name:menuitem;container-type:size}:host .menu-item{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;flex:1;gap:8px;padding:8px;margin:1px 4px;border-radius:4px;color:var(--typography-muted);min-height:40px;width:100%}:host .menu-item .item-checkbox{padding:0 8px}:host .menu-item .item-checkbox:empty{display:none}:host .menu-item .menu-icon{font-size:18px;white-space:nowrap}:host .menu-item .menu-text{flex:1;overflow:hidden;padding:2px 0}:host .menu-item .menu-text h4{margin:0;color:var(--typography-muted);white-space:nowrap;overflow:hidden}:host .menu-item .menu-text p{margin:0}:host .menu-item .menu-text p.subtitle{color:var(--typography-light)}:host .menu-item .key-text{display:flex;align-items:center;gap:8px;color:var(--typography-light)}:host .menu-item.size-compact{min-height:32px}:host .menu-item.size-compact .menu-text .subtitle{display:none}:host .menu-item.disabled{opacity:.4;cursor:not-allowed}:host .menu-item.variant-modern{padding:8px 16px;border-radius:6px}:host .menu-item.variant-modern.size-compact{min-height:34px}:host .menu-item.variant-button{height:52px;width:60px;flex-direction:column;gap:1px;padding:3px 0;border-radius:8px;display:block;text-align:center;flex:unset;white-space:nowrap;overflow:hidden;container-name:menuitem-button}:host .menu-item.variant-button .menu-icon{font-size:32px}:host .menu-item.variant-button .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}:host .menu-item.variant-button .menu-text .subtitle{display:none}:host .menu-item.variant-button.size-compact{min-height:40px;width:50px}:host .menu-item.variant-button.size-compact .menu-icon{font-size:20px}:host .menu-item.variant-button.size-compact .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}@container menuitem (max-width: 60px){.menu-item{gap:0}.menu-item .menu-text{opacity:0}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconComponent, selector: "fw-icon" }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }] });
|
|
27
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FwMenuItemComponent, decorators: [{
|
|
28
30
|
type: Component,
|
|
29
|
-
args: [{ selector: 'fw-menu-item', template: "<
|
|
31
|
+
args: [{ selector: 'fw-menu-item', template: "<div (click)=\"handleClick($event)\" *ngIf=\"!hidden\">\n <div\n [ngClass]=\"['menu-item', 'size-'+size, 'variant-'+variant, disabled?'disabled':'']\"\n [class.disabled]=\"disabled\">\n <div class=\"item-checkbox\" *ngIf=\"showCheckbox\">\n <mat-checkbox\n value=\"true\"\n [disabled]=\"disabled\"\n [checked]=\"selected\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"selected=$event.checked\"></mat-checkbox>\n </div>\n <fw-icon *ngIf=\"icon\" class=\"menu-icon\">{{ icon }}</fw-icon>\n <ng-content select=\"fw-avatar\"></ng-content>\n <div class=\"menu-text\" *ngIf=\"label\">\n <h4>{{ label }}</h4>\n <p *ngIf=\"subtitle\" class=\"vision-p4 subtitle\">{{ subtitle }}</p>\n </div>\n <div class=\"key-text vision-p2\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex}:host>div{display:flex;flex:1;text-decoration:none}:host:hover:not(.selected) .menu-item:not(.disabled),:host.focused:not(.selected) .menu-item:not(.disabled){background-color:var(--slate-hover);cursor:pointer}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-icon,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-icon{color:var(--primary-base)}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-text h4,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-text h4{color:var(--typography-base)}:host.selected .menu-item{background-color:var(--primary-hover);cursor:pointer}:host.selected .menu-item .menu-icon{color:var(--primary-base)}:host.selected .menu-item .menu-text h4{color:var(--typography-base)}:host.selected .menu-item.variant-modern:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.selected .menu-item.variant-modern.size-compact:before{height:16px;border-left:3px solid var(--primary-base)}:host.selected .menu-item.variant-button:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-14px;margin-top:10px}:host.selected .menu-item.variant-button.size-compact:before{margin-left:-15px;margin-top:4px;border-left:1px solid var(--primary-base)}:host.variant-modern.selected:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.variant-modern.size-compact.selected:before{height:16px;border-left:3px solid var(--primary-base)}:host.collapsed .menu-item{container-name:menuitem;container-type:size}:host .menu-item{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;flex:1;gap:8px;padding:8px;margin:1px 4px;border-radius:4px;color:var(--typography-muted);min-height:40px;width:100%}:host .menu-item .item-checkbox{padding:0 8px}:host .menu-item .item-checkbox:empty{display:none}:host .menu-item .menu-icon{font-size:18px;white-space:nowrap}:host .menu-item .menu-text{flex:1;overflow:hidden;padding:2px 0}:host .menu-item .menu-text h4{margin:0;color:var(--typography-muted);white-space:nowrap;overflow:hidden}:host .menu-item .menu-text p{margin:0}:host .menu-item .menu-text p.subtitle{color:var(--typography-light)}:host .menu-item .key-text{display:flex;align-items:center;gap:8px;color:var(--typography-light)}:host .menu-item.size-compact{min-height:32px}:host .menu-item.size-compact .menu-text .subtitle{display:none}:host .menu-item.disabled{opacity:.4;cursor:not-allowed}:host .menu-item.variant-modern{padding:8px 16px;border-radius:6px}:host .menu-item.variant-modern.size-compact{min-height:34px}:host .menu-item.variant-button{height:52px;width:60px;flex-direction:column;gap:1px;padding:3px 0;border-radius:8px;display:block;text-align:center;flex:unset;white-space:nowrap;overflow:hidden;container-name:menuitem-button}:host .menu-item.variant-button .menu-icon{font-size:32px}:host .menu-item.variant-button .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}:host .menu-item.variant-button .menu-text .subtitle{display:none}:host .menu-item.variant-button.size-compact{min-height:40px;width:50px}:host .menu-item.variant-button.size-compact .menu-icon{font-size:20px}:host .menu-item.variant-button.size-compact .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}@container menuitem (max-width: 60px){.menu-item{gap:0}.menu-item .menu-text{opacity:0}}\n"] }]
|
|
30
32
|
}], propDecorators: { value: [{
|
|
31
33
|
type: Input
|
|
32
34
|
}], variant: [{
|
|
@@ -52,9 +54,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
52
54
|
type: Input
|
|
53
55
|
}], href: [{
|
|
54
56
|
type: Input
|
|
55
|
-
}],
|
|
56
|
-
type: Input
|
|
57
|
-
}], select: [{
|
|
57
|
+
}], click: [{
|
|
58
58
|
type: Output
|
|
59
59
|
}], focused: [{
|
|
60
60
|
type: HostBinding,
|
|
@@ -67,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
67
67
|
}, {
|
|
68
68
|
type: Input
|
|
69
69
|
}] } });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21lbnUvbWVudS1pdGVtL21lbnUtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tZW51L21lbnUtaXRlbS9tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBT3BGLE1BQU0sT0FBTyxtQkFBbUI7SUFMaEM7UUFPVyxZQUFPLEdBQXFDLFNBQVMsQ0FBQztRQUN0RCxTQUFJLEdBQTJCLFNBQVMsQ0FBQztRQUt6QyxpQkFBWSxHQUFhLEtBQUssQ0FBQztRQUMvQixXQUFNLEdBQWEsS0FBSyxDQUFDO1FBR2xDLDREQUE0RDtRQUNsRCxVQUFLLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDNUIsWUFBTyxHQUFhLEtBQUssQ0FBQztRQUN6QixhQUFRLEdBQWEsS0FBSyxDQUFDO0tBWXBFO0lBVkMsV0FBVyxDQUFDLEdBQVU7UUFDcEIsR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDYixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ2xDO1lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQzs7Z0hBekJVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLDRkQ1BoQyx1MkJBdUJBOzJGRGhCYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsY0FBYzs4QkFLZixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDbUMsU0FBUztzQkFBakQsV0FBVzt1QkFBQyxpQkFBaUI7O3NCQUFHLEtBQUs7Z0JBQzdCLElBQUk7c0JBQVosS0FBSztnQkFFSSxLQUFLO3NCQUFkLE1BQU07Z0JBQ2dDLE9BQU87c0JBQTdDLFdBQVc7dUJBQUMsZUFBZTs7c0JBQUcsS0FBSztnQkFDSSxRQUFRO3NCQUEvQyxXQUFXO3VCQUFDLGdCQUFnQjs7c0JBQUcsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1tZW51LWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVudS1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZ3TWVudUl0ZW1Db21wb25lbnQge1xuICBASW5wdXQoKSB2YWx1ZT86IHN0cmluZztcbiAgQElucHV0KCkgdmFyaWFudD86ICdkZWZhdWx0JyB8ICdtb2Rlcm4nIHwgJ2J1dHRvbicgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIHNpemU/OiAnZGVmYXVsdCcgfCAnY29tcGFjdCcgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHN1YnRpdGxlPzogc3RyaW5nO1xuICBASW5wdXQoKSBpY29uPzogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNhYmxlZD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNob3dDaGVja2JveD86IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaGlkZGVuPzogYm9vbGVhbiA9IGZhbHNlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvbGxhcHNlZCcpIEBJbnB1dCgpIGNvbGxhcHNlZD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGhyZWY/OiBzdHJpbmc7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuICBAT3V0cHV0KCkgY2xpY2s6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9jdXNlZCcpIEBJbnB1dCgpIGZvY3VzZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2VsZWN0ZWQnKSBASW5wdXQoKSBzZWxlY3RlZD86IGJvb2xlYW4gPSBmYWxzZTtcblxuICBoYW5kbGVDbGljayhldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgaWYgKHRoaXMuaHJlZikge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHRoaXMuaHJlZjtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2xpY2suZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiAoY2xpY2spPVwiaGFuZGxlQ2xpY2soJGV2ZW50KVwiICpuZ0lmPVwiIWhpZGRlblwiPlxuICA8ZGl2XG4gICAgW25nQ2xhc3NdPVwiWydtZW51LWl0ZW0nLCAnc2l6ZS0nK3NpemUsICd2YXJpYW50LScrdmFyaWFudCwgZGlzYWJsZWQ/J2Rpc2FibGVkJzonJ11cIlxuICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJpdGVtLWNoZWNrYm94XCIgKm5nSWY9XCJzaG93Q2hlY2tib3hcIj5cbiAgICAgIDxtYXQtY2hlY2tib3hcbiAgICAgICAgdmFsdWU9XCJ0cnVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0ZWRcIlxuICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgKGNoYW5nZSk9XCJzZWxlY3RlZD0kZXZlbnQuY2hlY2tlZFwiPjwvbWF0LWNoZWNrYm94PlxuICAgIDwvZGl2PlxuICAgIDxmdy1pY29uICpuZ0lmPVwiaWNvblwiIGNsYXNzPVwibWVudS1pY29uXCI+e3sgaWNvbiB9fTwvZnctaWNvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmdy1hdmF0YXJcIj48L25nLWNvbnRlbnQ+XG4gICAgPGRpdiBjbGFzcz1cIm1lbnUtdGV4dFwiICpuZ0lmPVwibGFiZWxcIj5cbiAgICAgIDxoND57eyBsYWJlbCB9fTwvaDQ+XG4gICAgICA8cCAqbmdJZj1cInN1YnRpdGxlXCIgY2xhc3M9XCJ2aXNpb24tcDQgc3VidGl0bGVcIj57eyBzdWJ0aXRsZSB9fTwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwia2V5LXRleHQgdmlzaW9uLXAyXCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -34,7 +34,7 @@ export class FwMenuComponent {
|
|
|
34
34
|
}
|
|
35
35
|
ngAfterContentInit() {
|
|
36
36
|
this.menuItems.forEach(item => {
|
|
37
|
-
const sub = item.
|
|
37
|
+
const sub = item.click.subscribe(value => this.handleSelect(value));
|
|
38
38
|
this.subscriptions.push(sub);
|
|
39
39
|
});
|
|
40
40
|
this.updateLayout();
|
|
@@ -106,7 +106,7 @@ FwMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versio
|
|
|
106
106
|
provide: NG_VALUE_ACCESSOR,
|
|
107
107
|
useExisting: FwMenuComponent,
|
|
108
108
|
multi: true,
|
|
109
|
-
}], queries: [{ propertyName: "menuItems", predicate: FwMenuItemComponent }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"fw-menu\"\n cdkMenu\n [@openClose]=\"{value: collapsed?'closed':'open', params: {openWidth: openWidth, collapsedWidth: collapsedWidth}}\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;max-height:100%}\n"], dependencies: [{ kind: "directive", type: i1.CdkMenu, selector: "[cdkMenu]", outputs: ["closed"], exportAs: ["cdkMenu"] }], animations: [
|
|
109
|
+
}], queries: [{ propertyName: "menuItems", predicate: FwMenuItemComponent }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"fw-menu\"\n cdkMenu\n [@openClose]=\"{value: collapsed?'closed':'open', params: {openWidth: openWidth || 'inherit', collapsedWidth: collapsedWidth || '44px'}}\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;max-height:100%}\n"], dependencies: [{ kind: "directive", type: i1.CdkMenu, selector: "[cdkMenu]", outputs: ["closed"], exportAs: ["cdkMenu"] }], animations: [
|
|
110
110
|
trigger('openClose', [
|
|
111
111
|
// ...
|
|
112
112
|
state('open', style({
|
|
@@ -139,7 +139,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
139
139
|
animate('.33s ease-in-out'),
|
|
140
140
|
]),
|
|
141
141
|
]),
|
|
142
|
-
], template: "<div\n class=\"fw-menu\"\n cdkMenu\n [@openClose]=\"{value: collapsed?'closed':'open', params: {openWidth: openWidth, collapsedWidth: collapsedWidth}}\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;max-height:100%}\n"] }]
|
|
142
|
+
], template: "<div\n class=\"fw-menu\"\n cdkMenu\n [@openClose]=\"{value: collapsed?'closed':'open', params: {openWidth: openWidth || 'inherit', collapsedWidth: collapsedWidth || '44px'}}\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;max-height:100%}\n"] }]
|
|
143
143
|
}], propDecorators: { disabled: [{
|
|
144
144
|
type: Input
|
|
145
145
|
}], size: [{
|
|
@@ -162,4 +162,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
162
162
|
type: ContentChildren,
|
|
163
163
|
args: [FwMenuItemComponent]
|
|
164
164
|
}] } });
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsS0FBSyxHQUtOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBMEJ0RSxNQUFNLE9BQU8sZUFBZTtJQXhCNUI7UUF5QlcsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixTQUFJLEdBQTJCLFNBQVMsQ0FBQztRQUN6QyxZQUFPLEdBQXFDLFNBQVMsQ0FBQztRQUN0RCxjQUFTLEdBQWEsS0FBSyxDQUFDO1FBQzVCLGdCQUFXLEdBQWEsS0FBSyxDQUFDO1FBQzlCLGdCQUFXLEdBQWEsS0FBSyxDQUFDO1FBQzlCLGNBQVMsR0FBWSxTQUFTLENBQUM7UUFDL0IsbUJBQWMsR0FBWSxNQUFNLENBQUM7UUFHbEMsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFHakMsNkRBQTZEO1FBQzdELGFBQVEsR0FBRyxDQUFDLEtBQXdCLEVBQVEsRUFBRTtZQUM1QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDO1FBRUYsY0FBUyxHQUFHLEdBQVMsRUFBRTtRQUN2QixDQUFDLENBQUM7UUFHTSxrQkFBYSxHQUFtQixFQUFFLENBQUM7S0FxRjVDO0lBbkZDLDZEQUE2RDtJQUM3RCxX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c2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEZ3TWVudUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL21lbnUtaXRlbS9tZW51LWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IEZ3TWVudUNvbXBvbmVudCxcbiAgICBtdWx0aTogdHJ1ZSxcbiAgfV0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdvcGVuQ2xvc2UnLCBbXG4gICAgICAvLyAuLi5cbiAgICAgIHN0YXRlKCdvcGVuJywgc3R5bGUoe1xuICAgICAgICB3aWR0aDogJ3t7b3BlbldpZHRofX0nLFxuICAgICAgfSksIHsgcGFyYW1zOiB7IG9wZW5XaWR0aDogJzIwMHB4JyB9IH0pLFxuICAgICAgc3RhdGUoJ2Nsb3NlZCcsIHN0eWxlKHtcbiAgICAgICAgd2lkdGg6ICd7e2NvbGxhcHNlZFdpZHRofX0nLFxuICAgICAgfSksIHsgcGFyYW1zOiB7IGNvbGxhcHNlZFdpZHRoOiAnNDRweCcgfSB9KSxcbiAgICAgIHRyYW5zaXRpb24oJ29wZW4gPD0+IGNsb3NlZCcsIFtcbiAgICAgICAgYW5pbWF0ZSgnLjMzcyBlYXNlLWluLW91dCcpLFxuICAgICAgXSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZ3TWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNpemU/OiAnZGVmYXVsdCcgfCAnY29tcGFjdCcgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIHZhcmlhbnQ/OiAnZGVmYXVsdCcgfCAnbW9kZXJuJyB8ICdidXR0b24nID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSBjb2xsYXBzZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIG11bHRpU2VsZWN0PzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB1c2VDaGVja2JveD86IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgb3BlbldpZHRoPzogc3RyaW5nID0gJ2luaGVyaXQnO1xuICBASW5wdXQoKSBjb2xsYXBzZWRXaWR0aD86IHN0cmluZyA9ICc0NHB4JztcbiAgQElucHV0KCkgdmFsdWU/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgQENvbnRlbnRDaGlsZHJlbihGd01lbnVJdGVtQ29tcG9uZW50KSBtZW51SXRlbXM6IFF1ZXJ5TGlzdDxGd01lbnVJdGVtQ29tcG9uZW50PjtcbiAgcHJpdmF0ZSBfZmlsdGVyVGV4dDogc3RyaW5nID0gJyc7XG5cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIG9uQ2hhbmdlID0gKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHZvaWQgPT4ge1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH07XG5cbiAgb25Ub3VjaGVkID0gKCk6IHZvaWQgPT4ge1xuICB9O1xuXG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHN1YnNjcmlwdGlvbiBvZiB0aGlzLnN1YnNjcmlwdGlvbnMpIHtcbiAgICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1lbnVJdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgY29uc3Qgc3ViID0gaXRlbS5zZWxlY3Quc3Vic2NyaWJlKHZhbHVlID0+IHRoaXMuaGFuZGxlU2VsZWN0KHZhbHVlKSk7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWIpO1xuICAgIH0pO1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgc2V0RmlsdGVyKGZpbHRlclRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX2ZpbHRlclRleHQgPSBmaWx0ZXJUZXh0O1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICBoYW5kbGVTZWxlY3QodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0KSB7XG4gICAgICBjb25zdCBuZXdWYWx1ZXMgPSBbLi4udGhpcy52YWx1ZV07XG4gICAgICBpZiAobmV3VmFsdWVzLmluZGV4T2YodmFsdWUpID49IDApIHtcbiAgICAgICAgbmV3VmFsdWVzLnNwbGljZShuZXdWYWx1ZXMuaW5kZXhPZih2YWx1ZSksIDEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3VmFsdWVzLnB1c2godmFsdWUpO1xuICAgICAgfVxuICAgICAgdGhpcy53cml0ZVZhbHVlKG5ld1ZhbHVlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlTGF5b3V0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1lbnVJdGVtcykge1xuICAgICAgdGhpcy5tZW51SXRlbXMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2l6ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaXRlbS5zaXplID0gdGhpcy5zaXplO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnZhcmlhbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGl0ZW0udmFyaWFudCA9IHRoaXMudmFyaWFudDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5jb2xsYXBzZWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGl0ZW0uY29sbGFwc2VkID0gdGhpcy5jb2xsYXBzZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudXNlQ2hlY2tib3ggIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGl0ZW0uc2hvd0NoZWNrYm94ID0gdGhpcy51c2VDaGVja2JveDtcbiAgICAgICAgfVxuICAgICAgICBpdGVtLmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZDtcbiAgICAgICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgICAgICBpdGVtLnNlbGVjdGVkID0gdGhpcy52YWx1ZSA9PT0gaXRlbS52YWx1ZSB8fCB0aGlzLnZhbHVlLmluY2x1ZGVzKGl0ZW0udmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9maWx0ZXJUZXh0ICYmIHRoaXMuX2ZpbHRlclRleHQubGVuZ3RoID4gMCAmJiBpdGVtLmxhYmVsKSB7XG4gICAgICAgICAgaXRlbS5oaWRkZW4gPSAhaXRlbS5sYWJlbC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuX2ZpbHRlclRleHQudG9Mb3dlckNhc2UoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXRlbS5oaWRkZW4gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZnctbWVudVwiXG4gIGNka01lbnVcbiAgW0BvcGVuQ2xvc2VdPVwie3ZhbHVlOiBjb2xsYXBzZWQ/J2Nsb3NlZCc6J29wZW4nLCBwYXJhbXM6IHtvcGVuV2lkdGg6IG9wZW5XaWR0aCwgY29sbGFwc2VkV2lkdGg6IGNvbGxhcHNlZFdpZHRofX1cIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsS0FBSyxHQUtOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBMEJ0RSxNQUFNLE9BQU8sZUFBZTtJQXhCNUI7UUF5QlcsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixTQUFJLEdBQTJCLFNBQVMsQ0FBQztRQUN6QyxZQUFPLEdBQXFDLFNBQVMsQ0FBQztRQUN0RCxjQUFTLEdBQWEsS0FBSyxDQUFDO1FBQzVCLGdCQUFXLEdBQWEsS0FBSyxDQUFDO1FBQzlCLGdCQUFXLEdBQWEsS0FBSyxDQUFDO1FBQzlCLGNBQVMsR0FBWSxTQUFTLENBQUM7UUFDL0IsbUJBQWMsR0FBWSxNQUFNLENBQUM7UUFHbEMsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFHakMsNkRBQTZEO1FBQzdELGFBQVEsR0FBRyxDQUFDLEtBQXdCLEVBQVEsRUFBRTtZQUM1QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDO1FBRUYsY0FBUyxHQUFHLEdBQVMsRUFBRTtRQUN2QixDQUFDLENBQUM7UUFHTSxrQkFBYSxHQUFtQixFQUFFLENBQUM7S0FxRjVDO0lBbkZDLDZEQUE2RDtJQUM3RCxX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c2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEZ3TWVudUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL21lbnUtaXRlbS9tZW51LWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IEZ3TWVudUNvbXBvbmVudCxcbiAgICBtdWx0aTogdHJ1ZSxcbiAgfV0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdvcGVuQ2xvc2UnLCBbXG4gICAgICAvLyAuLi5cbiAgICAgIHN0YXRlKCdvcGVuJywgc3R5bGUoe1xuICAgICAgICB3aWR0aDogJ3t7b3BlbldpZHRofX0nLFxuICAgICAgfSksIHsgcGFyYW1zOiB7IG9wZW5XaWR0aDogJzIwMHB4JyB9IH0pLFxuICAgICAgc3RhdGUoJ2Nsb3NlZCcsIHN0eWxlKHtcbiAgICAgICAgd2lkdGg6ICd7e2NvbGxhcHNlZFdpZHRofX0nLFxuICAgICAgfSksIHsgcGFyYW1zOiB7IGNvbGxhcHNlZFdpZHRoOiAnNDRweCcgfSB9KSxcbiAgICAgIHRyYW5zaXRpb24oJ29wZW4gPD0+IGNsb3NlZCcsIFtcbiAgICAgICAgYW5pbWF0ZSgnLjMzcyBlYXNlLWluLW91dCcpLFxuICAgICAgXSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZ3TWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNpemU/OiAnZGVmYXVsdCcgfCAnY29tcGFjdCcgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIHZhcmlhbnQ/OiAnZGVmYXVsdCcgfCAnbW9kZXJuJyB8ICdidXR0b24nID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSBjb2xsYXBzZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIG11bHRpU2VsZWN0PzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB1c2VDaGVja2JveD86IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgb3BlbldpZHRoPzogc3RyaW5nID0gJ2luaGVyaXQnO1xuICBASW5wdXQoKSBjb2xsYXBzZWRXaWR0aD86IHN0cmluZyA9ICc0NHB4JztcbiAgQElucHV0KCkgdmFsdWU/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgQENvbnRlbnRDaGlsZHJlbihGd01lbnVJdGVtQ29tcG9uZW50KSBtZW51SXRlbXM6IFF1ZXJ5TGlzdDxGd01lbnVJdGVtQ29tcG9uZW50PjtcbiAgcHJpdmF0ZSBfZmlsdGVyVGV4dDogc3RyaW5nID0gJyc7XG5cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIG9uQ2hhbmdlID0gKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHZvaWQgPT4ge1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH07XG5cbiAgb25Ub3VjaGVkID0gKCk6IHZvaWQgPT4ge1xuICB9O1xuXG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHN1YnNjcmlwdGlvbiBvZiB0aGlzLnN1YnNjcmlwdGlvbnMpIHtcbiAgICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1lbnVJdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgY29uc3Qgc3ViID0gaXRlbS5jbGljay5zdWJzY3JpYmUodmFsdWUgPT4gdGhpcy5oYW5kbGVTZWxlY3QodmFsdWUpKTtcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHN1Yik7XG4gICAgfSk7XG4gICAgdGhpcy51cGRhdGVMYXlvdXQoKTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVMYXlvdXQoKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICBzZXRGaWx0ZXIoZmlsdGVyVGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5fZmlsdGVyVGV4dCA9IGZpbHRlclRleHQ7XG4gICAgdGhpcy51cGRhdGVMYXlvdXQoKTtcbiAgfVxuXG4gIGhhbmRsZVNlbGVjdCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3QpIHtcbiAgICAgIGNvbnN0IG5ld1ZhbHVlcyA9IFsuLi50aGlzLnZhbHVlXTtcbiAgICAgIGlmIChuZXdWYWx1ZXMuaW5kZXhPZih2YWx1ZSkgPj0gMCkge1xuICAgICAgICBuZXdWYWx1ZXMuc3BsaWNlKG5ld1ZhbHVlcy5pbmRleE9mKHZhbHVlKSwgMSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdWYWx1ZXMucHVzaCh2YWx1ZSk7XG4gICAgICB9XG4gICAgICB0aGlzLndyaXRlVmFsdWUobmV3VmFsdWVzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53cml0ZVZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVMYXlvdXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWVudUl0ZW1zKSB7XG4gICAgICB0aGlzLm1lbnVJdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBpZiAodGhpcy5zaXplICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBpdGVtLnNpemUgPSB0aGlzLnNpemU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudmFyaWFudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaXRlbS52YXJpYW50ID0gdGhpcy52YXJpYW50O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmNvbGxhcHNlZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaXRlbS5jb2xsYXBzZWQgPSB0aGlzLmNvbGxhcHNlZDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy51c2VDaGVja2JveCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaXRlbS5zaG93Q2hlY2tib3ggPSB0aGlzLnVzZUNoZWNrYm94O1xuICAgICAgICB9XG4gICAgICAgIGl0ZW0uZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkO1xuICAgICAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICAgIGl0ZW0uc2VsZWN0ZWQgPSB0aGlzLnZhbHVlID09PSBpdGVtLnZhbHVlIHx8IHRoaXMudmFsdWUuaW5jbHVkZXMoaXRlbS52YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2ZpbHRlclRleHQgJiYgdGhpcy5fZmlsdGVyVGV4dC5sZW5ndGggPiAwICYmIGl0ZW0ubGFiZWwpIHtcbiAgICAgICAgICBpdGVtLmhpZGRlbiA9ICFpdGVtLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5fZmlsdGVyVGV4dC50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtLmhpZGRlbiA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJmdy1tZW51XCJcbiAgY2RrTWVudVxuICBbQG9wZW5DbG9zZV09XCJ7dmFsdWU6IGNvbGxhcHNlZD8nY2xvc2VkJzonb3BlbicsIHBhcmFtczoge29wZW5XaWR0aDogb3BlbldpZHRoIHx8ICdpbmhlcml0JywgY29sbGFwc2VkV2lkdGg6IGNvbGxhcHNlZFdpZHRoIHx8ICc0NHB4J319XCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|