@taiga-ui/core 4.11.0 → 4.13.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/classes/accessors.d.ts +1 -1
- package/classes/driver.d.ts +3 -3
- package/components/alert/alert.tokens.d.ts +2 -0
- package/components/dialog/dialog.factory.d.ts +12 -0
- package/components/dialog/index.d.ts +1 -0
- package/components/notification/notification.directive.d.ts +1 -1
- package/components/root/root.component.d.ts +4 -2
- package/components/textfield/textfield.component.d.ts +1 -0
- package/directives/appearance/appearance.directive.d.ts +1 -1
- package/directives/appearance/appearance.options.d.ts +1 -1
- package/directives/dropdown/dropdown-portal.directive.d.ts +3 -0
- package/directives/dropdown/dropdown.driver.d.ts +4 -3
- package/directives/dropdown/dropdowns.component.d.ts +1 -1
- package/directives/hint/hint-hover.directive.d.ts +1 -0
- package/directives/hint/hint-position.directive.d.ts +2 -1
- package/directives/hint/hint.component.d.ts +8 -0
- package/directives/index.d.ts +1 -0
- package/directives/popup/index.d.ts +2 -0
- package/directives/popup/popup.directive.d.ts +11 -0
- package/directives/popup/popup.service.d.ts +6 -0
- package/esm2022/animations/animations.mjs +3 -3
- package/esm2022/classes/accessors.mjs +1 -1
- package/esm2022/classes/driver.mjs +8 -5
- package/esm2022/components/alert/alert.component.mjs +3 -3
- package/esm2022/components/alert/alert.tokens.mjs +12 -1
- package/esm2022/components/calendar/calendar.component.mjs +5 -3
- package/esm2022/components/dialog/dialog.component.mjs +3 -3
- package/esm2022/components/dialog/dialog.factory.mjs +12 -0
- package/esm2022/components/dialog/dialogs.component.mjs +3 -3
- package/esm2022/components/dialog/index.mjs +2 -1
- package/esm2022/components/link/link.directive.mjs +2 -2
- package/esm2022/components/link/link.options.mjs +2 -2
- package/esm2022/components/notification/notification.directive.mjs +5 -5
- package/esm2022/components/notification/notification.options.mjs +7 -3
- package/esm2022/components/root/root.component.mjs +13 -8
- package/esm2022/components/textfield/textfield.component.mjs +6 -4
- package/esm2022/directives/appearance/appearance.directive.mjs +2 -2
- package/esm2022/directives/appearance/appearance.options.mjs +1 -1
- package/esm2022/directives/dropdown/dropdown-open.directive.mjs +3 -3
- package/esm2022/directives/dropdown/dropdown-portal.directive.mjs +4 -1
- package/esm2022/directives/dropdown/dropdown.driver.mjs +7 -8
- package/esm2022/directives/dropdown/dropdowns.component.mjs +9 -9
- package/esm2022/directives/hint/hint-hover.directive.mjs +8 -2
- package/esm2022/directives/hint/hint-options.directive.mjs +2 -1
- package/esm2022/directives/hint/hint-position.directive.mjs +16 -12
- package/esm2022/directives/hint/hint.component.mjs +20 -14
- package/esm2022/directives/index.mjs +2 -1
- package/esm2022/directives/popup/index.mjs +3 -0
- package/esm2022/directives/popup/popup.directive.mjs +31 -0
- package/esm2022/directives/popup/popup.service.mjs +15 -0
- package/esm2022/directives/popup/taiga-ui-core-directives-popup.mjs +5 -0
- package/esm2022/directives/surface/surface.directive.mjs +2 -2
- package/esm2022/directives/title/title.directive.mjs +2 -2
- package/esm2022/pipes/flag/flag.pipe.mjs +2 -1
- package/esm2022/services/position.service.mjs +2 -2
- package/esm2022/tokens/i18n.mjs +5 -1
- package/esm2022/utils/miscellaneous/to-animation-options.mjs +3 -2
- package/fesm2022/taiga-ui-core-animations.mjs +2 -2
- package/fesm2022/taiga-ui-core-animations.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-classes.mjs +7 -4
- package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-alert.mjs +14 -3
- package/fesm2022/taiga-ui-core-components-alert.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-calendar.mjs +4 -2
- package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-dialog.mjs +16 -7
- package/fesm2022/taiga-ui-core-components-dialog.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-link.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-notification.mjs +10 -6
- package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-root.mjs +12 -7
- package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-textfield.mjs +4 -3
- package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-appearance.mjs +2 -2
- package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-dropdown.mjs +18 -16
- package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-hint.mjs +40 -25
- package/fesm2022/taiga-ui-core-directives-hint.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-popup.mjs +48 -0
- package/fesm2022/taiga-ui-core-directives-popup.mjs.map +1 -0
- package/fesm2022/taiga-ui-core-directives-surface.mjs +2 -2
- package/fesm2022/taiga-ui-core-directives-title.mjs +2 -2
- package/fesm2022/taiga-ui-core-directives-title.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives.mjs +1 -0
- package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-flag.mjs +1 -0
- package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-services.mjs +1 -1
- package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-tokens.mjs +5 -1
- package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +2 -1
- package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
- package/package.json +12 -6
- package/styles/components/link.less +2 -0
- package/styles/components/notification.less +60 -14
- package/styles/components/title.less +1 -0
- package/styles/mixins/appearance.less +38 -11
- package/styles/mixins/appearance.scss +27 -0
- package/styles/mixins/mixins.less +5 -3
- package/styles/mixins/wrapper.less +4 -2
- package/styles/theme/appearance/action.less +48 -0
- package/styles/theme/appearance/flat.less +23 -0
- package/styles/theme/appearance/floating.less +3 -3
- package/styles/theme/appearance/opposite.less +2 -6
- package/styles/theme/appearance/outline.less +38 -0
- package/styles/theme/appearance/primary.less +30 -0
- package/styles/theme/appearance/secondary.less +9 -20
- package/styles/theme/appearance/status.less +8 -4
- package/styles/theme/appearance.less +2 -2
- package/styles/theme/wrapper.less +22 -64
- package/tokens/i18n.d.ts +4 -0
- package/utils/miscellaneous/to-animation-options.d.ts +1 -1
- package/styles/theme/appearance/icon.less +0 -38
- package/styles/theme/appearance/link.less +0 -11
package/classes/accessors.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export declare abstract class TuiAccessor {
|
|
|
4
4
|
abstract readonly type: string;
|
|
5
5
|
}
|
|
6
6
|
export declare abstract class TuiPositionAccessor extends TuiAccessor {
|
|
7
|
-
abstract getPosition(rect: DOMRect): TuiPoint;
|
|
7
|
+
abstract getPosition(rect: DOMRect, element?: HTMLElement): TuiPoint;
|
|
8
8
|
}
|
|
9
9
|
export declare abstract class TuiRectAccessor extends TuiAccessor {
|
|
10
10
|
abstract getClientRect(): DOMRect;
|
package/classes/driver.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AfterViewInit, ExistingProvider, Type } from '@angular/core';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare abstract class TuiDriver extends Observable<boolean> {
|
|
5
5
|
abstract readonly type: string;
|
|
6
6
|
}
|
|
7
7
|
export declare function tuiAsDriver(driver: Type<TuiDriver>): ExistingProvider;
|
|
8
|
-
export declare abstract class TuiDriverDirective implements
|
|
8
|
+
export declare abstract class TuiDriverDirective implements AfterViewInit {
|
|
9
9
|
abstract type: string;
|
|
10
10
|
private readonly destroyRef;
|
|
11
11
|
private readonly drivers;
|
|
12
12
|
private readonly vehicles;
|
|
13
|
-
|
|
13
|
+
ngAfterViewInit(): void;
|
|
14
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDriverDirective, never>;
|
|
15
15
|
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDriverDirective, never, never, {}, {}, never, never, false, never>;
|
|
16
16
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { FactoryProvider } from '@angular/core';
|
|
1
2
|
import { BehaviorSubject } from 'rxjs';
|
|
2
3
|
import type { TuiAlertOptions } from './alert.interfaces';
|
|
3
4
|
export declare const TUI_ALERT_DEFAULT_OPTIONS: Omit<TuiAlertOptions, 'appearance' | 'icon'>;
|
|
@@ -8,3 +9,4 @@ export declare const TUI_ALERTS: import("@angular/core").InjectionToken<Behavior
|
|
|
8
9
|
* Grouping alerts by their component
|
|
9
10
|
*/
|
|
10
11
|
export declare const TUI_ALERTS_GROUPED: import("@angular/core").InjectionToken<import("rxjs").Observable<(readonly any[])[]>>;
|
|
12
|
+
export declare function tuiAlertOptionsProvider(options: Partial<TuiAlertOptions>): FactoryProvider;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Observable } from 'rxjs';
|
|
2
|
+
import type { TuiDialogContext, TuiDialogOptions } from './dialog.interfaces';
|
|
3
|
+
type SingleUnionOrNever<T, U = T> = [T] extends [never] ? never : T extends U ? [U] extends [T] ? T : never : never;
|
|
4
|
+
type ReplaceAny<T> = 0 extends T & 1 ? void : T;
|
|
5
|
+
type ContextKeys<T> = {
|
|
6
|
+
[K in keyof T]: ReplaceAny<T[K]> extends TuiDialogContext<any, any> ? K : never;
|
|
7
|
+
}[keyof T];
|
|
8
|
+
type AssertNotMultipleContexts<T, K extends keyof T> = [K] extends [never] ? new () => T : [SingleUnionOrNever<K>] extends [never] ? 'Component has multiple context. Cannot determine the type...' : new () => T;
|
|
9
|
+
type ExtractDialogData<T, K extends keyof T = ContextKeys<T>> = [K] extends [never] ? void : [SingleUnionOrNever<K>] extends [never] ? never : T[K] extends TuiDialogContext<any, infer D> ? D : void;
|
|
10
|
+
type ExtractDialogResult<T, K extends keyof T = ContextKeys<T>> = [K] extends [never] ? void : [SingleUnionOrNever<K>] extends [never] ? never : T[K] extends TuiDialogContext<infer R, any> ? R : void;
|
|
11
|
+
export declare function tuiDialog<T, K extends ContextKeys<T>, D extends ExtractDialogData<T, K>, R extends ExtractDialogResult<T, K>>(component: AssertNotMultipleContexts<T, K>, options?: Partial<Omit<TuiDialogOptions<D>, 'data'>>): (data: D) => Observable<R>;
|
|
12
|
+
export {};
|
|
@@ -8,7 +8,7 @@ export declare class TuiNotification implements OnChanges, OnInit {
|
|
|
8
8
|
private readonly options;
|
|
9
9
|
protected readonly nothing: undefined;
|
|
10
10
|
protected readonly icons: TuiIcons;
|
|
11
|
-
appearance: "info" | "
|
|
11
|
+
appearance: "info" | "positive" | "negative" | "warning" | "neutral" | "accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "outline-destructive" | "outline-grayscale" | "outline" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | (Record<never, never> & string);
|
|
12
12
|
icon: TuiStringHandler<string> | string;
|
|
13
13
|
size: "m" | "l" | "s";
|
|
14
14
|
ngOnInit(): void;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { TuiPortals } from '@taiga-ui/cdk/classes';
|
|
1
2
|
import * as i0 from "@angular/core";
|
|
2
3
|
import * as i1 from "@taiga-ui/cdk/directives/platform";
|
|
3
|
-
|
|
4
|
+
import * as i2 from "@taiga-ui/cdk/directives/visual-viewport";
|
|
5
|
+
export declare class TuiRoot extends TuiPortals {
|
|
4
6
|
protected readonly reducedMotion: boolean;
|
|
5
7
|
protected readonly duration: number;
|
|
6
8
|
protected readonly isMobileRes: import("@angular/core").Signal<boolean>;
|
|
@@ -8,5 +10,5 @@ export declare class TuiRoot {
|
|
|
8
10
|
protected readonly scrollbars: import("@angular/core").Signal<boolean>;
|
|
9
11
|
constructor();
|
|
10
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiRoot, never>;
|
|
11
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiRoot, "tui-root", never, {}, {}, never, ["*", "tuiOverContent", "tuiOverDialogs", "tuiOverAlerts", "tuiOverDropdowns", "tuiOverHints"], true, [{ directive: typeof i1.TuiPlatform; inputs: {}; outputs: {}; }]>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiRoot, "tui-root", never, {}, {}, never, ["*", "tuiOverContent", "tuiOverDialogs", "tuiOverAlerts", "tuiOverDropdowns", "tuiOverHints"], true, [{ directive: typeof i1.TuiPlatform; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiVisualViewport; inputs: {}; outputs: {}; }]>;
|
|
12
14
|
}
|
|
@@ -19,6 +19,7 @@ export declare class TuiTextfieldComponent<T> implements TuiDataListHost<T> {
|
|
|
19
19
|
protected readonly label?: ElementRef<HTMLElement>;
|
|
20
20
|
protected readonly control?: NgControl;
|
|
21
21
|
protected readonly icons: import("@taiga-ui/core/tokens").TuiCommonIcons;
|
|
22
|
+
protected readonly clear: import("@angular/core").Signal<string | undefined>;
|
|
22
23
|
protected computedFiller: import("@angular/core").Signal<string>;
|
|
23
24
|
protected showFiller: import("@angular/core").Signal<boolean>;
|
|
24
25
|
readonly vcr?: ViewContainerRef;
|
|
@@ -5,7 +5,7 @@ export declare class TuiAppearance {
|
|
|
5
5
|
private readonly el;
|
|
6
6
|
protected readonly nothing: undefined;
|
|
7
7
|
protected readonly modes: import("@angular/core").Signal<string | null>;
|
|
8
|
-
readonly appearance: import("@angular/core").WritableSignal<"accent" | "destructive" | "
|
|
8
|
+
readonly appearance: import("@angular/core").WritableSignal<"accent" | "action-destructive" | "action-grayscale" | "action" | "flat-destructive" | "flat-grayscale" | "flat" | "floating" | "glass" | "icon" | "info" | "negative" | "neutral" | "outline-destructive" | "outline-grayscale" | "outline" | "positive" | "primary-destructive" | "primary-grayscale" | "primary" | "secondary-destructive" | "secondary-grayscale" | "secondary" | "textfield" | "warning" | (Record<never, never> & string)>;
|
|
9
9
|
readonly state: import("@angular/core").WritableSignal<TuiInteractiveState | null>;
|
|
10
10
|
readonly focus: import("@angular/core").WritableSignal<boolean | null>;
|
|
11
11
|
readonly mode: import("@angular/core").WritableSignal<string | readonly string[] | null>;
|
|
@@ -3,7 +3,7 @@ import type { TuiLooseUnion } from '@taiga-ui/cdk/types';
|
|
|
3
3
|
/**
|
|
4
4
|
* Bundled appearances for autocomplete purposes, not exported on purpose
|
|
5
5
|
*/
|
|
6
|
-
type Appearance = TuiLooseUnion<'accent' | 'destructive' | '
|
|
6
|
+
type Appearance = TuiLooseUnion<'accent' | 'action-destructive' | 'action-grayscale' | 'action' | 'flat-destructive' | 'flat-grayscale' | 'flat' | 'floating' | 'glass' | 'icon' | 'info' | 'negative' | 'neutral' | 'outline-destructive' | 'outline-grayscale' | 'outline' | 'positive' | 'primary-destructive' | 'primary-grayscale' | 'primary' | 'secondary-destructive' | 'secondary-grayscale' | 'secondary' | 'textfield' | 'warning'>;
|
|
7
7
|
export interface TuiAppearanceOptions {
|
|
8
8
|
readonly appearance: Appearance;
|
|
9
9
|
}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import type { OnDestroy } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated use {@link TuiPopup} directive instead
|
|
5
|
+
*/
|
|
3
6
|
export declare class TuiDropdownPortal implements OnDestroy {
|
|
4
7
|
private readonly template;
|
|
5
8
|
private readonly service;
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import type { TuiDriver } from '@taiga-ui/core/classes';
|
|
2
2
|
import { TuiDriverDirective } from '@taiga-ui/core/classes';
|
|
3
|
-
import {
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class TuiDropdownDriver extends
|
|
5
|
+
export declare class TuiDropdownDriver extends BehaviorSubject<boolean> implements TuiDriver {
|
|
6
6
|
readonly type = "dropdown";
|
|
7
|
+
constructor();
|
|
7
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownDriver, never>;
|
|
8
9
|
static ɵprov: i0.ɵɵInjectableDeclaration<TuiDropdownDriver>;
|
|
9
10
|
}
|
|
10
11
|
export declare class TuiDropdownDriverDirective extends TuiDriverDirective {
|
|
11
12
|
readonly type = "dropdown";
|
|
12
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownDriverDirective, never>;
|
|
13
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownDriverDirective,
|
|
14
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownDriverDirective, never, never, {}, {}, never, never, true, never>;
|
|
14
15
|
}
|
|
@@ -5,5 +5,5 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
*/
|
|
6
6
|
export declare class TuiDropdowns extends TuiPortals {
|
|
7
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdowns, never>;
|
|
8
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdowns, "tui-dropdowns", never, {}, {}, never,
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdowns, "tui-dropdowns", never, {}, {}, never, never, true, never>;
|
|
9
9
|
}
|
|
@@ -2,6 +2,7 @@ import { TuiDriver } from '@taiga-ui/core/classes';
|
|
|
2
2
|
import type { TuiHintOptions } from './hint-options.directive';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare class TuiHintHover extends TuiDriver {
|
|
5
|
+
private readonly isMobile;
|
|
5
6
|
private readonly el;
|
|
6
7
|
private readonly hovered$;
|
|
7
8
|
private readonly options;
|
|
@@ -3,12 +3,13 @@ import type { TuiPoint } from '@taiga-ui/core/types';
|
|
|
3
3
|
import type { TuiHintOptions } from './hint-options.directive';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class TuiHintPosition extends TuiPositionAccessor {
|
|
6
|
+
private readonly offset;
|
|
6
7
|
private readonly viewport;
|
|
7
8
|
private readonly accessor;
|
|
8
9
|
private readonly points;
|
|
9
10
|
direction: TuiHintOptions['direction'];
|
|
10
11
|
readonly type = "hint";
|
|
11
|
-
getPosition(
|
|
12
|
+
getPosition(rect: DOMRect, el?: HTMLElement): TuiPoint;
|
|
12
13
|
private get fallback();
|
|
13
14
|
private checkPosition;
|
|
14
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintPosition, never>;
|
|
@@ -10,10 +10,18 @@ export declare class TuiHintComponent<C = any> {
|
|
|
10
10
|
private readonly hover;
|
|
11
11
|
private readonly vvs;
|
|
12
12
|
private readonly viewport;
|
|
13
|
+
protected readonly desktop: {
|
|
14
|
+
value: string;
|
|
15
|
+
params: {
|
|
16
|
+
end: number;
|
|
17
|
+
start: number;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
13
20
|
protected readonly options: import("@angular/animations").AnimationOptions;
|
|
14
21
|
protected readonly pointer: TuiHintPointer | null;
|
|
15
22
|
protected readonly accessor: TuiRectAccessor;
|
|
16
23
|
protected readonly hint: TuiHintDirective<C>;
|
|
24
|
+
protected readonly isMobile: boolean;
|
|
17
25
|
protected readonly content: import("@angular/core").WritableSignal<import("@taiga-ui/polymorpheus").PolymorpheusContent<C>>;
|
|
18
26
|
protected readonly appearance: string | null | undefined;
|
|
19
27
|
constructor();
|
package/directives/index.d.ts
CHANGED
|
@@ -5,5 +5,6 @@ export * from '@taiga-ui/core/directives/group';
|
|
|
5
5
|
export * from '@taiga-ui/core/directives/hint';
|
|
6
6
|
export * from '@taiga-ui/core/directives/icons';
|
|
7
7
|
export * from '@taiga-ui/core/directives/number-format';
|
|
8
|
+
export * from '@taiga-ui/core/directives/popup';
|
|
8
9
|
export * from '@taiga-ui/core/directives/surface';
|
|
9
10
|
export * from '@taiga-ui/core/directives/title';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { OnDestroy } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TuiPopup implements OnDestroy {
|
|
4
|
+
private readonly template;
|
|
5
|
+
private readonly service;
|
|
6
|
+
private viewRef?;
|
|
7
|
+
set tuiPopup(show: boolean);
|
|
8
|
+
ngOnDestroy(): void;
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiPopup, never>;
|
|
10
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiPopup, "ng-template[tuiPopup]", never, { "tuiPopup": { "alias": "tuiPopup"; "required": false; }; }, {}, never, never, true, never>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TuiPortalService } from '@taiga-ui/cdk/classes';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TuiPopupService extends TuiPortalService {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiPopupService, never>;
|
|
5
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TuiPopupService>;
|
|
6
|
+
}
|
|
@@ -112,8 +112,8 @@ export const tuiDropdownAnimation = trigger('tuiDropdownAnimation', [
|
|
|
112
112
|
export const tuiScaleIn = trigger('tuiScaleIn', [
|
|
113
113
|
transition(':enter', [
|
|
114
114
|
style({ transform: 'scale({{start}})' }),
|
|
115
|
-
animate(
|
|
116
|
-
], { params: { end: 1, start: 0, duration: 300 } }),
|
|
115
|
+
animate('{{duration}}ms {{easing}}', style({ transform: 'scale({{end}})' })),
|
|
116
|
+
], { params: { end: 1, start: 0, duration: 300, easing: 'ease-in-out' } }),
|
|
117
117
|
transition(':leave', [
|
|
118
118
|
style({ transform: 'scale({{end}})' }),
|
|
119
119
|
animate(TRANSITION, style({ transform: 'scale({{start}})' })),
|
|
@@ -269,4 +269,4 @@ export const tuiSlideInBottomList = trigger('tuiSlideInBottomList', [
|
|
|
269
269
|
], { optional: true }),
|
|
270
270
|
], { params: { end: 0, start: '100%', duration: 300 } }),
|
|
271
271
|
]);
|
|
272
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvYW5pbWF0aW9ucy9hbmltYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxPQUFPLEVBQ1AsWUFBWSxFQUNaLEtBQUssRUFDTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBQ1YsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixNQUFNLFVBQVUsR0FBRyw0QkFBNEIsQ0FBQztBQUNoRCxNQUFNLFFBQVEsR0FBRyxFQUFDLE1BQU0sRUFBRSxFQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUMsRUFBQyxDQUFDO0FBQzNDLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQztBQU9wQjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTtJQUM1RCxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxDQUFDO0NBQ2xGLENBQUMsQ0FBQztBQUVIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUVsRixNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRTtJQUN0QyxVQUFVLENBQUMsUUFBUSxFQUFFO1FBQ2pCLEtBQUssQ0FBQyxFQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUMsQ0FBQztRQUN6QixLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztLQUMxRCxDQUFD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QUNKLEVBQ0QsRUFBQyxNQUFNLEVBQUUsRUFBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBQyxFQUFDLENBQ25EO0NBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBhbmltYXRlLFxuICAgIGFuaW1hdGVDaGlsZCxcbiAgICBxdWVyeSxcbiAgICBzdGFnZ2VyLFxuICAgIHN0eWxlLFxuICAgIHRyYW5zaXRpb24sXG4gICAgdHJpZ2dlcixcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbmNvbnN0IFRSQU5TSVRJT04gPSAne3tkdXJhdGlvbn19bXMgZWFzZS1pbi1vdXQnO1xuY29uc3QgRFVSQVRJT04gPSB7cGFyYW1zOiB7ZHVyYXRpb246IDMwMH19O1xuY29uc3QgU1RBR0dFUiA9IDMwMDtcblxuZXhwb3J0IGludGVyZmFjZSBUdWlEdXJhdGlvbk9wdGlvbnMge1xuICAgIHBhcmFtczoge2R1cmF0aW9uOiBudW1iZXJ9O1xuICAgIHZhbHVlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQWRkIHRvIGVuYWJsZSBjaGlsZCA6bGVhdmUgYW5pbWF0aW9uIChmaXhlcyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNTc1MylcbiAqL1xuZXhwb3J0IGNvbnN0IHR1aVBhcmVudEFuaW1hdGlvbiA9IHRyaWdnZXIoJ3R1aVBhcmVudEFuaW1hdGlvbicsIFtcbiAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbcXVlcnkoJzpzY29wZSA+IConLCBbYW5pbWF0ZUNoaWxkKCldLCB7b3B0aW9uYWw6IHRydWV9KV0pLFxuXSk7XG5cbi8qKlxuICogQWRkIG9uIHBhcmVudCB0byBzdG9wIGluaXRpYWwgOmVudGVyIGFuaW1hdGlvbiBmb3IgY2hpbGRyZW5cbiAqL1xuZXhwb3J0IGNvbnN0IHR1aVBhcmVudFN0b3AgPSB0cmlnZ2VyKCd0dWlQYXJlbnRTdG9wJywgW3RyYW5zaXRpb24oJzplbnRlcicsIFtdKV0pO1xuXG5leHBvcnQgY29uc3QgdHVpSG9zdCA9IHRyaWdnZXIoJ3R1aUhvc3QnLCBbXG4gICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7b3ZlcmZsb3c6ICdjbGlwJ30pLFxuICAgICAgICBxdWVyeSgnOnNjb3BlID4gKicsIFthbmltYXRlQ2hpbGQoKV0sIHtvcHRpb25hbDogdHJ1ZX0pLFxuICAgIF0pLFxuICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtxdWVyeSgnOnNjb3BlID4gKicsIFthbmltYXRlQ2hpbGQoKV0sIHtvcHRpb25hbDogdHJ1ZX0pXSksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aUhlaWdodENvbGxhcHNlID0gdHJpZ2dlcigndHVpSGVpZ2h0Q29sbGFwc2UnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtzdHlsZSh7aGVpZ2h0OiAwfSksIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe2hlaWdodDogJyonfSkpXSxcbiAgICAgICAgRFVSQVRJT04sXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgW3N0eWxlKHtoZWlnaHQ6ICcqJ30pLCBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtoZWlnaHQ6IDB9KSldLFxuICAgICAgICBEVVJBVElPTixcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlIZWlnaHRDb2xsYXBzZUxpc3QgPSB0cmlnZ2VyKCd0dWlIZWlnaHRDb2xsYXBzZUxpc3QnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJyogPT4gKicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6ZW50ZXInLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe2hlaWdodDogMH0pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFthbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtoZWlnaHQ6ICcqJ30pKV0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6bGVhdmUnLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe2hlaWdodDogJyonfSksXG4gICAgICAgICAgICAgICAgICAgIHN0YWdnZXIoU1RBR0dFUiwgW2FuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe2hlaWdodDogMH0pKV0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgICAgRFVSQVRJT04sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpV2lkdGhDb2xsYXBzZSA9IHRyaWdnZXIoJ3R1aVdpZHRoQ29sbGFwc2UnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtzdHlsZSh7d2lkdGg6IDB9KSwgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7d2lkdGg6ICcqJ30pKV0sXG4gICAgICAgIERVUkFUSU9OLFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtzdHlsZSh7d2lkdGg6ICcqJ30pLCBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt3aWR0aDogMH0pKV0sXG4gICAgICAgIERVUkFUSU9OLFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVdpZHRoQ29sbGFwc2VMaXN0ID0gdHJpZ2dlcigndHVpV2lkdGhDb2xsYXBzZUxpc3QnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJyogPT4gKicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6ZW50ZXInLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe3dpZHRoOiAwfSksXG4gICAgICAgICAgICAgICAgICAgIHN0YWdnZXIoU1RBR0dFUiwgW2FuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3dpZHRoOiAnKid9KSldKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt3aWR0aDogJyonfSksXG4gICAgICAgICAgICAgICAgICAgIHN0YWdnZXIoU1RBR0dFUiwgW2FuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3dpZHRoOiAwfSkpXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICBEVVJBVElPTixcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlGYWRlSW4gPSB0cmlnZ2VyKCd0dWlGYWRlSW4nLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtzdHlsZSh7b3BhY2l0eTogMH0pLCBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtvcGFjaXR5OiAxfSkpXSxcbiAgICAgICAgRFVSQVRJT04sXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgW3N0eWxlKHtvcGFjaXR5OiAxfSksIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe29wYWNpdHk6IDB9KSldLFxuICAgICAgICBEVVJBVElPTixcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlGYWRlSW5MaXN0ID0gdHJpZ2dlcigndHVpRmFkZUluTGlzdCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnKiA9PiAqJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzplbnRlcicsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7b3BhY2l0eTogMH0pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFthbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtvcGFjaXR5OiAxfSkpXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7b3BhY2l0eTogMX0pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFthbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtvcGFjaXR5OiAwfSkpXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICBEVVJBVElPTixcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlGYWRlSW5Ub3AgPSB0cmlnZ2VyKCd0dWlGYWRlSW5Ub3AnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC17e3N0YXJ0fX1weCknLCBvcGFjaXR5OiAwfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJywgb3BhY2l0eTogMX0pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6IDEwLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tlbmR9fSknLCBvcGFjaXR5OiAxfSksXG4gICAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgICAgIFRSQU5TSVRJT04sXG4gICAgICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLXt7c3RhcnR9fXB4KScsIG9wYWNpdHk6IDB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAxMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aUZhZGVJbkJvdHRvbSA9IHRyaWdnZXIoJ3R1aUZhZGVJbkJvdHRvbScsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tzdGFydH19cHgpJywgb3BhY2l0eTogMH0pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KScsIG9wYWNpdHk6IDF9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAxMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJywgb3BhY2l0eTogMX0pLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgICBUUkFOU0lUSU9OLFxuICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7c3RhcnR9fXB4KScsIG9wYWNpdHk6IDB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAxMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aURyb3Bkb3duQW5pbWF0aW9uID0gdHJpZ2dlcigndHVpRHJvcGRvd25BbmltYXRpb24nLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC17e3N0YXJ0fX1weCknLCBvcGFjaXR5OiAwfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJywgb3BhY2l0eTogMX0pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6IDEwLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tlbmR9fSknLCBvcGFjaXR5OiAxfSksXG4gICAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgICAgIFRSQU5TSVRJT04sXG4gICAgICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLXt7c3RhcnR9fXB4KScsIG9wYWNpdHk6IDB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAxMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVNjYWxlSW4gPSB0cmlnZ2VyKCd0dWlTY2FsZUluJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAnc2NhbGUoe3tzdGFydH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMSwgc3RhcnQ6IDAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAnc2NhbGUoe3tlbmR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMSwgc3RhcnQ6IDAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlQb3AgPSB0cmlnZ2VyKCd0dWlQb3AnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAnc2NhbGUoe3ttaWRkbGV9fSknfSkpLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAnc2NhbGUoe3tlbmR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAxLCBtaWRkbGU6IDEuMSwgc3RhcnQ6IDAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAnc2NhbGUoe3tlbmR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e21pZGRsZX19KSd9KSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMSwgbWlkZGxlOiAxLjEsIHN0YXJ0OiAwLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2NhbGVJbkxpc3QgPSB0cmlnZ2VyKCd0dWlTY2FsZUluTGlzdCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnKiA9PiAqJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzplbnRlcicsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAnc2NhbGUoe3tzdGFydH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e2VuZH19KSd9KSksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge29wdGlvbmFsOiB0cnVlfSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMSwgc3RhcnQ6IDAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTbGlkZUluID0gdHJpZ2dlcigndHVpU2xpZGVJbicsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnKiA9PiBsZWZ0JyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLXt7c3RhcnR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJ2xlZnQgPT4gKicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7ZW5kfX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCgte3tzdGFydH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IHJpZ2h0JyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tzdGFydH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAncmlnaHQgPT4gKicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7ZW5kfX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVNsaWRlSW5MZWZ0ID0gdHJpZ2dlcigndHVpU2xpZGVJbkxlZnQnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC17e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLXt7c3RhcnR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJbkxlZnRMaXN0ID0gdHJpZ2dlcigndHVpU2xpZGVJbkxlZnRMaXN0JywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IConLFxuICAgICAgICBbXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC17e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC17e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVNsaWRlSW5SaWdodCA9IHRyaWdnZXIoJ3R1aVNsaWRlSW5SaWdodCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tzdGFydH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7c3RhcnR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJblJpZ2h0TGlzdCA9IHRyaWdnZXIoJ3R1aVNsaWRlSW5SaWdodExpc3QnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJyogPT4gKicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6ZW50ZXInLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tzdGFydH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6bGVhdmUnLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSksXG4gICAgICAgICAgICAgICAgICAgIHN0YWdnZXIoU1RBR0dFUiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVNsaWRlSW5Ub3AgPSB0cmlnZ2VyKCd0dWlTbGlkZUluVG9wJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCx7e3N0YXJ0fX0sMCknLCBwb2ludGVyRXZlbnRzOiAnbm9uZSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAse3tlbmR9fSwwKSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCx7e2VuZH19LDApJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCx7e3N0YXJ0fX0sMCknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJblRvcExpc3QgPSB0cmlnZ2VyKCd0dWlTbGlkZUluVG9wTGlzdCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnKiA9PiAqJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzplbnRlcicsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tlbmR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7c3RhcnR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJbkJvdHRvbSA9IHRyaWdnZXIoJ3R1aVNsaWRlSW5Cb3R0b20nLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC17e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLXt7c3RhcnR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJbkJvdHRvbUxpc3QgPSB0cmlnZ2VyKCd0dWlTbGlkZUluQm90dG9tTGlzdCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnKiA9PiAqJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzplbnRlcicsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSgte3tzdGFydH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6bGVhdmUnLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tlbmR9fSknfSksXG4gICAgICAgICAgICAgICAgICAgIHN0YWdnZXIoU1RBR0dFUiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSgte3tzdGFydH19KSd9KSksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge29wdGlvbmFsOiB0cnVlfSxcbiAgICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG4iXX0=
|
|
272
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvYW5pbWF0aW9ucy9hbmltYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxPQUFPLEVBQ1AsWUFBWSxFQUNaLEtBQUssRUFDTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBQ1YsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixNQUFNLFVBQVUsR0FBRyw0QkFBNEIsQ0FBQztBQUNoRCxNQUFNLFFBQVEsR0FBRyxFQUFDLE1BQU0sRUFBRSxFQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUMsRUFBQyxDQUFDO0FBQzNDLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQztBQU9wQjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTtJQUM1RCxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxDQUFDO0NBQ2xGLENBQUMsQ0FBQztBQUVIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUVsRixNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRTtJQUN0QyxVQUFVLENBQUMsUUFBUSxFQUFFO1FBQ2pCLEtBQUssQ0FBQyxFQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUMsQ0FBQztRQUN6QixLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztLQUMxRCxDQUFD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RUFBRSxJQUFJLEVBQUMsQ0FDbkI7S0FDSixFQUNELEVBQUMsTUFBTSxFQUFFLEVBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUMsRUFBQyxDQUNuRDtDQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgYW5pbWF0ZSxcbiAgICBhbmltYXRlQ2hpbGQsXG4gICAgcXVlcnksXG4gICAgc3RhZ2dlcixcbiAgICBzdHlsZSxcbiAgICB0cmFuc2l0aW9uLFxuICAgIHRyaWdnZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuXG5jb25zdCBUUkFOU0lUSU9OID0gJ3t7ZHVyYXRpb259fW1zIGVhc2UtaW4tb3V0JztcbmNvbnN0IERVUkFUSU9OID0ge3BhcmFtczoge2R1cmF0aW9uOiAzMDB9fTtcbmNvbnN0IFNUQUdHRVIgPSAzMDA7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpRHVyYXRpb25PcHRpb25zIHtcbiAgICBwYXJhbXM6IHtkdXJhdGlvbjogbnVtYmVyfTtcbiAgICB2YWx1ZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFkZCB0byBlbmFibGUgY2hpbGQgOmxlYXZlIGFuaW1hdGlvbiAoZml4ZXMgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTU3NTMpXG4gKi9cbmV4cG9ydCBjb25zdCB0dWlQYXJlbnRBbmltYXRpb24gPSB0cmlnZ2VyKCd0dWlQYXJlbnRBbmltYXRpb24nLCBbXG4gICAgdHJhbnNpdGlvbignOmxlYXZlJywgW3F1ZXJ5KCc6c2NvcGUgPiAqJywgW2FuaW1hdGVDaGlsZCgpXSwge29wdGlvbmFsOiB0cnVlfSldKSxcbl0pO1xuXG4vKipcbiAqIEFkZCBvbiBwYXJlbnQgdG8gc3RvcCBpbml0aWFsIDplbnRlciBhbmltYXRpb24gZm9yIGNoaWxkcmVuXG4gKi9cbmV4cG9ydCBjb25zdCB0dWlQYXJlbnRTdG9wID0gdHJpZ2dlcigndHVpUGFyZW50U3RvcCcsIFt0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXSldKTtcblxuZXhwb3J0IGNvbnN0IHR1aUhvc3QgPSB0cmlnZ2VyKCd0dWlIb3N0JywgW1xuICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoe292ZXJmbG93OiAnY2xpcCd9KSxcbiAgICAgICAgcXVlcnkoJzpzY29wZSA+IConLCBbYW5pbWF0ZUNoaWxkKCldLCB7b3B0aW9uYWw6IHRydWV9KSxcbiAgICBdKSxcbiAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbcXVlcnkoJzpzY29wZSA+IConLCBbYW5pbWF0ZUNoaWxkKCldLCB7b3B0aW9uYWw6IHRydWV9KV0pLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlIZWlnaHRDb2xsYXBzZSA9IHRyaWdnZXIoJ3R1aUhlaWdodENvbGxhcHNlJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbc3R5bGUoe2hlaWdodDogMH0pLCBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtoZWlnaHQ6ICcqJ30pKV0sXG4gICAgICAgIERVUkFUSU9OLFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtzdHlsZSh7aGVpZ2h0OiAnKid9KSwgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7aGVpZ2h0OiAwfSkpXSxcbiAgICAgICAgRFVSQVRJT04sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpSGVpZ2h0Q29sbGFwc2VMaXN0ID0gdHJpZ2dlcigndHVpSGVpZ2h0Q29sbGFwc2VMaXN0JywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IConLFxuICAgICAgICBbXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHtoZWlnaHQ6IDB9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7aGVpZ2h0OiAnKid9KSldKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHtoZWlnaHQ6ICcqJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFthbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtoZWlnaHQ6IDB9KSldKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICAgIERVUkFUSU9OLFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVdpZHRoQ29sbGFwc2UgPSB0cmlnZ2VyKCd0dWlXaWR0aENvbGxhcHNlJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbc3R5bGUoe3dpZHRoOiAwfSksIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3dpZHRoOiAnKid9KSldLFxuICAgICAgICBEVVJBVElPTixcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbc3R5bGUoe3dpZHRoOiAnKid9KSwgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7d2lkdGg6IDB9KSldLFxuICAgICAgICBEVVJBVElPTixcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlXaWR0aENvbGxhcHNlTGlzdCA9IHRyaWdnZXIoJ3R1aVdpZHRoQ29sbGFwc2VMaXN0JywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IConLFxuICAgICAgICBbXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt3aWR0aDogMH0pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFthbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt3aWR0aDogJyonfSkpXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7d2lkdGg6ICcqJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFthbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt3aWR0aDogMH0pKV0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgICAgRFVSQVRJT04sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpRmFkZUluID0gdHJpZ2dlcigndHVpRmFkZUluJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbc3R5bGUoe29wYWNpdHk6IDB9KSwgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7b3BhY2l0eTogMX0pKV0sXG4gICAgICAgIERVUkFUSU9OLFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtzdHlsZSh7b3BhY2l0eTogMX0pLCBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHtvcGFjaXR5OiAwfSkpXSxcbiAgICAgICAgRFVSQVRJT04sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpRmFkZUluTGlzdCA9IHRyaWdnZXIoJ3R1aUZhZGVJbkxpc3QnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJyogPT4gKicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6ZW50ZXInLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe29wYWNpdHk6IDB9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7b3BhY2l0eTogMX0pKV0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6bGVhdmUnLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe29wYWNpdHk6IDF9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7b3BhY2l0eTogMH0pKV0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgICAgRFVSQVRJT04sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpRmFkZUluVG9wID0gdHJpZ2dlcigndHVpRmFkZUluVG9wJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSgte3tzdGFydH19cHgpJywgb3BhY2l0eTogMH0pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KScsIG9wYWNpdHk6IDF9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAxMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJywgb3BhY2l0eTogMX0pLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgICBUUkFOU0lUSU9OLFxuICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC17e3N0YXJ0fX1weCknLCBvcGFjaXR5OiAwfSksXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogMTAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlGYWRlSW5Cb3R0b20gPSB0cmlnZ2VyKCd0dWlGYWRlSW5Cb3R0b20nLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7c3RhcnR9fXB4KScsIG9wYWNpdHk6IDB9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tlbmR9fSknLCBvcGFjaXR5OiAxfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogMTAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KScsIG9wYWNpdHk6IDF9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgICAgICAgVFJBTlNJVElPTixcbiAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e3N0YXJ0fX1weCknLCBvcGFjaXR5OiAwfSksXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogMTAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlEcm9wZG93bkFuaW1hdGlvbiA9IHRyaWdnZXIoJ3R1aURyb3Bkb3duQW5pbWF0aW9uJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSgte3tzdGFydH19cHgpJywgb3BhY2l0eTogMH0pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KScsIG9wYWNpdHk6IDF9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAxMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJywgb3BhY2l0eTogMX0pLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgICBUUkFOU0lUSU9OLFxuICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC17e3N0YXJ0fX1weCknLCBvcGFjaXR5OiAwfSksXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogMTAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTY2FsZUluID0gdHJpZ2dlcigndHVpU2NhbGVJbicsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7c3RhcnR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKCd7e2R1cmF0aW9ufX1tcyB7e2Vhc2luZ319Jywgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMSwgc3RhcnQ6IDAsIGR1cmF0aW9uOiAzMDAsIGVhc2luZzogJ2Vhc2UtaW4tb3V0J319LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7c3RhcnR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAxLCBzdGFydDogMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVBvcCA9IHRyaWdnZXIoJ3R1aVBvcCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7c3RhcnR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e21pZGRsZX19KSd9KSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e2VuZH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDEsIG1pZGRsZTogMS4xLCBzdGFydDogMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7bWlkZGxlfX0pJ30pKSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7c3RhcnR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAxLCBtaWRkbGU6IDEuMSwgc3RhcnQ6IDAsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTY2FsZUluTGlzdCA9IHRyaWdnZXIoJ3R1aVNjYWxlSW5MaXN0JywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IConLFxuICAgICAgICBbXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICdzY2FsZSh7e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6bGVhdmUnLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7ZW5kfX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3NjYWxlKHt7c3RhcnR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAxLCBzdGFydDogMCwgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcblxuZXhwb3J0IGNvbnN0IHR1aVNsaWRlSW4gPSB0cmlnZ2VyKCd0dWlTbGlkZUluJywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IGxlZnQnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCgte3tzdGFydH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnbGVmdCA9PiAqJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC17e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJyogPT4gcmlnaHQnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICdyaWdodCA9PiAqJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7c3RhcnR9fSknfSkpLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJbkxlZnQgPSB0cmlnZ2VyKCd0dWlTbGlkZUluTGVmdCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLXt7c3RhcnR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7ZW5kfX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCgte3tzdGFydH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTbGlkZUluTGVmdExpc3QgPSB0cmlnZ2VyKCd0dWlTbGlkZUluTGVmdExpc3QnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJyogPT4gKicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgICAgICc6ZW50ZXInLFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLXt7c3RhcnR9fSknfSksXG4gICAgICAgICAgICAgICAgICAgIHN0YWdnZXIoU1RBR0dFUiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge29wdGlvbmFsOiB0cnVlfSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7ZW5kfX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLXt7c3RhcnR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJblJpZ2h0ID0gdHJpZ2dlcigndHVpU2xpZGVJblJpZ2h0JywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6ZW50ZXInLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tzdGFydH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTbGlkZUluUmlnaHRMaXN0ID0gdHJpZ2dlcigndHVpU2xpZGVJblJpZ2h0TGlzdCcsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnKiA9PiAqJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzplbnRlcicsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoe3tlbmR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKHt7c3RhcnR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICBdLFxuICAgICAgICB7cGFyYW1zOiB7ZW5kOiAwLCBzdGFydDogJzEwMCUnLCBkdXJhdGlvbjogMzAwfX0sXG4gICAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgdHVpU2xpZGVJblRvcCA9IHRyaWdnZXIoJ3R1aVNsaWRlSW5Ub3AnLCBbXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLHt7c3RhcnR9fSwwKScsIHBvaW50ZXJFdmVudHM6ICdub25lJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCx7e2VuZH19LDApJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLHt7ZW5kfX0sMCknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLHt7c3RhcnR9fSwwKSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTbGlkZUluVG9wTGlzdCA9IHRyaWdnZXIoJ3R1aVNsaWRlSW5Ub3BMaXN0JywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IConLFxuICAgICAgICBbXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7c3RhcnR9fSknfSksXG4gICAgICAgICAgICAgICAgICAgIHN0YWdnZXIoU1RBR0dFUiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KSd9KSksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge29wdGlvbmFsOiB0cnVlfSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmxlYXZlJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tzdGFydH19KSd9KSksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAge29wdGlvbmFsOiB0cnVlfSxcbiAgICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTbGlkZUluQm90dG9tID0gdHJpZ2dlcigndHVpU2xpZGVJbkJvdHRvbScsIFtcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgW1xuICAgICAgICAgICAgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLXt7c3RhcnR9fSknfSksXG4gICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJ30pKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgIFtcbiAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKHt7ZW5kfX0pJ30pLFxuICAgICAgICAgICAgYW5pbWF0ZShUUkFOU0lUSU9OLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSgte3tzdGFydH19KSd9KSksXG4gICAgICAgIF0sXG4gICAgICAgIHtwYXJhbXM6IHtlbmQ6IDAsIHN0YXJ0OiAnMTAwJScsIGR1cmF0aW9uOiAzMDB9fSxcbiAgICApLFxuXSk7XG5cbmV4cG9ydCBjb25zdCB0dWlTbGlkZUluQm90dG9tTGlzdCA9IHRyaWdnZXIoJ3R1aVNsaWRlSW5Cb3R0b21MaXN0JywgW1xuICAgIHRyYW5zaXRpb24oXG4gICAgICAgICcqID0+IConLFxuICAgICAgICBbXG4gICAgICAgICAgICBxdWVyeShcbiAgICAgICAgICAgICAgICAnOmVudGVyJyxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC17e3N0YXJ0fX0pJ30pLFxuICAgICAgICAgICAgICAgICAgICBzdGFnZ2VyKFNUQUdHRVIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGUoVFJBTlNJVElPTiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoe3tlbmR9fSknfSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHtvcHRpb25hbDogdHJ1ZX0sXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAgICAgJzpsZWF2ZScsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWSh7e2VuZH19KSd9KSxcbiAgICAgICAgICAgICAgICAgICAgc3RhZ2dlcihTVEFHR0VSLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlKFRSQU5TSVRJT04sIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC17e3N0YXJ0fX0pJ30pKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB7b3B0aW9uYWw6IHRydWV9LFxuICAgICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgICAge3BhcmFtczoge2VuZDogMCwgc3RhcnQ6ICcxMDAlJywgZHVyYXRpb246IDMwMH19LFxuICAgICksXG5dKTtcbiJdfQ==
|
|
@@ -28,4 +28,4 @@ export function tuiAsPositionAccessor(accessor) {
|
|
|
28
28
|
export function tuiAsRectAccessor(accessor) {
|
|
29
29
|
return tuiProvide(TuiRectAccessor, accessor, true);
|
|
30
30
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jbGFzc2VzL2FjY2Vzc29ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFHN0QsTUFBTSxPQUFnQixXQUFXO0NBRWhDO0FBRUQsTUFBTSxPQUFnQixtQkFBb0IsU0FBUSxXQUFXO0NBSzVEO0FBRUQsTUFBTSxPQUFnQixlQUFnQixTQUFRLFdBQVc7Q0FFeEQ7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQzlCLE9BQXdCLEVBQ3hCLElBQVksRUFDWixRQUFpQjtJQUVqQixPQUFPO1FBQ0gsT0FBTztRQUNQLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxJQUFJLFFBQVEsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFLFFBQVEsQ0FBQztRQUMzRCxVQUFVLEVBQUUsbUJBQW1CLENBQUksSUFBSSxDQUFDO0tBQzNDLENBQUM7QUFDTixDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUMvQixJQUFZO0lBRVosT0FBTyxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUMzQixTQUFTLEVBQUUsSUFBSSxFQUFFLENBQ2IsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsS0FBSyxRQUFRLElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxJQUFJLENBQ2hFLElBQUksUUFBUSxDQUFDO0FBQ3RCLENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQ2xDLElBQVksRUFDWixRQUFtQztJQUVuQyxPQUFPLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztBQUNuRSxDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUM5QixJQUFZLEVBQ1osUUFBK0I7SUFFL0IsT0FBTyxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQ2pDLFFBQW1DO0lBRW5DLE9BQU8sVUFBVSxDQUFDLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUMzRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFFBQStCO0lBQzdELE9BQU8sVUFBVSxDQUFDLGVBQWUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDdkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtBYnN0cmFjdFR5cGUsIEV4aXN0aW5nUHJvdmlkZXIsIEZhY3RvcnlQcm92aWRlciwgVHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09wdGlvbmFsLCBTa2lwU2VsZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3R1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQgdHlwZSB7VHVpUG9pbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFR1aUFjY2Vzc29yIHtcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHVpUG9zaXRpb25BY2Nlc3NvciBleHRlbmRzIFR1aUFjY2Vzc29yIHtcbiAgICAvKlxuICAgICAqIFRPRE8gQGRlcHJlY2F0ZWQgc3dpdGNoaW5nIGZyb20gRE9NUmVjdCB0byBIVE1MRWxlbWVudCBpbiB2NVxuICAgICAqL1xuICAgIHB1YmxpYyBhYnN0cmFjdCBnZXRQb3NpdGlvbihyZWN0OiBET01SZWN0LCBlbGVtZW50PzogSFRNTEVsZW1lbnQpOiBUdWlQb2ludDtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFR1aVJlY3RBY2Nlc3NvciBleHRlbmRzIFR1aUFjY2Vzc29yIHtcbiAgICBwdWJsaWMgYWJzdHJhY3QgZ2V0Q2xpZW50UmVjdCgpOiBET01SZWN0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHVpUHJvdmlkZUFjY2Vzc29yPFQgZXh0ZW5kcyBUdWlBY2Nlc3Nvcj4oXG4gICAgcHJvdmlkZTogQWJzdHJhY3RUeXBlPFQ+LFxuICAgIHR5cGU6IHN0cmluZyxcbiAgICBmYWxsYmFjazogVHlwZTxUPixcbik6IEZhY3RvcnlQcm92aWRlciB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJvdmlkZSxcbiAgICAgICAgZGVwczogW1tuZXcgU2tpcFNlbGYoKSwgbmV3IE9wdGlvbmFsKCksIHByb3ZpZGVdLCBmYWxsYmFja10sXG4gICAgICAgIHVzZUZhY3Rvcnk6IHR1aUZhbGxiYWNrQWNjZXNzb3I8VD4odHlwZSksXG4gICAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUZhbGxiYWNrQWNjZXNzb3I8VCBleHRlbmRzIFR1aUFjY2Vzc29yPihcbiAgICB0eXBlOiBzdHJpbmcsXG4pOiAoYWNjZXNzb3JzOiByZWFkb25seSBUW10gfCBudWxsLCBmYWxsYmFjazogVCkgPT4gVCB7XG4gICAgcmV0dXJuIChhY2Nlc3NvcnMsIGZhbGxiYWNrKSA9PlxuICAgICAgICBhY2Nlc3NvcnM/LmZpbmQ/LihcbiAgICAgICAgICAgIChhY2Nlc3NvcikgPT4gYWNjZXNzb3IgIT09IGZhbGxiYWNrICYmIGFjY2Vzc29yLnR5cGUgPT09IHR5cGUsXG4gICAgICAgICkgfHwgZmFsbGJhY2s7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlQb3NpdGlvbkFjY2Vzc29yRm9yKFxuICAgIHR5cGU6IHN0cmluZyxcbiAgICBmYWxsYmFjazogVHlwZTxUdWlQb3NpdGlvbkFjY2Vzc29yPixcbik6IEZhY3RvcnlQcm92aWRlciB7XG4gICAgcmV0dXJuIHR1aVByb3ZpZGVBY2Nlc3NvcihUdWlQb3NpdGlvbkFjY2Vzc29yLCB0eXBlLCBmYWxsYmFjayk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlSZWN0QWNjZXNzb3JGb3IoXG4gICAgdHlwZTogc3RyaW5nLFxuICAgIGZhbGxiYWNrOiBUeXBlPFR1aVJlY3RBY2Nlc3Nvcj4sXG4pOiBGYWN0b3J5UHJvdmlkZXIge1xuICAgIHJldHVybiB0dWlQcm92aWRlQWNjZXNzb3IoVHVpUmVjdEFjY2Vzc29yLCB0eXBlLCBmYWxsYmFjayk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlBc1Bvc2l0aW9uQWNjZXNzb3IoXG4gICAgYWNjZXNzb3I6IFR5cGU8VHVpUG9zaXRpb25BY2Nlc3Nvcj4sXG4pOiBFeGlzdGluZ1Byb3ZpZGVyIHtcbiAgICByZXR1cm4gdHVpUHJvdmlkZShUdWlQb3NpdGlvbkFjY2Vzc29yLCBhY2Nlc3NvciwgdHJ1ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlBc1JlY3RBY2Nlc3NvcihhY2Nlc3NvcjogVHlwZTxUdWlSZWN0QWNjZXNzb3I+KTogRXhpc3RpbmdQcm92aWRlciB7XG4gICAgcmV0dXJuIHR1aVByb3ZpZGUoVHVpUmVjdEFjY2Vzc29yLCBhY2Nlc3NvciwgdHJ1ZSk7XG59XG4iXX0=
|
|
@@ -12,11 +12,14 @@ export function tuiAsDriver(driver) {
|
|
|
12
12
|
class TuiDriverDirective {
|
|
13
13
|
constructor() {
|
|
14
14
|
this.destroyRef = inject(DestroyRef);
|
|
15
|
-
this.drivers = inject(TuiDriver);
|
|
16
|
-
this.vehicles = inject(TuiVehicle
|
|
15
|
+
this.drivers = inject(TuiDriver, { self: true, optional: true }) || [];
|
|
16
|
+
this.vehicles = inject(TuiVehicle, {
|
|
17
|
+
self: true,
|
|
18
|
+
optional: true,
|
|
19
|
+
});
|
|
17
20
|
}
|
|
18
|
-
|
|
19
|
-
const vehicle = this.vehicles
|
|
21
|
+
ngAfterViewInit() {
|
|
22
|
+
const vehicle = this.vehicles?.find(({ type }) => type === this.type);
|
|
20
23
|
merge(...this.drivers.filter(({ type }) => type === this.type))
|
|
21
24
|
.pipe(distinctUntilChanged(), takeUntilDestroyed(this.destroyRef))
|
|
22
25
|
.subscribe((value) => {
|
|
@@ -30,4 +33,4 @@ export { TuiDriverDirective };
|
|
|
30
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDriverDirective, decorators: [{
|
|
31
34
|
type: Directive
|
|
32
35
|
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJpdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jbGFzc2VzL2RyaXZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzdELE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTdELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxXQUFXLENBQUM7O0FBRXJDLE1BQU0sT0FBZ0IsU0FBVSxTQUFRLFVBQW1CO0NBRTFEO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxNQUF1QjtJQUMvQyxPQUFPLFVBQVUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUNzQixrQkFBa0I7SUFEeEM7UUFJcUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxZQUFPLEdBQ3BCLE1BQU0sQ0FBTSxTQUFTLEVBQUUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUU5QyxhQUFRLEdBQTBCLE1BQU0sQ0FBTSxVQUFVLEVBQUU7WUFDdkUsSUFBSSxFQUFFLElBQUk7WUFDVixRQUFRLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7S0FXTjtJQVRVLGVBQWU7UUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFDLElBQUksRUFBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXBFLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBQyxJQUFJLEVBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN4RCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDakUsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7K0dBcEJpQixrQkFBa0I7bUdBQWxCLGtCQUFrQjs7U0FBbEIsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBRHZDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7QWZ0ZXJWaWV3SW5pdCwgRXhpc3RpbmdQcm92aWRlciwgVHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Rlc3Ryb3lSZWYsIERpcmVjdGl2ZSwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge3R1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBtZXJnZSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpVmVoaWNsZX0gZnJvbSAnLi92ZWhpY2xlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFR1aURyaXZlciBleHRlbmRzIE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSB0eXBlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlBc0RyaXZlcihkcml2ZXI6IFR5cGU8VHVpRHJpdmVyPik6IEV4aXN0aW5nUHJvdmlkZXIge1xuICAgIHJldHVybiB0dWlQcm92aWRlKFR1aURyaXZlciwgZHJpdmVyLCB0cnVlKTtcbn1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHVpRHJpdmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcHVibGljIGFic3RyYWN0IHR5cGU6IHN0cmluZztcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyaXZlcnM6IHJlYWRvbmx5IFR1aURyaXZlcltdID1cbiAgICAgICAgaW5qZWN0PGFueT4oVHVpRHJpdmVyLCB7c2VsZjogdHJ1ZSwgb3B0aW9uYWw6IHRydWV9KSB8fCBbXTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmVoaWNsZXM6IHJlYWRvbmx5IFR1aVZlaGljbGVbXSA9IGluamVjdDxhbnk+KFR1aVZlaGljbGUsIHtcbiAgICAgICAgc2VsZjogdHJ1ZSxcbiAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgfSk7XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCB2ZWhpY2xlID0gdGhpcy52ZWhpY2xlcz8uZmluZCgoe3R5cGV9KSA9PiB0eXBlID09PSB0aGlzLnR5cGUpO1xuXG4gICAgICAgIG1lcmdlKC4uLnRoaXMuZHJpdmVycy5maWx0ZXIoKHt0eXBlfSkgPT4gdHlwZSA9PT0gdGhpcy50eXBlKSlcbiAgICAgICAgICAgIC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICB2ZWhpY2xlPy50b2dnbGUodmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
|
@@ -30,7 +30,7 @@ class TuiAlertComponent {
|
|
|
30
30
|
.subscribe(() => this.item.$implicit.complete());
|
|
31
31
|
}
|
|
32
32
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlertComponent, isStandalone: true, selector: "tui-alert", host: { attributes: { "role": "alert" }, properties: { "style.margin": "position", "@tuiFadeIn": "options", "@tuiSlideIn": "animation", "@tuiHeightCollapse": "animation" } }, ngImport: i0, template: "<tui-notification\n size=\"m\"\n [appearance]=\"item.appearance\"\n [icon]=\"item.icon\"\n>\n <span tuiTitle>\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n <span tuiSubtitle>\n <span\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></span>\n </span>\n </span>\n <button\n *ngIf=\"item.closeable\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click)=\"item.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n</tui-notification>\n", styles: [":host{display:block;inline-size:18rem;flex-shrink:0;word-break:break-word;background:var(--tui-background-
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiAlertComponent, isStandalone: true, selector: "tui-alert", host: { attributes: { "role": "alert" }, properties: { "style.margin": "position", "@tuiFadeIn": "options", "@tuiSlideIn": "animation", "@tuiHeightCollapse": "animation" } }, ngImport: i0, template: "<tui-notification\n size=\"m\"\n [appearance]=\"item.appearance\"\n [class.t-closeable]=\"item.closeable\"\n [icon]=\"item.icon\"\n>\n <span tuiTitle>\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n <span tuiSubtitle>\n <span\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></span>\n </span>\n </span>\n <button\n *ngIf=\"item.closeable\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click)=\"item.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n</tui-notification>\n", styles: [":host{display:block;inline-size:18rem;flex-shrink:0;word-break:break-word;background:var(--tui-background-base);border-radius:var(--tui-radius-m);box-shadow:var(--tui-shadow-medium)}:host:not(:first-child){margin-top:.75rem!important}:host:not(:last-child){margin-bottom:0!important}.t-closeable{padding-inline-end:2.5rem}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: TuiNotification, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["appearance", "icon", "size"] }, { kind: "directive", type: TuiTitle, selector: "[tuiTitle]", inputs: ["tuiTitle"] }], animations: [tuiFadeIn, tuiSlideIn, tuiHeightCollapse], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34
34
|
}
|
|
35
35
|
export { TuiAlertComponent };
|
|
36
36
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAlertComponent, decorators: [{
|
|
@@ -41,6 +41,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
41
41
|
'[@tuiFadeIn]': 'options',
|
|
42
42
|
'[@tuiSlideIn]': 'animation',
|
|
43
43
|
'[@tuiHeightCollapse]': 'animation',
|
|
44
|
-
}, template: "<tui-notification\n size=\"m\"\n [appearance]=\"item.appearance\"\n [icon]=\"item.icon\"\n>\n <span tuiTitle>\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n <span tuiSubtitle>\n <span\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></span>\n </span>\n </span>\n <button\n *ngIf=\"item.closeable\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click)=\"item.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n</tui-notification>\n", styles: [":host{display:block;inline-size:18rem;flex-shrink:0;word-break:break-word;background:var(--tui-background-
|
|
44
|
+
}, template: "<tui-notification\n size=\"m\"\n [appearance]=\"item.appearance\"\n [class.t-closeable]=\"item.closeable\"\n [icon]=\"item.icon\"\n>\n <span tuiTitle>\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n <span tuiSubtitle>\n <span\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></span>\n </span>\n </span>\n <button\n *ngIf=\"item.closeable\"\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click)=\"item.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n</tui-notification>\n", styles: [":host{display:block;inline-size:18rem;flex-shrink:0;word-break:break-word;background:var(--tui-background-base);border-radius:var(--tui-radius-m);box-shadow:var(--tui-shadow-medium)}:host:not(:first-child){margin-top:.75rem!important}:host:not(:last-child){margin-bottom:0!important}.t-closeable{padding-inline-end:2.5rem}\n"] }]
|
|
45
45
|
}] });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFeEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFDLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RCxPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCxnQkFBZ0IsR0FDbkIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsYUFBYSxFQUFFLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDekUsT0FBTyxFQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUcvRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFbEQsTUFnQmEsaUJBQWlCO0lBaEI5QjtRQWlCcUIsT0FBRSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFFdEIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1FBQzlELFVBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDekMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3RDLFNBQUksR0FBRyxhQUFhLEVBQXFDLENBQUM7UUFFMUQsY0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUN6RCxDQUFDLENBQUMsRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBQztZQUNuQyxDQUFDLENBQUMsRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxDQUFDO1FBRXBCLFFBQUcsR0FBRyxFQUFFLENBQ3ZCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssVUFBVTtZQUNyQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDM0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUM1QjthQUNJLElBQUksQ0FDRCxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ2hFLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQyxFQUMzQyxNQUFNLENBQUMsRUFBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsWUFBWSxDQUFDLEVBQUMsQ0FBQyxFQUN2RCxrQkFBa0IsRUFBRSxDQUN2QjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0tBQ3hEOytHQXpCWSxpQkFBaUI7bUdBQWpCLGlCQUFpQixvUENyQzlCLHV2QkEyQkEsOFhESGMsSUFBSSw2RkFBRSxrQkFBa0IsOEhBQUUsU0FBUyxvSUFBRSxlQUFlLGdKQUFFLFFBQVEsK0RBSTVELENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQzs7U0FTN0MsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBaEI3QixTQUFTO2lDQUNNLElBQUksWUFDTixXQUFXLFdBQ1osQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxRQUFRLENBQUMsbUJBR3hELHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixDQUFDLFFBQ2hEO3dCQUNGLElBQUksRUFBRSxPQUFPO3dCQUNiLGdCQUFnQixFQUFFLFVBQVU7d0JBQzVCLGNBQWMsRUFBRSxTQUFTO3dCQUN6QixlQUFlLEVBQUUsV0FBVzt3QkFDNUIsc0JBQXNCLEVBQUUsV0FBVztxQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZCwgdG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB0eXBlIHtUdWlQb3BvdmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlGYWRlSW4sIHR1aUhlaWdodENvbGxhcHNlLCB0dWlTbGlkZUlufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7VHVpQnV0dG9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQge1R1aU5vdGlmaWNhdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9ub3RpZmljYXRpb24nO1xuaW1wb3J0IHtUdWlUaXRsZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy90aXRsZSc7XG5pbXBvcnQge1xuICAgIFRVSV9BTklNQVRJT05TX1NQRUVELFxuICAgIFRVSV9DTE9TRV9XT1JELFxuICAgIFRVSV9DT01NT05fSUNPTlMsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aVRvQW5pbWF0aW9uT3B0aW9uc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtpbmplY3RDb250ZXh0LCBQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtFTVBUWSwgZnJvbUV2ZW50LCBvZiwgcmVwZWF0LCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGltZXJ9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgdHlwZSB7VHVpQWxlcnRPcHRpb25zfSBmcm9tICcuL2FsZXJ0LmludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfQUxFUlRfUE9TSVRJT059IGZyb20gJy4vYWxlcnQudG9rZW5zJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1hbGVydCcsXG4gICAgaW1wb3J0czogW05nSWYsIFBvbHltb3JwaGV1c091dGxldCwgVHVpQnV0dG9uLCBUdWlOb3RpZmljYXRpb24sIFR1aVRpdGxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW4sIHR1aVNsaWRlSW4sIHR1aUhlaWdodENvbGxhcHNlXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdhbGVydCcsXG4gICAgICAgICdbc3R5bGUubWFyZ2luXSc6ICdwb3NpdGlvbicsXG4gICAgICAgICdbQHR1aUZhZGVJbl0nOiAnb3B0aW9ucycsXG4gICAgICAgICdbQHR1aVNsaWRlSW5dJzogJ2FuaW1hdGlvbicsXG4gICAgICAgICdbQHR1aUhlaWdodENvbGxhcHNlXSc6ICdhbmltYXRpb24nLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUFsZXJ0Q29tcG9uZW50PE8sIEk+IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBvcHRpb25zID0gdHVpVG9BbmltYXRpb25PcHRpb25zKGluamVjdChUVUlfQU5JTUFUSU9OU19TUEVFRCkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjbG9zZSA9IHRvU2lnbmFsKGluamVjdChUVUlfQ0xPU0VfV09SRCkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBwb3NpdGlvbiA9IGluamVjdChUVUlfQUxFUlRfUE9TSVRJT04pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpdGVtID0gaW5qZWN0Q29udGV4dDxUdWlQb3BvdmVyPFR1aUFsZXJ0T3B0aW9uczxJPiwgTz4+KCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYW5pbWF0aW9uID0gdGhpcy5wb3NpdGlvbi5lbmRzV2l0aCgnYXV0bycpXG4gICAgICAgID8gey4uLnRoaXMub3B0aW9ucywgdmFsdWU6ICdyaWdodCd9XG4gICAgICAgIDogey4uLnRoaXMub3B0aW9ucywgdmFsdWU6ICdsZWZ0J307XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc3ViID0gb2YoXG4gICAgICAgIHR5cGVvZiB0aGlzLml0ZW0uYXV0b0Nsb3NlID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgICA/IHRoaXMuaXRlbS5hdXRvQ2xvc2UodGhpcy5pdGVtLmFwcGVhcmFuY2UpXG4gICAgICAgICAgICA6IHRoaXMuaXRlbS5hdXRvQ2xvc2UsXG4gICAgKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoYXV0b0Nsb3NlKSA9PiAoYXV0b0Nsb3NlID8gdGltZXIoYXV0b0Nsb3NlKSA6IEVNUFRZKSksXG4gICAgICAgICAgICB0YWtlVW50aWwoZnJvbUV2ZW50KHRoaXMuZWwsICdtb3VzZWVudGVyJykpLFxuICAgICAgICAgICAgcmVwZWF0KHtkZWxheTogKCkgPT4gZnJvbUV2ZW50KHRoaXMuZWwsICdtb3VzZWxlYXZlJyl9KSxcbiAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5pdGVtLiRpbXBsaWNpdC5jb21wbGV0ZSgpKTtcbn1cbiIsIjx0dWktbm90aWZpY2F0aW9uXG4gICAgc2l6ZT1cIm1cIlxuICAgIFthcHBlYXJhbmNlXT1cIml0ZW0uYXBwZWFyYW5jZVwiXG4gICAgW2NsYXNzLnQtY2xvc2VhYmxlXT1cIml0ZW0uY2xvc2VhYmxlXCJcbiAgICBbaWNvbl09XCJpdGVtLmljb25cIlxuPlxuICAgIDxzcGFuIHR1aVRpdGxlPlxuICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpdGVtLmxhYmVsIGFzIHRleHQ7IGNvbnRleHQ6IGl0ZW1cIj5cbiAgICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxzcGFuIHR1aVN1YnRpdGxlPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaXRlbS5jb250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IGl0ZW1cIlxuICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwidGV4dFwiXG4gICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgPC9zcGFuPlxuICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJpdGVtLmNsb3NlYWJsZVwiXG4gICAgICAgIHR1aUljb25CdXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtpY29uU3RhcnRdPVwiaWNvbnMuY2xvc2VcIlxuICAgICAgICAoY2xpY2spPVwiaXRlbS4kaW1wbGljaXQuY29tcGxldGUoKVwiXG4gICAgPlxuICAgICAgICB7eyBjbG9zZSgpIH19XG4gICAgPC9idXR0b24+XG48L3R1aS1ub3RpZmljYXRpb24+XG4iXX0=
|