@taiga-ui/kit 3.39.1 → 3.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taiga-ui-kit-components-accordion.umd.js +11 -7
- package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js +7 -3
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-files.umd.js +12 -8
- package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.js +42 -22
- package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-range.umd.js +5 -23
- package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js +5 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js +7 -3
- package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.js +22 -25
- package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +7 -3
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.js +6 -5
- package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-prompt.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-prompt.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-push.umd.js +7 -3
- package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select-option.umd.js +7 -3
- package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-stepper.umd.js +7 -3
- package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.js +11 -7
- package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.js +16 -27
- package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
- package/bundles/{taiga-ui-kit-components-text-area.umd.js → taiga-ui-kit-components-textarea.umd.js} +81 -64
- package/bundles/taiga-ui-kit-components-textarea.umd.js.map +1 -0
- package/bundles/taiga-ui-kit-components-tiles.umd.js +5 -0
- package/bundles/taiga-ui-kit-components-tiles.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tree.umd.js +7 -3
- package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components.umd.js +6 -6
- package/components/accordion/accordion-item/accordion-item.component.d.ts +3 -1
- package/components/calendar-range/calendar-range.component.d.ts +4 -3
- package/components/files/file/file.component.d.ts +3 -2
- package/components/index.d.ts +1 -1
- package/components/input-number/input-number.component.d.ts +7 -4
- package/components/input-range/input-range.component.d.ts +2 -4
- package/components/input-tag/input-tag.component.d.ts +5 -4
- package/components/pagination/pagination.component.d.ts +7 -6
- package/components/pagination/pagination.module.d.ts +3 -3
- package/components/pdf-viewer/pdf-viewer.component.d.ts +3 -1
- package/components/progress/progress-circle/progress-circle.component.d.ts +1 -1
- package/components/push/push.component.d.ts +3 -1
- package/components/select-option/select-option.component.d.ts +4 -3
- package/components/stepper/step/step.component.d.ts +3 -1
- package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +3 -1
- package/components/tag/tag.component.d.ts +3 -5
- package/components/tag/tag.module.d.ts +3 -4
- package/components/textarea/deprecated.d.ts +15 -0
- package/components/textarea/index.d.ts +4 -0
- package/components/textarea/package.json +10 -0
- package/components/{text-area/taiga-ui-kit-components-text-area.d.ts → textarea/taiga-ui-kit-components-textarea.d.ts} +1 -1
- package/components/{text-area/text-area.component.d.ts → textarea/textarea.component.d.ts} +3 -3
- package/components/textarea/textarea.directive.d.ts +8 -0
- package/components/{text-area/text-area.module.d.ts → textarea/textarea.module.d.ts} +6 -6
- package/components/tiles/tile.component.d.ts +3 -2
- package/components/tree/components/tree-item-content/tree-item-content.component.d.ts +3 -1
- package/esm2015/components/accordion/accordion-item/accordion-item.component.js +9 -4
- package/esm2015/components/calendar-month/calendar-month.component.js +1 -1
- package/esm2015/components/calendar-range/calendar-range.component.js +9 -5
- package/esm2015/components/files/file/file.component.js +9 -4
- package/esm2015/components/index.js +2 -2
- package/esm2015/components/input-number/input-number.component.js +29 -10
- package/esm2015/components/input-range/input-range.component.js +6 -16
- package/esm2015/components/input-slider/input-slider.component.js +6 -2
- package/esm2015/components/input-tag/input-tag.component.js +9 -5
- package/esm2015/components/pagination/pagination.component.js +18 -12
- package/esm2015/components/pagination/pagination.module.js +5 -8
- package/esm2015/components/pdf-viewer/pdf-viewer.component.js +9 -5
- package/esm2015/components/progress/progress-circle/progress-circle.component.js +7 -6
- package/esm2015/components/prompt/prompt.component.js +1 -1
- package/esm2015/components/push/push.component.js +9 -5
- package/esm2015/components/select-option/select-option.component.js +9 -5
- package/esm2015/components/stepper/step/step.component.js +9 -5
- package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +9 -4
- package/esm2015/components/tag/tag.component.js +12 -16
- package/esm2015/components/tag/tag.module.js +1 -5
- package/esm2015/components/textarea/deprecated.js +16 -0
- package/esm2015/components/textarea/index.js +5 -0
- package/esm2015/components/textarea/taiga-ui-kit-components-textarea.js +5 -0
- package/esm2015/components/textarea/textarea.component.js +217 -0
- package/esm2015/components/textarea/textarea.directive.js +19 -0
- package/esm2015/components/textarea/textarea.module.js +51 -0
- package/esm2015/components/tiles/tile.component.js +6 -1
- package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +9 -4
- package/fesm2015/taiga-ui-kit-components-accordion.js +8 -3
- package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-range.js +8 -4
- package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-files.js +9 -5
- package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-number.js +29 -10
- package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-range.js +5 -15
- package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js +5 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js +8 -4
- package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pagination.js +22 -19
- package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +8 -4
- package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-progress.js +6 -5
- package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-prompt.js +1 -1
- package/fesm2015/taiga-ui-kit-components-prompt.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-push.js +8 -4
- package/fesm2015/taiga-ui-kit-components-push.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select-option.js +8 -4
- package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-stepper.js +8 -4
- package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tabs.js +8 -3
- package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tag.js +12 -19
- package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
- package/fesm2015/{taiga-ui-kit-components-text-area.js → taiga-ui-kit-components-textarea.js} +41 -27
- package/fesm2015/taiga-ui-kit-components-textarea.js.map +1 -0
- package/fesm2015/taiga-ui-kit-components-tiles.js +5 -0
- package/fesm2015/taiga-ui-kit-components-tiles.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tree.js +8 -4
- package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components.js +1 -1
- package/package.json +5 -5
- package/bundles/taiga-ui-kit-components-text-area.umd.js.map +0 -1
- package/components/text-area/index.d.ts +0 -3
- package/components/text-area/package.json +0 -10
- package/components/text-area/text-area.directive.d.ts +0 -8
- package/esm2015/components/text-area/index.js +0 -4
- package/esm2015/components/text-area/taiga-ui-kit-components-text-area.js +0 -5
- package/esm2015/components/text-area/text-area.component.js +0 -217
- package/esm2015/components/text-area/text-area.directive.js +0 -18
- package/esm2015/components/text-area/text-area.module.js +0 -51
- package/fesm2015/taiga-ui-kit-components-text-area.js.map +0 -1
|
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { EventEmitter, Component, ChangeDetectionStrategy, Inject, Input, Output, Directive, Optional, SkipSelf, TemplateRef, ChangeDetectorRef, forwardRef, Self, inject, Injectable, NgModule } from '@angular/core';
|
|
3
3
|
import { tuiIsObserved, tuiCreateOptions, tuiProvideOptions, tuiIfMap, TuiDestroyService, AbstractTuiDialogService, TUI_ALERTS } from '@taiga-ui/cdk';
|
|
4
4
|
import * as i1 from '@taiga-ui/core';
|
|
5
|
-
import { TUI_CLOSE_WORD, TuiModeDirective, TUI_BUTTON_OPTIONS, TUI_ANIMATION_OPTIONS, tuiFadeIn, tuiSlideInRight, tuiHeightCollapse, TuiButtonModule, TuiLinkModule, TuiSvgModule, TuiFormatDatePipeModule } from '@taiga-ui/core';
|
|
5
|
+
import { TUI_CLOSE_WORD, TUI_COMMON_ICONS, TuiModeDirective, TUI_BUTTON_OPTIONS, TUI_ANIMATION_OPTIONS, tuiFadeIn, tuiSlideInRight, tuiHeightCollapse, TuiButtonModule, TuiLinkModule, TuiSvgModule, TuiFormatDatePipeModule } from '@taiga-ui/core';
|
|
6
6
|
import * as i2 from '@angular/common';
|
|
7
7
|
import { CommonModule } from '@angular/common';
|
|
8
8
|
import * as i3 from 'rxjs';
|
|
@@ -12,8 +12,9 @@ import { PolymorpheusTemplate, POLYMORPHEUS_CONTEXT, PolymorpheusComponent, Poly
|
|
|
12
12
|
import { takeUntil } from 'rxjs/operators';
|
|
13
13
|
|
|
14
14
|
class TuiPushComponent {
|
|
15
|
-
constructor(closeWord
|
|
15
|
+
constructor(closeWord$, icons) {
|
|
16
16
|
this.closeWord$ = closeWord$;
|
|
17
|
+
this.icons = icons;
|
|
17
18
|
this.heading = '';
|
|
18
19
|
this.type = '';
|
|
19
20
|
this.timestamp = 0;
|
|
@@ -23,8 +24,8 @@ class TuiPushComponent {
|
|
|
23
24
|
return tuiIsObserved(this.close);
|
|
24
25
|
}
|
|
25
26
|
}
|
|
26
|
-
TuiPushComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiPushComponent, deps: [{ token: TUI_CLOSE_WORD }], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
-
TuiPushComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiPushComponent, selector: "tui-push", inputs: { heading: "heading", type: "type", timestamp: "timestamp" }, outputs: { close: "close" }, ngImport: i0, template: "<div class=\"t-image\">\n <ng-content select=\"img\"></ng-content>\n</div>\n<button\n *ngIf=\"closeable\"\n type=\"button\"\n tuiIconButton\n
|
|
27
|
+
TuiPushComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiPushComponent, deps: [{ token: TUI_CLOSE_WORD }, { token: TUI_COMMON_ICONS }], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
TuiPushComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiPushComponent, selector: "tui-push", inputs: { heading: "heading", type: "type", timestamp: "timestamp" }, outputs: { close: "close" }, ngImport: i0, template: "<div class=\"t-image\">\n <ng-content select=\"img\"></ng-content>\n</div>\n<button\n *ngIf=\"closeable\"\n type=\"button\"\n tuiIconButton\n size=\"xs\"\n appearance=\"\"\n shape=\"rounded\"\n class=\"t-close\"\n [icon]=\"icons.close\"\n [title]=\"closeWord$ | async\"\n (click)=\"close.emit()\"\n></button>\n<div class=\"t-top\">\n <span class=\"t-icon\">\n <ng-content select=\"tui-svg\"></ng-content>\n </span>\n {{ type }}\n <span\n *ngIf=\"timestamp\"\n class=\"t-time\"\n [textContent]=\"timestamp | tuiFormatDate | async\"\n ></span>\n</div>\n<h3\n automation-id=\"tui-push__heading\"\n class=\"t-heading\"\n>\n {{ heading }}\n</h3>\n<div class=\"t-content\">\n <ng-content></ng-content>\n</div>\n<div class=\"t-actions\">\n <span class=\"t-button\">\n <ng-content select=\"[tuiButton]\"></ng-content>\n </span>\n <span class=\"t-link\">\n <ng-content select=\"[tuiLink]\"></ng-content>\n </span>\n</div>\n", styles: [":host{box-shadow:0 .25rem 1.5rem #0000001f;position:relative;display:block;width:22.5rem;max-width:100%;box-sizing:border-box;padding:1.25rem 1.25rem .25rem;overflow:hidden;font:var(--tui-font-text-m);border-radius:var(--tui-radius-xl);background:var(--tui-elevation-02)}.t-image{display:flex;flex-direction:column;max-height:10.625rem;overflow:hidden;margin:-1.25rem -1.25rem 1.25rem}.t-close{position:absolute;top:.75rem;right:.75rem;color:#0000008a;background:rgba(242,242,242,.32);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem)}.t-top{display:flex;align-items:center;font:var(--tui-font-text-s);color:var(--tui-text-02)}.t-icon{height:1.25rem;margin-right:.5rem;transform:scale(.833);transform-origin:top left;color:var(--tui-link)}.t-time:before{content:\"\\2022\";display:inline-block;width:1rem;text-align:center}.t-heading{line-height:1.25rem;font-weight:bold;margin:.75rem 0 .25rem}.t-heading,.t-content{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-break:break-word;overflow:hidden}.t-actions{display:flex;align-items:center;font:var(--tui-font-text-s)}.t-button:not(:empty){margin:.75rem .75rem .75rem 0}.t-link{margin:.75rem 0}.t-link:empty{margin:.5rem}\n"], components: [{ type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe, "tuiFormatDate": i1.TuiFormatDatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
28
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiPushComponent, decorators: [{
|
|
29
30
|
type: Component,
|
|
30
31
|
args: [{
|
|
@@ -36,6 +37,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
36
37
|
}], ctorParameters: function () { return [{ type: i3.Observable, decorators: [{
|
|
37
38
|
type: Inject,
|
|
38
39
|
args: [TUI_CLOSE_WORD]
|
|
40
|
+
}] }, { type: undefined, decorators: [{
|
|
41
|
+
type: Inject,
|
|
42
|
+
args: [TUI_COMMON_ICONS]
|
|
39
43
|
}] }]; }, propDecorators: { heading: [{
|
|
40
44
|
type: Input
|
|
41
45
|
}], type: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-push.js","sources":["../../../projects/kit/components/push/push.component.ts","../../../projects/kit/components/push/push.template.html","../../../projects/kit/components/push/push.directive.ts","../../../projects/kit/components/push/push.options.ts","../../../projects/kit/components/push/push-alert.directive.ts","../../../projects/kit/components/push/push-alert.component.ts","../../../projects/kit/components/push/push-alert.template.html","../../../projects/kit/components/push/push.service.ts","../../../projects/kit/components/push/push.module.ts","../../../projects/kit/components/push/taiga-ui-kit-components-push.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {tuiIsObserved} from '@taiga-ui/cdk';\nimport {TUI_CLOSE_WORD} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'tui-push',\n templateUrl: './push.template.html',\n styleUrls: ['./push.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPushComponent {\n @Input()\n heading = '';\n\n @Input()\n type = '';\n\n @Input()\n timestamp = 0;\n\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n readonly close = new EventEmitter<void>();\n\n constructor(@Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>) {}\n\n get closeable(): boolean {\n return tuiIsObserved(this.close);\n }\n}\n","<div class=\"t-image\">\n <ng-content select=\"img\"></ng-content>\n</div>\n<button\n *ngIf=\"closeable\"\n type=\"button\"\n tuiIconButton\n icon=\"tuiIconCloseLarge\"\n size=\"xs\"\n appearance=\"\"\n shape=\"rounded\"\n class=\"t-close\"\n [title]=\"closeWord$ | async\"\n (click)=\"close.emit()\"\n></button>\n<div class=\"t-top\">\n <span class=\"t-icon\">\n <ng-content select=\"tui-svg\"></ng-content>\n </span>\n {{ type }}\n <span\n *ngIf=\"timestamp\"\n class=\"t-time\"\n [textContent]=\"timestamp | tuiFormatDate | async\"\n ></span>\n</div>\n<h3\n automation-id=\"tui-push__heading\"\n class=\"t-heading\"\n>\n {{ heading }}\n</h3>\n<div class=\"t-content\">\n <ng-content></ng-content>\n</div>\n<div class=\"t-actions\">\n <span class=\"t-button\">\n <ng-content select=\"[tuiButton]\"></ng-content>\n </span>\n <span class=\"t-link\">\n <ng-content select=\"[tuiLink]\"></ng-content>\n </span>\n</div>\n","import {Directive, Inject, Optional, SkipSelf} from '@angular/core';\nimport {TUI_BUTTON_OPTIONS, TuiButtonOptions, TuiModeDirective} from '@taiga-ui/core';\nimport {Subject} from 'rxjs';\n\n@Directive({\n selector: 'tui-push',\n providers: [\n {\n provide: TuiModeDirective,\n useExisting: TuiPushDirective,\n },\n {\n provide: TUI_BUTTON_OPTIONS,\n useExisting: TuiPushDirective,\n },\n ],\n})\nexport class TuiPushDirective extends TuiModeDirective implements TuiButtonOptions {\n size: TuiButtonOptions['size'] = 's';\n\n shape = null;\n\n override readonly change$ = this.modeDirective?.change$ || new Subject();\n\n constructor(\n @Optional()\n @SkipSelf()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n ) {\n super();\n }\n\n get appearance(): string {\n return this.modeDirective?.mode === 'onDark' ? 'accent' : 'secondary';\n }\n}\n","import {Provider} from '@angular/core';\nimport {tuiCreateOptions, tuiProvideOptions} from '@taiga-ui/cdk';\n\nexport interface TuiPushOptions {\n readonly heading: string;\n readonly type: string;\n readonly timestamp: number;\n readonly image: string;\n readonly icon: string;\n readonly iconColor: string;\n readonly buttons: readonly string[];\n}\n\nexport const TUI_PUSH_DEFAULT_OPTIONS: TuiPushOptions = {\n heading: ``,\n type: ``,\n timestamp: 0,\n image: ``,\n icon: ``,\n iconColor: ``,\n buttons: [],\n};\n\n/**\n * Default parameters for Push component\n */\nexport const TUI_PUSH_OPTIONS = tuiCreateOptions(TUI_PUSH_DEFAULT_OPTIONS);\n\nexport function tuiPushOptionsProvider(options: Partial<TuiPushOptions>): Provider {\n return tuiProvideOptions(TUI_PUSH_OPTIONS, options, TUI_PUSH_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectorRef,\n Directive,\n forwardRef,\n Inject,\n Input,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {TuiDestroyService, tuiIfMap} from '@taiga-ui/cdk';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {Observable, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiPushService} from './push.service';\n\n@Directive({\n selector: '[tuiPush]',\n providers: [TuiDestroyService],\n})\nexport class TuiPushAlertDirective extends PolymorpheusTemplate {\n private readonly show$ = new Subject<boolean>();\n\n @Input()\n set tuiPush(show: boolean) {\n this.show$.next(show);\n }\n\n constructor(\n @Inject(TemplateRef) template: TemplateRef<any>,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(forwardRef(() => TuiPushService)) push: TuiPushService,\n ) {\n super(template, cdr);\n\n this.show$\n .pipe(\n tuiIfMap(() => push.open(this)),\n takeUntil(destroy$),\n )\n .subscribe();\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {TuiDialog} from '@taiga-ui/cdk';\nimport {\n TUI_ANIMATION_OPTIONS,\n tuiFadeIn,\n tuiHeightCollapse,\n tuiSlideInRight,\n} from '@taiga-ui/core';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPushOptions} from './push.options';\nimport {TuiPushAlertDirective} from './push-alert.directive';\n\n@Component({\n selector: 'tui-push-alert',\n templateUrl: './push-alert.template.html',\n styleUrls: ['./push-alert.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn, tuiSlideInRight, tuiHeightCollapse],\n host: {\n role: 'alert',\n '[@tuiFadeIn]': 'animation',\n '[@tuiSlideInRight]': 'animation',\n '[@tuiHeightCollapse]': 'animation',\n },\n})\nexport class TuiPushAlertComponent {\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) readonly animation: AnimationOptions,\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiDialog<TuiPushOptions, string>,\n ) {}\n\n get isDirective(): boolean {\n return this.context.content instanceof TuiPushAlertDirective;\n }\n}\n","<tui-push\n *ngIf=\"!isDirective; else $any(context.content).template\"\n [heading]=\"context.heading\"\n [type]=\"context.type\"\n [timestamp]=\"context.timestamp\"\n (close)=\"context.$implicit.complete()\"\n>\n <img\n *ngIf=\"context.image\"\n alt=\"\"\n [src]=\"context.image\"\n />\n <tui-svg\n *ngIf=\"context.icon\"\n [style.color]=\"context.iconColor\"\n [src]=\"context.icon\"\n ></tui-svg>\n <div\n *polymorpheusOutlet=\"context.content as text\"\n [innerHTML]=\"text\"\n ></div>\n <button\n *ngIf=\"context.buttons.length > 1\"\n type=\"button\"\n tuiButton\n (click)=\"context.$implicit.next(context.buttons[0])\"\n >\n {{ context.buttons[0] }}\n </button>\n <button\n *ngIf=\"context.buttons.length\"\n tuiLink\n type=\"button\"\n (click)=\"context.$implicit.next(context.buttons[context.buttons.length - 1])\"\n >\n {{ context.buttons[context.buttons.length - 1] }}\n </button>\n</tui-push>\n","import {inject, Injectable} from '@angular/core';\nimport {AbstractTuiDialogService} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_PUSH_OPTIONS, TuiPushOptions} from './push.options';\nimport {TuiPushAlertComponent} from './push-alert.component';\n\n@Injectable({providedIn: `root`})\nexport class TuiPushService extends AbstractTuiDialogService<TuiPushOptions, string> {\n protected readonly component = new PolymorpheusComponent(TuiPushAlertComponent);\n protected readonly defaultOptions = inject(TUI_PUSH_OPTIONS);\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TUI_ALERTS} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiFormatDatePipeModule,\n TuiLinkModule,\n TuiSvgModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPushComponent} from './push.component';\nimport {TuiPushDirective} from './push.directive';\nimport {TuiPushService} from './push.service';\nimport {TuiPushAlertComponent} from './push-alert.component';\nimport {TuiPushAlertDirective} from './push-alert.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiButtonModule,\n TuiLinkModule,\n TuiSvgModule,\n TuiFormatDatePipeModule,\n ],\n declarations: [\n TuiPushComponent,\n TuiPushDirective,\n TuiPushAlertComponent,\n TuiPushAlertDirective,\n ],\n exports: [\n TuiPushComponent,\n TuiPushDirective,\n TuiPushAlertComponent,\n TuiPushAlertDirective,\n ],\n providers: [\n {\n provide: TUI_ALERTS,\n useExisting: TuiPushService,\n multi: true,\n },\n ],\n})\nexport class TuiPushModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiPushComponent","i2","i3","i4.TuiPushDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-push.js","sources":["../../../projects/kit/components/push/push.component.ts","../../../projects/kit/components/push/push.template.html","../../../projects/kit/components/push/push.directive.ts","../../../projects/kit/components/push/push.options.ts","../../../projects/kit/components/push/push-alert.directive.ts","../../../projects/kit/components/push/push-alert.component.ts","../../../projects/kit/components/push/push-alert.template.html","../../../projects/kit/components/push/push.service.ts","../../../projects/kit/components/push/push.module.ts","../../../projects/kit/components/push/taiga-ui-kit-components-push.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {tuiIsObserved} from '@taiga-ui/cdk';\nimport {TUI_CLOSE_WORD, TUI_COMMON_ICONS, TuiCommonIcons} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'tui-push',\n templateUrl: './push.template.html',\n styleUrls: ['./push.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiPushComponent {\n @Input()\n heading = '';\n\n @Input()\n type = '';\n\n @Input()\n timestamp = 0;\n\n @Output()\n // eslint-disable-next-line @angular-eslint/no-output-native\n readonly close = new EventEmitter<void>();\n\n constructor(\n @Inject(TUI_CLOSE_WORD) readonly closeWord$: Observable<string>,\n @Inject(TUI_COMMON_ICONS) readonly icons: TuiCommonIcons,\n ) {}\n\n get closeable(): boolean {\n return tuiIsObserved(this.close);\n }\n}\n","<div class=\"t-image\">\n <ng-content select=\"img\"></ng-content>\n</div>\n<button\n *ngIf=\"closeable\"\n type=\"button\"\n tuiIconButton\n size=\"xs\"\n appearance=\"\"\n shape=\"rounded\"\n class=\"t-close\"\n [icon]=\"icons.close\"\n [title]=\"closeWord$ | async\"\n (click)=\"close.emit()\"\n></button>\n<div class=\"t-top\">\n <span class=\"t-icon\">\n <ng-content select=\"tui-svg\"></ng-content>\n </span>\n {{ type }}\n <span\n *ngIf=\"timestamp\"\n class=\"t-time\"\n [textContent]=\"timestamp | tuiFormatDate | async\"\n ></span>\n</div>\n<h3\n automation-id=\"tui-push__heading\"\n class=\"t-heading\"\n>\n {{ heading }}\n</h3>\n<div class=\"t-content\">\n <ng-content></ng-content>\n</div>\n<div class=\"t-actions\">\n <span class=\"t-button\">\n <ng-content select=\"[tuiButton]\"></ng-content>\n </span>\n <span class=\"t-link\">\n <ng-content select=\"[tuiLink]\"></ng-content>\n </span>\n</div>\n","import {Directive, Inject, Optional, SkipSelf} from '@angular/core';\nimport {TUI_BUTTON_OPTIONS, TuiButtonOptions, TuiModeDirective} from '@taiga-ui/core';\nimport {Subject} from 'rxjs';\n\n@Directive({\n selector: 'tui-push',\n providers: [\n {\n provide: TuiModeDirective,\n useExisting: TuiPushDirective,\n },\n {\n provide: TUI_BUTTON_OPTIONS,\n useExisting: TuiPushDirective,\n },\n ],\n})\nexport class TuiPushDirective extends TuiModeDirective implements TuiButtonOptions {\n size: TuiButtonOptions['size'] = 's';\n\n shape = null;\n\n override readonly change$ = this.modeDirective?.change$ || new Subject();\n\n constructor(\n @Optional()\n @SkipSelf()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n ) {\n super();\n }\n\n get appearance(): string {\n return this.modeDirective?.mode === 'onDark' ? 'accent' : 'secondary';\n }\n}\n","import {Provider} from '@angular/core';\nimport {tuiCreateOptions, tuiProvideOptions} from '@taiga-ui/cdk';\n\nexport interface TuiPushOptions {\n readonly heading: string;\n readonly type: string;\n readonly timestamp: number;\n readonly image: string;\n readonly icon: string;\n readonly iconColor: string;\n readonly buttons: readonly string[];\n}\n\nexport const TUI_PUSH_DEFAULT_OPTIONS: TuiPushOptions = {\n heading: ``,\n type: ``,\n timestamp: 0,\n image: ``,\n icon: ``,\n iconColor: ``,\n buttons: [],\n};\n\n/**\n * Default parameters for Push component\n */\nexport const TUI_PUSH_OPTIONS = tuiCreateOptions(TUI_PUSH_DEFAULT_OPTIONS);\n\nexport function tuiPushOptionsProvider(options: Partial<TuiPushOptions>): Provider {\n return tuiProvideOptions(TUI_PUSH_OPTIONS, options, TUI_PUSH_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectorRef,\n Directive,\n forwardRef,\n Inject,\n Input,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {TuiDestroyService, tuiIfMap} from '@taiga-ui/cdk';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {Observable, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiPushService} from './push.service';\n\n@Directive({\n selector: '[tuiPush]',\n providers: [TuiDestroyService],\n})\nexport class TuiPushAlertDirective extends PolymorpheusTemplate {\n private readonly show$ = new Subject<boolean>();\n\n @Input()\n set tuiPush(show: boolean) {\n this.show$.next(show);\n }\n\n constructor(\n @Inject(TemplateRef) template: TemplateRef<any>,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(forwardRef(() => TuiPushService)) push: TuiPushService,\n ) {\n super(template, cdr);\n\n this.show$\n .pipe(\n tuiIfMap(() => push.open(this)),\n takeUntil(destroy$),\n )\n .subscribe();\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {ChangeDetectionStrategy, Component, Inject} from '@angular/core';\nimport {TuiDialog} from '@taiga-ui/cdk';\nimport {\n TUI_ANIMATION_OPTIONS,\n tuiFadeIn,\n tuiHeightCollapse,\n tuiSlideInRight,\n} from '@taiga-ui/core';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPushOptions} from './push.options';\nimport {TuiPushAlertDirective} from './push-alert.directive';\n\n@Component({\n selector: 'tui-push-alert',\n templateUrl: './push-alert.template.html',\n styleUrls: ['./push-alert.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn, tuiSlideInRight, tuiHeightCollapse],\n host: {\n role: 'alert',\n '[@tuiFadeIn]': 'animation',\n '[@tuiSlideInRight]': 'animation',\n '[@tuiHeightCollapse]': 'animation',\n },\n})\nexport class TuiPushAlertComponent {\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) readonly animation: AnimationOptions,\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiDialog<TuiPushOptions, string>,\n ) {}\n\n get isDirective(): boolean {\n return this.context.content instanceof TuiPushAlertDirective;\n }\n}\n","<tui-push\n *ngIf=\"!isDirective; else $any(context.content).template\"\n [heading]=\"context.heading\"\n [type]=\"context.type\"\n [timestamp]=\"context.timestamp\"\n (close)=\"context.$implicit.complete()\"\n>\n <img\n *ngIf=\"context.image\"\n alt=\"\"\n [src]=\"context.image\"\n />\n <tui-svg\n *ngIf=\"context.icon\"\n [style.color]=\"context.iconColor\"\n [src]=\"context.icon\"\n ></tui-svg>\n <div\n *polymorpheusOutlet=\"context.content as text\"\n [innerHTML]=\"text\"\n ></div>\n <button\n *ngIf=\"context.buttons.length > 1\"\n type=\"button\"\n tuiButton\n (click)=\"context.$implicit.next(context.buttons[0])\"\n >\n {{ context.buttons[0] }}\n </button>\n <button\n *ngIf=\"context.buttons.length\"\n tuiLink\n type=\"button\"\n (click)=\"context.$implicit.next(context.buttons[context.buttons.length - 1])\"\n >\n {{ context.buttons[context.buttons.length - 1] }}\n </button>\n</tui-push>\n","import {inject, Injectable} from '@angular/core';\nimport {AbstractTuiDialogService} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_PUSH_OPTIONS, TuiPushOptions} from './push.options';\nimport {TuiPushAlertComponent} from './push-alert.component';\n\n@Injectable({providedIn: `root`})\nexport class TuiPushService extends AbstractTuiDialogService<TuiPushOptions, string> {\n protected readonly component = new PolymorpheusComponent(TuiPushAlertComponent);\n protected readonly defaultOptions = inject(TUI_PUSH_OPTIONS);\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TUI_ALERTS} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiFormatDatePipeModule,\n TuiLinkModule,\n TuiSvgModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiPushComponent} from './push.component';\nimport {TuiPushDirective} from './push.directive';\nimport {TuiPushService} from './push.service';\nimport {TuiPushAlertComponent} from './push-alert.component';\nimport {TuiPushAlertDirective} from './push-alert.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiButtonModule,\n TuiLinkModule,\n TuiSvgModule,\n TuiFormatDatePipeModule,\n ],\n declarations: [\n TuiPushComponent,\n TuiPushDirective,\n TuiPushAlertComponent,\n TuiPushAlertDirective,\n ],\n exports: [\n TuiPushComponent,\n TuiPushDirective,\n TuiPushAlertComponent,\n TuiPushAlertDirective,\n ],\n providers: [\n {\n provide: TUI_ALERTS,\n useExisting: TuiPushService,\n multi: true,\n },\n ],\n})\nexport class TuiPushModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiPushComponent","i2","i3","i4.TuiPushDirective"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { NgControl } from '@angular/forms';
|
|
|
5
5
|
import * as i4 from '@taiga-ui/cdk';
|
|
6
6
|
import { tuiTypedFromEvent, TUI_DEFAULT_IDENTITY_MATCHER, tuiIsPresent, AbstractTuiControl } from '@taiga-ui/cdk';
|
|
7
7
|
import * as i1 from '@taiga-ui/core';
|
|
8
|
-
import { TUI_DATA_LIST_HOST, TuiOptionComponent, TuiDataListComponent, TuiSvgModule, TuiScrollIntoViewModule } from '@taiga-ui/core';
|
|
8
|
+
import { TUI_COMMON_ICONS, TUI_DATA_LIST_HOST, TuiOptionComponent, TuiDataListComponent, TuiSvgModule, TuiScrollIntoViewModule } from '@taiga-ui/core';
|
|
9
9
|
import { POLYMORPHEUS_CONTEXT, PolymorpheusComponent } from '@tinkoff/ng-polymorpheus';
|
|
10
10
|
import { Subject, merge, EMPTY } from 'rxjs';
|
|
11
11
|
import { startWith, map, distinctUntilChanged } from 'rxjs/operators';
|
|
@@ -13,7 +13,8 @@ import * as i2 from '@angular/common';
|
|
|
13
13
|
import { CommonModule } from '@angular/common';
|
|
14
14
|
|
|
15
15
|
class TuiSelectOptionComponent {
|
|
16
|
-
constructor(context, host, el, option, dataList, control, abstractControl) {
|
|
16
|
+
constructor(icons, context, host, el, option, dataList, control, abstractControl) {
|
|
17
|
+
this.icons = icons;
|
|
17
18
|
this.context = context;
|
|
18
19
|
this.host = host;
|
|
19
20
|
this.el = el;
|
|
@@ -54,8 +55,8 @@ class TuiSelectOptionComponent {
|
|
|
54
55
|
this.matcher(this.value, this.option.value));
|
|
55
56
|
}
|
|
56
57
|
}
|
|
57
|
-
TuiSelectOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSelectOptionComponent, deps: [{ token: POLYMORPHEUS_CONTEXT }, { token: TUI_DATA_LIST_HOST }, { token: ElementRef }, { token: TuiOptionComponent }, { token: TuiDataListComponent, optional: true }, { token: NgControl }, { token: AbstractTuiControl, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
-
TuiSelectOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSelectOptionComponent, selector: "tui-select-option", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"context.$implicit\"></ng-container>\n<tui-svg\n *ngIf=\"selected$ | async; else dummy\"\n automation-id=\"tui-select-option__checkmark\"\n
|
|
58
|
+
TuiSelectOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSelectOptionComponent, deps: [{ token: TUI_COMMON_ICONS }, { token: POLYMORPHEUS_CONTEXT }, { token: TUI_DATA_LIST_HOST }, { token: ElementRef }, { token: TuiOptionComponent }, { token: TuiDataListComponent, optional: true }, { token: NgControl }, { token: AbstractTuiControl, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
59
|
+
TuiSelectOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiSelectOptionComponent, selector: "tui-select-option", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"context.$implicit\"></ng-container>\n<tui-svg\n *ngIf=\"selected$ | async; else dummy\"\n automation-id=\"tui-select-option__checkmark\"\n class=\"t-checkmark\"\n [src]=\"icons.check\"\n [tuiScrollIntoView]=\"true\"\n></tui-svg>\n<ng-template #dummy>\n <span class=\"t-dummy\"></span>\n</ng-template>\n", styles: ["@keyframes retrigger{0%{left:1px}to{left:2px}}:host{display:flex;flex:1;align-items:center;max-width:100%;animation:retrigger 1s}.t-checkmark{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-border-start:.25rem solid transparent;border-inline-start:.25rem solid transparent}:host-context(tui-data-list[data-list-size=\"s\"]) .t-checkmark{-webkit-margin-end:-.375rem;margin-inline-end:-.375rem}:host-context(tui-data-list[data-list-size=\"m\"]) .t-checkmark{-webkit-margin-end:-.125rem;margin-inline-end:-.125rem}.t-dummy{width:1.5rem}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.TuiScrollIntoViewDirective, selector: "[tuiScrollIntoView]", inputs: ["tuiScrollIntoView"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
59
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiSelectOptionComponent, decorators: [{
|
|
60
61
|
type: Component,
|
|
61
62
|
args: [{
|
|
@@ -65,6 +66,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
65
66
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
66
67
|
}]
|
|
67
68
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
69
|
+
type: Inject,
|
|
70
|
+
args: [TUI_COMMON_ICONS]
|
|
71
|
+
}] }, { type: undefined, decorators: [{
|
|
68
72
|
type: Inject,
|
|
69
73
|
args: [POLYMORPHEUS_CONTEXT]
|
|
70
74
|
}] }, { type: undefined, decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-select-option.js","sources":["../../../projects/kit/components/select-option/select-option.component.ts","../../../projects/kit/components/select-option/select-option.template.html","../../../projects/kit/components/select-option/select-option.module.ts","../../../projects/kit/components/select-option/taiga-ui-kit-components-select-option.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n DoCheck,\n ElementRef,\n Inject,\n OnInit,\n Optional,\n TemplateRef,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TuiContextWithImplicit,\n TuiIdentityMatcher,\n tuiIsPresent,\n tuiTypedFromEvent,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_HOST,\n TuiDataListComponent,\n TuiDataListHost,\n TuiOptionComponent,\n} from '@taiga-ui/core';\nimport {POLYMORPHEUS_CONTEXT, PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, merge, Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-select-option',\n templateUrl: './select-option.template.html',\n styleUrls: ['./select-option.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSelectOptionComponent<T> implements OnInit, DoCheck {\n private readonly changeDetection$ = new Subject();\n\n readonly selected$ = merge(\n this.changeDetection$,\n this.control.valueChanges || EMPTY,\n tuiTypedFromEvent(this.el.nativeElement, 'animationstart'),\n ).pipe(\n startWith(null),\n map(() => this.selected),\n distinctUntilChanged(),\n );\n\n constructor(\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>,\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T>,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TuiOptionComponent) protected readonly option: TuiOptionComponent<T>,\n @Optional()\n @Inject(TuiDataListComponent)\n protected readonly dataList: TuiDataListComponent<T> | null,\n @Inject(NgControl) protected readonly control: NgControl,\n @Optional()\n @Inject(AbstractTuiControl)\n protected readonly abstractControl: AbstractTuiControl<T> | null,\n ) {}\n\n get matcher(): TuiIdentityMatcher<T> {\n return this.host.identityMatcher || TUI_DEFAULT_IDENTITY_MATCHER;\n }\n\n ngDoCheck(): void {\n this.changeDetection$.next();\n }\n\n ngOnInit(): void {\n /**\n * This would cause changes inside already checked parent component (during the same change detection cycle),\n * and it might cause ExpressionChanged error due to potential HostBinding\n * (for example, inside {@link https://github.com/angular/angular/blob/main/packages/forms/src/directives/ng_control_status.ts#L99 NgControlStatus}).\n * Microtask keeps it in the same frame but allows change detection to run.\n */\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n Promise.resolve().then(() => {\n if (tuiIsPresent(this.option.value) && this.host.checkOption) {\n this.host.checkOption(this.option.value);\n }\n });\n }\n\n protected get value(): T | null {\n return this.abstractControl?.value ?? this.control.value;\n }\n\n protected get selected(): boolean {\n return (\n tuiIsPresent(this.option.value) &&\n tuiIsPresent(this.value) &&\n this.matcher(this.value, this.option.value)\n );\n }\n}\n\nexport const TUI_SELECT_OPTION = new PolymorpheusComponent(TuiSelectOptionComponent);\n","<ng-container [ngTemplateOutlet]=\"context.$implicit\"></ng-container>\n<tui-svg\n *ngIf=\"selected$ | async; else dummy\"\n automation-id=\"tui-select-option__checkmark\"\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-select-option.js","sources":["../../../projects/kit/components/select-option/select-option.component.ts","../../../projects/kit/components/select-option/select-option.template.html","../../../projects/kit/components/select-option/select-option.module.ts","../../../projects/kit/components/select-option/taiga-ui-kit-components-select-option.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n DoCheck,\n ElementRef,\n Inject,\n OnInit,\n Optional,\n TemplateRef,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TuiContextWithImplicit,\n TuiIdentityMatcher,\n tuiIsPresent,\n tuiTypedFromEvent,\n} from '@taiga-ui/cdk';\nimport {\n TUI_COMMON_ICONS,\n TUI_DATA_LIST_HOST,\n TuiCommonIcons,\n TuiDataListComponent,\n TuiDataListHost,\n TuiOptionComponent,\n} from '@taiga-ui/core';\nimport {POLYMORPHEUS_CONTEXT, PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, merge, Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-select-option',\n templateUrl: './select-option.template.html',\n styleUrls: ['./select-option.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSelectOptionComponent<T> implements OnInit, DoCheck {\n private readonly changeDetection$ = new Subject();\n\n readonly selected$ = merge(\n this.changeDetection$,\n this.control.valueChanges || EMPTY,\n tuiTypedFromEvent(this.el.nativeElement, 'animationstart'),\n ).pipe(\n startWith(null),\n map(() => this.selected),\n distinctUntilChanged(),\n );\n\n constructor(\n @Inject(TUI_COMMON_ICONS) readonly icons: TuiCommonIcons,\n @Inject(POLYMORPHEUS_CONTEXT)\n readonly context: TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>,\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T>,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TuiOptionComponent) protected readonly option: TuiOptionComponent<T>,\n @Optional()\n @Inject(TuiDataListComponent)\n protected readonly dataList: TuiDataListComponent<T> | null,\n @Inject(NgControl) protected readonly control: NgControl,\n @Optional()\n @Inject(AbstractTuiControl)\n protected readonly abstractControl: AbstractTuiControl<T> | null,\n ) {}\n\n get matcher(): TuiIdentityMatcher<T> {\n return this.host.identityMatcher || TUI_DEFAULT_IDENTITY_MATCHER;\n }\n\n ngDoCheck(): void {\n this.changeDetection$.next();\n }\n\n ngOnInit(): void {\n /**\n * This would cause changes inside already checked parent component (during the same change detection cycle),\n * and it might cause ExpressionChanged error due to potential HostBinding\n * (for example, inside {@link https://github.com/angular/angular/blob/main/packages/forms/src/directives/ng_control_status.ts#L99 NgControlStatus}).\n * Microtask keeps it in the same frame but allows change detection to run.\n */\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n Promise.resolve().then(() => {\n if (tuiIsPresent(this.option.value) && this.host.checkOption) {\n this.host.checkOption(this.option.value);\n }\n });\n }\n\n protected get value(): T | null {\n return this.abstractControl?.value ?? this.control.value;\n }\n\n protected get selected(): boolean {\n return (\n tuiIsPresent(this.option.value) &&\n tuiIsPresent(this.value) &&\n this.matcher(this.value, this.option.value)\n );\n }\n}\n\nexport const TUI_SELECT_OPTION = new PolymorpheusComponent(TuiSelectOptionComponent);\n","<ng-container [ngTemplateOutlet]=\"context.$implicit\"></ng-container>\n<tui-svg\n *ngIf=\"selected$ | async; else dummy\"\n automation-id=\"tui-select-option__checkmark\"\n class=\"t-checkmark\"\n [src]=\"icons.check\"\n [tuiScrollIntoView]=\"true\"\n></tui-svg>\n<ng-template #dummy>\n <span class=\"t-dummy\"></span>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiScrollIntoViewModule, TuiSvgModule} from '@taiga-ui/core';\n\nimport {TuiSelectOptionComponent} from './select-option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, TuiScrollIntoViewModule],\n declarations: [TuiSelectOptionComponent],\n exports: [TuiSelectOptionComponent],\n})\nexport class TuiSelectOptionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { EventEmitter, ChangeDetectorRef, ElementRef, Component, ChangeDetection
|
|
|
3
3
|
import * as i2 from '@taiga-ui/cdk';
|
|
4
4
|
import { EMPTY_QUERY, tuiQueryListChanges, tuiGetOriginalArrayFromQueryList, tuiIsElement, tuiMoveFocus, TuiScrollService, TuiResizeService, TuiDestroyService, tuiPure, TuiFocusVisibleService } from '@taiga-ui/cdk';
|
|
5
5
|
import * as i1$1 from '@taiga-ui/core';
|
|
6
|
-
import { TUI_ANIMATIONS_DURATION, TuiRouterLinkActiveService, TuiSvgModule } from '@taiga-ui/core';
|
|
6
|
+
import { TUI_ANIMATIONS_DURATION, TuiRouterLinkActiveService, TUI_COMMON_ICONS, TuiSvgModule } from '@taiga-ui/core';
|
|
7
7
|
import * as i3 from 'rxjs';
|
|
8
8
|
import { identity } from 'rxjs';
|
|
9
9
|
import { delay, filter } from 'rxjs/operators';
|
|
@@ -147,9 +147,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
147
147
|
}], getNativeElements: [] } });
|
|
148
148
|
|
|
149
149
|
class TuiStepComponent {
|
|
150
|
-
constructor(focusVisible$, routerLinkActive$, stepper, el) {
|
|
150
|
+
constructor(focusVisible$, routerLinkActive$, stepper, el, icons) {
|
|
151
151
|
this.stepper = stepper;
|
|
152
152
|
this.el = el;
|
|
153
|
+
this.icons = icons;
|
|
153
154
|
this.stepState = 'normal';
|
|
154
155
|
this.icon = '';
|
|
155
156
|
this.focusVisible = false;
|
|
@@ -176,8 +177,8 @@ class TuiStepComponent {
|
|
|
176
177
|
this.stepper.activate(this.index);
|
|
177
178
|
}
|
|
178
179
|
}
|
|
179
|
-
TuiStepComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiStepComponent, deps: [{ token: TuiFocusVisibleService }, { token: TuiRouterLinkActiveService }, { token: TuiStepperComponent }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
180
|
-
TuiStepComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiStepComponent, selector: "button[tuiStep], a[tuiStep]:not([routerLink]), a[tuiStep][routerLink][routerLinkActive]", inputs: { stepState: "stepState", icon: "icon" }, host: { attributes: { "type": "button" }, listeners: { "click": "activate()" }, properties: { "attr.data-state": "this.stepState", "class._focus-visible": "this.focusVisible", "class._active": "this.isActive", "class._vertical": "this.isVertical", "tabIndex": "this.tabIndex" } }, providers: [TuiDestroyService, TuiRouterLinkActiveService, TuiFocusVisibleService], ngImport: i0, template: "<tui-svg\n *ngIf=\"icon\"\n class=\"t-marker t-marker_custom\"\n [src]=\"icon\"\n></tui-svg>\n<tui-svg\n
|
|
180
|
+
TuiStepComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiStepComponent, deps: [{ token: TuiFocusVisibleService }, { token: TuiRouterLinkActiveService }, { token: TuiStepperComponent }, { token: ElementRef }, { token: TUI_COMMON_ICONS }], target: i0.ɵɵFactoryTarget.Component });
|
|
181
|
+
TuiStepComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiStepComponent, selector: "button[tuiStep], a[tuiStep]:not([routerLink]), a[tuiStep][routerLink][routerLinkActive]", inputs: { stepState: "stepState", icon: "icon" }, host: { attributes: { "type": "button" }, listeners: { "click": "activate()" }, properties: { "attr.data-state": "this.stepState", "class._focus-visible": "this.focusVisible", "class._active": "this.isActive", "class._vertical": "this.isVertical", "tabIndex": "this.tabIndex" } }, providers: [TuiDestroyService, TuiRouterLinkActiveService, TuiFocusVisibleService], ngImport: i0, template: "<tui-svg\n *ngIf=\"icon\"\n class=\"t-marker t-marker_custom\"\n [src]=\"icon\"\n></tui-svg>\n<tui-svg\n class=\"t-marker t-marker_error\"\n [src]=\"icons.error\"\n></tui-svg>\n<tui-svg\n class=\"t-marker t-marker_pass\"\n [src]=\"icons.check\"\n></tui-svg>\n<div class=\"t-marker t-marker_index\"></div>\n<ng-content></ng-content>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;position:relative;display:flex;align-items:center;flex-shrink:0;color:var(--tui-link);margin-right:1.5rem;outline:none;cursor:pointer;text-decoration:none;counter-increment:steps}:host:disabled{pointer-events:none;color:var(--tui-base-07)}:host:hover{color:var(--tui-link-hover)}:host:not(:last-of-type)._vertical{margin-bottom:1.25rem}:host._active,:host._active:hover{color:var(--tui-text-01);cursor:default}:host._focus-visible:before{content:\"\";position:absolute;left:2.75rem;right:0;top:50%;height:1.5rem;margin-top:-.75rem;background:var(--tui-selection)}.t-marker{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:2rem;height:2rem;border-radius:100%;margin-right:.75rem;flex-shrink:0;align-items:center;justify-content:center;background:var(--tui-secondary);color:var(--tui-link)}:host:disabled .t-marker{background:var(--tui-base-03);color:var(--tui-base-07)}.t-marker_index:before{content:counter(steps)}:host:hover .t-marker_index{color:var(--tui-link-hover);background:var(--tui-secondary-hover)}:host._active .t-marker_index{color:var(--tui-primary-text);background:var(--tui-primary)}:host:not([data-state=\"normal\"]):not(._active) .t-marker_index,:host:not(._active) .t-marker_custom~.t-marker_index{display:none}.t-marker_error{background:var(--tui-error-bg);color:var(--tui-error-fill)}:host:hover .t-marker_error{background:var(--tui-error-bg-hover);color:var(--tui-error-fill)}:host:not([data-state=\"error\"]) .t-marker_error,:host._active .t-marker_error{display:none}:host:not([data-state=\"pass\"]) .t-marker_pass,:host._active .t-marker_pass{display:none}:host:not([data-state=\"normal\"]) .t-marker_custom,:host._active .t-marker_custom{display:none}:host:hover .t-marker_custom{color:var(--tui-link-hover);background:var(--tui-secondary-hover)}\n"], components: [{ type: i1$1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
181
182
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiStepComponent, decorators: [{
|
|
182
183
|
type: Component,
|
|
183
184
|
args: [{
|
|
@@ -202,6 +203,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
202
203
|
}] }, { type: i0.ElementRef, decorators: [{
|
|
203
204
|
type: Inject,
|
|
204
205
|
args: [ElementRef]
|
|
206
|
+
}] }, { type: undefined, decorators: [{
|
|
207
|
+
type: Inject,
|
|
208
|
+
args: [TUI_COMMON_ICONS]
|
|
205
209
|
}] }]; }, propDecorators: { stepState: [{
|
|
206
210
|
type: Input
|
|
207
211
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-stepper.js","sources":["../../../projects/kit/components/stepper/stepper.component.ts","../../../projects/kit/components/stepper/stepper.template.html","../../../projects/kit/components/stepper/step/step.component.ts","../../../projects/kit/components/stepper/step/step.template.html","../../../projects/kit/components/stepper/stepper.module.ts","../../../projects/kit/components/stepper/taiga-ui-kit-components-stepper.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n TuiDestroyService,\n tuiGetOriginalArrayFromQueryList,\n tuiIsElement,\n tuiMoveFocus,\n tuiPure,\n tuiQueryListChanges,\n TuiResizeService,\n TuiScrollService,\n} from '@taiga-ui/cdk';\nimport {TUI_ANIMATIONS_DURATION, TuiOrientation} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\nimport {delay} from 'rxjs/operators';\n\nimport {TuiStepComponent} from './step/step.component';\n\n@Component({\n selector: 'tui-stepper, nav[tuiStepper]',\n templateUrl: './stepper.template.html',\n styleUrls: ['./stepper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiResizeService, TuiDestroyService],\n})\nexport class TuiStepperComponent {\n @ContentChildren(forwardRef(() => TuiStepComponent), {read: ElementRef})\n private readonly steps: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n @Input()\n @HostBinding('attr.data-orientation')\n orientation: TuiOrientation = 'horizontal';\n\n @Input('activeItemIndex')\n set activeIndex(index: number) {\n this.activeItemIndex = index;\n this.scrollIntoView(index);\n }\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n activeItemIndex = 0;\n\n constructor(\n @Inject(ChangeDetectorRef) private readonly cdr: ChangeDetectorRef,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TuiScrollService) private readonly scrollService: TuiScrollService,\n @Inject(TuiResizeService) resize$: Observable<void>,\n @Inject(TUI_ANIMATIONS_DURATION) private readonly duration: number,\n ) {\n resize$.subscribe(() => this.scrollIntoView(this.activeItemIndex));\n }\n\n @tuiPure\n get changes$(): Observable<unknown> {\n // Delay is required to trigger change detection after steps are rendered,\n // so they can update their \"active\" status\n return tuiQueryListChanges(this.steps).pipe(delay(0));\n }\n\n @HostListener('keydown.arrowRight', ['$event', '1'])\n @HostListener('keydown.arrowLeft', ['$event', '-1'])\n onHorizontal(event: Event, step: number): void {\n if (this.orientation !== 'horizontal' || !event.target) {\n return;\n }\n\n event.preventDefault();\n this.moveFocus(event.target, step);\n }\n\n @HostListener('keydown.arrowDown', ['$event', '1'])\n @HostListener('keydown.arrowUp', ['$event', '-1'])\n onVertical(event: Event, step: number): void {\n if (this.orientation !== 'vertical' || !event.target) {\n return;\n }\n\n event.preventDefault();\n this.moveFocus(event.target, step);\n }\n\n indexOf(step: HTMLElement): number {\n return tuiGetOriginalArrayFromQueryList(this.steps).findIndex(\n ({nativeElement}) => nativeElement === step,\n );\n }\n\n isActive(index: number): boolean {\n return index === this.activeItemIndex;\n }\n\n activate(index: number): void {\n if (this.activeItemIndex === index) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.emit(index);\n this.cdr.markForCheck();\n this.scrollIntoView(index);\n }\n\n @tuiPure\n private getNativeElements(\n queryList: QueryList<ElementRef<HTMLElement>>,\n ): HTMLElement[] {\n return queryList.map(({nativeElement}) => nativeElement);\n }\n\n private moveFocus(current: EventTarget, step: number): void {\n if (!tuiIsElement(current)) {\n return;\n }\n\n const stepElements = this.getNativeElements(this.steps);\n const index = stepElements.findIndex(item => item === current);\n\n tuiMoveFocus(index, stepElements, step);\n }\n\n private scrollIntoView(index: number): void {\n const step = this.getNativeElements(this.steps)[index];\n\n if (!step) {\n return;\n }\n\n const {nativeElement} = this.el;\n const {clientHeight, clientWidth, offsetTop, offsetLeft} = nativeElement;\n const {\n offsetHeight,\n offsetWidth,\n offsetTop: stepOffsetTop,\n offsetLeft: stepOffsetLeft,\n } = step;\n const top = stepOffsetTop - offsetTop - clientHeight / 2 + offsetHeight / 2;\n const left = stepOffsetLeft - offsetLeft - clientWidth / 2 + offsetWidth / 2;\n\n this.scrollService\n .scroll$(\n nativeElement,\n Math.max(0, top),\n Math.max(0, left),\n this.duration / 3,\n )\n .subscribe();\n }\n}\n","<ng-container *ngIf=\"changes$ | async\"></ng-container>\n<ng-content></ng-content>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {TuiDestroyService, TuiFocusVisibleService} from '@taiga-ui/cdk';\nimport {TuiRouterLinkActiveService} from '@taiga-ui/core';\nimport {identity, Observable} from 'rxjs';\nimport {filter} from 'rxjs/operators';\n\nimport {TuiStepperComponent} from '../stepper.component';\n\n@Component({\n selector:\n 'button[tuiStep], a[tuiStep]:not([routerLink]), a[tuiStep][routerLink][routerLinkActive]',\n templateUrl: './step.template.html',\n styleUrls: ['./step.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService, TuiRouterLinkActiveService, TuiFocusVisibleService],\n host: {\n type: 'button',\n },\n})\nexport class TuiStepComponent {\n @Input()\n @HostBinding('attr.data-state')\n stepState: 'error' | 'normal' | 'pass' = 'normal';\n\n @Input()\n icon = '';\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n constructor(\n @Inject(TuiFocusVisibleService) focusVisible$: TuiFocusVisibleService,\n @Inject(TuiRouterLinkActiveService) routerLinkActive$: Observable<boolean>,\n @Inject(TuiStepperComponent) private readonly stepper: TuiStepperComponent,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n ) {\n routerLinkActive$.pipe(filter(identity)).subscribe(() => {\n this.activate();\n });\n\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n @HostBinding('class._active')\n get isActive(): boolean {\n return this.stepper.isActive(this.index);\n }\n\n @HostBinding('class._vertical')\n get isVertical(): boolean {\n return this.stepper.orientation === 'vertical';\n }\n\n @HostBinding('tabIndex')\n get tabIndex(): number {\n return this.isActive ? 0 : -1;\n }\n\n get index(): number {\n return this.stepper.indexOf(this.el.nativeElement);\n }\n\n @HostListener('click')\n activate(): void {\n this.stepper.activate(this.index);\n }\n}\n","<tui-svg\n *ngIf=\"icon\"\n class=\"t-marker t-marker_custom\"\n [src]=\"icon\"\n></tui-svg>\n<tui-svg\n src=\"tuiIconWarningLarge\"\n class=\"t-marker t-marker_error\"\n></tui-svg>\n<tui-svg\n src=\"tuiIconCheckLarge\"\n class=\"t-marker t-marker_pass\"\n></tui-svg>\n<div class=\"t-marker t-marker_index\"></div>\n<ng-content></ng-content>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\n\nimport {TuiStepComponent} from './step/step.component';\nimport {TuiStepperComponent} from './stepper.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule],\n declarations: [TuiStepperComponent, TuiStepComponent],\n exports: [TuiStepperComponent, TuiStepComponent],\n})\nexport class TuiStepperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-stepper.js","sources":["../../../projects/kit/components/stepper/stepper.component.ts","../../../projects/kit/components/stepper/stepper.template.html","../../../projects/kit/components/stepper/step/step.component.ts","../../../projects/kit/components/stepper/step/step.template.html","../../../projects/kit/components/stepper/stepper.module.ts","../../../projects/kit/components/stepper/taiga-ui-kit-components-stepper.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n TuiDestroyService,\n tuiGetOriginalArrayFromQueryList,\n tuiIsElement,\n tuiMoveFocus,\n tuiPure,\n tuiQueryListChanges,\n TuiResizeService,\n TuiScrollService,\n} from '@taiga-ui/cdk';\nimport {TUI_ANIMATIONS_DURATION, TuiOrientation} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\nimport {delay} from 'rxjs/operators';\n\nimport {TuiStepComponent} from './step/step.component';\n\n@Component({\n selector: 'tui-stepper, nav[tuiStepper]',\n templateUrl: './stepper.template.html',\n styleUrls: ['./stepper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiResizeService, TuiDestroyService],\n})\nexport class TuiStepperComponent {\n @ContentChildren(forwardRef(() => TuiStepComponent), {read: ElementRef})\n private readonly steps: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n @Input()\n @HostBinding('attr.data-orientation')\n orientation: TuiOrientation = 'horizontal';\n\n @Input('activeItemIndex')\n set activeIndex(index: number) {\n this.activeItemIndex = index;\n this.scrollIntoView(index);\n }\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n activeItemIndex = 0;\n\n constructor(\n @Inject(ChangeDetectorRef) private readonly cdr: ChangeDetectorRef,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TuiScrollService) private readonly scrollService: TuiScrollService,\n @Inject(TuiResizeService) resize$: Observable<void>,\n @Inject(TUI_ANIMATIONS_DURATION) private readonly duration: number,\n ) {\n resize$.subscribe(() => this.scrollIntoView(this.activeItemIndex));\n }\n\n @tuiPure\n get changes$(): Observable<unknown> {\n // Delay is required to trigger change detection after steps are rendered,\n // so they can update their \"active\" status\n return tuiQueryListChanges(this.steps).pipe(delay(0));\n }\n\n @HostListener('keydown.arrowRight', ['$event', '1'])\n @HostListener('keydown.arrowLeft', ['$event', '-1'])\n onHorizontal(event: Event, step: number): void {\n if (this.orientation !== 'horizontal' || !event.target) {\n return;\n }\n\n event.preventDefault();\n this.moveFocus(event.target, step);\n }\n\n @HostListener('keydown.arrowDown', ['$event', '1'])\n @HostListener('keydown.arrowUp', ['$event', '-1'])\n onVertical(event: Event, step: number): void {\n if (this.orientation !== 'vertical' || !event.target) {\n return;\n }\n\n event.preventDefault();\n this.moveFocus(event.target, step);\n }\n\n indexOf(step: HTMLElement): number {\n return tuiGetOriginalArrayFromQueryList(this.steps).findIndex(\n ({nativeElement}) => nativeElement === step,\n );\n }\n\n isActive(index: number): boolean {\n return index === this.activeItemIndex;\n }\n\n activate(index: number): void {\n if (this.activeItemIndex === index) {\n return;\n }\n\n this.activeItemIndex = index;\n this.activeItemIndexChange.emit(index);\n this.cdr.markForCheck();\n this.scrollIntoView(index);\n }\n\n @tuiPure\n private getNativeElements(\n queryList: QueryList<ElementRef<HTMLElement>>,\n ): HTMLElement[] {\n return queryList.map(({nativeElement}) => nativeElement);\n }\n\n private moveFocus(current: EventTarget, step: number): void {\n if (!tuiIsElement(current)) {\n return;\n }\n\n const stepElements = this.getNativeElements(this.steps);\n const index = stepElements.findIndex(item => item === current);\n\n tuiMoveFocus(index, stepElements, step);\n }\n\n private scrollIntoView(index: number): void {\n const step = this.getNativeElements(this.steps)[index];\n\n if (!step) {\n return;\n }\n\n const {nativeElement} = this.el;\n const {clientHeight, clientWidth, offsetTop, offsetLeft} = nativeElement;\n const {\n offsetHeight,\n offsetWidth,\n offsetTop: stepOffsetTop,\n offsetLeft: stepOffsetLeft,\n } = step;\n const top = stepOffsetTop - offsetTop - clientHeight / 2 + offsetHeight / 2;\n const left = stepOffsetLeft - offsetLeft - clientWidth / 2 + offsetWidth / 2;\n\n this.scrollService\n .scroll$(\n nativeElement,\n Math.max(0, top),\n Math.max(0, left),\n this.duration / 3,\n )\n .subscribe();\n }\n}\n","<ng-container *ngIf=\"changes$ | async\"></ng-container>\n<ng-content></ng-content>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {TuiDestroyService, TuiFocusVisibleService} from '@taiga-ui/cdk';\nimport {\n TUI_COMMON_ICONS,\n TuiCommonIcons,\n TuiRouterLinkActiveService,\n} from '@taiga-ui/core';\nimport {identity, Observable} from 'rxjs';\nimport {filter} from 'rxjs/operators';\n\nimport {TuiStepperComponent} from '../stepper.component';\n\n@Component({\n selector:\n 'button[tuiStep], a[tuiStep]:not([routerLink]), a[tuiStep][routerLink][routerLinkActive]',\n templateUrl: './step.template.html',\n styleUrls: ['./step.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService, TuiRouterLinkActiveService, TuiFocusVisibleService],\n host: {\n type: 'button',\n },\n})\nexport class TuiStepComponent {\n @Input()\n @HostBinding('attr.data-state')\n stepState: 'error' | 'normal' | 'pass' = 'normal';\n\n @Input()\n icon = '';\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n constructor(\n @Inject(TuiFocusVisibleService) focusVisible$: TuiFocusVisibleService,\n @Inject(TuiRouterLinkActiveService) routerLinkActive$: Observable<boolean>,\n @Inject(TuiStepperComponent) private readonly stepper: TuiStepperComponent,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(TUI_COMMON_ICONS) readonly icons: TuiCommonIcons,\n ) {\n routerLinkActive$.pipe(filter(identity)).subscribe(() => {\n this.activate();\n });\n\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n @HostBinding('class._active')\n get isActive(): boolean {\n return this.stepper.isActive(this.index);\n }\n\n @HostBinding('class._vertical')\n get isVertical(): boolean {\n return this.stepper.orientation === 'vertical';\n }\n\n @HostBinding('tabIndex')\n get tabIndex(): number {\n return this.isActive ? 0 : -1;\n }\n\n get index(): number {\n return this.stepper.indexOf(this.el.nativeElement);\n }\n\n @HostListener('click')\n activate(): void {\n this.stepper.activate(this.index);\n }\n}\n","<tui-svg\n *ngIf=\"icon\"\n class=\"t-marker t-marker_custom\"\n [src]=\"icon\"\n></tui-svg>\n<tui-svg\n class=\"t-marker t-marker_error\"\n [src]=\"icons.error\"\n></tui-svg>\n<tui-svg\n class=\"t-marker t-marker_pass\"\n [src]=\"icons.check\"\n></tui-svg>\n<div class=\"t-marker t-marker_index\"></div>\n<ng-content></ng-content>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core';\n\nimport {TuiStepComponent} from './step/step.component';\nimport {TuiStepperComponent} from './stepper.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule],\n declarations: [TuiStepperComponent, TuiStepComponent],\n exports: [TuiStepperComponent, TuiStepComponent],\n})\nexport class TuiStepperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2"],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
|
18
18
|
import { __decorate } from 'tslib';
|
|
19
19
|
import { ANIMATION_FRAME } from '@ng-web-apis/common';
|
|
20
20
|
import { asCallable } from '@tinkoff/ng-event-plugins';
|
|
21
|
+
import { TUI_ARROW_OPTIONS } from '@taiga-ui/kit/components/arrow';
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
24
|
* Stream of tab activation events
|
|
@@ -430,13 +431,14 @@ const TUI_TABS_PROVIDERS = [
|
|
|
430
431
|
];
|
|
431
432
|
|
|
432
433
|
class TuiTabsWithMoreComponent {
|
|
433
|
-
constructor(options, margin, refresh$, el, cdr, moreWord
|
|
434
|
+
constructor(options, margin, refresh$, el, cdr, moreWord$, arrowOptions) {
|
|
434
435
|
this.options = options;
|
|
435
436
|
this.margin = margin;
|
|
436
437
|
this.refresh$ = refresh$;
|
|
437
438
|
this.el = el;
|
|
438
439
|
this.cdr = cdr;
|
|
439
440
|
this.moreWord$ = moreWord$;
|
|
441
|
+
this.arrowOptions = arrowOptions;
|
|
440
442
|
this.maxIndex = Infinity;
|
|
441
443
|
this.underline = this.options.underline;
|
|
442
444
|
this.activeItemIndex = 0;
|
|
@@ -565,8 +567,8 @@ class TuiTabsWithMoreComponent {
|
|
|
565
567
|
this.maxIndex = this.getMaxIndex();
|
|
566
568
|
}
|
|
567
569
|
}
|
|
568
|
-
TuiTabsWithMoreComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTabsWithMoreComponent, deps: [{ token: TUI_TABS_OPTIONS }, { token: TUI_TAB_MARGIN }, { token: TUI_TABS_REFRESH }, { token: ElementRef }, { token: ChangeDetectorRef }, { token: TUI_MORE_WORD }], target: i0.ɵɵFactoryTarget.Component });
|
|
569
|
-
TuiTabsWithMoreComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiTabsWithMoreComponent, selector: "tui-tabs-with-more, nav[tuiTabsWithMore]", inputs: { moreContent: "moreContent", dropdownContent: "dropdownContent", underline: "underline", activeItemIndex: "activeItemIndex", itemsLimit: "itemsLimit" }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, host: { properties: { "class._underline": "this.underline" } }, providers: TUI_TABS_PROVIDERS, queries: [{ propertyName: "items", predicate: TuiItemDirective, read: TemplateRef }], viewQueries: [{ propertyName: "moreButton", first: true, predicate: TuiTabComponent, descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-container *ngIf=\"items.changes | async\"></ng-container>\n<div class=\"t-wrapper\">\n <tui-tabs\n class=\"t-tabs\"\n [underline]=\"false\"\n [activeItemIndex]=\"activeItemIndex\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n >\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n ></ng-container>\n <ng-template #hidden>\n <div [class.t-overflown]=\"isOverflown(index)\">\n <ng-container [ngTemplateOutlet]=\"item\"></ng-container>\n </div>\n </ng-template>\n </ng-container>\n </tui-tabs>\n <tui-hosted-dropdown\n class=\"t-more_wrapper\"\n [class.t-overflown]=\"!isMoreVisible\"\n [content]=\"dropdownContent || dropdown\"\n [(open)]=\"open\"\n >\n <button\n tuiTab\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [tuiFocusable]=\"isMoreFocusable\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n <ng-container *polymorpheusOutlet=\"moreContent || more as text\">\n {{ text }}\n </ng-container>\n </button>\n <ng-template #more>\n {{ moreWord$ | async }}\n <tui-svg\n
|
|
570
|
+
TuiTabsWithMoreComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTabsWithMoreComponent, deps: [{ token: TUI_TABS_OPTIONS }, { token: TUI_TAB_MARGIN }, { token: TUI_TABS_REFRESH }, { token: ElementRef }, { token: ChangeDetectorRef }, { token: TUI_MORE_WORD }, { token: TUI_ARROW_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
|
|
571
|
+
TuiTabsWithMoreComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiTabsWithMoreComponent, selector: "tui-tabs-with-more, nav[tuiTabsWithMore]", inputs: { moreContent: "moreContent", dropdownContent: "dropdownContent", underline: "underline", activeItemIndex: "activeItemIndex", itemsLimit: "itemsLimit" }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, host: { properties: { "class._underline": "this.underline" } }, providers: TUI_TABS_PROVIDERS, queries: [{ propertyName: "items", predicate: TuiItemDirective, read: TemplateRef }], viewQueries: [{ propertyName: "moreButton", first: true, predicate: TuiTabComponent, descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-container *ngIf=\"items.changes | async\"></ng-container>\n<div class=\"t-wrapper\">\n <tui-tabs\n class=\"t-tabs\"\n [underline]=\"false\"\n [activeItemIndex]=\"activeItemIndex\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n >\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n ></ng-container>\n <ng-template #hidden>\n <div [class.t-overflown]=\"isOverflown(index)\">\n <ng-container [ngTemplateOutlet]=\"item\"></ng-container>\n </div>\n </ng-template>\n </ng-container>\n </tui-tabs>\n <tui-hosted-dropdown\n class=\"t-more_wrapper\"\n [class.t-overflown]=\"!isMoreVisible\"\n [content]=\"dropdownContent || dropdown\"\n [(open)]=\"open\"\n >\n <button\n tuiTab\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [tuiFocusable]=\"isMoreFocusable\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n <ng-container *polymorpheusOutlet=\"moreContent || more as text\">\n {{ text }}\n </ng-container>\n </button>\n <ng-template #more>\n {{ moreWord$ | async }}\n <tui-svg\n class=\"t-icon\"\n [class.t-icon_rotated]=\"open\"\n [src]=\"arrowOptions.iconSmall\"\n ></tui-svg>\n </ng-template>\n </tui-hosted-dropdown>\n <ng-template #dropdown>\n <div\n #element\n class=\"t-dropdown\"\n (keydown.arrowUp.prevent)=\"onWrapperArrow($event, element, true)\"\n (keydown.arrowDown.prevent)=\"onWrapperArrow($event, element, false)\"\n >\n <div\n *ngFor=\"let item of items; let index = index\"\n (tui-tab-activate)=\"onClick(index)\"\n >\n <ng-container\n *ngIf=\"shouldShow(index)\"\n [ngTemplateOutlet]=\"item\"\n ></ng-container>\n </div>\n </div>\n </ng-template>\n <tui-underline\n *ngIf=\"underline\"\n [element]=\"activeElement\"\n ></tui-underline>\n</div>\n", styles: [":host{position:relative;display:flex;font:var(--tui-font-text-m);height:var(--tui-height-l);box-sizing:border-box;color:var(--tui-text-02);box-shadow:inset 0 -1px var(--tui-base-03);overflow:hidden}.t-wrapper{position:relative;display:flex}.t-tabs{height:inherit;font-size:inherit;font-weight:inherit;overflow:visible;box-shadow:none;color:inherit}.t-overflown{display:flex;margin:0;width:0;max-width:0;overflow:hidden;visibility:hidden}.t-more_wrapper{height:100%;pointer-events:none}.t-more_wrapper button{pointer-events:auto}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-right:-.25rem;vertical-align:bottom}.t-icon_rotated{transform:rotate(180deg)}.t-dropdown{padding:.25rem 0}.t-dropdown ::ng-deep *[tuiTab]{width:calc(100% - .75rem);height:2.75rem;justify-content:flex-start;margin:.125rem .375rem;padding:0 .625rem;border-radius:var(--tui-radius-s);font:var(--tui-font-text-m);color:var(--tui-text-01)}.t-dropdown ::ng-deep *[tuiTab]:before{display:none}.t-dropdown ::ng-deep *[tuiTab]:hover,.t-dropdown ::ng-deep *[tuiTab]:focus,.t-dropdown ::ng-deep *[tuiTab]._active{box-shadow:none;background:var(--tui-clear)}.t-no-margin{margin-left:0}\n"], components: [{ type: TuiTabsComponent, selector: "tui-tabs:not([vertical]), nav[tuiTabs]:not([vertical])", inputs: ["underline"] }, { type: i2$1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: TuiTabComponent, selector: "a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]" }, { type: i2$1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: TuiUnderlineComponent, selector: "tui-underline", inputs: ["element"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TuiTabsDirective, selector: "tui-tabs, nav[tuiTabs]", inputs: ["activeItemIndex"], outputs: ["activeItemIndexChange"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i8.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
570
572
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTabsWithMoreComponent, decorators: [{
|
|
571
573
|
type: Component,
|
|
572
574
|
args: [{
|
|
@@ -594,6 +596,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
594
596
|
}] }, { type: i3.Observable, decorators: [{
|
|
595
597
|
type: Inject,
|
|
596
598
|
args: [TUI_MORE_WORD]
|
|
599
|
+
}] }, { type: undefined, decorators: [{
|
|
600
|
+
type: Inject,
|
|
601
|
+
args: [TUI_ARROW_OPTIONS]
|
|
597
602
|
}] }]; }, propDecorators: { moreButton: [{
|
|
598
603
|
type: ViewChild,
|
|
599
604
|
args: [TuiTabComponent, { read: ElementRef }]
|