@seniorsistemas/angular-components 19.3.2 → 19.3.3-feature-ptfgap-1442-fd712f99
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/button/lib/button/button.component.d.ts +5 -1
- package/dynamic-form/dynamic-form/components/lookup/lookup.component.d.ts +2 -2
- package/dynamic-form/dynamic-form/components/lookup/types/lookup-models.d.ts +4 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +2 -1
- package/dynamic-form/public-api.d.ts +1 -0
- package/esm2022/button/lib/button/button.component.mjs +9 -3
- package/esm2022/confirm-dialog/lib/popup-confirm-dialog/popup-confirm-dialog.component.mjs +1 -1
- package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/components/grid/row/row.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +7 -10
- package/esm2022/dynamic-form/dynamic-form/components/lookup/types/lookup-models.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +2 -2
- package/esm2022/dynamic-form/public-api.mjs +1 -1
- package/esm2022/empty-state/lib/empty-state/empty-state.component.mjs +1 -1
- package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +1 -1
- package/esm2022/global-search/lib/global-search/components/dropdown/global-search-dropdown-item.component.mjs +1 -1
- package/esm2022/global-search/lib/global-search/global-search.component.mjs +2 -2
- package/esm2022/help-popover/lib/help-popover/help-popover/help-popover.component.mjs +1 -1
- package/esm2022/image-cropper/lib/image-cropper/image-cropper.component.mjs +1 -1
- package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +1 -1
- package/esm2022/inline-edit/lib/inline-edit/components/inline-edit-item/inline-edit-item.component.mjs +1 -1
- package/esm2022/kanban/lib/kanban/components/kanban-column/kanban-column.component.mjs +1 -1
- package/esm2022/object-card/lib/object-card/elements/field/object-card-field.component.mjs +1 -1
- package/esm2022/object-card/lib/object-card/elements/main/object-card-main.component.mjs +1 -1
- package/esm2022/picklist/lib/picklist/picklist.component.mjs +1 -1
- package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +1 -1
- package/esm2022/select/lib/select/select.component.mjs +3 -3
- package/esm2022/shared/lib/accessibility/datepicker-no-period-tab.directive.mjs +104 -0
- package/esm2022/shared/public-api.mjs +2 -1
- package/esm2022/spotlight/lib/spotlight/spotlight.component.mjs +2 -2
- package/esm2022/table/lib/table/table-paging/table-paging.component.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-button.mjs +8 -2
- package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +12 -15
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-help-popover.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-help-popover.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-select.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-shared.mjs +104 -2
- package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-spotlight.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-spotlight.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-table.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
- package/package.json +19 -19
- package/shared/lib/accessibility/datepicker-no-period-tab.directive.d.ts +43 -0
- package/shared/public-api.d.ts +1 -0
|
@@ -128,6 +128,10 @@ export declare class ButtonComponent implements OnChanges {
|
|
|
128
128
|
* @description Texto alternativo para o menu associado ao botão, utilizado para acessibilidade.
|
|
129
129
|
*/
|
|
130
130
|
menuAriaLabel?: string;
|
|
131
|
+
/**
|
|
132
|
+
* @description Texto alternativo para quando o botão não tiver um texto explicito, utilizado para acessibilidade.
|
|
133
|
+
*/
|
|
134
|
+
ariaLabel?: string;
|
|
131
135
|
/**
|
|
132
136
|
* @description Emitido ao clicar no botão, desde que não esteja desabilitado.
|
|
133
137
|
*/
|
|
@@ -139,5 +143,5 @@ export declare class ButtonComponent implements OnChanges {
|
|
|
139
143
|
onTieredMenuOpened(): void;
|
|
140
144
|
onTieredMenuClosed(): void;
|
|
141
145
|
static ɵfac: i0.ɵɵFactoryDeclaration<ButtonComponent, never>;
|
|
142
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "s-button", never, { "id": { "alias": "id"; "required": false; }; "label": { "alias": "label"; "required": false; }; "tooltip": { "alias": "tooltip"; "required": false; }; "tooltipPosition": { "alias": "tooltipPosition"; "required": false; }; "iconClass": { "alias": "iconClass"; "required": false; }; "rightIconClass": { "alias": "rightIconClass"; "required": false; }; "caret": { "alias": "caret"; "required": false; }; "styleClass": { "alias": "styleClass"; "required": false; }; "baseZIndex": { "alias": "baseZIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "auxiliary": { "alias": "auxiliary"; "required": false; }; "type": { "alias": "type"; "required": false; }; "priority": { "alias": "priority"; "required": false; }; "menuOptions": { "alias": "menuOptions"; "required": false; }; "size": { "alias": "size"; "required": false; }; "slide": { "alias": "slide"; "required": false; }; "animation": { "alias": "animation"; "required": false; }; "badge": { "alias": "badge"; "required": false; }; "iconColor": { "alias": "iconColor"; "required": false; }; "menuAriaLabel": { "alias": "menuAriaLabel"; "required": false; }; }, { "clicked": "clicked"; }, never, ["*"], true, never>;
|
|
146
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "s-button", never, { "id": { "alias": "id"; "required": false; }; "label": { "alias": "label"; "required": false; }; "tooltip": { "alias": "tooltip"; "required": false; }; "tooltipPosition": { "alias": "tooltipPosition"; "required": false; }; "iconClass": { "alias": "iconClass"; "required": false; }; "rightIconClass": { "alias": "rightIconClass"; "required": false; }; "caret": { "alias": "caret"; "required": false; }; "styleClass": { "alias": "styleClass"; "required": false; }; "baseZIndex": { "alias": "baseZIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "auxiliary": { "alias": "auxiliary"; "required": false; }; "type": { "alias": "type"; "required": false; }; "priority": { "alias": "priority"; "required": false; }; "menuOptions": { "alias": "menuOptions"; "required": false; }; "size": { "alias": "size"; "required": false; }; "slide": { "alias": "slide"; "required": false; }; "animation": { "alias": "animation"; "required": false; }; "badge": { "alias": "badge"; "required": false; }; "iconColor": { "alias": "iconColor"; "required": false; }; "menuAriaLabel": { "alias": "menuAriaLabel"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "clicked": "clicked"; }, never, ["*"], true, never>;
|
|
143
147
|
}
|
|
@@ -16,6 +16,7 @@ import { TextFieldConfig } from '../../form-field/configurations/fields/text-fie
|
|
|
16
16
|
import { LookupSearchRequest } from './models/lookup-api.model';
|
|
17
17
|
import { DefaultFilter } from './types/default-filter';
|
|
18
18
|
import { LabelOptions } from './types/label-options';
|
|
19
|
+
import { LookupGridFields } from './types/lookup-models';
|
|
19
20
|
import * as i0 from "@angular/core";
|
|
20
21
|
export declare class LookupComponent implements ControlValueAccessor, OnChanges, OnInit, OnDestroy {
|
|
21
22
|
private readonly hotkeysService;
|
|
@@ -45,7 +46,7 @@ export declare class LookupComponent implements ControlValueAccessor, OnChanges,
|
|
|
45
46
|
searchFields: (DynamicType & {
|
|
46
47
|
customName?: string;
|
|
47
48
|
})[];
|
|
48
|
-
searchGridFields:
|
|
49
|
+
searchGridFields: LookupGridFields[];
|
|
49
50
|
multiSortMeta: SortMeta[];
|
|
50
51
|
placeholder?: string;
|
|
51
52
|
sortableColumnsDisabled: string[];
|
|
@@ -112,7 +113,6 @@ export declare class LookupComponent implements ControlValueAccessor, OnChanges,
|
|
|
112
113
|
getBadgeFromValue(value: unknown, field: SelectFieldConfig): Partial<Pick<import("@seniorsistemas/angular-components/badge").BadgeComponent, "type" | "iconClass" | "color" | "iconPosition">> | undefined;
|
|
113
114
|
getLabelForValue(value: unknown, field: SelectFieldConfig): string;
|
|
114
115
|
isBooleanValue(obj: any, path: string): boolean;
|
|
115
|
-
getFieldWidth(col: any): any;
|
|
116
116
|
getBooleanLabel(obj: any, path: string, optionsLabel: BooleanOptionsLabel | undefined): string | undefined;
|
|
117
117
|
isNumber(obj: any, path: string): boolean;
|
|
118
118
|
setHotkeys(): void;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { LookupSearchRequest } from '../../../components/lookup/models/lookup-api.model';
|
|
3
3
|
import { DynamicType, FieldConfig } from './field';
|
|
4
|
+
import { LookupGridFields } from '../../../components/lookup/types/lookup-models';
|
|
4
5
|
/**
|
|
5
6
|
* Dados retornados pelo Observable de pesquisa avançada do Lookup.
|
|
6
7
|
*/
|
|
@@ -47,7 +48,7 @@ export interface LookupFieldConfig extends FieldConfig {
|
|
|
47
48
|
* Colunas exibidas na grade de resultados do diálogo de pesquisa.
|
|
48
49
|
* Cada item define uma coluna com header e campo de dados.
|
|
49
50
|
*/
|
|
50
|
-
searchGridFields:
|
|
51
|
+
searchGridFields: LookupGridFields[];
|
|
51
52
|
/**
|
|
52
53
|
* Observable que emite sugestões para o autocompletar do input do lookup.
|
|
53
54
|
* Deve emitir um array de objetos com a propriedade `lookupDisplayField`.
|
|
@@ -31,6 +31,7 @@ export { type StarRatingFieldConfig } from './dynamic-form/form-field/configurat
|
|
|
31
31
|
export { type TextAreaFieldConfig } from './dynamic-form/form-field/configurations/fields/text-area-field';
|
|
32
32
|
export { type ContentGeneratorFieldConfig } from './dynamic-form/form-field/configurations/fields/content-generator-field';
|
|
33
33
|
export { type TextFieldConfig } from './dynamic-form/form-field/configurations/fields/text-field';
|
|
34
|
+
export { type LookupGridFields } from './dynamic-form/components/lookup/types/lookup-models';
|
|
34
35
|
export { FieldSize } from './dynamic-form/form-field/configurations/field-size';
|
|
35
36
|
export { NumberFieldComponent } from './dynamic-form/form-field/fields/number/number-field.component';
|
|
36
37
|
export type { DynamicType, FieldConfig, FieldType, FieldTypeMap, } from './dynamic-form/form-field/configurations/fields/field';
|
|
@@ -131,6 +131,10 @@ export class ButtonComponent {
|
|
|
131
131
|
* @description Texto alternativo para o menu associado ao botão, utilizado para acessibilidade.
|
|
132
132
|
*/
|
|
133
133
|
menuAriaLabel;
|
|
134
|
+
/**
|
|
135
|
+
* @description Texto alternativo para quando o botão não tiver um texto explicito, utilizado para acessibilidade.
|
|
136
|
+
*/
|
|
137
|
+
ariaLabel;
|
|
134
138
|
/**
|
|
135
139
|
* @description Emitido ao clicar no botão, desde que não esteja desabilitado.
|
|
136
140
|
*/
|
|
@@ -160,13 +164,13 @@ export class ButtonComponent {
|
|
|
160
164
|
this.isMenuOpen = false;
|
|
161
165
|
}
|
|
162
166
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
163
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ButtonComponent, isStandalone: true, selector: "s-button", inputs: { id: "id", label: "label", tooltip: "tooltip", tooltipPosition: "tooltipPosition", iconClass: "iconClass", rightIconClass: "rightIconClass", caret: "caret", styleClass: "styleClass", baseZIndex: "baseZIndex", disabled: "disabled", auxiliary: "auxiliary", type: "type", priority: "priority", menuOptions: "menuOptions", size: "size", slide: "slide", animation: "animation", badge: "badge", iconColor: "iconColor", menuAriaLabel: "menuAriaLabel" }, outputs: { clicked: "clicked" }, host: { properties: { "class.s-button-with-badge": "!!badge", "style.min-width": "this.minWidth" } }, usesOnChanges: true, ngImport: i0, template: "<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label && !menuOptions.length,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [ariaLabel]=\"menuAriaLabel\"\n [attr.aria-haspopup]=\"menuOptions.length ? 'menu' : null\"\n [attr.aria-expanded]=\"menuOptions.length ? isMenuOpen : null\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (tieredMenuOpened)=\"onTieredMenuOpened()\"\n (tieredMenuClosed)=\"onTieredMenuClosed()\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n\n", styles: [":host{display:inline-flex;position:relative}:host.s-button-with-badge{margin-right:-15px}button{align-items:center;display:inline-flex;justify-content:center;border:1px solid;border-radius:4px;color:#fff;cursor:pointer;font-family:Open Sans,sans-serif;font-size:14px;height:35px;max-width:100%;min-width:40px;outline:none;overflow:visible;padding:5px 10px;position:relative;text-decoration:none;text-transform:none;transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out}button:disabled{background-image:none;cursor:text;filter:Alpha(Opacity=50);opacity:.5}button.s-button-auxiliary{border-radius:20px}button.s-button-size-small{height:25px}button.s-button-size-small.s-button-only-icon{max-width:24px;max-height:24px;min-width:24px}button.s-button-size-default{height:35px}button.s-button-with-text,button.s-button-with-icon.s-button-multiple{min-width:80px}button.s-button-with-icon.s-button-with-text.s-button-multiple{min-width:100px}button.s-button-multiple.s-button-size-small.s-button-empty{width:25px;min-width:25px}button .s-button-icon,button .s-button-right-icon,button .s-button-menu-icon,button.s-button-with-icon.s-button-multiple:not(.s-button-with-text) .s-button-icon{align-items:center;display:inline-flex;justify-content:center}button.s-button-multiple .s-button-text{align-items:left;display:inline-flex;justify-content:left}button.s-button-with-icon .s-button-text{align-items:right;display:inline-flex;justify-content:right}button.s-button-priority-primary{background-color:#428bca;border-color:#428bca}button.s-button-priority-primary .s-button-icon,button.s-button-priority-primary .s-button-right-icon,button.s-button-priority-primary .s-button-text,button.s-button-priority-primary .s-button-menu-icon{color:#fff}button.s-button-priority-primary:hover{background-color:#2a6496}button.s-button-priority-primary:focus{background-color:#2a6496;border-color:#22dce6}button.s-button-priority-primary:active:not(:disabled),button.s-button-priority-primary.s-button-active:not(:disabled){background-color:#245682;border-color:#245682}button.s-button-priority-primary .menu-options-icon{color:#fff}button.s-button-priority-secondary{background-color:#7892a1;border-color:#7892a1}button.s-button-priority-secondary .s-button-icon,button.s-button-priority-secondary .s-button-right-icon,button.s-button-priority-secondary .s-button-text,button.s-button-priority-secondary .s-button-menu-icon{color:#fff}button.s-button-priority-secondary:hover{background-color:#546b79}button.s-button-priority-secondary:focus{background-color:#546b79;border-color:#22dce6}button.s-button-priority-secondary:active:not(:disabled),button.s-button-priority-secondary.s-button-active:not(:disabled){background-color:#495e6a;border-color:#495e6a}button.s-button-priority-secondary .menu-options-icon{color:#fff}button.s-button-priority-default{background-color:#fff;border-color:#ccc}button.s-button-priority-default .s-button-icon,button.s-button-priority-default .s-button-right-icon,button.s-button-priority-default .s-button-text,button.s-button-priority-default .s-button-menu-icon{color:#333}button.s-button-priority-default:hover{background-color:#d9d9d9}button.s-button-priority-default:focus{background-color:#d9d9d9;border-color:#22dce6}button.s-button-priority-default:active:not(:disabled),button.s-button-priority-default.s-button-active:not(:disabled){background-color:#ccc;border-color:#ccc}button.s-button-priority-default .menu-options-icon{color:#333}button.s-button-auxiliary.s-button-only-icon{border-radius:50%}button.s-button-priority-link{background-color:transparent;border-color:transparent}button.s-button-priority-link .s-button-icon,button.s-button-priority-link .s-button-right-icon,button.s-button-priority-link .s-button-text,button.s-button-priority-link .s-button-menu-icon{color:#428bca}button.s-button-priority-link:hover{background-color:transparent}button.s-button-priority-link:hover .s-button-icon,button.s-button-priority-link:hover .s-button-right-icon,button.s-button-priority-link:hover .s-button-text,button.s-button-priority-link:hover .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:focus{background-color:transparent;border-color:#22dce6}button.s-button-priority-link:focus .s-button-icon,button.s-button-priority-link:focus .s-button-right-icon,button.s-button-priority-link:focus .s-button-text,button.s-button-priority-link:focus .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:active:not(:disabled),button.s-button-priority-link.s-button-active:not(:disabled){background-color:transparent;border-color:transparent}button.s-button-priority-link:active:not(:disabled) .s-button-icon,button.s-button-priority-link:active:not(:disabled) .s-button-right-icon,button.s-button-priority-link:active:not(:disabled) .s-button-text,button.s-button-priority-link:active:not(:disabled) .s-button-menu-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-right-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-text,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-menu-icon{color:#245682}.s-button-priority-danger{background-color:#9c3a3a;border-color:#9c3a3a}.s-button-priority-danger .s-button-icon,.s-button-priority-danger .s-button-right-icon,.s-button-priority-danger .s-button-text,.s-button-priority-danger .s-button-menu-icon{color:#fff}.s-button-priority-danger:hover{background-color:#642525}.s-button-priority-danger:focus{background-color:#642525;border-color:#22dce6}.s-button-priority-danger:active:not(:disabled),.s-button-priority-danger.s-button-active:not(:disabled){background-color:#521e1e;border-color:#521e1e}.s-button-priority-danger .menu-options-icon{color:#fff}.s-button-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-button-menu-icon{right:10px;transition:transform .2s ease-out}.s-button-icon-margin-left{margin-left:10px}.s-button-icon-margin-right{margin-right:10px}.s-button-active .s-button-menu-icon{transform:rotateX(180deg)}.s-button--slide.s-button-with-text,.s-button--slide.s-button-with-icon.s-button-multiple{min-width:40px}.s-button--slide .s-button-text{opacity:0;position:absolute;width:0}.s-button--slide:hover .s-button-text{opacity:1;position:relative;transition:1s ease;width:auto}.s-button--slide:hover.s-button--rotate-animation .s-button-icon,.s-button--slide:hover.s-button--rotate-animation .s-button-right-icon{transform:rotate(360deg);transition:1.5s ease}.badge{z-index:99;position:relative;right:15px;bottom:16px}.menu-options-icon{color:#212533}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i1.BadgeComponent, selector: "s-badge", inputs: ["type", "color", "title", "text", "selectable", "iconClass", "iconPosition", "infoSign", "enableTruncateText"], outputs: ["selected"] }, { kind: "ngmodule", type: TieredMenuModule }, { kind: "directive", type: i2.TieredMenuDirective, selector: "[sTieredMenu]", inputs: ["items", "focusedItem", "triggerEvent", "ariaLabel"], outputs: ["tieredMenuOpened", "tieredMenuClosed"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
|
|
167
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ButtonComponent, isStandalone: true, selector: "s-button", inputs: { id: "id", label: "label", tooltip: "tooltip", tooltipPosition: "tooltipPosition", iconClass: "iconClass", rightIconClass: "rightIconClass", caret: "caret", styleClass: "styleClass", baseZIndex: "baseZIndex", disabled: "disabled", auxiliary: "auxiliary", type: "type", priority: "priority", menuOptions: "menuOptions", size: "size", slide: "slide", animation: "animation", badge: "badge", iconColor: "iconColor", menuAriaLabel: "menuAriaLabel", ariaLabel: "ariaLabel" }, outputs: { clicked: "clicked" }, host: { properties: { "class.s-button-with-badge": "!!badge", "style.min-width": "this.minWidth" } }, usesOnChanges: true, ngImport: i0, template: "<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label && !menuOptions.length,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [ariaLabel]=\"menuAriaLabel\"\n [attr.aria-haspopup]=\"menuOptions.length ? 'menu' : null\"\n [attr.aria-expanded]=\"menuOptions.length ? isMenuOpen : null\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (tieredMenuOpened)=\"onTieredMenuOpened()\"\n (tieredMenuClosed)=\"onTieredMenuClosed()\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n\n", styles: [":host{display:inline-flex;position:relative}:host.s-button-with-badge{margin-right:-15px}button{align-items:center;display:inline-flex;justify-content:center;border:1px solid;border-radius:4px;color:#fff;cursor:pointer;font-family:Open Sans,sans-serif;font-size:14px;height:35px;max-width:100%;min-width:40px;outline:none;overflow:visible;padding:5px 10px;position:relative;text-decoration:none;text-transform:none;transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out}button:disabled{background-image:none;cursor:text;filter:Alpha(Opacity=50);opacity:.5}button.s-button-auxiliary{border-radius:20px}button.s-button-size-small{height:25px}button.s-button-size-small.s-button-only-icon{max-width:24px;max-height:24px;min-width:24px}button.s-button-size-default{height:35px}button.s-button-with-text,button.s-button-with-icon.s-button-multiple{min-width:80px}button.s-button-with-icon.s-button-with-text.s-button-multiple{min-width:100px}button.s-button-multiple.s-button-size-small.s-button-empty{width:25px;min-width:25px}button .s-button-icon,button .s-button-right-icon,button .s-button-menu-icon,button.s-button-with-icon.s-button-multiple:not(.s-button-with-text) .s-button-icon{align-items:center;display:inline-flex;justify-content:center}button.s-button-multiple .s-button-text{align-items:left;display:inline-flex;justify-content:left}button.s-button-with-icon .s-button-text{align-items:right;display:inline-flex;justify-content:right}button.s-button-priority-primary{background-color:#428bca;border-color:#428bca}button.s-button-priority-primary .s-button-icon,button.s-button-priority-primary .s-button-right-icon,button.s-button-priority-primary .s-button-text,button.s-button-priority-primary .s-button-menu-icon{color:#fff}button.s-button-priority-primary:hover{background-color:#2a6496}button.s-button-priority-primary:focus{background-color:#2a6496;border-color:#22dce6}button.s-button-priority-primary:active:not(:disabled),button.s-button-priority-primary.s-button-active:not(:disabled){background-color:#245682;border-color:#245682}button.s-button-priority-primary .menu-options-icon{color:#fff}button.s-button-priority-secondary{background-color:#7892a1;border-color:#7892a1}button.s-button-priority-secondary .s-button-icon,button.s-button-priority-secondary .s-button-right-icon,button.s-button-priority-secondary .s-button-text,button.s-button-priority-secondary .s-button-menu-icon{color:#fff}button.s-button-priority-secondary:hover{background-color:#546b79}button.s-button-priority-secondary:focus{background-color:#546b79;border-color:#22dce6}button.s-button-priority-secondary:active:not(:disabled),button.s-button-priority-secondary.s-button-active:not(:disabled){background-color:#495e6a;border-color:#495e6a}button.s-button-priority-secondary .menu-options-icon{color:#fff}button.s-button-priority-default{background-color:#fff;border-color:#ccc}button.s-button-priority-default .s-button-icon,button.s-button-priority-default .s-button-right-icon,button.s-button-priority-default .s-button-text,button.s-button-priority-default .s-button-menu-icon{color:#333}button.s-button-priority-default:hover{background-color:#d9d9d9}button.s-button-priority-default:focus{background-color:#d9d9d9;border-color:#22dce6}button.s-button-priority-default:active:not(:disabled),button.s-button-priority-default.s-button-active:not(:disabled){background-color:#ccc;border-color:#ccc}button.s-button-priority-default .menu-options-icon{color:#333}button.s-button-auxiliary.s-button-only-icon{border-radius:50%}button.s-button-priority-link{background-color:transparent;border-color:transparent}button.s-button-priority-link .s-button-icon,button.s-button-priority-link .s-button-right-icon,button.s-button-priority-link .s-button-text,button.s-button-priority-link .s-button-menu-icon{color:#428bca}button.s-button-priority-link:hover{background-color:transparent}button.s-button-priority-link:hover .s-button-icon,button.s-button-priority-link:hover .s-button-right-icon,button.s-button-priority-link:hover .s-button-text,button.s-button-priority-link:hover .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:focus{background-color:transparent;border-color:#22dce6}button.s-button-priority-link:focus .s-button-icon,button.s-button-priority-link:focus .s-button-right-icon,button.s-button-priority-link:focus .s-button-text,button.s-button-priority-link:focus .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:active:not(:disabled),button.s-button-priority-link.s-button-active:not(:disabled){background-color:transparent;border-color:transparent}button.s-button-priority-link:active:not(:disabled) .s-button-icon,button.s-button-priority-link:active:not(:disabled) .s-button-right-icon,button.s-button-priority-link:active:not(:disabled) .s-button-text,button.s-button-priority-link:active:not(:disabled) .s-button-menu-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-right-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-text,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-menu-icon{color:#245682}.s-button-priority-danger{background-color:#9c3a3a;border-color:#9c3a3a}.s-button-priority-danger .s-button-icon,.s-button-priority-danger .s-button-right-icon,.s-button-priority-danger .s-button-text,.s-button-priority-danger .s-button-menu-icon{color:#fff}.s-button-priority-danger:hover{background-color:#642525}.s-button-priority-danger:focus{background-color:#642525;border-color:#22dce6}.s-button-priority-danger:active:not(:disabled),.s-button-priority-danger.s-button-active:not(:disabled){background-color:#521e1e;border-color:#521e1e}.s-button-priority-danger .menu-options-icon{color:#fff}.s-button-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-button-menu-icon{right:10px;transition:transform .2s ease-out}.s-button-icon-margin-left{margin-left:10px}.s-button-icon-margin-right{margin-right:10px}.s-button-active .s-button-menu-icon{transform:rotateX(180deg)}.s-button--slide.s-button-with-text,.s-button--slide.s-button-with-icon.s-button-multiple{min-width:40px}.s-button--slide .s-button-text{opacity:0;position:absolute;width:0}.s-button--slide:hover .s-button-text{opacity:1;position:relative;transition:1s ease;width:auto}.s-button--slide:hover.s-button--rotate-animation .s-button-icon,.s-button--slide:hover.s-button--rotate-animation .s-button-right-icon{transform:rotate(360deg);transition:1.5s ease}.badge{z-index:99;position:relative;right:15px;bottom:16px}.menu-options-icon{color:#212533}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i1.BadgeComponent, selector: "s-badge", inputs: ["type", "color", "title", "text", "selectable", "iconClass", "iconPosition", "infoSign", "enableTruncateText"], outputs: ["selected"] }, { kind: "ngmodule", type: TieredMenuModule }, { kind: "directive", type: i2.TieredMenuDirective, selector: "[sTieredMenu]", inputs: ["items", "focusedItem", "triggerEvent", "ariaLabel"], outputs: ["tieredMenuOpened", "tieredMenuClosed"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
|
|
164
168
|
}
|
|
165
169
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
166
170
|
type: Component,
|
|
167
171
|
args: [{ selector: 's-button', host: {
|
|
168
172
|
'[class.s-button-with-badge]': '!!badge',
|
|
169
|
-
}, standalone: true, imports: [NgClass, NgStyle, BadgeModule, TieredMenuModule, TooltipModule], template: "<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label && !menuOptions.length,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [ariaLabel]=\"menuAriaLabel\"\n [attr.aria-haspopup]=\"menuOptions.length ? 'menu' : null\"\n [attr.aria-expanded]=\"menuOptions.length ? isMenuOpen : null\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (tieredMenuOpened)=\"onTieredMenuOpened()\"\n (tieredMenuClosed)=\"onTieredMenuClosed()\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n\n", styles: [":host{display:inline-flex;position:relative}:host.s-button-with-badge{margin-right:-15px}button{align-items:center;display:inline-flex;justify-content:center;border:1px solid;border-radius:4px;color:#fff;cursor:pointer;font-family:Open Sans,sans-serif;font-size:14px;height:35px;max-width:100%;min-width:40px;outline:none;overflow:visible;padding:5px 10px;position:relative;text-decoration:none;text-transform:none;transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out}button:disabled{background-image:none;cursor:text;filter:Alpha(Opacity=50);opacity:.5}button.s-button-auxiliary{border-radius:20px}button.s-button-size-small{height:25px}button.s-button-size-small.s-button-only-icon{max-width:24px;max-height:24px;min-width:24px}button.s-button-size-default{height:35px}button.s-button-with-text,button.s-button-with-icon.s-button-multiple{min-width:80px}button.s-button-with-icon.s-button-with-text.s-button-multiple{min-width:100px}button.s-button-multiple.s-button-size-small.s-button-empty{width:25px;min-width:25px}button .s-button-icon,button .s-button-right-icon,button .s-button-menu-icon,button.s-button-with-icon.s-button-multiple:not(.s-button-with-text) .s-button-icon{align-items:center;display:inline-flex;justify-content:center}button.s-button-multiple .s-button-text{align-items:left;display:inline-flex;justify-content:left}button.s-button-with-icon .s-button-text{align-items:right;display:inline-flex;justify-content:right}button.s-button-priority-primary{background-color:#428bca;border-color:#428bca}button.s-button-priority-primary .s-button-icon,button.s-button-priority-primary .s-button-right-icon,button.s-button-priority-primary .s-button-text,button.s-button-priority-primary .s-button-menu-icon{color:#fff}button.s-button-priority-primary:hover{background-color:#2a6496}button.s-button-priority-primary:focus{background-color:#2a6496;border-color:#22dce6}button.s-button-priority-primary:active:not(:disabled),button.s-button-priority-primary.s-button-active:not(:disabled){background-color:#245682;border-color:#245682}button.s-button-priority-primary .menu-options-icon{color:#fff}button.s-button-priority-secondary{background-color:#7892a1;border-color:#7892a1}button.s-button-priority-secondary .s-button-icon,button.s-button-priority-secondary .s-button-right-icon,button.s-button-priority-secondary .s-button-text,button.s-button-priority-secondary .s-button-menu-icon{color:#fff}button.s-button-priority-secondary:hover{background-color:#546b79}button.s-button-priority-secondary:focus{background-color:#546b79;border-color:#22dce6}button.s-button-priority-secondary:active:not(:disabled),button.s-button-priority-secondary.s-button-active:not(:disabled){background-color:#495e6a;border-color:#495e6a}button.s-button-priority-secondary .menu-options-icon{color:#fff}button.s-button-priority-default{background-color:#fff;border-color:#ccc}button.s-button-priority-default .s-button-icon,button.s-button-priority-default .s-button-right-icon,button.s-button-priority-default .s-button-text,button.s-button-priority-default .s-button-menu-icon{color:#333}button.s-button-priority-default:hover{background-color:#d9d9d9}button.s-button-priority-default:focus{background-color:#d9d9d9;border-color:#22dce6}button.s-button-priority-default:active:not(:disabled),button.s-button-priority-default.s-button-active:not(:disabled){background-color:#ccc;border-color:#ccc}button.s-button-priority-default .menu-options-icon{color:#333}button.s-button-auxiliary.s-button-only-icon{border-radius:50%}button.s-button-priority-link{background-color:transparent;border-color:transparent}button.s-button-priority-link .s-button-icon,button.s-button-priority-link .s-button-right-icon,button.s-button-priority-link .s-button-text,button.s-button-priority-link .s-button-menu-icon{color:#428bca}button.s-button-priority-link:hover{background-color:transparent}button.s-button-priority-link:hover .s-button-icon,button.s-button-priority-link:hover .s-button-right-icon,button.s-button-priority-link:hover .s-button-text,button.s-button-priority-link:hover .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:focus{background-color:transparent;border-color:#22dce6}button.s-button-priority-link:focus .s-button-icon,button.s-button-priority-link:focus .s-button-right-icon,button.s-button-priority-link:focus .s-button-text,button.s-button-priority-link:focus .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:active:not(:disabled),button.s-button-priority-link.s-button-active:not(:disabled){background-color:transparent;border-color:transparent}button.s-button-priority-link:active:not(:disabled) .s-button-icon,button.s-button-priority-link:active:not(:disabled) .s-button-right-icon,button.s-button-priority-link:active:not(:disabled) .s-button-text,button.s-button-priority-link:active:not(:disabled) .s-button-menu-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-right-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-text,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-menu-icon{color:#245682}.s-button-priority-danger{background-color:#9c3a3a;border-color:#9c3a3a}.s-button-priority-danger .s-button-icon,.s-button-priority-danger .s-button-right-icon,.s-button-priority-danger .s-button-text,.s-button-priority-danger .s-button-menu-icon{color:#fff}.s-button-priority-danger:hover{background-color:#642525}.s-button-priority-danger:focus{background-color:#642525;border-color:#22dce6}.s-button-priority-danger:active:not(:disabled),.s-button-priority-danger.s-button-active:not(:disabled){background-color:#521e1e;border-color:#521e1e}.s-button-priority-danger .menu-options-icon{color:#fff}.s-button-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-button-menu-icon{right:10px;transition:transform .2s ease-out}.s-button-icon-margin-left{margin-left:10px}.s-button-icon-margin-right{margin-right:10px}.s-button-active .s-button-menu-icon{transform:rotateX(180deg)}.s-button--slide.s-button-with-text,.s-button--slide.s-button-with-icon.s-button-multiple{min-width:40px}.s-button--slide .s-button-text{opacity:0;position:absolute;width:0}.s-button--slide:hover .s-button-text{opacity:1;position:relative;transition:1s ease;width:auto}.s-button--slide:hover.s-button--rotate-animation .s-button-icon,.s-button--slide:hover.s-button--rotate-animation .s-button-right-icon{transform:rotate(360deg);transition:1.5s ease}.badge{z-index:99;position:relative;right:15px;bottom:16px}.menu-options-icon{color:#212533}\n"] }]
|
|
173
|
+
}, standalone: true, imports: [NgClass, NgStyle, BadgeModule, TieredMenuModule, TooltipModule], template: "<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label && !menuOptions.length,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [ariaLabel]=\"menuAriaLabel\"\n [attr.aria-haspopup]=\"menuOptions.length ? 'menu' : null\"\n [attr.aria-expanded]=\"menuOptions.length ? isMenuOpen : null\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (tieredMenuOpened)=\"onTieredMenuOpened()\"\n (tieredMenuClosed)=\"onTieredMenuClosed()\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n\n", styles: [":host{display:inline-flex;position:relative}:host.s-button-with-badge{margin-right:-15px}button{align-items:center;display:inline-flex;justify-content:center;border:1px solid;border-radius:4px;color:#fff;cursor:pointer;font-family:Open Sans,sans-serif;font-size:14px;height:35px;max-width:100%;min-width:40px;outline:none;overflow:visible;padding:5px 10px;position:relative;text-decoration:none;text-transform:none;transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out}button:disabled{background-image:none;cursor:text;filter:Alpha(Opacity=50);opacity:.5}button.s-button-auxiliary{border-radius:20px}button.s-button-size-small{height:25px}button.s-button-size-small.s-button-only-icon{max-width:24px;max-height:24px;min-width:24px}button.s-button-size-default{height:35px}button.s-button-with-text,button.s-button-with-icon.s-button-multiple{min-width:80px}button.s-button-with-icon.s-button-with-text.s-button-multiple{min-width:100px}button.s-button-multiple.s-button-size-small.s-button-empty{width:25px;min-width:25px}button .s-button-icon,button .s-button-right-icon,button .s-button-menu-icon,button.s-button-with-icon.s-button-multiple:not(.s-button-with-text) .s-button-icon{align-items:center;display:inline-flex;justify-content:center}button.s-button-multiple .s-button-text{align-items:left;display:inline-flex;justify-content:left}button.s-button-with-icon .s-button-text{align-items:right;display:inline-flex;justify-content:right}button.s-button-priority-primary{background-color:#428bca;border-color:#428bca}button.s-button-priority-primary .s-button-icon,button.s-button-priority-primary .s-button-right-icon,button.s-button-priority-primary .s-button-text,button.s-button-priority-primary .s-button-menu-icon{color:#fff}button.s-button-priority-primary:hover{background-color:#2a6496}button.s-button-priority-primary:focus{background-color:#2a6496;border-color:#22dce6}button.s-button-priority-primary:active:not(:disabled),button.s-button-priority-primary.s-button-active:not(:disabled){background-color:#245682;border-color:#245682}button.s-button-priority-primary .menu-options-icon{color:#fff}button.s-button-priority-secondary{background-color:#7892a1;border-color:#7892a1}button.s-button-priority-secondary .s-button-icon,button.s-button-priority-secondary .s-button-right-icon,button.s-button-priority-secondary .s-button-text,button.s-button-priority-secondary .s-button-menu-icon{color:#fff}button.s-button-priority-secondary:hover{background-color:#546b79}button.s-button-priority-secondary:focus{background-color:#546b79;border-color:#22dce6}button.s-button-priority-secondary:active:not(:disabled),button.s-button-priority-secondary.s-button-active:not(:disabled){background-color:#495e6a;border-color:#495e6a}button.s-button-priority-secondary .menu-options-icon{color:#fff}button.s-button-priority-default{background-color:#fff;border-color:#ccc}button.s-button-priority-default .s-button-icon,button.s-button-priority-default .s-button-right-icon,button.s-button-priority-default .s-button-text,button.s-button-priority-default .s-button-menu-icon{color:#333}button.s-button-priority-default:hover{background-color:#d9d9d9}button.s-button-priority-default:focus{background-color:#d9d9d9;border-color:#22dce6}button.s-button-priority-default:active:not(:disabled),button.s-button-priority-default.s-button-active:not(:disabled){background-color:#ccc;border-color:#ccc}button.s-button-priority-default .menu-options-icon{color:#333}button.s-button-auxiliary.s-button-only-icon{border-radius:50%}button.s-button-priority-link{background-color:transparent;border-color:transparent}button.s-button-priority-link .s-button-icon,button.s-button-priority-link .s-button-right-icon,button.s-button-priority-link .s-button-text,button.s-button-priority-link .s-button-menu-icon{color:#428bca}button.s-button-priority-link:hover{background-color:transparent}button.s-button-priority-link:hover .s-button-icon,button.s-button-priority-link:hover .s-button-right-icon,button.s-button-priority-link:hover .s-button-text,button.s-button-priority-link:hover .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:focus{background-color:transparent;border-color:#22dce6}button.s-button-priority-link:focus .s-button-icon,button.s-button-priority-link:focus .s-button-right-icon,button.s-button-priority-link:focus .s-button-text,button.s-button-priority-link:focus .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:active:not(:disabled),button.s-button-priority-link.s-button-active:not(:disabled){background-color:transparent;border-color:transparent}button.s-button-priority-link:active:not(:disabled) .s-button-icon,button.s-button-priority-link:active:not(:disabled) .s-button-right-icon,button.s-button-priority-link:active:not(:disabled) .s-button-text,button.s-button-priority-link:active:not(:disabled) .s-button-menu-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-right-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-text,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-menu-icon{color:#245682}.s-button-priority-danger{background-color:#9c3a3a;border-color:#9c3a3a}.s-button-priority-danger .s-button-icon,.s-button-priority-danger .s-button-right-icon,.s-button-priority-danger .s-button-text,.s-button-priority-danger .s-button-menu-icon{color:#fff}.s-button-priority-danger:hover{background-color:#642525}.s-button-priority-danger:focus{background-color:#642525;border-color:#22dce6}.s-button-priority-danger:active:not(:disabled),.s-button-priority-danger.s-button-active:not(:disabled){background-color:#521e1e;border-color:#521e1e}.s-button-priority-danger .menu-options-icon{color:#fff}.s-button-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-button-menu-icon{right:10px;transition:transform .2s ease-out}.s-button-icon-margin-left{margin-left:10px}.s-button-icon-margin-right{margin-right:10px}.s-button-active .s-button-menu-icon{transform:rotateX(180deg)}.s-button--slide.s-button-with-text,.s-button--slide.s-button-with-icon.s-button-multiple{min-width:40px}.s-button--slide .s-button-text{opacity:0;position:absolute;width:0}.s-button--slide:hover .s-button-text{opacity:1;position:relative;transition:1s ease;width:auto}.s-button--slide:hover.s-button--rotate-animation .s-button-icon,.s-button--slide:hover.s-button--rotate-animation .s-button-right-icon{transform:rotate(360deg);transition:1.5s ease}.badge{z-index:99;position:relative;right:15px;bottom:16px}.menu-options-icon{color:#212533}\n"] }]
|
|
170
174
|
}], propDecorators: { minWidth: [{
|
|
171
175
|
type: HostBinding,
|
|
172
176
|
args: ['style.min-width']
|
|
@@ -210,7 +214,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
210
214
|
type: Input
|
|
211
215
|
}], menuAriaLabel: [{
|
|
212
216
|
type: Input
|
|
217
|
+
}], ariaLabel: [{
|
|
218
|
+
type: Input
|
|
213
219
|
}], clicked: [{
|
|
214
220
|
type: Output
|
|
215
221
|
}] } });
|
|
216
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9idXR0b24vc3JjL2xpYi9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9idXR0b24vc3JjL2xpYi9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUU5RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN2RSxPQUFPLEVBQXNCLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEcsT0FBTyxFQUFFLGFBQWEsRUFBb0IsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7O0FBS3RFOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQVdILE1BQU0sT0FBTyxlQUFlO0lBRWpCLFFBQVEsR0FBRyxNQUFNLENBQUM7SUFFekI7OztPQUdHO0lBRUksRUFBRSxHQUFJLFlBQVksVUFBVSxFQUFFLEVBQUUsQ0FBQztJQUV4Qzs7T0FFRztJQUVJLEtBQUssQ0FBVTtJQUV0Qjs7T0FFRztJQUVJLE9BQU8sQ0FBVTtJQUV4Qjs7OztPQUlHO0lBRUksZUFBZSxHQUFxQixLQUFLLENBQUM7SUFFakQ7O09BRUc7SUFFSSxTQUFTLENBQVU7SUFFMUI7O09BRUc7SUFFSSxjQUFjLENBQVU7SUFFL0I7Ozs7T0FJRztJQUVJLEtBQUssR0FBRyxJQUFJLENBQUM7SUFFcEI7Ozs7T0FJRztJQUVJLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFFdkI7Ozs7T0FJRztJQUVJLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFFdEI7Ozs7T0FJRztJQUVJLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFFeEI7Ozs7T0FJRztJQUVJLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFFekI7Ozs7T0FJRztJQUVJLElBQUksR0FBSSxRQUFRLENBQUM7SUFFeEI7Ozs7O09BS0c7SUFFSSxRQUFRLEdBQW9CLFNBQVMsQ0FBQztJQUU3Qzs7OztPQUlHO0lBRUksV0FBVyxHQUF5QixFQUFFLENBQUM7SUFFOUM7Ozs7T0FJRztJQUVJLElBQUksR0FBeUIsU0FBUyxDQUFDO0lBRTlDOzs7OztPQUtHO0lBRUksS0FBSyxHQUFHLEtBQUssQ0FBQztJQUVyQjs7T0FFRztJQUVJLFNBQVMsQ0FBb0I7SUFFcEM7O09BRUc7SUFFSSxLQUFLLENBQXFCO0lBRWpDOztPQUVHO0lBRUksU0FBUyxDQUFVO0lBRTFCOztPQUVHO0lBRUksYUFBYSxDQUFVO0lBRTlCOztPQUVHO0lBRUksT0FBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRWhELFVBQVUsR0FBRyxLQUFLLENBQUM7SUFFbkIsbUJBQW1CO1FBQ3RCLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRU0sV0FBVyxDQUFDLENBQWdCO1FBQy9CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDL0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUzQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQztRQUU1QyxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1FBQzNCLENBQUM7UUFDRCxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksVUFBVSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDNUIsQ0FBQztJQUNMLENBQUM7SUFFTSxpQkFBaUI7UUFDcEIsT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FBQztJQUN2QyxDQUFDO0lBRU0sa0JBQWtCO1FBQ3JCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQzt3R0F6TFEsZUFBZTs0RkFBZixlQUFlLHdxQkNyQzVCLGl4RkFxRkEsa2xORGxEYyxPQUFPLG9GQUFFLE9BQU8sMEVBQUUsV0FBVyxtUEFBRSxnQkFBZ0IsZ09BQUUsYUFBYTs7NEZBRS9ELGVBQWU7a0JBVjNCLFNBQVM7K0JBQ0ksVUFBVSxRQUdkO3dCQUNGLDZCQUE2QixFQUFFLFNBQVM7cUJBQzNDLGNBQ1csSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDOzhCQUlsRSxRQUFRO3NCQURkLFdBQVc7dUJBQUMsaUJBQWlCO2dCQVF2QixFQUFFO3NCQURSLEtBQUs7Z0JBT0MsS0FBSztzQkFEWCxLQUFLO2dCQU9DLE9BQU87c0JBRGIsS0FBSztnQkFTQyxlQUFlO3NCQURyQixLQUFLO2dCQU9DLFNBQVM7c0JBRGYsS0FBSztnQkFPQyxjQUFjO3NCQURwQixLQUFLO2dCQVNDLEtBQUs7c0JBRFgsS0FBSztnQkFTQyxVQUFVO3NCQURoQixLQUFLO2dCQVNDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBU0MsUUFBUTtzQkFEZCxLQUFLO2dCQVNDLFNBQVM7c0JBRGYsS0FBSztnQkFTQyxJQUFJO3NCQURWLEtBQUs7Z0JBVUMsUUFBUTtzQkFEZCxLQUFLO2dCQVNDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBU0MsSUFBSTtzQkFEVixLQUFLO2dCQVVDLEtBQUs7c0JBRFgsS0FBSztnQkFPQyxTQUFTO3NCQURmLEtBQUs7Z0JBT0MsS0FBSztzQkFEWCxLQUFLO2dCQU9DLFNBQVM7c0JBRGYsS0FBSztnQkFPQyxhQUFhO3NCQURuQixLQUFLO2dCQU9DLE9BQU87c0JBRGIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE5nQ2xhc3MsIE5nU3R5bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQmFkZ2VNb2R1bGUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IFRpZXJlZE1lbnVJdGVtRGF0YSwgVGllcmVkTWVudU1vZHVsZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdGllcmVkLW1lbnUnO1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSwgVG9vbHRpcFBvc2l0aW9ucyB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyByYW5kb21IYXNoIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy91dGlscyc7XG5pbXBvcnQgeyBCdXR0b25BbmltYXRpb25zIH0gZnJvbSAnLi9tb2RlbHMvYnV0dG9uLWFuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQnV0dG9uQmFkZ2VDb25maWcgfSBmcm9tICcuL21vZGVscy9idXR0b24tYmFkZ2UtY29uZmlnJztcbmltcG9ydCB7IEJ1dHRvblByaW9yaXR5IH0gZnJvbSAnLi9tb2RlbHMvYnV0dG9uLXByaW9yaXR5JztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ29tcG9uZW50ZSBkZSBib3TDo28gdmVyc8OhdGlsIHF1ZSBzdXBvcnRhIMOtY29uZXMsIHRvb2x0aXAsIG1lbnUgZGUgb3DDp8O1ZXNcbiAqICh0aWVyZWQgbWVudSksIGJhZGdlLCBhbmltYcOnw7VlcyBlIGRpZmVyZW50ZXMgcHJpb3JpZGFkZXMgdmlzdWFpcy4gUG9kZSBzZXIgY29uZmlndXJhZG9cbiAqIGNvbW8gYm90w6NvIGRlIGHDp8OjbyBzaW1wbGVzLCBib3TDo28gY29tIG1lbnUgZHJvcGRvd24gb3UgYm90w6NvIGRlc2xpemFudGUgKHNsaWRlKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPHMtYnV0dG9uXG4gKiAgIGxhYmVsPVwiU2FsdmFyXCJcbiAqICAgaWNvbkNsYXNzPVwiZmFzIGZhLXNhdmVcIlxuICogICBwcmlvcml0eT1cInByaW1hcnlcIlxuICogICAoY2xpY2tlZCk9XCJvblNhdmUoKVwiIC8+XG4gKiBgYGBcbiAqXG4gKiBAY2F0ZWdvcnkgSW5wdXRzXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncy1idXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2J1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5zLWJ1dHRvbi13aXRoLWJhZGdlXSc6ICchIWJhZGdlJyxcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIE5nU3R5bGUsIEJhZGdlTW9kdWxlLCBUaWVyZWRNZW51TW9kdWxlLCBUb29sdGlwTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1pbi13aWR0aCcpXG4gICAgcHVibGljIG1pbldpZHRoID0gJzQwcHgnO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIElkZW50aWZpY2Fkb3Igw7puaWNvIGRvIGVsZW1lbnRvIGJvdMOjbyBubyBET00uXG4gICAgICogR2VyYWRvIGF1dG9tYXRpY2FtZW50ZSBzZSBuw6NvIGluZm9ybWFkby5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpZD8gPSBgcy1idXR0b24tJHtyYW5kb21IYXNoKCl9YDtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUZXh0byBleGliaWRvIGRlbnRybyBkbyBib3TDo28uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbGFiZWw/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gVGV4dG8gZG8gdG9vbHRpcCBleGliaWRvIGFvIHBhc3NhciBvIG1vdXNlIHNvYnJlIG8gYm90w6NvLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHRvb2x0aXA/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gUG9zacOnw6NvIGRvIHRvb2x0aXAgZW0gcmVsYcOnw6NvIGFvIGJvdMOjby5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICd0b3AnXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdG9vbHRpcFBvc2l0aW9uOiBUb29sdGlwUG9zaXRpb25zID0gJ3RvcCc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQ2xhc3NlIGRlIMOtY29uZSBleGliaWRhIMOgIGVzcXVlcmRhIGRvIGxhYmVsIChleC46IGAnZmFzIGZhLXNhdmUnYCkuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaWNvbkNsYXNzPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIENsYXNzZSBkZSDDrWNvbmUgZXhpYmlkYSDDoCBkaXJlaXRhIGRvIGxhYmVsLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHJpZ2h0SWNvbkNsYXNzPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEV4aWJlIG8gw61jb25lIGRlIGNhcmV0IChzZXRhKSBxdWFuZG8gbyBib3TDo28gcG9zc3VpIHVtIG1lbnUgZGUgb3DDp8O1ZXMuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2FyZXQgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIENsYXNzZSBDU1MgYWRpY2lvbmFsIGFwbGljYWRhIGFvIGVsZW1lbnRvIGA8YnV0dG9uPmAgaW50ZXJuby5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICcnXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc3R5bGVDbGFzcyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFotaW5kZXggYmFzZSBkbyBwYWluZWwgZG8gbWVudSBkcm9wZG93biBhc3NvY2lhZG8gYW8gYm90w6NvLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgMFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGJhc2VaSW5kZXggPSAwO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIERlc2FiaWxpdGEgbyBib3TDo28sIGltcGVkaW5kbyBjbGlxdWVzIGUgaW50ZXJhw6fDo28gZG8gdXN1w6FyaW8uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQXBsaWNhIGVzdGlsbyBhdXhpbGlhciAobWVub3MgZGVzdGFxdWUgdmlzdWFsKSBhbyBib3TDo28uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGF1eGlsaWFyeSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFRpcG8gZG8gZWxlbWVudG8gYDxidXR0b24+YCBIVE1MIChgJ2J1dHRvbidgLCBgJ3N1Ym1pdCdgLCBgJ3Jlc2V0J2ApLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ2J1dHRvbidcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0eXBlPyA9ICdidXR0b24nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFByaW9yaWRhZGUgdmlzdWFsIGRvIGJvdMOjbywgcXVlIGRldGVybWluYSBzZXUgZXN0aWxvLlxuICAgICAqIEFjZWl0YSBgJ3ByaW1hcnknYCwgYCdkZWZhdWx0J2AsIGAnZGFuZ2VyJ2AsIGAnbGluaydgLCBlbnRyZSBvdXRyb3MuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAncHJpbWFyeSdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBwcmlvcml0eT86IEJ1dHRvblByaW9yaXR5ID0gJ3ByaW1hcnknO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIExpc3RhIGRlIGl0ZW5zIGRvIG1lbnUgZHJvcGRvd24gZXhpYmlkbyBhbyBjbGljYXIgbm8gY2FyZXQgZG8gYm90w6NvLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgW11cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtZW51T3B0aW9uczogVGllcmVkTWVudUl0ZW1EYXRhW10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUYW1hbmhvIHZpc3VhbCBkbyBib3TDo28uIEFjZWl0YSBgJ2RlZmF1bHQnYCBvdSBgJ3NtYWxsJ2AuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnZGVmYXVsdCdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzaXplPzogJ2RlZmF1bHQnIHwgJ3NtYWxsJyA9ICdkZWZhdWx0JztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBIYWJpbGl0YSBvIG1vZG8gc2xpZGUsIHF1ZSBleGliZSB1bWEgYW5pbWHDp8OjbyBkZSBkZXNsaXplIGFvIHBhc3NhciBvIG1vdXNlLlxuICAgICAqIFJlcXVlciBgcHJpb3JpdHlgIGlndWFsIGEgYCdkZWZhdWx0J2Agb3UgYCdsaW5rJ2AgZSB1bSBgbGFiZWxgIGRlZmluaWRvLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzbGlkZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFRpcG8gZGUgYW5pbWHDp8OjbyBhcGxpY2FkYSBhbyBib3TDo28gKGAncm90YXRlJ2AsIGAncHVsc2UnYCwgZXRjLikuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYW5pbWF0aW9uPzogQnV0dG9uQW5pbWF0aW9ucztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBDb25maWd1cmHDp8OjbyBkbyBiYWRnZSBleGliaWRvIHNvYnJlIG8gYm90w6NvLCBjb20gY29udGFkb3Igb3UgaW5kaWNhZG9yIHZpc3VhbC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBiYWRnZT86IEJ1dHRvbkJhZGdlQ29uZmlnO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIENvciBhcGxpY2FkYSBhbyDDrWNvbmUgZG8gYm90w6NvLCBzb2JyZXNjcmV2ZW5kbyBhIGNvciBwYWRyw6NvIGRvIHRlbWEuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaWNvbkNvbG9yPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFRleHRvIGFsdGVybmF0aXZvIHBhcmEgbyBtZW51IGFzc29jaWFkbyBhbyBib3TDo28sIHV0aWxpemFkbyBwYXJhIGFjZXNzaWJpbGlkYWRlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1lbnVBcmlhTGFiZWw/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gRW1pdGlkbyBhbyBjbGljYXIgbm8gYm90w6NvLCBkZXNkZSBxdWUgbsOjbyBlc3RlamEgZGVzYWJpbGl0YWRvLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBjbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHB1YmxpYyBpc01lbnVPcGVuID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgdmFsaWRhdGVTbGlkZUJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhKHRoaXMuc2xpZGUgJiYgKHRoaXMucHJpb3JpdHkgPT09ICdkZWZhdWx0JyB8fCB0aGlzLnByaW9yaXR5ID09PSAnbGluaycpICYmIHRoaXMubGFiZWw/Lmxlbmd0aCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKF86IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaGFzSWNvbiA9IHRoaXMuaWNvbkNsYXNzO1xuICAgICAgICBjb25zdCBoYXNUZXh0ID0gdGhpcy5sYWJlbDtcblxuICAgICAgICBjb25zdCBpc011bHRpcGxlID0gdGhpcy5tZW51T3B0aW9ucz8ubGVuZ3RoO1xuXG4gICAgICAgIGlmIChoYXNUZXh0IHx8IChoYXNJY29uICYmIGlzTXVsdGlwbGUpKSB7XG4gICAgICAgICAgICB0aGlzLm1pbldpZHRoID0gJzgwcHgnO1xuICAgICAgICB9XG4gICAgICAgIGlmIChoYXNUZXh0ICYmIGhhc0ljb24gJiYgaXNNdWx0aXBsZSkge1xuICAgICAgICAgICAgdGhpcy5taW5XaWR0aCA9ICcxMDBweCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaXNSb3RhdGVBbmltYXRpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFuaW1hdGlvbiA9PT0gJ3JvdGF0ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIG9uVGllcmVkTWVudU9wZW5lZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc01lbnVPcGVuID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25UaWVyZWRNZW51Q2xvc2VkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTWVudU9wZW4gPSBmYWxzZTtcbiAgICB9XG59XG5cbiIsIjxidXR0b25cbiAgICBbaWRdPVwiaWRcIlxuICAgIFt0eXBlXT1cInR5cGVcIlxuICAgIFtjbGFzc109XCJzdHlsZUNsYXNzXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdzLWJ1dHRvbi1hdXhpbGlhcnknOiBhdXhpbGlhcnksXG4gICAgICAgICdzLWJ1dHRvbi13aXRoLWljb24nOiBpY29uQ2xhc3MsXG4gICAgICAgICdzLWJ1dHRvbi13aXRoLXRleHQnOiBsYWJlbCxcbiAgICAgICAgJ3MtYnV0dG9uLW9ubHktaWNvbic6IGljb25DbGFzcyAmJiAhbGFiZWwgJiYgIW1lbnVPcHRpb25zLmxlbmd0aCxcbiAgICAgICAgJ3MtYnV0dG9uLWVtcHR5JzogIWljb25DbGFzcyAmJiAhbGFiZWwsXG4gICAgICAgICdzLWJ1dHRvbi1zaXplLWRlZmF1bHQnOiBzaXplID09PSAnZGVmYXVsdCcsXG4gICAgICAgICdzLWJ1dHRvbi1zaXplLXNtYWxsJzogc2l6ZSA9PT0gJ3NtYWxsJyxcbiAgICAgICAgJ3MtYnV0dG9uLXByaW9yaXR5LWRlZmF1bHQnOiBwcmlvcml0eSA9PT0gJ2RlZmF1bHQnLFxuICAgICAgICAncy1idXR0b24tcHJpb3JpdHktcHJpbWFyeSc6IHByaW9yaXR5ID09PSAncHJpbWFyeScsXG4gICAgICAgICdzLWJ1dHRvbi1wcmlvcml0eS1zZWNvbmRhcnknOiBwcmlvcml0eSA9PT0gJ3NlY29uZGFyeScsXG4gICAgICAgICdzLWJ1dHRvbi1wcmlvcml0eS1saW5rJzogcHJpb3JpdHkgPT09ICdsaW5rJyxcbiAgICAgICAgJ3MtYnV0dG9uLXByaW9yaXR5LWRhbmdlcic6IHByaW9yaXR5ID09PSAnZGFuZ2VyJyxcbiAgICAgICAgJ3MtYnV0dG9uLW11bHRpcGxlJzogKGNhcmV0ICYmIG1lbnVPcHRpb25zLmxlbmd0aCkgfHwgcmlnaHRJY29uQ2xhc3MsXG4gICAgICAgICdzLWJ1dHRvbi0tc2xpZGUnOiB2YWxpZGF0ZVNsaWRlQnV0dG9uKCksXG4gICAgICAgICdzLWJ1dHRvbi0tcm90YXRlLWFuaW1hdGlvbic6IGlzUm90YXRlQW5pbWF0aW9uKCksXG4gICAgfVwiXG4gICAgc1RpZXJlZE1lbnVcbiAgICBbaXRlbXNdPVwibWVudU9wdGlvbnNcIlxuICAgIFthcmlhTGFiZWxdPVwibWVudUFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJtZW51T3B0aW9ucy5sZW5ndGggPyAnbWVudScgOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIm1lbnVPcHRpb25zLmxlbmd0aCA/IGlzTWVudU9wZW4gOiBudWxsXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtzVG9vbHRpcF09XCJ0b29sdGlwXCJcbiAgICBbdG9vbHRpcFBvc2l0aW9uXT1cInRvb2x0aXBQb3NpdGlvblwiXG4gICAgKHRpZXJlZE1lbnVPcGVuZWQpPVwib25UaWVyZWRNZW51T3BlbmVkKClcIlxuICAgICh0aWVyZWRNZW51Q2xvc2VkKT1cIm9uVGllcmVkTWVudUNsb3NlZCgpXCJcbiAgICAoY2xpY2spPVwiY2xpY2tlZC5lbWl0KCRldmVudClcIlxuPlxuICAgIEBpZiAoaWNvbkNsYXNzKSB7XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBbY2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAncy1idXR0b24taWNvbic6IHRydWUsXG4gICAgICAgICAgICAgICAgJ3MtYnV0dG9uLWljb24tbWFyZ2luLXJpZ2h0JzogIWxhYmVsICYmIG1lbnVPcHRpb25zLmxlbmd0aCxcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwieyBjb2xvcjogaWNvbkNvbG9yIH1cIlxuICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NwYW4+XG4gICAgfVxuICAgIEBpZiAobGFiZWwpIHtcbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGNsYXNzPVwicy1idXR0b24tdGV4dFwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ3MtYnV0dG9uLWljb24tbWFyZ2luLXJpZ2h0JzogISFyaWdodEljb25DbGFzcyB8fCBtZW51T3B0aW9ucy5sZW5ndGgsXG4gICAgICAgICAgICAgICAgJ3MtYnV0dG9uLWljb24tbWFyZ2luLWxlZnQnOiAhIWljb25DbGFzcyxcbiAgICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyBsYWJlbCB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgfVxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICBAaWYgKHJpZ2h0SWNvbkNsYXNzKSB7XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBbY2xhc3NdPVwicmlnaHRJY29uQ2xhc3NcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAncy1idXR0b24tcmlnaHQtaWNvbic6IHRydWUgfVwiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7IGNvbG9yOiBpY29uQ29sb3IgfVwiXG4gICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICA+XG4gICAgICAgIDwvc3Bhbj5cbiAgICB9XG4gICAgQGlmICgoY2FyZXQgJiYgbWVudU9wdGlvbnMubGVuZ3RoKSB8fCAobWVudU9wdGlvbnMgJiYgbWVudU9wdGlvbnMubGVuZ3RoKSkge1xuICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJtZW51LW9wdGlvbnMtaWNvbiBmYSBmYS1mdyBmYS1jYXJldC1kb3duXCJcbiAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgID5cbiAgICAgICAgPC9zcGFuPlxuICAgIH1cbjwvYnV0dG9uPlxuQGlmIChiYWRnZSkge1xuICAgIDxkaXYgY2xhc3M9XCJiYWRnZVwiPlxuICAgICAgICA8cy1iYWRnZVxuICAgICAgICAgICAgW2NvbG9yXT1cImJhZGdlLmNvbG9yXCJcbiAgICAgICAgICAgIFt0ZXh0XT1cImJhZGdlLnRleHRcIlxuICAgICAgICAgICAgW2ljb25DbGFzc109XCJiYWRnZS5pY29uQ2xhc3NcIlxuICAgICAgICA+XG4gICAgICAgIDwvcy1iYWRnZT5cbiAgICA8L2Rpdj5cbn1cblxuIl19
|
|
222
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9idXR0b24vc3JjL2xpYi9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9idXR0b24vc3JjL2xpYi9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUU5RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN2RSxPQUFPLEVBQXNCLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEcsT0FBTyxFQUFFLGFBQWEsRUFBb0IsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7O0FBS3RFOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQVdILE1BQU0sT0FBTyxlQUFlO0lBRWpCLFFBQVEsR0FBRyxNQUFNLENBQUM7SUFFekI7OztPQUdHO0lBRUksRUFBRSxHQUFJLFlBQVksVUFBVSxFQUFFLEVBQUUsQ0FBQztJQUV4Qzs7T0FFRztJQUVJLEtBQUssQ0FBVTtJQUV0Qjs7T0FFRztJQUVJLE9BQU8sQ0FBVTtJQUV4Qjs7OztPQUlHO0lBRUksZUFBZSxHQUFxQixLQUFLLENBQUM7SUFFakQ7O09BRUc7SUFFSSxTQUFTLENBQVU7SUFFMUI7O09BRUc7SUFFSSxjQUFjLENBQVU7SUFFL0I7Ozs7T0FJRztJQUVJLEtBQUssR0FBRyxJQUFJLENBQUM7SUFFcEI7Ozs7T0FJRztJQUVJLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFFdkI7Ozs7T0FJRztJQUVJLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFFdEI7Ozs7T0FJRztJQUVJLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFFeEI7Ozs7T0FJRztJQUVJLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFFekI7Ozs7T0FJRztJQUVJLElBQUksR0FBSSxRQUFRLENBQUM7SUFFeEI7Ozs7O09BS0c7SUFFSSxRQUFRLEdBQW9CLFNBQVMsQ0FBQztJQUU3Qzs7OztPQUlHO0lBRUksV0FBVyxHQUF5QixFQUFFLENBQUM7SUFFOUM7Ozs7T0FJRztJQUVJLElBQUksR0FBeUIsU0FBUyxDQUFDO0lBRTlDOzs7OztPQUtHO0lBRUksS0FBSyxHQUFHLEtBQUssQ0FBQztJQUVyQjs7T0FFRztJQUVJLFNBQVMsQ0FBb0I7SUFFcEM7O09BRUc7SUFFSSxLQUFLLENBQXFCO0lBRWpDOztPQUVHO0lBRUksU0FBUyxDQUFVO0lBRTFCOztPQUVHO0lBRUksYUFBYSxDQUFVO0lBRTlCOztPQUVHO0lBRUksU0FBUyxDQUFVO0lBRTFCOztPQUVHO0lBRUksT0FBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRWhELFVBQVUsR0FBRyxLQUFLLENBQUM7SUFFbkIsbUJBQW1CO1FBQ3RCLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRU0sV0FBVyxDQUFDLENBQWdCO1FBQy9CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDL0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUzQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQztRQUU1QyxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1FBQzNCLENBQUM7UUFDRCxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksVUFBVSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDNUIsQ0FBQztJQUNMLENBQUM7SUFFTSxpQkFBaUI7UUFDcEIsT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FBQztJQUN2QyxDQUFDO0lBRU0sa0JBQWtCO1FBQ3JCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQzt3R0EvTFEsZUFBZTs0RkFBZixlQUFlLGdzQkNyQzVCLHN6RkFzRkEsa2xORG5EYyxPQUFPLG9GQUFFLE9BQU8sMEVBQUUsV0FBVyxtUEFBRSxnQkFBZ0IsZ09BQUUsYUFBYTs7NEZBRS9ELGVBQWU7a0JBVjNCLFNBQVM7K0JBQ0ksVUFBVSxRQUdkO3dCQUNGLDZCQUE2QixFQUFFLFNBQVM7cUJBQzNDLGNBQ1csSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDOzhCQUlsRSxRQUFRO3NCQURkLFdBQVc7dUJBQUMsaUJBQWlCO2dCQVF2QixFQUFFO3NCQURSLEtBQUs7Z0JBT0MsS0FBSztzQkFEWCxLQUFLO2dCQU9DLE9BQU87c0JBRGIsS0FBSztnQkFTQyxlQUFlO3NCQURyQixLQUFLO2dCQU9DLFNBQVM7c0JBRGYsS0FBSztnQkFPQyxjQUFjO3NCQURwQixLQUFLO2dCQVNDLEtBQUs7c0JBRFgsS0FBSztnQkFTQyxVQUFVO3NCQURoQixLQUFLO2dCQVNDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBU0MsUUFBUTtzQkFEZCxLQUFLO2dCQVNDLFNBQVM7c0JBRGYsS0FBSztnQkFTQyxJQUFJO3NCQURWLEtBQUs7Z0JBVUMsUUFBUTtzQkFEZCxLQUFLO2dCQVNDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBU0MsSUFBSTtzQkFEVixLQUFLO2dCQVVDLEtBQUs7c0JBRFgsS0FBSztnQkFPQyxTQUFTO3NCQURmLEtBQUs7Z0JBT0MsS0FBSztzQkFEWCxLQUFLO2dCQU9DLFNBQVM7c0JBRGYsS0FBSztnQkFPQyxhQUFhO3NCQURuQixLQUFLO2dCQU9DLFNBQVM7c0JBRGYsS0FBSztnQkFPQyxPQUFPO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ1N0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJhZGdlTW9kdWxlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBUaWVyZWRNZW51SXRlbURhdGEsIFRpZXJlZE1lbnVNb2R1bGUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3RpZXJlZC1tZW51JztcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUsIFRvb2x0aXBQb3NpdGlvbnMgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3Rvb2x0aXAnO1xuaW1wb3J0IHsgcmFuZG9tSGFzaCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdXRpbHMnO1xuaW1wb3J0IHsgQnV0dG9uQW5pbWF0aW9ucyB9IGZyb20gJy4vbW9kZWxzL2J1dHRvbi1hbmltYXRpb25zJztcbmltcG9ydCB7IEJ1dHRvbkJhZGdlQ29uZmlnIH0gZnJvbSAnLi9tb2RlbHMvYnV0dG9uLWJhZGdlLWNvbmZpZyc7XG5pbXBvcnQgeyBCdXR0b25Qcmlvcml0eSB9IGZyb20gJy4vbW9kZWxzL2J1dHRvbi1wcmlvcml0eSc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbXBvbmVudGUgZGUgYm90w6NvIHZlcnPDoXRpbCBxdWUgc3Vwb3J0YSDDrWNvbmVzLCB0b29sdGlwLCBtZW51IGRlIG9ww6fDtWVzXG4gKiAodGllcmVkIG1lbnUpLCBiYWRnZSwgYW5pbWHDp8O1ZXMgZSBkaWZlcmVudGVzIHByaW9yaWRhZGVzIHZpc3VhaXMuIFBvZGUgc2VyIGNvbmZpZ3VyYWRvXG4gKiBjb21vIGJvdMOjbyBkZSBhw6fDo28gc2ltcGxlcywgYm90w6NvIGNvbSBtZW51IGRyb3Bkb3duIG91IGJvdMOjbyBkZXNsaXphbnRlIChzbGlkZSkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDxzLWJ1dHRvblxuICogICBsYWJlbD1cIlNhbHZhclwiXG4gKiAgIGljb25DbGFzcz1cImZhcyBmYS1zYXZlXCJcbiAqICAgcHJpb3JpdHk9XCJwcmltYXJ5XCJcbiAqICAgKGNsaWNrZWQpPVwib25TYXZlKClcIiAvPlxuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IElucHV0c1xuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3MtYnV0dG9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbY2xhc3Mucy1idXR0b24td2l0aC1iYWRnZV0nOiAnISFiYWRnZScsXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0NsYXNzLCBOZ1N0eWxlLCBCYWRnZU1vZHVsZSwgVGllcmVkTWVudU1vZHVsZSwgVG9vbHRpcE1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5taW4td2lkdGgnKVxuICAgIHB1YmxpYyBtaW5XaWR0aCA9ICc0MHB4JztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBJZGVudGlmaWNhZG9yIMO6bmljbyBkbyBlbGVtZW50byBib3TDo28gbm8gRE9NLlxuICAgICAqIEdlcmFkbyBhdXRvbWF0aWNhbWVudGUgc2UgbsOjbyBpbmZvcm1hZG8uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaWQ/ID0gYHMtYnV0dG9uLSR7cmFuZG9tSGFzaCgpfWA7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gVGV4dG8gZXhpYmlkbyBkZW50cm8gZG8gYm90w6NvLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGxhYmVsPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFRleHRvIGRvIHRvb2x0aXAgZXhpYmlkbyBhbyBwYXNzYXIgbyBtb3VzZSBzb2JyZSBvIGJvdMOjby5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0b29sdGlwPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFBvc2nDp8OjbyBkbyB0b29sdGlwIGVtIHJlbGHDp8OjbyBhbyBib3TDo28uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAndG9wJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHRvb2x0aXBQb3NpdGlvbjogVG9vbHRpcFBvc2l0aW9ucyA9ICd0b3AnO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIENsYXNzZSBkZSDDrWNvbmUgZXhpYmlkYSDDoCBlc3F1ZXJkYSBkbyBsYWJlbCAoZXguOiBgJ2ZhcyBmYS1zYXZlJ2ApLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGljb25DbGFzcz86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBDbGFzc2UgZGUgw61jb25lIGV4aWJpZGEgw6AgZGlyZWl0YSBkbyBsYWJlbC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyByaWdodEljb25DbGFzcz86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBFeGliZSBvIMOtY29uZSBkZSBjYXJldCAoc2V0YSkgcXVhbmRvIG8gYm90w6NvIHBvc3N1aSB1bSBtZW51IGRlIG9ww6fDtWVzLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGNhcmV0ID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBDbGFzc2UgQ1NTIGFkaWNpb25hbCBhcGxpY2FkYSBhbyBlbGVtZW50byBgPGJ1dHRvbj5gIGludGVybm8uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAnJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHN0eWxlQ2xhc3MgPSAnJztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBaLWluZGV4IGJhc2UgZG8gcGFpbmVsIGRvIG1lbnUgZHJvcGRvd24gYXNzb2NpYWRvIGFvIGJvdMOjby5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IDBcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBiYXNlWkluZGV4ID0gMDtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBEZXNhYmlsaXRhIG8gYm90w6NvLCBpbXBlZGluZG8gY2xpcXVlcyBlIGludGVyYcOnw6NvIGRvIHVzdcOhcmlvLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEFwbGljYSBlc3RpbG8gYXV4aWxpYXIgKG1lbm9zIGRlc3RhcXVlIHZpc3VhbCkgYW8gYm90w6NvLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhdXhpbGlhcnkgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUaXBvIGRvIGVsZW1lbnRvIGA8YnV0dG9uPmAgSFRNTCAoYCdidXR0b24nYCwgYCdzdWJtaXQnYCwgYCdyZXNldCdgKS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0ICdidXR0b24nXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdHlwZT8gPSAnYnV0dG9uJztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBQcmlvcmlkYWRlIHZpc3VhbCBkbyBib3TDo28sIHF1ZSBkZXRlcm1pbmEgc2V1IGVzdGlsby5cbiAgICAgKiBBY2VpdGEgYCdwcmltYXJ5J2AsIGAnZGVmYXVsdCdgLCBgJ2RhbmdlcidgLCBgJ2xpbmsnYCwgZW50cmUgb3V0cm9zLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ3ByaW1hcnknXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcHJpb3JpdHk/OiBCdXR0b25Qcmlvcml0eSA9ICdwcmltYXJ5JztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBMaXN0YSBkZSBpdGVucyBkbyBtZW51IGRyb3Bkb3duIGV4aWJpZG8gYW8gY2xpY2FyIG5vIGNhcmV0IGRvIGJvdMOjby5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IFtdXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWVudU9wdGlvbnM6IFRpZXJlZE1lbnVJdGVtRGF0YVtdID0gW107XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gVGFtYW5obyB2aXN1YWwgZG8gYm90w6NvLiBBY2VpdGEgYCdkZWZhdWx0J2Agb3UgYCdzbWFsbCdgLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgJ2RlZmF1bHQnXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2l6ZT86ICdkZWZhdWx0JyB8ICdzbWFsbCcgPSAnZGVmYXVsdCc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gSGFiaWxpdGEgbyBtb2RvIHNsaWRlLCBxdWUgZXhpYmUgdW1hIGFuaW1hw6fDo28gZGUgZGVzbGl6ZSBhbyBwYXNzYXIgbyBtb3VzZS5cbiAgICAgKiBSZXF1ZXIgYHByaW9yaXR5YCBpZ3VhbCBhIGAnZGVmYXVsdCdgIG91IGAnbGluaydgIGUgdW0gYGxhYmVsYCBkZWZpbmlkby5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2xpZGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUaXBvIGRlIGFuaW1hw6fDo28gYXBsaWNhZGEgYW8gYm90w6NvIChgJ3JvdGF0ZSdgLCBgJ3B1bHNlJ2AsIGV0Yy4pLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGFuaW1hdGlvbj86IEJ1dHRvbkFuaW1hdGlvbnM7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQ29uZmlndXJhw6fDo28gZG8gYmFkZ2UgZXhpYmlkbyBzb2JyZSBvIGJvdMOjbywgY29tIGNvbnRhZG9yIG91IGluZGljYWRvciB2aXN1YWwuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYmFkZ2U/OiBCdXR0b25CYWRnZUNvbmZpZztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBDb3IgYXBsaWNhZGEgYW8gw61jb25lIGRvIGJvdMOjbywgc29icmVzY3JldmVuZG8gYSBjb3IgcGFkcsOjbyBkbyB0ZW1hLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGljb25Db2xvcj86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUZXh0byBhbHRlcm5hdGl2byBwYXJhIG8gbWVudSBhc3NvY2lhZG8gYW8gYm90w6NvLCB1dGlsaXphZG8gcGFyYSBhY2Vzc2liaWxpZGFkZS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtZW51QXJpYUxhYmVsPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFRleHRvIGFsdGVybmF0aXZvIHBhcmEgcXVhbmRvIG8gYm90w6NvIG7Do28gdGl2ZXIgdW0gdGV4dG8gZXhwbGljaXRvLCB1dGlsaXphZG8gcGFyYSBhY2Vzc2liaWxpZGFkZS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhcmlhTGFiZWw/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gRW1pdGlkbyBhbyBjbGljYXIgbm8gYm90w6NvLCBkZXNkZSBxdWUgbsOjbyBlc3RlamEgZGVzYWJpbGl0YWRvLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBjbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHB1YmxpYyBpc01lbnVPcGVuID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgdmFsaWRhdGVTbGlkZUJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhKHRoaXMuc2xpZGUgJiYgKHRoaXMucHJpb3JpdHkgPT09ICdkZWZhdWx0JyB8fCB0aGlzLnByaW9yaXR5ID09PSAnbGluaycpICYmIHRoaXMubGFiZWw/Lmxlbmd0aCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKF86IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaGFzSWNvbiA9IHRoaXMuaWNvbkNsYXNzO1xuICAgICAgICBjb25zdCBoYXNUZXh0ID0gdGhpcy5sYWJlbDtcblxuICAgICAgICBjb25zdCBpc011bHRpcGxlID0gdGhpcy5tZW51T3B0aW9ucz8ubGVuZ3RoO1xuXG4gICAgICAgIGlmIChoYXNUZXh0IHx8IChoYXNJY29uICYmIGlzTXVsdGlwbGUpKSB7XG4gICAgICAgICAgICB0aGlzLm1pbldpZHRoID0gJzgwcHgnO1xuICAgICAgICB9XG4gICAgICAgIGlmIChoYXNUZXh0ICYmIGhhc0ljb24gJiYgaXNNdWx0aXBsZSkge1xuICAgICAgICAgICAgdGhpcy5taW5XaWR0aCA9ICcxMDBweCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaXNSb3RhdGVBbmltYXRpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFuaW1hdGlvbiA9PT0gJ3JvdGF0ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIG9uVGllcmVkTWVudU9wZW5lZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc01lbnVPcGVuID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25UaWVyZWRNZW51Q2xvc2VkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTWVudU9wZW4gPSBmYWxzZTtcbiAgICB9XG59XG5cbiIsIjxidXR0b25cbiAgICBbaWRdPVwiaWRcIlxuICAgIFt0eXBlXT1cInR5cGVcIlxuICAgIFtjbGFzc109XCJzdHlsZUNsYXNzXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdzLWJ1dHRvbi1hdXhpbGlhcnknOiBhdXhpbGlhcnksXG4gICAgICAgICdzLWJ1dHRvbi13aXRoLWljb24nOiBpY29uQ2xhc3MsXG4gICAgICAgICdzLWJ1dHRvbi13aXRoLXRleHQnOiBsYWJlbCxcbiAgICAgICAgJ3MtYnV0dG9uLW9ubHktaWNvbic6IGljb25DbGFzcyAmJiAhbGFiZWwgJiYgIW1lbnVPcHRpb25zLmxlbmd0aCxcbiAgICAgICAgJ3MtYnV0dG9uLWVtcHR5JzogIWljb25DbGFzcyAmJiAhbGFiZWwsXG4gICAgICAgICdzLWJ1dHRvbi1zaXplLWRlZmF1bHQnOiBzaXplID09PSAnZGVmYXVsdCcsXG4gICAgICAgICdzLWJ1dHRvbi1zaXplLXNtYWxsJzogc2l6ZSA9PT0gJ3NtYWxsJyxcbiAgICAgICAgJ3MtYnV0dG9uLXByaW9yaXR5LWRlZmF1bHQnOiBwcmlvcml0eSA9PT0gJ2RlZmF1bHQnLFxuICAgICAgICAncy1idXR0b24tcHJpb3JpdHktcHJpbWFyeSc6IHByaW9yaXR5ID09PSAncHJpbWFyeScsXG4gICAgICAgICdzLWJ1dHRvbi1wcmlvcml0eS1zZWNvbmRhcnknOiBwcmlvcml0eSA9PT0gJ3NlY29uZGFyeScsXG4gICAgICAgICdzLWJ1dHRvbi1wcmlvcml0eS1saW5rJzogcHJpb3JpdHkgPT09ICdsaW5rJyxcbiAgICAgICAgJ3MtYnV0dG9uLXByaW9yaXR5LWRhbmdlcic6IHByaW9yaXR5ID09PSAnZGFuZ2VyJyxcbiAgICAgICAgJ3MtYnV0dG9uLW11bHRpcGxlJzogKGNhcmV0ICYmIG1lbnVPcHRpb25zLmxlbmd0aCkgfHwgcmlnaHRJY29uQ2xhc3MsXG4gICAgICAgICdzLWJ1dHRvbi0tc2xpZGUnOiB2YWxpZGF0ZVNsaWRlQnV0dG9uKCksXG4gICAgICAgICdzLWJ1dHRvbi0tcm90YXRlLWFuaW1hdGlvbic6IGlzUm90YXRlQW5pbWF0aW9uKCksXG4gICAgfVwiXG4gICAgc1RpZXJlZE1lbnVcbiAgICBbaXRlbXNdPVwibWVudU9wdGlvbnNcIlxuICAgIFthcmlhTGFiZWxdPVwibWVudUFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJtZW51T3B0aW9ucy5sZW5ndGggPyAnbWVudScgOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIm1lbnVPcHRpb25zLmxlbmd0aCA/IGlzTWVudU9wZW4gOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbc1Rvb2x0aXBdPVwidG9vbHRpcFwiXG4gICAgW3Rvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb25cIlxuICAgICh0aWVyZWRNZW51T3BlbmVkKT1cIm9uVGllcmVkTWVudU9wZW5lZCgpXCJcbiAgICAodGllcmVkTWVudUNsb3NlZCk9XCJvblRpZXJlZE1lbnVDbG9zZWQoKVwiXG4gICAgKGNsaWNrKT1cImNsaWNrZWQuZW1pdCgkZXZlbnQpXCJcbj5cbiAgICBAaWYgKGljb25DbGFzcykge1xuICAgICAgICA8c3BhblxuICAgICAgICAgICAgW2NsYXNzXT1cImljb25DbGFzc1wiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ3MtYnV0dG9uLWljb24nOiB0cnVlLFxuICAgICAgICAgICAgICAgICdzLWJ1dHRvbi1pY29uLW1hcmdpbi1yaWdodCc6ICFsYWJlbCAmJiBtZW51T3B0aW9ucy5sZW5ndGgsXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgY29sb3I6IGljb25Db2xvciB9XCJcbiAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgID5cbiAgICAgICAgPC9zcGFuPlxuICAgIH1cbiAgICBAaWYgKGxhYmVsKSB7XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cInMtYnV0dG9uLXRleHRcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICdzLWJ1dHRvbi1pY29uLW1hcmdpbi1yaWdodCc6ICEhcmlnaHRJY29uQ2xhc3MgfHwgbWVudU9wdGlvbnMubGVuZ3RoLFxuICAgICAgICAgICAgICAgICdzLWJ1dHRvbi1pY29uLW1hcmdpbi1sZWZ0JzogISFpY29uQ2xhc3MsXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgbGFiZWwgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgIH1cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgQGlmIChyaWdodEljb25DbGFzcykge1xuICAgICAgICA8c3BhblxuICAgICAgICAgICAgW2NsYXNzXT1cInJpZ2h0SWNvbkNsYXNzXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3MtYnV0dG9uLXJpZ2h0LWljb24nOiB0cnVlIH1cIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwieyBjb2xvcjogaWNvbkNvbG9yIH1cIlxuICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NwYW4+XG4gICAgfVxuICAgIEBpZiAoKGNhcmV0ICYmIG1lbnVPcHRpb25zLmxlbmd0aCkgfHwgKG1lbnVPcHRpb25zICYmIG1lbnVPcHRpb25zLmxlbmd0aCkpIHtcbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGNsYXNzPVwibWVudS1vcHRpb25zLWljb24gZmEgZmEtZncgZmEtY2FyZXQtZG93blwiXG4gICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICA+XG4gICAgICAgIDwvc3Bhbj5cbiAgICB9XG48L2J1dHRvbj5cbkBpZiAoYmFkZ2UpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYmFkZ2VcIj5cbiAgICAgICAgPHMtYmFkZ2VcbiAgICAgICAgICAgIFtjb2xvcl09XCJiYWRnZS5jb2xvclwiXG4gICAgICAgICAgICBbdGV4dF09XCJiYWRnZS50ZXh0XCJcbiAgICAgICAgICAgIFtpY29uQ2xhc3NdPVwiYmFkZ2UuaWNvbkNsYXNzXCJcbiAgICAgICAgPlxuICAgICAgICA8L3MtYmFkZ2U+XG4gICAgPC9kaXY+XG59XG5cbiJdfQ==
|
|
@@ -27,7 +27,7 @@ import * as i2 from "@seniorsistemas/angular-components/button";
|
|
|
27
27
|
export class PopupConfirmDialogComponent {
|
|
28
28
|
confirmDialog;
|
|
29
29
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PopupConfirmDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PopupConfirmDialogComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "@if (confirmDialog) {\n <s-dialog [header]=\"confirmDialog.header\">\n <div class=\"grid grid-cols-12\">\n <div class=\"col-span-12\">\n {{ confirmDialog.message }}\n </div>\n </div>\n <ng-template\n sTemplate=\"footer\"\n let-activeDialog=\"activeDialog\"\n >\n <div class=\"grid grid-cols-12\">\n <div class=\"col-span-12 flex flex-wrap justify-end gap-3\">\n @if (confirmDialog.rejectLabel) {\n <s-button\n [label]=\"confirmDialog.rejectLabel\"\n (clicked)=\"activeDialog.close(false)\"\n label=\"A\u00E7\u00E3o secund\u00E1ria\"\n priority=\"link\"\n />\n }\n <s-button\n [label]=\"confirmDialog.acceptLabel\"\n (clicked)=\"activeDialog.close(true)\"\n priority=\"primary\"\n />\n </div>\n </div>\n </ng-template>\n </s-dialog>\n}\n", dependencies: [{ kind: "component", type: DialogComponent, selector: "s-dialog", inputs: ["header", "visible", "size", "contentClassName", "escapeOnEsc", "destroyClickOutside", "closeAriaLabel"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: TemplateModule }, { kind: "directive", type: i1.TemplateDirective, selector: "[sTemplate]", inputs: ["sTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }] });
|
|
30
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PopupConfirmDialogComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "@if (confirmDialog) {\n <s-dialog [header]=\"confirmDialog.header\">\n <div class=\"grid grid-cols-12\">\n <div class=\"col-span-12\">\n {{ confirmDialog.message }}\n </div>\n </div>\n <ng-template\n sTemplate=\"footer\"\n let-activeDialog=\"activeDialog\"\n >\n <div class=\"grid grid-cols-12\">\n <div class=\"col-span-12 flex flex-wrap justify-end gap-3\">\n @if (confirmDialog.rejectLabel) {\n <s-button\n [label]=\"confirmDialog.rejectLabel\"\n (clicked)=\"activeDialog.close(false)\"\n label=\"A\u00E7\u00E3o secund\u00E1ria\"\n priority=\"link\"\n />\n }\n <s-button\n [label]=\"confirmDialog.acceptLabel\"\n (clicked)=\"activeDialog.close(true)\"\n priority=\"primary\"\n />\n </div>\n </div>\n </ng-template>\n </s-dialog>\n}\n", dependencies: [{ kind: "component", type: DialogComponent, selector: "s-dialog", inputs: ["header", "visible", "size", "contentClassName", "escapeOnEsc", "destroyClickOutside", "closeAriaLabel"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: TemplateModule }, { kind: "directive", type: i1.TemplateDirective, selector: "[sTemplate]", inputs: ["sTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel", "ariaLabel"], outputs: ["clicked"] }] });
|
|
31
31
|
}
|
|
32
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PopupConfirmDialogComponent, decorators: [{
|
|
33
33
|
type: Component,
|
|
@@ -149,7 +149,7 @@ export class ContentGeneratorComponent {
|
|
|
149
149
|
removalVersion: '20.0.0',
|
|
150
150
|
},
|
|
151
151
|
},
|
|
152
|
-
], viewQueries: [{ propertyName: "textArea", first: true, predicate: ["textAreaElement"], descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.DeprecatedSelectorDirective }], ngImport: i0, template: "<s-loading-state\n [loading]=\"isLoading\"\n [blockWindow]=\"true\"\n>\n</s-loading-state>\n\n<s-dialog\n [(visible)]=\"isVisible\"\n [escapeOnEsc]=\"false\"\n [destroyClickOutside]=\"false\"\n size=\"lg\"\n (visibleChange)=\"onHideDialog()\"\n>\n <ng-template sTemplate=\"header\">\n <div class=\"dialog-header\">\n <span class=\"iassist-icon\">\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </span>\n IAssist - Content Generator\n </div>\n </ng-template>\n\n <form [formGroup]=\"formGroup\">\n <label for=\"context\">{{ 'platform.angular_components.context' | translate }}</label>\n <s-textarea\n inputId=\"context\"\n formControlName=\"context\"\n [speechRecognition]=\"speechRecognition\"\n [keepContext]=\"keepContext\"\n />\n </form>\n\n <ng-template sTemplate=\"footer\">\n <div class=\"footer-content\">\n <s-button\n id=\"-submit-button\"\n type=\"button\"\n [label]=\"'platform.angular_components.generate_text' | translate\"\n (clicked)=\"submitContext()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\"\n >\n </s-button>\n <s-button\n id=\"-cancel-button\"\n type=\"button\"\n priority=\"link\"\n [label]=\"'platform.angular_components.cancel' | translate\"\n (clicked)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\"\n >\n </s-button>\n </div>\n </ng-template>\n</s-dialog>\n\n<div class=\"textarea-ia\">\n <s-textarea\n #textAreaElement\n [inputId]=\"id\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [rows]=\"rows\"\n [readOnly]=\"readonly\"\n [placeholder]=\"placeholder\"\n [keepContext]=\"keepContext\"\n [speechRecognitionPlaceholder]=\"speechRecognitionPlaceholder\"\n [maxLength]=\"maxLength\"\n [speechRecognition]=\"speechRecognition\"\n >\n </s-textarea>\n <!--TODO: Tooltip em propriedade-->\n <button\n class=\"iassist-button\"\n [class.speech-recognition]=\"speechRecognition && speechRecognitionService.hasSupportSpeechRecognition\"\n (click)=\"showDialog()\"\n sTooltip=\"IAssist - Content Generator\"\n >\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </button>\n</div>\n\n<ng-template #iassistIcon>\n <div style=\"width: 100%; height: 100%;\">\n <span *sSVGFactory=\"'iassist'\"></span>\n </div>\n</ng-template>\n", styles: ["s-content-generator.ng-invalid.ng-dirty .textarea-ia textarea,s-text-area-ia.ng-invalid.ng-dirty .textarea-ia textarea{border-color:#c13018}.footer-content{display:flex;flex-grow:0}.textarea-ia{display:flex;align-items:flex-end;gap:8px}.iassist-button{display:flex;justify-content:center;align-items:center;border:none;border-radius:50%;box-shadow:none;cursor:pointer;height:32px;width:32px}.dialog-header{display:flex;gap:12px}.dialog-header .iassist-icon{display:block;height:24px;width:24px}s-textarea{width:100%}.speech-recognition{margin-bottom:12.5px}\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "component", type: i4.LoadingStateComponent, selector: "s-loading-state", inputs: ["indicator", "id", "blockWindow", "loading"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i6.TextAreaComponent, selector: "s-textarea", inputs: ["inputId", "rows", "speechRecognition", "keyFilter", "keepContext", "speechRecognitionPlaceholder", "maxLength", "placeholder", "inputStyle", "readOnly"] }, { kind: "component", type: i7.DialogComponent, selector: "s-dialog", inputs: ["header", "visible", "size", "contentClassName", "escapeOnEsc", "destroyClickOutside", "closeAriaLabel"], outputs: ["visibleChange"] }, { kind: "directive", type: i8.TemplateDirective, selector: "[sTemplate]", inputs: ["sTemplate"] }, { kind: "directive", type: i9.SVGFactoryDirective, selector: "[sSVGFactory]", inputs: ["sSVGFactory"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
152
|
+
], viewQueries: [{ propertyName: "textArea", first: true, predicate: ["textAreaElement"], descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.DeprecatedSelectorDirective }], ngImport: i0, template: "<s-loading-state\n [loading]=\"isLoading\"\n [blockWindow]=\"true\"\n>\n</s-loading-state>\n\n<s-dialog\n [(visible)]=\"isVisible\"\n [escapeOnEsc]=\"false\"\n [destroyClickOutside]=\"false\"\n size=\"lg\"\n (visibleChange)=\"onHideDialog()\"\n>\n <ng-template sTemplate=\"header\">\n <div class=\"dialog-header\">\n <span class=\"iassist-icon\">\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </span>\n IAssist - Content Generator\n </div>\n </ng-template>\n\n <form [formGroup]=\"formGroup\">\n <label for=\"context\">{{ 'platform.angular_components.context' | translate }}</label>\n <s-textarea\n inputId=\"context\"\n formControlName=\"context\"\n [speechRecognition]=\"speechRecognition\"\n [keepContext]=\"keepContext\"\n />\n </form>\n\n <ng-template sTemplate=\"footer\">\n <div class=\"footer-content\">\n <s-button\n id=\"-submit-button\"\n type=\"button\"\n [label]=\"'platform.angular_components.generate_text' | translate\"\n (clicked)=\"submitContext()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\"\n >\n </s-button>\n <s-button\n id=\"-cancel-button\"\n type=\"button\"\n priority=\"link\"\n [label]=\"'platform.angular_components.cancel' | translate\"\n (clicked)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\"\n >\n </s-button>\n </div>\n </ng-template>\n</s-dialog>\n\n<div class=\"textarea-ia\">\n <s-textarea\n #textAreaElement\n [inputId]=\"id\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [rows]=\"rows\"\n [readOnly]=\"readonly\"\n [placeholder]=\"placeholder\"\n [keepContext]=\"keepContext\"\n [speechRecognitionPlaceholder]=\"speechRecognitionPlaceholder\"\n [maxLength]=\"maxLength\"\n [speechRecognition]=\"speechRecognition\"\n >\n </s-textarea>\n <!--TODO: Tooltip em propriedade-->\n <button\n class=\"iassist-button\"\n [class.speech-recognition]=\"speechRecognition && speechRecognitionService.hasSupportSpeechRecognition\"\n (click)=\"showDialog()\"\n sTooltip=\"IAssist - Content Generator\"\n >\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </button>\n</div>\n\n<ng-template #iassistIcon>\n <div style=\"width: 100%; height: 100%;\">\n <span *sSVGFactory=\"'iassist'\"></span>\n </div>\n</ng-template>\n", styles: ["s-content-generator.ng-invalid.ng-dirty .textarea-ia textarea,s-text-area-ia.ng-invalid.ng-dirty .textarea-ia textarea{border-color:#c13018}.footer-content{display:flex;flex-grow:0}.textarea-ia{display:flex;align-items:flex-end;gap:8px}.iassist-button{display:flex;justify-content:center;align-items:center;border:none;border-radius:50%;box-shadow:none;cursor:pointer;height:32px;width:32px}.dialog-header{display:flex;gap:12px}.dialog-header .iassist-icon{display:block;height:24px;width:24px}s-textarea{width:100%}.speech-recognition{margin-bottom:12.5px}\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel", "ariaLabel"], outputs: ["clicked"] }, { kind: "component", type: i4.LoadingStateComponent, selector: "s-loading-state", inputs: ["indicator", "id", "blockWindow", "loading"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i6.TextAreaComponent, selector: "s-textarea", inputs: ["inputId", "rows", "speechRecognition", "keyFilter", "keepContext", "speechRecognitionPlaceholder", "maxLength", "placeholder", "inputStyle", "readOnly"] }, { kind: "component", type: i7.DialogComponent, selector: "s-dialog", inputs: ["header", "visible", "size", "contentClassName", "escapeOnEsc", "destroyClickOutside", "closeAriaLabel"], outputs: ["visibleChange"] }, { kind: "directive", type: i8.TemplateDirective, selector: "[sTemplate]", inputs: ["sTemplate"] }, { kind: "directive", type: i9.SVGFactoryDirective, selector: "[sSVGFactory]", inputs: ["sSVGFactory"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
153
153
|
}
|
|
154
154
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContentGeneratorComponent, decorators: [{
|
|
155
155
|
type: Component,
|
|
@@ -41,10 +41,10 @@ export class RowComponent {
|
|
|
41
41
|
return '';
|
|
42
42
|
}
|
|
43
43
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RowComponent, isStandalone: true, selector: "s-row", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"w-full\"\n [formGroup]=\"group()\"\n>\n @let rowConfig = config();\n @let rowIsVisible = formUtils.getFieldProperty(rowConfig.visible, true);\n @if (rowIsVisible) {\n <div class=\"grid w-screen max-w-full grid-cols-12 gap-4\">\n @for (field of config().fields; let i = $index; track i) {\n @let fieldName = getName(field);\n @if (fieldIsExpandedDynamicType(field)) {\n @let fieldVisible = formUtils.getFieldProperty(field.visible, true);\n @if (fieldVisible) {\n <div\n class=\"p-1\"\n [ngClass]=\"fieldGridClass(field)\"\n >\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n\n @if (fieldName) {\n <s-control-errors\n [form]=\"group\"\n [control]=\"group().controls[fieldName]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"\n ></s-control-errors>\n }\n\n @if (field.footer) {\n @if (field.footer.help) {\n @let footerHelpVisible =\n field.footer.help.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.help.visible ? footerHelpVisible : true) {\n <span style=\"color: #888b99\">\n {{ field.footer.help.text }}\n </span>\n }\n }\n }\n\n @if (field.footer) {\n @let footerLinkVisible =\n field.footer.link?.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.link?.visible ? footerLinkVisible : true) {\n <div style=\"margin-left: -17px\">\n <s-button\n [label]=\"field.footer.link?.label\"\n priority=\"link\"\n (clicked)=\"\n field.footer.link?.onClick({\n abstractControl: group().controls[fieldName],\n formField: field,\n })\n \"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n }\n }\n @if (field.bottomTemplate) {\n <ng-template [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n }\n </div>\n }\n } @else {\n @let gridClass = fieldGridClass(field);\n <div [ngClass]=\"gridClass\">\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n </div>\n }\n }\n </div>\n }\n</div>\n\n", dependencies: [{ kind: "ngmodule", type: ControlErrorsModule }, { kind: "component", type: i1.ControlErrorsComponent, selector: "s-control-errors", inputs: ["id", "control", "errorMessages", "form"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel"], outputs: ["clicked"] }, { kind: "directive", type: DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }] });
|
|
44
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RowComponent, isStandalone: true, selector: "s-row", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"w-full\"\n [formGroup]=\"group()\"\n>\n @let rowConfig = config();\n @let rowIsVisible = formUtils.getFieldProperty(rowConfig.visible, true);\n @if (rowIsVisible) {\n <div class=\"grid w-screen max-w-full grid-cols-12 gap-4\">\n @for (field of config().fields; let i = $index; track i) {\n @let fieldName = getName(field);\n @if (fieldIsExpandedDynamicType(field)) {\n @let fieldVisible = formUtils.getFieldProperty(field.visible, true);\n @if (fieldVisible) {\n <div\n class=\"p-1\"\n [ngClass]=\"fieldGridClass(field)\"\n >\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n\n @if (fieldName) {\n <s-control-errors\n [form]=\"group\"\n [control]=\"group().controls[fieldName]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"\n ></s-control-errors>\n }\n\n @if (field.footer) {\n @if (field.footer.help) {\n @let footerHelpVisible =\n field.footer.help.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.help.visible ? footerHelpVisible : true) {\n <span style=\"color: #888b99\">\n {{ field.footer.help.text }}\n </span>\n }\n }\n }\n\n @if (field.footer) {\n @let footerLinkVisible =\n field.footer.link?.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.link?.visible ? footerLinkVisible : true) {\n <div style=\"margin-left: -17px\">\n <s-button\n [label]=\"field.footer.link?.label\"\n priority=\"link\"\n (clicked)=\"\n field.footer.link?.onClick({\n abstractControl: group().controls[fieldName],\n formField: field,\n })\n \"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n }\n }\n @if (field.bottomTemplate) {\n <ng-template [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n }\n </div>\n }\n } @else {\n @let gridClass = fieldGridClass(field);\n <div [ngClass]=\"gridClass\">\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n </div>\n }\n }\n </div>\n }\n</div>\n\n", dependencies: [{ kind: "ngmodule", type: ControlErrorsModule }, { kind: "component", type: i1.ControlErrorsComponent, selector: "s-control-errors", inputs: ["id", "control", "errorMessages", "form"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel", "ariaLabel"], outputs: ["clicked"] }, { kind: "directive", type: DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }] });
|
|
45
45
|
}
|
|
46
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RowComponent, decorators: [{
|
|
47
47
|
type: Component,
|
|
48
48
|
args: [{ selector: 's-row', standalone: true, imports: [ControlErrorsModule, ReactiveFormsModule, NgClass, ButtonComponent, DynamicFormDirective], template: "<div\n class=\"w-full\"\n [formGroup]=\"group()\"\n>\n @let rowConfig = config();\n @let rowIsVisible = formUtils.getFieldProperty(rowConfig.visible, true);\n @if (rowIsVisible) {\n <div class=\"grid w-screen max-w-full grid-cols-12 gap-4\">\n @for (field of config().fields; let i = $index; track i) {\n @let fieldName = getName(field);\n @if (fieldIsExpandedDynamicType(field)) {\n @let fieldVisible = formUtils.getFieldProperty(field.visible, true);\n @if (fieldVisible) {\n <div\n class=\"p-1\"\n [ngClass]=\"fieldGridClass(field)\"\n >\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n\n @if (fieldName) {\n <s-control-errors\n [form]=\"group\"\n [control]=\"group().controls[fieldName]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"\n ></s-control-errors>\n }\n\n @if (field.footer) {\n @if (field.footer.help) {\n @let footerHelpVisible =\n field.footer.help.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.help.visible ? footerHelpVisible : true) {\n <span style=\"color: #888b99\">\n {{ field.footer.help.text }}\n </span>\n }\n }\n }\n\n @if (field.footer) {\n @let footerLinkVisible =\n field.footer.link?.visible?.({\n abstractControl: group().controls[fieldName],\n formField: field,\n });\n @if (fieldName && field.footer.link?.visible ? footerLinkVisible : true) {\n <div style=\"margin-left: -17px\">\n <s-button\n [label]=\"field.footer.link?.label\"\n priority=\"link\"\n (clicked)=\"\n field.footer.link?.onClick({\n abstractControl: group().controls[fieldName],\n formField: field,\n })\n \"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n }\n }\n @if (field.bottomTemplate) {\n <ng-template [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n }\n </div>\n }\n } @else {\n @let gridClass = fieldGridClass(field);\n <div [ngClass]=\"gridClass\">\n <ng-container *sDynamicForm=\"{ id: id(), config: field, group: group() }\"></ng-container>\n </div>\n }\n }\n </div>\n }\n</div>\n\n" }]
|
|
49
49
|
}] });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vY29tcG9uZW50cy9ncmlkL3Jvdy9yb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2dyaWQvcm93L3Jvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFhLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQU94RixPQUFPLEVBQUUsb0JBQW9CLEVBQWlCLE1BQU0sNkNBQTZDLENBQUM7QUFDbEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7O0FBU25GLE1BQU0sT0FBTyxZQUFZO0lBQ3JCLEVBQUUsR0FBRyxLQUFLLEVBQVUsQ0FBQztJQUNyQixNQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBYSxDQUFDO0lBRXJDLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFhLENBQUM7SUFDcEMsYUFBYSxHQUFHLEtBQUssRUFBTyxDQUFDO0lBRVYsU0FBUyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRW5ELGdCQUFnQixDQUFDLGFBQWtCO1FBQ3pDLElBQUksYUFBYTtZQUFFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUMzRixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRVMsVUFBVSxDQUFDLEtBQVU7UUFDM0IsT0FBTyxLQUFLLFlBQVksUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUFFUywwQkFBMEIsQ0FDaEMsS0FBbUU7UUFFbkUsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBcUIsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFUyxjQUFjLENBQUMsS0FBYztRQUNuQyxNQUFNLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELE9BQU8sU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFUyxPQUFPLENBQUMsS0FBYztRQUM1QixJQUFJLFlBQVksSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzVDLE9BQU8sS0FBSyxDQUFDLFVBQW9CLENBQUM7UUFDdEMsQ0FBQzthQUFNLElBQUksTUFBTSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ3pCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQztRQUN0QixDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO3dHQXJDUSxZQUFZOzRGQUFaLFlBQVksNmpCQ3pCekIsK2dJQWdGQSwyQ0R6RGMsbUJBQW1CLHdLQUFFLG1CQUFtQiw0VUFBRSxPQUFPLG9GQUFFLGVBQWUsdVVBQUUsb0JBQW9COzs0RkFFekYsWUFBWTtrQkFOeEIsU0FBUzsrQkFFSSxPQUFPLGNBQ0wsSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IENvbnRyb2xFcnJvcnNNb2R1bGUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2NvbnRyb2wtZXJyb3JzJztcbmltcG9ydCB7XG4gICAgRXhwYW5kZWREeW5hbWljU3RydWN0dXJlLFxuICAgIEV4cGFuZGVkRHluYW1pY1R5cGUsXG4gICAgUm93Q29uZmlnLFxuICAgIFJvd1R5cGUsXG59IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9yb3cnO1xuaW1wb3J0IHsgU1RSVUNUVVJFX1RZUEVTX0xJU1QsIFN0cnVjdHVyZVR5cGUgfSBmcm9tICcuLi8uLi8uLi9jb25maWd1cmF0aW9ucy9zdHJ1Y3R1cmUvc3RydWN0dXJlJztcbmltcG9ydCB7IER5bmFtaWNGb3JtRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZHluYW1pYy1mb3JtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGaWVsZFNpemUgfSBmcm9tICcuLi8uLi8uLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkLXNpemUnO1xuaW1wb3J0IHsgRHluYW1pY1R5cGUgfSBmcm9tICcuLi8uLi8uLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9maWVsZCc7XG5pbXBvcnQgeyBGb3JtRmllbGRVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLWZpZWxkLXV0aWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzZVN0cnVjdHVyZUNvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uLy4uL3N0cnVjdHVyZS9iYXNlLXN0cnVjdHVyZS1jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vcm93LmNvbXBvbmVudC5odG1sJyxcbiAgICBzZWxlY3RvcjogJ3Mtcm93JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb250cm9sRXJyb3JzTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ0NsYXNzLCBCdXR0b25Db21wb25lbnQsIER5bmFtaWNGb3JtRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgUm93Q29tcG9uZW50IGltcGxlbWVudHMgQmFzZVN0cnVjdHVyZUNvbXBvbmVudENvbmZpZyB7XG4gICAgaWQgPSBpbnB1dDxzdHJpbmc+KCk7XG4gICAgY29uZmlnID0gaW5wdXQucmVxdWlyZWQ8Um93Q29uZmlnPigpO1xuXG4gICAgZ3JvdXAgPSBpbnB1dC5yZXF1aXJlZDxGb3JtR3JvdXA+KCk7XG4gICAgZXJyb3JNZXNzYWdlcyA9IGlucHV0PGFueT4oKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBmb3JtVXRpbHMgPSBpbmplY3QoRm9ybUZpZWxkVXRpbHNTZXJ2aWNlKTtcblxuICAgIHByb3RlY3RlZCBnZXRFcnJvck1lc3NhZ2VzKGVycm9yTWVzc2FnZXM6IGFueSkge1xuICAgICAgICBpZiAoZXJyb3JNZXNzYWdlcykgcmV0dXJuIHRoaXMuaXNGdW5jdGlvbihlcnJvck1lc3NhZ2VzKSA/IGVycm9yTWVzc2FnZXMoKSA6IGVycm9yTWVzc2FnZXM7XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yTWVzc2FnZXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaXNGdW5jdGlvbih2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIEZ1bmN0aW9uO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBmaWVsZElzRXhwYW5kZWREeW5hbWljVHlwZShcbiAgICAgICAgZmllbGQ6IEV4cGFuZGVkRHluYW1pY1R5cGUgfCBFeHBhbmRlZER5bmFtaWNTdHJ1Y3R1cmUgfCBEeW5hbWljVHlwZSxcbiAgICApOiBmaWVsZCBpcyBFeHBhbmRlZER5bmFtaWNUeXBlIHtcbiAgICAgICAgcmV0dXJuICFTVFJVQ1RVUkVfVFlQRVNfTElTVC5pbmNsdWRlcyhmaWVsZC50eXBlIGFzIFN0cnVjdHVyZVR5cGUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBmaWVsZEdyaWRDbGFzcyhmaWVsZDogUm93VHlwZSkge1xuICAgICAgICBjb25zdCBmaWVsZFNpemUgPSBuZXcgRmllbGRTaXplKGZpZWxkLnNpemUgPz8ge30pO1xuICAgICAgICByZXR1cm4gZmllbGRTaXplLmdldEdyaWRDbGFzcygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXROYW1lKGZpZWxkOiBSb3dUeXBlKSB7XG4gICAgICAgIGlmICgnY3VzdG9tTmFtZScgaW4gZmllbGQgJiYgZmllbGQuY3VzdG9tTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIGZpZWxkLmN1c3RvbU5hbWUgYXMgc3RyaW5nO1xuICAgICAgICB9IGVsc2UgaWYgKCduYW1lJyBpbiBmaWVsZCkge1xuICAgICAgICAgICAgcmV0dXJuIGZpZWxkLm5hbWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxufVxuXG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJ3LWZ1bGxcIlxuICAgIFtmb3JtR3JvdXBdPVwiZ3JvdXAoKVwiXG4+XG4gICAgQGxldCByb3dDb25maWcgPSBjb25maWcoKTtcbiAgICBAbGV0IHJvd0lzVmlzaWJsZSA9IGZvcm1VdGlscy5nZXRGaWVsZFByb3BlcnR5KHJvd0NvbmZpZy52aXNpYmxlLCB0cnVlKTtcbiAgICBAaWYgKHJvd0lzVmlzaWJsZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCB3LXNjcmVlbiBtYXgtdy1mdWxsIGdyaWQtY29scy0xMiBnYXAtNFwiPlxuICAgICAgICAgICAgQGZvciAoZmllbGQgb2YgY29uZmlnKCkuZmllbGRzOyBsZXQgaSA9ICRpbmRleDsgdHJhY2sgaSkge1xuICAgICAgICAgICAgICAgIEBsZXQgZmllbGROYW1lID0gZ2V0TmFtZShmaWVsZCk7XG4gICAgICAgICAgICAgICAgQGlmIChmaWVsZElzRXhwYW5kZWREeW5hbWljVHlwZShmaWVsZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgQGxldCBmaWVsZFZpc2libGUgPSBmb3JtVXRpbHMuZ2V0RmllbGRQcm9wZXJ0eShmaWVsZC52aXNpYmxlLCB0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgQGlmIChmaWVsZFZpc2libGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInAtMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZmllbGRHcmlkQ2xhc3MoZmllbGQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpzRHluYW1pY0Zvcm09XCJ7IGlkOiBpZCgpLCBjb25maWc6IGZpZWxkLCBncm91cDogZ3JvdXAoKSB9XCI+PC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGZpZWxkTmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cy1jb250cm9sLWVycm9yc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1dPVwiZ3JvdXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRyb2xdPVwiZ3JvdXAoKS5jb250cm9sc1tmaWVsZE5hbWVdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlcnJvck1lc3NhZ2VzXT1cImdldEVycm9yTWVzc2FnZXMoZmllbGQuZXJyb3JNZXNzYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9zLWNvbnRyb2wtZXJyb3JzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoZmllbGQuZm9vdGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoZmllbGQuZm9vdGVyLmhlbHApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBsZXQgZm9vdGVySGVscFZpc2libGUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLmZvb3Rlci5oZWxwLnZpc2libGU/Lih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFic3RyYWN0Q29udHJvbDogZ3JvdXAoKS5jb250cm9sc1tmaWVsZE5hbWVdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChmaWVsZE5hbWUgJiYgZmllbGQuZm9vdGVyLmhlbHAudmlzaWJsZSA/IGZvb3RlckhlbHBWaXNpYmxlIDogdHJ1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM4ODhiOTlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZmllbGQuZm9vdGVyLmhlbHAudGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoZmllbGQuZm9vdGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBsZXQgZm9vdGVyTGlua1Zpc2libGUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuZm9vdGVyLmxpbms/LnZpc2libGU/Lih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJzdHJhY3RDb250cm9sOiBncm91cCgpLmNvbnRyb2xzW2ZpZWxkTmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkOiBmaWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGZpZWxkTmFtZSAmJiBmaWVsZC5mb290ZXIubGluaz8udmlzaWJsZSA/IGZvb3RlckxpbmtWaXNpYmxlIDogdHJ1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cIm1hcmdpbi1sZWZ0OiAtMTdweFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiZmllbGQuZm9vdGVyLmxpbms/LmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk9XCJsaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5mb290ZXIubGluaz8ub25DbGljayh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJzdHJhY3RDb250cm9sOiBncm91cCgpLmNvbnRyb2xzW2ZpZWxkTmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkOiBmaWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdXhpbGlhcnldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvcy1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGZpZWxkLmJvdHRvbVRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJmaWVsZC5ib3R0b21UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgQGxldCBncmlkQ2xhc3MgPSBmaWVsZEdyaWRDbGFzcyhmaWVsZCk7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZ3JpZENsYXNzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpzRHluYW1pY0Zvcm09XCJ7IGlkOiBpZCgpLCBjb25maWc6IGZpZWxkLCBncm91cDogZ3JvdXAoKSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG5cbiJdfQ==
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vY29tcG9uZW50cy9ncmlkL3Jvdy9yb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2dyaWQvcm93L3Jvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFhLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQU94RixPQUFPLEVBQUUsb0JBQW9CLEVBQWlCLE1BQU0sNkNBQTZDLENBQUM7QUFDbEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7O0FBU25GLE1BQU0sT0FBTyxZQUFZO0lBQ3JCLEVBQUUsR0FBRyxLQUFLLEVBQVUsQ0FBQztJQUNyQixNQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBYSxDQUFDO0lBRXJDLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFhLENBQUM7SUFDcEMsYUFBYSxHQUFHLEtBQUssRUFBTyxDQUFDO0lBRVYsU0FBUyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRW5ELGdCQUFnQixDQUFDLGFBQWtCO1FBQ3pDLElBQUksYUFBYTtZQUFFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUMzRixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRVMsVUFBVSxDQUFDLEtBQVU7UUFDM0IsT0FBTyxLQUFLLFlBQVksUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUFFUywwQkFBMEIsQ0FDaEMsS0FBbUU7UUFFbkUsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBcUIsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFUyxjQUFjLENBQUMsS0FBYztRQUNuQyxNQUFNLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELE9BQU8sU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFUyxPQUFPLENBQUMsS0FBYztRQUM1QixJQUFJLFlBQVksSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzVDLE9BQU8sS0FBSyxDQUFDLFVBQW9CLENBQUM7UUFDdEMsQ0FBQzthQUFNLElBQUksTUFBTSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ3pCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQztRQUN0QixDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO3dHQXJDUSxZQUFZOzRGQUFaLFlBQVksNmpCQ3pCekIsK2dJQWdGQSwyQ0R6RGMsbUJBQW1CLHdLQUFFLG1CQUFtQiw0VUFBRSxPQUFPLG9GQUFFLGVBQWUsb1ZBQUUsb0JBQW9COzs0RkFFekYsWUFBWTtrQkFOeEIsU0FBUzsrQkFFSSxPQUFPLGNBQ0wsSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IENvbnRyb2xFcnJvcnNNb2R1bGUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL2NvbnRyb2wtZXJyb3JzJztcbmltcG9ydCB7XG4gICAgRXhwYW5kZWREeW5hbWljU3RydWN0dXJlLFxuICAgIEV4cGFuZGVkRHluYW1pY1R5cGUsXG4gICAgUm93Q29uZmlnLFxuICAgIFJvd1R5cGUsXG59IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9yb3cnO1xuaW1wb3J0IHsgU1RSVUNUVVJFX1RZUEVTX0xJU1QsIFN0cnVjdHVyZVR5cGUgfSBmcm9tICcuLi8uLi8uLi9jb25maWd1cmF0aW9ucy9zdHJ1Y3R1cmUvc3RydWN0dXJlJztcbmltcG9ydCB7IER5bmFtaWNGb3JtRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZHluYW1pYy1mb3JtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGaWVsZFNpemUgfSBmcm9tICcuLi8uLi8uLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkLXNpemUnO1xuaW1wb3J0IHsgRHluYW1pY1R5cGUgfSBmcm9tICcuLi8uLi8uLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9maWVsZCc7XG5pbXBvcnQgeyBGb3JtRmllbGRVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLWZpZWxkLXV0aWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzZVN0cnVjdHVyZUNvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uLy4uL3N0cnVjdHVyZS9iYXNlLXN0cnVjdHVyZS1jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vcm93LmNvbXBvbmVudC5odG1sJyxcbiAgICBzZWxlY3RvcjogJ3Mtcm93JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb250cm9sRXJyb3JzTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ0NsYXNzLCBCdXR0b25Db21wb25lbnQsIER5bmFtaWNGb3JtRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgUm93Q29tcG9uZW50IGltcGxlbWVudHMgQmFzZVN0cnVjdHVyZUNvbXBvbmVudENvbmZpZyB7XG4gICAgaWQgPSBpbnB1dDxzdHJpbmc+KCk7XG4gICAgY29uZmlnID0gaW5wdXQucmVxdWlyZWQ8Um93Q29uZmlnPigpO1xuXG4gICAgZ3JvdXAgPSBpbnB1dC5yZXF1aXJlZDxGb3JtR3JvdXA+KCk7XG4gICAgZXJyb3JNZXNzYWdlcyA9IGlucHV0PGFueT4oKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBmb3JtVXRpbHMgPSBpbmplY3QoRm9ybUZpZWxkVXRpbHNTZXJ2aWNlKTtcblxuICAgIHByb3RlY3RlZCBnZXRFcnJvck1lc3NhZ2VzKGVycm9yTWVzc2FnZXM6IGFueSkge1xuICAgICAgICBpZiAoZXJyb3JNZXNzYWdlcykgcmV0dXJuIHRoaXMuaXNGdW5jdGlvbihlcnJvck1lc3NhZ2VzKSA/IGVycm9yTWVzc2FnZXMoKSA6IGVycm9yTWVzc2FnZXM7XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yTWVzc2FnZXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaXNGdW5jdGlvbih2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIEZ1bmN0aW9uO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBmaWVsZElzRXhwYW5kZWREeW5hbWljVHlwZShcbiAgICAgICAgZmllbGQ6IEV4cGFuZGVkRHluYW1pY1R5cGUgfCBFeHBhbmRlZER5bmFtaWNTdHJ1Y3R1cmUgfCBEeW5hbWljVHlwZSxcbiAgICApOiBmaWVsZCBpcyBFeHBhbmRlZER5bmFtaWNUeXBlIHtcbiAgICAgICAgcmV0dXJuICFTVFJVQ1RVUkVfVFlQRVNfTElTVC5pbmNsdWRlcyhmaWVsZC50eXBlIGFzIFN0cnVjdHVyZVR5cGUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBmaWVsZEdyaWRDbGFzcyhmaWVsZDogUm93VHlwZSkge1xuICAgICAgICBjb25zdCBmaWVsZFNpemUgPSBuZXcgRmllbGRTaXplKGZpZWxkLnNpemUgPz8ge30pO1xuICAgICAgICByZXR1cm4gZmllbGRTaXplLmdldEdyaWRDbGFzcygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXROYW1lKGZpZWxkOiBSb3dUeXBlKSB7XG4gICAgICAgIGlmICgnY3VzdG9tTmFtZScgaW4gZmllbGQgJiYgZmllbGQuY3VzdG9tTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIGZpZWxkLmN1c3RvbU5hbWUgYXMgc3RyaW5nO1xuICAgICAgICB9IGVsc2UgaWYgKCduYW1lJyBpbiBmaWVsZCkge1xuICAgICAgICAgICAgcmV0dXJuIGZpZWxkLm5hbWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxufVxuXG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJ3LWZ1bGxcIlxuICAgIFtmb3JtR3JvdXBdPVwiZ3JvdXAoKVwiXG4+XG4gICAgQGxldCByb3dDb25maWcgPSBjb25maWcoKTtcbiAgICBAbGV0IHJvd0lzVmlzaWJsZSA9IGZvcm1VdGlscy5nZXRGaWVsZFByb3BlcnR5KHJvd0NvbmZpZy52aXNpYmxlLCB0cnVlKTtcbiAgICBAaWYgKHJvd0lzVmlzaWJsZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCB3LXNjcmVlbiBtYXgtdy1mdWxsIGdyaWQtY29scy0xMiBnYXAtNFwiPlxuICAgICAgICAgICAgQGZvciAoZmllbGQgb2YgY29uZmlnKCkuZmllbGRzOyBsZXQgaSA9ICRpbmRleDsgdHJhY2sgaSkge1xuICAgICAgICAgICAgICAgIEBsZXQgZmllbGROYW1lID0gZ2V0TmFtZShmaWVsZCk7XG4gICAgICAgICAgICAgICAgQGlmIChmaWVsZElzRXhwYW5kZWREeW5hbWljVHlwZShmaWVsZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgQGxldCBmaWVsZFZpc2libGUgPSBmb3JtVXRpbHMuZ2V0RmllbGRQcm9wZXJ0eShmaWVsZC52aXNpYmxlLCB0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgQGlmIChmaWVsZFZpc2libGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInAtMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZmllbGRHcmlkQ2xhc3MoZmllbGQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpzRHluYW1pY0Zvcm09XCJ7IGlkOiBpZCgpLCBjb25maWc6IGZpZWxkLCBncm91cDogZ3JvdXAoKSB9XCI+PC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGZpZWxkTmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cy1jb250cm9sLWVycm9yc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1dPVwiZ3JvdXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRyb2xdPVwiZ3JvdXAoKS5jb250cm9sc1tmaWVsZE5hbWVdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlcnJvck1lc3NhZ2VzXT1cImdldEVycm9yTWVzc2FnZXMoZmllbGQuZXJyb3JNZXNzYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9zLWNvbnRyb2wtZXJyb3JzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoZmllbGQuZm9vdGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoZmllbGQuZm9vdGVyLmhlbHApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBsZXQgZm9vdGVySGVscFZpc2libGUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLmZvb3Rlci5oZWxwLnZpc2libGU/Lih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFic3RyYWN0Q29udHJvbDogZ3JvdXAoKS5jb250cm9sc1tmaWVsZE5hbWVdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChmaWVsZE5hbWUgJiYgZmllbGQuZm9vdGVyLmhlbHAudmlzaWJsZSA/IGZvb3RlckhlbHBWaXNpYmxlIDogdHJ1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICM4ODhiOTlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZmllbGQuZm9vdGVyLmhlbHAudGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoZmllbGQuZm9vdGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBsZXQgZm9vdGVyTGlua1Zpc2libGUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuZm9vdGVyLmxpbms/LnZpc2libGU/Lih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJzdHJhY3RDb250cm9sOiBncm91cCgpLmNvbnRyb2xzW2ZpZWxkTmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkOiBmaWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGZpZWxkTmFtZSAmJiBmaWVsZC5mb290ZXIubGluaz8udmlzaWJsZSA/IGZvb3RlckxpbmtWaXNpYmxlIDogdHJ1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cIm1hcmdpbi1sZWZ0OiAtMTdweFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiZmllbGQuZm9vdGVyLmxpbms/LmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk9XCJsaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5mb290ZXIubGluaz8ub25DbGljayh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJzdHJhY3RDb250cm9sOiBncm91cCgpLmNvbnRyb2xzW2ZpZWxkTmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkOiBmaWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdXhpbGlhcnldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvcy1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGZpZWxkLmJvdHRvbVRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJmaWVsZC5ib3R0b21UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgQGxldCBncmlkQ2xhc3MgPSBmaWVsZEdyaWRDbGFzcyhmaWVsZCk7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZ3JpZENsYXNzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpzRHluYW1pY0Zvcm09XCJ7IGlkOiBpZCgpLCBjb25maWc6IGZpZWxkLCBncm91cDogZ3JvdXAoKSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG5cbiJdfQ==
|