@taiga-ui/addon-doc 4.8.1 → 4.10.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.component.d.ts +11 -1
- package/components/code/index.d.ts +2 -2
- package/components/copy/index.d.ts +2 -3
- package/components/demo/index.d.ts +11 -5
- package/components/documentation/documentation-property-connector.directive.d.ts +2 -2
- package/components/example/example.component.d.ts +4 -6
- package/components/internal/header/index.d.ts +1 -1
- package/components/language-switcher/index.d.ts +1 -0
- package/components/navigation/navigation.component.d.ts +1 -1
- package/components/navigation/navigation.providers.d.ts +3 -4
- package/components/page/page.component.d.ts +2 -0
- package/components/page/page.providers.d.ts +5 -2
- package/esm2022/components/api/api-item.component.mjs +52 -5
- package/esm2022/components/code/index.mjs +6 -6
- package/esm2022/components/copy/index.mjs +10 -15
- package/esm2022/components/demo/index.mjs +27 -11
- package/esm2022/components/documentation/documentation-property-connector.directive.mjs +5 -5
- package/esm2022/components/documentation/documentation.component.mjs +4 -5
- package/esm2022/components/documentation/pipes/inspect.pipe.mjs +3 -3
- package/esm2022/components/example/example.component.mjs +15 -13
- package/esm2022/components/internal/header/index.mjs +5 -6
- package/esm2022/components/language-switcher/index.mjs +14 -8
- package/esm2022/components/navigation/navigation.component.mjs +6 -7
- package/esm2022/components/navigation/navigation.providers.mjs +5 -6
- package/esm2022/components/page/page.component.mjs +16 -10
- package/esm2022/components/page/page.providers.mjs +5 -3
- package/esm2022/tokens/code-editor.mjs +3 -3
- package/esm2022/tokens/doc-icons.mjs +2 -1
- package/esm2022/tokens/example-content-processor.mjs +1 -1
- package/esm2022/tokens/index.mjs +2 -1
- package/esm2022/tokens/support-language.mjs +3 -0
- package/fesm2022/taiga-ui-addon-doc-components.mjs +135 -75
- package/fesm2022/taiga-ui-addon-doc-components.mjs.map +1 -1
- package/fesm2022/taiga-ui-addon-doc-tokens.mjs +6 -3
- package/fesm2022/taiga-ui-addon-doc-tokens.mjs.map +1 -1
- package/package.json +8 -7
- package/tokens/code-editor.d.ts +1 -2
- package/tokens/doc-icons.d.ts +1 -0
- package/tokens/example-content-processor.d.ts +1 -1
- package/tokens/index.d.ts +1 -0
- package/tokens/support-language.d.ts +1 -0
|
@@ -1,11 +1,21 @@
|
|
|
1
|
+
import type { OnInit } from '@angular/core';
|
|
1
2
|
import { EventEmitter } from '@angular/core';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class TuiDocAPIItem<T> {
|
|
4
|
+
export declare class TuiDocAPIItem<T> implements OnInit {
|
|
5
|
+
private readonly locationRef;
|
|
6
|
+
private readonly activatedRoute;
|
|
7
|
+
private readonly urlSerializer;
|
|
8
|
+
private readonly urlStateHandler;
|
|
4
9
|
name: string;
|
|
5
10
|
type: string;
|
|
6
11
|
value?: T;
|
|
7
12
|
items: readonly T[];
|
|
8
13
|
readonly valueChange: EventEmitter<T>;
|
|
14
|
+
ngOnInit(): void;
|
|
15
|
+
onValueChange(value: T): void;
|
|
16
|
+
private clearBrackets;
|
|
17
|
+
private parseParams;
|
|
18
|
+
private setQueryParam;
|
|
9
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocAPIItem<any>, never>;
|
|
10
20
|
static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocAPIItem<any>, "tr[tuiDocAPIItem]", never, { "name": { "alias": "name"; "required": false; }; "type": { "alias": "type"; "required": false; }; "value": { "alias": "value"; "required": false; }; "items": { "alias": "items"; "required": false; }; }, { "valueChange": "valueChange"; }, never, ["*"], true, never>;
|
|
11
21
|
}
|
|
@@ -6,10 +6,10 @@ export declare class TuiDocCode {
|
|
|
6
6
|
private readonly icons;
|
|
7
7
|
private readonly rawLoader$$;
|
|
8
8
|
protected readonly isServer: boolean;
|
|
9
|
-
protected readonly markdownCodeProcessor: TuiHandler<string, string[]>;
|
|
9
|
+
protected readonly markdownCodeProcessor: TuiHandler<string, readonly string[]>;
|
|
10
10
|
protected readonly copy$: Subject<void>;
|
|
11
11
|
protected readonly icon: import("@angular/core").Signal<string>;
|
|
12
|
-
protected readonly processor
|
|
12
|
+
protected readonly processor: import("@angular/core").Signal<never[] | readonly string[]>;
|
|
13
13
|
filename: string;
|
|
14
14
|
set code(code: TuiRawLoaderContent);
|
|
15
15
|
get hasFilename(): boolean;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import type { Observable } from 'rxjs';
|
|
2
1
|
import * as i0 from "@angular/core";
|
|
3
2
|
export declare class TuiDocCopy {
|
|
4
3
|
private readonly copy$;
|
|
5
|
-
protected readonly texts
|
|
6
|
-
protected
|
|
4
|
+
protected readonly texts: import("@angular/core").Signal<readonly [copy: string, copied: string] | readonly ["", ""]>;
|
|
5
|
+
protected readonly copied: import("@angular/core").Signal<boolean>;
|
|
7
6
|
protected onClick(): void;
|
|
8
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocCopy, never>;
|
|
9
8
|
static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocCopy, "tui-doc-copy", never, {}, {}, never, ["*"], true, never>;
|
|
@@ -1,18 +1,24 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AfterViewInit } from '@angular/core';
|
|
2
2
|
import { TemplateRef } from '@angular/core';
|
|
3
3
|
import type { AbstractControl } from '@angular/forms';
|
|
4
4
|
import { FormGroup } from '@angular/forms';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
export declare class TuiDocDemo implements
|
|
6
|
+
export declare class TuiDocDemo implements AfterViewInit {
|
|
7
7
|
private readonly resizable?;
|
|
8
8
|
private readonly content?;
|
|
9
9
|
private readonly resizer?;
|
|
10
10
|
private readonly el;
|
|
11
|
+
private readonly destroyRef;
|
|
12
|
+
private readonly ngZone;
|
|
11
13
|
private readonly locationRef;
|
|
12
14
|
private readonly urlSerializer;
|
|
13
15
|
private readonly urlStateHandler;
|
|
16
|
+
private readonly darkMode;
|
|
14
17
|
protected readonly template: TemplateRef<Record<string, unknown>> | null;
|
|
15
|
-
protected
|
|
18
|
+
protected readonly rendered: import("@angular/core").WritableSignal<boolean>;
|
|
19
|
+
protected theme: import("@angular/core").Signal<"dark" | "light">;
|
|
20
|
+
protected dark: import("@angular/core").WritableSignal<boolean>;
|
|
21
|
+
protected readonly $: import("rxjs").Subscription;
|
|
16
22
|
protected testForm?: FormGroup;
|
|
17
23
|
protected readonly updateOnVariants: readonly ["change", "blur", "submit"];
|
|
18
24
|
protected updateOn: 'blur' | 'change' | 'submit';
|
|
@@ -22,10 +28,10 @@ export declare class TuiDocDemo implements OnInit {
|
|
|
22
28
|
protected readonly texts: [string, string, string];
|
|
23
29
|
control: AbstractControl | null;
|
|
24
30
|
sticky: boolean;
|
|
25
|
-
|
|
31
|
+
ngAfterViewInit(): void;
|
|
26
32
|
protected onResize(): void;
|
|
27
33
|
protected onMouseUp(): void;
|
|
28
|
-
protected onModeChange(
|
|
34
|
+
protected onModeChange(darkMode: boolean): void;
|
|
29
35
|
protected toggleDetails(): void;
|
|
30
36
|
protected changeOpaque(opaque: boolean): void;
|
|
31
37
|
protected updateOnChange(updateOn: 'blur' | 'change' | 'submit'): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { OnChanges, OnInit } from '@angular/core';
|
|
2
2
|
import { EventEmitter, TemplateRef } from '@angular/core';
|
|
3
|
-
import {
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export type TuiDocumentationPropertyType = 'input-output' | 'input' | 'output' | null;
|
|
6
6
|
export declare class TuiDocDocumentationPropertyConnector<T> implements OnInit, OnChanges {
|
|
@@ -17,7 +17,7 @@ export declare class TuiDocDocumentationPropertyConnector<T> implements OnInit,
|
|
|
17
17
|
documentationPropertyValues: readonly T[] | null;
|
|
18
18
|
readonly documentationPropertyValueChange: EventEmitter<T>;
|
|
19
19
|
readonly changed$: Subject<void>;
|
|
20
|
-
readonly emits
|
|
20
|
+
readonly emits: import("@angular/core").WritableSignal<number>;
|
|
21
21
|
readonly template: TemplateRef<any>;
|
|
22
22
|
get attrName(): string;
|
|
23
23
|
get shouldShowValues(): boolean;
|
|
@@ -2,8 +2,6 @@ import type { TuiRawLoaderContent } from '@taiga-ui/addon-doc/types';
|
|
|
2
2
|
import type { TuiContext } from '@taiga-ui/cdk/types';
|
|
3
3
|
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
4
4
|
import { PolymorpheusComponent } from '@taiga-ui/polymorpheus';
|
|
5
|
-
import type { Observable } from 'rxjs';
|
|
6
|
-
import { Subject } from 'rxjs';
|
|
7
5
|
import * as i0 from "@angular/core";
|
|
8
6
|
export declare class TuiDocExample {
|
|
9
7
|
private readonly clipboard;
|
|
@@ -21,10 +19,10 @@ export declare class TuiDocExample {
|
|
|
21
19
|
protected readonly defaultTabIndex = 0;
|
|
22
20
|
protected readonly defaultTab: string;
|
|
23
21
|
protected activeItemIndex: number;
|
|
24
|
-
protected readonly copy
|
|
25
|
-
protected readonly loading
|
|
26
|
-
protected readonly processor
|
|
27
|
-
protected readonly lazyComponent
|
|
22
|
+
protected readonly copy: import("@angular/core").Signal<string>;
|
|
23
|
+
protected readonly loading: import("@angular/core").WritableSignal<boolean>;
|
|
24
|
+
protected readonly processor: import("@angular/core").Signal<Record<string, string>>;
|
|
25
|
+
protected readonly lazyComponent: import("@angular/core").Signal<PolymorpheusComponent<unknown> | undefined>;
|
|
28
26
|
id: string | null;
|
|
29
27
|
heading: PolymorpheusContent;
|
|
30
28
|
description: PolymorpheusContent;
|
|
@@ -5,7 +5,7 @@ export declare class TuiDocHeader {
|
|
|
5
5
|
protected readonly icons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
|
|
6
6
|
protected readonly logo: import("@taiga-ui/polymorpheus").PolymorpheusContent;
|
|
7
7
|
protected readonly menu: string;
|
|
8
|
-
protected readonly open
|
|
8
|
+
protected readonly open: import("@angular/core").Signal<boolean>;
|
|
9
9
|
protected onClick(): void;
|
|
10
10
|
protected onActiveZone(active: boolean): void;
|
|
11
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocHeader, never>;
|
|
@@ -3,6 +3,7 @@ import type { TuiCountryIsoCode, TuiLanguageName } from '@taiga-ui/i18n/types';
|
|
|
3
3
|
import { TuiLanguageSwitcherService } from '@taiga-ui/i18n/utils';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class TuiDocLanguageSwitcher {
|
|
6
|
+
protected readonly icons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
|
|
6
7
|
protected readonly switcher: TuiLanguageSwitcherService;
|
|
7
8
|
protected readonly language: FormControl<string | null>;
|
|
8
9
|
protected open: boolean;
|
|
@@ -19,7 +19,7 @@ export declare class TuiDocNavigation {
|
|
|
19
19
|
protected openPagesGroupsArr: boolean[];
|
|
20
20
|
protected active: string;
|
|
21
21
|
protected readonly search: FormControl<string | null>;
|
|
22
|
-
protected readonly filtered
|
|
22
|
+
protected readonly filtered: import("@angular/core").Signal<never[] | readonly (readonly TuiDocRoutePage[])[]>;
|
|
23
23
|
constructor();
|
|
24
24
|
protected get canOpen(): boolean;
|
|
25
25
|
protected get itemsWithoutSections(): TuiDocRoutePages;
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import type { Provider } from '@angular/core';
|
|
2
|
-
import { InjectionToken } from '@angular/core';
|
|
3
2
|
import type { TuiDocRoutePages } from '@taiga-ui/addon-doc/types';
|
|
4
3
|
import type { Observable } from 'rxjs';
|
|
5
4
|
/**
|
|
6
5
|
* Page title
|
|
7
6
|
*/
|
|
8
|
-
export declare const NAVIGATION_TITLE: InjectionToken<Observable<string>>;
|
|
7
|
+
export declare const NAVIGATION_TITLE: import("@angular/core").InjectionToken<Observable<string>>;
|
|
9
8
|
/**
|
|
10
9
|
* Navigation sections labels for search
|
|
11
10
|
*/
|
|
12
|
-
export declare const NAVIGATION_LABELS: InjectionToken<readonly string[]>;
|
|
11
|
+
export declare const NAVIGATION_LABELS: import("@angular/core").InjectionToken<readonly string[]>;
|
|
13
12
|
/**
|
|
14
13
|
* Navigation pages
|
|
15
14
|
*/
|
|
16
|
-
export declare const NAVIGATION_ITEMS: InjectionToken<readonly TuiDocRoutePages[]>;
|
|
15
|
+
export declare const NAVIGATION_ITEMS: import("@angular/core").InjectionToken<readonly TuiDocRoutePages[]>;
|
|
17
16
|
export declare const NAVIGATION_PROVIDERS: Provider[];
|
|
@@ -2,6 +2,8 @@ import type { QueryList } from '@angular/core';
|
|
|
2
2
|
import { TuiDocPageTabConnector } from './page-tab.directive';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare class TuiDocPage {
|
|
5
|
+
protected readonly tabs: Record<string, import("@taiga-ui/polymorpheus").PolymorpheusContent>;
|
|
6
|
+
protected readonly supportLanguage: Set<string>;
|
|
5
7
|
protected readonly defaultTabs: readonly string[];
|
|
6
8
|
protected readonly from: RegExp;
|
|
7
9
|
protected readonly to = "_";
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import type { Provider } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import type { ActivatedRouteSnapshot } from '@angular/router';
|
|
3
|
+
import type { TuiHandler } from '@taiga-ui/cdk/types';
|
|
4
|
+
import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
|
|
5
|
+
export declare const TUI_DOC_TABS: import("@angular/core").InjectionToken<TuiHandler<ActivatedRouteSnapshot, Record<string, PolymorpheusContent>>>;
|
|
3
6
|
/**
|
|
4
7
|
* Array if related page titles
|
|
5
8
|
*/
|
|
6
|
-
export declare const PAGE_SEE_ALSO: InjectionToken<readonly string[]>;
|
|
9
|
+
export declare const PAGE_SEE_ALSO: import("@angular/core").InjectionToken<readonly string[]>;
|
|
7
10
|
export declare const PAGE_PROVIDERS: Provider[];
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import { NgForOf, NgIf, NgSwitch, NgSwitchCase } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
1
|
+
import { Location, NgForOf, NgIf, NgSwitch, NgSwitchCase } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, inject, Input, Output, } from '@angular/core';
|
|
3
3
|
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { ActivatedRoute, UrlSerializer } from '@angular/router';
|
|
5
|
+
import { TUI_DOC_URL_STATE_HANDLER } from '@taiga-ui/addon-doc/tokens';
|
|
6
|
+
import { tuiCoerceValue } from '@taiga-ui/addon-doc/utils';
|
|
7
|
+
import { tuiIsNumber } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
4
8
|
import { TuiIcon } from '@taiga-ui/core/components/icon';
|
|
5
9
|
import { TuiTextfield } from '@taiga-ui/core/components/textfield';
|
|
6
10
|
import { TuiDataListWrapper } from '@taiga-ui/kit/components/data-list-wrapper';
|
|
@@ -16,15 +20,58 @@ import * as i2 from "@taiga-ui/kit/components/data-list-wrapper";
|
|
|
16
20
|
import * as i3 from "@taiga-ui/legacy/components/input-number";
|
|
17
21
|
import * as i4 from "@taiga-ui/core/components/textfield";
|
|
18
22
|
import * as i5 from "@taiga-ui/legacy/directives/textfield-controller";
|
|
23
|
+
const SERIALIZED_SUFFIX = '$';
|
|
19
24
|
class TuiDocAPIItem {
|
|
20
25
|
constructor() {
|
|
26
|
+
this.locationRef = inject(Location);
|
|
27
|
+
this.activatedRoute = inject(ActivatedRoute);
|
|
28
|
+
this.urlSerializer = inject(UrlSerializer);
|
|
29
|
+
this.urlStateHandler = inject(TUI_DOC_URL_STATE_HANDLER);
|
|
21
30
|
this.name = '';
|
|
22
31
|
this.type = '';
|
|
23
32
|
this.items = [];
|
|
24
33
|
this.valueChange = new EventEmitter();
|
|
25
34
|
}
|
|
35
|
+
ngOnInit() {
|
|
36
|
+
this.parseParams(this.activatedRoute.snapshot.queryParams);
|
|
37
|
+
}
|
|
38
|
+
onValueChange(value) {
|
|
39
|
+
this.value = value;
|
|
40
|
+
this.valueChange.emit(value);
|
|
41
|
+
this.setQueryParam(value);
|
|
42
|
+
}
|
|
43
|
+
clearBrackets(value) {
|
|
44
|
+
return value.replaceAll(/[()[\]]/g, '');
|
|
45
|
+
}
|
|
46
|
+
parseParams(params) {
|
|
47
|
+
const name = this.clearBrackets(this.name);
|
|
48
|
+
const propertyValue = params[name];
|
|
49
|
+
const propertyValueWithSuffix = params[`${name}${SERIALIZED_SUFFIX}`];
|
|
50
|
+
if (!propertyValue && !propertyValueWithSuffix) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
let value = !!propertyValueWithSuffix && this.items
|
|
54
|
+
? this.items[propertyValueWithSuffix]
|
|
55
|
+
: tuiCoerceValue(propertyValue);
|
|
56
|
+
if (this.type === 'string' && tuiIsNumber(value)) {
|
|
57
|
+
value = value.toString();
|
|
58
|
+
}
|
|
59
|
+
this.onValueChange(value);
|
|
60
|
+
}
|
|
61
|
+
setQueryParam(value) {
|
|
62
|
+
const tree = this.urlSerializer.parse(this.locationRef.path());
|
|
63
|
+
const isValueAvailableByKey = value instanceof Object;
|
|
64
|
+
const computedValue = isValueAvailableByKey && this.items ? this.items.indexOf(value) : value;
|
|
65
|
+
const suffix = isValueAvailableByKey ? SERIALIZED_SUFFIX : '';
|
|
66
|
+
const propName = this.clearBrackets(this.name) + suffix;
|
|
67
|
+
tree.queryParams = {
|
|
68
|
+
...tree.queryParams,
|
|
69
|
+
[propName]: computedValue,
|
|
70
|
+
};
|
|
71
|
+
this.locationRef.go(this.urlStateHandler(tree));
|
|
72
|
+
}
|
|
26
73
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocAPIItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
-
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')\"\n >\n <select\n placeholder=\"null\"\n tuiTextfield\n [ngModel]=\"value ?? null\"\n (ngModelChange)=\"
|
|
74
|
+
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')\"\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-input-number\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n [nativeId]=\"name\"\n [ngModel]=\"value\"\n [step]=\"1\"\n [tuiTextfieldLabelOutside]=\"true\"\n (ngModelChange)=\"onValueChange($event || 0)\"\n />\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}@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: "ngmodule", type: TuiInputNumberModule }, { kind: "component", type: i3.TuiInputNumberComponent, selector: "tui-input-number", inputs: ["min", "max", "step"] }, { kind: "directive", type: i3.TuiInputNumberDirective, selector: "tui-input-number" }, { 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]" }, { kind: "directive", type: i4.TuiTextfieldOptionsDirective, selector: "[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]", inputs: ["tuiTextfieldAppearance", "tuiTextfieldSize", "tuiTextfieldCleaner"] }, { kind: "directive", type: i4.TuiTextfieldDropdownDirective, selector: "ng-template[tuiTextfieldDropdown]" }, { kind: "ngmodule", type: TuiTextfieldControllerModule }, { kind: "directive", type: i5.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { kind: "directive", type: i5.TuiTextfieldLabelOutsideDirective, selector: "[tuiTextfieldLabelOutside]", inputs: ["tuiTextfieldLabelOutside"] }, { kind: "directive", type: i5.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28
75
|
}
|
|
29
76
|
export { TuiDocAPIItem };
|
|
30
77
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocAPIItem, decorators: [{
|
|
@@ -44,7 +91,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
44
91
|
TuiSwitch,
|
|
45
92
|
TuiTextfield,
|
|
46
93
|
TuiTextfieldControllerModule,
|
|
47
|
-
], 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')\"\n >\n <select\n placeholder=\"null\"\n tuiTextfield\n [ngModel]=\"value ?? null\"\n (ngModelChange)=\"
|
|
94
|
+
], 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')\"\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-input-number\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n class=\"t-input\"\n [nativeId]=\"name\"\n [ngModel]=\"value\"\n [step]=\"1\"\n [tuiTextfieldLabelOutside]=\"true\"\n (ngModelChange)=\"onValueChange($event || 0)\"\n />\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}@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"] }]
|
|
48
95
|
}], propDecorators: { name: [{
|
|
49
96
|
type: Input
|
|
50
97
|
}], type: [{
|
|
@@ -56,4 +103,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
56
103
|
}], valueChange: [{
|
|
57
104
|
type: Output
|
|
58
105
|
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tZG9jL2NvbXBvbmVudHMvYXBpL2FwaS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9jb21wb25lbnRzL2FwaS9hcGktaXRlbS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDMUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBRTlGLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7OztBQUVuRixNQXVCYSxhQUFhO0lBdkIxQjtRQXlCVyxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBR1YsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQU1WLFVBQUssR0FBaUIsRUFBRSxDQUFDO1FBR2hCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUssQ0FBQztLQUN2RDsrR0FmWSxhQUFhO21HQUFiLGFBQWEsOExDM0MxQixtOUZBaUdBLHNqQ0R6RVEsV0FBVyw4K0JBQ1gsT0FBTyxtSEFDUCxJQUFJLDZGQUNKLFFBQVEsNkVBQ1IsWUFBWSxxRkFDWixVQUFVLG1TQUVWLHVCQUF1Qiw0REFDdkIsT0FBTyxvRkFDUCxvQkFBb0Isd09BQ3BCLGNBQWMsc0RBQ2QsU0FBUyxvdkJBRVQsNEJBQTRCOztTQU12QixhQUFhOzRGQUFiLGFBQWE7a0JBdkJ6QixTQUFTO2lDQUNNLElBQUksWUFDTixtQkFBbUIsV0FDcEI7d0JBQ0wsV0FBVzt3QkFDWCxPQUFPO3dCQUNQLElBQUk7d0JBQ0osUUFBUTt3QkFDUixZQUFZO3dCQUNaLFVBQVU7d0JBQ1Ysa0JBQWtCO3dCQUNsQix1QkFBdUI7d0JBQ3ZCLE9BQU87d0JBQ1Asb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLFNBQVM7d0JBQ1QsWUFBWTt3QkFDWiw0QkFBNEI7cUJBQy9CLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUl4QyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSVUsV0FBVztzQkFEMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdGb3JPZiwgTmdJZiwgTmdTd2l0Y2gsIE5nU3dpdGNoQ2FzZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUdWlJY29ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHtUdWlUZXh0ZmllbGR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvdGV4dGZpZWxkJztcbmltcG9ydCB7VHVpRGF0YUxpc3RXcmFwcGVyfSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXInO1xuaW1wb3J0IHtUdWlTd2l0Y2h9IGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zd2l0Y2gnO1xuaW1wb3J0IHtUdWlDaGV2cm9ufSBmcm9tICdAdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMvY2hldnJvbic7XG5pbXBvcnQge1R1aUlucHV0TnVtYmVyTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5L2NvbXBvbmVudHMvaW5wdXQtbnVtYmVyJztcbmltcG9ydCB7VHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS9kaXJlY3RpdmVzL3RleHRmaWVsZC1jb250cm9sbGVyJztcblxuaW1wb3J0IHtUdWlJbnNwZWN0UGlwZX0gZnJvbSAnLi4vZG9jdW1lbnRhdGlvbi9waXBlcy9pbnNwZWN0LnBpcGUnO1xuaW1wb3J0IHtUdWlEb2NUeXBlUmVmZXJlbmNlUGlwZX0gZnJvbSAnLi4vZG9jdW1lbnRhdGlvbi9waXBlcy90eXBlLXJlZmVyZW5jZS5waXBlJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3RyW3R1aURvY0FQSUl0ZW1dJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBOZ0Zvck9mLFxuICAgICAgICBOZ0lmLFxuICAgICAgICBOZ1N3aXRjaCxcbiAgICAgICAgTmdTd2l0Y2hDYXNlLFxuICAgICAgICBUdWlDaGV2cm9uLFxuICAgICAgICBUdWlEYXRhTGlzdFdyYXBwZXIsXG4gICAgICAgIFR1aURvY1R5cGVSZWZlcmVuY2VQaXBlLFxuICAgICAgICBUdWlJY29uLFxuICAgICAgICBUdWlJbnB1dE51bWJlck1vZHVsZSxcbiAgICAgICAgVHVpSW5zcGVjdFBpcGUsXG4gICAgICAgIFR1aVN3aXRjaCxcbiAgICAgICAgVHVpVGV4dGZpZWxkLFxuICAgICAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FwaS1pdGVtLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2FwaS1pdGVtLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRG9jQVBJSXRlbTxUPiB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbmFtZSA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdHlwZSA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdmFsdWU/OiBUO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaXRlbXM6IHJlYWRvbmx5IFRbXSA9IFtdO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUPigpO1xufVxuIiwiPHRkIGNsYXNzPVwidC10ZFwiPlxuICAgIDxjb2RlXG4gICAgICAgIGNsYXNzPVwidC1uYW1lXCJcbiAgICAgICAgW2NsYXNzLnQtbmFtZV9iYW5hbmFdPVwibmFtZS5zdGFydHNXaXRoKCdbKCcpXCJcbiAgICAgICAgW2NsYXNzLnQtbmFtZV9pbnB1dF09XCJuYW1lLnN0YXJ0c1dpdGgoJ1snKVwiXG4gICAgICAgIFtjbGFzcy50LW5hbWVfb3V0cHV0XT1cIm5hbWUuc3RhcnRzV2l0aCgnKCcpXCJcbiAgICA+XG4gICAgICAgIHt7IG5hbWUgfX1cbiAgICA8L2NvZGU+XG4gICAgPG5nLWNvbnRlbnQgLz5cbjwvdGQ+XG48dGQgY2xhc3M9XCJ0LXRkXCI+XG4gICAgPGNvZGUgY2xhc3M9XCJ0LXR5cGVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiB0eXBlIHwgdHVpRG9jVHlwZVJlZmVyZW5jZTsgbGV0IGxhc3QgPSBsYXN0XCI+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbS5yZWZlcmVuY2U7IGVsc2UgZGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtcmVmZXJlbmNlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5ocmVmXT1cIml0ZW0ucmVmZXJlbmNlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBpdGVtLnR5cGUgfX1cbiAgICAgICAgICAgICAgICA8dHVpLWljb25cbiAgICAgICAgICAgICAgICAgICAgaWNvbj1cIkB0dWkuZXh0ZXJuYWwtbGlua1wiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5mb250LXNpemUucmVtXT1cIjFcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHQ+XG4gICAgICAgICAgICAgICAge3sgaXRlbS50eXBlIH19XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhbGFzdFwiPiZuYnNwO3wmbmJzcDs8L3NwYW4+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvY29kZT5cbjwvdGQ+XG48dGQgY2xhc3M9XCJ0LXRkXCI+XG4gICAgPHR1aS10ZXh0ZmllbGRcbiAgICAgICAgKm5nSWY9XCJpdGVtcy5sZW5ndGg7IGVsc2Ugbm9JdGVtc1wiXG4gICAgICAgIHR1aUNoZXZyb25cbiAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICBbY29udGVudF09XCJjb250ZW50XCJcbiAgICAgICAgW3R1aVRleHRmaWVsZENsZWFuZXJdPVwidHlwZS5pbmNsdWRlcygnbnVsbCcpXCJcbiAgICA+XG4gICAgICAgIDxzZWxlY3RcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwibnVsbFwiXG4gICAgICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlID8/IG51bGxcIlxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVDaGFuZ2UuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgPjwvc2VsZWN0PlxuICAgICAgICA8dHVpLWRhdGEtbGlzdC13cmFwcGVyXG4gICAgICAgICAgICAqdHVpVGV4dGZpZWxkRHJvcGRvd25cbiAgICAgICAgICAgIFtpdGVtQ29udGVudF09XCJjb250ZW50XCJcbiAgICAgICAgICAgIFtpdGVtc109XCJpdGVtc1wiXG4gICAgICAgIC8+XG4gICAgPC90dWktdGV4dGZpZWxkPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAjY29udGVudFxuICAgICAgICBsZXQtZGF0YVxuICAgID5cbiAgICAgICAgPGNvZGUgW3N0eWxlLm1hcmdpbl09XCIwXCI+e3sgZGF0YSB8IHR1aUluc3BlY3RBbnkgfX08L2NvZGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI25vSXRlbXM+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInR5cGVcIj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInYm9vbGVhbidcIlxuICAgICAgICAgICAgICAgIHR1aVN3aXRjaFxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgW2lkXT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZS5lbWl0KCRldmVudClcIlxuICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgPHR1aS10ZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ3N0cmluZydcIlxuICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZSB8fCAnJ1wiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlQ2hhbmdlLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvdHVpLXRleHRmaWVsZD5cblxuICAgICAgICAgICAgPHR1aS1pbnB1dC1udW1iZXJcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ251bWJlcidcIlxuICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICAgICAgICAgIFtuYXRpdmVJZF09XCJuYW1lXCJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgW3N0ZXBdPVwiMVwiXG4gICAgICAgICAgICAgICAgW3R1aVRleHRmaWVsZExhYmVsT3V0c2lkZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZS5lbWl0KCRldmVudCB8fCAwKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC90ZD5cbiJdfQ==
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tZG9jL2NvbXBvbmVudHMvYXBpL2FwaS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9jb21wb25lbnRzL2FwaS9hcGktaXRlbS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFaEYsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDOUQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDMUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBRTlGLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7OztBQUVuRixNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQztBQUU5QixNQXVCYSxhQUFhO0lBdkIxQjtRQXdCcUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0IsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsa0JBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEMsb0JBQWUsR0FBRyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUc5RCxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBR1YsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQU1WLFVBQUssR0FBaUIsRUFBRSxDQUFDO1FBR2hCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUssQ0FBQztLQXVEdkQ7SUFyRFUsUUFBUTtRQUNYLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVNLGFBQWEsQ0FBQyxLQUFRO1FBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFhO1FBQy9CLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLFdBQVcsQ0FBQyxNQUFjO1FBQzlCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLE1BQU0sYUFBYSxHQUF1QixNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsTUFBTSx1QkFBdUIsR0FDekIsTUFBTSxDQUFDLEdBQUcsSUFBSSxHQUFHLGlCQUFpQixFQUFFLENBQUMsQ0FBQztRQUUxQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDNUMsT0FBTztTQUNWO1FBRUQsSUFBSSxLQUFLLEdBQ0wsQ0FBQyxDQUFDLHVCQUF1QixJQUFJLElBQUksQ0FBQyxLQUFLO1lBQ25DLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHVCQUFpQyxDQUFDO1lBQy9DLENBQUMsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFeEMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDOUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUM1QjtRQUVELElBQUksQ0FBQyxhQUFhLENBQUMsS0FBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUEyQztRQUM3RCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFFL0QsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLFlBQVksTUFBTSxDQUFDO1FBQ3RELE1BQU0sYUFBYSxHQUNmLHFCQUFxQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFFakYsTUFBTSxNQUFNLEdBQUcscUJBQXFCLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBRXhELElBQUksQ0FBQyxXQUFXLEdBQUc7WUFDZixHQUFHLElBQUksQ0FBQyxXQUFXO1lBQ25CLENBQUMsUUFBUSxDQUFDLEVBQUUsYUFBYTtTQUM1QixDQUFDO1FBRUYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7K0dBekVRLGFBQWE7bUdBQWIsYUFBYSw4TENwRDFCLHU4RkFpR0Esc2pDRGhFUSxXQUFXLDgrQkFDWCxPQUFPLG1IQUNQLElBQUksNkZBQ0osUUFBUSw2RUFDUixZQUFZLHFGQUNaLFVBQVUsbVNBRVYsdUJBQXVCLDREQUN2QixPQUFPLG9GQUNQLG9CQUFvQix3T0FDcEIsY0FBYyxzREFDZCxTQUFTLG92QkFFVCw0QkFBNEI7O1NBTXZCLGFBQWE7NEZBQWIsYUFBYTtrQkF2QnpCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLG1CQUFtQixXQUNwQjt3QkFDTCxXQUFXO3dCQUNYLE9BQU87d0JBQ1AsSUFBSTt3QkFDSixRQUFRO3dCQUNSLFlBQVk7d0JBQ1osVUFBVTt3QkFDVixrQkFBa0I7d0JBQ2xCLHVCQUF1Qjt3QkFDdkIsT0FBTzt3QkFDUCxvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsU0FBUzt3QkFDVCxZQUFZO3dCQUNaLDRCQUE0QjtxQkFDL0IsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBU3hDLElBQUk7c0JBRFYsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJVSxXQUFXO3NCQUQxQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbiwgTmdGb3JPZiwgTmdJZiwgTmdTd2l0Y2gsIE5nU3dpdGNoQ2FzZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHR5cGUge1BhcmFtc30gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFVybFNlcmlhbGl6ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1RVSV9ET0NfVVJMX1NUQVRFX0hBTkRMRVJ9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1kb2MvdG9rZW5zJztcbmltcG9ydCB7dHVpQ29lcmNlVmFsdWV9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1kb2MvdXRpbHMnO1xuaW1wb3J0IHt0dWlJc051bWJlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7VHVpSWNvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7VHVpVGV4dGZpZWxkfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL3RleHRmaWVsZCc7XG5pbXBvcnQge1R1aURhdGFMaXN0V3JhcHBlcn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2RhdGEtbGlzdC13cmFwcGVyJztcbmltcG9ydCB7VHVpU3dpdGNofSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc3dpdGNoJztcbmltcG9ydCB7VHVpQ2hldnJvbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzL2NoZXZyb24nO1xuaW1wb3J0IHtUdWlJbnB1dE51bWJlck1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeS9jb21wb25lbnRzL2lucHV0LW51bWJlcic7XG5pbXBvcnQge1R1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9sZWdhY3kvZGlyZWN0aXZlcy90ZXh0ZmllbGQtY29udHJvbGxlcic7XG5cbmltcG9ydCB7VHVpSW5zcGVjdFBpcGV9IGZyb20gJy4uL2RvY3VtZW50YXRpb24vcGlwZXMvaW5zcGVjdC5waXBlJztcbmltcG9ydCB7VHVpRG9jVHlwZVJlZmVyZW5jZVBpcGV9IGZyb20gJy4uL2RvY3VtZW50YXRpb24vcGlwZXMvdHlwZS1yZWZlcmVuY2UucGlwZSc7XG5cbmNvbnN0IFNFUklBTElaRURfU1VGRklYID0gJyQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHJbdHVpRG9jQVBJSXRlbV0nLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE5nRm9yT2YsXG4gICAgICAgIE5nSWYsXG4gICAgICAgIE5nU3dpdGNoLFxuICAgICAgICBOZ1N3aXRjaENhc2UsXG4gICAgICAgIFR1aUNoZXZyb24sXG4gICAgICAgIFR1aURhdGFMaXN0V3JhcHBlcixcbiAgICAgICAgVHVpRG9jVHlwZVJlZmVyZW5jZVBpcGUsXG4gICAgICAgIFR1aUljb24sXG4gICAgICAgIFR1aUlucHV0TnVtYmVyTW9kdWxlLFxuICAgICAgICBUdWlJbnNwZWN0UGlwZSxcbiAgICAgICAgVHVpU3dpdGNoLFxuICAgICAgICBUdWlUZXh0ZmllbGQsXG4gICAgICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXBpLWl0ZW0udGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYXBpLWl0ZW0uc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEb2NBUElJdGVtPFQ+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2F0aW9uUmVmID0gaW5qZWN0KExvY2F0aW9uKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybFNlcmlhbGl6ZXIgPSBpbmplY3QoVXJsU2VyaWFsaXplcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSB1cmxTdGF0ZUhhbmRsZXIgPSBpbmplY3QoVFVJX0RPQ19VUkxfU1RBVEVfSEFORExFUik7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBuYW1lID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0eXBlID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2YWx1ZT86IFQ7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpdGVtczogcmVhZG9ubHkgVFtdID0gW107XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucGFyc2VQYXJhbXModGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uVmFsdWVDaGFuZ2UodmFsdWU6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgICAgICB0aGlzLnNldFF1ZXJ5UGFyYW0odmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJCcmFja2V0cyh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnJlcGxhY2VBbGwoL1soKVtcXF1dL2csICcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHBhcnNlUGFyYW1zKHBhcmFtczogUGFyYW1zKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLmNsZWFyQnJhY2tldHModGhpcy5uYW1lKTtcbiAgICAgICAgY29uc3QgcHJvcGVydHlWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gcGFyYW1zW25hbWVdO1xuICAgICAgICBjb25zdCBwcm9wZXJ0eVZhbHVlV2l0aFN1ZmZpeDogbnVtYmVyIHwgc3RyaW5nIHwgdW5kZWZpbmVkID1cbiAgICAgICAgICAgIHBhcmFtc1tgJHtuYW1lfSR7U0VSSUFMSVpFRF9TVUZGSVh9YF07XG5cbiAgICAgICAgaWYgKCFwcm9wZXJ0eVZhbHVlICYmICFwcm9wZXJ0eVZhbHVlV2l0aFN1ZmZpeCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHZhbHVlID1cbiAgICAgICAgICAgICEhcHJvcGVydHlWYWx1ZVdpdGhTdWZmaXggJiYgdGhpcy5pdGVtc1xuICAgICAgICAgICAgICAgID8gdGhpcy5pdGVtc1twcm9wZXJ0eVZhbHVlV2l0aFN1ZmZpeCBhcyBudW1iZXJdXG4gICAgICAgICAgICAgICAgOiB0dWlDb2VyY2VWYWx1ZShwcm9wZXJ0eVZhbHVlKTtcblxuICAgICAgICBpZiAodGhpcy50eXBlID09PSAnc3RyaW5nJyAmJiB0dWlJc051bWJlcih2YWx1ZSkpIHtcbiAgICAgICAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZSh2YWx1ZSBhcyBUKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFF1ZXJ5UGFyYW0odmFsdWU6IFQgfCBib29sZWFuIHwgbnVtYmVyIHwgc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBjb25zdCB0cmVlID0gdGhpcy51cmxTZXJpYWxpemVyLnBhcnNlKHRoaXMubG9jYXRpb25SZWYucGF0aCgpKTtcblxuICAgICAgICBjb25zdCBpc1ZhbHVlQXZhaWxhYmxlQnlLZXkgPSB2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdDtcbiAgICAgICAgY29uc3QgY29tcHV0ZWRWYWx1ZSA9XG4gICAgICAgICAgICBpc1ZhbHVlQXZhaWxhYmxlQnlLZXkgJiYgdGhpcy5pdGVtcyA/IHRoaXMuaXRlbXMuaW5kZXhPZih2YWx1ZSBhcyBUKSA6IHZhbHVlO1xuXG4gICAgICAgIGNvbnN0IHN1ZmZpeCA9IGlzVmFsdWVBdmFpbGFibGVCeUtleSA/IFNFUklBTElaRURfU1VGRklYIDogJyc7XG4gICAgICAgIGNvbnN0IHByb3BOYW1lID0gdGhpcy5jbGVhckJyYWNrZXRzKHRoaXMubmFtZSkgKyBzdWZmaXg7XG5cbiAgICAgICAgdHJlZS5xdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgICAgIC4uLnRyZWUucXVlcnlQYXJhbXMsXG4gICAgICAgICAgICBbcHJvcE5hbWVdOiBjb21wdXRlZFZhbHVlLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMubG9jYXRpb25SZWYuZ28odGhpcy51cmxTdGF0ZUhhbmRsZXIodHJlZSkpO1xuICAgIH1cbn1cbiIsIjx0ZCBjbGFzcz1cInQtdGRcIj5cbiAgICA8Y29kZVxuICAgICAgICBjbGFzcz1cInQtbmFtZVwiXG4gICAgICAgIFtjbGFzcy50LW5hbWVfYmFuYW5hXT1cIm5hbWUuc3RhcnRzV2l0aCgnWygnKVwiXG4gICAgICAgIFtjbGFzcy50LW5hbWVfaW5wdXRdPVwibmFtZS5zdGFydHNXaXRoKCdbJylcIlxuICAgICAgICBbY2xhc3MudC1uYW1lX291dHB1dF09XCJuYW1lLnN0YXJ0c1dpdGgoJygnKVwiXG4gICAgPlxuICAgICAgICB7eyBuYW1lIH19XG4gICAgPC9jb2RlPlxuICAgIDxuZy1jb250ZW50IC8+XG48L3RkPlxuPHRkIGNsYXNzPVwidC10ZFwiPlxuICAgIDxjb2RlIGNsYXNzPVwidC10eXBlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdHlwZSB8IHR1aURvY1R5cGVSZWZlcmVuY2U7IGxldCBsYXN0ID0gbGFzdFwiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0ucmVmZXJlbmNlOyBlbHNlIGRlZmF1bHRcIlxuICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXJlZmVyZW5jZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaHJlZl09XCJpdGVtLnJlZmVyZW5jZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgaXRlbS50eXBlIH19XG4gICAgICAgICAgICAgICAgPHR1aS1pY29uXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJAdHVpLmV4dGVybmFsLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUuZm9udC1zaXplLnJlbV09XCIxXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0PlxuICAgICAgICAgICAgICAgIHt7IGl0ZW0udHlwZSB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWxhc3RcIj4mbmJzcDt8Jm5ic3A7PC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2NvZGU+XG48L3RkPlxuPHRkIGNsYXNzPVwidC10ZFwiPlxuICAgIDx0dWktdGV4dGZpZWxkXG4gICAgICAgICpuZ0lmPVwiaXRlbXMubGVuZ3RoOyBlbHNlIG5vSXRlbXNcIlxuICAgICAgICB0dWlDaGV2cm9uXG4gICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiXG4gICAgICAgIFt0dWlUZXh0ZmllbGRDbGVhbmVyXT1cInR5cGUuaW5jbHVkZXMoJ251bGwnKVwiXG4gICAgPlxuICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIm51bGxcIlxuICAgICAgICAgICAgdHVpVGV4dGZpZWxkXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZSA/PyBudWxsXCJcbiAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgID48L3NlbGVjdD5cbiAgICAgICAgPHR1aS1kYXRhLWxpc3Qtd3JhcHBlclxuICAgICAgICAgICAgKnR1aVRleHRmaWVsZERyb3Bkb3duXG4gICAgICAgICAgICBbaXRlbUNvbnRlbnRdPVwiY29udGVudFwiXG4gICAgICAgICAgICBbaXRlbXNdPVwiaXRlbXNcIlxuICAgICAgICAvPlxuICAgIDwvdHVpLXRleHRmaWVsZD5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgI2NvbnRlbnRcbiAgICAgICAgbGV0LWRhdGFcbiAgICA+XG4gICAgICAgIDxjb2RlIFtzdHlsZS5tYXJnaW5dPVwiMFwiPnt7IGRhdGEgfCB0dWlJbnNwZWN0QW55IH19PC9jb2RlPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNub0l0ZW1zPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ0eXBlXCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2Jvb2xlYW4nXCJcbiAgICAgICAgICAgICAgICB0dWlTd2l0Y2hcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIFtpZF09XCJuYW1lXCJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgIDx0dWktdGV4dGZpZWxkXG4gICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidzdHJpbmcnXCJcbiAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHVpVGV4dGZpZWxkXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwidmFsdWUgfHwgJydcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L3R1aS10ZXh0ZmllbGQ+XG5cbiAgICAgICAgICAgIDx0dWktaW5wdXQtbnVtYmVyXG4gICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidudW1iZXInXCJcbiAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICAgICAgICAgICAgICBbbmF0aXZlSWRdPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgIFtzdGVwXT1cIjFcIlxuICAgICAgICAgICAgICAgIFt0dWlUZXh0ZmllbGRMYWJlbE91dHNpZGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQgfHwgMClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvdGQ+XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ClipboardModule } from '@angular/cdk/clipboard';
|
|
2
|
-
import {
|
|
2
|
+
import { isPlatformServer, NgForOf, NgIf } from '@angular/common';
|
|
3
3
|
import { ChangeDetectionStrategy, Component, inject, Input, PLATFORM_ID, } from '@angular/core';
|
|
4
4
|
import { toSignal } from '@angular/core/rxjs-interop';
|
|
5
5
|
import { TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR, TUI_DOC_ICONS, } from '@taiga-ui/addon-doc/tokens';
|
|
@@ -17,7 +17,7 @@ class TuiDocCode {
|
|
|
17
17
|
this.markdownCodeProcessor = inject(TUI_DOC_EXAMPLE_MARKDOWN_CODE_PROCESSOR);
|
|
18
18
|
this.copy$ = new Subject();
|
|
19
19
|
this.icon = toSignal(this.copy$.pipe(switchMap(() => timer(2000).pipe(map(() => this.icons.copy), startWith(this.icons.check)))), { initialValue: this.icons.copy });
|
|
20
|
-
this.processor
|
|
20
|
+
this.processor = toSignal(this.rawLoader$$.pipe(switchMap(tuiRawLoad), map((value) => this.markdownCodeProcessor(value))), { initialValue: [] });
|
|
21
21
|
this.filename = '';
|
|
22
22
|
}
|
|
23
23
|
set code(code) {
|
|
@@ -27,18 +27,18 @@ class TuiDocCode {
|
|
|
27
27
|
return !!this.filename;
|
|
28
28
|
}
|
|
29
29
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocCode, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocCode, isStandalone: true, selector: "tui-doc-code", inputs: { filename: "filename", code: "code" }, host: { properties: { "style.visibility": "isServer ? \"hidden\" : \"visible\"", "class._has-filename": "hasFilename" } }, ngImport: i0, template: "<p\n *ngIf=\"filename\"\n class=\"t-header\"\n>\n {{ filename }}\n</p>\n<pre\n *ngFor=\"let content of processor
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocCode, isStandalone: true, selector: "tui-doc-code", inputs: { filename: "filename", code: "code" }, host: { properties: { "style.visibility": "isServer ? \"hidden\" : \"visible\"", "class._has-filename": "hasFilename" } }, ngImport: i0, template: "<p\n *ngIf=\"filename\"\n class=\"t-header\"\n>\n {{ filename }}\n</p>\n<pre\n *ngFor=\"let content of processor()\"\n class=\"t-code\"\n>\n <code [lineNumbers]=\"true\" [highlight]=\"content\"></code>\n <div class=\"t-code-actions\">\n <button type=\"button\"\n tuiIconButton\n appearance=\"icon\"\n size=\"xs\"\n class=\"t-copy-button\"\n [iconStart]=\"icon()\"\n [cdkCopyToClipboard]=\"content\"\n (click)=\"copy$.next()\"\n >\n </button>\n <ng-content />\n </div>\n</pre>\n", styles: [":host{display:block}.t-header{font:var(--tui-font-text-s);font-weight:700}.t-header+.t-code{border-radius:.25rem}.t-code{position:relative;margin:0;white-space:normal;outline:1px solid var(--tui-border-normal)}.t-code ::ng-deep .hljs-ln{inline-size:100%}.t-code ::ng-deep .hljs-ln .hljs-ln-numbers{inline-size:1rem}.t-code ::ng-deep .hljs-ln td{white-space:pre}.t-code ::ng-deep .hljs-ln td:not(.hljs-ln-numbers):hover{outline:1px solid var(--tui-border-normal);border-radius:.25rem}.t-code+.t-code{margin-top:1rem}.t-code-actions{position:absolute;top:.75rem;right:.75rem;display:flex;justify-content:center;align-items:center;flex-direction:row-reverse}@media screen and (max-width: 47.9625em){.t-code-actions{padding:.3125rem;border-radius:.25rem;border:1px solid var(--tui-border-normal)}}.t-copy-button::ng-deep+*:not(:empty){margin-right:.375rem}.hljs:not(:empty){font:var(--tui-font-text-m);font-size:.875rem;padding:1.5rem 2rem;font-family:monospace;word-wrap:break-word;white-space:pre-wrap}@media all and (-webkit-min-device-pixel-ratio: 0) and (-webkit-min-device-pixel-ratio: 0),all and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm){.hljs:not(:empty)::-webkit-scrollbar,.hljs:not(:empty)::-webkit-scrollbar-thumb{inline-size:1rem;block-size:1rem;border-radius:6.25rem;background-clip:padding-box;border:.375rem solid transparent}.hljs:not(:empty)::-webkit-scrollbar{background-color:transparent}.hljs:not(:empty)::-webkit-scrollbar-thumb{background-color:var(--tui-background-neutral-1-hover)}.hljs:not(:empty)::-webkit-scrollbar-thumb:hover{background-color:var(--tui-background-neutral-1-pressed)}.hljs:not(:empty)::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-tertiary)}}@media screen and (max-width: 47.9625em){.hljs:not(:empty){padding:1rem}}.t-code-actions,.hljs:not(:empty){background:var(--tui-background-base)}@supports (background: color-mix(in srgb,var(--tui-background-base),#222 2%)){.t-code-actions,.hljs:not(:empty){background:color-mix(in srgb,var(--tui-background-base),#222 2%)}}\n"], dependencies: [{ kind: "ngmodule", type: ClipboardModule }, { kind: "directive", type: i1.CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "directive", type: Highlight, selector: "[highlight]", inputs: ["highlight", "languages", "lineNumbers"], outputs: ["highlighted"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
31
31
|
}
|
|
32
32
|
export { TuiDocCode };
|
|
33
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocCode, decorators: [{
|
|
34
34
|
type: Component,
|
|
35
|
-
args: [{ standalone: true, selector: 'tui-doc-code', imports: [
|
|
35
|
+
args: [{ standalone: true, selector: 'tui-doc-code', imports: [ClipboardModule, Highlight, NgForOf, NgIf, TuiButton], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
36
36
|
'[style.visibility]': 'isServer ? "hidden" : "visible"',
|
|
37
37
|
'[class._has-filename]': 'hasFilename',
|
|
38
|
-
}, template: "<p\n *ngIf=\"filename\"\n class=\"t-header\"\n>\n {{ filename }}\n</p>\n<pre\n *ngFor=\"let content of processor
|
|
38
|
+
}, template: "<p\n *ngIf=\"filename\"\n class=\"t-header\"\n>\n {{ filename }}\n</p>\n<pre\n *ngFor=\"let content of processor()\"\n class=\"t-code\"\n>\n <code [lineNumbers]=\"true\" [highlight]=\"content\"></code>\n <div class=\"t-code-actions\">\n <button type=\"button\"\n tuiIconButton\n appearance=\"icon\"\n size=\"xs\"\n class=\"t-copy-button\"\n [iconStart]=\"icon()\"\n [cdkCopyToClipboard]=\"content\"\n (click)=\"copy$.next()\"\n >\n </button>\n <ng-content />\n </div>\n</pre>\n", styles: [":host{display:block}.t-header{font:var(--tui-font-text-s);font-weight:700}.t-header+.t-code{border-radius:.25rem}.t-code{position:relative;margin:0;white-space:normal;outline:1px solid var(--tui-border-normal)}.t-code ::ng-deep .hljs-ln{inline-size:100%}.t-code ::ng-deep .hljs-ln .hljs-ln-numbers{inline-size:1rem}.t-code ::ng-deep .hljs-ln td{white-space:pre}.t-code ::ng-deep .hljs-ln td:not(.hljs-ln-numbers):hover{outline:1px solid var(--tui-border-normal);border-radius:.25rem}.t-code+.t-code{margin-top:1rem}.t-code-actions{position:absolute;top:.75rem;right:.75rem;display:flex;justify-content:center;align-items:center;flex-direction:row-reverse}@media screen and (max-width: 47.9625em){.t-code-actions{padding:.3125rem;border-radius:.25rem;border:1px solid var(--tui-border-normal)}}.t-copy-button::ng-deep+*:not(:empty){margin-right:.375rem}.hljs:not(:empty){font:var(--tui-font-text-m);font-size:.875rem;padding:1.5rem 2rem;font-family:monospace;word-wrap:break-word;white-space:pre-wrap}@media all and (-webkit-min-device-pixel-ratio: 0) and (-webkit-min-device-pixel-ratio: 0),all and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm){.hljs:not(:empty)::-webkit-scrollbar,.hljs:not(:empty)::-webkit-scrollbar-thumb{inline-size:1rem;block-size:1rem;border-radius:6.25rem;background-clip:padding-box;border:.375rem solid transparent}.hljs:not(:empty)::-webkit-scrollbar{background-color:transparent}.hljs:not(:empty)::-webkit-scrollbar-thumb{background-color:var(--tui-background-neutral-1-hover)}.hljs:not(:empty)::-webkit-scrollbar-thumb:hover{background-color:var(--tui-background-neutral-1-pressed)}.hljs:not(:empty)::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-tertiary)}}@media screen and (max-width: 47.9625em){.hljs:not(:empty){padding:1rem}}.t-code-actions,.hljs:not(:empty){background:var(--tui-background-base)}@supports (background: color-mix(in srgb,var(--tui-background-base),#222 2%)){.t-code-actions,.hljs:not(:empty){background:color-mix(in srgb,var(--tui-background-base),#222 2%)}}\n"] }]
|
|
39
39
|
}], propDecorators: { filename: [{
|
|
40
40
|
type: Input
|
|
41
41
|
}], code: [{
|
|
42
42
|
type: Input
|
|
43
43
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1kb2MvY29tcG9uZW50cy9jb2RlL2luZGV4LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tZG9jL2NvbXBvbmVudHMvY29kZS9pbmRleC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2hFLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBQ0wsV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQ0gsdUNBQXVDLEVBQ3ZDLGFBQWEsR0FDaEIsTUFBTSw0QkFBNEIsQ0FBQztBQUVwQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFckQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUMsZUFBZSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQUVoRixNQVlhLFVBQVU7SUFadkI7UUFhcUIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFzQixFQUFFLENBQUMsQ0FBQztRQUV6RCxhQUFRLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFFakQsMEJBQXFCLEdBQ3BDLE1BQU0sQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO1FBRWpDLFVBQUssR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRTVCLFNBQUksR0FBRyxRQUFRLENBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNYLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDWCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNaLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUMxQixTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FDOUIsQ0FDSixDQUNKLEVBQ0QsRUFBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUMsQ0FDbEMsQ0FBQztRQUVpQixjQUFTLEdBQUcsUUFBUSxDQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDakIsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUNyQixHQUFHLENBQUMsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUM1RCxFQUNELEVBQUMsWUFBWSxFQUFFLEVBQUUsRUFBQyxDQUNyQixDQUFDO1FBR0ssYUFBUSxHQUFHLEVBQUUsQ0FBQztLQVV4QjtJQVJHLElBQ1csSUFBSSxDQUFDLElBQXlCO1FBQ3JDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUMzQixDQUFDOytHQXpDUSxVQUFVO21HQUFWLFVBQVUsbVBDakN2QixnbUJBeUJBLDJqRUREYyxlQUFlLDBOQUFFLFNBQVMscUlBQUUsT0FBTyxtSEFBRSxJQUFJLDZGQUFFLFNBQVM7O1NBU3JELFVBQVU7NEZBQVYsVUFBVTtrQkFadEIsU0FBUztpQ0FDTSxJQUFJLFlBQ04sY0FBYyxXQUNmLENBQUMsZUFBZSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxtQkFHOUMsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDRixvQkFBb0IsRUFBRSxpQ0FBaUM7d0JBQ3ZELHVCQUF1QixFQUFFLGFBQWE7cUJBQ3pDOzhCQWtDTSxRQUFRO3NCQURkLEtBQUs7Z0JBSUssSUFBSTtzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGlwYm9hcmRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jbGlwYm9hcmQnO1xuaW1wb3J0IHtpc1BsYXRmb3JtU2VydmVyLCBOZ0Zvck9mLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIFBMQVRGT1JNX0lELFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgVFVJX0RPQ19FWEFNUExFX01BUktET1dOX0NPREVfUFJPQ0VTU09SLFxuICAgIFRVSV9ET0NfSUNPTlMsXG59IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1kb2MvdG9rZW5zJztcbmltcG9ydCB0eXBlIHtUdWlSYXdMb2FkZXJDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tZG9jL3R5cGVzJztcbmltcG9ydCB7dHVpUmF3TG9hZH0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWRvYy91dGlscyc7XG5pbXBvcnQgdHlwZSB7VHVpSGFuZGxlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge1R1aUJ1dHRvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtIaWdobGlnaHR9IGZyb20gJ25neC1oaWdobGlnaHRqcyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgbWFwLCBzdGFydFdpdGgsIFN1YmplY3QsIHN3aXRjaE1hcCwgdGltZXJ9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWRvYy1jb2RlJyxcbiAgICBpbXBvcnRzOiBbQ2xpcGJvYXJkTW9kdWxlLCBIaWdobGlnaHQsIE5nRm9yT2YsIE5nSWYsIFR1aUJ1dHRvbl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2luZGV4Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2luZGV4Lmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgICdbc3R5bGUudmlzaWJpbGl0eV0nOiAnaXNTZXJ2ZXIgPyBcImhpZGRlblwiIDogXCJ2aXNpYmxlXCInLFxuICAgICAgICAnW2NsYXNzLl9oYXMtZmlsZW5hbWVdJzogJ2hhc0ZpbGVuYW1lJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEb2NDb2RlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9ET0NfSUNPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmF3TG9hZGVyJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFR1aVJhd0xvYWRlckNvbnRlbnQ+KCcnKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc1NlcnZlciA9IGlzUGxhdGZvcm1TZXJ2ZXIoaW5qZWN0KFBMQVRGT1JNX0lEKSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWFya2Rvd25Db2RlUHJvY2Vzc29yOiBUdWlIYW5kbGVyPHN0cmluZywgcmVhZG9ubHkgc3RyaW5nW10+ID1cbiAgICAgICAgaW5qZWN0KFRVSV9ET0NfRVhBTVBMRV9NQVJLRE9XTl9DT0RFX1BST0NFU1NPUik7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29weSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb24gPSB0b1NpZ25hbChcbiAgICAgICAgdGhpcy5jb3B5JC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgICAgICAgICAgdGltZXIoMjAwMCkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IHRoaXMuaWNvbnMuY29weSksXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLmljb25zLmNoZWNrKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICAge2luaXRpYWxWYWx1ZTogdGhpcy5pY29ucy5jb3B5fSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHByb2Nlc3NvciA9IHRvU2lnbmFsKFxuICAgICAgICB0aGlzLnJhd0xvYWRlciQkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAodHVpUmF3TG9hZCksXG4gICAgICAgICAgICBtYXAoKHZhbHVlOiBzdHJpbmcpID0+IHRoaXMubWFya2Rvd25Db2RlUHJvY2Vzc29yKHZhbHVlKSksXG4gICAgICAgICksXG4gICAgICAgIHtpbml0aWFsVmFsdWU6IFtdfSxcbiAgICApO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZmlsZW5hbWUgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBjb2RlKGNvZGU6IFR1aVJhd0xvYWRlckNvbnRlbnQpIHtcbiAgICAgICAgdGhpcy5yYXdMb2FkZXIkJC5uZXh0KGNvZGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaGFzRmlsZW5hbWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZmlsZW5hbWU7XG4gICAgfVxufVxuIiwiPHBcbiAgICAqbmdJZj1cImZpbGVuYW1lXCJcbiAgICBjbGFzcz1cInQtaGVhZGVyXCJcbj5cbiAgICB7eyBmaWxlbmFtZSB9fVxuPC9wPlxuPHByZVxuICAgICpuZ0Zvcj1cImxldCBjb250ZW50IG9mIHByb2Nlc3NvcigpXCJcbiAgICBjbGFzcz1cInQtY29kZVwiXG4+XG4gICAgPGNvZGUgW2xpbmVOdW1iZXJzXT1cInRydWVcIiBbaGlnaGxpZ2h0XT1cImNvbnRlbnRcIj48L2NvZGU+XG4gICAgPGRpdiBjbGFzcz1cInQtY29kZS1hY3Rpb25zXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgICAgICBzaXplPVwieHNcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWNvcHktYnV0dG9uXCJcbiAgICAgICAgICAgIFtpY29uU3RhcnRdPVwiaWNvbigpXCJcbiAgICAgICAgICAgIFtjZGtDb3B5VG9DbGlwYm9hcmRdPVwiY29udGVudFwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY29weSQubmV4dCgpXCJcbiAgICAgICAgPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L2Rpdj5cbjwvcHJlPlxuIl19
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { AsyncPipe, NgIf } from '@angular/common';
|
|
1
|
+
import { NgIf } from '@angular/common';
|
|
3
2
|
import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
|
|
3
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
4
4
|
import { TUI_FALSE_HANDLER } from '@taiga-ui/cdk/constants';
|
|
5
|
-
import { TuiLet } from '@taiga-ui/cdk/directives/let';
|
|
6
|
-
import { tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
7
5
|
import { TuiButton } from '@taiga-ui/core/components/button';
|
|
8
6
|
import { TUI_COPY_TEXTS } from '@taiga-ui/kit/tokens';
|
|
9
7
|
import { map, startWith, Subject, switchMap, timer } from 'rxjs';
|
|
@@ -12,23 +10,20 @@ const COPIED_TIMEOUT = 1500;
|
|
|
12
10
|
class TuiDocCopy {
|
|
13
11
|
constructor() {
|
|
14
12
|
this.copy$ = new Subject();
|
|
15
|
-
this.texts
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
13
|
+
this.texts = toSignal(inject(TUI_COPY_TEXTS), {
|
|
14
|
+
initialValue: ['', ''],
|
|
15
|
+
});
|
|
16
|
+
this.copied = toSignal(this.copy$.pipe(switchMap(() => timer(COPIED_TIMEOUT).pipe(map(TUI_FALSE_HANDLER), startWith(true)))), { initialValue: false });
|
|
19
17
|
}
|
|
20
18
|
onClick() {
|
|
21
19
|
this.copy$.next();
|
|
22
20
|
}
|
|
23
21
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocCopy, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocCopy, isStandalone: true, selector: "tui-doc-copy", ngImport: i0, template: "<button\n
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDocCopy, isStandalone: true, selector: "tui-doc-copy", ngImport: i0, template: "<button\n appearance=\"\"\n size=\"s\"\n tuiButton\n type=\"button\"\n class=\"t-copy\"\n (click)=\"onClick()\"\n>\n <span class=\"t-content\">\n <span\n class=\"t-initial\"\n [attr.data-text]=\"copied() ? '' : texts()[0]\"\n >\n <ng-container *ngIf=\"!copied()\">\n <ng-content />\n </ng-container>\n </span>\n {{ copied() ? texts()[1] : '' }}\n </span>\n</button>\n", styles: [":host{position:relative;display:inline-block;vertical-align:middle;border-radius:var(--tui-radius-m)}.t-copy{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;inline-size:100%;block-size:100%;color:var(--tui-text-primary);background:var(--tui-background-base);overflow:hidden}.t-copy:hover{background:var(--tui-background-base-alt)}.t-initial{white-space:nowrap}.t-initial:empty:before{content:attr(data-text)}.t-content{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;flex-direction:column;text-align:center;line-height:2rem}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
25
23
|
}
|
|
26
|
-
__decorate([
|
|
27
|
-
tuiPure
|
|
28
|
-
], TuiDocCopy.prototype, "copied$", null);
|
|
29
24
|
export { TuiDocCopy };
|
|
30
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDocCopy, decorators: [{
|
|
31
26
|
type: Component,
|
|
32
|
-
args: [{ standalone: true, selector: 'tui-doc-copy', imports: [
|
|
33
|
-
}]
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
args: [{ standalone: true, selector: 'tui-doc-copy', imports: [NgIf, TuiButton], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n appearance=\"\"\n size=\"s\"\n tuiButton\n type=\"button\"\n class=\"t-copy\"\n (click)=\"onClick()\"\n>\n <span class=\"t-content\">\n <span\n class=\"t-initial\"\n [attr.data-text]=\"copied() ? '' : texts()[0]\"\n >\n <ng-container *ngIf=\"!copied()\">\n <ng-content />\n </ng-container>\n </span>\n {{ copied() ? texts()[1] : '' }}\n </span>\n</button>\n", styles: [":host{position:relative;display:inline-block;vertical-align:middle;border-radius:var(--tui-radius-m)}.t-copy{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;inline-size:100%;block-size:100%;color:var(--tui-text-primary);background:var(--tui-background-base);overflow:hidden}.t-copy:hover{background:var(--tui-background-base-alt)}.t-initial{white-space:nowrap}.t-initial:empty:before{content:attr(data-text)}.t-content{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;flex-direction:column;text-align:center;line-height:2rem}\n"] }]
|
|
28
|
+
}] });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1kb2MvY29tcG9uZW50cy9jb3B5L2luZGV4LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tZG9jL2NvbXBvbmVudHMvY29weS9pbmRleC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFFL0QsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDO0FBRTVCLE1BUWEsVUFBVTtJQVJ2QjtRQVNxQixVQUFLLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUUxQixVQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUN4RCxZQUFZLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFVO1NBQ2xDLENBQUMsQ0FBQztRQUVnQixXQUFNLEdBQUcsUUFBUSxDQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDWCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQ1gsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDdEUsQ0FDSixFQUNELEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBQyxDQUN4QixDQUFDO0tBS0w7SUFIYSxPQUFPO1FBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDOytHQWxCUSxVQUFVO21HQUFWLFVBQVUsd0VDbEJ2QixnZUFvQkEsMHRCRFBjLElBQUksNkZBQUUsU0FBUzs7U0FLaEIsVUFBVTs0RkFBVixVQUFVO2tCQVJ0QixTQUFTO2lDQUNNLElBQUksWUFDTixjQUFjLFdBQ2YsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLG1CQUdULHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3RvU2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1RVSV9GQUxTRV9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUJ1dHRvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtUVUlfQ09QWV9URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHttYXAsIHN0YXJ0V2l0aCwgU3ViamVjdCwgc3dpdGNoTWFwLCB0aW1lcn0gZnJvbSAncnhqcyc7XG5cbmNvbnN0IENPUElFRF9USU1FT1VUID0gMTUwMDtcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1kb2MtY29weScsXG4gICAgaW1wb3J0czogW05nSWYsIFR1aUJ1dHRvbl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2luZGV4Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2luZGV4Lmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRG9jQ29weSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3B5JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGV4dHMgPSB0b1NpZ25hbChpbmplY3QoVFVJX0NPUFlfVEVYVFMpLCB7XG4gICAgICAgIGluaXRpYWxWYWx1ZTogWycnLCAnJ10gYXMgY29uc3QsXG4gICAgfSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29waWVkID0gdG9TaWduYWwoXG4gICAgICAgIHRoaXMuY29weSQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PlxuICAgICAgICAgICAgICAgIHRpbWVyKENPUElFRF9USU1FT1VUKS5waXBlKG1hcChUVUlfRkFMU0VfSEFORExFUiksIHN0YXJ0V2l0aCh0cnVlKSksXG4gICAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgICB7aW5pdGlhbFZhbHVlOiBmYWxzZX0sXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCBvbkNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvcHkkLm5leHQoKTtcbiAgICB9XG59XG4iLCI8YnV0dG9uXG4gICAgYXBwZWFyYW5jZT1cIlwiXG4gICAgc2l6ZT1cInNcIlxuICAgIHR1aUJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwidC1jb3B5XCJcbiAgICAoY2xpY2spPVwib25DbGljaygpXCJcbj5cbiAgICA8c3BhbiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJ0LWluaXRpYWxcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS10ZXh0XT1cImNvcGllZCgpID8gJycgOiB0ZXh0cygpWzBdXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb3BpZWQoKVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICB7eyBjb3BpZWQoKSA/IHRleHRzKClbMV0gOiAnJyB9fVxuICAgIDwvc3Bhbj5cbjwvYnV0dG9uPlxuIl19
|