@taiga-ui/kit 3.32.0-dev.main-1a3b564 → 3.32.0-dev.main-8e1bc31

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.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-data-list-wrapper.js","sources":["../../../projects/kit/components/data-list-wrapper/data-list-wrapper.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.module.ts","../../../projects/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsNativeFocused,\n tuiIsPresent,\n} from '@taiga-ui/cdk';\nimport {\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Directive()\nexport abstract class AbstractTuiDataListWrapper<T> {\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n protected readonly optionsQuery: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiItemsHandlers<T>['disabledItemHandler'] =\n this.itemsHandlers.disabledItemHandler;\n\n @Input()\n emptyContent: PolymorpheusContent;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS = this.defaultSize;\n\n constructor(\n protected readonly itemsHandlers: TuiItemsHandlers<T>,\n protected readonly defaultSize: TuiSizeL | TuiSizeXS,\n ) {}\n\n @Input()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n this.itemsHandlers.stringify($implicit);\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: tuiIsNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.optionsQuery\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper[labels]',\n templateUrl: './data-list-group-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)],\n})\nexport class TuiDataListGroupWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[][] | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\"></tui-loader>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n tuiAsDataListAccessor,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper:not([labels])',\n templateUrl: './data-list-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsDataListAccessor(TuiDataListWrapperComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiDataListWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[] | null = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n controller: TuiTextfieldController | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <button\n *ngFor=\"let item of items\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n ></tui-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListDirective, TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [\n TuiDataListWrapperComponent,\n TuiDataListGroupWrapperComponent,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListWrapperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-data-list-wrapper.js","sources":["../../../projects/kit/components/data-list-wrapper/data-list-wrapper.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-group-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.component.ts","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.template.html","../../../projects/kit/components/data-list-wrapper/data-list-wrapper.module.ts","../../../projects/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsNativeFocused,\n tuiIsPresent,\n} from '@taiga-ui/cdk';\nimport {\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {TuiItemsHandlers} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Directive()\nexport abstract class AbstractTuiDataListWrapper<T> {\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n protected readonly optionsQuery: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiItemsHandlers<T>['disabledItemHandler'] =\n this.itemsHandlers.disabledItemHandler;\n\n @Input()\n emptyContent: PolymorpheusContent;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL | TuiSizeXS = this.defaultSize;\n\n constructor(\n protected readonly itemsHandlers: TuiItemsHandlers<T>,\n protected readonly defaultSize: TuiSizeL | TuiSizeXS,\n ) {}\n\n @Input()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n this.itemsHandlers.stringify($implicit);\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: tuiIsNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.optionsQuery\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {tuiAsDataListAccessor, TuiTextfieldSizeDirective} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper[labels]',\n templateUrl: './data-list-group-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)],\n})\nexport class TuiDataListGroupWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[][] | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TuiTextfieldSizeDirective)\n controller: TuiTextfieldSizeDirective | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\"></tui-loader>\n</ng-template>\n","import {ChangeDetectionStrategy, Component, Inject, Input, Optional} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n tuiAsDataListAccessor,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {TUI_ITEMS_HANDLERS, TuiItemsHandlers} from '@taiga-ui/kit/tokens';\n\nimport {AbstractTuiDataListWrapper} from './data-list-wrapper';\n\n@Component({\n selector: 'tui-data-list-wrapper:not([labels])',\n templateUrl: './data-list-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsDataListAccessor(TuiDataListWrapperComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiDataListWrapperComponent<T> extends AbstractTuiDataListWrapper<T> {\n @Input()\n @tuiDefaultProp()\n items: readonly T[] | null = [];\n\n constructor(\n @Inject(TUI_ITEMS_HANDLERS) itemsHandlers: TuiItemsHandlers<T>,\n @Optional()\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n controller: TuiTextfieldController | null,\n ) {\n super(itemsHandlers, controller?.size || 'm');\n }\n}\n","<!-- TODO: remove $any in 4.0 -->\n<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"$any(size)\"\n>\n <button\n *ngFor=\"let item of items\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n ></tui-loader>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListDirective, TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [\n TuiDataListWrapperComponent,\n TuiDataListGroupWrapperComponent,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListWrapperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,26 +1,27 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
3
  import { ChangeDetectorRef, Component, ChangeDetectionStrategy, Optional, Self, Inject, ViewChild, Input, Directive, NgModule } from '@angular/core';
4
- import * as i5 from '@angular/forms';
5
- import { NgControl } from '@angular/forms';
6
- import * as i3 from '@taiga-ui/cdk';
7
- import { AbstractTuiNullableControl, ALWAYS_FALSE_HANDLER, TuiDay, tuiDateClamp, tuiAsFocusableItemAccessor, tuiAsControl, tuiDefaultProp, AbstractTuiControl, TuiDestroyService, TuiPreventDefaultModule, TuiMapperPipeModule } from '@taiga-ui/cdk';
4
+ import * as i4 from '@angular/forms';
5
+ import { NgControl, FormsModule } from '@angular/forms';
6
+ import * as i5 from '@taiga-ui/cdk';
7
+ import { AbstractTuiNullableControl, ALWAYS_FALSE_HANDLER, TuiDay, tuiDateClamp, TuiMonth, TUI_IS_MOBILE, tuiAsFocusableItemAccessor, tuiAsControl, tuiDefaultProp, AbstractTuiControl, TuiDestroyService, TuiPreventDefaultModule, TuiMapperPipeModule } from '@taiga-ui/cdk';
8
8
  import * as i1 from '@taiga-ui/core';
9
9
  import { TuiMonthPipe, TuiPrimitiveTextfieldComponent, AbstractTuiTextfieldHost, tuiAsTextfieldHost, TuiHostedDropdownModule, TuiPrimitiveTextfieldModule, TuiSvgModule, TuiTextfieldControllerModule, TuiTextfieldComponent } from '@taiga-ui/core';
10
10
  import { TUI_MONTH_FORMATTER_PROVIDER } from '@taiga-ui/kit/providers';
11
11
  import { TUI_MONTH_FORMATTER, TUI_INPUT_DATE_OPTIONS } from '@taiga-ui/kit/tokens';
12
12
  import * as i2 from '@taiga-ui/kit/components/calendar-month';
13
13
  import { TuiCalendarMonthModule } from '@taiga-ui/kit/components/calendar-month';
14
- import * as i4 from '@angular/common';
14
+ import * as i3 from '@angular/common';
15
15
  import { CommonModule } from '@angular/common';
16
16
  import * as i2$1 from 'rxjs';
17
17
  import { Subject } from 'rxjs';
18
18
  import { distinctUntilChanged, switchMap, takeUntil } from 'rxjs/operators';
19
19
 
20
20
  class TuiInputMonthComponent extends AbstractTuiNullableControl {
21
- constructor(control, cdr, formatter, options) {
21
+ constructor(control, cdr, formatter, isMobile, options) {
22
22
  super(control, cdr);
23
23
  this.formatter = formatter;
24
+ this.isMobile = isMobile;
24
25
  this.options = options;
25
26
  this.min = this.options.min;
26
27
  this.max = this.options.max;
@@ -29,7 +30,8 @@ class TuiInputMonthComponent extends AbstractTuiNullableControl {
29
30
  this.open = false;
30
31
  }
31
32
  get nativeFocusableElement() {
32
- return this.textfield ? this.textfield.nativeFocusableElement : null;
33
+ var _a;
34
+ return ((_a = this.textfield) === null || _a === void 0 ? void 0 : _a.nativeFocusableElement) || null;
33
35
  }
34
36
  get computedDefaultActiveYear() {
35
37
  return (this.activeYear ||
@@ -42,12 +44,25 @@ class TuiInputMonthComponent extends AbstractTuiNullableControl {
42
44
  get calendarIcon() {
43
45
  return this.options.icon;
44
46
  }
47
+ get nativePicker() {
48
+ return this.isMobile && this.options.nativePicker;
49
+ }
50
+ get nativeValue() {
51
+ var _a;
52
+ return ((_a = this.value) === null || _a === void 0 ? void 0 : _a.toJSON()) || '';
53
+ }
54
+ onNativeChange(value) {
55
+ const [year, month] = value.split('-').map(Number);
56
+ this.value = value
57
+ ? tuiDateClamp(new TuiMonth(year, month - 1), this.min, this.max)
58
+ : null;
59
+ }
45
60
  onValueChange(value) {
46
61
  if (value) {
47
62
  return;
48
63
  }
49
64
  this.value = null;
50
- this.onOpenChange(true);
65
+ this.onOpenChange(!this.nativePicker);
51
66
  }
52
67
  onMonthClick(month) {
53
68
  this.value = month;
@@ -70,13 +85,13 @@ class TuiInputMonthComponent extends AbstractTuiNullableControl {
70
85
  this.open = false;
71
86
  }
72
87
  }
73
- TuiInputMonthComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputMonthComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TUI_MONTH_FORMATTER }, { token: TUI_INPUT_DATE_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
88
+ TuiInputMonthComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputMonthComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TUI_MONTH_FORMATTER }, { token: TUI_IS_MOBILE }, { token: TUI_INPUT_DATE_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
74
89
  TuiInputMonthComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiInputMonthComponent, selector: "tui-input-month", inputs: { min: "min", max: "max", disabledItemHandler: "disabledItemHandler", defaultActiveYear: "defaultActiveYear" }, providers: [
75
90
  tuiAsFocusableItemAccessor(TuiInputMonthComponent),
76
91
  tuiAsControl(TuiInputMonthComponent),
77
92
  TUI_MONTH_FORMATTER_PROVIDER,
78
93
  TuiMonthPipe,
79
- ], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n class=\"t-textfield\"\n [editable]=\"false\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"calendarIcon\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [value]=\"(value | tuiMapper : formatter | async) || ''\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-calendar-month\n tuiPreventDefault=\"mousedown\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [min]=\"min\"\n [max]=\"max\"\n [value]=\"value\"\n [year]=\"computedDefaultActiveYear\"\n (yearChange)=\"activeYear = $event\"\n (monthClick)=\"onMonthClick($event)\"\n ></tui-calendar-month>\n </ng-template>\n</tui-hosted-dropdown>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.t-hosted{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i2.TuiCalendarMonthComponent, selector: "tui-calendar-month", inputs: ["value", "year", "disabledItemHandler", "min", "max"], outputs: ["monthClick", "hoveredItemChange", "yearChange"] }], directives: [{ type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i1.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { type: i3.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }], pipes: { "async": i4.AsyncPipe, "tuiMapper": i3.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
94
+ ], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive && !nativePicker\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n class=\"t-textfield\"\n [editable]=\"false\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"calendarIcon\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [value]=\"(value | tuiMapper : formatter | async) || ''\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n <input\n *ngIf=\"nativePicker\"\n type=\"month\"\n class=\"t-mobile\"\n [min]=\"min.toJSON()\"\n [max]=\"max.toJSON()\"\n [ngModel]=\"nativeValue\"\n (ngModelChange)=\"onNativeChange($event)\"\n (mousedown.stop.silent)=\"(0)\"\n (click.stop.silent)=\"(0)\"\n />\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-calendar-month\n tuiPreventDefault=\"mousedown\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [min]=\"min\"\n [max]=\"max\"\n [value]=\"value\"\n [year]=\"computedDefaultActiveYear\"\n (yearChange)=\"activeYear = $event\"\n (monthClick)=\"onMonthClick($event)\"\n ></tui-calendar-month>\n </ng-template>\n</tui-hosted-dropdown>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.t-hosted{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}.t-mobile{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border:0}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i2.TuiCalendarMonthComponent, selector: "tui-calendar-month", inputs: ["value", "year", "disabledItemHandler", "min", "max"], outputs: ["monthClick", "hoveredItemChange", "yearChange"] }], directives: [{ type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i1.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }], pipes: { "async": i3.AsyncPipe, "tuiMapper": i5.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
80
95
  __decorate([
81
96
  tuiDefaultProp()
82
97
  ], TuiInputMonthComponent.prototype, "min", void 0);
@@ -103,7 +118,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
103
118
  TuiMonthPipe,
104
119
  ],
105
120
  }]
106
- }], ctorParameters: function () { return [{ type: i5.NgControl, decorators: [{
121
+ }], ctorParameters: function () { return [{ type: i4.NgControl, decorators: [{
107
122
  type: Optional
108
123
  }, {
109
124
  type: Self
@@ -116,6 +131,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
116
131
  }] }, { type: undefined, decorators: [{
117
132
  type: Inject,
118
133
  args: [TUI_MONTH_FORMATTER]
134
+ }] }, { type: undefined, decorators: [{
135
+ type: Inject,
136
+ args: [TUI_IS_MOBILE]
119
137
  }] }, { type: undefined, decorators: [{
120
138
  type: Inject,
121
139
  args: [TUI_INPUT_DATE_OPTIONS]
@@ -187,7 +205,8 @@ TuiInputMonthModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", ver
187
205
  TuiSvgModule,
188
206
  TuiPreventDefaultModule,
189
207
  TuiMapperPipeModule,
190
- TuiTextfieldControllerModule], exports: [TuiInputMonthComponent, TuiInputMonthDirective, TuiTextfieldComponent] });
208
+ TuiTextfieldControllerModule,
209
+ FormsModule], exports: [TuiInputMonthComponent, TuiInputMonthDirective, TuiTextfieldComponent] });
191
210
  TuiInputMonthModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputMonthModule, imports: [[
192
211
  CommonModule,
193
212
  TuiCalendarMonthModule,
@@ -197,6 +216,7 @@ TuiInputMonthModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ver
197
216
  TuiPreventDefaultModule,
198
217
  TuiMapperPipeModule,
199
218
  TuiTextfieldControllerModule,
219
+ FormsModule,
200
220
  ]] });
201
221
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputMonthModule, decorators: [{
202
222
  type: NgModule,
@@ -210,6 +230,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
210
230
  TuiPreventDefaultModule,
211
231
  TuiMapperPipeModule,
212
232
  TuiTextfieldControllerModule,
233
+ FormsModule,
213
234
  ],
214
235
  declarations: [TuiInputMonthComponent, TuiInputMonthDirective],
215
236
  exports: [TuiInputMonthComponent, TuiInputMonthDirective, TuiTextfieldComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-input-month.js","sources":["../../../projects/kit/components/input-month/input-month.component.ts","../../../projects/kit/components/input-month/input-month.template.html","../../../projects/kit/components/input-month/input-month.directive.ts","../../../projects/kit/components/input-month/input-month.module.ts","../../../projects/kit/components/input-month/taiga-ui-kit-components-input-month.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDateClamp,\n TuiDay,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiHandler,\n TuiMonth,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {\n TuiMonthPipe,\n TuiPrimitiveTextfieldComponent,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_MONTH_FORMATTER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {\n TUI_INPUT_DATE_OPTIONS,\n TUI_MONTH_FORMATTER,\n TuiInputDateOptions,\n} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'tui-input-month',\n templateUrl: './input-month.template.html',\n styleUrls: ['./input-month.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputMonthComponent),\n tuiAsControl(TuiInputMonthComponent),\n TUI_MONTH_FORMATTER_PROVIDER,\n TuiMonthPipe,\n ],\n})\nexport class TuiInputMonthComponent\n extends AbstractTuiNullableControl<TuiMonth>\n implements TuiWithOptionalMinMax<TuiMonth>, TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = this.options.min;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = this.options.max;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiMonth> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n defaultActiveYear: TuiYear = TuiDay.currentLocal();\n\n activeYear?: TuiYear;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_MONTH_FORMATTER)\n readonly formatter: TuiHandler<TuiMonth | null, Observable<string>>,\n @Inject(TUI_INPUT_DATE_OPTIONS)\n private readonly options: TuiInputDateOptions,\n ) {\n super(control, cdr);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get computedDefaultActiveYear(): TuiYear {\n return (\n this.activeYear ||\n this.value ||\n tuiDateClamp(this.defaultActiveYear, this.min, this.max)\n );\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get calendarIcon(): TuiInputDateOptions['icon'] {\n return this.options.icon;\n }\n\n onValueChange(value: string): void {\n if (value) {\n return;\n }\n\n this.value = null;\n this.onOpenChange(true);\n }\n\n onMonthClick(month: TuiMonth): void {\n this.value = month;\n this.close();\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onOpenChange(open: boolean): void {\n if (open && this.value) {\n this.activeYear = this.value;\n }\n\n this.open = open;\n }\n\n override setDisabledState(): void {\n super.setDisabledState();\n this.close();\n }\n\n private close(): void {\n this.open = false;\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n class=\"t-textfield\"\n [editable]=\"false\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"calendarIcon\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [value]=\"(value | tuiMapper : formatter | async) || ''\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-calendar-month\n tuiPreventDefault=\"mousedown\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [min]=\"min\"\n [max]=\"max\"\n [value]=\"value\"\n [year]=\"computedDefaultActiveYear\"\n (yearChange)=\"activeYear = $event\"\n (monthClick)=\"onMonthClick($event)\"\n ></tui-calendar-month>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive, DoCheck, Inject, Self} from '@angular/core';\nimport {AbstractTuiControl, TuiDestroyService, TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\nimport {TUI_MONTH_FORMATTER} from '@taiga-ui/kit/tokens';\nimport {Observable, Subject} from 'rxjs';\nimport {distinctUntilChanged, switchMap, takeUntil} from 'rxjs/operators';\n\nimport {TuiInputMonthComponent} from './input-month.component';\n\n@Directive({\n selector: 'tui-input-month',\n providers: [tuiAsTextfieldHost(TuiInputMonthDirective), TuiDestroyService],\n})\nexport class TuiInputMonthDirective\n extends AbstractTuiTextfieldHost<TuiInputMonthComponent>\n implements DoCheck\n{\n private readonly value$ = new Subject<TuiMonth | null>();\n\n private localizedValue = '';\n\n constructor(\n @Inject(AbstractTuiControl) host: TuiInputMonthComponent,\n @Inject(TUI_MONTH_FORMATTER)\n formatter: TuiHandler<TuiMonth | null, Observable<string>>,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n ) {\n super(host);\n\n this.value$\n .pipe(distinctUntilChanged(), switchMap(formatter), takeUntil(destroy$))\n .subscribe(localizedValue => {\n this.localizedValue = localizedValue;\n });\n }\n\n override get readOnly(): boolean {\n return true;\n }\n\n override get value(): string {\n return this.localizedValue;\n }\n\n ngDoCheck(): void {\n this.value$.next(this.host.value);\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule, TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiCalendarMonthModule} from '@taiga-ui/kit/components/calendar-month';\n\nimport {TuiInputMonthComponent} from './input-month.component';\nimport {TuiInputMonthDirective} from './input-month.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiCalendarMonthModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiPreventDefaultModule,\n TuiMapperPipeModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputMonthComponent, TuiInputMonthDirective],\n exports: [TuiInputMonthComponent, TuiInputMonthDirective, TuiTextfieldComponent],\n})\nexport class TuiInputMonthModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-input-month.js","sources":["../../../projects/kit/components/input-month/input-month.component.ts","../../../projects/kit/components/input-month/input-month.template.html","../../../projects/kit/components/input-month/input-month.directive.ts","../../../projects/kit/components/input-month/input-month.module.ts","../../../projects/kit/components/input-month/taiga-ui-kit-components-input-month.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n TUI_IS_MOBILE,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDateClamp,\n TuiDay,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiHandler,\n TuiMonth,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {\n TuiMonthPipe,\n TuiPrimitiveTextfieldComponent,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_MONTH_FORMATTER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {\n TUI_INPUT_DATE_OPTIONS,\n TUI_MONTH_FORMATTER,\n TuiInputDateOptions,\n} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'tui-input-month',\n templateUrl: './input-month.template.html',\n styleUrls: ['./input-month.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputMonthComponent),\n tuiAsControl(TuiInputMonthComponent),\n TUI_MONTH_FORMATTER_PROVIDER,\n TuiMonthPipe,\n ],\n})\nexport class TuiInputMonthComponent\n extends AbstractTuiNullableControl<TuiMonth>\n implements TuiWithOptionalMinMax<TuiMonth>, TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = this.options.min;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = this.options.max;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiMonth> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n defaultActiveYear: TuiYear = TuiDay.currentLocal();\n\n activeYear?: TuiYear;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_MONTH_FORMATTER)\n readonly formatter: TuiHandler<TuiMonth | null, Observable<string>>,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TUI_INPUT_DATE_OPTIONS) private readonly options: TuiInputDateOptions,\n ) {\n super(control, cdr);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield?.nativeFocusableElement || null;\n }\n\n get computedDefaultActiveYear(): TuiYear {\n return (\n this.activeYear ||\n this.value ||\n tuiDateClamp(this.defaultActiveYear, this.min, this.max)\n );\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get calendarIcon(): TuiInputDateOptions['icon'] {\n return this.options.icon;\n }\n\n get nativePicker(): boolean {\n return this.isMobile && this.options.nativePicker;\n }\n\n get nativeValue(): string {\n return this.value?.toJSON() || '';\n }\n\n onNativeChange(value: string): void {\n const [year, month] = value.split('-').map(Number);\n\n this.value = value\n ? tuiDateClamp(new TuiMonth(year, month - 1), this.min, this.max)\n : null;\n }\n\n onValueChange(value: string): void {\n if (value) {\n return;\n }\n\n this.value = null;\n this.onOpenChange(!this.nativePicker);\n }\n\n onMonthClick(month: TuiMonth): void {\n this.value = month;\n this.close();\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onOpenChange(open: boolean): void {\n if (open && this.value) {\n this.activeYear = this.value;\n }\n\n this.open = open;\n }\n\n override setDisabledState(): void {\n super.setDisabledState();\n this.close();\n }\n\n private close(): void {\n this.open = false;\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive && !nativePicker\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n class=\"t-textfield\"\n [editable]=\"false\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"calendarIcon\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [value]=\"(value | tuiMapper : formatter | async) || ''\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n <input\n *ngIf=\"nativePicker\"\n type=\"month\"\n class=\"t-mobile\"\n [min]=\"min.toJSON()\"\n [max]=\"max.toJSON()\"\n [ngModel]=\"nativeValue\"\n (ngModelChange)=\"onNativeChange($event)\"\n (mousedown.stop.silent)=\"(0)\"\n (click.stop.silent)=\"(0)\"\n />\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-calendar-month\n tuiPreventDefault=\"mousedown\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [min]=\"min\"\n [max]=\"max\"\n [value]=\"value\"\n [year]=\"computedDefaultActiveYear\"\n (yearChange)=\"activeYear = $event\"\n (monthClick)=\"onMonthClick($event)\"\n ></tui-calendar-month>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive, DoCheck, Inject, Self} from '@angular/core';\nimport {AbstractTuiControl, TuiDestroyService, TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\nimport {TUI_MONTH_FORMATTER} from '@taiga-ui/kit/tokens';\nimport {Observable, Subject} from 'rxjs';\nimport {distinctUntilChanged, switchMap, takeUntil} from 'rxjs/operators';\n\nimport {TuiInputMonthComponent} from './input-month.component';\n\n@Directive({\n selector: 'tui-input-month',\n providers: [tuiAsTextfieldHost(TuiInputMonthDirective), TuiDestroyService],\n})\nexport class TuiInputMonthDirective\n extends AbstractTuiTextfieldHost<TuiInputMonthComponent>\n implements DoCheck\n{\n private readonly value$ = new Subject<TuiMonth | null>();\n\n private localizedValue = '';\n\n constructor(\n @Inject(AbstractTuiControl) host: TuiInputMonthComponent,\n @Inject(TUI_MONTH_FORMATTER)\n formatter: TuiHandler<TuiMonth | null, Observable<string>>,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n ) {\n super(host);\n\n this.value$\n .pipe(distinctUntilChanged(), switchMap(formatter), takeUntil(destroy$))\n .subscribe(localizedValue => {\n this.localizedValue = localizedValue;\n });\n }\n\n override get readOnly(): boolean {\n return true;\n }\n\n override get value(): string {\n return this.localizedValue;\n }\n\n ngDoCheck(): void {\n this.value$.next(this.host.value);\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiMapperPipeModule, TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiCalendarMonthModule} from '@taiga-ui/kit/components/calendar-month';\n\nimport {TuiInputMonthComponent} from './input-month.component';\nimport {TuiInputMonthDirective} from './input-month.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiCalendarMonthModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiPreventDefaultModule,\n TuiMapperPipeModule,\n TuiTextfieldControllerModule,\n FormsModule,\n ],\n declarations: [TuiInputMonthComponent, TuiInputMonthDirective],\n exports: [TuiInputMonthComponent, TuiInputMonthDirective, TuiTextfieldComponent],\n})\nexport class TuiInputMonthModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/kit",
3
- "version": "3.32.0-dev.main-1a3b564",
3
+ "version": "3.32.0-dev.main-8e1bc31",
4
4
  "description": "Taiga UI Angular main components kit",
5
5
  "keywords": [
6
6
  "angular",
@@ -13,9 +13,9 @@
13
13
  "repository": "https://github.com/tinkoff/taiga-ui",
14
14
  "license": "Apache-2.0",
15
15
  "dependencies": {
16
- "@maskito/angular": "0.15.0",
17
- "@maskito/core": "0.15.0",
18
- "@maskito/kit": "0.15.0",
16
+ "@maskito/angular": "0.16.0",
17
+ "@maskito/core": "0.16.0",
18
+ "@maskito/kit": "0.16.0",
19
19
  "@ng-web-apis/intersection-observer": "3.0.1",
20
20
  "text-mask-core": "5.1.2",
21
21
  "tslib": ">=2.0.0"