@cuby-ui/core 0.0.237 → 0.0.239
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/button/button.component.d.ts +1 -1
- package/components/button/button.options.d.ts +2 -2
- package/esm2022/components/button/button.component.mjs +5 -4
- package/esm2022/components/button/button.options.mjs +1 -1
- package/esm2022/editor/widgets/editor-block/editor-block.component.mjs +4 -4
- package/esm2022/types/appearance.mjs +1 -1
- package/esm2022/widgets/utility-info/utility-info.component.mjs +3 -3
- package/fesm2022/cuby-ui-core.mjs +9 -8
- package/fesm2022/cuby-ui-core.mjs.map +1 -1
- package/package.json +3 -3
- package/types/appearance.d.ts +1 -0
|
@@ -10,7 +10,7 @@ export declare class CuiButtonComponent implements CuiButtonOptions, OnInit {
|
|
|
10
10
|
protected readonly AppearanceIconColors: Record<CuiButtonOptions['appearance'], string>;
|
|
11
11
|
protected readonly COLOR_BASE_500 = "var(--cui-base-500)";
|
|
12
12
|
protected readonly BUTTON_ICONS_COLOR_BASE_500: CuiButtonOptions['appearance'][];
|
|
13
|
-
protected _appearance: "
|
|
13
|
+
protected _appearance: "action" | "secondary" | "outlined" | "outlined-gray" | "ghost" | "flat" | "destructive" | "link" | "action-violet";
|
|
14
14
|
protected iconColor: string;
|
|
15
15
|
protected _size: "xxs" | "xs" | "sm" | "md";
|
|
16
16
|
protected iconDimensions: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import type { CuiAppearanceAction, CuiAppearanceDestructive, CuiAppearanceFlat, CuiAppearanceGhost, CuiAppearanceLink, CuiAppearanceOutlined, CuiAppearanceOutlinedGray, CuiAppearanceSecondary, CuiShapeRounded, CuiSizeMd, CuiSizeSm, CuiSizeXs, CuiSizeXxs } from '../../types';
|
|
2
|
+
import type { CuiAppearanceAction, CuiAppearanceActionViolet, CuiAppearanceDestructive, CuiAppearanceFlat, CuiAppearanceGhost, CuiAppearanceLink, CuiAppearanceOutlined, CuiAppearanceOutlinedGray, CuiAppearanceSecondary, CuiShapeRounded, CuiSizeMd, CuiSizeSm, CuiSizeXs, CuiSizeXxs } from '../../types';
|
|
3
3
|
export interface CuiButtonOptions {
|
|
4
|
-
readonly appearance: CuiAppearanceAction | CuiAppearanceSecondary | CuiAppearanceOutlined | CuiAppearanceOutlinedGray | CuiAppearanceGhost | CuiAppearanceFlat | CuiAppearanceDestructive | CuiAppearanceLink;
|
|
4
|
+
readonly appearance: CuiAppearanceAction | CuiAppearanceSecondary | CuiAppearanceOutlined | CuiAppearanceOutlinedGray | CuiAppearanceGhost | CuiAppearanceFlat | CuiAppearanceDestructive | CuiAppearanceLink | CuiAppearanceActionViolet;
|
|
5
5
|
readonly shape: CuiShapeRounded | null;
|
|
6
6
|
readonly size: CuiSizeXxs | CuiSizeXs | CuiSizeSm | CuiSizeMd;
|
|
7
7
|
}
|
|
@@ -18,7 +18,8 @@ export class CuiButtonComponent {
|
|
|
18
18
|
ghost: '--c-ghost-icon-color',
|
|
19
19
|
flat: '--c-flat-icon-color',
|
|
20
20
|
destructive: '--c-destructive-icon-color',
|
|
21
|
-
link: '--c-link-icon-color'
|
|
21
|
+
link: '--c-link-icon-color',
|
|
22
|
+
'action-violet': '--c-action-violet-icon-color'
|
|
22
23
|
};
|
|
23
24
|
this.COLOR_BASE_500 = 'var(--cui-base-500)';
|
|
24
25
|
this.BUTTON_ICONS_COLOR_BASE_500 = [
|
|
@@ -91,11 +92,11 @@ export class CuiButtonComponent {
|
|
|
91
92
|
return 'currentColor';
|
|
92
93
|
}
|
|
93
94
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
94
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: { shape: "shape", disabled: "disabled", isLoaderShown: "isLoaderShown", icon: "icon", iconRight: "iconRight", appearance: "appearance", size: "size" }, host: { properties: { "attr.data-shape": "this.shape", "class._disabled": "this.disabled", "class._loading": "this.isLoaderShown", "attr.data-appearance": "this.appearance", "attr.data-size": "this.size", "class._only-icon": "this.containsOnlyIcon", "disabled": "this.isDisabled" } }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<span\r\n class=\"c-wrapper\"\r\n [class.c-wrapper_invisible]=\"isLoaderShown\"\r\n>\r\n <cui-svg\r\n *ngIf=\"icon\"\r\n [icon]=\"icon\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n <span\r\n #content\r\n class=\"c-content\"\r\n ><ng-content></ng-content></span>\r\n <cui-svg\r\n *ngIf=\"iconRight\"\r\n [icon]=\"iconRight\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n</span>\r\n<cui-svg\r\n *ngIf=\"isLoaderShown\"\r\n icon=\"cuiIconLoading\"\r\n class=\"c-loader\"\r\n></cui-svg>\r\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-weight:500;font-size:14px;line-height:20px;display:inline-block;position:relative;box-sizing:border-box;border-radius:8px;font-family:var(--cui-main-font)}:host:disabled{cursor:not-allowed}:host[data-shape=rounded]{border-radius:20px}:host[data-appearance=action]{background:var(--c-action-background);color:var(--cui-gray-0);border:1px solid var(--c-action-border-color)}@media (hover: hover){:host[data-appearance=action]:hover{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}}:host[data-appearance=action]:active{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}:host[data-appearance=action]:disabled{background:var(--c-action-background);border-color:var(--c-action-border-color)}:host[data-appearance=secondary]{background:var(--cui-base-100);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=secondary]:hover{background:var(--cui-base-200)}}:host[data-appearance=secondary]:active{background:var(--cui-base-200)}:host[data-appearance=secondary]:disabled{background:var(--cui-base-100)}:host[data-appearance=outlined]{border:1px solid var(--cui-base-200);background:var(--cui-base-0);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=outlined]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined]:active{background:var(--cui-base-50)}:host[data-appearance=outlined]:disabled{background:var(--cui-base-0)}:host[data-appearance=outlined-gray]{border:1px solid var(--cui-base-200);background:var(--cui-base-10);color:var(--c-outlined-gray-color)}@media (hover: hover){:host[data-appearance=outlined-gray]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined-gray]:active{background:var(--cui-base-50)}:host[data-appearance=outlined-gray]:disabled{background:var(--cui-base-10)}:host[data-appearance=ghost]{color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=ghost]:hover{background:var(--cui-base-50)}}:host[data-appearance=ghost]:active{background:var(--cui-base-50)}:host[data-appearance=ghost]:disabled{background:inherit}:host[data-appearance=flat]{color:var(--cui-light-blue-600)}@media (hover: hover){:host[data-appearance=flat]:hover{background:var(--cui-base-50)}}:host[data-appearance=flat]:active{background:var(--cui-base-50)}:host[data-appearance=flat]:disabled{background:inherit}:host[data-appearance=destructive]{background:var(--cui-danger);color:var(--cui-gray-0)}@media (hover: hover){:host[data-appearance=destructive]:hover{background:var(--cui-red-600)}}:host[data-appearance=destructive]:active{background:var(--cui-red-600)}:host[data-appearance=destructive]:disabled{background:var(--cui-danger)}:host[data-appearance=link]{height:24px!important;padding:0 4px!important;color:var(--cui-info)}@media (hover: hover){:host[data-appearance=link]:hover{color:var(--cui-blue-800)}}:host[data-appearance=link]:active{color:var(--cui-blue-800)}:host[data-appearance=link]:disabled{color:var(--cui-info)}:host[data-size=xxs]{font-size:12px;line-height:14px;height:28px;padding:0 12px}:host[data-size=xxs][data-appearance=action],:host[data-size=xxs][data-appearance=outlined],:host[data-size=xxs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xxs]:has(.c-content:empty){width:28px}:host[data-size=xxs] .c-wrapper{gap:6px}:host[data-size=xs]{font-size:13px;line-height:16px;height:32px;padding:0 12px}:host[data-size=xs][data-appearance=action],:host[data-size=xs][data-appearance=outlined],:host[data-size=xs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xs]:has(.c-content:empty){width:32px}:host[data-size=sm]{height:36px;padding:0 14px}:host[data-size=sm][data-appearance=action],:host[data-size=sm][data-appearance=outlined],:host[data-size=sm][data-appearance=outlined-gray]{padding:0 13px}:host[data-size=sm]:has(.c-content:empty){width:36px}:host[data-size=md]{height:40px;padding:0 16px}:host[data-size=md][data-appearance=action],:host[data-size=md][data-appearance=outlined],:host[data-size=md][data-appearance=outlined-gray]{padding:0 15px}:host[data-size=md]:has(.c-content:empty){width:40px}:host._disabled{opacity:.5}@media (hover: hover){:host-context([cuiTheme=dark])[data-appearance=destructive]:hover{background:var(--cui-red-300)}}:host-context([cuiTheme=dark])[data-appearance=destructive]:active{background:var(--cui-red-300)}:host-context([cuiTheme=dark])[data-appearance=destructive]:disabled{background:var(--cui-danger)}.c-content:empty{display:contents}.c-wrapper{display:flex;justify-content:center;align-items:center;gap:8px;height:100%}.c-wrapper_invisible{opacity:0}.c-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
95
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: { shape: "shape", disabled: "disabled", isLoaderShown: "isLoaderShown", icon: "icon", iconRight: "iconRight", appearance: "appearance", size: "size" }, host: { properties: { "attr.data-shape": "this.shape", "class._disabled": "this.disabled", "class._loading": "this.isLoaderShown", "attr.data-appearance": "this.appearance", "attr.data-size": "this.size", "class._only-icon": "this.containsOnlyIcon", "disabled": "this.isDisabled" } }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<span\r\n class=\"c-wrapper\"\r\n [class.c-wrapper_invisible]=\"isLoaderShown\"\r\n>\r\n <cui-svg\r\n *ngIf=\"icon\"\r\n [icon]=\"icon\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n <span\r\n #content\r\n class=\"c-content\"\r\n ><ng-content></ng-content></span>\r\n <cui-svg\r\n *ngIf=\"iconRight\"\r\n [icon]=\"iconRight\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n</span>\r\n<cui-svg\r\n *ngIf=\"isLoaderShown\"\r\n icon=\"cuiIconLoading\"\r\n class=\"c-loader\"\r\n></cui-svg>\r\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-weight:500;font-size:14px;line-height:20px;display:inline-block;position:relative;box-sizing:border-box;border-radius:8px;font-family:var(--cui-main-font)}:host:disabled{cursor:not-allowed}:host[data-shape=rounded]{border-radius:20px}:host[data-appearance=action]{background:var(--c-action-background);color:var(--cui-gray-0);border:1px solid var(--c-action-border-color)}@media (hover: hover){:host[data-appearance=action]:hover{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}}:host[data-appearance=action]:active{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}:host[data-appearance=action]:disabled{background:var(--c-action-background);border-color:var(--c-action-border-color)}:host[data-appearance=action-violet]{background:var(--cui-violet-400);color:var(--cui-gray-0);border:1px solid var(--cui-violet-400)}@media (hover: hover){:host[data-appearance=action-violet]:hover{background:var(--cui-violet-500);border-color:var(--cui-violet-500)}}:host[data-appearance=action-violet]:active{background:var(--cui-violet-500);border-color:var(--cui-violet-500)}:host[data-appearance=action-violet]:disabled{background:var(--cui-violet-400);border-color:var(--cui-violet-400)}:host[data-appearance=secondary]{background:var(--cui-base-100);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=secondary]:hover{background:var(--cui-base-200)}}:host[data-appearance=secondary]:active{background:var(--cui-base-200)}:host[data-appearance=secondary]:disabled{background:var(--cui-base-100)}:host[data-appearance=outlined]{border:1px solid var(--cui-base-200);background:var(--cui-base-0);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=outlined]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined]:active{background:var(--cui-base-50)}:host[data-appearance=outlined]:disabled{background:var(--cui-base-0)}:host[data-appearance=outlined-gray]{border:1px solid var(--cui-base-200);background:var(--cui-base-10);color:var(--c-outlined-gray-color)}@media (hover: hover){:host[data-appearance=outlined-gray]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined-gray]:active{background:var(--cui-base-50)}:host[data-appearance=outlined-gray]:disabled{background:var(--cui-base-10)}:host[data-appearance=ghost]{color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=ghost]:hover{background:var(--cui-base-50)}}:host[data-appearance=ghost]:active{background:var(--cui-base-50)}:host[data-appearance=ghost]:disabled{background:inherit}:host[data-appearance=flat]{color:var(--cui-light-blue-600)}@media (hover: hover){:host[data-appearance=flat]:hover{background:var(--cui-base-50)}}:host[data-appearance=flat]:active{background:var(--cui-base-50)}:host[data-appearance=flat]:disabled{background:inherit}:host[data-appearance=destructive]{background:var(--cui-danger);color:var(--cui-gray-0)}@media (hover: hover){:host[data-appearance=destructive]:hover{background:var(--cui-red-600)}}:host[data-appearance=destructive]:active{background:var(--cui-red-600)}:host[data-appearance=destructive]:disabled{background:var(--cui-danger)}:host[data-appearance=link]{height:24px!important;padding:0 4px!important;color:var(--cui-info)}@media (hover: hover){:host[data-appearance=link]:hover{color:var(--cui-blue-800)}}:host[data-appearance=link]:active{color:var(--cui-blue-800)}:host[data-appearance=link]:disabled{color:var(--cui-info)}:host[data-size=xxs]{font-size:12px;line-height:14px;height:28px;padding:0 12px}:host[data-size=xxs][data-appearance=action],:host[data-size=xxs][data-appearance=outlined],:host[data-size=xxs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xxs]:has(.c-content:empty){width:28px}:host[data-size=xxs] .c-wrapper{gap:6px}:host[data-size=xs]{font-size:13px;line-height:16px;height:32px;padding:0 12px}:host[data-size=xs][data-appearance=action],:host[data-size=xs][data-appearance=outlined],:host[data-size=xs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xs]:has(.c-content:empty){width:32px}:host[data-size=sm]{height:36px;padding:0 14px}:host[data-size=sm][data-appearance=action],:host[data-size=sm][data-appearance=outlined],:host[data-size=sm][data-appearance=outlined-gray]{padding:0 13px}:host[data-size=sm]:has(.c-content:empty){width:36px}:host[data-size=md]{height:40px;padding:0 16px}:host[data-size=md][data-appearance=action],:host[data-size=md][data-appearance=outlined],:host[data-size=md][data-appearance=outlined-gray]{padding:0 15px}:host[data-size=md]:has(.c-content:empty){width:40px}:host._disabled{opacity:.5}@media (hover: hover){:host-context([cuiTheme=dark])[data-appearance=destructive]:hover{background:var(--cui-red-300)}}:host-context([cuiTheme=dark])[data-appearance=destructive]:active{background:var(--cui-red-300)}:host-context([cuiTheme=dark])[data-appearance=destructive]:disabled{background:var(--cui-danger)}.c-content:empty{display:contents}.c-wrapper{display:flex;justify-content:center;align-items:center;gap:8px;height:100%}.c-wrapper_invisible{opacity:0}.c-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
95
96
|
}
|
|
96
97
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiButtonComponent, decorators: [{
|
|
97
98
|
type: Component,
|
|
98
|
-
args: [{ selector: 'button[cuiButton], a[cuiButton]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\r\n class=\"c-wrapper\"\r\n [class.c-wrapper_invisible]=\"isLoaderShown\"\r\n>\r\n <cui-svg\r\n *ngIf=\"icon\"\r\n [icon]=\"icon\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n <span\r\n #content\r\n class=\"c-content\"\r\n ><ng-content></ng-content></span>\r\n <cui-svg\r\n *ngIf=\"iconRight\"\r\n [icon]=\"iconRight\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n</span>\r\n<cui-svg\r\n *ngIf=\"isLoaderShown\"\r\n icon=\"cuiIconLoading\"\r\n class=\"c-loader\"\r\n></cui-svg>\r\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-weight:500;font-size:14px;line-height:20px;display:inline-block;position:relative;box-sizing:border-box;border-radius:8px;font-family:var(--cui-main-font)}:host:disabled{cursor:not-allowed}:host[data-shape=rounded]{border-radius:20px}:host[data-appearance=action]{background:var(--c-action-background);color:var(--cui-gray-0);border:1px solid var(--c-action-border-color)}@media (hover: hover){:host[data-appearance=action]:hover{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}}:host[data-appearance=action]:active{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}:host[data-appearance=action]:disabled{background:var(--c-action-background);border-color:var(--c-action-border-color)}:host[data-appearance=secondary]{background:var(--cui-base-100);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=secondary]:hover{background:var(--cui-base-200)}}:host[data-appearance=secondary]:active{background:var(--cui-base-200)}:host[data-appearance=secondary]:disabled{background:var(--cui-base-100)}:host[data-appearance=outlined]{border:1px solid var(--cui-base-200);background:var(--cui-base-0);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=outlined]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined]:active{background:var(--cui-base-50)}:host[data-appearance=outlined]:disabled{background:var(--cui-base-0)}:host[data-appearance=outlined-gray]{border:1px solid var(--cui-base-200);background:var(--cui-base-10);color:var(--c-outlined-gray-color)}@media (hover: hover){:host[data-appearance=outlined-gray]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined-gray]:active{background:var(--cui-base-50)}:host[data-appearance=outlined-gray]:disabled{background:var(--cui-base-10)}:host[data-appearance=ghost]{color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=ghost]:hover{background:var(--cui-base-50)}}:host[data-appearance=ghost]:active{background:var(--cui-base-50)}:host[data-appearance=ghost]:disabled{background:inherit}:host[data-appearance=flat]{color:var(--cui-light-blue-600)}@media (hover: hover){:host[data-appearance=flat]:hover{background:var(--cui-base-50)}}:host[data-appearance=flat]:active{background:var(--cui-base-50)}:host[data-appearance=flat]:disabled{background:inherit}:host[data-appearance=destructive]{background:var(--cui-danger);color:var(--cui-gray-0)}@media (hover: hover){:host[data-appearance=destructive]:hover{background:var(--cui-red-600)}}:host[data-appearance=destructive]:active{background:var(--cui-red-600)}:host[data-appearance=destructive]:disabled{background:var(--cui-danger)}:host[data-appearance=link]{height:24px!important;padding:0 4px!important;color:var(--cui-info)}@media (hover: hover){:host[data-appearance=link]:hover{color:var(--cui-blue-800)}}:host[data-appearance=link]:active{color:var(--cui-blue-800)}:host[data-appearance=link]:disabled{color:var(--cui-info)}:host[data-size=xxs]{font-size:12px;line-height:14px;height:28px;padding:0 12px}:host[data-size=xxs][data-appearance=action],:host[data-size=xxs][data-appearance=outlined],:host[data-size=xxs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xxs]:has(.c-content:empty){width:28px}:host[data-size=xxs] .c-wrapper{gap:6px}:host[data-size=xs]{font-size:13px;line-height:16px;height:32px;padding:0 12px}:host[data-size=xs][data-appearance=action],:host[data-size=xs][data-appearance=outlined],:host[data-size=xs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xs]:has(.c-content:empty){width:32px}:host[data-size=sm]{height:36px;padding:0 14px}:host[data-size=sm][data-appearance=action],:host[data-size=sm][data-appearance=outlined],:host[data-size=sm][data-appearance=outlined-gray]{padding:0 13px}:host[data-size=sm]:has(.c-content:empty){width:36px}:host[data-size=md]{height:40px;padding:0 16px}:host[data-size=md][data-appearance=action],:host[data-size=md][data-appearance=outlined],:host[data-size=md][data-appearance=outlined-gray]{padding:0 15px}:host[data-size=md]:has(.c-content:empty){width:40px}:host._disabled{opacity:.5}@media (hover: hover){:host-context([cuiTheme=dark])[data-appearance=destructive]:hover{background:var(--cui-red-300)}}:host-context([cuiTheme=dark])[data-appearance=destructive]:active{background:var(--cui-red-300)}:host-context([cuiTheme=dark])[data-appearance=destructive]:disabled{background:var(--cui-danger)}.c-content:empty{display:contents}.c-wrapper{display:flex;justify-content:center;align-items:center;gap:8px;height:100%}.c-wrapper_invisible{opacity:0}.c-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}\n"] }]
|
|
99
|
+
args: [{ selector: 'button[cuiButton], a[cuiButton]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\r\n class=\"c-wrapper\"\r\n [class.c-wrapper_invisible]=\"isLoaderShown\"\r\n>\r\n <cui-svg\r\n *ngIf=\"icon\"\r\n [icon]=\"icon\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n <span\r\n #content\r\n class=\"c-content\"\r\n ><ng-content></ng-content></span>\r\n <cui-svg\r\n *ngIf=\"iconRight\"\r\n [icon]=\"iconRight\"\r\n [width]=\"iconDimensions.width\"\r\n [height]=\"iconDimensions.height\"\r\n [color]=\"iconColor\"\r\n ></cui-svg>\r\n</span>\r\n<cui-svg\r\n *ngIf=\"isLoaderShown\"\r\n icon=\"cuiIconLoading\"\r\n class=\"c-loader\"\r\n></cui-svg>\r\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-weight:500;font-size:14px;line-height:20px;display:inline-block;position:relative;box-sizing:border-box;border-radius:8px;font-family:var(--cui-main-font)}:host:disabled{cursor:not-allowed}:host[data-shape=rounded]{border-radius:20px}:host[data-appearance=action]{background:var(--c-action-background);color:var(--cui-gray-0);border:1px solid var(--c-action-border-color)}@media (hover: hover){:host[data-appearance=action]:hover{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}}:host[data-appearance=action]:active{background:var(--c-action-background-hover);border-color:var(--c-action-background-hover)}:host[data-appearance=action]:disabled{background:var(--c-action-background);border-color:var(--c-action-border-color)}:host[data-appearance=action-violet]{background:var(--cui-violet-400);color:var(--cui-gray-0);border:1px solid var(--cui-violet-400)}@media (hover: hover){:host[data-appearance=action-violet]:hover{background:var(--cui-violet-500);border-color:var(--cui-violet-500)}}:host[data-appearance=action-violet]:active{background:var(--cui-violet-500);border-color:var(--cui-violet-500)}:host[data-appearance=action-violet]:disabled{background:var(--cui-violet-400);border-color:var(--cui-violet-400)}:host[data-appearance=secondary]{background:var(--cui-base-100);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=secondary]:hover{background:var(--cui-base-200)}}:host[data-appearance=secondary]:active{background:var(--cui-base-200)}:host[data-appearance=secondary]:disabled{background:var(--cui-base-100)}:host[data-appearance=outlined]{border:1px solid var(--cui-base-200);background:var(--cui-base-0);color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=outlined]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined]:active{background:var(--cui-base-50)}:host[data-appearance=outlined]:disabled{background:var(--cui-base-0)}:host[data-appearance=outlined-gray]{border:1px solid var(--cui-base-200);background:var(--cui-base-10);color:var(--c-outlined-gray-color)}@media (hover: hover){:host[data-appearance=outlined-gray]:hover{background:var(--cui-base-50)}}:host[data-appearance=outlined-gray]:active{background:var(--cui-base-50)}:host[data-appearance=outlined-gray]:disabled{background:var(--cui-base-10)}:host[data-appearance=ghost]{color:var(--cui-base-900)}@media (hover: hover){:host[data-appearance=ghost]:hover{background:var(--cui-base-50)}}:host[data-appearance=ghost]:active{background:var(--cui-base-50)}:host[data-appearance=ghost]:disabled{background:inherit}:host[data-appearance=flat]{color:var(--cui-light-blue-600)}@media (hover: hover){:host[data-appearance=flat]:hover{background:var(--cui-base-50)}}:host[data-appearance=flat]:active{background:var(--cui-base-50)}:host[data-appearance=flat]:disabled{background:inherit}:host[data-appearance=destructive]{background:var(--cui-danger);color:var(--cui-gray-0)}@media (hover: hover){:host[data-appearance=destructive]:hover{background:var(--cui-red-600)}}:host[data-appearance=destructive]:active{background:var(--cui-red-600)}:host[data-appearance=destructive]:disabled{background:var(--cui-danger)}:host[data-appearance=link]{height:24px!important;padding:0 4px!important;color:var(--cui-info)}@media (hover: hover){:host[data-appearance=link]:hover{color:var(--cui-blue-800)}}:host[data-appearance=link]:active{color:var(--cui-blue-800)}:host[data-appearance=link]:disabled{color:var(--cui-info)}:host[data-size=xxs]{font-size:12px;line-height:14px;height:28px;padding:0 12px}:host[data-size=xxs][data-appearance=action],:host[data-size=xxs][data-appearance=outlined],:host[data-size=xxs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xxs]:has(.c-content:empty){width:28px}:host[data-size=xxs] .c-wrapper{gap:6px}:host[data-size=xs]{font-size:13px;line-height:16px;height:32px;padding:0 12px}:host[data-size=xs][data-appearance=action],:host[data-size=xs][data-appearance=outlined],:host[data-size=xs][data-appearance=outlined-gray]{padding:0 11px}:host[data-size=xs]:has(.c-content:empty){width:32px}:host[data-size=sm]{height:36px;padding:0 14px}:host[data-size=sm][data-appearance=action],:host[data-size=sm][data-appearance=outlined],:host[data-size=sm][data-appearance=outlined-gray]{padding:0 13px}:host[data-size=sm]:has(.c-content:empty){width:36px}:host[data-size=md]{height:40px;padding:0 16px}:host[data-size=md][data-appearance=action],:host[data-size=md][data-appearance=outlined],:host[data-size=md][data-appearance=outlined-gray]{padding:0 15px}:host[data-size=md]:has(.c-content:empty){width:40px}:host._disabled{opacity:.5}@media (hover: hover){:host-context([cuiTheme=dark])[data-appearance=destructive]:hover{background:var(--cui-red-300)}}:host-context([cuiTheme=dark])[data-appearance=destructive]:active{background:var(--cui-red-300)}:host-context([cuiTheme=dark])[data-appearance=destructive]:disabled{background:var(--cui-danger)}.c-content:empty{display:contents}.c-wrapper{display:flex;justify-content:center;align-items:center;gap:8px;height:100%}.c-wrapper_invisible{opacity:0}.c-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}\n"] }]
|
|
99
100
|
}], propDecorators: { shape: [{
|
|
100
101
|
type: Input
|
|
101
102
|
}, {
|
|
@@ -135,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
135
136
|
type: ViewChild,
|
|
136
137
|
args: ['content']
|
|
137
138
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQW9CLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFReEUsTUFBTSxPQUFPLGtCQUFrQjtJQU4vQjtRQU9tQixzQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM5QyxZQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWtDLENBQUM7UUFDaEUsV0FBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QixxQkFBZ0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUU1Qyx5QkFBb0IsR0FBbUQ7WUFDeEYsTUFBTSxFQUFFLHVCQUF1QjtZQUMvQixTQUFTLEVBQUUsMEJBQTBCO1lBQ3JDLFFBQVEsRUFBRSx5QkFBeUI7WUFDbkMsZUFBZSxFQUFFLDhCQUE4QjtZQUMvQyxLQUFLLEVBQUUsc0JBQXNCO1lBQzdCLElBQUksRUFBRSxxQkFBcUI7WUFDM0IsV0FBVyxFQUFFLDRCQUE0QjtZQUN6QyxJQUFJLEVBQUUscUJBQXFCO1NBQzVCLENBQUM7UUFDaUIsbUJBQWMsR0FBRyxxQkFBcUIsQ0FBQztRQUN2Qyxn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QVc7dUJBQUMsaUJBQWlCO2dCQUt2QixRQUFRO3NCQUZkLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUt2QixhQUFhO3NCQUZuQixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGdCQUFnQjtnQkFJdEIsSUFBSTtzQkFEVixLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFLSyxVQUFVO3NCQUZwQixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLHNCQUFzQjtnQkFheEIsSUFBSTtzQkFGZCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGdCQUFnQjtnQkF3Qm5CLGdCQUFnQjtzQkFEekIsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBSWpCLFVBQVU7c0JBRHZCLFdBQVc7dUJBQUMsVUFBVTtnQkFNYixPQUFPO3NCQURoQixTQUFTO3VCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIGluamVjdCxcclxuICBJbnB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgT25Jbml0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB0eXBlIHsgQ3VpSWNvbiB9IGZyb20gJ0BjdWJ5LXVpL2ljb25zJztcclxuaW1wb3J0IHsgQ1VJX1dJTkRPVyB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XHJcblxyXG5pbXBvcnQgeyBDVUlfQlVUVE9OX09QVElPTlMsIEN1aUJ1dHRvbk9wdGlvbnMgfSBmcm9tICcuL2J1dHRvbi5vcHRpb25zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYnV0dG9uW2N1aUJ1dHRvbl0sIGFbY3VpQnV0dG9uXScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi50ZW1wbGF0ZS5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9idXR0b24uc3R5bGUuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdWlCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBDdWlCdXR0b25PcHRpb25zLCBPbkluaXQge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50IGFzIEhUTUxCdXR0b25FbGVtZW50O1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgd2luZG93ID0gaW5qZWN0KENVSV9XSU5ET1cpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgY3VpQnV0dG9uT3B0aW9ucyA9IGluamVjdChDVUlfQlVUVE9OX09QVElPTlMpO1xyXG5cclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgQXBwZWFyYW5jZUljb25Db2xvcnM6IFJlY29yZDxDdWlCdXR0b25PcHRpb25zWydhcHBlYXJhbmNlJ10sIHN0cmluZz4gPSB7XHJcbiAgICBhY3Rpb246ICctLWMtYWN0aW9uLWljb24tY29sb3InLFxyXG4gICAgc2Vjb25kYXJ5OiAnLS1jLXNlY29uZGFyeS1pY29uLWNvbG9yJyxcclxuICAgIG91dGxpbmVkOiAnLS1jLW91dGxpbmVkLWljb24tY29sb3InLFxyXG4gICAgJ291dGxpbmVkLWdyYXknOiAnLS1jLW91dGxpbmVkLWdyYXktaWNvbi1jb2xvcicsXHJcbiAgICBnaG9zdDogJy0tYy1naG9zdC1pY29uLWNvbG9yJyxcclxuICAgIGZsYXQ6ICctLWMtZmxhdC1pY29uLWNvbG9yJyxcclxuICAgIGRlc3RydWN0aXZlOiAnLS1jLWRlc3RydWN0aXZlLWljb24tY29sb3InLFxyXG4gICAgbGluazogJy0tYy1saW5rLWljb24tY29sb3InXHJcbiAgfTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgQ09MT1JfQkFTRV81MDAgPSAndmFyKC0tY3VpLWJhc2UtNTAwKSc7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEJVVFRPTl9JQ09OU19DT0xPUl9CQVNFXzUwMDogQ3VpQnV0dG9uT3B0aW9uc1snYXBwZWFyYW5jZSddW10gPSBbXHJcbiAgICAnc2Vjb25kYXJ5JyxcclxuICAgICdvdXRsaW5lZCcsXHJcbiAgICAnb3V0bGluZWQtZ3JheScsXHJcbiAgICAnZ2hvc3QnXHJcbiAgXTtcclxuXHJcbiAgcHJvdGVjdGVkIF9hcHBlYXJhbmNlID0gdGhpcy5jdWlCdXR0b25PcHRpb25zLmFwcGVhcmFuY2U7XHJcbiAgcHJvdGVjdGVkIGljb25Db2xvciA9IHRoaXMuZ2V0SWNvbkNvbG9yKHRoaXMuX2FwcGVhcmFuY2UpO1xyXG4gIHByb3RlY3RlZCBfc2l6ZSA9IHRoaXMuY3VpQnV0dG9uT3B0aW9ucy5zaXplO1xyXG4gIHByb3RlY3RlZCBpY29uRGltZW5zaW9ucyA9IHtcclxuICAgIHdpZHRoOiAyMCxcclxuICAgIGhlaWdodDogMjBcclxuICB9O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNoYXBlJylcclxuICBwdWJsaWMgc2hhcGUgPSB0aGlzLmN1aUJ1dHRvbk9wdGlvbnMuc2hhcGU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fZGlzYWJsZWQnKVxyXG4gIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuX2xvYWRpbmcnKVxyXG4gIHB1YmxpYyBpc0xvYWRlclNob3duID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGljb24/OiBDdWlJY29uIHwgc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpY29uUmlnaHQ/OiBDdWlJY29uIHwgc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWFwcGVhcmFuY2UnKVxyXG4gIHB1YmxpYyBnZXQgYXBwZWFyYW5jZSgpOiBDdWlCdXR0b25PcHRpb25zWydhcHBlYXJhbmNlJ10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FwcGVhcmFuY2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IGFwcGVhcmFuY2UoYXBwZWFyYW5jZTogQ3VpQnV0dG9uT3B0aW9uc1snYXBwZWFyYW5jZSddKSB7XHJcbiAgICB0aGlzLl9hcHBlYXJhbmNlID0gYXBwZWFyYW5jZTtcclxuXHJcbiAgICB0aGlzLmNoYW5nZUljb25Db2xvcigpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcclxuICBwdWJsaWMgZ2V0IHNpemUoKTogQ3VpQnV0dG9uT3B0aW9uc1snc2l6ZSddIHtcclxuICAgIHJldHVybiB0aGlzLl9zaXplO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBzaXplKHNpemU6IEN1aUJ1dHRvbk9wdGlvbnNbJ3NpemUnXSkge1xyXG4gICAgdGhpcy5fc2l6ZSA9IHNpemU7XHJcblxyXG4gICAgaWYgKHNpemUgPT09ICd4eHMnKSB7XHJcbiAgICAgIHRoaXMuaWNvbkRpbWVuc2lvbnMgPSB7XHJcbiAgICAgICAgd2lkdGg6IDE2LFxyXG4gICAgICAgIGhlaWdodDogMTZcclxuICAgICAgfTtcclxuXHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmljb25EaW1lbnNpb25zID0ge1xyXG4gICAgICB3aWR0aDogMjAsXHJcbiAgICAgIGhlaWdodDogMjBcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9vbmx5LWljb24nKVxyXG4gIHByb3RlY3RlZCBjb250YWluc09ubHlJY29uID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0QmluZGluZygnZGlzYWJsZWQnKVxyXG4gIHByb3RlY3RlZCBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmRpc2FibGVkIHx8IHRoaXMuaXNMb2FkZXJTaG93bjtcclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnKVxyXG4gIHByb3RlY3RlZCBjb250ZW50ITogRWxlbWVudFJlZjxIVE1MU3BhbkVsZW1lbnQ+O1xyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluaXRJY29uQ29sb3IoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdEljb25Db2xvcigpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hhbmdlSWNvbkNvbG9yKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNoYW5nZUljb25Db2xvcigpOiB2b2lkIHtcclxuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xyXG4gICAgICB0aGlzLmljb25Db2xvciA9IHRoaXMuZ2V0SWNvbkNvbG9yKHRoaXMuX2FwcGVhcmFuY2UpO1xyXG5cclxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRJY29uQ29sb3IoYXBwZWFyYW5jZTogQ3VpQnV0dG9uT3B0aW9uc1snYXBwZWFyYW5jZSddKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGN1c3RvbUljb25Db2xvciA9IHRoaXMud2luZG93XHJcbiAgICAgIC5nZXRDb21wdXRlZFN0eWxlKHRoaXMuZWxlbWVudClcclxuICAgICAgLmdldFByb3BlcnR5VmFsdWUodGhpcy5BcHBlYXJhbmNlSWNvbkNvbG9yc1thcHBlYXJhbmNlXSk7XHJcblxyXG4gICAgaWYgKGN1c3RvbUljb25Db2xvcikge1xyXG4gICAgICByZXR1cm4gY3VzdG9tSWNvbkNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLkJVVFRPTl9JQ09OU19DT0xPUl9CQVNFXzUwMC5pbmNsdWRlcyhhcHBlYXJhbmNlKSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5DT0xPUl9CQVNFXzUwMDtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gJ2N1cnJlbnRDb2xvcic7XHJcbiAgfVxyXG59XHJcbiIsIjxzcGFuXHJcbiAgY2xhc3M9XCJjLXdyYXBwZXJcIlxyXG4gIFtjbGFzcy5jLXdyYXBwZXJfaW52aXNpYmxlXT1cImlzTG9hZGVyU2hvd25cIlxyXG4+XHJcbiAgPGN1aS1zdmdcclxuICAgICpuZ0lmPVwiaWNvblwiXHJcbiAgICBbaWNvbl09XCJpY29uXCJcclxuICAgIFt3aWR0aF09XCJpY29uRGltZW5zaW9ucy53aWR0aFwiXHJcbiAgICBbaGVpZ2h0XT1cImljb25EaW1lbnNpb25zLmhlaWdodFwiXHJcbiAgICBbY29sb3JdPVwiaWNvbkNvbG9yXCJcclxuICA+PC9jdWktc3ZnPlxyXG4gIDxzcGFuXHJcbiAgICAjY29udGVudFxyXG4gICAgY2xhc3M9XCJjLWNvbnRlbnRcIlxyXG4gID48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9zcGFuPlxyXG4gIDxjdWktc3ZnXHJcbiAgICAqbmdJZj1cImljb25SaWdodFwiXHJcbiAgICBbaWNvbl09XCJpY29uUmlnaHRcIlxyXG4gICAgW3dpZHRoXT1cImljb25EaW1lbnNpb25zLndpZHRoXCJcclxuICAgIFtoZWlnaHRdPVwiaWNvbkRpbWVuc2lvbnMuaGVpZ2h0XCJcclxuICAgIFtjb2xvcl09XCJpY29uQ29sb3JcIlxyXG4gID48L2N1aS1zdmc+XHJcbjwvc3Bhbj5cclxuPGN1aS1zdmdcclxuICAqbmdJZj1cImlzTG9hZGVyU2hvd25cIlxyXG4gIGljb249XCJjdWlJY29uTG9hZGluZ1wiXHJcbiAgY2xhc3M9XCJjLWxvYWRlclwiXHJcbj48L2N1aS1zdmc+XHJcbiJdfQ==
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBRVosTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQW9CLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFReEUsTUFBTSxPQUFPLGtCQUFrQjtJQU4vQjtRQU9xQixzQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM5QyxZQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWtDLENBQUM7UUFDaEUsV0FBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QixxQkFBZ0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUU1Qyx5QkFBb0IsR0FBbUQ7WUFDdEYsTUFBTSxFQUFFLHVCQUF1QjtZQUMvQixTQUFTLEVBQUUsMEJBQTBCO1lBQ3JDLFFBQVEsRUFBRSx5QkFBeUI7WUFDbkMsZUFBZSxFQUFFLDhCQUE4QjtZQUMvQyxLQUFLLEVBQUUsc0JBQXNCO1lBQzdCLElBQUksRUFBRSxxQkFBcUI7WUFDM0IsV0FBVyxFQUFFLDRCQUE0QjtZQUN6QyxJQUFJLEVBQUUscUJBQXFCO1lBQzNCLGVBQWUsRUFBRSw4QkFBOEI7U0FDbEQsQ0FBQztRQUNpQixtQkFBYyxH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QUs7c0JBRlgsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBS3ZCLFFBQVE7c0JBRmQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBS3ZCLGFBQWE7c0JBRm5CLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUl0QixJQUFJO3NCQURWLEtBQUs7Z0JBSUMsU0FBUztzQkFEZixLQUFLO2dCQUtLLFVBQVU7c0JBRnBCLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsc0JBQXNCO2dCQWF4QixJQUFJO3NCQUZkLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQXdCbkIsZ0JBQWdCO3NCQUR6QixXQUFXO3VCQUFDLGtCQUFrQjtnQkFJakIsVUFBVTtzQkFEdkIsV0FBVzt1QkFBQyxVQUFVO2dCQU1iLE9BQU87c0JBRGhCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEhvc3RCaW5kaW5nLFxyXG4gICAgaW5qZWN0LFxyXG4gICAgSW5wdXQsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBPbkluaXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHR5cGUgeyBDdWlJY29uIH0gZnJvbSAnQGN1YnktdWkvaWNvbnMnO1xyXG5pbXBvcnQgeyBDVUlfV0lORE9XIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcclxuXHJcbmltcG9ydCB7IENVSV9CVVRUT05fT1BUSU9OUywgQ3VpQnV0dG9uT3B0aW9ucyB9IGZyb20gJy4vYnV0dG9uLm9wdGlvbnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2J1dHRvbltjdWlCdXR0b25dLCBhW2N1aUJ1dHRvbl0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi50ZW1wbGF0ZS5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2J1dHRvbi5zdHlsZS5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3VpQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgQ3VpQnV0dG9uT3B0aW9ucywgT25Jbml0IHtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEJ1dHRvbkVsZW1lbnQ7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdyA9IGluamVjdChDVUlfV0lORE9XKTtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3VpQnV0dG9uT3B0aW9ucyA9IGluamVjdChDVUlfQlVUVE9OX09QVElPTlMpO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSBBcHBlYXJhbmNlSWNvbkNvbG9yczogUmVjb3JkPEN1aUJ1dHRvbk9wdGlvbnNbJ2FwcGVhcmFuY2UnXSwgc3RyaW5nPiA9IHtcclxuICAgICAgICBhY3Rpb246ICctLWMtYWN0aW9uLWljb24tY29sb3InLFxyXG4gICAgICAgIHNlY29uZGFyeTogJy0tYy1zZWNvbmRhcnktaWNvbi1jb2xvcicsXHJcbiAgICAgICAgb3V0bGluZWQ6ICctLWMtb3V0bGluZWQtaWNvbi1jb2xvcicsXHJcbiAgICAgICAgJ291dGxpbmVkLWdyYXknOiAnLS1jLW91dGxpbmVkLWdyYXktaWNvbi1jb2xvcicsXHJcbiAgICAgICAgZ2hvc3Q6ICctLWMtZ2hvc3QtaWNvbi1jb2xvcicsXHJcbiAgICAgICAgZmxhdDogJy0tYy1mbGF0LWljb24tY29sb3InLFxyXG4gICAgICAgIGRlc3RydWN0aXZlOiAnLS1jLWRlc3RydWN0aXZlLWljb24tY29sb3InLFxyXG4gICAgICAgIGxpbms6ICctLWMtbGluay1pY29uLWNvbG9yJyxcclxuICAgICAgICAnYWN0aW9uLXZpb2xldCc6ICctLWMtYWN0aW9uLXZpb2xldC1pY29uLWNvbG9yJ1xyXG4gICAgfTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBDT0xPUl9CQVNFXzUwMCA9ICd2YXIoLS1jdWktYmFzZS01MDApJztcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBCVVRUT05fSUNPTlNfQ09MT1JfQkFTRV81MDA6IEN1aUJ1dHRvbk9wdGlvbnNbJ2FwcGVhcmFuY2UnXVtdID0gW1xyXG4gICAgICAgICdzZWNvbmRhcnknLFxyXG4gICAgICAgICdvdXRsaW5lZCcsXHJcbiAgICAgICAgJ291dGxpbmVkLWdyYXknLFxyXG4gICAgICAgICdnaG9zdCdcclxuICAgIF07XHJcblxyXG4gICAgcHJvdGVjdGVkIF9hcHBlYXJhbmNlID0gdGhpcy5jdWlCdXR0b25PcHRpb25zLmFwcGVhcmFuY2U7XHJcbiAgICBwcm90ZWN0ZWQgaWNvbkNvbG9yID0gdGhpcy5nZXRJY29uQ29sb3IodGhpcy5fYXBwZWFyYW5jZSk7XHJcbiAgICBwcm90ZWN0ZWQgX3NpemUgPSB0aGlzLmN1aUJ1dHRvbk9wdGlvbnMuc2l6ZTtcclxuICAgIHByb3RlY3RlZCBpY29uRGltZW5zaW9ucyA9IHtcclxuICAgICAgICB3aWR0aDogMjAsXHJcbiAgICAgICAgaGVpZ2h0OiAyMFxyXG4gICAgfTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2hhcGUnKVxyXG4gICAgcHVibGljIHNoYXBlID0gdGhpcy5jdWlCdXR0b25PcHRpb25zLnNoYXBlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9kaXNhYmxlZCcpXHJcbiAgICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fbG9hZGluZycpXHJcbiAgICBwdWJsaWMgaXNMb2FkZXJTaG93biA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgaWNvbj86IEN1aUljb24gfCBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBpY29uUmlnaHQ/OiBDdWlJY29uIHwgc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1hcHBlYXJhbmNlJylcclxuICAgIHB1YmxpYyBnZXQgYXBwZWFyYW5jZSgpOiBDdWlCdXR0b25PcHRpb25zWydhcHBlYXJhbmNlJ10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9hcHBlYXJhbmNlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXQgYXBwZWFyYW5jZShhcHBlYXJhbmNlOiBDdWlCdXR0b25PcHRpb25zWydhcHBlYXJhbmNlJ10pIHtcclxuICAgICAgICB0aGlzLl9hcHBlYXJhbmNlID0gYXBwZWFyYW5jZTtcclxuXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VJY29uQ29sb3IoKTtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXHJcbiAgICBwdWJsaWMgZ2V0IHNpemUoKTogQ3VpQnV0dG9uT3B0aW9uc1snc2l6ZSddIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2l6ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0IHNpemUoc2l6ZTogQ3VpQnV0dG9uT3B0aW9uc1snc2l6ZSddKSB7XHJcbiAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7XHJcblxyXG4gICAgICAgIGlmIChzaXplID09PSAneHhzJykge1xyXG4gICAgICAgICAgICB0aGlzLmljb25EaW1lbnNpb25zID0ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2LFxyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNlxyXG4gICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5pY29uRGltZW5zaW9ucyA9IHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwLFxyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9vbmx5LWljb24nKVxyXG4gICAgcHJvdGVjdGVkIGNvbnRhaW5zT25seUljb24gPSBmYWxzZTtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2Rpc2FibGVkJylcclxuICAgIHByb3RlY3RlZCBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCB0aGlzLmlzTG9hZGVyU2hvd247XHJcbiAgICB9XHJcblxyXG4gICAgQFZpZXdDaGlsZCgnY29udGVudCcpXHJcbiAgICBwcm90ZWN0ZWQgY29udGVudCE6IEVsZW1lbnRSZWY8SFRNTFNwYW5FbGVtZW50PjtcclxuXHJcbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pbml0SWNvbkNvbG9yKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbml0SWNvbkNvbG9yKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2hhbmdlSWNvbkNvbG9yKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGFuZ2VJY29uQ29sb3IoKTogdm9pZCB7XHJcbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaWNvbkNvbG9yID0gdGhpcy5nZXRJY29uQ29sb3IodGhpcy5fYXBwZWFyYW5jZSk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0SWNvbkNvbG9yKGFwcGVhcmFuY2U6IEN1aUJ1dHRvbk9wdGlvbnNbJ2FwcGVhcmFuY2UnXSk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgY3VzdG9tSWNvbkNvbG9yID0gdGhpcy53aW5kb3dcclxuICAgICAgICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5lbGVtZW50KVxyXG4gICAgICAgICAgICAuZ2V0UHJvcGVydHlWYWx1ZSh0aGlzLkFwcGVhcmFuY2VJY29uQ29sb3JzW2FwcGVhcmFuY2VdKTtcclxuXHJcbiAgICAgICAgaWYgKGN1c3RvbUljb25Db2xvcikge1xyXG4gICAgICAgICAgICByZXR1cm4gY3VzdG9tSWNvbkNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuQlVUVE9OX0lDT05TX0NPTE9SX0JBU0VfNTAwLmluY2x1ZGVzKGFwcGVhcmFuY2UpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLkNPTE9SX0JBU0VfNTAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuICdjdXJyZW50Q29sb3InO1xyXG4gICAgfVxyXG59XHJcbiIsIjxzcGFuXHJcbiAgY2xhc3M9XCJjLXdyYXBwZXJcIlxyXG4gIFtjbGFzcy5jLXdyYXBwZXJfaW52aXNpYmxlXT1cImlzTG9hZGVyU2hvd25cIlxyXG4+XHJcbiAgPGN1aS1zdmdcclxuICAgICpuZ0lmPVwiaWNvblwiXHJcbiAgICBbaWNvbl09XCJpY29uXCJcclxuICAgIFt3aWR0aF09XCJpY29uRGltZW5zaW9ucy53aWR0aFwiXHJcbiAgICBbaGVpZ2h0XT1cImljb25EaW1lbnNpb25zLmhlaWdodFwiXHJcbiAgICBbY29sb3JdPVwiaWNvbkNvbG9yXCJcclxuICA+PC9jdWktc3ZnPlxyXG4gIDxzcGFuXHJcbiAgICAjY29udGVudFxyXG4gICAgY2xhc3M9XCJjLWNvbnRlbnRcIlxyXG4gID48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9zcGFuPlxyXG4gIDxjdWktc3ZnXHJcbiAgICAqbmdJZj1cImljb25SaWdodFwiXHJcbiAgICBbaWNvbl09XCJpY29uUmlnaHRcIlxyXG4gICAgW3dpZHRoXT1cImljb25EaW1lbnNpb25zLndpZHRoXCJcclxuICAgIFtoZWlnaHRdPVwiaWNvbkRpbWVuc2lvbnMuaGVpZ2h0XCJcclxuICAgIFtjb2xvcl09XCJpY29uQ29sb3JcIlxyXG4gID48L2N1aS1zdmc+XHJcbjwvc3Bhbj5cclxuPGN1aS1zdmdcclxuICAqbmdJZj1cImlzTG9hZGVyU2hvd25cIlxyXG4gIGljb249XCJjdWlJY29uTG9hZGluZ1wiXHJcbiAgY2xhc3M9XCJjLWxvYWRlclwiXHJcbj48L2N1aS1zdmc+XHJcbiJdfQ==
|
|
@@ -7,4 +7,4 @@ export const CUI_BUTTON_DEFAULT_OPTIONS = {
|
|
|
7
7
|
export const CUI_BUTTON_OPTIONS = new InjectionToken('', {
|
|
8
8
|
factory: () => CUI_BUTTON_DEFAULT_OPTIONS
|
|
9
9
|
});
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFzQy9DLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFxQjtJQUN4RCxVQUFVLEVBQUUsUUFBUTtJQUNwQixLQUFLLEVBQUUsSUFBSTtJQUNYLElBQUksRUFBRSxJQUFJO0NBQ2IsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFDLEVBQUUsRUFBRTtJQUNyRCxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsMEJBQTBCO0NBQzVDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgdHlwZSB7XHJcbiAgICBDdWlBcHBlYXJhbmNlQWN0aW9uLFxyXG4gICAgQ3VpQXBwZWFyYW5jZUFjdGlvblZpb2xldCxcclxuICAgIEN1aUFwcGVhcmFuY2VEZXN0cnVjdGl2ZSxcclxuICAgIEN1aUFwcGVhcmFuY2VGbGF0LFxyXG4gICAgQ3VpQXBwZWFyYW5jZUdob3N0LFxyXG4gICAgQ3VpQXBwZWFyYW5jZUxpbmssXHJcbiAgICBDdWlBcHBlYXJhbmNlT3V0bGluZWQsXHJcbiAgICBDdWlBcHBlYXJhbmNlT3V0bGluZWRHcmF5LFxyXG4gICAgQ3VpQXBwZWFyYW5jZVNlY29uZGFyeSxcclxuICAgIEN1aVNoYXBlUm91bmRlZCxcclxuICAgIEN1aVNpemVNZCxcclxuICAgIEN1aVNpemVTbSxcclxuICAgIEN1aVNpemVYcyxcclxuICAgIEN1aVNpemVYeHNcclxufSBmcm9tICcuLi8uLi90eXBlcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1aUJ1dHRvbk9wdGlvbnMge1xyXG4gICAgcmVhZG9ubHkgYXBwZWFyYW5jZTpcclxuICAgIHwgQ3VpQXBwZWFyYW5jZUFjdGlvblxyXG4gICAgfCBDdWlBcHBlYXJhbmNlU2Vjb25kYXJ5XHJcbiAgICB8IEN1aUFwcGVhcmFuY2VPdXRsaW5lZFxyXG4gICAgfCBDdWlBcHBlYXJhbmNlT3V0bGluZWRHcmF5XHJcbiAgICB8IEN1aUFwcGVhcmFuY2VHaG9zdFxyXG4gICAgfCBDdWlBcHBlYXJhbmNlRmxhdFxyXG4gICAgfCBDdWlBcHBlYXJhbmNlRGVzdHJ1Y3RpdmVcclxuICAgIHwgQ3VpQXBwZWFyYW5jZUxpbmtcclxuICAgIHwgQ3VpQXBwZWFyYW5jZUFjdGlvblZpb2xldFxyXG4gICAgcmVhZG9ubHkgc2hhcGU6IEN1aVNoYXBlUm91bmRlZCB8IG51bGw7XHJcbiAgICByZWFkb25seSBzaXplOlxyXG4gICAgfCBDdWlTaXplWHhzXHJcbiAgICB8IEN1aVNpemVYc1xyXG4gICAgfCBDdWlTaXplU21cclxuICAgIHwgQ3VpU2l6ZU1kO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgQ1VJX0JVVFRPTl9ERUZBVUxUX09QVElPTlM6IEN1aUJ1dHRvbk9wdGlvbnMgPSB7XHJcbiAgICBhcHBlYXJhbmNlOiAnYWN0aW9uJyxcclxuICAgIHNoYXBlOiBudWxsLFxyXG4gICAgc2l6ZTogJ3NtJ1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IENVSV9CVVRUT05fT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignJywge1xyXG4gICAgZmFjdG9yeTogKCkgPT4gQ1VJX0JVVFRPTl9ERUZBVUxUX09QVElPTlNcclxufSk7XHJcbiJdfQ==
|
|
@@ -41,12 +41,12 @@ export class CuiEditorBlockComponent {
|
|
|
41
41
|
if (!element) {
|
|
42
42
|
return;
|
|
43
43
|
}
|
|
44
|
-
this.editorConfig.set({ ...this.config()
|
|
44
|
+
this.editorConfig.set({ element, ...this.config() });
|
|
45
45
|
effectRef.destroy();
|
|
46
46
|
}, { allowSignalWrites: true });
|
|
47
47
|
}
|
|
48
48
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiEditorBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
49
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CuiEditorBlockComponent, isStandalone: true, selector: "cui-editor-block", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, editorId: { classPropertyName: "editorId", publicName: "editorId", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { editorEmpty: "editorEmpty" }, viewQueries: [{ propertyName: "editorContainer", first: true, predicate: ["editorContainer"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <div class=\"wrapper\">\r\n <span class=\"title\">\r\n {{ t('DESCRIPTION') }}\r\n @if (required()) {\r\n <span class=\"title__required\">*</span>\r\n }\r\n </span>\r\n <ng-template #button>\r\n <button\r\n [cuiTooltip]=\"t('EXPAND_EDITOR_TO_FULLSCREEN')\"\r\n cuiButton\r\n size=\"xxs\"\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n icon=\"cuiIconMaximizeSm\"\r\n (click)=\"onToggleDescriptionModal()\"\r\n ></button>\r\n </ng-template>\r\n <cui-editor-modal\r\n [title]=\"title()\"\r\n [editorId]=\"editorId()\"\r\n [buttonTemplate]=\"button\"\r\n [config]=\"config()\"\r\n (modalClosed)=\"onToggleDescriptionModal()\"\r\n />\r\n </div>\r\n <div\r\n #editorContainer\r\n cuiContentWrapper\r\n class=\"editor\"\r\n [class.editor_invalid]=\"required() && isDescriptionEmpty()\"\r\n >\r\n @if (!isDescriptionModalOpen() && editorConfig()) {\r\n <cui-editor\r\n #editorComponent\r\n [editorID]=\"editorId()\"\r\n [config]=\"editorConfig()!\"\r\n (editorEmpty)=\"onDescriptionChange($event)\"\r\n />\r\n }\r\n </div>\r\n @if (required() && isDescriptionEmpty()) {\r\n <cui-hint hintType=\"error\">{{ t('DESCRIPTION_IS_REQUIRED') }}</cui-hint>\r\n }\r\n</ng-container>\r\n", styles: [":host{padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}.wrapper{display:flex;gap:8px;align-items:center;justify-content:space-between}.editor{padding-top:16px;padding-bottom:16px;display:block;
|
|
49
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CuiEditorBlockComponent, isStandalone: true, selector: "cui-editor-block", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, editorId: { classPropertyName: "editorId", publicName: "editorId", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { editorEmpty: "editorEmpty" }, viewQueries: [{ propertyName: "editorContainer", first: true, predicate: ["editorContainer"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <div class=\"wrapper\">\r\n <span class=\"title\">\r\n {{ t('DESCRIPTION') }}\r\n @if (required()) {\r\n <span class=\"title__required\">*</span>\r\n }\r\n </span>\r\n <ng-template #button>\r\n <button\r\n [cuiTooltip]=\"t('EXPAND_EDITOR_TO_FULLSCREEN')\"\r\n cuiButton\r\n size=\"xxs\"\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n icon=\"cuiIconMaximizeSm\"\r\n (click)=\"onToggleDescriptionModal()\"\r\n ></button>\r\n </ng-template>\r\n <cui-editor-modal\r\n [title]=\"title()\"\r\n [editorId]=\"editorId()\"\r\n [buttonTemplate]=\"button\"\r\n [config]=\"config()\"\r\n (modalClosed)=\"onToggleDescriptionModal()\"\r\n />\r\n </div>\r\n <div\r\n #editorContainer\r\n cuiContentWrapper\r\n class=\"editor\"\r\n [class.editor_invalid]=\"required() && isDescriptionEmpty()\"\r\n >\r\n @if (!isDescriptionModalOpen() && editorConfig()) {\r\n <cui-editor\r\n #editorComponent\r\n [editorID]=\"editorId()\"\r\n [config]=\"editorConfig()!\"\r\n (editorEmpty)=\"onDescriptionChange($event)\"\r\n />\r\n }\r\n </div>\r\n @if (required() && isDescriptionEmpty()) {\r\n <cui-hint hintType=\"error\">{{ t('DESCRIPTION_IS_REQUIRED') }}</cui-hint>\r\n }\r\n</ng-container>\r\n", styles: [":host{--max-editor-height: 650px;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}:host .editor{max-height:var(--max-editor-height)}.wrapper{display:flex;gap:8px;align-items:center;justify-content:space-between}.editor{padding-top:16px;padding-bottom:16px;display:block;overflow:auto}.editor_invalid{border:1px solid var(--cui-danger)}.title{font-weight:500;font-size:14px;line-height:20px}.title__required{color:var(--cui-danger)}\n"], dependencies: [{ kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }, { kind: "component", type: CuiEditorModalComponent, selector: "cui-editor-modal", inputs: ["title", "buttonTemplate", "config", "editorId"], outputs: ["editorCreated", "modalClosed"] }, { kind: "component", type: CuiEditorComponent, selector: "cui-editor", inputs: ["editorID", "config", "requestSize"], outputs: ["editorEmpty"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "component", type: CuiContentWrapperComponent, selector: "cui-content-wrapper, [cuiContentWrapper]", inputs: ["backgroundColor", "gap"] }, { kind: "directive", type: i2.CuiTooltipDirective, selector: "[cuiTooltip]:not(ng-container):not(ng-template)", inputs: ["cuiTooltipContext", "cuiTooltipAppearance", "cuiTooltip"] }, { kind: "ngmodule", type: CuiHintModule }, { kind: "component", type: i3.CuiHintComponent, selector: "cui-hint", inputs: ["hintType"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
50
50
|
}
|
|
51
51
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiEditorBlockComponent, decorators: [{
|
|
52
52
|
type: Component,
|
|
@@ -58,6 +58,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
58
58
|
CuiContentWrapperComponent,
|
|
59
59
|
CuiTooltip,
|
|
60
60
|
CuiHintModule
|
|
61
|
-
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\r\n <div class=\"wrapper\">\r\n <span class=\"title\">\r\n {{ t('DESCRIPTION') }}\r\n @if (required()) {\r\n <span class=\"title__required\">*</span>\r\n }\r\n </span>\r\n <ng-template #button>\r\n <button\r\n [cuiTooltip]=\"t('EXPAND_EDITOR_TO_FULLSCREEN')\"\r\n cuiButton\r\n size=\"xxs\"\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n icon=\"cuiIconMaximizeSm\"\r\n (click)=\"onToggleDescriptionModal()\"\r\n ></button>\r\n </ng-template>\r\n <cui-editor-modal\r\n [title]=\"title()\"\r\n [editorId]=\"editorId()\"\r\n [buttonTemplate]=\"button\"\r\n [config]=\"config()\"\r\n (modalClosed)=\"onToggleDescriptionModal()\"\r\n />\r\n </div>\r\n <div\r\n #editorContainer\r\n cuiContentWrapper\r\n class=\"editor\"\r\n [class.editor_invalid]=\"required() && isDescriptionEmpty()\"\r\n >\r\n @if (!isDescriptionModalOpen() && editorConfig()) {\r\n <cui-editor\r\n #editorComponent\r\n [editorID]=\"editorId()\"\r\n [config]=\"editorConfig()!\"\r\n (editorEmpty)=\"onDescriptionChange($event)\"\r\n />\r\n }\r\n </div>\r\n @if (required() && isDescriptionEmpty()) {\r\n <cui-hint hintType=\"error\">{{ t('DESCRIPTION_IS_REQUIRED') }}</cui-hint>\r\n }\r\n</ng-container>\r\n", styles: [":host{padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}.wrapper{display:flex;gap:8px;align-items:center;justify-content:space-between}.editor{padding-top:16px;padding-bottom:16px;display:block;
|
|
61
|
+
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\r\n <div class=\"wrapper\">\r\n <span class=\"title\">\r\n {{ t('DESCRIPTION') }}\r\n @if (required()) {\r\n <span class=\"title__required\">*</span>\r\n }\r\n </span>\r\n <ng-template #button>\r\n <button\r\n [cuiTooltip]=\"t('EXPAND_EDITOR_TO_FULLSCREEN')\"\r\n cuiButton\r\n size=\"xxs\"\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n icon=\"cuiIconMaximizeSm\"\r\n (click)=\"onToggleDescriptionModal()\"\r\n ></button>\r\n </ng-template>\r\n <cui-editor-modal\r\n [title]=\"title()\"\r\n [editorId]=\"editorId()\"\r\n [buttonTemplate]=\"button\"\r\n [config]=\"config()\"\r\n (modalClosed)=\"onToggleDescriptionModal()\"\r\n />\r\n </div>\r\n <div\r\n #editorContainer\r\n cuiContentWrapper\r\n class=\"editor\"\r\n [class.editor_invalid]=\"required() && isDescriptionEmpty()\"\r\n >\r\n @if (!isDescriptionModalOpen() && editorConfig()) {\r\n <cui-editor\r\n #editorComponent\r\n [editorID]=\"editorId()\"\r\n [config]=\"editorConfig()!\"\r\n (editorEmpty)=\"onDescriptionChange($event)\"\r\n />\r\n }\r\n </div>\r\n @if (required() && isDescriptionEmpty()) {\r\n <cui-hint hintType=\"error\">{{ t('DESCRIPTION_IS_REQUIRED') }}</cui-hint>\r\n }\r\n</ng-container>\r\n", styles: [":host{--max-editor-height: 650px;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}:host .editor{max-height:var(--max-editor-height)}.wrapper{display:flex;gap:8px;align-items:center;justify-content:space-between}.editor{padding-top:16px;padding-bottom:16px;display:block;overflow:auto}.editor_invalid{border:1px solid var(--cui-danger)}.title{font-weight:500;font-size:14px;line-height:20px}.title__required{color:var(--cui-danger)}\n"] }]
|
|
62
62
|
}], ctorParameters: () => [] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWJsb2NrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvZWRpdG9yL3dpZGdldHMvZWRpdG9yLWJsb2NrL2VkaXRvci1ibG9jay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2VkaXRvci93aWRnZXRzL2VkaXRvci1ibG9jay9lZGl0b3ItYmxvY2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7O0FBa0JqRixNQUFNLE9BQU8sdUJBQXVCO0lBa0JoQztRQWpCUSx3QkFBbUIsR0FBRyxJQUFJLENBQUM7UUFFaEIsaUJBQVksR0FBRyxNQUFNLENBQStCLElBQUksQ0FBQyxDQUFDO1FBQzFELDJCQUFzQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2Qyx1QkFBa0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEMsb0JBQWUsR0FBRyxTQUFTLENBQWtDLGlCQUFpQixFQUFFO1lBQzVGLElBQUksRUFBRSxVQUFVO1NBQ25CLENBQUMsQ0FBQztRQUVhLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFVLENBQUM7UUFDakMsYUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQztRQUNwQyxXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBbUIsQ0FBQztRQUMzQyxhQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXhCLGdCQUFXLEdBQUcsTUFBTSxFQUFXLENBQUM7UUFHNUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVTLHdCQUF3QjtRQUM5QixJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxLQUFjO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTdCLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztZQUVqQyxPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLGdCQUFnQjtRQUNwQixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQzFCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxhQUFhLENBQUM7WUFFdEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNYLE9BQU87WUFDWCxDQUFDO1lBRUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4QixDQUFDLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7K0dBakRRLHVCQUF1QjttR0FBdkIsdUJBQXVCLGt0QkFRdEIsVUFBVSw2Q0M1Q3hCLG9tREE4Q0EsaWlCRHZCUSxlQUFlLDJOQUNmLHVCQUF1QixtS0FDdkIsa0JBQWtCLGdJQUNsQixrQkFBa0IsZ01BQ2xCLDBCQUEwQiwrU0FFMUIsYUFBYTs7NEZBT1IsdUJBQXVCO2tCQWhCbkMsU0FBUzsrQkFDSSxrQkFBa0IsV0FDbkI7d0JBQ0wsZUFBZTt3QkFDZix1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQiwwQkFBMEI7d0JBQzFCLFVBQVU7d0JBQ1YsYUFBYTtxQkFDaEIsY0FDVyxJQUFJLG1CQUdDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBlZmZlY3QsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgaW5wdXQsXHJcbiAgICBvdXRwdXQsXHJcbiAgICBzaWduYWwsXHJcbiAgICB2aWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHR5cGUgeyBDdWlOdWxsYWJsZSB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XHJcbmltcG9ydCB7IFRyYW5zbG9jb0RpcmVjdGl2ZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XHJcblxyXG5pbXBvcnQgeyBDdWlCdXR0b25Nb2R1bGUsIEN1aUhpbnRNb2R1bGUsIEN1aUNvbnRlbnRXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IEN1aVRvb2x0aXAgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzJztcclxuXHJcbmltcG9ydCB0eXBlIHsgQ3VpRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEN1aUVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VkaXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWlFZGl0b3JNb2RhbENvbXBvbmVudCB9IGZyb20gJy4uL2VkaXRvci1tb2RhbC9lZGl0b3ItbW9kYWwuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjdWktZWRpdG9yLWJsb2NrJyxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDdWlCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgQ3VpRWRpdG9yTW9kYWxDb21wb25lbnQsXHJcbiAgICAgICAgQ3VpRWRpdG9yQ29tcG9uZW50LFxyXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZSxcclxuICAgICAgICBDdWlDb250ZW50V3JhcHBlckNvbXBvbmVudCxcclxuICAgICAgICBDdWlUb29sdGlwLFxyXG4gICAgICAgIEN1aUhpbnRNb2R1bGVcclxuICAgIF0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VkaXRvci1ibG9jay5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9lZGl0b3ItYmxvY2suY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdWlFZGl0b3JCbG9ja0NvbXBvbmVudCB7XHJcbiAgICBwcml2YXRlIHNraXBGaXJzdFZhbGlkYXRpb24gPSB0cnVlO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSBlZGl0b3JDb25maWcgPSBzaWduYWw8Q3VpTnVsbGFibGU8Q3VpRWRpdG9yQ29uZmlnPj4obnVsbCk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNEZXNjcmlwdGlvbk1vZGFsT3BlbiA9IHNpZ25hbChmYWxzZSk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNEZXNjcmlwdGlvbkVtcHR5ID0gc2lnbmFsKGZhbHNlKTtcclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZWRpdG9yQ29udGFpbmVyID0gdmlld0NoaWxkPHN0cmluZywgRWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdlZGl0b3JDb250YWluZXInLCB7XHJcbiAgICAgICAgcmVhZDogRWxlbWVudFJlZlxyXG4gICAgfSk7XHJcblxyXG4gICAgcHVibGljIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGVkaXRvcklkID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEN1aUVkaXRvckNvbmZpZz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSByZXF1aXJlZCA9IGlucHV0KGZhbHNlKTtcclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZWRpdG9yRW1wdHkgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLmluaXRFZGl0b3JDb25maWcoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25Ub2dnbGVEZXNjcmlwdGlvbk1vZGFsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNEZXNjcmlwdGlvbk1vZGFsT3Blbi51cGRhdGUoKHByZXYpID0+ICFwcmV2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25EZXNjcmlwdGlvbkNoYW5nZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdG9yRW1wdHkuZW1pdCh2YWx1ZSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnNraXBGaXJzdFZhbGlkYXRpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5za2lwRmlyc3RWYWxpZGF0aW9uID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmlzRGVzY3JpcHRpb25FbXB0eS5zZXQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdEVkaXRvckNvbmZpZygpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBlZmZlY3RSZWYgPSBlZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lZGl0b3JDb250YWluZXIoKT8ubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgICAgICAgICAgIGlmICghZWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmVkaXRvckNvbmZpZy5zZXQoeyBlbGVtZW50LCAuLi50aGlzLmNvbmZpZygpIH0pO1xyXG4gICAgICAgICAgICBlZmZlY3RSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgIH0sIHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPlxyXG4gICAgICAgICAgICB7eyB0KCdERVNDUklQVElPTicpIH19XHJcbiAgICAgICAgICAgIEBpZiAocmVxdWlyZWQoKSkge1xyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZV9fcmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjYnV0dG9uPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICBbY3VpVG9vbHRpcF09XCJ0KCdFWFBBTkRfRURJVE9SX1RPX0ZVTExTQ1JFRU4nKVwiXHJcbiAgICAgICAgICAgICAgICBjdWlCdXR0b25cclxuICAgICAgICAgICAgICAgIHNpemU9XCJ4eHNcIlxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxyXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25NYXhpbWl6ZVNtXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblRvZ2dsZURlc2NyaXB0aW9uTW9kYWwoKVwiXHJcbiAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxjdWktZWRpdG9yLW1vZGFsXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCJ0aXRsZSgpXCJcclxuICAgICAgICAgICAgW2VkaXRvcklkXT1cImVkaXRvcklkKClcIlxyXG4gICAgICAgICAgICBbYnV0dG9uVGVtcGxhdGVdPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWcoKVwiXHJcbiAgICAgICAgICAgIChtb2RhbENsb3NlZCk9XCJvblRvZ2dsZURlc2NyaXB0aW9uTW9kYWwoKVwiXHJcbiAgICAgICAgLz5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdlxyXG4gICAgICAgICNlZGl0b3JDb250YWluZXJcclxuICAgICAgICBjdWlDb250ZW50V3JhcHBlclxyXG4gICAgICAgIGNsYXNzPVwiZWRpdG9yXCJcclxuICAgICAgICBbY2xhc3MuZWRpdG9yX2ludmFsaWRdPVwicmVxdWlyZWQoKSAmJiBpc0Rlc2NyaXB0aW9uRW1wdHkoKVwiXHJcbiAgICA+XHJcbiAgICAgICAgQGlmICghaXNEZXNjcmlwdGlvbk1vZGFsT3BlbigpICYmIGVkaXRvckNvbmZpZygpKSB7XHJcbiAgICAgICAgICAgIDxjdWktZWRpdG9yXHJcbiAgICAgICAgICAgICAgICAjZWRpdG9yQ29tcG9uZW50XHJcbiAgICAgICAgICAgICAgICBbZWRpdG9ySURdPVwiZWRpdG9ySWQoKVwiXHJcbiAgICAgICAgICAgICAgICBbY29uZmlnXT1cImVkaXRvckNvbmZpZygpIVwiXHJcbiAgICAgICAgICAgICAgICAoZWRpdG9yRW1wdHkpPVwib25EZXNjcmlwdGlvbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICB9XHJcbiAgICA8L2Rpdj5cclxuICAgIEBpZiAocmVxdWlyZWQoKSAmJiBpc0Rlc2NyaXB0aW9uRW1wdHkoKSkge1xyXG4gICAgICAgIDxjdWktaGludCBoaW50VHlwZT1cImVycm9yXCI+e3sgdCgnREVTQ1JJUFRJT05fSVNfUkVRVUlSRUQnKSB9fTwvY3VpLWhpbnQ+XHJcbiAgICB9XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwZWFyYW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdHlwZXMvYXBwZWFyYW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQ3VpQXBwZWFyYW5jZUFjdGlvbiA9ICdhY3Rpb24nO1xyXG5cclxuZXhwb3J0IHR5cGUgQ3VpQXBwZWFyYW5jZVNlY29uZGFyeSA9ICdzZWNvbmRhcnknO1xyXG5cclxuZXhwb3J0IHR5cGUgQ3VpQXBwZWFyYW5jZU91dGxpbmVkID0gJ291dGxpbmVkJztcclxuXHJcbmV4cG9ydCB0eXBlIEN1aUFwcGVhcmFuY2VPdXRsaW5lZEdyYXkgPSAnb3V0bGluZWQtZ3JheSc7XHJcblxyXG5leHBvcnQgdHlwZSBDdWlBcHBlYXJhbmNlR2hvc3QgPSAnZ2hvc3QnO1xyXG5cclxuZXhwb3J0IHR5cGUgQ3VpQXBwZWFyYW5jZUZsYXQgPSAnZmxhdCc7XHJcblxyXG5leHBvcnQgdHlwZSBDdWlBcHBlYXJhbmNlRGVzdHJ1Y3RpdmUgPSAnZGVzdHJ1Y3RpdmUnO1xyXG5cclxuZXhwb3J0IHR5cGUgQ3VpQXBwZWFyYW5jZUxpbmsgPSAnbGluayc7XHJcblxyXG5leHBvcnQgdHlwZSBDdWlBcHBlYXJhbmNlQWN0aW9uVmlvbGV0ID0gJ2FjdGlvbi12aW9sZXQnO1xyXG4iXX0=
|
|
@@ -228,7 +228,7 @@ export class CuiUtilityInfoComponent {
|
|
|
228
228
|
return !this.isDescriptionEmpty() && !this.form.invalid;
|
|
229
229
|
}
|
|
230
230
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiUtilityInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
231
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CuiUtilityInfoComponent, isStandalone: true, selector: "cui-utility-info", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: true, transformFunction: null }, framerId: { classPropertyName: "framerId", publicName: "framerId", isSignal: true, isRequired: true, transformFunction: null }, baseResourceUrl: { classPropertyName: "baseResourceUrl", publicName: "baseResourceUrl", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { formChanged: "formChanged", isFormValidChanged: "isFormValidChanged" }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <section class=\"content\">\r\n <cui-form-field>\r\n <label cuiLabel [isRequired]=\"true\" [for]=\"titleId\">\r\n {{ t('TITLE') }}\r\n </label>\r\n <cui-input-text\r\n [cuiTextFieldId]=\"titleId\"\r\n [cuiTextFieldPlaceholder]=\"t('
|
|
231
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CuiUtilityInfoComponent, isStandalone: true, selector: "cui-utility-info", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: true, transformFunction: null }, framerId: { classPropertyName: "framerId", publicName: "framerId", isSignal: true, isRequired: true, transformFunction: null }, baseResourceUrl: { classPropertyName: "baseResourceUrl", publicName: "baseResourceUrl", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { formChanged: "formChanged", isFormValidChanged: "isFormValidChanged" }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <section class=\"content\">\r\n <cui-form-field>\r\n <label cuiLabel [isRequired]=\"true\" [for]=\"titleId\">\r\n {{ t('TITLE') }}\r\n </label>\r\n <cui-input-text\r\n [cuiTextFieldId]=\"titleId\"\r\n [cuiTextFieldPlaceholder]=\"t('ADD_A_TITLE')\"\r\n [cuiTextFieldIsError]=\"isTitleError\"\r\n [formControl]=\"form.controls.title\"\r\n />\r\n @if (isTitleError) {\r\n <cui-general-control-error-hint [control]=\"form.controls.title\" [isVisible]=\"true\" />\r\n }\r\n </cui-form-field>\r\n <cui-form-field>\r\n <label cuiLabel [isRequired]=\"true\" [for]=\"descriptionId\">\r\n {{ t('SHORT_DESCRIPTION') }}\r\n </label>\r\n <cui-input-text\r\n [cuiTextFieldId]=\"descriptionId\"\r\n cuiTextFieldPlaceholder=\"{{t('SHORT_DESCRIPTION')}}...\"\r\n [cuiTextFieldIsError]=\"isDescriptionError\"\r\n [formControl]=\"form.controls.description\"\r\n />\r\n @if (isDescriptionError) {\r\n <cui-general-control-error-hint [control]=\"form.controls.description\" [isVisible]=\"true\" />\r\n }\r\n </cui-form-field>\r\n <section class=\"file\">\r\n <span class=\"title\">{{ t('THUMBNAIL') }}</span>\r\n <div class=\"content__upload\">\r\n <div class=\"content__upload-file\">\r\n @if (thumbnail()?.name; as fileId) {\r\n <div class=\"image\">\r\n <span class=\"image__name\">{{ thumbnail()?.name }}</span>\r\n <!-- TODO: ngSrc -->\r\n <img class=\"image__view\" [src]=\"thumbnailUrl()\" height=\"120\" width=\"184\" alt=\"Thumbnail\" />\r\n </div>\r\n }\r\n <div class=\"content__info\">\r\n <button type=\"button\" cuiButton appearance=\"outlined-gray\" size=\"xxs\" icon=\"cuiIconUpload\"\r\n (click)=\"onSelectFile()\">\r\n {{ uploadButtonName() }}\r\n </button>\r\n @if (thumbnail()?.name) {\r\n <button class=\"content__remove-button\" cuiButton appearance=\"link\" size=\"sm\" type=\"button\"\r\n (click)=\"onRemoveThumbnail()\">\r\n {{ t('REMOVE') }}\r\n </button>\r\n }\r\n\r\n <span class=\"content__accepted\">\r\n {{ t('ACCEPTED') }}: JPG, JPEG, PNG, MP4 {{ t('UP_TO') }} 20MB\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n @if (editorId(); as editorId) {\r\n <cui-editor-block\r\n [title]=\"form.controls.title.value || title()\"\r\n [config]=\"config()\"\r\n [editorId]=\"editorId\"\r\n [required]=\"true\"\r\n class=\"editor\"\r\n (editorEmpty)=\"onEditorEmpty($event)\"\r\n ></cui-editor-block>\r\n }\r\n </section>\r\n</ng-container>\r\n", styles: ["::ng-deep cui-dialog:has(.instruction-description-modal){inset:0;margin:auto;transform:none!important}:host{--editor-height: 650px;display:block}:host .editor{--max-editor-height: var(--editor-height)}.title{font-weight:500;font-size:14px;line-height:20px;display:flex;gap:2px}.title_required{color:var(--cui-danger)}.content{display:flex;flex-direction:column;gap:16px;padding:16px 24px}.content__upload{padding:12px 16px;border-radius:8px;border:1px solid var(--cui-base-200);background:var(--cui-base-10)}.content__info{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.content__accepted{color:var(--cui-base-500)}.content__upload-file{display:flex;align-items:center;gap:8px}.content__upload-file input[type=file]{display:none}.content__remove-button ::ng-deep .c-content{color:var(--cui-danger)!important}.file{display:flex;flex-direction:column;gap:4px}.description_invalid{border:1px solid var(--cui-danger)}.image{position:relative;display:inline-block}.image__view{border-radius:8px;object-fit:cover}.image__name{position:absolute;top:6px;left:14px;color:var(--cui-base-0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px;z-index:1}.image:after{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0003;z-index:0;pointer-events:none;border-radius:8px}.button-save{margin-left:auto}.instruction-description-modal{text-transform:none}.empty{padding:16px;color:var(--cui-base-500);text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CuiAccordionModule) }, { kind: "ngmodule", type: i0.forwardRef(() => CuiButtonModule) }, { kind: "component", type: i0.forwardRef(() => i1.CuiButtonComponent), selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }, { kind: "ngmodule", type: i0.forwardRef(() => CuiFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i2.CuiFormFieldComponent), selector: "cui-form-field" }, { kind: "ngmodule", type: i0.forwardRef(() => CuiHintModule) }, { kind: "ngmodule", type: i0.forwardRef(() => CuiInputModule) }, { kind: "component", type: i0.forwardRef(() => i3.CuiInputTextComponent), selector: "cui-input-text" }, { kind: "directive", type: i0.forwardRef(() => i4.CuiTextFieldIdDirective), selector: "[cuiTextFieldId]", inputs: ["cuiTextFieldId"] }, { kind: "directive", type: i0.forwardRef(() => i5.CuiTextFieldPlaceholderDirective), selector: "[cuiTextFieldPlaceholder]", inputs: ["cuiTextFieldPlaceholder"] }, { kind: "directive", type: i0.forwardRef(() => i6.CuiTextFieldIsErrorDirective), selector: "[cuiTextFieldIsError]", inputs: ["cuiTextFieldIsError"] }, { kind: "ngmodule", type: i0.forwardRef(() => CuiLabelModule) }, { kind: "component", type: i0.forwardRef(() => i7.CuiLabelComponent), selector: "label[cuiLabel]", inputs: ["isRequired"] }, { kind: "component", type: i0.forwardRef(() => CuiEditorBlockComponent), selector: "cui-editor-block", inputs: ["title", "editorId", "config", "required"], outputs: ["editorEmpty"] }, { kind: "component", type: i0.forwardRef(() => CuiGeneralControlErrorHintComponent), selector: "cui-general-control-error-hint", inputs: ["control", "isVisible"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i8.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i8.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => TranslocoDirective), selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
232
232
|
}
|
|
233
233
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiUtilityInfoComponent, decorators: [{
|
|
234
234
|
type: Component,
|
|
@@ -244,6 +244,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
244
244
|
ReactiveFormsModule,
|
|
245
245
|
TranslocoDirective,
|
|
246
246
|
CuiTooltip
|
|
247
|
-
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\r\n <section class=\"content\">\r\n <cui-form-field>\r\n <label cuiLabel [isRequired]=\"true\" [for]=\"titleId\">\r\n {{ t('TITLE') }}\r\n </label>\r\n <cui-input-text\r\n [cuiTextFieldId]=\"titleId\"\r\n [cuiTextFieldPlaceholder]=\"t('
|
|
247
|
+
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\r\n <section class=\"content\">\r\n <cui-form-field>\r\n <label cuiLabel [isRequired]=\"true\" [for]=\"titleId\">\r\n {{ t('TITLE') }}\r\n </label>\r\n <cui-input-text\r\n [cuiTextFieldId]=\"titleId\"\r\n [cuiTextFieldPlaceholder]=\"t('ADD_A_TITLE')\"\r\n [cuiTextFieldIsError]=\"isTitleError\"\r\n [formControl]=\"form.controls.title\"\r\n />\r\n @if (isTitleError) {\r\n <cui-general-control-error-hint [control]=\"form.controls.title\" [isVisible]=\"true\" />\r\n }\r\n </cui-form-field>\r\n <cui-form-field>\r\n <label cuiLabel [isRequired]=\"true\" [for]=\"descriptionId\">\r\n {{ t('SHORT_DESCRIPTION') }}\r\n </label>\r\n <cui-input-text\r\n [cuiTextFieldId]=\"descriptionId\"\r\n cuiTextFieldPlaceholder=\"{{t('SHORT_DESCRIPTION')}}...\"\r\n [cuiTextFieldIsError]=\"isDescriptionError\"\r\n [formControl]=\"form.controls.description\"\r\n />\r\n @if (isDescriptionError) {\r\n <cui-general-control-error-hint [control]=\"form.controls.description\" [isVisible]=\"true\" />\r\n }\r\n </cui-form-field>\r\n <section class=\"file\">\r\n <span class=\"title\">{{ t('THUMBNAIL') }}</span>\r\n <div class=\"content__upload\">\r\n <div class=\"content__upload-file\">\r\n @if (thumbnail()?.name; as fileId) {\r\n <div class=\"image\">\r\n <span class=\"image__name\">{{ thumbnail()?.name }}</span>\r\n <!-- TODO: ngSrc -->\r\n <img class=\"image__view\" [src]=\"thumbnailUrl()\" height=\"120\" width=\"184\" alt=\"Thumbnail\" />\r\n </div>\r\n }\r\n <div class=\"content__info\">\r\n <button type=\"button\" cuiButton appearance=\"outlined-gray\" size=\"xxs\" icon=\"cuiIconUpload\"\r\n (click)=\"onSelectFile()\">\r\n {{ uploadButtonName() }}\r\n </button>\r\n @if (thumbnail()?.name) {\r\n <button class=\"content__remove-button\" cuiButton appearance=\"link\" size=\"sm\" type=\"button\"\r\n (click)=\"onRemoveThumbnail()\">\r\n {{ t('REMOVE') }}\r\n </button>\r\n }\r\n\r\n <span class=\"content__accepted\">\r\n {{ t('ACCEPTED') }}: JPG, JPEG, PNG, MP4 {{ t('UP_TO') }} 20MB\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n @if (editorId(); as editorId) {\r\n <cui-editor-block\r\n [title]=\"form.controls.title.value || title()\"\r\n [config]=\"config()\"\r\n [editorId]=\"editorId\"\r\n [required]=\"true\"\r\n class=\"editor\"\r\n (editorEmpty)=\"onEditorEmpty($event)\"\r\n ></cui-editor-block>\r\n }\r\n </section>\r\n</ng-container>\r\n", styles: ["::ng-deep cui-dialog:has(.instruction-description-modal){inset:0;margin:auto;transform:none!important}:host{--editor-height: 650px;display:block}:host .editor{--max-editor-height: var(--editor-height)}.title{font-weight:500;font-size:14px;line-height:20px;display:flex;gap:2px}.title_required{color:var(--cui-danger)}.content{display:flex;flex-direction:column;gap:16px;padding:16px 24px}.content__upload{padding:12px 16px;border-radius:8px;border:1px solid var(--cui-base-200);background:var(--cui-base-10)}.content__info{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.content__accepted{color:var(--cui-base-500)}.content__upload-file{display:flex;align-items:center;gap:8px}.content__upload-file input[type=file]{display:none}.content__remove-button ::ng-deep .c-content{color:var(--cui-danger)!important}.file{display:flex;flex-direction:column;gap:4px}.description_invalid{border:1px solid var(--cui-danger)}.image{position:relative;display:inline-block}.image__view{border-radius:8px;object-fit:cover}.image__name{position:absolute;top:6px;left:14px;color:var(--cui-base-0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px;z-index:1}.image:after{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0003;z-index:0;pointer-events:none;border-radius:8px}.button-save{margin-left:auto}.instruction-description-modal{text-transform:none}.empty{padding:16px;color:var(--cui-base-500);text-align:center}\n"] }]
|
|
248
248
|
}], ctorParameters: () => [] });
|
|
249
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0eS1pbmZvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91dGlsaXR5LWluZm8vdXRpbGl0eS1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91dGlsaXR5LWluZm8vdXRpbGl0eS1pbmZvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixVQUFVLEVBQ1YsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFrQyxNQUFNLGNBQWMsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFvQixNQUFNLGNBQWMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlELE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGNBQWMsRUFDZCxjQUFjLEVBQ2pCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBRSx1QkFBdUIsRUFBbUIsTUFBTSxjQUFjLENB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QUF1QjtrQkFwQm5DLFNBQVM7K0JBQ0ksa0JBQWtCLFdBQ25CO3dCQUNMLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzt3QkFDekMsbUNBQW1DO3dCQUNuQyxtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsVUFBVTtxQkFDYixjQUNXLElBQUksbUJBR0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIENvbXBvbmVudCxcclxuICAgIGNvbXB1dGVkLFxyXG4gICAgRGVzdHJveVJlZixcclxuICAgIGVmZmVjdCxcclxuICAgIGZvcndhcmRSZWYsXHJcbiAgICBpbmplY3QsXHJcbiAgICBpbnB1dCxcclxuICAgIG91dHB1dCxcclxuICAgIHNpZ25hbFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7IE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEN1aUZyYW1lQXBpU2VydmljZSwgRnJhZ21lbnRUeXBlLCBSZXNvdXJjZUZyYWdtZW50IH0gZnJvbSAnQGN1YnktdWkvYXBpJztcclxuaW1wb3J0IHsgQ3VpSWRTZXJ2aWNlLCB0eXBlIEN1aU51bGxhYmxlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcclxuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtYXAsIHBhaXJ3aXNlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7XHJcbiAgICBDdWlBY2NvcmRpb25Nb2R1bGUsXHJcbiAgICBDdWlBbGVydFNlcnZpY2UsXHJcbiAgICBDdWlCdXR0b25Nb2R1bGUsXHJcbiAgICBDdWlGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBDdWlIaW50TW9kdWxlLFxyXG4gICAgQ3VpSW5wdXRNb2R1bGUsXHJcbiAgICBDdWlMYWJlbE1vZHVsZVxyXG59IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBDdWlUb29sdGlwIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IEN1aUVkaXRvckJsb2NrQ29tcG9uZW50LCBDdWlFZGl0b3JDb25maWcgfSBmcm9tICcuLi8uLi9lZGl0b3InO1xyXG5pbXBvcnQgeyBjdWlDcmVhdGVEZWZhdWx0VmFsaWRhdG9ycyB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuaW1wb3J0IHsgQ3VpR2VuZXJhbENvbnRyb2xFcnJvckhpbnRDb21wb25lbnQgfSBmcm9tICcuLi9nZW5lcmFsLWNvbnRyb2wtZXJyb3ItaGludCc7XHJcbmltcG9ydCB7IEN1aVV0aWxpdHlGb3JtR3JvdXAsIEN1aVV0aWxpdHlGb3JtVmFsdWVzIH0gZnJvbSAnLi91dGlsaXR5LWluZm8ub3B0aW9ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY3VpLXV0aWxpdHktaW5mbycsXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ3VpQWNjb3JkaW9uTW9kdWxlLFxyXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBDdWlGb3JtRmllbGRNb2R1bGUsXHJcbiAgICAgICAgQ3VpSGludE1vZHVsZSxcclxuICAgICAgICBDdWlJbnB1dE1vZHVsZSxcclxuICAgICAgICBDdWlMYWJlbE1vZHVsZSxcclxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IEN1aUVkaXRvckJsb2NrQ29tcG9uZW50KSxcclxuICAgICAgICBDdWlHZW5lcmFsQ29udHJvbEVycm9ySGludENvbXBvbmVudCxcclxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZSxcclxuICAgICAgICBDdWlUb29sdGlwXHJcbiAgICBdLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91dGlsaXR5LWluZm8uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL3V0aWxpdHktaW5mby5jb21wb25lbnQuc2NzcycsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3VpVXRpbGl0eUluZm9Db21wb25lbnQge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtQnVpbGRlciA9IGluamVjdChOb25OdWxsYWJsZUZvcm1CdWlsZGVyKTtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsb2NvU2VydmljZSA9IGluamVjdChUcmFuc2xvY29TZXJ2aWNlKTtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZnJhbWVBcGlTZXJ2aWNlID0gaW5qZWN0KEN1aUZyYW1lQXBpU2VydmljZSk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1aUFsZXJ0U2VydmljZSA9IGluamVjdChDdWlBbGVydFNlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjdWlJZFNlcnZpY2UgPSBpbmplY3QoQ3VpSWRTZXJ2aWNlKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgQ09OVFJPTF9ERUxBWSA9IDUwMDtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBNQVhfRklMRV9TSVpFID0gMjA5NzE1MjA7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRpdGxlSWQgPSB0aGlzLmN1aUlkU2VydmljZS5nZW5lcmF0ZSgpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc2NyaXB0aW9uSWQgPSB0aGlzLmN1aUlkU2VydmljZS5nZW5lcmF0ZSgpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwPEN1aVV0aWxpdHlGb3JtR3JvdXA+KHtcclxuICAgICAgICB0aXRsZTogdGhpcy5mb3JtQnVpbGRlci5jb250cm9sKCcnLCBjdWlDcmVhdGVEZWZhdWx0VmFsaWRhdG9ycyh7IGFzeW5jRGVsYXk6IHRoaXMuQ09OVFJPTF9ERUxBWSB9KSksXHJcbiAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuZm9ybUJ1aWxkZXIuY29udHJvbCgnJywgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMoeyBhc3luY0RlbGF5OiB0aGlzLkNPTlRST0xfREVMQVkgfSkpXHJcbiAgICB9KTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0Rlc2NyaXB0aW9uTW9kYWxPcGVuID0gc2lnbmFsKGZhbHNlKTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0Rlc2NyaXB0aW9uRW1wdHkgPSBzaWduYWwoZmFsc2UpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVkaXRvcklkID0gc2lnbmFsPEN1aU51bGxhYmxlPHN0cmluZz4+KG51bGwpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRodW1ibmFpbCA9IHNpZ25hbDxDdWlOdWxsYWJsZTxSZXNvdXJjZUZyYWdtZW50Pj4obnVsbCk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGh1bWJuYWlsVXJsID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHRodW1ibmFpbCA9IHRoaXMudGh1bWJuYWlsKCk7XHJcblxyXG4gICAgICAgIGlmICh0aHVtYm5haWw/LnJlc291cmNlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aHVtYm5haWwucmVzb3VyY2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlUmVzb3VyY2VVcmwoKSArIHRodW1ibmFpbCEuZmlsZUlkITtcclxuICAgIH0pO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHVwbG9hZEJ1dHRvbk5hbWUgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgdGh1bWJuYWlsID0gdGhpcy50aHVtYm5haWwoKTtcclxuXHJcbiAgICAgICAgaWYgKHRodW1ibmFpbD8ubmFtZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnUkVQTEFDRV9GSUxFJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnVVBMT0FEX0ZJTEUnKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHByb3RlY3RlZCBoZWFkaW5nOiBDdWlOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0IGNvbnRyb2xzKCk6IEN1aVV0aWxpdHlGb3JtR3JvdXAge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0uY29udHJvbHM7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGdldCBpc1RpdGxlRXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbHMudGl0bGUuaW52YWxpZCAmJiB0aGlzLmNvbnRyb2xzLnRpdGxlLmRpcnR5O1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBnZXQgaXNEZXNjcmlwdGlvbkVycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xzLmRlc2NyaXB0aW9uLmludmFsaWQgJiYgdGhpcy5jb250cm9scy5kZXNjcmlwdGlvbi5kaXJ0eTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGl0bGUgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGVzY3JpcHRpb24gPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZnJhbWVySWQgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgYmFzZVJlc291cmNlVXJsID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEN1aUVkaXRvckNvbmZpZz4oKTtcclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9ybUNoYW5nZWQgPSBvdXRwdXQ8UGFydGlhbDxDdWlVdGlsaXR5Rm9ybVZhbHVlcz4+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgaXNGb3JtVmFsaWRDaGFuZ2VkID0gb3V0cHV0PGJvb2xlYW4+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5pbml0VXRpbGl0eUVmZmVjdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvblNlbGVjdEZpbGUoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xyXG4gICAgICAgIGlucHV0LnR5cGUgPSAnZmlsZSc7XHJcbiAgICAgICAgaW5wdXQuYWNjZXB0ID0gJ2ltYWdlL2pwZywgaW1hZ2UvanBlZywgaW1hZ2UvcG5nLCB2aWRlby9tcDQnO1xyXG5cclxuICAgICAgICBpbnB1dC5vbmNoYW5nZSA9ICgpOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgY29uc3QgZmlsZXMgPSBpbnB1dC5maWxlcztcclxuXHJcbiAgICAgICAgICAgIGlmICghZmlsZXM/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmdldEZpbGUoZmlsZXMpO1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGlucHV0LmNsaWNrKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uRWRpdG9yRW1wdHkoaXNFbXB0eTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNEZXNjcmlwdGlvbkVtcHR5LnNldChpc0VtcHR5KTtcclxuICAgICAgICB0aGlzLmlzRm9ybVZhbGlkQ2hhbmdlZC5lbWl0KHRoaXMuY2hlY2tGb3JtVmFsaWRhdGlvbigpKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25SZW1vdmVUaHVtYm5haWwoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZnJhbWVJZCA9IHRoaXMuZnJhbWVySWQoKTtcclxuICAgICAgICBjb25zdCBmcmFnbWVudElkID0gdGhpcy50aHVtYm5haWwoKT8uaWQ7XHJcblxyXG4gICAgICAgIGlmICghZnJhbWVJZCB8fCAhZnJhZ21lbnRJZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmZyYW1lQXBpU2VydmljZS5kZWxldGVSZXNvdXJjZShmcmFtZUlkLCBmcmFnbWVudElkKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbC51cGRhdGUoKHByZXYpID0+ICh7IC4uLnByZXYhLCBmaWxlSWQ6IG51bGwsIG5hbWU6IG51bGwsIHJlc291cmNlOiBudWxsIH0pKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25Ub2dnbGVEZXNjcmlwdGlvbk1vZGFsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNEZXNjcmlwdGlvbk1vZGFsT3Blbi51cGRhdGUoKHByZXYpID0+ICFwcmV2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluaXRVdGlsaXR5RWZmZWN0KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGVmZmVjdFJlZiA9IGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRpdGxlID0gdGhpcy50aXRsZSgpO1xyXG5cclxuICAgICAgICAgICAgaWYgKCF0aXRsZSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmluaXRGb3JtU3Vic2NyaXB0aW9ucygpO1xyXG4gICAgICAgICAgICB0aGlzLmluaXRGcmFtZUZyYWdtZW50cygpO1xyXG4gICAgICAgICAgICBlZmZlY3RSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdEZvcm1TdWJzY3JpcHRpb25zKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9ybS5zZXRWYWx1ZSh7IHRpdGxlOiB0aGlzLnRpdGxlKCksIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uKCkgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG5cclxuICAgICAgICB0aGlzLmZvcm0uc3RhdHVzQ2hhbmdlc1xyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95KSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmlzRm9ybVZhbGlkQ2hhbmdlZC5lbWl0KHRoaXMuY2hlY2tGb3JtVmFsaWRhdGlvbigpKSk7XHJcblxyXG4gICAgICAgIHRoaXMuZm9ybS52YWx1ZUNoYW5nZXNcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95KSxcclxuICAgICAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLmZvcm0udmFsdWUpLFxyXG4gICAgICAgICAgICAgICAgcGFpcndpc2UoKSxcclxuICAgICAgICAgICAgICAgIGRlYm91bmNlVGltZSh0aGlzLkNPTlRST0xfREVMQVkpLFxyXG4gICAgICAgICAgICAgICAgbWFwKChbcHJldiwgY3VycmVudF0pID0+IHRoaXMuY29tcGFyZUZvcm1WYWx1ZXMoW3ByZXYsIGN1cnJlbnRdKSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFPYmplY3Qua2V5cyh2YWx1ZSkubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNoYW5nZWQuZW1pdCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdEZyYW1lRnJhZ21lbnRzKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGZyYW1lSWQgPSB0aGlzLmZyYW1lcklkKCk7XHJcblxyXG4gICAgICAgIGlmICghZnJhbWVJZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmZyYW1lQXBpU2VydmljZS5nZXRGcmFtZShmcmFtZUlkKS5zdWJzY3JpYmUoKGZyYW1lKSA9PiB7XHJcbiAgICAgICAgICAgIGZyYW1lLmZyYWdtZW50cy5mb3JFYWNoKChmcmFnbWVudCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGZyYWdtZW50LnR5cGUgPT09IEZyYWdtZW50VHlwZS5qVGV4dCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWRpdG9ySWQuc2V0KGZyYWdtZW50Py5pZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGZyYWdtZW50LnR5cGUgPT09IEZyYWdtZW50VHlwZS5yZXNvdXJjZUZpbGUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFJlc291cmNlRmlsZShmcmFnbWVudCBhcyBSZXNvdXJjZUZyYWdtZW50KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjb21wYXJlRm9ybVZhbHVlcyhbcHJldkdyb3VwLCBjdXJyZW50R3J1b3BdOiBQYXJ0aWFsPEN1aVV0aWxpdHlGb3JtVmFsdWVzPltdKTogUGFydGlhbDxDdWlVdGlsaXR5Rm9ybVZhbHVlcz4ge1xyXG4gICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhjdXJyZW50R3J1b3ApIGFzIChrZXlvZiBDdWlVdGlsaXR5Rm9ybUdyb3VwKVtdO1xyXG4gICAgICAgIGNvbnN0IGNoYW5nZWRGaWVsZHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XHJcblxyXG4gICAgICAgIGtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHByZXYgPSBwcmV2R3JvdXBba2V5XTtcclxuICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IGN1cnJlbnRHcnVvcFtrZXldO1xyXG5cclxuICAgICAgICAgICAgaWYgKHByZXYgPT09IGN1cnJlbnQgfHwgdGhpcy5jb250cm9sc1trZXldLmludmFsaWQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY2hhbmdlZEZpZWxkc1trZXldID0gY3VycmVudDtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGNoYW5nZWRGaWVsZHM7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzZXRSZXNvdXJjZUZpbGUocmVzb3VyY2U6IFJlc291cmNlRnJhZ21lbnQpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB1cmwgPSB0aGlzLmJhc2VSZXNvdXJjZVVybCgpICsgcmVzb3VyY2UuZmlsZUlkITtcclxuXHJcbiAgICAgICAgdGhpcy50aHVtYm5haWwuc2V0KHJlc291cmNlKTtcclxuXHJcbiAgICAgICAgaWYgKCF1cmwgfHwgcmVzb3VyY2U/Lm5hbWU/LnNwbGl0KCcuJykucG9wKCkgIT09ICdtcDQnKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuZ2V0Q2FwdHVyZUZyb21WaWRlbyh1cmwpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0RmlsZShmaWxlczogRmlsZUxpc3QpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gZmlsZXMuaXRlbSgwKTtcclxuXHJcbiAgICAgICAgaWYgKCFmaWxlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChmaWxlLnNpemUgPiB0aGlzLk1BWF9GSUxFX1NJWkUpIHtcclxuICAgICAgICAgICAgdGhpcy5jdWlBbGVydFNlcnZpY2VcclxuICAgICAgICAgICAgICAgIC5vcGVuKHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ0lOVkFMSURfRklMRV9TSVpFJyksIHtcclxuICAgICAgICAgICAgICAgICAgICBzdGF0dXM6ICdlcnJvcidcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBpc1ZpZGVvID0gZmlsZS5uYW1lLnNwbGl0KCcuJykuYXQoLTEpID09PSAnbXA0JztcclxuICAgICAgICBjb25zdCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpO1xyXG5cclxuICAgICAgICBpZiAoaXNWaWRlbykge1xyXG4gICAgICAgICAgICB0aGlzLmdldENhcHR1cmVGcm9tVmlkZW8odXJsLCBmaWxlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbC51cGRhdGUoKHByZXYpID0+ICh7IC4uLnByZXYhLCBuYW1lOiBmaWxlLm5hbWUsIHJlc291cmNlOiB1cmwgfSkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy51cGxvYWRGaWxlKGZpbGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdXBsb2FkRmlsZShmaWxlOiBGaWxlKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZnJhbWVJZCA9IHRoaXMuZnJhbWVySWQoKTtcclxuICAgICAgICBjb25zdCBmcmFnbWVudElkID0gdGhpcy50aHVtYm5haWwoKT8uaWQ7XHJcblxyXG4gICAgICAgIGlmICghZnJhbWVJZCB8fCAhZnJhZ21lbnRJZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZCgncmVzb3VyY2UnLCBmaWxlKTtcclxuXHJcbiAgICAgICAgdGhpcy5mcmFtZUFwaVNlcnZpY2UudXBsb2FkUmVzb3VyY2UoZm9ybURhdGEsIGZyYW1lSWQsIGZyYWdtZW50SWQpLnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0Q2FwdHVyZUZyb21WaWRlbyh1cmw6IHN0cmluZywgZmlsZT86IEZpbGUpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKSBhcyBIVE1MQ2FudmFzRWxlbWVudDtcclxuICAgICAgICBjb25zdCB2aWRlbyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3ZpZGVvJykgYXMgSFRNTFZpZGVvRWxlbWVudDtcclxuXHJcbiAgICAgICAgdmlkZW8uc3JjID0gdXJsO1xyXG4gICAgICAgIHZpZGVvLmN1cnJlbnRUaW1lID0gMTtcclxuICAgICAgICBjYW52YXMud2lkdGggPSAxODQ7XHJcbiAgICAgICAgY2FudmFzLmhlaWdodCA9IDEyMDtcclxuXHJcbiAgICAgICAgdmlkZW8ub25sb2FkZWRkYXRhID0gKCk6IHZvaWQgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIWNvbnRleHQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY29udGV4dC5kcmF3SW1hZ2UodmlkZW8sIDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XHJcblxyXG4gICAgICAgICAgICBjYW52YXMudG9CbG9iKChibG9iKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2IpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgdmlkZW9DYXB0dXJlVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgICAgICAgICAgICAgIHRoaXMudGh1bWJuYWlsLnVwZGF0ZSgocHJldikgPT4gKHtcclxuICAgICAgICAgICAgICAgICAgICAuLi5wcmV2ISxcclxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAoZmlsZT8ubmFtZSB8fCBwcmV2Py5uYW1lKSEsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2U6IHZpZGVvQ2FwdHVyZVVybFxyXG4gICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB2aWRlby5sb2FkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGVja0Zvcm1WYWxpZGF0aW9uKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhdGhpcy5pc0Rlc2NyaXB0aW9uRW1wdHkoKSAmJiAhdGhpcy5mb3JtLmludmFsaWQ7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cclxuICA8c2VjdGlvbiBjbGFzcz1cImNvbnRlbnRcIj5cclxuICAgIDxjdWktZm9ybS1maWVsZD5cclxuICAgICAgICA8bGFiZWwgY3VpTGFiZWwgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiIFtmb3JdPVwidGl0bGVJZFwiPlxyXG4gICAgICAgICAgICB7eyB0KCdUSVRMRScpIH19XHJcbiAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICA8Y3VpLWlucHV0LXRleHRcclxuICAgICAgICAgICAgW2N1aVRleHRGaWVsZElkXT1cInRpdGxlSWRcIlxyXG4gICAgICAgICAgICBbY3VpVGV4dEZpZWxkUGxhY2Vob2xkZXJdPVwidCgnQUREX1RJVExFJylcIlxyXG4gICAgICAgICAgICBbY3VpVGV4dEZpZWxkSXNFcnJvcl09XCJpc1RpdGxlRXJyb3JcIlxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybS5jb250cm9scy50aXRsZVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICBAaWYgKGlzVGl0bGVFcnJvcikge1xyXG4gICAgICAgICAgICA8Y3VpLWdlbmVyYWwtY29udHJvbC1lcnJvci1oaW50IFtjb250cm9sXT1cImZvcm0uY29udHJvbHMudGl0bGVcIiBbaXNWaXNpYmxlXT1cInRydWVcIiAvPlxyXG4gICAgICAgIH1cclxuICAgIDwvY3VpLWZvcm0tZmllbGQ+XHJcbiAgICA8Y3VpLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPGxhYmVsIGN1aUxhYmVsIFtpc1JlcXVpcmVkXT1cInRydWVcIiBbZm9yXT1cImRlc2NyaXB0aW9uSWRcIj5cclxuICAgICAgICAgICAge3sgdCgnU0hPUlRfREVTQ1JJUFRJT04nKSB9fVxyXG4gICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgIDxjdWktaW5wdXQtdGV4dFxyXG4gICAgICAgICAgICBbY3VpVGV4dEZpZWxkSWRdPVwiZGVzY3JpcHRpb25JZFwiXHJcbiAgICAgICAgICAgIGN1aVRleHRGaWVsZFBsYWNlaG9sZGVyPVwie3t0KCdTSE9SVF9ERVNDUklQVElPTicpfX0uLi5cIlxyXG4gICAgICAgICAgICBbY3VpVGV4dEZpZWxkSXNFcnJvcl09XCJpc0Rlc2NyaXB0aW9uRXJyb3JcIlxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybS5jb250cm9scy5kZXNjcmlwdGlvblwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICBAaWYgKGlzRGVzY3JpcHRpb25FcnJvcikge1xyXG4gICAgICAgICAgICA8Y3VpLWdlbmVyYWwtY29udHJvbC1lcnJvci1oaW50IFtjb250cm9sXT1cImZvcm0uY29udHJvbHMuZGVzY3JpcHRpb25cIiBbaXNWaXNpYmxlXT1cInRydWVcIiAvPlxyXG4gICAgICAgIH1cclxuICAgIDwvY3VpLWZvcm0tZmllbGQ+XHJcbiAgICA8c2VjdGlvbiBjbGFzcz1cImZpbGVcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPnt7IHQoJ1RIVU1CTkFJTCcpIH19PC9zcGFuPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGVudF9fdXBsb2FkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnRfX3VwbG9hZC1maWxlXCI+XHJcbiAgICAgICAgICBAaWYgKHRodW1ibmFpbCgpPy5uYW1lOyBhcyBmaWxlSWQpIHtcclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZVwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImltYWdlX19uYW1lXCI+e3sgdGh1bWJuYWlsKCk/Lm5hbWUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwhLS0gVE9ETzogbmdTcmMgLS0+XHJcbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWFnZV9fdmlld1wiIFtzcmNdPVwidGh1bWJuYWlsVXJsKClcIiBoZWlnaHQ9XCIxMjBcIiB3aWR0aD1cIjE4NFwiIGFsdD1cIlRodW1ibmFpbFwiIC8+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50X19pbmZvXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjdWlCdXR0b24gYXBwZWFyYW5jZT1cIm91dGxpbmVkLWdyYXlcIiBzaXplPVwieHhzXCIgaWNvbj1cImN1aUljb25VcGxvYWRcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0RmlsZSgpXCI+XHJcbiAgICAgICAgICAgICAgICB7eyB1cGxvYWRCdXR0b25OYW1lKCkgfX1cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgQGlmICh0aHVtYm5haWwoKT8ubmFtZSkge1xyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvbnRlbnRfX3JlbW92ZS1idXR0b25cIiBjdWlCdXR0b24gYXBwZWFyYW5jZT1cImxpbmtcIiBzaXplPVwic21cIiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25SZW1vdmVUaHVtYm5haWwoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7IHQoJ1JFTU9WRScpIH19XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvbnRlbnRfX2FjY2VwdGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgdCgnQUNDRVBURUQnKSB9fTogSlBHLCBKUEVHLCBQTkcsIE1QNCB7eyB0KCdVUF9UTycpIH19IDIwTUJcclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvc2VjdGlvbj5cclxuICAgIEBpZiAoZWRpdG9ySWQoKTsgYXMgZWRpdG9ySWQpIHtcclxuICAgICAgICA8Y3VpLWVkaXRvci1ibG9ja1xyXG4gICAgICAgICAgICBbdGl0bGVdPVwiZm9ybS5jb250cm9scy50aXRsZS52YWx1ZSB8fCB0aXRsZSgpXCJcclxuICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWcoKVwiXHJcbiAgICAgICAgICAgIFtlZGl0b3JJZF09XCJlZGl0b3JJZFwiXHJcbiAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgKGVkaXRvckVtcHR5KT1cIm9uRWRpdG9yRW1wdHkoJGV2ZW50KVwiXHJcbiAgICAgICAgPjwvY3VpLWVkaXRvci1ibG9jaz5cclxuICAgIH1cclxuICA8L3NlY3Rpb24+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
249
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0eS1pbmZvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91dGlsaXR5LWluZm8vdXRpbGl0eS1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91dGlsaXR5LWluZm8vdXRpbGl0eS1pbmZvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixVQUFVLEVBQ1YsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFrQyxNQUFNLGNBQWMsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFvQixNQUFNLGNBQWMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlELE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGNBQWMsRUFDZCxjQUFjLEVBQ2pCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBRSx1QkFBdUIsRUFBbUIsTUFBTSxjQUFjLENB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QUF1QjtrQkFwQm5DLFNBQVM7K0JBQ0ksa0JBQWtCLFdBQ25CO3dCQUNMLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzt3QkFDekMsbUNBQW1DO3dCQUNuQyxtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsVUFBVTtxQkFDYixjQUNXLElBQUksbUJBR0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIENvbXBvbmVudCxcclxuICAgIGNvbXB1dGVkLFxyXG4gICAgRGVzdHJveVJlZixcclxuICAgIGVmZmVjdCxcclxuICAgIGZvcndhcmRSZWYsXHJcbiAgICBpbmplY3QsXHJcbiAgICBpbnB1dCxcclxuICAgIG91dHB1dCxcclxuICAgIHNpZ25hbFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7IE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEN1aUZyYW1lQXBpU2VydmljZSwgRnJhZ21lbnRUeXBlLCBSZXNvdXJjZUZyYWdtZW50IH0gZnJvbSAnQGN1YnktdWkvYXBpJztcclxuaW1wb3J0IHsgQ3VpSWRTZXJ2aWNlLCB0eXBlIEN1aU51bGxhYmxlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcclxuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtYXAsIHBhaXJ3aXNlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7XHJcbiAgICBDdWlBY2NvcmRpb25Nb2R1bGUsXHJcbiAgICBDdWlBbGVydFNlcnZpY2UsXHJcbiAgICBDdWlCdXR0b25Nb2R1bGUsXHJcbiAgICBDdWlGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBDdWlIaW50TW9kdWxlLFxyXG4gICAgQ3VpSW5wdXRNb2R1bGUsXHJcbiAgICBDdWlMYWJlbE1vZHVsZVxyXG59IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBDdWlUb29sdGlwIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IEN1aUVkaXRvckJsb2NrQ29tcG9uZW50LCBDdWlFZGl0b3JDb25maWcgfSBmcm9tICcuLi8uLi9lZGl0b3InO1xyXG5pbXBvcnQgeyBjdWlDcmVhdGVEZWZhdWx0VmFsaWRhdG9ycyB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuaW1wb3J0IHsgQ3VpR2VuZXJhbENvbnRyb2xFcnJvckhpbnRDb21wb25lbnQgfSBmcm9tICcuLi9nZW5lcmFsLWNvbnRyb2wtZXJyb3ItaGludCc7XHJcbmltcG9ydCB7IEN1aVV0aWxpdHlGb3JtR3JvdXAsIEN1aVV0aWxpdHlGb3JtVmFsdWVzIH0gZnJvbSAnLi91dGlsaXR5LWluZm8ub3B0aW9ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY3VpLXV0aWxpdHktaW5mbycsXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ3VpQWNjb3JkaW9uTW9kdWxlLFxyXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBDdWlGb3JtRmllbGRNb2R1bGUsXHJcbiAgICAgICAgQ3VpSGludE1vZHVsZSxcclxuICAgICAgICBDdWlJbnB1dE1vZHVsZSxcclxuICAgICAgICBDdWlMYWJlbE1vZHVsZSxcclxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IEN1aUVkaXRvckJsb2NrQ29tcG9uZW50KSxcclxuICAgICAgICBDdWlHZW5lcmFsQ29udHJvbEVycm9ySGludENvbXBvbmVudCxcclxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZSxcclxuICAgICAgICBDdWlUb29sdGlwXHJcbiAgICBdLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91dGlsaXR5LWluZm8uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL3V0aWxpdHktaW5mby5jb21wb25lbnQuc2NzcycsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3VpVXRpbGl0eUluZm9Db21wb25lbnQge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtQnVpbGRlciA9IGluamVjdChOb25OdWxsYWJsZUZvcm1CdWlsZGVyKTtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsb2NvU2VydmljZSA9IGluamVjdChUcmFuc2xvY29TZXJ2aWNlKTtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZnJhbWVBcGlTZXJ2aWNlID0gaW5qZWN0KEN1aUZyYW1lQXBpU2VydmljZSk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1aUFsZXJ0U2VydmljZSA9IGluamVjdChDdWlBbGVydFNlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjdWlJZFNlcnZpY2UgPSBpbmplY3QoQ3VpSWRTZXJ2aWNlKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgQ09OVFJPTF9ERUxBWSA9IDUwMDtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBNQVhfRklMRV9TSVpFID0gMjA5NzE1MjA7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRpdGxlSWQgPSB0aGlzLmN1aUlkU2VydmljZS5nZW5lcmF0ZSgpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc2NyaXB0aW9uSWQgPSB0aGlzLmN1aUlkU2VydmljZS5nZW5lcmF0ZSgpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwPEN1aVV0aWxpdHlGb3JtR3JvdXA+KHtcclxuICAgICAgICB0aXRsZTogdGhpcy5mb3JtQnVpbGRlci5jb250cm9sKCcnLCBjdWlDcmVhdGVEZWZhdWx0VmFsaWRhdG9ycyh7IGFzeW5jRGVsYXk6IHRoaXMuQ09OVFJPTF9ERUxBWSB9KSksXHJcbiAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuZm9ybUJ1aWxkZXIuY29udHJvbCgnJywgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMoeyBhc3luY0RlbGF5OiB0aGlzLkNPTlRST0xfREVMQVkgfSkpXHJcbiAgICB9KTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0Rlc2NyaXB0aW9uTW9kYWxPcGVuID0gc2lnbmFsKGZhbHNlKTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0Rlc2NyaXB0aW9uRW1wdHkgPSBzaWduYWwoZmFsc2UpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVkaXRvcklkID0gc2lnbmFsPEN1aU51bGxhYmxlPHN0cmluZz4+KG51bGwpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRodW1ibmFpbCA9IHNpZ25hbDxDdWlOdWxsYWJsZTxSZXNvdXJjZUZyYWdtZW50Pj4obnVsbCk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGh1bWJuYWlsVXJsID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHRodW1ibmFpbCA9IHRoaXMudGh1bWJuYWlsKCk7XHJcblxyXG4gICAgICAgIGlmICh0aHVtYm5haWw/LnJlc291cmNlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aHVtYm5haWwucmVzb3VyY2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5iYXNlUmVzb3VyY2VVcmwoKSArIHRodW1ibmFpbCEuZmlsZUlkITtcclxuICAgIH0pO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHVwbG9hZEJ1dHRvbk5hbWUgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgdGh1bWJuYWlsID0gdGhpcy50aHVtYm5haWwoKTtcclxuXHJcbiAgICAgICAgaWYgKHRodW1ibmFpbD8ubmFtZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnUkVQTEFDRV9GSUxFJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnVVBMT0FEX0ZJTEUnKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHByb3RlY3RlZCBoZWFkaW5nOiBDdWlOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0IGNvbnRyb2xzKCk6IEN1aVV0aWxpdHlGb3JtR3JvdXAge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0uY29udHJvbHM7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGdldCBpc1RpdGxlRXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbHMudGl0bGUuaW52YWxpZCAmJiB0aGlzLmNvbnRyb2xzLnRpdGxlLmRpcnR5O1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBnZXQgaXNEZXNjcmlwdGlvbkVycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xzLmRlc2NyaXB0aW9uLmludmFsaWQgJiYgdGhpcy5jb250cm9scy5kZXNjcmlwdGlvbi5kaXJ0eTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGl0bGUgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGVzY3JpcHRpb24gPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZnJhbWVySWQgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgYmFzZVJlc291cmNlVXJsID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEN1aUVkaXRvckNvbmZpZz4oKTtcclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9ybUNoYW5nZWQgPSBvdXRwdXQ8UGFydGlhbDxDdWlVdGlsaXR5Rm9ybVZhbHVlcz4+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgaXNGb3JtVmFsaWRDaGFuZ2VkID0gb3V0cHV0PGJvb2xlYW4+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5pbml0VXRpbGl0eUVmZmVjdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvblNlbGVjdEZpbGUoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xyXG4gICAgICAgIGlucHV0LnR5cGUgPSAnZmlsZSc7XHJcbiAgICAgICAgaW5wdXQuYWNjZXB0ID0gJ2ltYWdlL2pwZywgaW1hZ2UvanBlZywgaW1hZ2UvcG5nLCB2aWRlby9tcDQnO1xyXG5cclxuICAgICAgICBpbnB1dC5vbmNoYW5nZSA9ICgpOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgY29uc3QgZmlsZXMgPSBpbnB1dC5maWxlcztcclxuXHJcbiAgICAgICAgICAgIGlmICghZmlsZXM/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmdldEZpbGUoZmlsZXMpO1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGlucHV0LmNsaWNrKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uRWRpdG9yRW1wdHkoaXNFbXB0eTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNEZXNjcmlwdGlvbkVtcHR5LnNldChpc0VtcHR5KTtcclxuICAgICAgICB0aGlzLmlzRm9ybVZhbGlkQ2hhbmdlZC5lbWl0KHRoaXMuY2hlY2tGb3JtVmFsaWRhdGlvbigpKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25SZW1vdmVUaHVtYm5haWwoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZnJhbWVJZCA9IHRoaXMuZnJhbWVySWQoKTtcclxuICAgICAgICBjb25zdCBmcmFnbWVudElkID0gdGhpcy50aHVtYm5haWwoKT8uaWQ7XHJcblxyXG4gICAgICAgIGlmICghZnJhbWVJZCB8fCAhZnJhZ21lbnRJZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmZyYW1lQXBpU2VydmljZS5kZWxldGVSZXNvdXJjZShmcmFtZUlkLCBmcmFnbWVudElkKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbC51cGRhdGUoKHByZXYpID0+ICh7IC4uLnByZXYhLCBmaWxlSWQ6IG51bGwsIG5hbWU6IG51bGwsIHJlc291cmNlOiBudWxsIH0pKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25Ub2dnbGVEZXNjcmlwdGlvbk1vZGFsKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNEZXNjcmlwdGlvbk1vZGFsT3Blbi51cGRhdGUoKHByZXYpID0+ICFwcmV2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluaXRVdGlsaXR5RWZmZWN0KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGVmZmVjdFJlZiA9IGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRpdGxlID0gdGhpcy50aXRsZSgpO1xyXG5cclxuICAgICAgICAgICAgaWYgKCF0aXRsZSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmluaXRGb3JtU3Vic2NyaXB0aW9ucygpO1xyXG4gICAgICAgICAgICB0aGlzLmluaXRGcmFtZUZyYWdtZW50cygpO1xyXG4gICAgICAgICAgICBlZmZlY3RSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdEZvcm1TdWJzY3JpcHRpb25zKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9ybS5zZXRWYWx1ZSh7IHRpdGxlOiB0aGlzLnRpdGxlKCksIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uKCkgfSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG5cclxuICAgICAgICB0aGlzLmZvcm0uc3RhdHVzQ2hhbmdlc1xyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95KSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmlzRm9ybVZhbGlkQ2hhbmdlZC5lbWl0KHRoaXMuY2hlY2tGb3JtVmFsaWRhdGlvbigpKSk7XHJcblxyXG4gICAgICAgIHRoaXMuZm9ybS52YWx1ZUNoYW5nZXNcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95KSxcclxuICAgICAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLmZvcm0udmFsdWUpLFxyXG4gICAgICAgICAgICAgICAgcGFpcndpc2UoKSxcclxuICAgICAgICAgICAgICAgIGRlYm91bmNlVGltZSh0aGlzLkNPTlRST0xfREVMQVkpLFxyXG4gICAgICAgICAgICAgICAgbWFwKChbcHJldiwgY3VycmVudF0pID0+IHRoaXMuY29tcGFyZUZvcm1WYWx1ZXMoW3ByZXYsIGN1cnJlbnRdKSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFPYmplY3Qua2V5cyh2YWx1ZSkubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNoYW5nZWQuZW1pdCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdEZyYW1lRnJhZ21lbnRzKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGZyYW1lSWQgPSB0aGlzLmZyYW1lcklkKCk7XHJcblxyXG4gICAgICAgIGlmICghZnJhbWVJZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmZyYW1lQXBpU2VydmljZS5nZXRGcmFtZShmcmFtZUlkKS5zdWJzY3JpYmUoKGZyYW1lKSA9PiB7XHJcbiAgICAgICAgICAgIGZyYW1lLmZyYWdtZW50cy5mb3JFYWNoKChmcmFnbWVudCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGZyYWdtZW50LnR5cGUgPT09IEZyYWdtZW50VHlwZS5qVGV4dCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWRpdG9ySWQuc2V0KGZyYWdtZW50Py5pZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGZyYWdtZW50LnR5cGUgPT09IEZyYWdtZW50VHlwZS5yZXNvdXJjZUZpbGUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFJlc291cmNlRmlsZShmcmFnbWVudCBhcyBSZXNvdXJjZUZyYWdtZW50KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjb21wYXJlRm9ybVZhbHVlcyhbcHJldkdyb3VwLCBjdXJyZW50R3J1b3BdOiBQYXJ0aWFsPEN1aVV0aWxpdHlGb3JtVmFsdWVzPltdKTogUGFydGlhbDxDdWlVdGlsaXR5Rm9ybVZhbHVlcz4ge1xyXG4gICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhjdXJyZW50R3J1b3ApIGFzIChrZXlvZiBDdWlVdGlsaXR5Rm9ybUdyb3VwKVtdO1xyXG4gICAgICAgIGNvbnN0IGNoYW5nZWRGaWVsZHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XHJcblxyXG4gICAgICAgIGtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHByZXYgPSBwcmV2R3JvdXBba2V5XTtcclxuICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IGN1cnJlbnRHcnVvcFtrZXldO1xyXG5cclxuICAgICAgICAgICAgaWYgKHByZXYgPT09IGN1cnJlbnQgfHwgdGhpcy5jb250cm9sc1trZXldLmludmFsaWQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY2hhbmdlZEZpZWxkc1trZXldID0gY3VycmVudDtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGNoYW5nZWRGaWVsZHM7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzZXRSZXNvdXJjZUZpbGUocmVzb3VyY2U6IFJlc291cmNlRnJhZ21lbnQpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB1cmwgPSB0aGlzLmJhc2VSZXNvdXJjZVVybCgpICsgcmVzb3VyY2UuZmlsZUlkITtcclxuXHJcbiAgICAgICAgdGhpcy50aHVtYm5haWwuc2V0KHJlc291cmNlKTtcclxuXHJcbiAgICAgICAgaWYgKCF1cmwgfHwgcmVzb3VyY2U/Lm5hbWU/LnNwbGl0KCcuJykucG9wKCkgIT09ICdtcDQnKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuZ2V0Q2FwdHVyZUZyb21WaWRlbyh1cmwpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0RmlsZShmaWxlczogRmlsZUxpc3QpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gZmlsZXMuaXRlbSgwKTtcclxuXHJcbiAgICAgICAgaWYgKCFmaWxlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChmaWxlLnNpemUgPiB0aGlzLk1BWF9GSUxFX1NJWkUpIHtcclxuICAgICAgICAgICAgdGhpcy5jdWlBbGVydFNlcnZpY2VcclxuICAgICAgICAgICAgICAgIC5vcGVuKHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ0lOVkFMSURfRklMRV9TSVpFJyksIHtcclxuICAgICAgICAgICAgICAgICAgICBzdGF0dXM6ICdlcnJvcidcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBpc1ZpZGVvID0gZmlsZS5uYW1lLnNwbGl0KCcuJykuYXQoLTEpID09PSAnbXA0JztcclxuICAgICAgICBjb25zdCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpO1xyXG5cclxuICAgICAgICBpZiAoaXNWaWRlbykge1xyXG4gICAgICAgICAgICB0aGlzLmdldENhcHR1cmVGcm9tVmlkZW8odXJsLCBmaWxlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnRodW1ibmFpbC51cGRhdGUoKHByZXYpID0+ICh7IC4uLnByZXYhLCBuYW1lOiBmaWxlLm5hbWUsIHJlc291cmNlOiB1cmwgfSkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy51cGxvYWRGaWxlKGZpbGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdXBsb2FkRmlsZShmaWxlOiBGaWxlKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZnJhbWVJZCA9IHRoaXMuZnJhbWVySWQoKTtcclxuICAgICAgICBjb25zdCBmcmFnbWVudElkID0gdGhpcy50aHVtYm5haWwoKT8uaWQ7XHJcblxyXG4gICAgICAgIGlmICghZnJhbWVJZCB8fCAhZnJhZ21lbnRJZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZCgncmVzb3VyY2UnLCBmaWxlKTtcclxuXHJcbiAgICAgICAgdGhpcy5mcmFtZUFwaVNlcnZpY2UudXBsb2FkUmVzb3VyY2UoZm9ybURhdGEsIGZyYW1lSWQsIGZyYWdtZW50SWQpLnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0Q2FwdHVyZUZyb21WaWRlbyh1cmw6IHN0cmluZywgZmlsZT86IEZpbGUpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKSBhcyBIVE1MQ2FudmFzRWxlbWVudDtcclxuICAgICAgICBjb25zdCB2aWRlbyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3ZpZGVvJykgYXMgSFRNTFZpZGVvRWxlbWVudDtcclxuXHJcbiAgICAgICAgdmlkZW8uc3JjID0gdXJsO1xyXG4gICAgICAgIHZpZGVvLmN1cnJlbnRUaW1lID0gMTtcclxuICAgICAgICBjYW52YXMud2lkdGggPSAxODQ7XHJcbiAgICAgICAgY2FudmFzLmhlaWdodCA9IDEyMDtcclxuXHJcbiAgICAgICAgdmlkZW8ub25sb2FkZWRkYXRhID0gKCk6IHZvaWQgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIWNvbnRleHQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY29udGV4dC5kcmF3SW1hZ2UodmlkZW8sIDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XHJcblxyXG4gICAgICAgICAgICBjYW52YXMudG9CbG9iKChibG9iKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2IpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgdmlkZW9DYXB0dXJlVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgICAgICAgICAgICAgIHRoaXMudGh1bWJuYWlsLnVwZGF0ZSgocHJldikgPT4gKHtcclxuICAgICAgICAgICAgICAgICAgICAuLi5wcmV2ISxcclxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAoZmlsZT8ubmFtZSB8fCBwcmV2Py5uYW1lKSEsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2U6IHZpZGVvQ2FwdHVyZVVybFxyXG4gICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB2aWRlby5sb2FkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGVja0Zvcm1WYWxpZGF0aW9uKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhdGhpcy5pc0Rlc2NyaXB0aW9uRW1wdHkoKSAmJiAhdGhpcy5mb3JtLmludmFsaWQ7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cclxuICA8c2VjdGlvbiBjbGFzcz1cImNvbnRlbnRcIj5cclxuICAgIDxjdWktZm9ybS1maWVsZD5cclxuICAgICAgICA8bGFiZWwgY3VpTGFiZWwgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiIFtmb3JdPVwidGl0bGVJZFwiPlxyXG4gICAgICAgICAgICB7eyB0KCdUSVRMRScpIH19XHJcbiAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICA8Y3VpLWlucHV0LXRleHRcclxuICAgICAgICAgICAgW2N1aVRleHRGaWVsZElkXT1cInRpdGxlSWRcIlxyXG4gICAgICAgICAgICBbY3VpVGV4dEZpZWxkUGxhY2Vob2xkZXJdPVwidCgnQUREX0FfVElUTEUnKVwiXHJcbiAgICAgICAgICAgIFtjdWlUZXh0RmllbGRJc0Vycm9yXT1cImlzVGl0bGVFcnJvclwiXHJcbiAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzLnRpdGxlXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIEBpZiAoaXNUaXRsZUVycm9yKSB7XHJcbiAgICAgICAgICAgIDxjdWktZ2VuZXJhbC1jb250cm9sLWVycm9yLWhpbnQgW2NvbnRyb2xdPVwiZm9ybS5jb250cm9scy50aXRsZVwiIFtpc1Zpc2libGVdPVwidHJ1ZVwiIC8+XHJcbiAgICAgICAgfVxyXG4gICAgPC9jdWktZm9ybS1maWVsZD5cclxuICAgIDxjdWktZm9ybS1maWVsZD5cclxuICAgICAgICA8bGFiZWwgY3VpTGFiZWwgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiIFtmb3JdPVwiZGVzY3JpcHRpb25JZFwiPlxyXG4gICAgICAgICAgICB7eyB0KCdTSE9SVF9ERVNDUklQVElPTicpIH19XHJcbiAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgPGN1aS1pbnB1dC10ZXh0XHJcbiAgICAgICAgICAgIFtjdWlUZXh0RmllbGRJZF09XCJkZXNjcmlwdGlvbklkXCJcclxuICAgICAgICAgICAgY3VpVGV4dEZpZWxkUGxhY2Vob2xkZXI9XCJ7e3QoJ1NIT1JUX0RFU0NSSVBUSU9OJyl9fS4uLlwiXHJcbiAgICAgICAgICAgIFtjdWlUZXh0RmllbGRJc0Vycm9yXT1cImlzRGVzY3JpcHRpb25FcnJvclwiXHJcbiAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzLmRlc2NyaXB0aW9uXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIEBpZiAoaXNEZXNjcmlwdGlvbkVycm9yKSB7XHJcbiAgICAgICAgICAgIDxjdWktZ2VuZXJhbC1jb250cm9sLWVycm9yLWhpbnQgW2NvbnRyb2xdPVwiZm9ybS5jb250cm9scy5kZXNjcmlwdGlvblwiIFtpc1Zpc2libGVdPVwidHJ1ZVwiIC8+XHJcbiAgICAgICAgfVxyXG4gICAgPC9jdWktZm9ybS1maWVsZD5cclxuICAgIDxzZWN0aW9uIGNsYXNzPVwiZmlsZVwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+e3sgdCgnVEhVTUJOQUlMJykgfX08L3NwYW4+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50X191cGxvYWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudF9fdXBsb2FkLWZpbGVcIj5cclxuICAgICAgICAgIEBpZiAodGh1bWJuYWlsKCk/Lm5hbWU7IGFzIGZpbGVJZCkge1xyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaW1hZ2VfX25hbWVcIj57eyB0aHVtYm5haWwoKT8ubmFtZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPCEtLSBUT0RPOiBuZ1NyYyAtLT5cclxuICAgICAgICAgICAgPGltZyBjbGFzcz1cImltYWdlX192aWV3XCIgW3NyY109XCJ0aHVtYm5haWxVcmwoKVwiIGhlaWdodD1cIjEyMFwiIHdpZHRoPVwiMTg0XCIgYWx0PVwiVGh1bWJuYWlsXCIgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnRfX2luZm9cIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGN1aUJ1dHRvbiBhcHBlYXJhbmNlPVwib3V0bGluZWQtZ3JheVwiIHNpemU9XCJ4eHNcIiBpY29uPVwiY3VpSWNvblVwbG9hZFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3RGaWxlKClcIj5cclxuICAgICAgICAgICAgICAgIHt7IHVwbG9hZEJ1dHRvbk5hbWUoKSB9fVxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICBAaWYgKHRodW1ibmFpbCgpPy5uYW1lKSB7XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY29udGVudF9fcmVtb3ZlLWJ1dHRvblwiIGN1aUJ1dHRvbiBhcHBlYXJhbmNlPVwibGlua1wiIHNpemU9XCJzbVwiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblJlbW92ZVRodW1ibmFpbCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgdCgnUkVNT1ZFJykgfX1cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY29udGVudF9fYWNjZXB0ZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyB0KCdBQ0NFUFRFRCcpIH19OiBKUEcsIEpQRUcsIFBORywgTVA0IHt7IHQoJ1VQX1RPJykgfX0gMjBNQlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9zZWN0aW9uPlxyXG4gICAgQGlmIChlZGl0b3JJZCgpOyBhcyBlZGl0b3JJZCkge1xyXG4gICAgICAgIDxjdWktZWRpdG9yLWJsb2NrXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCJmb3JtLmNvbnRyb2xzLnRpdGxlLnZhbHVlIHx8IHRpdGxlKClcIlxyXG4gICAgICAgICAgICBbY29uZmlnXT1cImNvbmZpZygpXCJcclxuICAgICAgICAgICAgW2VkaXRvcklkXT1cImVkaXRvcklkXCJcclxuICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImVkaXRvclwiXHJcbiAgICAgICAgICAgIChlZGl0b3JFbXB0eSk9XCJvbkVkaXRvckVtcHR5KCRldmVudClcIlxyXG4gICAgICAgID48L2N1aS1lZGl0b3ItYmxvY2s+XHJcbiAgICB9XHJcbiAgPC9zZWN0aW9uPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|