@taiga-ui/addon-doc 2.61.0 → 3.0.0-rc.2
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/README.md +2 -2
- package/addon-doc.module.d.ts +9 -0
- package/bundles/taiga-ui-addon-doc.umd.js +1679 -1355
- package/bundles/taiga-ui-addon-doc.umd.js.map +1 -1
- package/components/code/code.component.d.ts +3 -0
- package/components/code/code.module.d.ts +7 -0
- package/components/code/parse-code-block.d.ts +1 -5
- package/components/copy/copy.component.d.ts +3 -0
- package/components/copy/copy.module.d.ts +7 -0
- package/components/demo/demo.component.d.ts +3 -0
- package/components/demo/demo.module.d.ts +11 -0
- package/components/documentation/documentation-property-connector.directive.d.ts +3 -0
- package/components/documentation/documentation.component.d.ts +3 -0
- package/components/documentation/documentation.module.d.ts +12 -0
- package/components/example/example-capitalize.pipe.d.ts +3 -0
- package/components/example/example-get-tabs.pipe.d.ts +3 -0
- package/components/example/example.component.d.ts +8 -5
- package/components/example/example.module.d.ts +14 -0
- package/components/language-switcher/language-switcher.component.d.ts +3 -0
- package/components/language-switcher/language-switcher.module.d.ts +9 -0
- package/components/main/main.component.d.ts +3 -0
- package/components/main/main.module.d.ts +12 -0
- package/components/navigation/navigation.component.d.ts +8 -5
- package/components/navigation/navigation.module.d.ts +13 -0
- package/components/navigation/navigation.providers.d.ts +0 -4
- package/components/page/page-tab.directive.d.ts +3 -0
- package/components/page/page.component.d.ts +3 -0
- package/components/page/page.module.d.ts +11 -0
- package/components/page/page.providers.d.ts +1 -2
- package/directives/scroll-into-view/scroll-into-view.directive.d.ts +5 -8
- package/directives/scroll-into-view/scroll-into-view.module.d.ts +5 -6
- package/esm2015/addon-doc.module.js +27 -16
- package/esm2015/components/code/code.component.js +26 -24
- package/esm2015/components/code/code.module.js +15 -12
- package/esm2015/components/code/parse-code-block.js +2 -7
- package/esm2015/components/copy/copy.component.js +24 -20
- package/esm2015/components/copy/copy.module.js +15 -12
- package/esm2015/components/demo/demo.component.js +75 -59
- package/esm2015/components/demo/demo.module.js +54 -13
- package/esm2015/components/documentation/documentation-property-connector.directive.js +45 -46
- package/esm2015/components/documentation/documentation.component.js +54 -48
- package/esm2015/components/documentation/documentation.module.js +64 -21
- package/esm2015/components/example/example-capitalize.pipe.js +13 -10
- package/esm2015/components/example/example-get-tabs.pipe.js +10 -8
- package/esm2015/components/example/example.component.js +86 -66
- package/esm2015/components/example/example.module.js +42 -21
- package/esm2015/components/language-switcher/language-switcher.component.js +27 -20
- package/esm2015/components/language-switcher/language-switcher.module.js +15 -12
- package/esm2015/components/main/main.component.js +44 -31
- package/esm2015/components/main/main.module.js +36 -13
- package/esm2015/components/navigation/navigation.component.js +86 -69
- package/esm2015/components/navigation/navigation.module.js +65 -21
- package/esm2015/components/navigation/navigation.providers.js +14 -19
- package/esm2015/components/page/page-tab.directive.js +18 -15
- package/esm2015/components/page/page.component.js +42 -39
- package/esm2015/components/page/page.module.js +28 -13
- package/esm2015/components/page/page.providers.js +10 -12
- package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +30 -43
- package/esm2015/directives/scroll-into-view/scroll-into-view.module.js +15 -28
- package/esm2015/interfaces/code-editor.js +2 -1
- package/esm2015/interfaces/page.js +1 -1
- package/esm2015/interfaces/source-code-path-options.js +2 -1
- package/esm2015/internal/header/header.component.js +34 -23
- package/esm2015/internal/header/header.module.js +28 -13
- package/esm2015/internal/input-opacity/input-opacity.directive.js +20 -19
- package/esm2015/internal/input-opacity/input-opacity.module.js +14 -11
- package/esm2015/internal/see-also/see-also.component.js +26 -23
- package/esm2015/internal/see-also/see-also.module.js +15 -12
- package/esm2015/internal/source-code/source-code.component.js +31 -30
- package/esm2015/internal/source-code/source-code.module.js +15 -12
- package/esm2015/languages/russian.js +10 -14
- package/esm2015/public-api.js +8 -1
- package/esm2015/taiga-ui-addon-doc.js +1 -13
- package/esm2015/tokens/code-actions.js +1 -1
- package/esm2015/tokens/code-editor.js +1 -1
- package/esm2015/tokens/default-tabs.js +1 -1
- package/esm2015/tokens/example-content-processor.js +1 -1
- package/esm2015/tokens/i18n.js +1 -1
- package/esm2015/tokens/logo.js +1 -1
- package/esm2015/tokens/page-loaded.js +1 -1
- package/esm2015/tokens/pages.js +1 -1
- package/esm2015/tokens/scroll-behavior.js +1 -1
- package/esm2015/tokens/see-also.js +1 -1
- package/esm2015/tokens/source-code.js +2 -2
- package/esm2015/tokens/title.js +1 -1
- package/esm2015/types/pages.js +2 -1
- package/esm2015/utils/coerce-value.js +2 -7
- package/esm2015/utils/generate-routes.js +2 -8
- package/esm2015/utils/inspect.js +4 -7
- package/esm2015/utils/raw-load-record.js +4 -9
- package/esm2015/utils/raw-load.js +14 -8
- package/esm2015/utils/transliterate-keyboard-layout.js +2 -5
- package/fesm2015/taiga-ui-addon-doc.js +1134 -904
- package/fesm2015/taiga-ui-addon-doc.js.map +1 -1
- package/interfaces/code-editor.d.ts +0 -10
- package/internal/header/header.component.d.ts +3 -0
- package/internal/header/header.module.d.ts +11 -0
- package/internal/input-opacity/input-opacity.directive.d.ts +3 -0
- package/internal/input-opacity/input-opacity.module.d.ts +5 -0
- package/internal/see-also/see-also.component.d.ts +3 -0
- package/internal/see-also/see-also.module.d.ts +8 -0
- package/internal/source-code/source-code.component.d.ts +3 -0
- package/internal/source-code/source-code.module.d.ts +8 -0
- package/languages/russian.d.ts +0 -3
- package/package.json +11 -14
- package/public-api.d.ts +2 -0
- package/taiga-ui-addon-doc.d.ts +1 -12
- package/tokens/logo.d.ts +1 -1
- package/utils/coerce-value.d.ts +1 -5
- package/utils/generate-routes.d.ts +1 -6
- package/utils/inspect.d.ts +1 -3
- package/utils/raw-load-record.d.ts +1 -5
- package/utils/raw-load.d.ts +1 -5
- package/utils/transliterate-keyboard-layout.d.ts +1 -3
- package/bundles/taiga-ui-addon-doc.umd.min.js +0 -2
- package/bundles/taiga-ui-addon-doc.umd.min.js.map +0 -1
- package/esm2015/utils/color-conversion.js +0 -27
- package/esm5/addon-doc.module.js +0 -25
- package/esm5/components/code/code.component.js +0 -46
- package/esm5/components/code/code.module.js +0 -19
- package/esm5/components/code/parse-code-block.js +0 -21
- package/esm5/components/copy/copy.component.js +0 -43
- package/esm5/components/copy/copy.module.js +0 -19
- package/esm5/components/demo/demo.component.js +0 -153
- package/esm5/components/demo/demo.module.js +0 -43
- package/esm5/components/documentation/documentation-property-connector.directive.js +0 -133
- package/esm5/components/documentation/documentation.component.js +0 -145
- package/esm5/components/documentation/documentation.module.js +0 -50
- package/esm5/components/example/example-capitalize.pipe.js +0 -16
- package/esm5/components/example/example-get-tabs.pipe.js +0 -15
- package/esm5/components/example/example.component.js +0 -135
- package/esm5/components/example/example.module.js +0 -42
- package/esm5/components/language-switcher/language-switcher.component.js +0 -49
- package/esm5/components/language-switcher/language-switcher.module.js +0 -21
- package/esm5/components/main/main.component.js +0 -58
- package/esm5/components/main/main.module.js +0 -35
- package/esm5/components/navigation/navigation.component.js +0 -203
- package/esm5/components/navigation/navigation.module.js +0 -45
- package/esm5/components/navigation/navigation.providers.js +0 -59
- package/esm5/components/page/page-tab.directive.js +0 -24
- package/esm5/components/page/page.component.js +0 -67
- package/esm5/components/page/page.module.js +0 -30
- package/esm5/components/page/page.providers.js +0 -22
- package/esm5/directives/scroll-into-view/scroll-into-view.directive.js +0 -65
- package/esm5/directives/scroll-into-view/scroll-into-view.module.js +0 -34
- package/esm5/interfaces/code-editor.js +0 -1
- package/esm5/interfaces/page.js +0 -6
- package/esm5/interfaces/source-code-path-options.js +0 -1
- package/esm5/internal/header/header.component.js +0 -47
- package/esm5/internal/header/header.module.js +0 -30
- package/esm5/internal/input-opacity/input-opacity.directive.js +0 -36
- package/esm5/internal/input-opacity/input-opacity.module.js +0 -16
- package/esm5/internal/see-also/see-also.component.js +0 -44
- package/esm5/internal/see-also/see-also.module.js +0 -20
- package/esm5/internal/source-code/source-code.component.js +0 -61
- package/esm5/internal/source-code/source-code.module.js +0 -20
- package/esm5/languages/russian.js +0 -42
- package/esm5/public-api.js +0 -51
- package/esm5/taiga-ui-addon-doc.js +0 -17
- package/esm5/tokens/code-actions.js +0 -5
- package/esm5/tokens/code-editor.js +0 -3
- package/esm5/tokens/default-tabs.js +0 -5
- package/esm5/tokens/example-content-processor.js +0 -4
- package/esm5/tokens/i18n.js +0 -54
- package/esm5/tokens/logo.js +0 -5
- package/esm5/tokens/page-loaded.js +0 -5
- package/esm5/tokens/pages.js +0 -5
- package/esm5/tokens/scroll-behavior.js +0 -3
- package/esm5/tokens/see-also.js +0 -5
- package/esm5/tokens/source-code.js +0 -5
- package/esm5/tokens/title.js +0 -5
- package/esm5/types/pages.js +0 -1
- package/esm5/utils/coerce-value.js +0 -44
- package/esm5/utils/color-conversion.js +0 -27
- package/esm5/utils/generate-routes.js +0 -21
- package/esm5/utils/inspect.js +0 -68
- package/esm5/utils/raw-load-record.js +0 -50
- package/esm5/utils/raw-load.js +0 -26
- package/esm5/utils/transliterate-keyboard-layout.js +0 -50
- package/fesm5/taiga-ui-addon-doc.js +0 -2064
- package/fesm5/taiga-ui-addon-doc.js.map +0 -1
- package/taiga-ui-addon-doc.metadata.json +0 -1
- package/utils/color-conversion.d.ts +0 -12
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import { __assign, __decorate, __param } from "tslib";
|
|
2
|
-
import { isPlatformBrowser, Location } from '@angular/common';
|
|
3
|
-
import { AfterViewInit, ChangeDetectionStrategy, Component, ContentChild, ElementRef, forwardRef, HostListener, Inject, Input, OnInit, PLATFORM_ID, Renderer2, TemplateRef, ViewChild, } from '@angular/core';
|
|
4
|
-
import { FormControl, FormGroup } from '@angular/forms';
|
|
5
|
-
import { UrlSerializer } from '@angular/router';
|
|
6
|
-
import { px, TUI_IS_MOBILE, TuiDestroyService } from '@taiga-ui/cdk';
|
|
7
|
-
import { TuiModeDirective } from '@taiga-ui/core';
|
|
8
|
-
import { Subject } from 'rxjs';
|
|
9
|
-
import { startWith, takeUntil } from 'rxjs/operators';
|
|
10
|
-
import { TUI_DOC_DEMO_TEXTS } from '../../tokens/i18n';
|
|
11
|
-
var MIN_COMPONENT_WIDTH = 104;
|
|
12
|
-
// @dynamic
|
|
13
|
-
var TuiDocDemoComponent = /** @class */ (function () {
|
|
14
|
-
function TuiDocDemoComponent(isMobile, destroy$, renderer, platformId, locationRef, urlSerializer, texts) {
|
|
15
|
-
var _this = this;
|
|
16
|
-
this.isMobile = isMobile;
|
|
17
|
-
this.destroy$ = destroy$;
|
|
18
|
-
this.renderer = renderer;
|
|
19
|
-
this.texts = texts;
|
|
20
|
-
this.initialX = 0;
|
|
21
|
-
this.wrapperWidth = 0;
|
|
22
|
-
this.control = null;
|
|
23
|
-
this.template = null;
|
|
24
|
-
this.updateOnVariants = ["change", "blur", "submit"];
|
|
25
|
-
this.updateOn = "change";
|
|
26
|
-
this.expanded = false;
|
|
27
|
-
this.opaque = true;
|
|
28
|
-
this.modeControl = new FormControl();
|
|
29
|
-
this.mode = null;
|
|
30
|
-
this.change$ = new Subject();
|
|
31
|
-
this.items = ["onLight", "onDark"];
|
|
32
|
-
this.isBrowser = isPlatformBrowser(platformId);
|
|
33
|
-
var parsedMode = locationRef.path().match(/tuiMode=(onDark|onLight)/);
|
|
34
|
-
if (parsedMode !== null && parsedMode.length > 0) {
|
|
35
|
-
this.modeControl.setValue(parsedMode[1]);
|
|
36
|
-
}
|
|
37
|
-
this.modeControl.valueChanges
|
|
38
|
-
.pipe(startWith(this.modeControl.value), takeUntil(this.destroy$))
|
|
39
|
-
.subscribe(function (mode) {
|
|
40
|
-
var urlTree = urlSerializer.parse(locationRef.path());
|
|
41
|
-
urlTree.queryParams = __assign(__assign({}, urlTree.queryParams), { tuiMode: mode });
|
|
42
|
-
locationRef.go(String(urlTree));
|
|
43
|
-
_this.mode = mode;
|
|
44
|
-
_this.change$.next();
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
TuiDocDemoComponent_1 = TuiDocDemoComponent;
|
|
48
|
-
TuiDocDemoComponent.prototype.onResize = function () {
|
|
49
|
-
this.setResizerTextContent();
|
|
50
|
-
};
|
|
51
|
-
TuiDocDemoComponent.prototype.ngOnInit = function () {
|
|
52
|
-
this.createForm();
|
|
53
|
-
};
|
|
54
|
-
TuiDocDemoComponent.prototype.ngAfterViewInit = function () {
|
|
55
|
-
this.setResizerTextContent();
|
|
56
|
-
};
|
|
57
|
-
TuiDocDemoComponent.prototype.setResizerTextContent = function () {
|
|
58
|
-
if (!this.content || !this.resizerText) {
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
var paddingLeft = this.isBrowser
|
|
62
|
-
? getComputedStyle(this.content.nativeElement).paddingLeft
|
|
63
|
-
: "0";
|
|
64
|
-
var offsetWidth = this.content.nativeElement.offsetWidth;
|
|
65
|
-
this.resizerText.nativeElement.textContent = String(offsetWidth - parseInt(paddingLeft || "0", 10) * 2);
|
|
66
|
-
};
|
|
67
|
-
TuiDocDemoComponent.prototype.onDragStart = function (event) {
|
|
68
|
-
event.preventDefault();
|
|
69
|
-
this.initialX = event.clientX;
|
|
70
|
-
this.wrapperWidth = this.wrapper ? this.wrapper.nativeElement.offsetWidth : 0;
|
|
71
|
-
};
|
|
72
|
-
TuiDocDemoComponent.prototype.onDragContinues = function (event) {
|
|
73
|
-
var deltaX = this.initialX - event.clientX;
|
|
74
|
-
this.resizeContent(deltaX);
|
|
75
|
-
this.setResizerTextContent();
|
|
76
|
-
};
|
|
77
|
-
TuiDocDemoComponent.prototype.onDragEnd = function () {
|
|
78
|
-
this.wrapperWidth = this.wrapper ? this.wrapper.nativeElement.offsetWidth : 0;
|
|
79
|
-
};
|
|
80
|
-
TuiDocDemoComponent.prototype.toggleDetails = function () {
|
|
81
|
-
this.expanded = !this.expanded;
|
|
82
|
-
};
|
|
83
|
-
TuiDocDemoComponent.prototype.updateOnChange = function (updateOn) {
|
|
84
|
-
this.updateOn = updateOn;
|
|
85
|
-
this.createForm();
|
|
86
|
-
};
|
|
87
|
-
TuiDocDemoComponent.prototype.createForm = function () {
|
|
88
|
-
var _a = this, control = _a.control, updateOn = _a.updateOn;
|
|
89
|
-
if (!control) {
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
this.testForm = new FormGroup({ testValue: control }, { updateOn: updateOn });
|
|
93
|
-
};
|
|
94
|
-
TuiDocDemoComponent.prototype.resizeContent = function (delta) {
|
|
95
|
-
if (!this.wrapper) {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
this.renderer.setStyle(this.wrapper.nativeElement, "width", px(Math.max(this.wrapperWidth - delta, MIN_COMPONENT_WIDTH)));
|
|
99
|
-
};
|
|
100
|
-
var TuiDocDemoComponent_1;
|
|
101
|
-
TuiDocDemoComponent.ctorParameters = function () { return [
|
|
102
|
-
{ type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_MOBILE,] }] },
|
|
103
|
-
{ type: TuiDestroyService, decorators: [{ type: Inject, args: [TuiDestroyService,] }] },
|
|
104
|
-
{ type: Renderer2, decorators: [{ type: Inject, args: [Renderer2,] }] },
|
|
105
|
-
{ type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },
|
|
106
|
-
{ type: Location, decorators: [{ type: Inject, args: [Location,] }] },
|
|
107
|
-
{ type: UrlSerializer, decorators: [{ type: Inject, args: [UrlSerializer,] }] },
|
|
108
|
-
{ type: Array, decorators: [{ type: Inject, args: [TUI_DOC_DEMO_TEXTS,] }] }
|
|
109
|
-
]; };
|
|
110
|
-
__decorate([
|
|
111
|
-
ViewChild("content")
|
|
112
|
-
], TuiDocDemoComponent.prototype, "content", void 0);
|
|
113
|
-
__decorate([
|
|
114
|
-
ViewChild("wrapper")
|
|
115
|
-
], TuiDocDemoComponent.prototype, "wrapper", void 0);
|
|
116
|
-
__decorate([
|
|
117
|
-
ViewChild("resizerText")
|
|
118
|
-
], TuiDocDemoComponent.prototype, "resizerText", void 0);
|
|
119
|
-
__decorate([
|
|
120
|
-
Input()
|
|
121
|
-
], TuiDocDemoComponent.prototype, "control", void 0);
|
|
122
|
-
__decorate([
|
|
123
|
-
ContentChild(TemplateRef)
|
|
124
|
-
], TuiDocDemoComponent.prototype, "template", void 0);
|
|
125
|
-
__decorate([
|
|
126
|
-
HostListener("window:resize")
|
|
127
|
-
], TuiDocDemoComponent.prototype, "onResize", null);
|
|
128
|
-
TuiDocDemoComponent = TuiDocDemoComponent_1 = __decorate([
|
|
129
|
-
Component({
|
|
130
|
-
selector: "tui-doc-demo",
|
|
131
|
-
template: "<div\n class=\"t-bg-toggle\"\n [tuiMode]=\"null\"\n>\n <ng-template #tooltip>\n {{ texts[0] }}\n <a\n tuiLink\n tuiMode=\"onDark\"\n routerLink=\"/directives/mode\"\n >\n <code>tuiMode</code>\n </a>\n </ng-template>\n <ng-container *ngIf=\"isMobile; else desktop\">\n <tui-select\n tuiTextfieldSize=\"s\"\n class=\"t-mode\"\n [tuiTextfieldCleaner]=\"true\"\n [tuiHintContent]=\"tooltip\"\n [formControl]=\"modeControl\"\n >\n tuiMode\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"items\"\n ></tui-data-list-wrapper>\n </tui-select>\n </ng-container>\n <ng-template #desktop>\n tuiMode:\n <tui-tooltip\n describeId=\"form\"\n [content]=\"tooltip\"\n ></tui-tooltip>\n <div\n tuiGroup\n class=\"t-group\"\n [collapsed]=\"true\"\n >\n <tui-radio-block\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [item]=\"null\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n null\n </tui-radio-block>\n <tui-radio-block\n item=\"onDark\"\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n onDark\n </tui-radio-block>\n <tui-radio-block\n item=\"onLight\"\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n onLight\n </tui-radio-block>\n </div>\n </ng-template>\n <tui-checkbox-labeled\n size=\"m\"\n class=\"t-checkbox\"\n [(ngModel)]=\"opaque\"\n >\n {{ texts[1] }}\n </tui-checkbox-labeled>\n</div>\n<div\n #wrapper\n class=\"t-wrapper\"\n [class.t-wrapper_dark]=\"modeControl.value === 'onDark'\"\n [class.t-wrapper_gray]=\"modeControl.value === 'onLight'\"\n [class.t-wrapper_transparent]=\"!opaque\"\n>\n <div\n #content\n id=\"demoContent\"\n class=\"t-content\"\n >\n <form\n *ngIf=\"testForm\"\n class=\"t-form\"\n [formGroup]=\"testForm\"\n >\n <div class=\"t-input-wrapper\">\n <ng-container [ngTemplateOutlet]=\"template\"></ng-container>\n </div>\n <button\n tuiButton\n type=\"button\"\n size=\"s\"\n class=\"t-button\"\n [iconRight]=\"icon\"\n (click)=\"toggleDetails()\"\n >\n {{ texts[2] }}\n </button>\n <ng-template #icon>\n <tui-svg\n src=\"tuiIconChevronDown\"\n class=\"t-icon\"\n [class.t-icon_rotated]=\"expanded\"\n ></tui-svg>\n </ng-template>\n <tui-expand\n class=\"t-expand\"\n [expanded]=\"expanded\"\n >\n <ng-template tuiExpandContent>\n <pre class=\"t-value\">Form data: {{ testForm.value | json }}</pre>\n <div\n tuiGroup\n class=\"t-form-controls\"\n >\n <tui-select\n tuiTextfieldSize=\"s\"\n class=\"t-select\"\n [ngModel]=\"updateOn\"\n [ngModelOptions]=\"{standalone: true}\"\n (ngModelChange)=\"updateOnChange($event)\"\n >\n updateOn\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"updateOnVariants\"\n ></tui-data-list-wrapper>\n </tui-select>\n <button\n tuiButton\n type=\"reset\"\n size=\"s\"\n class=\"tui-group__auto-width-item\"\n >\n Reset\n </button>\n <button\n tuiButton\n type=\"submit\"\n size=\"s\"\n class=\"tui-group__auto-width-item\"\n >\n Submit\n </button>\n </div>\n </ng-template>\n </tui-expand>\n </form>\n <ng-content></ng-content>\n </div>\n <button\n tabindex=\"-1\"\n class=\"t-resizer\"\n (tuiDragStart)=\"onDragStart($event)\"\n (tuiDragContinues)=\"onDragContinues($event)\"\n (tuiDragEnd)=\"onDragEnd()\"\n >\n <span\n #resizerText\n class=\"t-resizer-text\"\n ></span>\n </button>\n</div>\n",
|
|
132
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
133
|
-
providers: [
|
|
134
|
-
TuiDestroyService,
|
|
135
|
-
{
|
|
136
|
-
provide: TuiModeDirective,
|
|
137
|
-
useExisting: forwardRef(function () { return TuiDocDemoComponent_1; }),
|
|
138
|
-
},
|
|
139
|
-
],
|
|
140
|
-
styles: [":host{position:relative;display:block;min-width:100%;margin:1.5rem 0}.t-bg-toggle{position:absolute;bottom:calc(100% + .75rem);display:flex;align-items:center;justify-content:flex-end;pointer-events:none;width:100%}.t-bg-toggle>*{pointer-events:auto}.t-wrapper{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);display:flex;border:1px solid var(--tui-base-03);border-radius:var(--tui-radius-m);max-width:100%;min-height:6rem;width:100%;background-color:var(--tui-base-01);overflow:hidden}.t-wrapper.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-base-02) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-base-02) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-base-02) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-base-02) 75%);background-size:1.25rem 1.25rem;background-position:0 0,0 .625rem,.625rem -.625rem,-.625rem 0}.t-wrapper.t-wrapper_dark{background-color:#454e58;color:var(--tui-base-01)}.t-wrapper.t-wrapper_gray{background-color:#e5e7ea}.t-wrapper.t-wrapper_dark.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-focus) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-focus) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-focus) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-focus) 75%)}.t-wrapper.t-wrapper_gray.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-base-05) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-base-05) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-base-05) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-base-05) 75%)}:host-context(tui-root._mobile) .t-wrapper{min-height:auto}.t-content{flex:1 1 0;min-width:0;padding:1.5rem;box-sizing:border-box;overflow:hidden}:host-context(tui-root._mobile) .t-content{padding:1rem}.t-form{display:flex;flex-wrap:wrap;align-items:flex-start}.t-input-wrapper{width:100%;margin-bottom:.5rem}.t-expand{width:100%}.t-icon{transition-property:transform;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out}.t-icon_rotated{transform:rotate(180deg)}.t-value{flex:1;background:var(--tui-clear-inverse);padding:.75rem;border-radius:.25rem}.t-mode{width:12.5rem}.t-select{max-width:15rem}.t-resizer{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:0 0;font-size:inherit;line-height:inherit;box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:relative;width:3.5rem;min-height:inherit;flex-shrink:0;border-left:1px solid var(--tui-base-03);cursor:col-resize;outline:0;background:var(--tui-base-01);color:var(--tui-text-01)}.t-resizer:after,.t-resizer:before{content:'';position:absolute;top:.75rem;left:50%;bottom:.75rem;width:1px;background:var(--tui-base-05)}.t-resizer:before{transform:translateX(.125rem)}.t-resizer:after{transform:translateX(-.1875rem)}:host-context(tui-root._mobile) .t-resizer{display:none}.t-resizer-text{font:var(--tui-font-text-s);position:relative;z-index:1;padding:.75rem;background:var(--tui-base-01)}.wrapper_light .t-resizer-text{background:#3e464e}.t-checkbox,.t-group{margin-left:.75rem}.t-button,.t-form-controls{margin-top:.75rem}@supports ((position:-webkit-sticky) or (position:sticky)){@media screen and (min-height:37.5rem){:host{position:-webkit-sticky;position:sticky;top:4.625rem;z-index:2}}}"]
|
|
141
|
-
}),
|
|
142
|
-
__param(0, Inject(TUI_IS_MOBILE)),
|
|
143
|
-
__param(1, Inject(TuiDestroyService)),
|
|
144
|
-
__param(2, Inject(Renderer2)),
|
|
145
|
-
__param(3, Inject(PLATFORM_ID)),
|
|
146
|
-
__param(4, Inject(Location)),
|
|
147
|
-
__param(5, Inject(UrlSerializer)),
|
|
148
|
-
__param(6, Inject(TUI_DOC_DEMO_TEXTS))
|
|
149
|
-
], TuiDocDemoComponent);
|
|
150
|
-
return TuiDocDemoComponent;
|
|
151
|
-
}());
|
|
152
|
-
export { TuiDocDemoComponent };
|
|
153
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tZG9jLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9kZW1vL2RlbW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUNILGFBQWEsRUFDYix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFrQixXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxFQUFFLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBZ0IsZ0JBQWdCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBQyxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFckQsSUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFFaEMsV0FBVztBQWNYO0lBOEJJLDZCQUNvQyxRQUFpQixFQUNMLFFBQTJCLEVBQ25DLFFBQW1CLEVBQ2xDLFVBQW1DLEVBQ3RDLFdBQXFCLEVBQ2hCLGFBQTRCLEVBQ2QsS0FBK0I7UUFQeEUsaUJBZ0NDO1FBL0JtQyxhQUFRLEdBQVIsUUFBUSxD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bUIsQ0FBQztpQkFDckQ7YUFDSjs7U0FDSixDQUFDO1FBZ0NPLFdBQUEsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQ3JCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDakIsV0FBQSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDbkIsV0FBQSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDaEIsV0FBQSxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDckIsV0FBQSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtPQXJDdEIsbUJBQW1CLENBMkkvQjtJQUFELDBCQUFDO0NBQUEsQUEzSUQsSUEySUM7U0EzSVksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpc1BsYXRmb3JtQnJvd3NlciwgTG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgUExBVEZPUk1fSUQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtVcmxTZXJpYWxpemVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtweCwgVFVJX0lTX01PQklMRSwgVHVpRGVzdHJveVNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlCcmlnaHRuZXNzLCBUdWlNb2RlRGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtzdGFydFdpdGgsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1RVSV9ET0NfREVNT19URVhUU30gZnJvbSAnLi4vLi4vdG9rZW5zL2kxOG4nO1xuXG5jb25zdCBNSU5fQ09NUE9ORU5UX1dJRFRIID0gMTA0O1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGB0dWktZG9jLWRlbW9gLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9kZW1vLnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL2RlbW8uc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVHVpTW9kZURpcmVjdGl2ZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aURvY0RlbW9Db21wb25lbnQpLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURvY0RlbW9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICAgIEBWaWV3Q2hpbGQoYGNvbnRlbnRgKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29udGVudD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZChgd3JhcHBlcmApXG4gICAgcHJpdmF0ZSByZWFkb25seSB3cmFwcGVyPzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBAVmlld0NoaWxkKGByZXNpemVyVGV4dGApXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNpemVyVGV4dD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0Jyb3dzZXI6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBpbml0aWFsWCA9IDA7XG4gICAgcHJpdmF0ZSB3cmFwcGVyV2lkdGggPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsID0gbnVsbDtcblxuICAgIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYpXG4gICAgcmVhZG9ubHkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+PiB8IG51bGwgPSBudWxsO1xuXG4gICAgdGVzdEZvcm0/OiBGb3JtR3JvdXA7XG4gICAgdXBkYXRlT25WYXJpYW50cyA9IFtgY2hhbmdlYCwgYGJsdXJgLCBgc3VibWl0YF07XG4gICAgdXBkYXRlT246ICdjaGFuZ2UnIHwgJ2JsdXInIHwgJ3N1Ym1pdCcgPSBgY2hhbmdlYDtcbiAgICBleHBhbmRlZCA9IGZhbHNlO1xuICAgIG9wYXF1ZSA9IHRydWU7XG4gICAgbW9kZUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcbiAgICBtb2RlOiBUdWlCcmlnaHRuZXNzIHwgbnVsbCA9IG51bGw7XG4gICAgcmVhZG9ubHkgY2hhbmdlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgcmVhZG9ubHkgaXRlbXM6IHJlYWRvbmx5IFR1aUJyaWdodG5lc3NbXSA9IFtgb25MaWdodGAsIGBvbkRhcmtgXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFRVSV9JU19NT0JJTEUpIHJlYWRvbmx5IGlzTW9iaWxlOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkOiBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoTG9jYXRpb24pIGxvY2F0aW9uUmVmOiBMb2NhdGlvbixcbiAgICAgICAgQEluamVjdChVcmxTZXJpYWxpemVyKSB1cmxTZXJpYWxpemVyOiBVcmxTZXJpYWxpemVyLFxuICAgICAgICBASW5qZWN0KFRVSV9ET0NfREVNT19URVhUUykgcmVhZG9ubHkgdGV4dHM6IFtzdHJpbmcsIHN0cmluZywgc3RyaW5nXSxcbiAgICApIHtcbiAgICAgICAgdGhpcy5pc0Jyb3dzZXIgPSBpc1BsYXRmb3JtQnJvd3NlcihwbGF0Zm9ybUlkKTtcblxuICAgICAgICBjb25zdCBwYXJzZWRNb2RlID0gbG9jYXRpb25SZWYucGF0aCgpLm1hdGNoKC90dWlNb2RlPShvbkRhcmt8b25MaWdodCkvKTtcblxuICAgICAgICBpZiAocGFyc2VkTW9kZSAhPT0gbnVsbCAmJiBwYXJzZWRNb2RlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMubW9kZUNvbnRyb2wuc2V0VmFsdWUocGFyc2VkTW9kZVsxXSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm1vZGVDb250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMubW9kZUNvbnRyb2wudmFsdWUpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKG1vZGUgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHVybFRyZWUgPSB1cmxTZXJpYWxpemVyLnBhcnNlKGxvY2F0aW9uUmVmLnBhdGgoKSk7XG5cbiAgICAgICAgICAgICAgICB1cmxUcmVlLnF1ZXJ5UGFyYW1zID0ge1xuICAgICAgICAgICAgICAgICAgICAuLi51cmxUcmVlLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgICAgICAgICB0dWlNb2RlOiBtb2RlLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICBsb2NhdGlvblJlZi5nbyhTdHJpbmcodXJsVHJlZSkpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5tb2RlID0gbW9kZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZSQubmV4dCgpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgd2luZG93OnJlc2l6ZWApXG4gICAgb25SZXNpemUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0UmVzaXplclRleHRDb250ZW50KCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRSZXNpemVyVGV4dENvbnRlbnQoKTtcbiAgICB9XG5cbiAgICBzZXRSZXNpemVyVGV4dENvbnRlbnQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb250ZW50IHx8ICF0aGlzLnJlc2l6ZXJUZXh0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYWRkaW5nTGVmdCA9IHRoaXMuaXNCcm93c2VyXG4gICAgICAgICAgICA/IGdldENvbXB1dGVkU3R5bGUodGhpcy5jb250ZW50Lm5hdGl2ZUVsZW1lbnQpLnBhZGRpbmdMZWZ0XG4gICAgICAgICAgICA6IGAwYDtcbiAgICAgICAgY29uc3Qge29mZnNldFdpZHRofSA9IHRoaXMuY29udGVudC5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIHRoaXMucmVzaXplclRleHQubmF0aXZlRWxlbWVudC50ZXh0Q29udGVudCA9IFN0cmluZyhcbiAgICAgICAgICAgIG9mZnNldFdpZHRoIC0gcGFyc2VJbnQocGFkZGluZ0xlZnQgfHwgYDBgLCAxMCkgKiAyLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIG9uRHJhZ1N0YXJ0KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbFggPSBldmVudC5jbGllbnRYO1xuICAgICAgICB0aGlzLndyYXBwZXJXaWR0aCA9IHRoaXMud3JhcHBlciA/IHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIDogMDtcbiAgICB9XG5cbiAgICBvbkRyYWdDb250aW51ZXMoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGVsdGFYID0gdGhpcy5pbml0aWFsWCAtIGV2ZW50LmNsaWVudFg7XG5cbiAgICAgICAgdGhpcy5yZXNpemVDb250ZW50KGRlbHRhWCk7XG4gICAgICAgIHRoaXMuc2V0UmVzaXplclRleHRDb250ZW50KCk7XG4gICAgfVxuXG4gICAgb25EcmFnRW5kKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyYXBwZXJXaWR0aCA9IHRoaXMud3JhcHBlciA/IHRoaXMud3JhcHBlci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIDogMDtcbiAgICB9XG5cbiAgICB0b2dnbGVEZXRhaWxzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWQ7XG4gICAgfVxuXG4gICAgdXBkYXRlT25DaGFuZ2UodXBkYXRlT246ICdjaGFuZ2UnIHwgJ2JsdXInIHwgJ3N1Ym1pdCcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVPbiA9IHVwZGF0ZU9uO1xuICAgICAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUZvcm0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtjb250cm9sLCB1cGRhdGVPbn0gPSB0aGlzO1xuXG4gICAgICAgIGlmICghY29udHJvbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50ZXN0Rm9ybSA9IG5ldyBGb3JtR3JvdXAoe3Rlc3RWYWx1ZTogY29udHJvbH0sIHt1cGRhdGVPbn0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzaXplQ29udGVudChkZWx0YTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy53cmFwcGVyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICBgd2lkdGhgLFxuICAgICAgICAgICAgcHgoTWF0aC5tYXgodGhpcy53cmFwcGVyV2lkdGggLSBkZWx0YSwgTUlOX0NPTVBPTkVOVF9XSURUSCkpLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { NgModule } from '@angular/core';
|
|
4
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
-
import { RouterModule } from '@angular/router';
|
|
6
|
-
import { TuiDragModule } from '@taiga-ui/cdk';
|
|
7
|
-
import { TuiButtonModule, TuiDataListModule, TuiExpandModule, TuiGroupModule, TuiHintControllerModule, TuiLinkModule, TuiModeModule, TuiSvgModule, TuiTextfieldControllerModule, TuiTooltipModule, } from '@taiga-ui/core';
|
|
8
|
-
import { TuiCheckboxLabeledModule, TuiDataListWrapperModule, TuiRadioBlockModule, TuiSelectModule, } from '@taiga-ui/kit';
|
|
9
|
-
import { TuiDocDemoComponent } from './demo.component';
|
|
10
|
-
var TuiDocDemoModule = /** @class */ (function () {
|
|
11
|
-
function TuiDocDemoModule() {
|
|
12
|
-
}
|
|
13
|
-
TuiDocDemoModule = __decorate([
|
|
14
|
-
NgModule({
|
|
15
|
-
imports: [
|
|
16
|
-
CommonModule,
|
|
17
|
-
ReactiveFormsModule,
|
|
18
|
-
FormsModule,
|
|
19
|
-
RouterModule,
|
|
20
|
-
TuiLinkModule,
|
|
21
|
-
TuiDragModule,
|
|
22
|
-
TuiButtonModule,
|
|
23
|
-
TuiSelectModule,
|
|
24
|
-
TuiExpandModule,
|
|
25
|
-
TuiGroupModule,
|
|
26
|
-
TuiTooltipModule,
|
|
27
|
-
TuiModeModule,
|
|
28
|
-
TuiRadioBlockModule,
|
|
29
|
-
TuiCheckboxLabeledModule,
|
|
30
|
-
TuiSvgModule,
|
|
31
|
-
TuiDataListWrapperModule,
|
|
32
|
-
TuiDataListModule,
|
|
33
|
-
TuiTextfieldControllerModule,
|
|
34
|
-
TuiHintControllerModule,
|
|
35
|
-
],
|
|
36
|
-
declarations: [TuiDocDemoComponent],
|
|
37
|
-
exports: [TuiDocDemoComponent],
|
|
38
|
-
})
|
|
39
|
-
], TuiDocDemoModule);
|
|
40
|
-
return TuiDocDemoModule;
|
|
41
|
-
}());
|
|
42
|
-
export { TuiDocDemoModule };
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tZG9jLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9kZW1vL2RlbW8ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUNILGVBQWUsRUFDZixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLGNBQWMsRUFDZCx1QkFBdUIsRUFDdkIsYUFBYSxFQUNiLGFBQWEsRUFDYixZQUFZLEVBQ1osNEJBQTRCLEVBQzVCLGdCQUFnQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQ3hCLG1CQUFtQixFQUNuQixlQUFlLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBMkJyRDtJQUFBO0lBQStCLENBQUM7SUFBbkIsZ0JBQWdCO1FBekI1QixRQUFRLENBQUM7WUFDTixPQUFPLEVBQUU7Z0JBQ0wsWUFBWTtnQkFDWixtQkFBbUI7Z0JBQ25CLFdBQVc7Z0JBQ1gsWUFBWTtnQkFDWixhQUFhO2dCQUNiLGFBQWE7Z0JBQ2IsZUFBZTtnQkFDZixlQUFlO2dCQUNmLGVBQWU7Z0JBQ2YsY0FBYztnQkFDZCxnQkFBZ0I7Z0JBQ2hCLGFBQWE7Z0JBQ2IsbUJBQW1CO2dCQUNuQix3QkFBd0I7Z0JBQ3hCLFlBQVk7Z0JBQ1osd0JBQXdCO2dCQUN4QixpQkFBaUI7Z0JBQ2pCLDRCQUE0QjtnQkFDNUIsdUJBQXVCO2FBQzFCO1lBQ0QsWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7WUFDbkMsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7U0FDakMsQ0FBQztPQUNXLGdCQUFnQixDQUFHO0lBQUQsdUJBQUM7Q0FBQSxBQUFoQyxJQUFnQztTQUFuQixnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtSb3V0ZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1R1aURyYWdNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBUdWlCdXR0b25Nb2R1bGUsXG4gICAgVHVpRGF0YUxpc3RNb2R1bGUsXG4gICAgVHVpRXhwYW5kTW9kdWxlLFxuICAgIFR1aUdyb3VwTW9kdWxlLFxuICAgIFR1aUhpbnRDb250cm9sbGVyTW9kdWxlLFxuICAgIFR1aUxpbmtNb2R1bGUsXG4gICAgVHVpTW9kZU1vZHVsZSxcbiAgICBUdWlTdmdNb2R1bGUsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICBUdWlUb29sdGlwTW9kdWxlLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1xuICAgIFR1aUNoZWNrYm94TGFiZWxlZE1vZHVsZSxcbiAgICBUdWlEYXRhTGlzdFdyYXBwZXJNb2R1bGUsXG4gICAgVHVpUmFkaW9CbG9ja01vZHVsZSxcbiAgICBUdWlTZWxlY3RNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuXG5pbXBvcnQge1R1aURvY0RlbW9Db21wb25lbnR9IGZyb20gJy4vZGVtby5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBUdWlMaW5rTW9kdWxlLFxuICAgICAgICBUdWlEcmFnTW9kdWxlLFxuICAgICAgICBUdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIFR1aVNlbGVjdE1vZHVsZSxcbiAgICAgICAgVHVpRXhwYW5kTW9kdWxlLFxuICAgICAgICBUdWlHcm91cE1vZHVsZSxcbiAgICAgICAgVHVpVG9vbHRpcE1vZHVsZSxcbiAgICAgICAgVHVpTW9kZU1vZHVsZSxcbiAgICAgICAgVHVpUmFkaW9CbG9ja01vZHVsZSxcbiAgICAgICAgVHVpQ2hlY2tib3hMYWJlbGVkTW9kdWxlLFxuICAgICAgICBUdWlTdmdNb2R1bGUsXG4gICAgICAgIFR1aURhdGFMaXN0V3JhcHBlck1vZHVsZSxcbiAgICAgICAgVHVpRGF0YUxpc3RNb2R1bGUsXG4gICAgICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGUsXG4gICAgICAgIFR1aUhpbnRDb250cm9sbGVyTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpRG9jRGVtb0NvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW1R1aURvY0RlbW9Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEb2NEZW1vTW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { __assign, __decorate, __param } from "tslib";
|
|
2
|
-
import { Location } from '@angular/common';
|
|
3
|
-
import { Directive, EventEmitter, Inject, Input, OnChanges, OnInit, Output, TemplateRef, } from '@angular/core';
|
|
4
|
-
import { ActivatedRoute, Params, UrlSerializer } from '@angular/router';
|
|
5
|
-
import { BehaviorSubject, Subject } from 'rxjs';
|
|
6
|
-
import { coerceValue } from '../../utils/coerce-value';
|
|
7
|
-
var SERIALIZED_SUFFIX = "$";
|
|
8
|
-
// @bad TODO: refactor output and value sync
|
|
9
|
-
var TuiDocDocumentationPropertyConnectorDirective = /** @class */ (function () {
|
|
10
|
-
function TuiDocDocumentationPropertyConnectorDirective(template, locationRef, activatedRoute, urlSerializer) {
|
|
11
|
-
this.template = template;
|
|
12
|
-
this.locationRef = locationRef;
|
|
13
|
-
this.activatedRoute = activatedRoute;
|
|
14
|
-
this.urlSerializer = urlSerializer;
|
|
15
|
-
this.documentationPropertyName = "";
|
|
16
|
-
this.documentationPropertyMode = null;
|
|
17
|
-
this.documentationPropertyType = "";
|
|
18
|
-
this.documentationPropertyDeprecated = false;
|
|
19
|
-
this.documentationPropertyValues = null;
|
|
20
|
-
this.documentationPropertyValueChange = new EventEmitter();
|
|
21
|
-
this.changed$ = new Subject();
|
|
22
|
-
this.emits$ = new BehaviorSubject(1);
|
|
23
|
-
}
|
|
24
|
-
TuiDocDocumentationPropertyConnectorDirective.prototype.ngOnInit = function () {
|
|
25
|
-
this.parseParams(this.activatedRoute.snapshot.queryParams);
|
|
26
|
-
};
|
|
27
|
-
Object.defineProperty(TuiDocDocumentationPropertyConnectorDirective.prototype, "attrName", {
|
|
28
|
-
get: function () {
|
|
29
|
-
switch (this.documentationPropertyMode) {
|
|
30
|
-
case "input":
|
|
31
|
-
return "[" + this.documentationPropertyName + "]";
|
|
32
|
-
case "output":
|
|
33
|
-
return "(" + this.documentationPropertyName + ")";
|
|
34
|
-
case "input-output":
|
|
35
|
-
return "[(" + this.documentationPropertyName + ")]";
|
|
36
|
-
default:
|
|
37
|
-
return this.documentationPropertyName;
|
|
38
|
-
}
|
|
39
|
-
},
|
|
40
|
-
enumerable: true,
|
|
41
|
-
configurable: true
|
|
42
|
-
});
|
|
43
|
-
Object.defineProperty(TuiDocDocumentationPropertyConnectorDirective.prototype, "hasItems", {
|
|
44
|
-
get: function () {
|
|
45
|
-
return !!this.documentationPropertyValues;
|
|
46
|
-
},
|
|
47
|
-
enumerable: true,
|
|
48
|
-
configurable: true
|
|
49
|
-
});
|
|
50
|
-
Object.defineProperty(TuiDocDocumentationPropertyConnectorDirective.prototype, "shouldShowValues", {
|
|
51
|
-
get: function () {
|
|
52
|
-
return this.documentationPropertyMode !== "output";
|
|
53
|
-
},
|
|
54
|
-
enumerable: true,
|
|
55
|
-
configurable: true
|
|
56
|
-
});
|
|
57
|
-
TuiDocDocumentationPropertyConnectorDirective.prototype.ngOnChanges = function () {
|
|
58
|
-
this.changed$.next();
|
|
59
|
-
};
|
|
60
|
-
TuiDocDocumentationPropertyConnectorDirective.prototype.onValueChange = function (value) {
|
|
61
|
-
this.documentationPropertyValue = value;
|
|
62
|
-
this.documentationPropertyValueChange.emit(value);
|
|
63
|
-
this.setQueryParam(value);
|
|
64
|
-
};
|
|
65
|
-
TuiDocDocumentationPropertyConnectorDirective.prototype.emitEvent = function (event) {
|
|
66
|
-
// For more convenient debugging
|
|
67
|
-
console.info(this.attrName, event);
|
|
68
|
-
this.emits$.next(this.emits$.value + 1);
|
|
69
|
-
};
|
|
70
|
-
TuiDocDocumentationPropertyConnectorDirective.prototype.parseParams = function (params) {
|
|
71
|
-
var propertyValue = params[this.documentationPropertyName];
|
|
72
|
-
var propertyValueWithSuffix = params["" + this.documentationPropertyName + SERIALIZED_SUFFIX];
|
|
73
|
-
if (!propertyValue && !propertyValueWithSuffix) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
var value = !!propertyValueWithSuffix && this.documentationPropertyValues
|
|
77
|
-
? this.documentationPropertyValues[propertyValueWithSuffix]
|
|
78
|
-
: coerceValue(propertyValue);
|
|
79
|
-
this.onValueChange(value);
|
|
80
|
-
};
|
|
81
|
-
TuiDocDocumentationPropertyConnectorDirective.prototype.setQueryParam = function (value) {
|
|
82
|
-
var _a;
|
|
83
|
-
var tree = this.urlSerializer.parse(this.locationRef.path());
|
|
84
|
-
var isValueAvailableByKey = value instanceof Object;
|
|
85
|
-
var computedValue = isValueAvailableByKey && this.documentationPropertyValues
|
|
86
|
-
? this.documentationPropertyValues.indexOf(value)
|
|
87
|
-
: value;
|
|
88
|
-
var suffix = isValueAvailableByKey ? SERIALIZED_SUFFIX : "";
|
|
89
|
-
var propName = this.documentationPropertyName + suffix;
|
|
90
|
-
tree.queryParams = __assign(__assign({}, tree.queryParams), (_a = {}, _a[propName] = computedValue, _a));
|
|
91
|
-
this.locationRef.go(String(tree));
|
|
92
|
-
};
|
|
93
|
-
TuiDocDocumentationPropertyConnectorDirective.ctorParameters = function () { return [
|
|
94
|
-
{ type: TemplateRef, decorators: [{ type: Inject, args: [TemplateRef,] }] },
|
|
95
|
-
{ type: Location, decorators: [{ type: Inject, args: [Location,] }] },
|
|
96
|
-
{ type: ActivatedRoute, decorators: [{ type: Inject, args: [ActivatedRoute,] }] },
|
|
97
|
-
{ type: UrlSerializer, decorators: [{ type: Inject, args: [UrlSerializer,] }] }
|
|
98
|
-
]; };
|
|
99
|
-
__decorate([
|
|
100
|
-
Input()
|
|
101
|
-
], TuiDocDocumentationPropertyConnectorDirective.prototype, "documentationPropertyName", void 0);
|
|
102
|
-
__decorate([
|
|
103
|
-
Input()
|
|
104
|
-
], TuiDocDocumentationPropertyConnectorDirective.prototype, "documentationPropertyMode", void 0);
|
|
105
|
-
__decorate([
|
|
106
|
-
Input()
|
|
107
|
-
], TuiDocDocumentationPropertyConnectorDirective.prototype, "documentationPropertyType", void 0);
|
|
108
|
-
__decorate([
|
|
109
|
-
Input()
|
|
110
|
-
], TuiDocDocumentationPropertyConnectorDirective.prototype, "documentationPropertyValue", void 0);
|
|
111
|
-
__decorate([
|
|
112
|
-
Input()
|
|
113
|
-
], TuiDocDocumentationPropertyConnectorDirective.prototype, "documentationPropertyDeprecated", void 0);
|
|
114
|
-
__decorate([
|
|
115
|
-
Input()
|
|
116
|
-
], TuiDocDocumentationPropertyConnectorDirective.prototype, "documentationPropertyValues", void 0);
|
|
117
|
-
__decorate([
|
|
118
|
-
Output()
|
|
119
|
-
], TuiDocDocumentationPropertyConnectorDirective.prototype, "documentationPropertyValueChange", void 0);
|
|
120
|
-
TuiDocDocumentationPropertyConnectorDirective = __decorate([
|
|
121
|
-
Directive({
|
|
122
|
-
selector: "ng-template[documentationPropertyName]",
|
|
123
|
-
exportAs: "documentationProperty",
|
|
124
|
-
}),
|
|
125
|
-
__param(0, Inject(TemplateRef)),
|
|
126
|
-
__param(1, Inject(Location)),
|
|
127
|
-
__param(2, Inject(ActivatedRoute)),
|
|
128
|
-
__param(3, Inject(UrlSerializer))
|
|
129
|
-
], TuiDocDocumentationPropertyConnectorDirective);
|
|
130
|
-
return TuiDocDocumentationPropertyConnectorDirective;
|
|
131
|
-
}());
|
|
132
|
-
export { TuiDocDocumentationPropertyConnectorDirective };
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi1wcm9wZXJ0eS1jb25uZWN0b3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLWRvYy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZG9jdW1lbnRhdGlvbi9kb2N1bWVudGF0aW9uLXByb3BlcnR5LWNvbm5lY3Rvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLFdBQVcsR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsZUFBZSxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU5QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFckQsSUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUM7QUFJOUIsNENBQTRDO0FBSzVDO0lBNEJJLHVEQUNrQyxRQUE4QyxFQUN6QyxXQUFxQixFQUNmLGNBQThCLEVBQy9CLGFBQTRCO1FBSHRDLGFBQVEsR0FBUixRQUFRLENBQXNDO1FBQ3pDLGdCQUFXLEdBQVgsV0FBVyxDQUFVO1FBQ2YsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQy9CLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBNUJ4RSw4QkFBeUIsR0FBRyxFQUFFLENBQUM7UUFHL0IsOEJBQXlCLEdBQThCLElBQUksQ0FBQztRQUc1RCw4QkFBeUIsR0FBRyxFQUFFLENBQUM7UUFNL0Isb0NBQStCLEdBQUcsS0FBSyxDQUFDO1FBR3hDLGdDQUEyQixHQUF3QixJQUFJLENBQUM7UUFHL0MscUNBQWdDLEdB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REFBQztDQUFBLEFBakhELElBaUhDO1NBakhZLDZDQUE2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFBhcmFtcywgVXJsU2VyaWFsaXplcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtjb2VyY2VWYWx1ZX0gZnJvbSAnLi4vLi4vdXRpbHMvY29lcmNlLXZhbHVlJztcblxuY29uc3QgU0VSSUFMSVpFRF9TVUZGSVggPSBgJGA7XG5cbmV4cG9ydCB0eXBlIERvY3VtZW50YXRpb25Qcm9wZXJ0eVR5cGUgPSAnaW5wdXQnIHwgJ291dHB1dCcgfCAnaW5wdXQtb3V0cHV0JyB8IG51bGw7XG5cbi8vIEBiYWQgVE9ETzogcmVmYWN0b3Igb3V0cHV0IGFuZCB2YWx1ZSBzeW5jXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYG5nLXRlbXBsYXRlW2RvY3VtZW50YXRpb25Qcm9wZXJ0eU5hbWVdYCxcbiAgICBleHBvcnRBczogYGRvY3VtZW50YXRpb25Qcm9wZXJ0eWAsXG59KVxuZXhwb3J0IGNsYXNzIFR1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZTxUPlxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXNcbntcbiAgICBASW5wdXQoKVxuICAgIGRvY3VtZW50YXRpb25Qcm9wZXJ0eU5hbWUgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgZG9jdW1lbnRhdGlvblByb3BlcnR5TW9kZTogRG9jdW1lbnRhdGlvblByb3BlcnR5VHlwZSA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIGRvY3VtZW50YXRpb25Qcm9wZXJ0eVR5cGUgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWUhOiBUO1xuXG4gICAgQElucHV0KClcbiAgICBkb2N1bWVudGF0aW9uUHJvcGVydHlEZXByZWNhdGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlczogcmVhZG9ubHkgVFtdIHwgbnVsbCA9IG51bGw7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBkb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VD4oKTtcblxuICAgIHJlYWRvbmx5IGNoYW5nZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHJlYWRvbmx5IGVtaXRzJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoMSk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUZW1wbGF0ZVJlZikgcmVhZG9ubHkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+PixcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBJbmplY3QoQWN0aXZhdGVkUm91dGUpIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBASW5qZWN0KFVybFNlcmlhbGl6ZXIpIHByaXZhdGUgcmVhZG9ubHkgdXJsU2VyaWFsaXplcjogVXJsU2VyaWFsaXplcixcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wYXJzZVBhcmFtcyh0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zKTtcbiAgICB9XG5cbiAgICBnZXQgYXR0ck5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgc3dpdGNoICh0aGlzLmRvY3VtZW50YXRpb25Qcm9wZXJ0eU1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgYGlucHV0YDpcbiAgICAgICAgICAgICAgICByZXR1cm4gYFske3RoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5TmFtZX1dYDtcbiAgICAgICAgICAgIGNhc2UgYG91dHB1dGA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAoJHt0aGlzLmRvY3VtZW50YXRpb25Qcm9wZXJ0eU5hbWV9KWA7XG4gICAgICAgICAgICBjYXNlIGBpbnB1dC1vdXRwdXRgOlxuICAgICAgICAgICAgICAgIHJldHVybiBgWygke3RoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5TmFtZX0pXWA7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50YXRpb25Qcm9wZXJ0eU5hbWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgaGFzSXRlbXMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWVzO1xuICAgIH1cblxuICAgIGdldCBzaG91bGRTaG93VmFsdWVzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kb2N1bWVudGF0aW9uUHJvcGVydHlNb2RlICE9PSBgb3V0cHV0YDtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VkJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgb25WYWx1ZUNoYW5nZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2V0UXVlcnlQYXJhbSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgZW1pdEV2ZW50KGV2ZW50OiB1bmtub3duKTogdm9pZCB7XG4gICAgICAgIC8vIEZvciBtb3JlIGNvbnZlbmllbnQgZGVidWdnaW5nXG4gICAgICAgIGNvbnNvbGUuaW5mbyh0aGlzLmF0dHJOYW1lLCBldmVudCk7XG5cbiAgICAgICAgdGhpcy5lbWl0cyQubmV4dCh0aGlzLmVtaXRzJC52YWx1ZSArIDEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcGFyc2VQYXJhbXMocGFyYW1zOiBQYXJhbXMpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcHJvcGVydHlWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gcGFyYW1zW3RoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5TmFtZV07XG4gICAgICAgIGNvbnN0IHByb3BlcnR5VmFsdWVXaXRoU3VmZml4OiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQgPVxuICAgICAgICAgICAgcGFyYW1zW2Ake3RoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5TmFtZX0ke1NFUklBTElaRURfU1VGRklYfWBdO1xuXG4gICAgICAgIGlmICghcHJvcGVydHlWYWx1ZSAmJiAhcHJvcGVydHlWYWx1ZVdpdGhTdWZmaXgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHZhbHVlID1cbiAgICAgICAgICAgICEhcHJvcGVydHlWYWx1ZVdpdGhTdWZmaXggJiYgdGhpcy5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZXNcbiAgICAgICAgICAgICAgICA/IHRoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWVzW3Byb3BlcnR5VmFsdWVXaXRoU3VmZml4IGFzIG51bWJlcl1cbiAgICAgICAgICAgICAgICA6IGNvZXJjZVZhbHVlKHByb3BlcnR5VmFsdWUpO1xuXG4gICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZSh2YWx1ZSBhcyBUKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFF1ZXJ5UGFyYW0odmFsdWU6IFQgfCBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBjb25zdCB0cmVlID0gdGhpcy51cmxTZXJpYWxpemVyLnBhcnNlKHRoaXMubG9jYXRpb25SZWYucGF0aCgpKTtcblxuICAgICAgICBjb25zdCBpc1ZhbHVlQXZhaWxhYmxlQnlLZXkgPSB2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdDtcbiAgICAgICAgY29uc3QgY29tcHV0ZWRWYWx1ZSA9XG4gICAgICAgICAgICBpc1ZhbHVlQXZhaWxhYmxlQnlLZXkgJiYgdGhpcy5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZXNcbiAgICAgICAgICAgICAgICA/IHRoaXMuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWVzLmluZGV4T2YodmFsdWUgYXMgVClcbiAgICAgICAgICAgICAgICA6IHZhbHVlO1xuXG4gICAgICAgIGNvbnN0IHN1ZmZpeCA9IGlzVmFsdWVBdmFpbGFibGVCeUtleSA/IFNFUklBTElaRURfU1VGRklYIDogYGA7XG4gICAgICAgIGNvbnN0IHByb3BOYW1lID0gdGhpcy5kb2N1bWVudGF0aW9uUHJvcGVydHlOYW1lICsgc3VmZml4O1xuXG4gICAgICAgIHRyZWUucXVlcnlQYXJhbXMgPSB7XG4gICAgICAgICAgICAuLi50cmVlLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgW3Byb3BOYW1lXTogY29tcHV0ZWRWYWx1ZSxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmxvY2F0aW9uUmVmLmdvKFN0cmluZyh0cmVlKSk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import { __decorate, __param, __read, __spread } from "tslib";
|
|
2
|
-
import { animate, style, transition, trigger } from '@angular/animations';
|
|
3
|
-
import { AfterContentInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, Inject, Input, QueryList, } from '@angular/core';
|
|
4
|
-
import { EMPTY_QUERY, itemsQueryListObservable, watch } from '@taiga-ui/cdk';
|
|
5
|
-
import { merge } from 'rxjs';
|
|
6
|
-
import { switchMap } from 'rxjs/operators';
|
|
7
|
-
import { TUI_DOC_DOCUMENTATION_TEXTS } from '../../tokens/i18n';
|
|
8
|
-
import { hexToRgb, rgbToHex } from '../../utils/color-conversion';
|
|
9
|
-
import { inspectAny } from '../../utils/inspect';
|
|
10
|
-
import { TuiDocDocumentationPropertyConnectorDirective } from './documentation-property-connector.directive';
|
|
11
|
-
// @bad TODO subscribe propertiesConnectors changes
|
|
12
|
-
// @bad TODO refactor to make more flexible
|
|
13
|
-
// @dynamic
|
|
14
|
-
var TuiDocDocumentationComponent = /** @class */ (function () {
|
|
15
|
-
function TuiDocDocumentationComponent(changeDetectorRef, texts) {
|
|
16
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
17
|
-
this.texts = texts;
|
|
18
|
-
this.heading = "";
|
|
19
|
-
this.showValues = true;
|
|
20
|
-
this.isAPI = false;
|
|
21
|
-
this.propertiesConnectors = EMPTY_QUERY;
|
|
22
|
-
this.activeItemIndex = 0;
|
|
23
|
-
}
|
|
24
|
-
TuiDocDocumentationComponent.prototype.ngAfterContentInit = function () {
|
|
25
|
-
itemsQueryListObservable(this.propertiesConnectors)
|
|
26
|
-
.pipe(switchMap(function (items) { return merge.apply(void 0, __spread(items.map(function (_a) {
|
|
27
|
-
var changed$ = _a.changed$;
|
|
28
|
-
return changed$;
|
|
29
|
-
}))); }), watch(this.changeDetectorRef))
|
|
30
|
-
.subscribe();
|
|
31
|
-
};
|
|
32
|
-
Object.defineProperty(TuiDocDocumentationComponent.prototype, "type", {
|
|
33
|
-
get: function () {
|
|
34
|
-
return this.isAPI ? this.texts[0] : this.texts[1];
|
|
35
|
-
},
|
|
36
|
-
enumerable: true,
|
|
37
|
-
configurable: true
|
|
38
|
-
});
|
|
39
|
-
TuiDocDocumentationComponent.prototype.getColor = function (color) {
|
|
40
|
-
if (color.length === 4) {
|
|
41
|
-
return color
|
|
42
|
-
.split("")
|
|
43
|
-
.reduce(function (result, current) { return __spread(result, [current, current]); }, [])
|
|
44
|
-
.join("")
|
|
45
|
-
.replace("#", "");
|
|
46
|
-
}
|
|
47
|
-
if (color.startsWith("#")) {
|
|
48
|
-
return color;
|
|
49
|
-
}
|
|
50
|
-
if (color === "transparent") {
|
|
51
|
-
return "#000000";
|
|
52
|
-
}
|
|
53
|
-
var parsed = color
|
|
54
|
-
.replace("rgb(", "")
|
|
55
|
-
.replace("rgba(", "")
|
|
56
|
-
.replace(")", "")
|
|
57
|
-
.replace(" ", "")
|
|
58
|
-
.split(",")
|
|
59
|
-
.map(function (v) { return Number.parseInt(v, 10); });
|
|
60
|
-
return rgbToHex.apply(void 0, __spread(parsed));
|
|
61
|
-
};
|
|
62
|
-
TuiDocDocumentationComponent.prototype.getOpacity = function (color) {
|
|
63
|
-
if (color.startsWith("#") || color.startsWith("rgb(")) {
|
|
64
|
-
return 100;
|
|
65
|
-
}
|
|
66
|
-
if (color === "transparent") {
|
|
67
|
-
return 0;
|
|
68
|
-
}
|
|
69
|
-
var lastComma = color.lastIndexOf(",");
|
|
70
|
-
var parsed = color
|
|
71
|
-
.slice(lastComma)
|
|
72
|
-
.replace(")", "")
|
|
73
|
-
.replace(" ", "")
|
|
74
|
-
.replace(",", "");
|
|
75
|
-
return Math.round(Number.parseFloat(parsed) * 100);
|
|
76
|
-
};
|
|
77
|
-
TuiDocDocumentationComponent.prototype.onColorChange = function (connector, color) {
|
|
78
|
-
var opacity = this.getOpacity(connector.documentationPropertyValue || "");
|
|
79
|
-
if (opacity === 100) {
|
|
80
|
-
connector.onValueChange(color);
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
var rgb = hexToRgb(color).join(", ");
|
|
84
|
-
var result = "rgba(" + rgb + ", " + opacity / 100 + ")";
|
|
85
|
-
connector.onValueChange(result);
|
|
86
|
-
};
|
|
87
|
-
TuiDocDocumentationComponent.prototype.onOpacityChange = function (connector, opacity) {
|
|
88
|
-
var hex = this.getColor(connector.documentationPropertyValue || "");
|
|
89
|
-
var rgb = hexToRgb(hex);
|
|
90
|
-
var result = "rgba(" + rgb + ", " + opacity / 100 + ")";
|
|
91
|
-
connector.onValueChange(result);
|
|
92
|
-
};
|
|
93
|
-
TuiDocDocumentationComponent.prototype.stripOptional = function (name) {
|
|
94
|
-
return name.replace("?", "");
|
|
95
|
-
};
|
|
96
|
-
TuiDocDocumentationComponent.prototype.isOptional = function (name) {
|
|
97
|
-
return name.includes("?");
|
|
98
|
-
};
|
|
99
|
-
TuiDocDocumentationComponent.prototype.isPrimitivePolymorpheusContent = function (value) {
|
|
100
|
-
return typeof value === "string" || typeof value === "number";
|
|
101
|
-
};
|
|
102
|
-
TuiDocDocumentationComponent.prototype.showCleaner = function (type) {
|
|
103
|
-
return type.includes("null");
|
|
104
|
-
};
|
|
105
|
-
TuiDocDocumentationComponent.prototype.showContentTooltip = function (type) {
|
|
106
|
-
return type.includes("PolymorpheusContent");
|
|
107
|
-
};
|
|
108
|
-
TuiDocDocumentationComponent.prototype.inspectAny = function (data) {
|
|
109
|
-
return inspectAny(data, 2);
|
|
110
|
-
};
|
|
111
|
-
TuiDocDocumentationComponent.ctorParameters = function () { return [
|
|
112
|
-
{ type: ChangeDetectorRef, decorators: [{ type: Inject, args: [ChangeDetectorRef,] }] },
|
|
113
|
-
{ type: Array, decorators: [{ type: Inject, args: [TUI_DOC_DOCUMENTATION_TEXTS,] }] }
|
|
114
|
-
]; };
|
|
115
|
-
__decorate([
|
|
116
|
-
Input()
|
|
117
|
-
], TuiDocDocumentationComponent.prototype, "heading", void 0);
|
|
118
|
-
__decorate([
|
|
119
|
-
Input()
|
|
120
|
-
], TuiDocDocumentationComponent.prototype, "showValues", void 0);
|
|
121
|
-
__decorate([
|
|
122
|
-
Input()
|
|
123
|
-
], TuiDocDocumentationComponent.prototype, "isAPI", void 0);
|
|
124
|
-
__decorate([
|
|
125
|
-
ContentChildren(TuiDocDocumentationPropertyConnectorDirective)
|
|
126
|
-
], TuiDocDocumentationComponent.prototype, "propertiesConnectors", void 0);
|
|
127
|
-
TuiDocDocumentationComponent = __decorate([
|
|
128
|
-
Component({
|
|
129
|
-
selector: "tui-doc-documentation",
|
|
130
|
-
template: "<h1\n *ngIf=\"heading\"\n class=\"t-heading\"\n>\n {{ heading }}\n</h1>\n<ng-content></ng-content>\n<table class=\"t-table\">\n <tr class=\"t-row t-row_header\">\n <th class=\"t-th t-cell t-cell_prop\">{{ texts[2] }}</th>\n <th class=\"t-th\">{{ type }}</th>\n <th\n *ngIf=\"showValues && !isAPI\"\n class=\"t-th t-cell t-cell_value\"\n >\n {{ texts[3] }}\n </th>\n </tr>\n <tr\n *ngFor=\"let propertyConnector of propertiesConnectors\"\n class=\"t-row\"\n [class.t-deprecated]=\"propertyConnector.documentationPropertyDeprecated\"\n >\n <td class=\"t-cell\">\n <div\n automation-id=\"tui-documentation__property-name\"\n class=\"t-property\"\n >\n {{ stripOptional(propertyConnector.attrName) }}\n <tui-badge\n *ngIf=\"isOptional(propertyConnector.attrName)\"\n size=\"s\"\n value=\"Optional\"\n ></tui-badge>\n </div>\n <span\n *ngIf=\"propertyConnector.documentationPropertyDeprecated\"\n class=\"t-deprecated-label\"\n >\n deprecated\n </span>\n <ng-container [ngTemplateOutlet]=\"propertyConnector.template\"></ng-container>\n </td>\n <td class=\"t-cell\">\n <span class=\"type\">\n {{ propertyConnector.documentationPropertyType }}\n <tui-tooltip\n *ngIf=\"showContentTooltip(propertyConnector.documentationPropertyType)\"\n [describeId]=\"propertyConnector.attrName\"\n [content]=\"content\"\n >\n <ng-template #content>\n {{ texts[4] }}\n <a\n tuiLink\n tuiMode=\"onDark\"\n target=\"_blank\"\n href=\"https://github.com/tinkoff/ng-polymorpheus\"\n >\n <code>ng-polymorpheus</code>\n </a>\n </ng-template>\n </tui-tooltip>\n </span>\n </td>\n <td\n *ngIf=\"showValues\"\n class=\"t-cell\"\n >\n <ng-container *ngIf=\"propertyConnector.shouldShowValues; else elseEmitter\">\n <tui-select\n *ngIf=\"propertyConnector.hasItems; else noItems\"\n tuiTextfieldSize=\"m\"\n tuiDropdownLimitWidth=\"min\"\n [tuiTextfieldCleaner]=\"showCleaner(propertyConnector.documentationPropertyType)\"\n [tuiTextfieldLabelOutside]=\"true\"\n [nativeId]=\"propertyConnector.attrName\"\n [valueContent]=\"selectContent\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n >\n <code class=\"t-exception\">null</code>\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"propertyConnector.documentationPropertyValues\"\n [itemContent]=\"selectContent\"\n ></tui-data-list-wrapper>\n </tui-select>\n <ng-template\n #selectContent\n let-data\n >\n <code>{{ inspectAny(data) }}</code>\n </ng-template>\n\n <ng-template #noItems>\n <ng-container [ngSwitch]=\"propertyConnector.documentationPropertyType\">\n <tui-toggle\n *ngSwitchCase=\"'boolean'\"\n size=\"l\"\n [nativeId]=\"propertyConnector.attrName\"\n [showIcons]=\"true\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-toggle>\n\n <tui-primitive-textfield\n *ngSwitchCase=\"'string'\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldCleaner]=\"true\"\n [value]=\"propertyConnector.documentationPropertyValue || ''\"\n (valueChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-primitive-textfield>\n\n <div\n *ngSwitchCase=\"'color'\"\n tuiGroup\n >\n <tui-primitive-textfield\n tuiTextfieldType=\"text\"\n tuiTextfieldSize=\"m\"\n [attr.id]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiInputOpacity]=\"getOpacity(propertyConnector.documentationPropertyValue)\"\n [value]=\"getColor(propertyConnector.documentationPropertyValue)\"\n (valueChange)=\"onColorChange(propertyConnector, $event)\"\n ></tui-primitive-textfield>\n <tui-input-count\n tuiTextfieldSize=\"m\"\n [max]=\"100\"\n [ngModel]=\"getOpacity(propertyConnector.documentationPropertyValue)\"\n (ngModelChange)=\"onOpacityChange(propertyConnector, $event)\"\n >\n Opacity\n </tui-input-count>\n </div>\n\n <tui-input-count\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-input-count>\n\n <ng-container *ngSwitchCase=\"'PolymorpheusContent'\">\n <tui-primitive-textfield\n *ngIf=\"isPrimitivePolymorpheusContent(propertyConnector.documentationPropertyValue)\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldCleaner]=\"true\"\n [value]=\"propertyConnector.documentationPropertyValue.toString()\"\n (valueChange)=\"propertyConnector.onValueChange($event)\"\n >\n Default content\n </tui-primitive-textfield>\n </ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n\n <ng-template #elseEmitter>\n <tui-notification\n class=\"t-output\"\n [@emitEvent]=\"propertyConnector.emits$ | async\"\n >\n Emit!\n </tui-notification>\n </ng-template>\n </td>\n </tr>\n</table>\n",
|
|
131
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
132
|
-
animations: [
|
|
133
|
-
trigger("emitEvent", [
|
|
134
|
-
transition(":increment", [style({ opacity: 1 }), animate("500ms ease-in")]),
|
|
135
|
-
]),
|
|
136
|
-
],
|
|
137
|
-
styles: [":host{display:block;min-width:100%}.t-table{width:100%;table-layout:fixed}.t-row:not(:last-child){border-bottom:1px solid var(--tui-base-03)}:host-context(tui-root._mobile) .t-row{display:flex;flex-wrap:wrap}:host-context(tui-root._mobile) .t-row_header{display:none}.t-cell{padding:1rem 1rem .875rem}.t-cell:first-child{padding-left:0}.t-cell:last-child{padding-right:0;text-align:right}.t-cell_prop{width:40%}.t-cell_value{max-width:20rem}:host-context(tui-root._mobile) .t-cell_value{width:9.375rem}:host-context(tui-root._mobile) .t-cell{width:100%;height:auto;padding:.5rem 0;text-align:left}.t-th{padding:.5rem 1rem;color:var(--tui-text-02);font-weight:400;text-align:left}.t-property{font:var(--tui-font-text-m);margin-bottom:.25rem;font-family:monospace;color:#8f75d1}:host-context(tui-root._mobile) .t-property{padding:.5rem 0}.t-type{font-family:monospace}.t-deprecated{background-color:var(--tui-error-bg);box-shadow:-1rem 0 var(--tui-error-bg),1rem 0 var(--tui-error-bg)}.t-deprecated-label{margin-right:.125rem;color:var(--tui-error-fill)}.t-exception{display:block;width:-webkit-max-content;width:-moz-max-content;width:max-content}.t-output{text-align:left;opacity:0}.t-heading{font:var(--tui-font-heading-4)}"]
|
|
138
|
-
}),
|
|
139
|
-
__param(0, Inject(ChangeDetectorRef)),
|
|
140
|
-
__param(1, Inject(TUI_DOC_DOCUMENTATION_TEXTS))
|
|
141
|
-
], TuiDocDocumentationComponent);
|
|
142
|
-
return TuiDocDocumentationComponent;
|
|
143
|
-
}());
|
|
144
|
-
export { TuiDocDocumentationComponent };
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tZG9jLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9kb2N1bWVudGF0aW9uL2RvY3VtZW50YXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUNILGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFDLDZDQUE2QyxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFFM0csbURBQW1EO0FBQ25ELDJDQUEyQztBQUMzQyxXQUFXO0FBWVg7SUFnQkksc0NBQ2dELGlCQUFvQyxFQUV2RSxLQUErQztRQUZaLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFFdkUsVUFBSyxHQUFMLEtBQUssQ0FBMEM7UUFqQjVELFlBQU8sR0FBRyxFQUFFLENBQUM7UUFHYixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBR2xCLFVBQUss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bnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RU1QVFlfUVVFUlksIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSwgd2F0Y2h9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHttZXJnZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3N3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1RVSV9ET0NfRE9DVU1FTlRBVElPTl9URVhUU30gZnJvbSAnLi4vLi4vdG9rZW5zL2kxOG4nO1xuaW1wb3J0IHtoZXhUb1JnYiwgcmdiVG9IZXh9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9yLWNvbnZlcnNpb24nO1xuaW1wb3J0IHtpbnNwZWN0QW55fSBmcm9tICcuLi8uLi91dGlscy9pbnNwZWN0JztcbmltcG9ydCB7VHVpRG9jRG9jdW1lbnRhdGlvblByb3BlcnR5Q29ubmVjdG9yRGlyZWN0aXZlfSBmcm9tICcuL2RvY3VtZW50YXRpb24tcHJvcGVydHktY29ubmVjdG9yLmRpcmVjdGl2ZSc7XG5cbi8vIEBiYWQgVE9ETyBzdWJzY3JpYmUgcHJvcGVydGllc0Nvbm5lY3RvcnMgY2hhbmdlc1xuLy8gQGJhZCBUT0RPIHJlZmFjdG9yIHRvIG1ha2UgbW9yZSBmbGV4aWJsZVxuLy8gQGR5bmFtaWNcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWRvYy1kb2N1bWVudGF0aW9uYCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vZG9jdW1lbnRhdGlvbi50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9kb2N1bWVudGF0aW9uLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoYGVtaXRFdmVudGAsIFtcbiAgICAgICAgICAgIHRyYW5zaXRpb24oYDppbmNyZW1lbnRgLCBbc3R5bGUoe29wYWNpdHk6IDF9KSwgYW5pbWF0ZShgNTAwbXMgZWFzZS1pbmApXSksXG4gICAgICAgIF0pLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURvY0RvY3VtZW50YXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASW5wdXQoKVxuICAgIGhlYWRpbmcgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgc2hvd1ZhbHVlcyA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIGlzQVBJID0gZmFsc2U7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFR1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZSlcbiAgICBwcm9wZXJ0aWVzQ29ubmVjdG9yczogUXVlcnlMaXN0PFR1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZTxhbnk+PiA9XG4gICAgICAgIEVNUFRZX1FVRVJZO1xuXG4gICAgYWN0aXZlSXRlbUluZGV4ID0gMDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChUVUlfRE9DX0RPQ1VNRU5UQVRJT05fVEVYVFMpXG4gICAgICAgIHJlYWRvbmx5IHRleHRzOiBbc3RyaW5nLCBzdHJpbmcsIHN0cmluZywgc3RyaW5nLCBzdHJpbmddLFxuICAgICkge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlKHRoaXMucHJvcGVydGllc0Nvbm5lY3RvcnMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoaXRlbXMgPT4gbWVyZ2UoLi4uaXRlbXMubWFwKCh7Y2hhbmdlZCR9KSA9PiBjaGFuZ2VkJCkpKSxcbiAgICAgICAgICAgICAgICB3YXRjaCh0aGlzLmNoYW5nZURldGVjdG9yUmVmKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0FQSSA/IHRoaXMudGV4dHNbMF0gOiB0aGlzLnRleHRzWzFdO1xuICAgIH1cblxuICAgIGdldENvbG9yKGNvbG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoY29sb3IubGVuZ3RoID09PSA0KSB7XG4gICAgICAgICAgICByZXR1cm4gY29sb3JcbiAgICAgICAgICAgICAgICAuc3BsaXQoYGApXG4gICAgICAgICAgICAgICAgLnJlZHVjZTxzdHJpbmdbXT4oKHJlc3VsdCwgY3VycmVudCkgPT4gWy4uLnJlc3VsdCwgY3VycmVudCwgY3VycmVudF0sIFtdKVxuICAgICAgICAgICAgICAgIC5qb2luKGBgKVxuICAgICAgICAgICAgICAgIC5yZXBsYWNlKGAjYCwgYGApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoYCNgKSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yID09PSBgdHJhbnNwYXJlbnRgKSB7XG4gICAgICAgICAgICByZXR1cm4gYCMwMDAwMDBgO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyc2VkID0gY29sb3JcbiAgICAgICAgICAgIC5yZXBsYWNlKGByZ2IoYCwgYGApXG4gICAgICAgICAgICAucmVwbGFjZShgcmdiYShgLCBgYClcbiAgICAgICAgICAgIC5yZXBsYWNlKGApYCwgYGApXG4gICAgICAgICAgICAucmVwbGFjZShgIGAsIGBgKVxuICAgICAgICAgICAgLnNwbGl0KGAsYClcbiAgICAgICAgICAgIC5tYXAodiA9PiBOdW1iZXIucGFyc2VJbnQodiwgMTApKSBhcyBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XG5cbiAgICAgICAgcmV0dXJuIHJnYlRvSGV4KC4uLnBhcnNlZCk7XG4gICAgfVxuXG4gICAgZ2V0T3BhY2l0eShjb2xvcjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoYCNgKSB8fCBjb2xvci5zdGFydHNXaXRoKGByZ2IoYCkpIHtcbiAgICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29sb3IgPT09IGB0cmFuc3BhcmVudGApIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbGFzdENvbW1hID0gY29sb3IubGFzdEluZGV4T2YoYCxgKTtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gY29sb3JcbiAgICAgICAgICAgIC5zbGljZShsYXN0Q29tbWEpXG4gICAgICAgICAgICAucmVwbGFjZShgKWAsIGBgKVxuICAgICAgICAgICAgLnJlcGxhY2UoYCBgLCBgYClcbiAgICAgICAgICAgIC5yZXBsYWNlKGAsYCwgYGApO1xuXG4gICAgICAgIHJldHVybiBNYXRoLnJvdW5kKE51bWJlci5wYXJzZUZsb2F0KHBhcnNlZCkgKiAxMDApO1xuICAgIH1cblxuICAgIG9uQ29sb3JDaGFuZ2UoXG4gICAgICAgIGNvbm5lY3RvcjogVHVpRG9jRG9jdW1lbnRhdGlvblByb3BlcnR5Q29ubmVjdG9yRGlyZWN0aXZlPHN0cmluZz4sXG4gICAgICAgIGNvbG9yOiBzdHJpbmcsXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9wYWNpdHkgPSB0aGlzLmdldE9wYWNpdHkoY29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlIHx8IGBgKTtcblxuICAgICAgICBpZiAob3BhY2l0eSA9PT0gMTAwKSB7XG4gICAgICAgICAgICBjb25uZWN0b3Iub25WYWx1ZUNoYW5nZShjb2xvcik7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJnYiA9IGhleFRvUmdiKGNvbG9yKS5qb2luKGAsIGApO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBgcmdiYSgke3JnYn0sICR7b3BhY2l0eSAvIDEwMH0pYDtcblxuICAgICAgICBjb25uZWN0b3Iub25WYWx1ZUNoYW5nZShyZXN1bHQpO1xuICAgIH1cblxuICAgIG9uT3BhY2l0eUNoYW5nZShcbiAgICAgICAgY29ubmVjdG9yOiBUdWlEb2NEb2N1bWVudGF0aW9uUHJvcGVydHlDb25uZWN0b3JEaXJlY3RpdmU8c3RyaW5nPixcbiAgICAgICAgb3BhY2l0eTogbnVtYmVyLFxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCBoZXggPSB0aGlzLmdldENvbG9yKGNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSB8fCBgYCk7XG4gICAgICAgIGNvbnN0IHJnYiA9IGhleFRvUmdiKGhleCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGByZ2JhKCR7cmdifSwgJHtvcGFjaXR5IC8gMTAwfSlgO1xuXG4gICAgICAgIGNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKHJlc3VsdCk7XG4gICAgfVxuXG4gICAgc3RyaXBPcHRpb25hbChuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gbmFtZS5yZXBsYWNlKGA/YCwgYGApO1xuICAgIH1cblxuICAgIGlzT3B0aW9uYWwobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBuYW1lLmluY2x1ZGVzKGA/YCk7XG4gICAgfVxuXG4gICAgaXNQcmltaXRpdmVQb2x5bW9ycGhldXNDb250ZW50KHZhbHVlOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09IGBzdHJpbmdgIHx8IHR5cGVvZiB2YWx1ZSA9PT0gYG51bWJlcmA7XG4gICAgfVxuXG4gICAgc2hvd0NsZWFuZXIodHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0eXBlLmluY2x1ZGVzKGBudWxsYCk7XG4gICAgfVxuXG4gICAgc2hvd0NvbnRlbnRUb29sdGlwKHR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHlwZS5pbmNsdWRlcyhgUG9seW1vcnBoZXVzQ29udGVudGApO1xuICAgIH1cblxuICAgIGluc3BlY3RBbnkoZGF0YTogdW5rbm93bik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBpbnNwZWN0QW55KGRhdGEsIDIpO1xuICAgIH1cbn1cbiJdfQ==
|