@taiga-ui/addon-doc 3.14.0-dev.main-6fca3d4 → 3.14.0-dev.main-49a682e
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/bundles/taiga-ui-addon-doc.umd.js +124 -124
- package/bundles/taiga-ui-addon-doc.umd.js.map +1 -1
- package/esm2015/components/code/code.component.js +7 -7
- package/esm2015/components/copy/copy.component.js +4 -4
- package/esm2015/components/demo/demo.component.js +11 -11
- package/esm2015/components/documentation/documentation-property-connector.directive.js +11 -11
- package/esm2015/components/documentation/documentation.component.js +12 -12
- package/esm2015/components/example/example.component.js +11 -11
- package/esm2015/components/language-switcher/language-switcher.component.js +18 -18
- package/esm2015/components/main/main.component.js +10 -10
- package/esm2015/components/navigation/navigation.component.js +19 -19
- package/esm2015/components/page/page-tab.directive.js +2 -2
- package/esm2015/components/page/page.component.js +12 -12
- package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
- package/esm2015/internal/header/header.component.js +5 -5
- package/esm2015/internal/input-opacity/input-opacity.directive.js +3 -3
- package/esm2015/internal/see-also/see-also.component.js +6 -6
- package/esm2015/internal/source-code/source-code.component.js +7 -7
- package/fesm2015/taiga-ui-addon-doc.js +124 -124
- package/fesm2015/taiga-ui-addon-doc.js.map +1 -1
- package/package.json +1 -1
|
@@ -48,8 +48,8 @@ function tuiTryParseMarkdownCodeBlock(text = ``) {
|
|
|
48
48
|
|
|
49
49
|
class TuiDocCodeComponent {
|
|
50
50
|
constructor() {
|
|
51
|
-
this.rawLoader$$ = new BehaviorSubject(
|
|
52
|
-
this.filename =
|
|
51
|
+
this.rawLoader$$ = new BehaviorSubject('');
|
|
52
|
+
this.filename = '';
|
|
53
53
|
this.processor$ = this.rawLoader$$.pipe(switchMap(tuiRawLoad), map(tuiTryParseMarkdownCodeBlock));
|
|
54
54
|
}
|
|
55
55
|
set code(code) {
|
|
@@ -64,9 +64,9 @@ TuiDocCodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
64
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocCodeComponent, decorators: [{
|
|
65
65
|
type: Component,
|
|
66
66
|
args: [{
|
|
67
|
-
selector:
|
|
68
|
-
templateUrl:
|
|
69
|
-
styleUrls: [
|
|
67
|
+
selector: 'tui-doc-code',
|
|
68
|
+
templateUrl: './code.template.html',
|
|
69
|
+
styleUrls: ['./code.style.less'],
|
|
70
70
|
}]
|
|
71
71
|
}], propDecorators: { filename: [{
|
|
72
72
|
type: Input
|
|
@@ -74,7 +74,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
74
74
|
type: Input
|
|
75
75
|
}], hasFilename: [{
|
|
76
76
|
type: HostBinding,
|
|
77
|
-
args: [
|
|
77
|
+
args: ['class._has-filename']
|
|
78
78
|
}] } });
|
|
79
79
|
|
|
80
80
|
class TuiDocCodeModule {
|
|
@@ -112,9 +112,9 @@ __decorate([
|
|
|
112
112
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocCopyComponent, decorators: [{
|
|
113
113
|
type: Component,
|
|
114
114
|
args: [{
|
|
115
|
-
selector:
|
|
116
|
-
templateUrl:
|
|
117
|
-
styleUrls: [
|
|
115
|
+
selector: 'tui-doc-copy',
|
|
116
|
+
templateUrl: './copy.template.html',
|
|
117
|
+
styleUrls: ['./copy.style.less'],
|
|
118
118
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
119
119
|
providers: [TuiDestroyService],
|
|
120
120
|
}]
|
|
@@ -200,14 +200,14 @@ class TuiDocDemoComponent {
|
|
|
200
200
|
this.texts = texts;
|
|
201
201
|
this.control = null;
|
|
202
202
|
this.template = null;
|
|
203
|
-
this.updateOnVariants = [
|
|
203
|
+
this.updateOnVariants = ['change', 'blur', 'submit'];
|
|
204
204
|
this.updateOn = this.updateOnVariants[0];
|
|
205
205
|
this.expanded = false;
|
|
206
206
|
this.opaque = true;
|
|
207
207
|
this.mode = this.getUrlTree().queryParams.tuiMode || null;
|
|
208
208
|
this.sandboxWidth = parseInt(this.getUrlTree().queryParams.sandboxWidth, 10);
|
|
209
209
|
this.change$ = new Subject();
|
|
210
|
-
this.items = [
|
|
210
|
+
this.items = ['onLight', 'onDark'];
|
|
211
211
|
}
|
|
212
212
|
onResize() {
|
|
213
213
|
this.updateWidth();
|
|
@@ -241,7 +241,7 @@ class TuiDocDemoComponent {
|
|
|
241
241
|
const clamped = Math.round(tuiClamp(safe, MIN_WIDTH, total)) - this.delta;
|
|
242
242
|
const validated = safe < total ? clamped : NaN;
|
|
243
243
|
this.resizer.nativeElement.textContent = String(clamped);
|
|
244
|
-
this.resizeable.nativeElement.style.width = validated ? tuiPx(safe) :
|
|
244
|
+
this.resizeable.nativeElement.style.width = validated ? tuiPx(safe) : '';
|
|
245
245
|
this.sandboxWidth = validated;
|
|
246
246
|
}
|
|
247
247
|
get delta() {
|
|
@@ -284,9 +284,9 @@ __decorate([
|
|
|
284
284
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocDemoComponent, decorators: [{
|
|
285
285
|
type: Component,
|
|
286
286
|
args: [{
|
|
287
|
-
selector:
|
|
288
|
-
templateUrl:
|
|
289
|
-
styleUrls: [
|
|
287
|
+
selector: 'tui-doc-demo',
|
|
288
|
+
templateUrl: './demo.template.html',
|
|
289
|
+
styleUrls: ['./demo.style.less'],
|
|
290
290
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
291
291
|
providers: [
|
|
292
292
|
TuiDestroyService,
|
|
@@ -316,10 +316,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
316
316
|
args: [TuiResizeableDirective, { static: true }]
|
|
317
317
|
}], content: [{
|
|
318
318
|
type: ViewChild,
|
|
319
|
-
args: [
|
|
319
|
+
args: ['content', { static: true }]
|
|
320
320
|
}], resizer: [{
|
|
321
321
|
type: ViewChild,
|
|
322
|
-
args: [
|
|
322
|
+
args: ['resizer', { static: true }]
|
|
323
323
|
}], control: [{
|
|
324
324
|
type: Input
|
|
325
325
|
}], template: [{
|
|
@@ -327,10 +327,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
327
327
|
args: [TemplateRef]
|
|
328
328
|
}], onResize: [{
|
|
329
329
|
type: HostListener,
|
|
330
|
-
args: [
|
|
330
|
+
args: ['window:resize']
|
|
331
331
|
}], onMouseUp: [{
|
|
332
332
|
type: HostListener,
|
|
333
|
-
args: [
|
|
333
|
+
args: ['document:mouseup.silent']
|
|
334
334
|
}], updateUrl: [] } });
|
|
335
335
|
|
|
336
336
|
class TuiDocDemoModule {
|
|
@@ -449,7 +449,7 @@ function isPossibleObject(value) {
|
|
|
449
449
|
return value.startsWith(`{`) && value.endsWith(`}`);
|
|
450
450
|
}
|
|
451
451
|
|
|
452
|
-
const SERIALIZED_SUFFIX =
|
|
452
|
+
const SERIALIZED_SUFFIX = '$';
|
|
453
453
|
// @bad TODO: refactor output and value sync
|
|
454
454
|
class TuiDocDocumentationPropertyConnectorDirective {
|
|
455
455
|
constructor(template, locationRef, activatedRoute, urlSerializer) {
|
|
@@ -457,9 +457,9 @@ class TuiDocDocumentationPropertyConnectorDirective {
|
|
|
457
457
|
this.locationRef = locationRef;
|
|
458
458
|
this.activatedRoute = activatedRoute;
|
|
459
459
|
this.urlSerializer = urlSerializer;
|
|
460
|
-
this.documentationPropertyName =
|
|
460
|
+
this.documentationPropertyName = '';
|
|
461
461
|
this.documentationPropertyMode = null;
|
|
462
|
-
this.documentationPropertyType =
|
|
462
|
+
this.documentationPropertyType = '';
|
|
463
463
|
this.documentationPropertyDeprecated = false;
|
|
464
464
|
this.documentationPropertyValues = null;
|
|
465
465
|
this.documentationPropertyValueChange = new EventEmitter();
|
|
@@ -471,11 +471,11 @@ class TuiDocDocumentationPropertyConnectorDirective {
|
|
|
471
471
|
}
|
|
472
472
|
get attrName() {
|
|
473
473
|
switch (this.documentationPropertyMode) {
|
|
474
|
-
case
|
|
474
|
+
case 'input':
|
|
475
475
|
return `[${this.documentationPropertyName}]`;
|
|
476
|
-
case
|
|
476
|
+
case 'output':
|
|
477
477
|
return `(${this.documentationPropertyName})`;
|
|
478
|
-
case
|
|
478
|
+
case 'input-output':
|
|
479
479
|
return `[(${this.documentationPropertyName})]`;
|
|
480
480
|
default:
|
|
481
481
|
return this.documentationPropertyName;
|
|
@@ -485,7 +485,7 @@ class TuiDocDocumentationPropertyConnectorDirective {
|
|
|
485
485
|
return !!this.documentationPropertyValues;
|
|
486
486
|
}
|
|
487
487
|
get shouldShowValues() {
|
|
488
|
-
return this.documentationPropertyMode !==
|
|
488
|
+
return this.documentationPropertyMode !== 'output';
|
|
489
489
|
}
|
|
490
490
|
ngOnChanges() {
|
|
491
491
|
this.changed$.next();
|
|
@@ -517,7 +517,7 @@ class TuiDocDocumentationPropertyConnectorDirective {
|
|
|
517
517
|
const computedValue = isValueAvailableByKey && this.documentationPropertyValues
|
|
518
518
|
? this.documentationPropertyValues.indexOf(value)
|
|
519
519
|
: value;
|
|
520
|
-
const suffix = isValueAvailableByKey ? SERIALIZED_SUFFIX :
|
|
520
|
+
const suffix = isValueAvailableByKey ? SERIALIZED_SUFFIX : '';
|
|
521
521
|
const propName = this.documentationPropertyName + suffix;
|
|
522
522
|
tree.queryParams = Object.assign(Object.assign({}, tree.queryParams), { [propName]: computedValue });
|
|
523
523
|
this.locationRef.go(String(tree));
|
|
@@ -528,8 +528,8 @@ TuiDocDocumentationPropertyConnectorDirective.ɵdir = i0.ɵɵngDeclareDirective(
|
|
|
528
528
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocDocumentationPropertyConnectorDirective, decorators: [{
|
|
529
529
|
type: Directive,
|
|
530
530
|
args: [{
|
|
531
|
-
selector:
|
|
532
|
-
exportAs:
|
|
531
|
+
selector: 'ng-template[documentationPropertyName]',
|
|
532
|
+
exportAs: 'documentationProperty',
|
|
533
533
|
}]
|
|
534
534
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
535
535
|
type: Inject,
|
|
@@ -623,7 +623,7 @@ class TuiInputOpacityDirective {
|
|
|
623
623
|
set tuiInputOpacity(opacity) {
|
|
624
624
|
const { nativeFocusableElement } = this.tuiFocusableComponent;
|
|
625
625
|
if (nativeFocusableElement) {
|
|
626
|
-
this.renderer.setStyle(nativeFocusableElement,
|
|
626
|
+
this.renderer.setStyle(nativeFocusableElement, 'opacity', opacity / 100);
|
|
627
627
|
}
|
|
628
628
|
}
|
|
629
629
|
}
|
|
@@ -632,7 +632,7 @@ TuiInputOpacityDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0
|
|
|
632
632
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputOpacityDirective, decorators: [{
|
|
633
633
|
type: Directive,
|
|
634
634
|
args: [{
|
|
635
|
-
selector:
|
|
635
|
+
selector: '[tuiInputOpacity]',
|
|
636
636
|
}]
|
|
637
637
|
}], ctorParameters: function () { return [{ type: i0.Renderer2, decorators: [{
|
|
638
638
|
type: Inject,
|
|
@@ -807,7 +807,7 @@ class TuiDocDocumentationComponent {
|
|
|
807
807
|
this.destroy$ = destroy$;
|
|
808
808
|
this.getColor = getColor;
|
|
809
809
|
this.getOpacity = getOpacity;
|
|
810
|
-
this.heading =
|
|
810
|
+
this.heading = '';
|
|
811
811
|
this.showValues = true;
|
|
812
812
|
this.isAPI = false;
|
|
813
813
|
this.propertiesConnectors = EMPTY_QUERY;
|
|
@@ -823,17 +823,17 @@ class TuiDocDocumentationComponent {
|
|
|
823
823
|
return this.isAPI ? this.texts[0] : this.texts[1];
|
|
824
824
|
}
|
|
825
825
|
onColorChange(connector, color) {
|
|
826
|
-
const opacity = this.getOpacity.transform(connector.documentationPropertyValue ||
|
|
826
|
+
const opacity = this.getOpacity.transform(connector.documentationPropertyValue || '');
|
|
827
827
|
if (opacity === 100) {
|
|
828
828
|
connector.onValueChange(color);
|
|
829
829
|
return;
|
|
830
830
|
}
|
|
831
|
-
const rgb = tuiHexToRgb(color).join(
|
|
831
|
+
const rgb = tuiHexToRgb(color).join(', ');
|
|
832
832
|
const result = `rgba(${rgb}, ${opacity / 100})`;
|
|
833
833
|
connector.onValueChange(result);
|
|
834
834
|
}
|
|
835
835
|
onOpacityChange(connector, opacity) {
|
|
836
|
-
const hex = this.getColor.transform(connector.documentationPropertyValue ||
|
|
836
|
+
const hex = this.getColor.transform(connector.documentationPropertyValue || '');
|
|
837
837
|
const rgb = tuiHexToRgb(hex);
|
|
838
838
|
const result = `rgba(${rgb}, ${opacity / 100})`;
|
|
839
839
|
connector.onValueChange(result);
|
|
@@ -841,20 +841,20 @@ class TuiDocDocumentationComponent {
|
|
|
841
841
|
}
|
|
842
842
|
TuiDocDocumentationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocDocumentationComponent, deps: [{ token: ChangeDetectorRef }, { token: TUI_DOC_DOCUMENTATION_TEXTS }, { token: TUI_DOC_EXCLUDED_PROPERTIES }, { token: TuiDestroyService, self: true }, { token: TuiGetColorPipe }, { token: TuiGetOpacityPipe }], target: i0.ɵɵFactoryTarget.Component });
|
|
843
843
|
TuiDocDocumentationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocDocumentationComponent, selector: "tui-doc-documentation", inputs: { heading: "heading", showValues: "showValues", isAPI: "isAPI" }, providers: [TuiGetColorPipe, TuiGetOpacityPipe, TuiDestroyService], queries: [{ propertyName: "propertiesConnectors", predicate: TuiDocDocumentationPropertyConnectorDirective }], ngImport: i0, 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-th_value\"\n >\n {{ texts[3] }}\n </th>\n </tr>\n <tr\n *ngFor=\"let propertyConnector of $any(propertiesConnectors) | tuiFilter : matcher : excludedProperties\"\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 {{ propertyConnector.attrName | tuiStripOptionalPipe }}\n <tui-badge\n *ngIf=\"propertyConnector.attrName | tuiIsOptionalPipe\"\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=\"propertyConnector.documentationPropertyType | tuiShowContentTooltip\"\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 t-cell_value\"\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]=\"propertyConnector.documentationPropertyType | tuiShowCleanerPipe\"\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>{{ data | tuiInspectAny }}</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 tuiTextfieldSize=\"m\"\n [attr.id]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiInputOpacity]=\"propertyConnector.documentationPropertyValue | tuiGetOpacity\"\n [value]=\"propertyConnector.documentationPropertyValue | tuiGetColorPipe\"\n (valueChange)=\"onColorChange(propertyConnector, $event)\"\n >\n <input\n tuiTextfield\n type=\"text\"\n />\n </tui-primitive-textfield>\n <tui-input-count\n tuiTextfieldSize=\"m\"\n [max]=\"100\"\n [ngModel]=\"propertyConnector.documentationPropertyValue | tuiGetOpacity\"\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=\"\n propertyConnector.documentationPropertyValue | tuiIsPrimitivePolymorpheusContentPipe\n \"\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", 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}.t-cell_prop{width:40%}.t-cell_value{text-align:right}: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:normal;text-align:left}.t-th_value{max-width:20rem;text-align:right}:host-context(tui-root._mobile) .t-th_value{width:9.375rem}.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)}\n"], components: [{ type: i1.TuiBadgeComponent, selector: "tui-badge", inputs: ["value", "size", "status", "hoverable"] }, { type: i2$1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }, { type: i2$1.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { type: i1.TuiSelectComponent, selector: "tui-select", inputs: ["stringify", "identityMatcher", "valueContent"] }, { type: i1.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels])", inputs: ["items"] }, { type: i1.TuiToggleComponent, selector: "tui-toggle", inputs: ["singleColor", "showIcons", "showLoader", "size"] }, { type: i2$1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i2$1.TuiTextfieldComponent, selector: "input[tuiTextfield], textarea[tuiTextfield]" }, { type: i1.TuiInputCountComponent, selector: "tui-input-count", inputs: ["step", "min", "max", "hideButtons", "prefix", "postfix"] }, { type: i2$1.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "status"], outputs: ["close"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2$1.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { type: i1.TuiSelectDirective, selector: "tui-select" }, { type: i2$1.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }, { type: i2$1.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight], [tuiDropdownOffset]", inputs: ["tuiDropdownAlign", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight", "tuiDropdownOffset"] }, { type: i2$1.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { type: i2$1.TuiTextfieldLabelOutsideDirective, selector: "[tuiTextfieldLabelOutside]", inputs: ["tuiTextfieldLabelOutside"] }, { type: i5$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2$1.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2$1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2$1.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: TuiInputOpacityDirective, selector: "[tuiInputOpacity]", inputs: ["tuiInputOpacity"] }, { type: i1.TuiInputCountDirective, selector: "tui-input-count" }], pipes: { "tuiFilter": i6$1.TuiFilterPipe, "tuiStripOptionalPipe": TuiStripOptionalPipe, "tuiIsOptionalPipe": TuiIsOptionalPipe, "tuiShowContentTooltip": TuiShowContentTooltip, "tuiShowCleanerPipe": TuiShowCleanerPipe, "tuiInspectAny": TuiInspectPipe, "tuiGetOpacity": TuiGetOpacityPipe, "tuiGetColorPipe": TuiGetColorPipe, "tuiIsPrimitivePolymorpheusContentPipe": TuiIsPrimitivePolymorpheusContentPipe, "async": i5.AsyncPipe }, animations: [
|
|
844
|
-
trigger(
|
|
845
|
-
transition(
|
|
844
|
+
trigger('emitEvent', [
|
|
845
|
+
transition(':increment', [style({ opacity: 1 }), animate('500ms ease-in')]),
|
|
846
846
|
]),
|
|
847
847
|
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
848
848
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocDocumentationComponent, decorators: [{
|
|
849
849
|
type: Component,
|
|
850
850
|
args: [{
|
|
851
|
-
selector:
|
|
852
|
-
templateUrl:
|
|
853
|
-
styleUrls: [
|
|
851
|
+
selector: 'tui-doc-documentation',
|
|
852
|
+
templateUrl: './documentation.template.html',
|
|
853
|
+
styleUrls: ['./documentation.style.less'],
|
|
854
854
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
855
855
|
animations: [
|
|
856
|
-
trigger(
|
|
857
|
-
transition(
|
|
856
|
+
trigger('emitEvent', [
|
|
857
|
+
transition(':increment', [style({ opacity: 1 }), animate('500ms ease-in')]),
|
|
858
858
|
]),
|
|
859
859
|
],
|
|
860
860
|
providers: [TuiGetColorPipe, TuiGetOpacityPipe, TuiDestroyService],
|
|
@@ -1065,8 +1065,8 @@ class TuiDocExampleComponent {
|
|
|
1065
1065
|
this.route = route;
|
|
1066
1066
|
this.ngLocation = ngLocation;
|
|
1067
1067
|
this.rawLoader$$ = new BehaviorSubject({});
|
|
1068
|
-
this.heading =
|
|
1069
|
-
this.description =
|
|
1068
|
+
this.heading = '';
|
|
1069
|
+
this.description = '';
|
|
1070
1070
|
this.componentName = this.location.pathname.slice(1);
|
|
1071
1071
|
this.defaultTabIndex = 0;
|
|
1072
1072
|
this.defaultTab = this.texts[this.defaultTabIndex];
|
|
@@ -1082,7 +1082,7 @@ class TuiDocExampleComponent {
|
|
|
1082
1082
|
this.rawLoader$$.next(content);
|
|
1083
1083
|
}
|
|
1084
1084
|
copyExampleLink() {
|
|
1085
|
-
const hashPosition = this.location.href.indexOf(
|
|
1085
|
+
const hashPosition = this.location.href.indexOf('#');
|
|
1086
1086
|
const currentUrl = hashPosition > -1
|
|
1087
1087
|
? this.location.href.slice(0, Math.max(0, hashPosition))
|
|
1088
1088
|
: this.location.href;
|
|
@@ -1099,28 +1099,28 @@ class TuiDocExampleComponent {
|
|
|
1099
1099
|
edit(files) {
|
|
1100
1100
|
var _a;
|
|
1101
1101
|
this.loading$.next(true);
|
|
1102
|
-
(_a = this.codeEditor) === null || _a === void 0 ? void 0 : _a.edit(this.componentName, this.id ||
|
|
1102
|
+
(_a = this.codeEditor) === null || _a === void 0 ? void 0 : _a.edit(this.componentName, this.id || '', files).finally(() => this.loading$.next(false));
|
|
1103
1103
|
}
|
|
1104
1104
|
setFragmentWithoutRedirect(id) {
|
|
1105
1105
|
const url = this.router
|
|
1106
|
-
.createUrlTree([], { relativeTo: this.route, fragment: id ||
|
|
1106
|
+
.createUrlTree([], { relativeTo: this.route, fragment: id || '' })
|
|
1107
1107
|
.toString();
|
|
1108
1108
|
this.ngLocation.go(url);
|
|
1109
1109
|
}
|
|
1110
1110
|
}
|
|
1111
|
-
TuiDocExampleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocExampleComponent, deps: [{ token:
|
|
1111
|
+
TuiDocExampleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocExampleComponent, deps: [{ token: 'id', attribute: true }, { token: Clipboard }, { token: TuiAlertService }, { token: LOCATION }, { token: TUI_COPY_TEXTS }, { token: TUI_DOC_EXAMPLE_TEXTS }, { token: TUI_DOC_CODE_EDITOR, optional: true }, { token: TUI_DOC_EXAMPLE_CONTENT_PROCESSOR }, { token: TUI_IS_CYPRESS }, { token: TUI_DOC_CODE_ACTIONS }, { token: Router }, { token: ActivatedRoute }, { token: Location$1 }], target: i0.ɵɵFactoryTarget.Component });
|
|
1112
1112
|
TuiDocExampleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocExampleComponent, selector: "tui-doc-example", inputs: { heading: "heading", description: "description", content: "content", componentName: "componentName" }, ngImport: i0, template: "<h3\n *ngIf=\"heading\"\n class=\"t-title\"\n>\n <span\n *polymorpheusOutlet=\"heading | tuiDocExampleCapitalize as text\"\n [textContent]=\"text\"\n ></span>\n <button\n *ngIf=\"id\"\n tuiIconButton\n type=\"button\"\n size=\"xs\"\n icon=\"tuiIconLinkLarge\"\n appearance=\"icon\"\n class=\"t-link-icon\"\n [title]=\"copy$ | async\"\n (click)=\"copyExampleLink()\"\n ></button>\n</h3>\n<h4\n *ngIf=\"description\"\n class=\"t-description\"\n>\n <ng-container *polymorpheusOutlet=\"description | tuiDocExampleCapitalize as text\">\n {{ text }}\n </ng-container>\n</h4>\n\n<div\n *ngIf=\"processor$ | async as files\"\n class=\"t-example\"\n>\n <ng-container *ngIf=\"files | tuiDocExampleGetTabs : defaultTab as tabs\">\n <div class=\"t-tabs-wrapper\">\n <tui-tabs-with-more\n class=\"t-tabs\"\n [(activeItemIndex)]=\"activeItemIndex\"\n >\n <ng-container *ngFor=\"let tab of tabs\">\n <button\n *tuiItem\n tuiTab\n >\n {{ tab }}\n </button>\n </ng-container>\n </tui-tabs-with-more>\n\n <button\n *ngIf=\"files | tuiMapper : visible\"\n tuiButton\n appearance=\"flat\"\n size=\"s\"\n [showLoader]=\"!!(loading$ | async)\"\n (click)=\"edit(files)\"\n >\n Edit on {{ codeEditor!.name }}\n </button>\n </div>\n\n <div\n *ngFor=\"let tab of tabs; let index = index\"\n class=\"t-content\"\n [class.t-content_animated]=\"!isCypress\"\n [class.t-content_visible]=\"activeItemIndex === index\"\n >\n <ng-container\n *ngIf=\"index === defaultTabIndex; else anotherTab\"\n [ngTemplateOutlet]=\"preview\"\n ></ng-container>\n <ng-template #anotherTab>\n <ng-container\n [ngTemplateOutlet]=\"codeSection\"\n [ngTemplateOutletContext]=\"{$implicit: files[tabs[activeItemIndex]] || ''}\"\n ></ng-container>\n </ng-template>\n </div>\n </ng-container>\n</div>\n\n<ng-template #preview>\n <div\n automation-id=\"tui-doc-example\"\n class=\"t-demo\"\n >\n <ng-content></ng-content>\n </div>\n</ng-template>\n\n<ng-template\n #codeSection\n let-code\n>\n <section class=\"t-code-actions\">\n <ng-container *ngFor=\"let action of codeActions\">\n <ng-container *polymorpheusOutlet=\"action as text; context: {$implicit: code}\">\n {{ text }}\n </ng-container>\n </ng-container>\n <tui-doc-copy [cdkCopyToClipboard]=\"code\"></tui-doc-copy>\n </section>\n <tui-doc-code [code]=\"code\"></tui-doc-code>\n</ng-template>\n", styles: [":host{position:relative;display:block;padding-top:3.5rem;clear:right}:host :host-context(tui-root._mobile){padding-top:2rem}.t-title{font:var(--tui-font-heading-5);margin:0 0 .5rem}:host-context(tui-root._mobile) .t-title{font:var(--tui-font-heading-6)}.t-description{font:var(--tui-font-text-m);font-weight:normal;margin:0}.t-example{position:relative;margin-top:1.5rem;border:1px solid var(--tui-base-03);border-radius:var(--tui-radius-m);box-shadow:0 .125rem .1875rem rgba(0,0,0,.1)}:host-context(tui-root._mobile) .t-example{margin-top:.75rem}.t-tabs-wrapper{display:flex;padding:0 2rem;box-shadow:inset 0 -1px var(--tui-base-03);justify-content:space-between;align-items:center}:host-context(tui-root._mobile) .t-tabs-wrapper{padding:0 1rem}.t-tabs{flex-grow:1}.t-demo{padding:2rem;overflow-x:auto}@media all and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm){.t-demo::-webkit-scrollbar,.t-demo::-webkit-scrollbar-thumb{width:1rem;height:1rem;border-radius:6.25rem;background-clip:padding-box;border:2.667rem solid transparent}.t-demo::-webkit-scrollbar{background-color:transparent}.t-demo::-webkit-scrollbar-thumb{background-color:var(--tui-clear-hover)}.t-demo::-webkit-scrollbar-thumb:hover{background-color:var(--tui-clear-active)}.t-demo::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-03)}}:host-context(tui-root._mobile) .t-demo{padding:1rem}.t-code-actions{position:absolute;top:4.375rem;right:1rem;display:flex;justify-content:flex-end;align-items:center}.t-code-actions>*{margin-left:.5rem}.t-link-icon{margin-left:.3rem;vertical-align:baseline}.t-content{will-change:opacity;height:0;visibility:hidden;opacity:0}.t-content_animated{transition:opacity .3s ease-in-out}.t-content_visible{height:auto;visibility:visible;opacity:1}\n"], components: [{ type: i2$1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { type: i1.TuiTabsWithMoreComponent, selector: "tui-tabs-with-more, nav[tuiTabsWithMore]", inputs: ["moreContent", "dropdownContent", "underline", "activeItemIndex", "itemsLimit"], outputs: ["activeItemIndexChange"] }, { type: i1.TuiTabComponent, selector: "a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]" }, { type: TuiDocCopyComponent, selector: "tui-doc-copy" }, { type: TuiDocCodeComponent, selector: "tui-doc-code", inputs: ["filename", "code"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6$1.TuiItemDirective, selector: "[tuiItem]" }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i8.CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }], pipes: { "tuiDocExampleCapitalize": TuiDocExampleCapitalizePipe, "async": i5.AsyncPipe, "tuiDocExampleGetTabs": TuiDocExampleGetTabsPipe, "tuiMapper": i6$1.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1113
1113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocExampleComponent, decorators: [{
|
|
1114
1114
|
type: Component,
|
|
1115
1115
|
args: [{
|
|
1116
|
-
selector:
|
|
1117
|
-
templateUrl:
|
|
1118
|
-
styleUrls: [
|
|
1116
|
+
selector: 'tui-doc-example',
|
|
1117
|
+
templateUrl: './example.template.html',
|
|
1118
|
+
styleUrls: ['./example.style.less'],
|
|
1119
1119
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1120
1120
|
}]
|
|
1121
1121
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
1122
1122
|
type: Attribute,
|
|
1123
|
-
args: [
|
|
1123
|
+
args: ['id']
|
|
1124
1124
|
}] }, { type: i8.Clipboard, decorators: [{
|
|
1125
1125
|
type: Inject,
|
|
1126
1126
|
args: [Clipboard]
|
|
@@ -1224,22 +1224,22 @@ class TuiLanguageSwitcherComponent {
|
|
|
1224
1224
|
constructor(switcher, iconsPath) {
|
|
1225
1225
|
this.switcher = switcher;
|
|
1226
1226
|
this.iconsPath = iconsPath;
|
|
1227
|
-
this.path = this.iconsPath(
|
|
1227
|
+
this.path = this.iconsPath('tuiIcon').replace('tuiIcon.svg#tuiIcon', '');
|
|
1228
1228
|
this.language = new FormControl(tuiCapitalizeFirstLetter(this.switcher.language));
|
|
1229
1229
|
this.flags = new Map([
|
|
1230
|
-
[
|
|
1231
|
-
[
|
|
1232
|
-
[
|
|
1233
|
-
[
|
|
1234
|
-
[
|
|
1235
|
-
[
|
|
1236
|
-
[
|
|
1237
|
-
[
|
|
1238
|
-
[
|
|
1239
|
-
[
|
|
1240
|
-
[
|
|
1241
|
-
[
|
|
1242
|
-
[
|
|
1230
|
+
['chinese', TuiCountryIsoCode.CN],
|
|
1231
|
+
['dutch', TuiCountryIsoCode.NL],
|
|
1232
|
+
['english', TuiCountryIsoCode.GB],
|
|
1233
|
+
['french', TuiCountryIsoCode.FR],
|
|
1234
|
+
['german', TuiCountryIsoCode.DE],
|
|
1235
|
+
['italian', TuiCountryIsoCode.IT],
|
|
1236
|
+
['polish', TuiCountryIsoCode.PL],
|
|
1237
|
+
['portuguese', TuiCountryIsoCode.PT],
|
|
1238
|
+
['russian', TuiCountryIsoCode.RU],
|
|
1239
|
+
['spanish', TuiCountryIsoCode.ES],
|
|
1240
|
+
['turkish', TuiCountryIsoCode.TR],
|
|
1241
|
+
['ukrainian', TuiCountryIsoCode.UA],
|
|
1242
|
+
['vietnamese', TuiCountryIsoCode.VN],
|
|
1243
1243
|
]);
|
|
1244
1244
|
this.names = Array.from(this.flags.keys());
|
|
1245
1245
|
}
|
|
@@ -1252,9 +1252,9 @@ TuiLanguageSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
1252
1252
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiLanguageSwitcherComponent, decorators: [{
|
|
1253
1253
|
type: Component,
|
|
1254
1254
|
args: [{
|
|
1255
|
-
selector:
|
|
1256
|
-
templateUrl:
|
|
1257
|
-
styleUrls: [
|
|
1255
|
+
selector: 'tui-language-switcher',
|
|
1256
|
+
templateUrl: './language-switcher.component.html',
|
|
1257
|
+
styleUrls: ['./language-switcher.component.less'],
|
|
1258
1258
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1259
1259
|
}]
|
|
1260
1260
|
}], ctorParameters: function () { return [{ type: i5$2.TuiLanguageSwitcher, decorators: [{
|
|
@@ -1393,7 +1393,7 @@ TuiScrollIntoViewLinkDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
|
1393
1393
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollIntoViewLinkDirective, decorators: [{
|
|
1394
1394
|
type: Directive,
|
|
1395
1395
|
args: [{
|
|
1396
|
-
selector:
|
|
1396
|
+
selector: '[tuiScrollIntoViewLink]',
|
|
1397
1397
|
providers: [TuiDestroyService],
|
|
1398
1398
|
}]
|
|
1399
1399
|
}], ctorParameters: function () { return [{ type: i6$1.TuiDestroyService, decorators: [{
|
|
@@ -1427,17 +1427,17 @@ class TuiDocNavigationComponent {
|
|
|
1427
1427
|
this.menuOpen = false;
|
|
1428
1428
|
this.openPagesArr = [];
|
|
1429
1429
|
this.openPagesGroupsArr = [];
|
|
1430
|
-
this.active =
|
|
1431
|
-
this.search = new FormControl(
|
|
1430
|
+
this.active = '';
|
|
1431
|
+
this.search = new FormControl('');
|
|
1432
1432
|
this.filtered$ = tuiControlValue(this.search).pipe(filter(search => search.length > 2), map(search => this.filterItems(this.flattenSubPages(this.items), search)));
|
|
1433
|
-
this.mode$ = this.mode.change$.pipe(startWith(null), map(() => this.mode.mode ||
|
|
1433
|
+
this.mode$ = this.mode.change$.pipe(startWith(null), map(() => this.mode.mode || 'onLight'));
|
|
1434
1434
|
// Angular can't navigate no anchor links
|
|
1435
1435
|
// https://stackoverflow.com/questions/36101756/angular2-routing-with-hashtag-to-page-anchor
|
|
1436
1436
|
title$.subscribe(title => {
|
|
1437
1437
|
changeDetectorRef.markForCheck();
|
|
1438
1438
|
titleService.setTitle(title);
|
|
1439
1439
|
this.openActivePageGroup();
|
|
1440
|
-
this.handleAnchorLink(this.activatedRoute.snapshot.fragment ||
|
|
1440
|
+
this.handleAnchorLink(this.activatedRoute.snapshot.fragment || '');
|
|
1441
1441
|
});
|
|
1442
1442
|
}
|
|
1443
1443
|
get canOpen() {
|
|
@@ -1459,11 +1459,11 @@ class TuiDocNavigationComponent {
|
|
|
1459
1459
|
onClick(input) {
|
|
1460
1460
|
input.open = false;
|
|
1461
1461
|
this.menuOpen = false;
|
|
1462
|
-
this.search.setValue(
|
|
1462
|
+
this.search.setValue('');
|
|
1463
1463
|
this.openActivePageGroup();
|
|
1464
1464
|
}
|
|
1465
1465
|
filterItems(items, search) {
|
|
1466
|
-
return items.map(section => tuiUniqBy(section.filter(({ title, keywords =
|
|
1466
|
+
return items.map(section => tuiUniqBy(section.filter(({ title, keywords = '' }) => {
|
|
1467
1467
|
title = title.toLowerCase();
|
|
1468
1468
|
search = search.toLowerCase();
|
|
1469
1469
|
keywords = keywords.toLowerCase();
|
|
@@ -1471,13 +1471,13 @@ class TuiDocNavigationComponent {
|
|
|
1471
1471
|
keywords.includes(search) ||
|
|
1472
1472
|
title.includes(tuiTransliterateKeyboardLayout(search)) ||
|
|
1473
1473
|
keywords.includes(tuiTransliterateKeyboardLayout(search)) ||
|
|
1474
|
-
search.replace(/-/gi,
|
|
1475
|
-
}),
|
|
1474
|
+
search.replace(/-/gi, '').includes(title));
|
|
1475
|
+
}), 'title'));
|
|
1476
1476
|
}
|
|
1477
1477
|
flattenSubPages(items) {
|
|
1478
1478
|
return items.reduce((array, item) => [
|
|
1479
1479
|
...array,
|
|
1480
|
-
item.reduce((pages, page) =>
|
|
1480
|
+
item.reduce((pages, page) => 'subPages' in page
|
|
1481
1481
|
? [...pages, ...page.subPages]
|
|
1482
1482
|
: [...pages, page], []),
|
|
1483
1483
|
], []);
|
|
@@ -1493,11 +1493,11 @@ class TuiDocNavigationComponent {
|
|
|
1493
1493
|
openActivePageGroup() {
|
|
1494
1494
|
this.items.forEach((pages, pagesIndex) => {
|
|
1495
1495
|
pages.forEach((page, pageIndex) => {
|
|
1496
|
-
if (
|
|
1496
|
+
if ('route' in page && this.isActiveRoute(page.route)) {
|
|
1497
1497
|
this.openPagesArr[pagesIndex] = true;
|
|
1498
1498
|
this.active = page.route;
|
|
1499
1499
|
}
|
|
1500
|
-
if (
|
|
1500
|
+
if ('subPages' in page) {
|
|
1501
1501
|
page.subPages.forEach(subPage => {
|
|
1502
1502
|
if (this.isActiveRoute(subPage.route)) {
|
|
1503
1503
|
this.openPagesArr[pagesIndex] = true;
|
|
@@ -1515,10 +1515,10 @@ class TuiDocNavigationComponent {
|
|
|
1515
1515
|
if (!element) {
|
|
1516
1516
|
return;
|
|
1517
1517
|
}
|
|
1518
|
-
element.classList.add(
|
|
1518
|
+
element.classList.add('tui-doc-animated-example');
|
|
1519
1519
|
element.scrollIntoView({
|
|
1520
|
-
block:
|
|
1521
|
-
inline:
|
|
1520
|
+
block: 'start',
|
|
1521
|
+
inline: 'nearest',
|
|
1522
1522
|
behavior: this.scrollBehavior,
|
|
1523
1523
|
});
|
|
1524
1524
|
}
|
|
@@ -1534,9 +1534,9 @@ __decorate([
|
|
|
1534
1534
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocNavigationComponent, decorators: [{
|
|
1535
1535
|
type: Component,
|
|
1536
1536
|
args: [{
|
|
1537
|
-
selector:
|
|
1538
|
-
templateUrl:
|
|
1539
|
-
styleUrls: [
|
|
1537
|
+
selector: 'tui-doc-navigation',
|
|
1538
|
+
templateUrl: 'navigation.template.html',
|
|
1539
|
+
styleUrls: ['navigation.style.less'],
|
|
1540
1540
|
providers: NAVIGATION_PROVIDERS,
|
|
1541
1541
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1542
1542
|
}]
|
|
@@ -1588,7 +1588,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
1588
1588
|
args: [TUI_DOC_SCROLL_BEHAVIOR]
|
|
1589
1589
|
}] }]; }, propDecorators: { menuOpen: [{
|
|
1590
1590
|
type: HostBinding,
|
|
1591
|
-
args: [
|
|
1591
|
+
args: ['class._open']
|
|
1592
1592
|
}], filterItems: [], flattenSubPages: [] } });
|
|
1593
1593
|
|
|
1594
1594
|
const TUI_DOC_LOGO = new InjectionToken(`[TUI_DOC_LOGO]: Main logo`, {
|
|
@@ -1602,7 +1602,7 @@ class TuiDocHeaderComponent {
|
|
|
1602
1602
|
this.router = router;
|
|
1603
1603
|
this.swipes$ = swipes$;
|
|
1604
1604
|
this.stream$ = new Subject();
|
|
1605
|
-
this.open$ = merge(this.router.events.pipe(mapTo(false)), this.stream$, this.swipes$.pipe(filter(swipe => swipe.direction ===
|
|
1605
|
+
this.open$ = merge(this.router.events.pipe(mapTo(false)), this.stream$, this.swipes$.pipe(filter(swipe => swipe.direction === 'left' || swipe.direction === 'right'), map(swipe => swipe.direction === 'right'))).pipe(startWith(false), distinctUntilChanged());
|
|
1606
1606
|
}
|
|
1607
1607
|
onClick() {
|
|
1608
1608
|
this.stream$.next(true);
|
|
@@ -1618,9 +1618,9 @@ TuiDocHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
1618
1618
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocHeaderComponent, decorators: [{
|
|
1619
1619
|
type: Component,
|
|
1620
1620
|
args: [{
|
|
1621
|
-
selector:
|
|
1622
|
-
templateUrl:
|
|
1623
|
-
styleUrls: [
|
|
1621
|
+
selector: 'header[tuiDocHeader]',
|
|
1622
|
+
templateUrl: './header.template.html',
|
|
1623
|
+
styleUrls: ['./header.style.less'],
|
|
1624
1624
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1625
1625
|
}]
|
|
1626
1626
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
@@ -1641,18 +1641,18 @@ class TuiDocMainComponent {
|
|
|
1641
1641
|
constructor(storage, windowRef) {
|
|
1642
1642
|
this.storage = storage;
|
|
1643
1643
|
this.windowRef = windowRef;
|
|
1644
|
-
this.night = this.storage.getItem(
|
|
1645
|
-
(this.storage.getItem(
|
|
1646
|
-
this.windowRef.matchMedia(
|
|
1644
|
+
this.night = this.storage.getItem('night') === 'true' ||
|
|
1645
|
+
(this.storage.getItem('night') === null &&
|
|
1646
|
+
this.windowRef.matchMedia('(prefers-color-scheme: dark)').matches);
|
|
1647
1647
|
this.change$ = new Subject();
|
|
1648
1648
|
}
|
|
1649
1649
|
get mode() {
|
|
1650
|
-
return this.night ?
|
|
1650
|
+
return this.night ? 'onDark' : null;
|
|
1651
1651
|
}
|
|
1652
1652
|
onMode(night) {
|
|
1653
1653
|
this.night = night;
|
|
1654
1654
|
this.change$.next();
|
|
1655
|
-
this.storage.setItem(
|
|
1655
|
+
this.storage.setItem('night', String(night));
|
|
1656
1656
|
}
|
|
1657
1657
|
}
|
|
1658
1658
|
TuiDocMainComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocMainComponent, deps: [{ token: LOCAL_STORAGE }, { token: WINDOW }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -1666,9 +1666,9 @@ TuiDocMainComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
1666
1666
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocMainComponent, decorators: [{
|
|
1667
1667
|
type: Component,
|
|
1668
1668
|
args: [{
|
|
1669
|
-
selector:
|
|
1670
|
-
templateUrl:
|
|
1671
|
-
styleUrls: [
|
|
1669
|
+
selector: 'tui-doc-main',
|
|
1670
|
+
templateUrl: './main.template.html',
|
|
1671
|
+
styleUrls: ['./main.style.less'],
|
|
1672
1672
|
encapsulation: ViewEncapsulation.None,
|
|
1673
1673
|
providers: [
|
|
1674
1674
|
{
|
|
@@ -1686,7 +1686,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
1686
1686
|
args: [WINDOW]
|
|
1687
1687
|
}] }]; }, propDecorators: { mode: [{
|
|
1688
1688
|
type: HostBinding,
|
|
1689
|
-
args: [
|
|
1689
|
+
args: ['attr.data-mode']
|
|
1690
1690
|
}] } });
|
|
1691
1691
|
|
|
1692
1692
|
class TuiScrollIntoViewLinkModule {
|
|
@@ -1893,7 +1893,7 @@ __decorate([
|
|
|
1893
1893
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocPageTabConnectorDirective, decorators: [{
|
|
1894
1894
|
type: Directive,
|
|
1895
1895
|
args: [{
|
|
1896
|
-
selector:
|
|
1896
|
+
selector: '[pageTab]',
|
|
1897
1897
|
}]
|
|
1898
1898
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
1899
1899
|
type: Inject,
|
|
@@ -1910,10 +1910,10 @@ class TuiDocSourceCodeComponent {
|
|
|
1910
1910
|
constructor(sourceCode, text) {
|
|
1911
1911
|
this.sourceCode = sourceCode;
|
|
1912
1912
|
this.text = text;
|
|
1913
|
-
this.header =
|
|
1914
|
-
this.package =
|
|
1915
|
-
this.type =
|
|
1916
|
-
this.path =
|
|
1913
|
+
this.header = '';
|
|
1914
|
+
this.package = '';
|
|
1915
|
+
this.type = '';
|
|
1916
|
+
this.path = '';
|
|
1917
1917
|
}
|
|
1918
1918
|
get pathOptions() {
|
|
1919
1919
|
return this.getPathOptions(this.header, this.package, this.type, this.path);
|
|
@@ -1935,8 +1935,8 @@ __decorate([
|
|
|
1935
1935
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocSourceCodeComponent, decorators: [{
|
|
1936
1936
|
type: Component,
|
|
1937
1937
|
args: [{
|
|
1938
|
-
selector:
|
|
1939
|
-
templateUrl:
|
|
1938
|
+
selector: 'tui-doc-source-code',
|
|
1939
|
+
templateUrl: './source-code.template.html',
|
|
1940
1940
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1941
1941
|
}]
|
|
1942
1942
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
@@ -1964,14 +1964,14 @@ class TuiDocSeeAlsoComponent {
|
|
|
1964
1964
|
getRouterLink(pageTitle) {
|
|
1965
1965
|
for (let i = 0; i < this.pages.length; i++) {
|
|
1966
1966
|
const page = this.pages
|
|
1967
|
-
.map(page => (
|
|
1967
|
+
.map(page => ('subPages' in page ? page.subPages : [page]))
|
|
1968
1968
|
.reduce((pages, subPages) => [...pages, ...subPages], [])
|
|
1969
1969
|
.find((page) => page.title === pageTitle);
|
|
1970
1970
|
if (page === null || page === void 0 ? void 0 : page.route) {
|
|
1971
1971
|
return page.route;
|
|
1972
1972
|
}
|
|
1973
1973
|
}
|
|
1974
|
-
return
|
|
1974
|
+
return '';
|
|
1975
1975
|
}
|
|
1976
1976
|
}
|
|
1977
1977
|
TuiDocSeeAlsoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocSeeAlsoComponent, deps: [{ token: TUI_DOC_SEE_ALSO_TEXT }, { token: TUI_DOC_PAGES }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -1979,9 +1979,9 @@ TuiDocSeeAlsoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
1979
1979
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocSeeAlsoComponent, decorators: [{
|
|
1980
1980
|
type: Component,
|
|
1981
1981
|
args: [{
|
|
1982
|
-
selector:
|
|
1983
|
-
templateUrl:
|
|
1984
|
-
styleUrls: [
|
|
1982
|
+
selector: 'tui-doc-see-also',
|
|
1983
|
+
templateUrl: './see-also.template.html',
|
|
1984
|
+
styleUrls: ['./see-also.style.less'],
|
|
1985
1985
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1986
1986
|
}]
|
|
1987
1987
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
@@ -1999,34 +1999,34 @@ class TuiDocPageComponent {
|
|
|
1999
1999
|
this.deprecated = deprecated;
|
|
2000
2000
|
this.defaultTabs = defaultTabs;
|
|
2001
2001
|
this.seeAlso = seeAlso;
|
|
2002
|
-
this.header =
|
|
2003
|
-
this.package =
|
|
2004
|
-
this.type =
|
|
2005
|
-
this.path =
|
|
2002
|
+
this.header = '';
|
|
2003
|
+
this.package = '';
|
|
2004
|
+
this.type = '';
|
|
2005
|
+
this.path = '';
|
|
2006
2006
|
this.tabConnectors = EMPTY_QUERY;
|
|
2007
2007
|
this.activeItemIndex = NaN;
|
|
2008
2008
|
}
|
|
2009
2009
|
get showSeeAlso() {
|
|
2010
2010
|
return !!this.seeAlso.length && this.activeItemIndex === 0;
|
|
2011
2011
|
}
|
|
2012
|
-
getRouterLink(tab =
|
|
2013
|
-
return `./${tab.replace(/ /g,
|
|
2012
|
+
getRouterLink(tab = '') {
|
|
2013
|
+
return `./${tab.replace(/ /g, '_')}`;
|
|
2014
2014
|
}
|
|
2015
2015
|
}
|
|
2016
|
-
TuiDocPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocPageComponent, deps: [{ token:
|
|
2016
|
+
TuiDocPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocPageComponent, deps: [{ token: 'deprecated', attribute: true }, { token: TUI_DOC_DEFAULT_TABS }, { token: PAGE_SEE_ALSO }], target: i0.ɵɵFactoryTarget.Component });
|
|
2017
2017
|
TuiDocPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocPageComponent, selector: "tui-doc-page", inputs: { header: "header", package: "package", type: "type", path: "path" }, providers: PAGE_PROVIDERS, queries: [{ propertyName: "tabConnectors", predicate: TuiDocPageTabConnectorDirective }], ngImport: i0, template: "<header class=\"t-header\">\n <h1 class=\"t-title\">\n {{ header }}\n <tui-tag\n *ngIf=\"deprecated !== null\"\n value=\"deprecated\"\n status=\"custom\"\n class=\"t-tag t-tag_deprecated\"\n ></tui-tag>\n <tui-tag\n *ngIf=\"package\"\n status=\"custom\"\n class=\"t-tag t-tag_package\"\n [value]=\"package\"\n [autoColor]=\"true\"\n ></tui-tag>\n </h1>\n <tui-tabs-with-more\n *ngIf=\"tabConnectors.length\"\n class=\"t-tabs\"\n [(activeItemIndex)]=\"activeItemIndex\"\n >\n <ng-container *ngFor=\"let tab of tabConnectors; first as first; index as index\">\n <ng-container *ngIf=\"first; else dynamicTab\">\n <a\n *tuiItem\n tuiTab\n routerLink=\"./\"\n routerLinkActive\n [routerLinkActiveOptions]=\"{exact: true}\"\n >\n {{ tab.pageTab || defaultTabs[index] }}\n </a>\n </ng-container>\n <ng-template #dynamicTab>\n <a\n *tuiItem\n tuiTab\n routerLinkActive\n [routerLink]=\"getRouterLink(tab.pageTab || defaultTabs[index])\"\n >\n {{ tab.pageTab || defaultTabs[index] }}\n </a>\n </ng-template>\n </ng-container>\n </tui-tabs-with-more>\n <tui-doc-source-code\n class=\"t-source-code\"\n [header]=\"header\"\n [package]=\"package\"\n [type]=\"type\"\n [path]=\"path\"\n ></tui-doc-source-code>\n</header>\n<div class=\"t-content\">\n <ng-content></ng-content>\n <tui-doc-see-also\n *ngIf=\"showSeeAlso\"\n class=\"t-see-also\"\n [seeAlso]=\"seeAlso\"\n ></tui-doc-see-also>\n <ng-container *ngFor=\"let tab of tabConnectors; index as index\">\n <ng-container\n *ngIf=\"index === activeItemIndex\"\n [ngTemplateOutlet]=\"tab.template\"\n ></ng-container>\n </ng-container>\n</div>\n", styles: [":host{display:flex;flex-direction:column;min-height:0;flex-basis:0;flex-grow:1}.t-header{display:flex;font:var(--tui-font-heading-3);flex-wrap:wrap;min-height:7.25rem;color:var(--tui-text-01);box-shadow:inset 0 -1px 0 0 var(--tui-base-03);padding:3.75rem 0 0;box-sizing:border-box;flex-shrink:0;margin:0 min(10vw,8.75rem)}:host-context(tui-root._mobile) .t-header{font:var(--tui-font-heading-4);min-height:4.5rem;padding:1.25rem 1.25rem 0;margin:0}.t-title{min-width:100%;font-size:inherit;margin:0}.t-tag{vertical-align:middle;text-transform:uppercase;margin-right:.5rem}.t-tag_deprecated{background-color:var(--tui-error-fill)}.t-tag.t-tag_package{color:#000}.t-tabs{flex:1;margin:1.125rem .3125rem 0 0}:host-context(tui-root._mobile) .t-tabs{margin-top:.25rem}.t-content{padding:2rem 0;margin:0 min(10vw,8.75rem)}:host-context(tui-root._mobile) .t-content{padding:2rem 1.25rem;margin:0}.t-see-also{min-width:18.75rem;width:30%;float:right;margin-left:1.5rem}:host-context(tui-root._mobile) .t-see-also{float:none;width:100%;margin:0 0 1.5rem}.t-source-code{align-self:flex-end;line-height:2.75rem}\n"], components: [{ type: i1.TuiTagComponent, selector: "tui-tag, a[tuiTag]", inputs: ["value", "editable", "separator", "maxLength", "size", "showLoader", "status", "hoverable", "removable", "disabled", "autoColor", "leftContent"], outputs: ["edited"] }, { type: i1.TuiTabsWithMoreComponent, selector: "tui-tabs-with-more, nav[tuiTabsWithMore]", inputs: ["moreContent", "dropdownContent", "underline", "activeItemIndex", "itemsLimit"], outputs: ["activeItemIndexChange"] }, { type: i1.TuiTabComponent, selector: "a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]" }, { type: TuiDocSourceCodeComponent, selector: "tui-doc-source-code", inputs: ["header", "package", "type", "path"] }, { type: TuiDocSeeAlsoComponent, selector: "tui-doc-see-also", inputs: ["seeAlso"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6$1.TuiItemDirective, selector: "[tuiItem]" }, { type: i6.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i6.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2018
2018
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocPageComponent, decorators: [{
|
|
2019
2019
|
type: Component,
|
|
2020
2020
|
args: [{
|
|
2021
|
-
selector:
|
|
2022
|
-
templateUrl:
|
|
2023
|
-
styleUrls: [
|
|
2021
|
+
selector: 'tui-doc-page',
|
|
2022
|
+
templateUrl: './page.template.html',
|
|
2023
|
+
styleUrls: ['./page.style.less'],
|
|
2024
2024
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2025
2025
|
providers: PAGE_PROVIDERS,
|
|
2026
2026
|
}]
|
|
2027
2027
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
2028
2028
|
type: Attribute,
|
|
2029
|
-
args: [
|
|
2029
|
+
args: ['deprecated']
|
|
2030
2030
|
}] }, { type: undefined, decorators: [{
|
|
2031
2031
|
type: Inject,
|
|
2032
2032
|
args: [TUI_DOC_DEFAULT_TABS]
|