@taiga-ui/addon-doc 4.30.0 → 4.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/api/api-item-number.directive.d.ts +7 -0
- package/components/api/api-item.component.d.ts +2 -0
- package/components/index.d.ts +1 -0
- package/esm2022/components/api/api-item-number.directive.mjs +23 -0
- package/esm2022/components/api/api-item.component.mjs +8 -3
- package/esm2022/components/index.mjs +2 -1
- package/esm2022/components/language-switcher/index.mjs +2 -2
- package/esm2022/components/navigation/navigation.component.mjs +2 -2
- package/esm2022/components/theme-switcher/theme-switcher.component.mjs +2 -2
- package/esm2022/index.mjs +3 -2
- package/fesm2022/taiga-ui-addon-doc-components.mjs +31 -7
- package/fesm2022/taiga-ui-addon-doc-components.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-doc.mjs +2 -1
- package/fesm2022/taiga-ui-addon-doc.mjs.map +1 -1
- package/index.d.ts +2 -2
- package/package.json +7 -7
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class TuiDocAPINumberItem {
|
|
3
|
+
min: number | null;
|
|
4
|
+
max: number | null;
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocAPINumberItem, never>;
|
|
6
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDocAPINumberItem, "tr[tuiDocAPIItem][type=number]", never, { "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; }, {}, never, never, true, never>;
|
|
7
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { AfterViewInit } from '@angular/core';
|
|
2
2
|
import { EventEmitter } from '@angular/core';
|
|
3
|
+
import { TuiDocAPINumberItem } from './api-item-number.directive';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
export declare class TuiDocAPIItem<T> implements AfterViewInit {
|
|
5
6
|
private readonly locationRef;
|
|
@@ -7,6 +8,7 @@ export declare class TuiDocAPIItem<T> implements AfterViewInit {
|
|
|
7
8
|
private readonly urlSerializer;
|
|
8
9
|
private readonly urlStateHandler;
|
|
9
10
|
private readonly alerts;
|
|
11
|
+
protected readonly numberItem: TuiDocAPINumberItem | null;
|
|
10
12
|
name: string;
|
|
11
13
|
type: string;
|
|
12
14
|
value?: T;
|
package/components/index.d.ts
CHANGED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
class TuiDocAPINumberItem {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.min = null;
|
|
6
|
+
this.max = null;
|
|
7
|
+
}
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocAPINumberItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
9
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocAPINumberItem, isStandalone: true, selector: "tr[tuiDocAPIItem][type=number]", inputs: { min: "min", max: "max" }, ngImport: i0 }); }
|
|
10
|
+
}
|
|
11
|
+
export { TuiDocAPINumberItem };
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocAPINumberItem, decorators: [{
|
|
13
|
+
type: Directive,
|
|
14
|
+
args: [{
|
|
15
|
+
standalone: true,
|
|
16
|
+
selector: 'tr[tuiDocAPIItem][type=number]',
|
|
17
|
+
}]
|
|
18
|
+
}], propDecorators: { min: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}], max: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWl0ZW0tbnVtYmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9jb21wb25lbnRzL2FwaS9hcGktaXRlbS1udW1iZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUUvQyxNQUlhLG1CQUFtQjtJQUpoQztRQU1XLFFBQUcsR0FBa0IsSUFBSSxDQUFDO1FBRzFCLFFBQUcsR0FBa0IsSUFBSSxDQUFDO0tBQ3BDOytHQU5ZLG1CQUFtQjttR0FBbkIsbUJBQW1COztTQUFuQixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGdDQUFnQztpQkFDN0M7OEJBR1UsR0FBRztzQkFEVCxLQUFLO2dCQUlDLEdBQUc7c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0clt0dWlEb2NBUElJdGVtXVt0eXBlPW51bWJlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEb2NBUElOdW1iZXJJdGVtIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtaW46IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWF4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbn1cbiJdfQ==
|
|
@@ -14,6 +14,7 @@ import { TuiSwitch } from '@taiga-ui/kit/components/switch';
|
|
|
14
14
|
import { TuiChevron } from '@taiga-ui/kit/directives/chevron';
|
|
15
15
|
import { TuiInspectPipe } from '../documentation/pipes/inspect.pipe';
|
|
16
16
|
import { TuiDocTypeReferencePipe } from '../documentation/pipes/type-reference.pipe';
|
|
17
|
+
import { TuiDocAPINumberItem } from './api-item-number.directive';
|
|
17
18
|
import * as i0 from "@angular/core";
|
|
18
19
|
import * as i1 from "@angular/forms";
|
|
19
20
|
import * as i2 from "@taiga-ui/kit/components/data-list-wrapper";
|
|
@@ -27,6 +28,10 @@ class TuiDocAPIItem {
|
|
|
27
28
|
this.urlSerializer = inject(UrlSerializer);
|
|
28
29
|
this.urlStateHandler = inject(TUI_DOC_URL_STATE_HANDLER);
|
|
29
30
|
this.alerts = inject(TuiAlertService);
|
|
31
|
+
this.numberItem = inject(TuiDocAPINumberItem, {
|
|
32
|
+
self: true,
|
|
33
|
+
optional: true,
|
|
34
|
+
});
|
|
30
35
|
this.name = '';
|
|
31
36
|
this.type = '';
|
|
32
37
|
this.items = [];
|
|
@@ -78,7 +83,7 @@ class TuiDocAPIItem {
|
|
|
78
83
|
this.locationRef.go(this.urlStateHandler(tree));
|
|
79
84
|
}
|
|
80
85
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocAPIItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
81
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocAPIItem, isStandalone: true, selector: "tr[tuiDocAPIItem]", inputs: { name: "name", type: "type", value: "value", items: "items" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<td class=\"t-td\">\n <code\n class=\"t-name\"\n [class.t-name_banana]=\"name.startsWith('[(')\"\n [class.t-name_input]=\"name.startsWith('[')\"\n [class.t-name_output]=\"name.startsWith('(')\"\n >\n {{ name }}\n </code>\n <ng-content />\n</td>\n<td class=\"t-td\">\n <code class=\"t-type\">\n <ng-container *ngFor=\"let item of type | tuiDocTypeReference; let last = last\">\n <a\n *ngIf=\"item.reference; else default\"\n target=\"_blank\"\n class=\"t-reference\"\n [attr.href]=\"item.reference\"\n >\n {{ item.type }}\n <tui-icon\n icon=\"@tui.external-link\"\n [style.font-size.rem]=\"1\"\n />\n </a>\n <ng-template #default>\n {{ item.type }}\n </ng-template>\n <span *ngIf=\"!last\"> | </span>\n </ng-container>\n </code>\n</td>\n<td class=\"t-td\">\n <tui-textfield\n *ngIf=\"items.length; else noItems\"\n tuiChevron\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n [content]=\"content\"\n [tuiTextfieldCleaner]=\"type.includes('null') || type.includes('PolymorpheusContent')\"\n >\n <select\n placeholder=\"null\"\n tuiTextfield\n [ngModel]=\"value ?? null\"\n (ngModelChange)=\"onValueChange($event)\"\n ></select>\n <tui-data-list-wrapper\n *tuiTextfieldDropdown\n [itemContent]=\"content\"\n [items]=\"items\"\n />\n </tui-textfield>\n <ng-template\n #content\n let-data\n >\n <code [style.margin]=\"0\">{{ data | tuiInspectAny }}</code>\n </ng-template>\n <ng-template #noItems>\n <ng-container [ngSwitch]=\"type\">\n <input\n *ngSwitchCase=\"'boolean'\"\n tuiSwitch\n type=\"checkbox\"\n [id]=\"name\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n\n <tui-textfield\n *ngSwitchCase=\"'string'\"\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n >\n <input\n tuiTextfield\n [id]=\"name\"\n [ngModel]=\"value || ''\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n </tui-textfield>\n\n <tui-textfield\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n >\n <input\n tuiInputNumber\n [id]=\"name\"\n [ngModel]=\"value\"\n [step]=\"1\"\n (ngModelChange)=\"onValueChange($event || 0)\"\n />\n </tui-textfield>\n </ng-container>\n </ng-template>\n</td>\n", styles: [":host{box-shadow:inset 0 -1px var(--tui-border-normal)}.t-td{padding:1.5rem 2rem 1.5rem 0;vertical-align:top}.t-td:last-child{padding-inline-end:0;text-align:end}.t-name{display:flex!important;min-block-size:1.5rem;inline-size:-webkit-fit-content;inline-size:-moz-fit-content;inline-size:fit-content;margin:0 0 .5rem!important;-webkit-text-fill-color:var(--tui-background-accent-2-pressed)}.t-name_input{-webkit-text-fill-color:var(--tui-text-negative)}.t-name_banana{-webkit-text-fill-color:var(--tui-text-action)}.t-name_output{-webkit-text-fill-color:var(--tui-status-info)}.t-type{flex-wrap:wrap;align-items:center;justify-content:flex-start;min-block-size:1.5rem;margin:0!important}.t-reference{display:inline-flex;color:var(--tui-text-action);text-decoration:none;align-items:center;justify-content:center;gap:3px}.t-input{min-inline-size:10rem;margin-block-start:-.625rem}.t-input code{overflow:hidden;white-space:nowrap}@media screen and (max-width: 47.9625em){:host{gap:1rem;padding:1rem 0}.t-td{padding:0}.t-td:last-child{text-align:start}.t-input{margin:0}}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }, { kind: "component", type: i2.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels])", inputs: ["items", "disabledItemHandler", "emptyContent", "size", "itemContent"], outputs: ["itemClick"] }, { kind: "pipe", type: TuiDocTypeReferencePipe, name: "tuiDocTypeReference" }, { kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }, { kind: "directive", type: i3.TuiInputNumberDirective, selector: "input[tuiInputNumber]", inputs: ["min", "max", "prefix", "postfix"] }, { kind: "component", type: i3.TuiInputNumberStep, selector: "input[tuiInputNumber][step]", inputs: ["step"] }, { kind: "pipe", type: TuiInspectPipe, name: "tuiInspectAny" }, { kind: "component", type: TuiSwitch, selector: "input[type=\"checkbox\"][tuiSwitch]", inputs: ["size", "showIcons"] }, { kind: "component", type: i4.TuiSelect, selector: "select[tuiTextfield]", inputs: ["placeholder"] }, { kind: "component", type: i4.TuiTextfieldComponent, selector: "tui-textfield", inputs: ["stringify", "content", "filler"] }, { kind: "directive", type: i4.TuiTextfieldDirective, selector: "input[tuiTextfield]:not([tuiInputCard]):not([tuiInputExpire]):not([tuiInputCVC])" }, { kind: "directive", type: i4.TuiTextfieldOptionsDirective, selector: "[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]", inputs: ["tuiTextfieldAppearance", "tuiTextfieldSize", "tuiTextfieldCleaner"] }, { kind: "directive", type: i4.TuiTextfieldDropdownDirective, selector: "ng-template[tuiTextfieldDropdown]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
86
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocAPIItem, isStandalone: true, selector: "tr[tuiDocAPIItem]", inputs: { name: "name", type: "type", value: "value", items: "items" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<td class=\"t-td\">\n <code\n class=\"t-name\"\n [class.t-name_banana]=\"name.startsWith('[(')\"\n [class.t-name_input]=\"name.startsWith('[')\"\n [class.t-name_output]=\"name.startsWith('(')\"\n >\n {{ name }}\n </code>\n <ng-content />\n</td>\n<td class=\"t-td\">\n <code class=\"t-type\">\n <ng-container *ngFor=\"let item of type | tuiDocTypeReference; let last = last\">\n <a\n *ngIf=\"item.reference; else default\"\n target=\"_blank\"\n class=\"t-reference\"\n [attr.href]=\"item.reference\"\n >\n {{ item.type }}\n <tui-icon\n icon=\"@tui.external-link\"\n [style.font-size.rem]=\"1\"\n />\n </a>\n <ng-template #default>\n {{ item.type }}\n </ng-template>\n <span *ngIf=\"!last\"> | </span>\n </ng-container>\n </code>\n</td>\n<td class=\"t-td\">\n <tui-textfield\n *ngIf=\"items.length; else noItems\"\n tuiChevron\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n [content]=\"content\"\n [tuiTextfieldCleaner]=\"type.includes('null') || type.includes('PolymorpheusContent')\"\n >\n <select\n placeholder=\"null\"\n tuiTextfield\n [ngModel]=\"value ?? null\"\n (ngModelChange)=\"onValueChange($event)\"\n ></select>\n <tui-data-list-wrapper\n *tuiTextfieldDropdown\n [itemContent]=\"content\"\n [items]=\"items\"\n />\n </tui-textfield>\n <ng-template\n #content\n let-data\n >\n <code [style.margin]=\"0\">{{ data | tuiInspectAny }}</code>\n </ng-template>\n <ng-template #noItems>\n <ng-container [ngSwitch]=\"type\">\n <input\n *ngSwitchCase=\"'boolean'\"\n tuiSwitch\n type=\"checkbox\"\n [id]=\"name\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n\n <tui-textfield\n *ngSwitchCase=\"'string'\"\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n >\n <input\n tuiTextfield\n [id]=\"name\"\n [ngModel]=\"value || ''\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n </tui-textfield>\n\n <tui-textfield\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n >\n <input\n tuiInputNumber\n [id]=\"name\"\n [max]=\"numberItem?.max ?? null\"\n [min]=\"numberItem?.min ?? null\"\n [ngModel]=\"value\"\n [step]=\"1\"\n (ngModelChange)=\"onValueChange($event || 0)\"\n />\n </tui-textfield>\n </ng-container>\n </ng-template>\n</td>\n", styles: [":host{box-shadow:inset 0 -1px var(--tui-border-normal)}.t-td{padding:1.5rem 2rem 1.5rem 0;vertical-align:top}.t-td:last-child{padding-inline-end:0;text-align:end}.t-name{display:flex!important;min-block-size:1.5rem;inline-size:-webkit-fit-content;inline-size:-moz-fit-content;inline-size:fit-content;margin:0 0 .5rem!important;-webkit-text-fill-color:var(--tui-background-accent-2-pressed)}.t-name_input{-webkit-text-fill-color:var(--tui-text-negative)}.t-name_banana{-webkit-text-fill-color:var(--tui-text-action)}.t-name_output{-webkit-text-fill-color:var(--tui-status-info)}.t-type{flex-wrap:wrap;align-items:center;justify-content:flex-start;min-block-size:1.5rem;margin:0!important}.t-reference{display:inline-flex;color:var(--tui-text-action);text-decoration:none;align-items:center;justify-content:center;gap:3px}.t-input{min-inline-size:10rem;margin-block-start:-.625rem}.t-input code{overflow:hidden;white-space:nowrap}@media screen and (max-width: 47.9625em){:host{gap:1rem;padding:1rem 0}.t-td{padding:0}.t-td:last-child{text-align:start}.t-input{margin:0}}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }, { kind: "component", type: i2.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels])", inputs: ["items", "disabledItemHandler", "emptyContent", "size", "itemContent"], outputs: ["itemClick"] }, { kind: "pipe", type: TuiDocTypeReferencePipe, name: "tuiDocTypeReference" }, { kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }, { kind: "directive", type: i3.TuiInputNumberDirective, selector: "input[tuiInputNumber]", inputs: ["min", "max", "prefix", "postfix"] }, { kind: "component", type: i3.TuiInputNumberStep, selector: "input[tuiInputNumber][step]", inputs: ["step"] }, { kind: "pipe", type: TuiInspectPipe, name: "tuiInspectAny" }, { kind: "component", type: TuiSwitch, selector: "input[type=\"checkbox\"][tuiSwitch]", inputs: ["size", "showIcons"] }, { kind: "component", type: i4.TuiSelect, selector: "select[tuiTextfield]", inputs: ["placeholder"] }, { kind: "component", type: i4.TuiTextfieldComponent, selector: "tui-textfield", inputs: ["stringify", "content", "filler"] }, { kind: "directive", type: i4.TuiTextfieldDirective, selector: "input[tuiTextfield]:not([tuiInputCard]):not([tuiInputExpire]):not([tuiInputCVC])" }, { kind: "directive", type: i4.TuiTextfieldOptionsDirective, selector: "[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]", inputs: ["tuiTextfieldAppearance", "tuiTextfieldSize", "tuiTextfieldCleaner"] }, { kind: "directive", type: i4.TuiTextfieldDropdownDirective, selector: "ng-template[tuiTextfieldDropdown]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
82
87
|
}
|
|
83
88
|
export { TuiDocAPIItem };
|
|
84
89
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocAPIItem, decorators: [{
|
|
@@ -97,7 +102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
97
102
|
TuiInspectPipe,
|
|
98
103
|
TuiSwitch,
|
|
99
104
|
TuiTextfield,
|
|
100
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<td class=\"t-td\">\n <code\n class=\"t-name\"\n [class.t-name_banana]=\"name.startsWith('[(')\"\n [class.t-name_input]=\"name.startsWith('[')\"\n [class.t-name_output]=\"name.startsWith('(')\"\n >\n {{ name }}\n </code>\n <ng-content />\n</td>\n<td class=\"t-td\">\n <code class=\"t-type\">\n <ng-container *ngFor=\"let item of type | tuiDocTypeReference; let last = last\">\n <a\n *ngIf=\"item.reference; else default\"\n target=\"_blank\"\n class=\"t-reference\"\n [attr.href]=\"item.reference\"\n >\n {{ item.type }}\n <tui-icon\n icon=\"@tui.external-link\"\n [style.font-size.rem]=\"1\"\n />\n </a>\n <ng-template #default>\n {{ item.type }}\n </ng-template>\n <span *ngIf=\"!last\"> | </span>\n </ng-container>\n </code>\n</td>\n<td class=\"t-td\">\n <tui-textfield\n *ngIf=\"items.length; else noItems\"\n tuiChevron\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n [content]=\"content\"\n [tuiTextfieldCleaner]=\"type.includes('null') || type.includes('PolymorpheusContent')\"\n >\n <select\n placeholder=\"null\"\n tuiTextfield\n [ngModel]=\"value ?? null\"\n (ngModelChange)=\"onValueChange($event)\"\n ></select>\n <tui-data-list-wrapper\n *tuiTextfieldDropdown\n [itemContent]=\"content\"\n [items]=\"items\"\n />\n </tui-textfield>\n <ng-template\n #content\n let-data\n >\n <code [style.margin]=\"0\">{{ data | tuiInspectAny }}</code>\n </ng-template>\n <ng-template #noItems>\n <ng-container [ngSwitch]=\"type\">\n <input\n *ngSwitchCase=\"'boolean'\"\n tuiSwitch\n type=\"checkbox\"\n [id]=\"name\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n\n <tui-textfield\n *ngSwitchCase=\"'string'\"\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n >\n <input\n tuiTextfield\n [id]=\"name\"\n [ngModel]=\"value || ''\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n </tui-textfield>\n\n <tui-textfield\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n >\n <input\n tuiInputNumber\n [id]=\"name\"\n [ngModel]=\"value\"\n [step]=\"1\"\n (ngModelChange)=\"onValueChange($event || 0)\"\n />\n </tui-textfield>\n </ng-container>\n </ng-template>\n</td>\n", styles: [":host{box-shadow:inset 0 -1px var(--tui-border-normal)}.t-td{padding:1.5rem 2rem 1.5rem 0;vertical-align:top}.t-td:last-child{padding-inline-end:0;text-align:end}.t-name{display:flex!important;min-block-size:1.5rem;inline-size:-webkit-fit-content;inline-size:-moz-fit-content;inline-size:fit-content;margin:0 0 .5rem!important;-webkit-text-fill-color:var(--tui-background-accent-2-pressed)}.t-name_input{-webkit-text-fill-color:var(--tui-text-negative)}.t-name_banana{-webkit-text-fill-color:var(--tui-text-action)}.t-name_output{-webkit-text-fill-color:var(--tui-status-info)}.t-type{flex-wrap:wrap;align-items:center;justify-content:flex-start;min-block-size:1.5rem;margin:0!important}.t-reference{display:inline-flex;color:var(--tui-text-action);text-decoration:none;align-items:center;justify-content:center;gap:3px}.t-input{min-inline-size:10rem;margin-block-start:-.625rem}.t-input code{overflow:hidden;white-space:nowrap}@media screen and (max-width: 47.9625em){:host{gap:1rem;padding:1rem 0}.t-td{padding:0}.t-td:last-child{text-align:start}.t-input{margin:0}}\n"] }]
|
|
105
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<td class=\"t-td\">\n <code\n class=\"t-name\"\n [class.t-name_banana]=\"name.startsWith('[(')\"\n [class.t-name_input]=\"name.startsWith('[')\"\n [class.t-name_output]=\"name.startsWith('(')\"\n >\n {{ name }}\n </code>\n <ng-content />\n</td>\n<td class=\"t-td\">\n <code class=\"t-type\">\n <ng-container *ngFor=\"let item of type | tuiDocTypeReference; let last = last\">\n <a\n *ngIf=\"item.reference; else default\"\n target=\"_blank\"\n class=\"t-reference\"\n [attr.href]=\"item.reference\"\n >\n {{ item.type }}\n <tui-icon\n icon=\"@tui.external-link\"\n [style.font-size.rem]=\"1\"\n />\n </a>\n <ng-template #default>\n {{ item.type }}\n </ng-template>\n <span *ngIf=\"!last\"> | </span>\n </ng-container>\n </code>\n</td>\n<td class=\"t-td\">\n <tui-textfield\n *ngIf=\"items.length; else noItems\"\n tuiChevron\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n [content]=\"content\"\n [tuiTextfieldCleaner]=\"type.includes('null') || type.includes('PolymorpheusContent')\"\n >\n <select\n placeholder=\"null\"\n tuiTextfield\n [ngModel]=\"value ?? null\"\n (ngModelChange)=\"onValueChange($event)\"\n ></select>\n <tui-data-list-wrapper\n *tuiTextfieldDropdown\n [itemContent]=\"content\"\n [items]=\"items\"\n />\n </tui-textfield>\n <ng-template\n #content\n let-data\n >\n <code [style.margin]=\"0\">{{ data | tuiInspectAny }}</code>\n </ng-template>\n <ng-template #noItems>\n <ng-container [ngSwitch]=\"type\">\n <input\n *ngSwitchCase=\"'boolean'\"\n tuiSwitch\n type=\"checkbox\"\n [id]=\"name\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n\n <tui-textfield\n *ngSwitchCase=\"'string'\"\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n >\n <input\n tuiTextfield\n [id]=\"name\"\n [ngModel]=\"value || ''\"\n (ngModelChange)=\"onValueChange($event)\"\n />\n </tui-textfield>\n\n <tui-textfield\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n >\n <input\n tuiInputNumber\n [id]=\"name\"\n [max]=\"numberItem?.max ?? null\"\n [min]=\"numberItem?.min ?? null\"\n [ngModel]=\"value\"\n [step]=\"1\"\n (ngModelChange)=\"onValueChange($event || 0)\"\n />\n </tui-textfield>\n </ng-container>\n </ng-template>\n</td>\n", styles: [":host{box-shadow:inset 0 -1px var(--tui-border-normal)}.t-td{padding:1.5rem 2rem 1.5rem 0;vertical-align:top}.t-td:last-child{padding-inline-end:0;text-align:end}.t-name{display:flex!important;min-block-size:1.5rem;inline-size:-webkit-fit-content;inline-size:-moz-fit-content;inline-size:fit-content;margin:0 0 .5rem!important;-webkit-text-fill-color:var(--tui-background-accent-2-pressed)}.t-name_input{-webkit-text-fill-color:var(--tui-text-negative)}.t-name_banana{-webkit-text-fill-color:var(--tui-text-action)}.t-name_output{-webkit-text-fill-color:var(--tui-status-info)}.t-type{flex-wrap:wrap;align-items:center;justify-content:flex-start;min-block-size:1.5rem;margin:0!important}.t-reference{display:inline-flex;color:var(--tui-text-action);text-decoration:none;align-items:center;justify-content:center;gap:3px}.t-input{min-inline-size:10rem;margin-block-start:-.625rem}.t-input code{overflow:hidden;white-space:nowrap}@media screen and (max-width: 47.9625em){:host{gap:1rem;padding:1rem 0}.t-td{padding:0}.t-td:last-child{text-align:start}.t-input{margin:0}}\n"] }]
|
|
101
106
|
}], propDecorators: { name: [{
|
|
102
107
|
type: Input
|
|
103
108
|
}], type: [{
|
|
@@ -109,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
109
114
|
}], valueChange: [{
|
|
110
115
|
type: Output
|
|
111
116
|
}] } });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tZG9jL2NvbXBvbmVudHMvYXBpL2FwaS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9jb21wb25lbnRzL2FwaS9hcGktaXRlbS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFaEYsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxjQUFjLEVBQUUsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDeEUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzlELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1B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dUJBQXVCO3dCQUN2QixPQUFPO3dCQUNQLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxTQUFTO3dCQUNULFlBQVk7cUJBQ2YsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBVXhDLElBQUk7c0JBRFYsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJVSxXQUFXO3NCQUQxQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbiwgTmdGb3JPZiwgTmdJZiwgTmdTd2l0Y2gsIE5nU3dpdGNoQ2FzZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtBZnRlclZpZXdJbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB0eXBlIHtQYXJhbXN9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlLCBVcmxTZXJpYWxpemVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtUVUlfRE9DX1VSTF9TVEFURV9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tZG9jL3Rva2Vucyc7XG5pbXBvcnQge3R1aUNvZXJjZVZhbHVlLCB0dWlJbnNwZWN0QW55fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tZG9jL3V0aWxzJztcbmltcG9ydCB7dHVpSXNOdW1iZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aUFsZXJ0U2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9hbGVydCc7XG5pbXBvcnQge1R1aUljb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQge1R1aVRleHRmaWVsZH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQnO1xuaW1wb3J0IHtUdWlEYXRhTGlzdFdyYXBwZXJ9IGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9kYXRhLWxpc3Qtd3JhcHBlcic7XG5pbXBvcnQge1R1aUlucHV0TnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtbnVtYmVyJztcbmltcG9ydCB7VHVpU3dpdGNofSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc3dpdGNoJztcbmltcG9ydCB7VHVpQ2hldnJvbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzL2NoZXZyb24nO1xuXG5pbXBvcnQge1R1aUluc3BlY3RQaXBlfSBmcm9tICcuLi9kb2N1bWVudGF0aW9uL3BpcGVzL2luc3BlY3QucGlwZSc7XG5pbXBvcnQge1R1aURvY1R5cGVSZWZlcmVuY2VQaXBlfSBmcm9tICcuLi9kb2N1bWVudGF0aW9uL3BpcGVzL3R5cGUtcmVmZXJlbmNlLnBpcGUnO1xuXG5jb25zdCBTRVJJQUxJWkVEX1NVRkZJWCA9ICckJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3RyW3R1aURvY0FQSUl0ZW1dJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBOZ0Zvck9mLFxuICAgICAgICBOZ0lmLFxuICAgICAgICBOZ1N3aXRjaCxcbiAgICAgICAgTmdTd2l0Y2hDYXNlLFxuICAgICAgICBUdWlDaGV2cm9uLFxuICAgICAgICBUdWlEYXRhTGlzdFdyYXBwZXIsXG4gICAgICAgIFR1aURvY1R5cGVSZWZlcmVuY2VQaXBlLFxuICAgICAgICBUdWlJY29uLFxuICAgICAgICBUdWlJbnB1dE51bWJlcixcbiAgICAgICAgVHVpSW5zcGVjdFBpcGUsXG4gICAgICAgIFR1aVN3aXRjaCxcbiAgICAgICAgVHVpVGV4dGZpZWxkLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FwaS1pdGVtLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2FwaS1pdGVtLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRG9jQVBJSXRlbTxUPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25SZWYgPSBpbmplY3QoTG9jYXRpb24pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZhdGVkUm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdXJsU2VyaWFsaXplciA9IGluamVjdChVcmxTZXJpYWxpemVyKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybFN0YXRlSGFuZGxlciA9IGluamVjdChUVUlfRE9DX1VSTF9TVEFURV9IQU5ETEVSKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsZXJ0cyA9IGluamVjdChUdWlBbGVydFNlcnZpY2UpO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbmFtZSA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdHlwZSA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdmFsdWU/OiBUO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaXRlbXM6IHJlYWRvbmx5IFRbXSA9IFtdO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUPigpO1xuXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wYXJzZVBhcmFtcyh0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25WYWx1ZUNoYW5nZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2V0UXVlcnlQYXJhbSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGVtaXRFdmVudChldmVudDogdW5rbm93bik6IHZvaWQge1xuICAgICAgICBjb25zb2xlLmluZm8oJ2VtaXRFdmVudCcsIGV2ZW50KTtcblxuICAgICAgICBjb25zdCBhbGVydCA9XG4gICAgICAgICAgICAhZXZlbnQgfHwgZXZlbnQ/LnRvU3RyaW5nKCkgPT09ICdbb2JqZWN0IE9iamVjdF0nXG4gICAgICAgICAgICAgICAgPyB0dWlJbnNwZWN0QW55KGV2ZW50LCAyKVxuICAgICAgICAgICAgICAgIDogKGV2ZW50IGFzIHN0cmluZyk7XG5cbiAgICAgICAgdGhpcy5hbGVydHMub3BlbihhbGVydCwge2xhYmVsOiB0aGlzLm5hbWV9KS5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyQnJhY2tldHModmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlQWxsKC9bKClbXFxdXS9nLCAnJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZVBhcmFtcyhwYXJhbXM6IFBhcmFtcyk6IHZvaWQge1xuICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5jbGVhckJyYWNrZXRzKHRoaXMubmFtZSk7XG4gICAgICAgIGNvbnN0IHByb3BlcnR5VmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHBhcmFtc1tuYW1lXTtcbiAgICAgICAgY29uc3QgcHJvcGVydHlWYWx1ZVdpdGhTdWZmaXg6IG51bWJlciB8IHN0cmluZyB8IHVuZGVmaW5lZCA9XG4gICAgICAgICAgICBwYXJhbXNbYCR7bmFtZX0ke1NFUklBTElaRURfU1VGRklYfWBdO1xuXG4gICAgICAgIGlmICghcHJvcGVydHlWYWx1ZSAmJiAhcHJvcGVydHlWYWx1ZVdpdGhTdWZmaXgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCB2YWx1ZSA9XG4gICAgICAgICAgICAhIXByb3BlcnR5VmFsdWVXaXRoU3VmZml4ICYmIHRoaXMuaXRlbXNcbiAgICAgICAgICAgICAgICA/IHRoaXMuaXRlbXNbcHJvcGVydHlWYWx1ZVdpdGhTdWZmaXggYXMgbnVtYmVyXVxuICAgICAgICAgICAgICAgIDogdHVpQ29lcmNlVmFsdWUocHJvcGVydHlWYWx1ZSk7XG5cbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gJ3N0cmluZycgJiYgdHVpSXNOdW1iZXIodmFsdWUpKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UodmFsdWUgYXMgVCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRRdWVyeVBhcmFtKHZhbHVlOiBUIHwgYm9vbGVhbiB8IG51bWJlciB8IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdHJlZSA9IHRoaXMudXJsU2VyaWFsaXplci5wYXJzZSh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSk7XG5cbiAgICAgICAgY29uc3QgaXNWYWx1ZUF2YWlsYWJsZUJ5S2V5ID0gdmFsdWUgaW5zdGFuY2VvZiBPYmplY3Q7XG4gICAgICAgIGNvbnN0IGNvbXB1dGVkVmFsdWUgPVxuICAgICAgICAgICAgaXNWYWx1ZUF2YWlsYWJsZUJ5S2V5ICYmIHRoaXMuaXRlbXMgPyB0aGlzLml0ZW1zLmluZGV4T2YodmFsdWUgYXMgVCkgOiB2YWx1ZTtcblxuICAgICAgICBjb25zdCBzdWZmaXggPSBpc1ZhbHVlQXZhaWxhYmxlQnlLZXkgPyBTRVJJQUxJWkVEX1NVRkZJWCA6ICcnO1xuICAgICAgICBjb25zdCBwcm9wTmFtZSA9IHRoaXMuY2xlYXJCcmFja2V0cyh0aGlzLm5hbWUpICsgc3VmZml4O1xuXG4gICAgICAgIHRyZWUucXVlcnlQYXJhbXMgPSB7XG4gICAgICAgICAgICAuLi50cmVlLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgW3Byb3BOYW1lXTogY29tcHV0ZWRWYWx1ZSxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmxvY2F0aW9uUmVmLmdvKHRoaXMudXJsU3RhdGVIYW5kbGVyKHRyZWUpKTtcbiAgICB9XG59XG4iLCI8dGQgY2xhc3M9XCJ0LXRkXCI+XG4gICAgPGNvZGVcbiAgICAgICAgY2xhc3M9XCJ0LW5hbWVcIlxuICAgICAgICBbY2xhc3MudC1uYW1lX2JhbmFuYV09XCJuYW1lLnN0YXJ0c1dpdGgoJ1soJylcIlxuICAgICAgICBbY2xhc3MudC1uYW1lX2lucHV0XT1cIm5hbWUuc3RhcnRzV2l0aCgnWycpXCJcbiAgICAgICAgW2NsYXNzLnQtbmFtZV9vdXRwdXRdPVwibmFtZS5zdGFydHNXaXRoKCcoJylcIlxuICAgID5cbiAgICAgICAge3sgbmFtZSB9fVxuICAgIDwvY29kZT5cbiAgICA8bmctY29udGVudCAvPlxuPC90ZD5cbjx0ZCBjbGFzcz1cInQtdGRcIj5cbiAgICA8Y29kZSBjbGFzcz1cInQtdHlwZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHR5cGUgfCB0dWlEb2NUeXBlUmVmZXJlbmNlOyBsZXQgbGFzdCA9IGxhc3RcIj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtLnJlZmVyZW5jZTsgZWxzZSBkZWZhdWx0XCJcbiAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1yZWZlcmVuY2VcIlxuICAgICAgICAgICAgICAgIFthdHRyLmhyZWZdPVwiaXRlbS5yZWZlcmVuY2VcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGl0ZW0udHlwZSB9fVxuICAgICAgICAgICAgICAgIDx0dWktaWNvblxuICAgICAgICAgICAgICAgICAgICBpY29uPVwiQHR1aS5leHRlcm5hbC1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmZvbnQtc2l6ZS5yZW1dPVwiMVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdD5cbiAgICAgICAgICAgICAgICB7eyBpdGVtLnR5cGUgfX1cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFsYXN0XCI+Jm5ic3A7fCZuYnNwOzwvc3Bhbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9jb2RlPlxuPC90ZD5cbjx0ZCBjbGFzcz1cInQtdGRcIj5cbiAgICA8dHVpLXRleHRmaWVsZFxuICAgICAgICAqbmdJZj1cIml0ZW1zLmxlbmd0aDsgZWxzZSBub0l0ZW1zXCJcbiAgICAgICAgdHVpQ2hldnJvblxuICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgICAgIFtjb250ZW50XT1cImNvbnRlbnRcIlxuICAgICAgICBbdHVpVGV4dGZpZWxkQ2xlYW5lcl09XCJ0eXBlLmluY2x1ZGVzKCdudWxsJykgfHwgdHlwZS5pbmNsdWRlcygnUG9seW1vcnBoZXVzQ29udGVudCcpXCJcbiAgICA+XG4gICAgICAgIDxzZWxlY3RcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwibnVsbFwiXG4gICAgICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlID8/IG51bGxcIlxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgPjwvc2VsZWN0PlxuICAgICAgICA8dHVpLWRhdGEtbGlzdC13cmFwcGVyXG4gICAgICAgICAgICAqdHVpVGV4dGZpZWxkRHJvcGRvd25cbiAgICAgICAgICAgIFtpdGVtQ29udGVudF09XCJjb250ZW50XCJcbiAgICAgICAgICAgIFtpdGVtc109XCJpdGVtc1wiXG4gICAgICAgIC8+XG4gICAgPC90dWktdGV4dGZpZWxkPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAjY29udGVudFxuICAgICAgICBsZXQtZGF0YVxuICAgID5cbiAgICAgICAgPGNvZGUgW3N0eWxlLm1hcmdpbl09XCIwXCI+e3sgZGF0YSB8IHR1aUluc3BlY3RBbnkgfX08L2NvZGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI25vSXRlbXM+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInR5cGVcIj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInYm9vbGVhbidcIlxuICAgICAgICAgICAgICAgIHR1aVN3aXRjaFxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgW2lkXT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgPHR1aS10ZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ3N0cmluZydcIlxuICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZSB8fCAnJ1wiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvdHVpLXRleHRmaWVsZD5cblxuICAgICAgICAgICAgPHR1aS10ZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ251bWJlcidcIlxuICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHVpSW5wdXROdW1iZXJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtzdGVwXT1cIjFcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudCB8fCAwKVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvdHVpLXRleHRmaWVsZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvdGQ+XG4iXX0=
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tZG9jL2NvbXBvbmVudHMvYXBpL2FwaS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9jb21wb25lbnRzL2FwaS9hcGktaXRlbS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFaEYsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxjQUFjLEVBQUUsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDeEUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzlELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1B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NEZBQWIsYUFBYTtrQkF0QnpCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLG1CQUFtQixXQUNwQjt3QkFDTCxXQUFXO3dCQUNYLE9BQU87d0JBQ1AsSUFBSTt3QkFDSixRQUFRO3dCQUNSLFlBQVk7d0JBQ1osVUFBVTt3QkFDVixrQkFBa0I7d0JBQ2xCLHVCQUF1Qjt3QkFDdkIsT0FBTzt3QkFDUCxjQUFjO3dCQUNkLGNBQWM7d0JBQ2QsU0FBUzt3QkFDVCxZQUFZO3FCQUNmLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQWV4QyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSVUsV0FBVztzQkFEMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYXRpb24sIE5nRm9yT2YsIE5nSWYsIE5nU3dpdGNoLCBOZ1N3aXRjaENhc2V9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7QWZ0ZXJWaWV3SW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgdHlwZSB7UGFyYW1zfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgVXJsU2VyaWFsaXplcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7VFVJX0RPQ19VUkxfU1RBVEVfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWRvYy90b2tlbnMnO1xuaW1wb3J0IHt0dWlDb2VyY2VWYWx1ZSwgdHVpSW5zcGVjdEFueX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWRvYy91dGlscyc7XG5pbXBvcnQge3R1aUlzTnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlBbGVydFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvYWxlcnQnO1xuaW1wb3J0IHtUdWlJY29ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHtUdWlUZXh0ZmllbGR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvdGV4dGZpZWxkJztcbmltcG9ydCB7VHVpRGF0YUxpc3RXcmFwcGVyfSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXInO1xuaW1wb3J0IHtUdWlJbnB1dE51bWJlcn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LW51bWJlcic7XG5pbXBvcnQge1R1aVN3aXRjaH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3N3aXRjaCc7XG5pbXBvcnQge1R1aUNoZXZyb259IGZyb20gJ0B0YWlnYS11aS9raXQvZGlyZWN0aXZlcy9jaGV2cm9uJztcblxuaW1wb3J0IHtUdWlJbnNwZWN0UGlwZX0gZnJvbSAnLi4vZG9jdW1lbnRhdGlvbi9waXBlcy9pbnNwZWN0LnBpcGUnO1xuaW1wb3J0IHtUdWlEb2NUeXBlUmVmZXJlbmNlUGlwZX0gZnJvbSAnLi4vZG9jdW1lbnRhdGlvbi9waXBlcy90eXBlLXJlZmVyZW5jZS5waXBlJztcbmltcG9ydCB7VHVpRG9jQVBJTnVtYmVySXRlbX0gZnJvbSAnLi9hcGktaXRlbS1udW1iZXIuZGlyZWN0aXZlJztcblxuY29uc3QgU0VSSUFMSVpFRF9TVUZGSVggPSAnJCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0clt0dWlEb2NBUElJdGVtXScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdGb3JPZixcbiAgICAgICAgTmdJZixcbiAgICAgICAgTmdTd2l0Y2gsXG4gICAgICAgIE5nU3dpdGNoQ2FzZSxcbiAgICAgICAgVHVpQ2hldnJvbixcbiAgICAgICAgVHVpRGF0YUxpc3RXcmFwcGVyLFxuICAgICAgICBUdWlEb2NUeXBlUmVmZXJlbmNlUGlwZSxcbiAgICAgICAgVHVpSWNvbixcbiAgICAgICAgVHVpSW5wdXROdW1iZXIsXG4gICAgICAgIFR1aUluc3BlY3RQaXBlLFxuICAgICAgICBUdWlTd2l0Y2gsXG4gICAgICAgIFR1aVRleHRmaWVsZCxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hcGktaXRlbS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hcGktaXRlbS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aURvY0FQSUl0ZW08VD4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2F0aW9uUmVmID0gaW5qZWN0KExvY2F0aW9uKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybFNlcmlhbGl6ZXIgPSBpbmplY3QoVXJsU2VyaWFsaXplcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSB1cmxTdGF0ZUhhbmRsZXIgPSBpbmplY3QoVFVJX0RPQ19VUkxfU1RBVEVfSEFORExFUik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGVydHMgPSBpbmplY3QoVHVpQWxlcnRTZXJ2aWNlKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBudW1iZXJJdGVtID0gaW5qZWN0KFR1aURvY0FQSU51bWJlckl0ZW0sIHtcbiAgICAgICAgc2VsZjogdHJ1ZSxcbiAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgfSk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBuYW1lID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0eXBlID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2YWx1ZT86IFQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpdGVtczogcmVhZG9ubHkgVFtdID0gW107XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhcnNlUGFyYW1zKHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblZhbHVlQ2hhbmdlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICAgICAgdGhpcy5zZXRRdWVyeVBhcmFtKHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZW1pdEV2ZW50KGV2ZW50OiB1bmtub3duKTogdm9pZCB7XG4gICAgICAgIGNvbnNvbGUuaW5mbygnZW1pdEV2ZW50JywgZXZlbnQpO1xuXG4gICAgICAgIGNvbnN0IGFsZXJ0ID1cbiAgICAgICAgICAgICFldmVudCB8fCBldmVudD8udG9TdHJpbmcoKSA9PT0gJ1tvYmplY3QgT2JqZWN0XSdcbiAgICAgICAgICAgICAgICA/IHR1aUluc3BlY3RBbnkoZXZlbnQsIDIpXG4gICAgICAgICAgICAgICAgOiAoZXZlbnQgYXMgc3RyaW5nKTtcblxuICAgICAgICB0aGlzLmFsZXJ0cy5vcGVuKGFsZXJ0LCB7bGFiZWw6IHRoaXMubmFtZX0pLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJCcmFja2V0cyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnJlcGxhY2VBbGwoL1soKVtcXF1dL2csICcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHBhcnNlUGFyYW1zKHBhcmFtczogUGFyYW1zKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLmNsZWFyQnJhY2tldHModGhpcy5uYW1lKTtcbiAgICAgICAgY29uc3QgcHJvcGVydHlWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gcGFyYW1zW25hbWVdO1xuICAgICAgICBjb25zdCBwcm9wZXJ0eVZhbHVlV2l0aFN1ZmZpeDogbnVtYmVyIHwgc3RyaW5nIHwgdW5kZWZpbmVkID1cbiAgICAgICAgICAgIHBhcmFtc1tgJHtuYW1lfSR7U0VSSUFMSVpFRF9TVUZGSVh9YF07XG5cbiAgICAgICAgaWYgKCFwcm9wZXJ0eVZhbHVlICYmICFwcm9wZXJ0eVZhbHVlV2l0aFN1ZmZpeCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHZhbHVlID1cbiAgICAgICAgICAgICEhcHJvcGVydHlWYWx1ZVdpdGhTdWZmaXggJiYgdGhpcy5pdGVtc1xuICAgICAgICAgICAgICAgID8gdGhpcy5pdGVtc1twcm9wZXJ0eVZhbHVlV2l0aFN1ZmZpeCBhcyBudW1iZXJdXG4gICAgICAgICAgICAgICAgOiB0dWlDb2VyY2VWYWx1ZShwcm9wZXJ0eVZhbHVlKTtcblxuICAgICAgICBpZiAodGhpcy50eXBlID09PSAnc3RyaW5nJyAmJiB0dWlJc051bWJlcih2YWx1ZSkpIHtcbiAgICAgICAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZSh2YWx1ZSBhcyBUKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFF1ZXJ5UGFyYW0odmFsdWU6IFQgfCBib29sZWFuIHwgbnVtYmVyIHwgc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBjb25zdCB0cmVlID0gdGhpcy51cmxTZXJpYWxpemVyLnBhcnNlKHRoaXMubG9jYXRpb25SZWYucGF0aCgpKTtcblxuICAgICAgICBjb25zdCBpc1ZhbHVlQXZhaWxhYmxlQnlLZXkgPSB2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdDtcbiAgICAgICAgY29uc3QgY29tcHV0ZWRWYWx1ZSA9XG4gICAgICAgICAgICBpc1ZhbHVlQXZhaWxhYmxlQnlLZXkgJiYgdGhpcy5pdGVtcyA/IHRoaXMuaXRlbXMuaW5kZXhPZih2YWx1ZSBhcyBUKSA6IHZhbHVlO1xuXG4gICAgICAgIGNvbnN0IHN1ZmZpeCA9IGlzVmFsdWVBdmFpbGFibGVCeUtleSA/IFNFUklBTElaRURfU1VGRklYIDogJyc7XG4gICAgICAgIGNvbnN0IHByb3BOYW1lID0gdGhpcy5jbGVhckJyYWNrZXRzKHRoaXMubmFtZSkgKyBzdWZmaXg7XG5cbiAgICAgICAgdHJlZS5xdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgICAgIC4uLnRyZWUucXVlcnlQYXJhbXMsXG4gICAgICAgICAgICBbcHJvcE5hbWVdOiBjb21wdXRlZFZhbHVlLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMubG9jYXRpb25SZWYuZ28odGhpcy51cmxTdGF0ZUhhbmRsZXIodHJlZSkpO1xuICAgIH1cbn1cbiIsIjx0ZCBjbGFzcz1cInQtdGRcIj5cbiAgICA8Y29kZVxuICAgICAgICBjbGFzcz1cInQtbmFtZVwiXG4gICAgICAgIFtjbGFzcy50LW5hbWVfYmFuYW5hXT1cIm5hbWUuc3RhcnRzV2l0aCgnWygnKVwiXG4gICAgICAgIFtjbGFzcy50LW5hbWVfaW5wdXRdPVwibmFtZS5zdGFydHNXaXRoKCdbJylcIlxuICAgICAgICBbY2xhc3MudC1uYW1lX291dHB1dF09XCJuYW1lLnN0YXJ0c1dpdGgoJygnKVwiXG4gICAgPlxuICAgICAgICB7eyBuYW1lIH19XG4gICAgPC9jb2RlPlxuICAgIDxuZy1jb250ZW50IC8+XG48L3RkPlxuPHRkIGNsYXNzPVwidC10ZFwiPlxuICAgIDxjb2RlIGNsYXNzPVwidC10eXBlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdHlwZSB8IHR1aURvY1R5cGVSZWZlcmVuY2U7IGxldCBsYXN0ID0gbGFzdFwiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0ucmVmZXJlbmNlOyBlbHNlIGRlZmF1bHRcIlxuICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXJlZmVyZW5jZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaHJlZl09XCJpdGVtLnJlZmVyZW5jZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgaXRlbS50eXBlIH19XG4gICAgICAgICAgICAgICAgPHR1aS1pY29uXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJAdHVpLmV4dGVybmFsLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUuZm9udC1zaXplLnJlbV09XCIxXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0PlxuICAgICAgICAgICAgICAgIHt7IGl0ZW0udHlwZSB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWxhc3RcIj4mbmJzcDt8Jm5ic3A7PC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2NvZGU+XG48L3RkPlxuPHRkIGNsYXNzPVwidC10ZFwiPlxuICAgIDx0dWktdGV4dGZpZWxkXG4gICAgICAgICpuZ0lmPVwiaXRlbXMubGVuZ3RoOyBlbHNlIG5vSXRlbXNcIlxuICAgICAgICB0dWlDaGV2cm9uXG4gICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiXG4gICAgICAgIFt0dWlUZXh0ZmllbGRDbGVhbmVyXT1cInR5cGUuaW5jbHVkZXMoJ251bGwnKSB8fCB0eXBlLmluY2x1ZGVzKCdQb2x5bW9ycGhldXNDb250ZW50JylcIlxuICAgID5cbiAgICAgICAgPHNlbGVjdFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJudWxsXCJcbiAgICAgICAgICAgIHR1aVRleHRmaWVsZFxuICAgICAgICAgICAgW25nTW9kZWxdPVwidmFsdWUgPz8gbnVsbFwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICA+PC9zZWxlY3Q+XG4gICAgICAgIDx0dWktZGF0YS1saXN0LXdyYXBwZXJcbiAgICAgICAgICAgICp0dWlUZXh0ZmllbGREcm9wZG93blxuICAgICAgICAgICAgW2l0ZW1Db250ZW50XT1cImNvbnRlbnRcIlxuICAgICAgICAgICAgW2l0ZW1zXT1cIml0ZW1zXCJcbiAgICAgICAgLz5cbiAgICA8L3R1aS10ZXh0ZmllbGQ+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICNjb250ZW50XG4gICAgICAgIGxldC1kYXRhXG4gICAgPlxuICAgICAgICA8Y29kZSBbc3R5bGUubWFyZ2luXT1cIjBcIj57eyBkYXRhIHwgdHVpSW5zcGVjdEFueSB9fTwvY29kZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwidHlwZVwiPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidib29sZWFuJ1wiXG4gICAgICAgICAgICAgICAgdHVpU3dpdGNoXG4gICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICBbaWRdPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICA8dHVpLXRleHRmaWVsZFxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInc3RyaW5nJ1wiXG4gICAgICAgICAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlIHx8ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC90dWktdGV4dGZpZWxkPlxuXG4gICAgICAgICAgICA8dHVpLXRleHRmaWVsZFxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInbnVtYmVyJ1wiXG4gICAgICAgICAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICB0dWlJbnB1dE51bWJlclxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFttYXhdPVwibnVtYmVySXRlbT8ubWF4ID8/IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbbWluXT1cIm51bWJlckl0ZW0/Lm1pbiA/PyBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBbc3RlcF09XCIxXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQgfHwgMClcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L3R1aS10ZXh0ZmllbGQ+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L3RkPlxuIl19
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from './api/api.component';
|
|
2
2
|
export * from './api/api-item.component';
|
|
3
|
+
export * from './api/api-item-number.directive';
|
|
3
4
|
export * from './code';
|
|
4
5
|
export * from './copy';
|
|
5
6
|
export * from './demo';
|
|
@@ -29,4 +30,4 @@ export * from './page/page.component';
|
|
|
29
30
|
export * from './page/page.providers';
|
|
30
31
|
export * from './page/page-tab.directive';
|
|
31
32
|
export * from './theme-switcher/theme-switcher.component';
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1kb2MvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDJDQUEyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcGkvYXBpLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9hcGktaXRlbS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvYXBpLWl0ZW0tbnVtYmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvZGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3B5JztcbmV4cG9ydCAqIGZyb20gJy4vZGVtbyc7XG5leHBvcnQgKiBmcm9tICcuL2RvYy10YWInO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudGF0aW9uL2RvY3VtZW50YXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnRhdGlvbi9kb2N1bWVudGF0aW9uLXByb3BlcnR5LWNvbm5lY3Rvci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudGF0aW9uL3BpcGVzL2NsZWFuZXIucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50YXRpb24vcGlwZXMvY29sb3IucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50YXRpb24vcGlwZXMvaW5zcGVjdC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnRhdGlvbi9waXBlcy9vcGFjaXR5LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudGF0aW9uL3BpcGVzL29wdGlvbmFsLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudGF0aW9uL3BpcGVzL3ByaW1pdGl2ZS1wb2x5bW9ycGhldXMtY29udGVudC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnRhdGlvbi9waXBlcy9zdHJpcC1vcHRpb25hbC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnRhdGlvbi9waXBlcy90eXBlLXJlZmVyZW5jZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZXhhbXBsZS9leGFtcGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2V4YW1wbGUvZXhhbXBsZS5vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vZXhhbXBsZS9leGFtcGxlLWdldC10YWJzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcm5hbC9oZWFkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcm5hbC9zZWUtYWxzbyc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVybmFsL3NvdXJjZS1jb2RlL3NvdXJjZS1jb2RlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlLXN3aXRjaGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbWFpbi9tYWluLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9uYXZpZ2F0aW9uL25hdmlnYXRpb24ucHJvdmlkZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbmF2aWdhdGlvbi9zY3JvbGwtaW50by12aWV3LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3BhZ2UvcGFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wYWdlL3BhZ2UucHJvdmlkZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vcGFnZS9wYWdlLXRhYi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90aGVtZS1zd2l0Y2hlci90aGVtZS1zd2l0Y2hlci5jb21wb25lbnQnO1xuIl19
|
|
@@ -52,7 +52,7 @@ class TuiDocLanguageSwitcher {
|
|
|
52
52
|
this.open = false;
|
|
53
53
|
}
|
|
54
54
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocLanguageSwitcher, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
55
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocLanguageSwitcher, isStandalone: true, selector: "tui-doc-language-switcher", providers: [tuiScrollbarOptionsProvider({ mode: 'hover' })], ngImport: i0, template: "<tui-badged-content>\n <img\n alt=\"\"\n size=\"s\"\n tuiBadge\n tuiSlot=\"bottom\"\n [src]=\"flags.get(language.value ?? '') || flags.get(switcher.language) | tuiFlag\"\n />\n\n <button\n appearance=\"outline-grayscale\"\n size=\"s\"\n tuiButtonSelect\n tuiIconButton\n type=\"button\"\n [formControl]=\"language\"\n [iconStart]=\"icons.languages\"\n >\n Language\n <tui-data-list *tuiTextfieldDropdown>\n <tui-opt-group label=\"Language of components\">\n <button\n *ngFor=\"let name of names\"\n tuiOption\n type=\"button\"\n [value]=\"name | titlecase\"\n (click)=\"setLang(name)\"\n >\n <img\n alt=\"\"\n class=\"t-flag\"\n [src]=\"flags.get(name) | tuiFlag\"\n />\n {{ name | titlecase }}\n </button>\n </tui-opt-group>\n </tui-data-list>\n </button>\n</tui-badged-content>\n", styles: [".t-flag{inline-size:1.75rem;block-size:1.75rem;border-radius:50%;margin-right:.5rem}[tuiOption]{justify-content:flex-start;gap:.5rem}img{box-shadow:inset 0 0 0 1px var(--tui-border-normal)}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "directive", type: TuiBadge, selector: "tui-badge,[tuiBadge]", inputs: ["size"] }, { kind: "directive", type: i2.TuiBadgedContentDirective, selector: "[tuiSlot]", inputs: ["tuiSlot"] }, { kind: "component", type: i2.TuiBadgedContentComponent, selector: "tui-badged-content" }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: TuiButtonSelect, selector: "button[tuiButtonSelect]" }, { kind: "component", type: i3.TuiDataListComponent, selector: "tui-data-list", inputs: ["emptyContent", "size"] }, { kind: "component", type: i3.TuiOption, selector: "button[tuiOption], a[tuiOption], label[tuiOption]", inputs: ["disabled", "value"] }, { kind: "directive", type: i3.TuiOptGroup, selector: "tui-opt-group", inputs: ["label"] }, { kind: "pipe", type: TuiFlagPipe, name: "tuiFlag" }, { kind: "directive", type: i4.TuiTextfieldDropdownDirective, selector: "ng-template[tuiTextfieldDropdown]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
55
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocLanguageSwitcher, isStandalone: true, selector: "tui-doc-language-switcher", providers: [tuiScrollbarOptionsProvider({ mode: 'hover' })], ngImport: i0, template: "<tui-badged-content>\n <img\n alt=\"\"\n size=\"s\"\n tuiBadge\n tuiSlot=\"bottom\"\n [src]=\"flags.get(language.value ?? '') || flags.get(switcher.language) | tuiFlag\"\n />\n\n <button\n appearance=\"outline-grayscale\"\n size=\"s\"\n tuiButtonSelect\n tuiIconButton\n type=\"button\"\n [formControl]=\"language\"\n [iconStart]=\"icons.languages\"\n >\n Language\n <tui-data-list *tuiTextfieldDropdown>\n <tui-opt-group label=\"Language of components\">\n <button\n *ngFor=\"let name of names\"\n tuiOption\n type=\"button\"\n [value]=\"name | titlecase\"\n (click)=\"setLang(name)\"\n >\n <img\n alt=\"\"\n class=\"t-flag\"\n [src]=\"flags.get(name) | tuiFlag\"\n />\n {{ name | titlecase }}\n </button>\n </tui-opt-group>\n </tui-data-list>\n </button>\n</tui-badged-content>\n", styles: [".t-flag{inline-size:1.75rem;block-size:1.75rem;border-radius:50%;margin-right:.5rem}[tuiOption]{justify-content:flex-start;gap:.5rem}img{box-shadow:inset 0 0 0 1px var(--tui-border-normal)}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "directive", type: TuiBadge, selector: "tui-badge,[tuiBadge]", inputs: ["size"] }, { kind: "directive", type: i2.TuiBadgedContentDirective, selector: "[tuiSlot]", inputs: ["tuiSlot"] }, { kind: "component", type: i2.TuiBadgedContentComponent, selector: "tui-badged-content" }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: TuiButtonSelect, selector: "button[tuiButtonSelect]" }, { kind: "component", type: i3.TuiDataListComponent, selector: "tui-data-list", inputs: ["emptyContent", "size"] }, { kind: "component", type: i3.TuiOption, selector: "button[tuiOption]:not([new]), a[tuiOption]:not([new]), label[tuiOption]:not([new])", inputs: ["disabled", "value"] }, { kind: "directive", type: i3.TuiOptGroup, selector: "tui-opt-group", inputs: ["label"] }, { kind: "pipe", type: TuiFlagPipe, name: "tuiFlag" }, { kind: "directive", type: i4.TuiTextfieldDropdownDirective, selector: "ng-template[tuiTextfieldDropdown]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
56
56
|
}
|
|
57
57
|
export { TuiDocLanguageSwitcher };
|
|
58
58
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocLanguageSwitcher, decorators: [{
|
|
@@ -74,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
74
74
|
function capitalize(value) {
|
|
75
75
|
return `${value.charAt(0).toUpperCase()}${value.slice(1)}`;
|
|
76
76
|
}
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1kb2MvY29tcG9uZW50cy9sYW5ndWFnZS1zd2l0Y2hlci9pbmRleC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9jb21wb25lbnRzL2xhbmd1YWdlLXN3aXRjaGVyL2luZGV4Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFdEQsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQzs7Ozs7O0FBRXZFLE1BcUJhLHNCQUFzQjtJQXJCbkM7UUFzQnVCLFVBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUIsYUFBUSxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzlDLGFBQVEsR0FBRyxJQUFJLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRXhFLFNBQUksR0FBRyxLQUFLLENBQUM7UUFFUCxVQUFLLEdBQUcsSUFBSSxHQUFHLENBQXFDO1lBQ2hFLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQztZQUNwQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUM7WUFDakIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDO1lBQ2YsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO1lBQ2pCLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQztZQUNoQixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUM7WUFDaEIsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDO1lBQ2hCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQztZQUNqQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUM7WUFDZixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUM7WUFDaEIsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDO1lBQ2hCLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQztZQUNwQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUM7WUFDZixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUM7WUFDaEIsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDO1lBQ3BCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQztZQUNqQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUM7WUFDakIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO1lBQ2pCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQztZQUNuQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUM7U0FDdkIsQ0FBQyxDQUFDO1FBRWEsVUFBSyxHQUFzQixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztLQU81RTtJQUxVLE9BQU8sQ0FBQyxJQUFxQjtRQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDOytHQXBDUSxzQkFBc0I7bUdBQXRCLHNCQUFzQix3RUFGcEIsQ0FBQywyQkFBMkIsQ0FBQyxFQUFDLElBQUksRUFBRSxPQUFPLEVBQUMsQ0FBQyxDQUFDLDBCQ2xDN0QsdXFDQXVDQSx5UERwQlEsT0FBTyxrSEFFUCxtQkFBbUIscVRBQ25CLGFBQWEsa0RBQ2IsUUFBUSxxUkFFUixTQUFTLG9JQUNULGVBQWUsdWJBRWYsV0FBVzs7U0FRTixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFyQmxDLFNBQVM7aUNBQ00sSUFBSSxZQUNOLDJCQUEyQixXQUM1Qjt3QkFDTCxPQUFPO3dCQUNQLElBQUk7d0JBQ0osbUJBQW1CO3dCQUNuQixhQUFhO3dCQUNiLFFBQVE7d0JBQ1IsZ0JBQWdCO3dCQUNoQixTQUFTO3dCQUNULGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxXQUFXO3dCQUNYLFlBQVk7cUJBQ2YsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQywyQkFBMkIsQ0FBQyxFQUFDLElBQUksRUFBRSxPQUFPLEVBQUMsQ0FBQyxDQUFDOztBQXlDN0QsU0FBUyxVQUFVLENBQUMsS0FBYTtJQUM3QixPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDL0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdGb3JPZiwgTmdJZiwgVGl0bGVDYXNlUGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7VFVJX0RPQ19JQ09OU30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWRvYy90b2tlbnMnO1xuaW1wb3J0IHtUdWlCdXR0b259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7VHVpRGF0YUxpc3R9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0JztcbmltcG9ydCB7dHVpU2Nyb2xsYmFyT3B0aW9uc1Byb3ZpZGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL3Njcm9sbGJhcic7XG5pbXBvcnQge1R1aVRleHRmaWVsZH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQnO1xuaW1wb3J0IHtUdWlGbGFnUGlwZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvcGlwZXMvZmxhZyc7XG5pbXBvcnQgdHlwZSB7VHVpQ291bnRyeUlzb0NvZGUsIFR1aUxhbmd1YWdlTmFtZX0gZnJvbSAnQHRhaWdhLXVpL2kxOG4vdHlwZXMnO1xuaW1wb3J0IHtUdWlMYW5ndWFnZVN3aXRjaGVyU2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2kxOG4vdXRpbHMnO1xuaW1wb3J0IHtUdWlCYWRnZX0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7VHVpQmFkZ2VkQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2JhZGdlZC1jb250ZW50JztcbmltcG9ydCB7VHVpQnV0dG9uU2VsZWN0fSBmcm9tICdAdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMvYnV0dG9uLXNlbGVjdCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktZG9jLWxhbmd1YWdlLXN3aXRjaGVyJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIE5nRm9yT2YsXG4gICAgICAgIE5nSWYsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIFRpdGxlQ2FzZVBpcGUsXG4gICAgICAgIFR1aUJhZGdlLFxuICAgICAgICBUdWlCYWRnZWRDb250ZW50LFxuICAgICAgICBUdWlCdXR0b24sXG4gICAgICAgIFR1aUJ1dHRvblNlbGVjdCxcbiAgICAgICAgVHVpRGF0YUxpc3QsXG4gICAgICAgIFR1aUZsYWdQaXBlLFxuICAgICAgICBUdWlUZXh0ZmllbGQsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5kZXguaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaW5kZXgubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW3R1aVNjcm9sbGJhck9wdGlvbnNQcm92aWRlcih7bW9kZTogJ2hvdmVyJ30pXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRG9jTGFuZ3VhZ2VTd2l0Y2hlciB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9ET0NfSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzd2l0Y2hlciA9IGluamVjdChUdWlMYW5ndWFnZVN3aXRjaGVyU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxhbmd1YWdlID0gbmV3IEZvcm1Db250cm9sKGNhcGl0YWxpemUodGhpcy5zd2l0Y2hlci5sYW5ndWFnZSkpO1xuXG4gICAgcHJvdGVjdGVkIG9wZW4gPSBmYWxzZTtcblxuICAgIHB1YmxpYyByZWFkb25seSBmbGFncyA9IG5ldyBNYXA8VHVpTGFuZ3VhZ2VOYW1lLCBUdWlDb3VudHJ5SXNvQ29kZT4oW1xuICAgICAgICBbJ2JlbGFydXNpYW4nLCAnQlknXSxcbiAgICAgICAgWydjaGluZXNlJywgJ0NOJ10sXG4gICAgICAgIFsnZHV0Y2gnLCAnTkwnXSxcbiAgICAgICAgWydlbmdsaXNoJywgJ0dCJ10sXG4gICAgICAgIFsnZnJlbmNoJywgJ0ZSJ10sXG4gICAgICAgIFsnZ2VybWFuJywgJ0RFJ10sXG4gICAgICAgIFsnaGVicmV3JywgJ0lMJ10sXG4gICAgICAgIFsnaXRhbGlhbicsICdJVCddLFxuICAgICAgICBbJ2phcGFuJywgJ0pQJ10sXG4gICAgICAgIFsna2F6YWtoJywgJ0taJ10sXG4gICAgICAgIFsna29yZWFuJywgJ0tSJ10sXG4gICAgICAgIFsnbGl0aHVhbmlhbicsICdMVCddLFxuICAgICAgICBbJ21hbGF5JywgJ01ZJ10sXG4gICAgICAgIFsncG9saXNoJywgJ1BMJ10sXG4gICAgICAgIFsncG9ydHVndWVzZScsICdQVCddLFxuICAgICAgICBbJ3J1c3NpYW4nLCAnUlUnXSxcbiAgICAgICAgWydzcGFuaXNoJywgJ0VTJ10sXG4gICAgICAgIFsndHVya2lzaCcsICdUUiddLFxuICAgICAgICBbJ3VrcmFpbmlhbicsICdVQSddLFxuICAgICAgICBbJ3ZpZXRuYW1lc2UnLCAnVk4nXSxcbiAgICBdKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBuYW1lczogVHVpTGFuZ3VhZ2VOYW1lW10gPSBBcnJheS5mcm9tKHRoaXMuZmxhZ3Mua2V5cygpKTtcblxuICAgIHB1YmxpYyBzZXRMYW5nKGxhbmc6IFR1aUxhbmd1YWdlTmFtZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmxhbmd1YWdlLnNldFZhbHVlKGxhbmcpO1xuICAgICAgICB0aGlzLnN3aXRjaGVyLnNldExhbmd1YWdlKGxhbmcpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGNhcGl0YWxpemUodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3ZhbHVlLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7dmFsdWUuc2xpY2UoMSl9YDtcbn1cbiIsIjx0dWktYmFkZ2VkLWNvbnRlbnQ+XG4gICAgPGltZ1xuICAgICAgICBhbHQ9XCJcIlxuICAgICAgICBzaXplPVwic1wiXG4gICAgICAgIHR1aUJhZGdlXG4gICAgICAgIHR1aVNsb3Q9XCJib3R0b21cIlxuICAgICAgICBbc3JjXT1cImZsYWdzLmdldChsYW5ndWFnZS52YWx1ZSA/PyAnJykgfHwgZmxhZ3MuZ2V0KHN3aXRjaGVyLmxhbmd1YWdlKSB8IHR1aUZsYWdcIlxuICAgIC8+XG5cbiAgICA8YnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJvdXRsaW5lLWdyYXlzY2FsZVwiXG4gICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgdHVpQnV0dG9uU2VsZWN0XG4gICAgICAgIHR1aUljb25CdXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJsYW5ndWFnZVwiXG4gICAgICAgIFtpY29uU3RhcnRdPVwiaWNvbnMubGFuZ3VhZ2VzXCJcbiAgICA+XG4gICAgICAgIExhbmd1YWdlXG4gICAgICAgIDx0dWktZGF0YS1saXN0ICp0dWlUZXh0ZmllbGREcm9wZG93bj5cbiAgICAgICAgICAgIDx0dWktb3B0LWdyb3VwIGxhYmVsPVwiTGFuZ3VhZ2Ugb2YgY29tcG9uZW50c1wiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IG5hbWUgb2YgbmFtZXNcIlxuICAgICAgICAgICAgICAgICAgICB0dWlPcHRpb25cbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJuYW1lIHwgdGl0bGVjYXNlXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldExhbmcobmFtZSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1mbGFnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiZmxhZ3MuZ2V0KG5hbWUpIHwgdHVpRmxhZ1wiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIHt7IG5hbWUgfCB0aXRsZWNhc2UgfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvdHVpLW9wdC1ncm91cD5cbiAgICAgICAgPC90dWktZGF0YS1saXN0PlxuICAgIDwvYnV0dG9uPlxuPC90dWktYmFkZ2VkLWNvbnRlbnQ+XG4iXX0=
|