@taiga-ui/legacy 4.1.0 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/input-color/input-color.component.d.ts +1 -1
- package/components/input-copy/input-copy.component.d.ts +1 -1
- package/components/primitive-textfield/primitive-textfield.component.d.ts +1 -1
- package/esm2022/classes/abstract-native-select.mjs +9 -7
- package/esm2022/classes/control.mjs +10 -10
- package/esm2022/classes/interactive.mjs +12 -16
- package/esm2022/components/arrow/arrow.component.mjs +8 -11
- package/esm2022/components/color-selector/color-edit/color-edit.component.mjs +3 -3
- package/esm2022/components/color-selector/linear-multi-picker/linear-multi-picker.component.mjs +5 -6
- package/esm2022/components/combo-box/combo-box-strict.directive.mjs +5 -5
- package/esm2022/components/combo-box/combo-box.component.mjs +6 -7
- package/esm2022/components/input/input.component.mjs +6 -7
- package/esm2022/components/input-color/input-color.component.mjs +8 -9
- package/esm2022/components/input-copy/input-copy.component.mjs +9 -10
- package/esm2022/components/input-date/input-date.component.mjs +7 -10
- package/esm2022/components/input-date-multi/input-date-multi.component.mjs +9 -14
- package/esm2022/components/input-date-range/input-date-range.component.mjs +7 -10
- package/esm2022/components/input-date-time/input-date-time.component.mjs +7 -10
- package/esm2022/components/input-month/input-month.component.mjs +7 -8
- package/esm2022/components/input-month-range/input-month-range.component.mjs +6 -7
- package/esm2022/components/input-number/input-number.component.mjs +12 -14
- package/esm2022/components/input-password/input-password.component.mjs +8 -9
- package/esm2022/components/input-phone/input-phone.component.mjs +6 -7
- package/esm2022/components/input-phone-international/input-phone-international.component.mjs +9 -14
- package/esm2022/components/input-range/input-range.component.mjs +3 -3
- package/esm2022/components/input-slider/input-slider.component.mjs +3 -3
- package/esm2022/components/input-tag/input-tag.component.mjs +12 -20
- package/esm2022/components/input-time/input-time.component.mjs +8 -11
- package/esm2022/components/input-year/input-year.component.mjs +6 -7
- package/esm2022/components/island/island.directive.mjs +11 -27
- package/esm2022/components/multi-select/multi-select-group/multi-select-group.component.mjs +6 -7
- package/esm2022/components/multi-select/multi-select.component.mjs +9 -11
- package/esm2022/components/primitive-textfield/primitive-textfield.component.mjs +16 -32
- package/esm2022/components/primitive-textfield/textfield/textfield.component.mjs +2 -2
- package/esm2022/components/primitive-textfield/value-decoration/value-decoration.component.mjs +8 -13
- package/esm2022/components/select/select.component.mjs +6 -7
- package/esm2022/components/sheet/components/sheet/sheet.component.mjs +4 -6
- package/esm2022/components/tag/tag.component.mjs +15 -32
- package/esm2022/components/textarea/textarea.component.mjs +15 -35
- package/esm2022/components/tooltip/tooltip.component.mjs +7 -10
- package/esm2022/directives/wrapper/wrapper.directive.mjs +11 -21
- package/fesm2022/taiga-ui-legacy-classes.mjs +26 -28
- package/fesm2022/taiga-ui-legacy-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-arrow.mjs +7 -10
- package/fesm2022/taiga-ui-legacy-components-arrow.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-color-selector.mjs +6 -7
- package/fesm2022/taiga-ui-legacy-components-color-selector.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-combo-box.mjs +8 -9
- package/fesm2022/taiga-ui-legacy-components-combo-box.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-color.mjs +7 -8
- package/fesm2022/taiga-ui-legacy-components-input-color.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-copy.mjs +8 -9
- package/fesm2022/taiga-ui-legacy-components-input-copy.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs +8 -13
- package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +6 -9
- package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +6 -9
- package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date.mjs +6 -9
- package/fesm2022/taiga-ui-legacy-components-input-date.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +5 -6
- package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-month.mjs +6 -7
- package/fesm2022/taiga-ui-legacy-components-input-month.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-number.mjs +11 -13
- package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-password.mjs +7 -8
- package/fesm2022/taiga-ui-legacy-components-input-password.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs +8 -13
- package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-phone.mjs +5 -6
- package/fesm2022/taiga-ui-legacy-components-input-phone.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-range.mjs +2 -2
- package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-slider.mjs +2 -2
- package/fesm2022/taiga-ui-legacy-components-input-slider.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +11 -19
- package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-time.mjs +7 -10
- package/fesm2022/taiga-ui-legacy-components-input-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-year.mjs +5 -6
- package/fesm2022/taiga-ui-legacy-components-input-year.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input.mjs +5 -6
- package/fesm2022/taiga-ui-legacy-components-input.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-island.mjs +10 -26
- package/fesm2022/taiga-ui-legacy-components-island.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +12 -15
- package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +23 -44
- package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-select.mjs +5 -6
- package/fesm2022/taiga-ui-legacy-components-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-sheet.mjs +3 -5
- package/fesm2022/taiga-ui-legacy-components-sheet.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-tag.mjs +14 -31
- package/fesm2022/taiga-ui-legacy-components-tag.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-textarea.mjs +14 -34
- package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-tooltip.mjs +6 -9
- package/fesm2022/taiga-ui-legacy-components-tooltip.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs +10 -20
- package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs.map +1 -1
- package/package.json +1 -1
- package/styles/mixins/mixins.less +0 -6
- package/styles/mixins/mixins.scss +0 -6
- package/styles/mixins/textfield.less +4 -0
- package/styles/mixins/textfield.scss +2 -0
- package/utils/icons-path-factory.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-legacy-components-input-color.mjs","sources":["../../../projects/legacy/components/input-color/input-color.component.ts","../../../projects/legacy/components/input-color/input-color.template.html","../../../projects/legacy/components/input-color/input-color.module.ts","../../../projects/legacy/components/input-color/taiga-ui-legacy-components-input-color.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-legacy-components-input-color.mjs","sources":["../../../projects/legacy/components/input-color/input-color.component.ts","../../../projects/legacy/components/input-color/input-color.template.html","../../../projects/legacy/components/input-color/input-color.module.ts","../../../projects/legacy/components/input-color/taiga-ui-legacy-components-input-color.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport type {SafeStyle} from '@angular/platform-browser';\nimport {DomSanitizer} from '@angular/platform-browser';\nimport type {MaskitoOptions} from '@maskito/core';\nimport {\n tuiGetGradientData,\n tuiParseGradient,\n tuiToGradient,\n} from '@taiga-ui/cdk/utils/color';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/directives/dropdown';\nimport {AbstractTuiControl} from '@taiga-ui/legacy/classes';\nimport {TuiPrimitiveTextfieldComponent} from '@taiga-ui/legacy/components/primitive-textfield';\nimport type {\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/legacy/tokens';\n\ntype MaskMode = 'gradient' | 'hex' | 'rgb';\n\n@Component({\n selector: 'tui-input-color',\n templateUrl: './input-color.template.html',\n styleUrls: ['./input-color.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n viewProviders: [tuiDropdownOptionsProvider({maxHeight: 600})],\n host: {\n '(click)': 'onClick()',\n },\n})\nexport class TuiInputColorComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n private readonly domSanitizer = inject(DomSanitizer);\n\n @Input()\n public colors: ReadonlyMap<string, string> = new Map<string, string>();\n\n public open = false;\n\n public get focused(): boolean {\n return !!this.textfield?.focused;\n }\n\n public get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.computedDisabled || !this.textfield\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n public get background(): SafeStyle {\n return this.sanitize(this.value, this.domSanitizer);\n }\n\n public get mode(): MaskMode {\n if (this.value.startsWith('#')) {\n return 'hex';\n }\n\n return this.value.startsWith('rgb') ? 'rgb' : 'gradient';\n }\n\n @tuiPure\n public maskitoOptions(mode: MaskMode): MaskitoOptions | null {\n return mode === 'hex' ? {mask: ['#', ...new Array(6).fill(/[0-9a-f]/i)]} : null;\n }\n\n public onClick(): void {\n this.open = !this.open;\n }\n\n /** deprecated use 'value' setter */\n public onValueChange(textValue: string): void {\n this.value = textValue;\n }\n\n public onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n protected getFallbackValue(): string {\n return '#000000';\n }\n\n @tuiPure\n private sanitize(value: string, domSanitizer: DomSanitizer): SafeStyle | string {\n return value.startsWith('linear-gradient(')\n ? domSanitizer.bypassSecurityTrustStyle(\n tuiToGradient(tuiParseGradient(tuiGetGradientData(value))),\n )\n : value;\n }\n}\n","<div\n class=\"t-wrapper\"\n [tuiDropdown]=\"picker\"\n [(tuiDropdownOpen)]=\"open\"\n>\n <tui-primitive-textfield\n class=\"t-textfield\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"maskitoOptions(mode)\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIconLeft]=\"color\"\n [(value)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content />\n </tui-primitive-textfield>\n</div>\n\n<ng-template #color>\n <div\n class=\"t-color\"\n [style.background]=\"background\"\n ></div>\n</ng-template>\n\n<ng-template #picker>\n <tui-color-selector\n [colors]=\"colors\"\n [(color)]=\"value\"\n />\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MaskitoDirective} from '@maskito/angular';\nimport {TuiDropdown} from '@taiga-ui/core/directives/dropdown';\nimport {TuiColorSelectorModule} from '@taiga-ui/legacy/components/color-selector';\nimport {TuiPrimitiveTextfieldModule} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TuiTextfieldControllerModule} from '@taiga-ui/legacy/directives/textfield-controller';\n\nimport {TuiInputColorComponent} from './input-color.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiColorSelectorModule,\n MaskitoDirective,\n ...TuiDropdown,\n ],\n declarations: [TuiInputColorComponent],\n exports: [TuiInputColorComponent, ...TuiDropdown],\n})\nexport class TuiInputColorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;;;;;;;;;;;;AA0BA,MAUa,sBACT,SAAQ,kBAA0B,CAAA;AAXtC,IAAA,WAAA,GAAA;;AAiBqB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAG9C,QAAA,IAAA,CAAA,MAAM,GAAgC,IAAI,GAAG,EAAkB,CAAC;QAEhE,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC;AAsDvB,KAAA;AApDG,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;KACpC;AAED,IAAA,IAAW,sBAAsB,GAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,SAAS;AAC3C,cAAE,IAAI;AACN,cAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC;KAC/C;AAED,IAAA,IAAW,UAAU,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;KACvD;AAED,IAAA,IAAW,IAAI,GAAA;QACX,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC5B,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;AAED,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,UAAU,CAAC;KAC5D;AAGM,IAAA,cAAc,CAAC,IAAc,EAAA;AAChC,QAAA,OAAO,IAAI,KAAK,KAAK,GAAG,EAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAC,GAAG,IAAI,CAAC;KACnF;IAEM,OAAO,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;KAC1B;;AAGM,IAAA,aAAa,CAAC,SAAiB,EAAA;AAClC,QAAA,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;KAC1B;AAEM,IAAA,SAAS,CAAC,OAAgB,EAAA;AAC7B,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;KAC/B;IAES,gBAAgB,GAAA;AACtB,QAAA,OAAO,SAAS,CAAC;KACpB;IAGO,QAAQ,CAAC,KAAa,EAAE,YAA0B,EAAA;AACtD,QAAA,OAAO,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC;AACvC,cAAE,YAAY,CAAC,wBAAwB,CACjC,aAAa,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAC7D;cACD,KAAK,CAAC;KACf;+GAjEQ,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAIpB,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,8BAA8B,ECxC7C,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,27BAqCA,mgDDNmB,CAAC,0BAA0B,CAAC,EAAC,SAAS,EAAE,GAAG,EAAC,CAAC,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;AA0CtD,UAAA,CAAA;IADN,OAAO;AAGP,CAAA,EAAA,sBAAA,CAAA,SAAA,EAAA,gBAAA,EAAA,IAAA,CAAA,CAAA;AAoBO,UAAA,CAAA;IADP,OAAO;AAOP,CAAA,EAAA,sBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,IAAA,CAAA,CAAA;4FAjEQ,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAVlC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAGV,eAAA,EAAA,uBAAuB,CAAC,MAAM,iBAChC,CAAC,0BAA0B,CAAC,EAAC,SAAS,EAAE,GAAG,EAAC,CAAC,CAAC,EACvD,IAAA,EAAA;AACF,wBAAA,SAAS,EAAE,WAAW;AACzB,qBAAA,EAAA,QAAA,EAAA,27BAAA,EAAA,MAAA,EAAA,CAAA,qZAAA,CAAA,EAAA,CAAA;8BAOgB,SAAS,EAAA,CAAA;sBADzB,SAAS;uBAAC,8BAA8B,CAAA;gBAMlC,MAAM,EAAA,CAAA;sBADZ,KAAK;AA4BC,aAAA,CAAA,EAAA,cAAc,MAsBb,QAAQ,EAAA,EAAA,EAAA,EAAA,CAAA;;AErFpB,MAYa,mBAAmB,CAAA;+GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;gHAAnB,mBAAmB,EAAA,YAAA,EAAA,CAHb,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAPjC,YAAY;YACZ,2BAA2B;YAC3B,4BAA4B;YAC5B,sBAAsB;AACtB,YAAA,gBAAgB,4WAIV,sBAAsB,EAAAA,IAAA,CAAA,2BAAA,EAAAA,IAAA,CAAA,0BAAA,EAAAA,IAAA,CAAA,oBAAA,EAAAA,IAAA,CAAA,oBAAA,EAAAA,IAAA,CAAA,eAAA,EAAAA,IAAA,CAAA,qBAAA,EAAAA,IAAA,CAAA,iBAAA,EAAAA,IAAA,CAAA,iBAAA,EAAAA,IAAA,CAAA,gBAAA,EAAAA,IAAA,CAAA,kBAAA,EAAAA,IAAA,CAAA,mBAAA,EAAAA,IAAA,CAAA,wBAAA,EAAAA,IAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,CAAA,EAAA;AAEvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YAVxB,YAAY;YACZ,2BAA2B;YAC3B,4BAA4B;YAC5B,sBAAsB,EAAAA,IAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAOjB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAZ/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,2BAA2B;wBAC3B,4BAA4B;wBAC5B,sBAAsB;wBACtB,gBAAgB;AAChB,wBAAA,GAAG,WAAW;AACjB,qBAAA;oBACD,YAAY,EAAE,CAAC,sBAAsB,CAAC;AACtC,oBAAA,OAAO,EAAE,CAAC,sBAAsB,EAAE,GAAG,WAAW,CAAC;AACpD,iBAAA,CAAA;;;ACrBD;;AAEG;;;;"}
|
|
@@ -2,7 +2,7 @@ import { __decorate } from 'tslib';
|
|
|
2
2
|
import * as i7 from '@angular/common';
|
|
3
3
|
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
|
-
import { inject, Component, ChangeDetectionStrategy, ViewChild, Input,
|
|
5
|
+
import { inject, Component, ChangeDetectionStrategy, ViewChild, Input, Directive, NgModule } from '@angular/core';
|
|
6
6
|
import { tuiCreateToken, tuiProvideOptions, tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
7
7
|
import { TUI_COPY_TEXTS } from '@taiga-ui/kit/tokens';
|
|
8
8
|
import { AbstractTuiControl, tuiAsControl, AbstractTuiTextfieldHost } from '@taiga-ui/legacy/classes';
|
|
@@ -55,9 +55,6 @@ class TuiInputCopyComponent extends AbstractTuiControl {
|
|
|
55
55
|
onValueChange(value) {
|
|
56
56
|
this.value = value;
|
|
57
57
|
}
|
|
58
|
-
get size() {
|
|
59
|
-
return this.textfieldSize.size;
|
|
60
|
-
}
|
|
61
58
|
get hintText$() {
|
|
62
59
|
return this.copyTexts$.pipe(switchMap((texts) => this.copied$.pipe(switchMap((copied) => {
|
|
63
60
|
if (!copied) {
|
|
@@ -67,6 +64,9 @@ class TuiInputCopyComponent extends AbstractTuiControl {
|
|
|
67
64
|
return merge(of(this.successMessage || texts[1]), timer(3000).pipe(map(() => texts[0])));
|
|
68
65
|
}))));
|
|
69
66
|
}
|
|
67
|
+
get size() {
|
|
68
|
+
return this.textfieldSize.size;
|
|
69
|
+
}
|
|
70
70
|
get icon() {
|
|
71
71
|
return this.options.icon;
|
|
72
72
|
}
|
|
@@ -85,7 +85,7 @@ class TuiInputCopyComponent extends AbstractTuiControl {
|
|
|
85
85
|
return '';
|
|
86
86
|
}
|
|
87
87
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputCopyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
88
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputCopyComponent, selector: "tui-input-copy", inputs: { successMessage: "successMessage", messageDirection: "messageDirection", messageAppearance: "messageAppearance" }, host: { properties: { "attr.data-size": "
|
|
88
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputCopyComponent, selector: "tui-input-copy", inputs: { successMessage: "successMessage", messageDirection: "messageDirection", messageAppearance: "messageAppearance" }, host: { properties: { "attr.data-size": "size" } }, providers: [
|
|
89
89
|
TUI_VALUE_ACCESSOR_PROVIDER,
|
|
90
90
|
tuiAsFocusableItemAccessor(TuiInputCopyComponent),
|
|
91
91
|
tuiAsControl(TuiInputCopyComponent),
|
|
@@ -100,7 +100,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
100
100
|
TUI_VALUE_ACCESSOR_PROVIDER,
|
|
101
101
|
tuiAsFocusableItemAccessor(TuiInputCopyComponent),
|
|
102
102
|
tuiAsControl(TuiInputCopyComponent),
|
|
103
|
-
],
|
|
103
|
+
], host: {
|
|
104
|
+
'[attr.data-size]': 'size',
|
|
105
|
+
}, template: "<tui-primitive-textfield\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"!disabled ? iconContent : ''\"\n [(value)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n>\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n</tui-primitive-textfield>\n\n<ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n automation-id=\"tui-copy__icon\"\n tuiAppearance=\"icon\"\n class=\"t-icon\"\n [class.t-icon_small]=\"size === 's'\"\n [icon]=\"src.toString()\"\n [tuiAppearanceState]=\"!value ? 'disabled' : null\"\n [tuiHint]=\"hint\"\n [tuiHintAppearance]=\"messageAppearance\"\n [tuiHintDirection]=\"messageDirection\"\n (click)=\"copy()\"\n />\n</ng-template>\n\n<ng-template #hint>\n <ng-container *polymorpheusOutlet=\"hintText$ | async as text\">\n {{ text }}\n </ng-container>\n</ng-template>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.t-icon{position:relative;cursor:pointer;pointer-events:auto}.t-icon_small{border:.25rem solid transparent}.t-textfield{border-radius:inherit;text-align:inherit}\n"] }]
|
|
104
106
|
}], propDecorators: { textfield: [{
|
|
105
107
|
type: ViewChild,
|
|
106
108
|
args: [TuiPrimitiveTextfieldComponent]
|
|
@@ -110,9 +112,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
110
112
|
type: Input
|
|
111
113
|
}], messageAppearance: [{
|
|
112
114
|
type: Input
|
|
113
|
-
}], size: [{
|
|
114
|
-
type: HostBinding,
|
|
115
|
-
args: ['attr.data-size']
|
|
116
115
|
}], hintText$: [] } });
|
|
117
116
|
|
|
118
117
|
class TuiInputCopyDirective extends AbstractTuiTextfieldHost {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-legacy-components-input-copy.mjs","sources":["../../../projects/legacy/components/input-copy/input-copy.options.ts","../../../projects/legacy/components/input-copy/input-copy.component.ts","../../../projects/legacy/components/input-copy/input-copy.template.html","../../../projects/legacy/components/input-copy/input-copy.directive.ts","../../../projects/legacy/components/input-copy/input-copy.module.ts","../../../projects/legacy/components/input-copy/taiga-ui-legacy-components-input-copy.ts"],"sourcesContent":["import type {Provider} from '@angular/core';\nimport type {TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiHintDirection} from '@taiga-ui/core/directives/hint';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport interface TuiInputCopyOptions {\n readonly icon: PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>>;\n readonly messageAppearance: string;\n readonly messageDirection: TuiHintDirection;\n readonly successMessage: PolymorpheusContent;\n}\n\nexport const TUI_INPUT_COPY_DEFAULT_OPTIONS: TuiInputCopyOptions = {\n successMessage: '',\n messageDirection: 'bottom-left',\n messageAppearance: '',\n icon: () => '@tui.copy',\n};\n\nexport const TUI_INPUT_COPY_OPTIONS = tuiCreateToken(TUI_INPUT_COPY_DEFAULT_OPTIONS);\n\nexport function tuiInputCopyOptionsProvider(\n options: Partial<TuiInputCopyOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_COPY_OPTIONS,\n options,\n TUI_INPUT_COPY_DEFAULT_OPTIONS,\n );\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiHintDirection} from '@taiga-ui/core/directives/hint';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport {TUI_COPY_TEXTS} from '@taiga-ui/kit/tokens';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiPrimitiveTextfieldComponent} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TUI_TEXTFIELD_SIZE,\n TUI_VALUE_ACCESSOR_PROVIDER,\n} from '@taiga-ui/legacy/directives';\nimport type {\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/legacy/tokens';\nimport {tuiAsFocusableItemAccessor} from '@taiga-ui/legacy/tokens';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\nimport {BehaviorSubject, map, merge, of, switchMap, timer} from 'rxjs';\n\nimport type {TuiInputCopyOptions} from './input-copy.options';\nimport {TUI_INPUT_COPY_OPTIONS} from './input-copy.options';\n\n@Component({\n selector: 'tui-input-copy',\n templateUrl: './input-copy.template.html',\n styleUrls: ['./input-copy.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TUI_VALUE_ACCESSOR_PROVIDER,\n tuiAsFocusableItemAccessor(TuiInputCopyComponent),\n tuiAsControl(TuiInputCopyComponent),\n ],\n})\nexport class TuiInputCopyComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n private readonly copied$ = new BehaviorSubject<boolean>(false);\n private readonly doc = inject(DOCUMENT);\n private readonly copyTexts$ = inject(TUI_COPY_TEXTS);\n private readonly options = inject(TUI_INPUT_COPY_OPTIONS);\n private readonly textfieldSize = inject(TUI_TEXTFIELD_SIZE);\n\n @Input()\n public successMessage = this.options.successMessage;\n\n @Input()\n public messageDirection: TuiHintDirection = this.options.messageDirection;\n\n @Input()\n public messageAppearance = this.options.messageAppearance;\n\n public get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.computedDisabled || !this.textfield\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n public get focused(): boolean {\n return !!this.textfield?.focused;\n }\n\n public onValueChange(value: string): void {\n this.value = value;\n }\n\n @HostBinding('attr.data-size')\n protected get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n @tuiPure\n protected get hintText$(): Observable<PolymorpheusContent> {\n return this.copyTexts$.pipe(\n switchMap((texts) =>\n this.copied$.pipe(\n switchMap((copied) => {\n if (!copied) {\n return of(texts[0]);\n }\n\n this.copied$.next(false);\n\n return merge(\n of(this.successMessage || texts[1]),\n timer(3000).pipe(map(() => texts[0])),\n );\n }),\n ),\n ),\n );\n }\n\n protected get icon(): TuiInputCopyOptions['icon'] {\n return this.options.icon;\n }\n\n protected onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n protected copy(): void {\n if (!this.textfield?.nativeFocusableElement) {\n return;\n }\n\n this.textfield.nativeFocusableElement.select();\n this.doc.execCommand('copy');\n this.copied$.next(true);\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n}\n","<tui-primitive-textfield\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"!disabled ? iconContent : ''\"\n [(value)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n>\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n</tui-primitive-textfield>\n\n<ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n automation-id=\"tui-copy__icon\"\n tuiAppearance=\"icon\"\n class=\"t-icon\"\n [class.t-icon_small]=\"size === 's'\"\n [icon]=\"src.toString()\"\n [tuiAppearanceState]=\"!value ? 'disabled' : null\"\n [tuiHint]=\"hint\"\n [tuiHintAppearance]=\"messageAppearance\"\n [tuiHintDirection]=\"messageDirection\"\n (click)=\"copy()\"\n />\n</ng-template>\n\n<ng-template #hint>\n <ng-container *polymorpheusOutlet=\"hintText$ | async as text\">\n {{ text }}\n </ng-container>\n</ng-template>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost} from '@taiga-ui/legacy/classes';\nimport {tuiAsTextfieldHost} from '@taiga-ui/legacy/tokens';\n\nimport type {TuiInputCopyComponent} from './input-copy.component';\n\n@Directive({\n selector: 'tui-input-copy',\n providers: [tuiAsTextfieldHost(TuiInputCopyDirective)],\n})\nexport class TuiInputCopyDirective extends AbstractTuiTextfieldHost<TuiInputCopyComponent> {\n public onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiAppearance} from '@taiga-ui/core/directives/appearance';\nimport {TuiHint} from '@taiga-ui/core/directives/hint';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TuiTextfieldControllerModule} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputCopyComponent} from './input-copy.component';\nimport {TuiInputCopyDirective} from './input-copy.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiAppearance,\n TuiIcon,\n ...TuiHint,\n ],\n declarations: [TuiInputCopyComponent, TuiInputCopyDirective],\n exports: [\n TuiInputCopyComponent,\n TuiInputCopyDirective,\n TuiTextfieldComponent,\n ...TuiHint,\n ],\n})\nexport class TuiInputCopyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i6","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-legacy-components-input-copy.mjs","sources":["../../../projects/legacy/components/input-copy/input-copy.options.ts","../../../projects/legacy/components/input-copy/input-copy.component.ts","../../../projects/legacy/components/input-copy/input-copy.template.html","../../../projects/legacy/components/input-copy/input-copy.directive.ts","../../../projects/legacy/components/input-copy/input-copy.module.ts","../../../projects/legacy/components/input-copy/taiga-ui-legacy-components-input-copy.ts"],"sourcesContent":["import type {Provider} from '@angular/core';\nimport type {TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiCreateToken, tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiHintDirection} from '@taiga-ui/core/directives/hint';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport interface TuiInputCopyOptions {\n readonly icon: PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>>;\n readonly messageAppearance: string;\n readonly messageDirection: TuiHintDirection;\n readonly successMessage: PolymorpheusContent;\n}\n\nexport const TUI_INPUT_COPY_DEFAULT_OPTIONS: TuiInputCopyOptions = {\n successMessage: '',\n messageDirection: 'bottom-left',\n messageAppearance: '',\n icon: () => '@tui.copy',\n};\n\nexport const TUI_INPUT_COPY_OPTIONS = tuiCreateToken(TUI_INPUT_COPY_DEFAULT_OPTIONS);\n\nexport function tuiInputCopyOptionsProvider(\n options: Partial<TuiInputCopyOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_COPY_OPTIONS,\n options,\n TUI_INPUT_COPY_DEFAULT_OPTIONS,\n );\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiHintDirection} from '@taiga-ui/core/directives/hint';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport {TUI_COPY_TEXTS} from '@taiga-ui/kit/tokens';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiPrimitiveTextfieldComponent} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TUI_TEXTFIELD_SIZE,\n TUI_VALUE_ACCESSOR_PROVIDER,\n} from '@taiga-ui/legacy/directives';\nimport type {\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/legacy/tokens';\nimport {tuiAsFocusableItemAccessor} from '@taiga-ui/legacy/tokens';\nimport type {PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport type {Observable} from 'rxjs';\nimport {BehaviorSubject, map, merge, of, switchMap, timer} from 'rxjs';\n\nimport type {TuiInputCopyOptions} from './input-copy.options';\nimport {TUI_INPUT_COPY_OPTIONS} from './input-copy.options';\n\n@Component({\n selector: 'tui-input-copy',\n templateUrl: './input-copy.template.html',\n styleUrls: ['./input-copy.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TUI_VALUE_ACCESSOR_PROVIDER,\n tuiAsFocusableItemAccessor(TuiInputCopyComponent),\n tuiAsControl(TuiInputCopyComponent),\n ],\n host: {\n '[attr.data-size]': 'size',\n },\n})\nexport class TuiInputCopyComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n private readonly copied$ = new BehaviorSubject<boolean>(false);\n private readonly doc = inject(DOCUMENT);\n private readonly copyTexts$ = inject(TUI_COPY_TEXTS);\n private readonly options = inject(TUI_INPUT_COPY_OPTIONS);\n private readonly textfieldSize = inject(TUI_TEXTFIELD_SIZE);\n\n @Input()\n public successMessage = this.options.successMessage;\n\n @Input()\n public messageDirection: TuiHintDirection = this.options.messageDirection;\n\n @Input()\n public messageAppearance = this.options.messageAppearance;\n\n public get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.computedDisabled || !this.textfield\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n public get focused(): boolean {\n return !!this.textfield?.focused;\n }\n\n public onValueChange(value: string): void {\n this.value = value;\n }\n\n @tuiPure\n protected get hintText$(): Observable<PolymorpheusContent> {\n return this.copyTexts$.pipe(\n switchMap((texts) =>\n this.copied$.pipe(\n switchMap((copied) => {\n if (!copied) {\n return of(texts[0]);\n }\n\n this.copied$.next(false);\n\n return merge(\n of(this.successMessage || texts[1]),\n timer(3000).pipe(map(() => texts[0])),\n );\n }),\n ),\n ),\n );\n }\n\n protected get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n protected get icon(): TuiInputCopyOptions['icon'] {\n return this.options.icon;\n }\n\n protected onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n protected copy(): void {\n if (!this.textfield?.nativeFocusableElement) {\n return;\n }\n\n this.textfield.nativeFocusableElement.select();\n this.doc.execCommand('copy');\n this.copied$.next(true);\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n}\n","<tui-primitive-textfield\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"!disabled ? iconContent : ''\"\n [(value)]=\"value\"\n (focusedChange)=\"onFocused($event)\"\n>\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n</tui-primitive-textfield>\n\n<ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n automation-id=\"tui-copy__icon\"\n tuiAppearance=\"icon\"\n class=\"t-icon\"\n [class.t-icon_small]=\"size === 's'\"\n [icon]=\"src.toString()\"\n [tuiAppearanceState]=\"!value ? 'disabled' : null\"\n [tuiHint]=\"hint\"\n [tuiHintAppearance]=\"messageAppearance\"\n [tuiHintDirection]=\"messageDirection\"\n (click)=\"copy()\"\n />\n</ng-template>\n\n<ng-template #hint>\n <ng-container *polymorpheusOutlet=\"hintText$ | async as text\">\n {{ text }}\n </ng-container>\n</ng-template>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost} from '@taiga-ui/legacy/classes';\nimport {tuiAsTextfieldHost} from '@taiga-ui/legacy/tokens';\n\nimport type {TuiInputCopyComponent} from './input-copy.component';\n\n@Directive({\n selector: 'tui-input-copy',\n providers: [tuiAsTextfieldHost(TuiInputCopyDirective)],\n})\nexport class TuiInputCopyDirective extends AbstractTuiTextfieldHost<TuiInputCopyComponent> {\n public onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiAppearance} from '@taiga-ui/core/directives/appearance';\nimport {TuiHint} from '@taiga-ui/core/directives/hint';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TuiTextfieldControllerModule} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputCopyComponent} from './input-copy.component';\nimport {TuiInputCopyDirective} from './input-copy.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiAppearance,\n TuiIcon,\n ...TuiHint,\n ],\n declarations: [TuiInputCopyComponent, TuiInputCopyDirective],\n exports: [\n TuiInputCopyComponent,\n TuiInputCopyDirective,\n TuiTextfieldComponent,\n ...TuiHint,\n ],\n})\nexport class TuiInputCopyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i6","i1"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, Component, ChangeDetectionStrategy, ViewChild, Input,
|
|
2
|
+
import { inject, Component, ChangeDetectionStrategy, ViewChild, Input, NgModule } from '@angular/core';
|
|
3
3
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
4
4
|
import { maskitoDateOptionsGenerator } from '@maskito/kit';
|
|
5
5
|
import { tuiAsControl } from '@taiga-ui/cdk/classes';
|
|
@@ -164,13 +164,13 @@ class TuiInputDateMultiComponent extends AbstractTuiMultipleControl {
|
|
|
164
164
|
this.updateFocused(focused);
|
|
165
165
|
}
|
|
166
166
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputDateMultiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
167
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputDateMultiComponent, selector: "tui-input-date[multiple]", inputs: { min: "min", max: "max", disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", defaultActiveYearMonth: "defaultActiveYearMonth", inputHidden: "inputHidden", editable: "editable", search: "search", placeholder: "placeholder", rows: "rows", tagValidator: "tagValidator" }, host: { listeners: { "click": "onClick()" }, properties: { "class._editable": "
|
|
167
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputDateMultiComponent, selector: "tui-input-date[multiple]", inputs: { min: "min", max: "max", disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", defaultActiveYearMonth: "defaultActiveYearMonth", inputHidden: "inputHidden", editable: "editable", search: "search", placeholder: "placeholder", rows: "rows", tagValidator: "tagValidator" }, host: { listeners: { "click": "onClick()" }, properties: { "class._editable": "editable", "attr.data-size": "size" } }, providers: [
|
|
168
168
|
tuiAsFocusableItemAccessor(TuiInputDateMultiComponent),
|
|
169
169
|
tuiAsControl(TuiInputDateMultiComponent),
|
|
170
170
|
tuiAsControl$1(TuiInputDateMultiComponent),
|
|
171
171
|
tuiDateStreamWithTransformer(TUI_DATE_VALUE_TRANSFORMER),
|
|
172
172
|
TUI_MOBILE_CALENDAR_PROVIDER,
|
|
173
|
-
], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }, { propertyName: "inputTag", first: true, predicate: TuiInputTagComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownEnabled]=\"interactive\"\n [tuiDropdownOpen]=\"open && interactive\"\n (tuiDropdownOpenChange)=\"onOpenChange($event)\"\n>\n <tui-input-tag\n #inputTag\n class=\"t-input\"\n [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"editable\"\n [inputHidden]=\"inputHidden\"\n [maskito]=\"maskitoOptions\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"value | tuiMapper: valueMapper\"\n [placeholder]=\"placeholder\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n [removable]=\"!nativeDropdownMode\"\n [rows]=\"rows\"\n [tagValidator]=\"tagValidator | tuiMapper: disabledItemHandlerWrapper\"\n [tuiTextfieldFiller]=\"(filler$ | async) || ''\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n (keydown.enter)=\"onEnter(inputTag.search || '')\"\n (ngModelChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n </tui-input-tag>\n\n <ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [class.t-icon_small]=\"size === 's'\"\n [class.t-icon]=\"!computedDisabled\"\n [icon]=\"src.toString()\"\n (click)=\"onIconClick()\"\n />\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"computedMax\"\n [min]=\"computedMin\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n (mousedown.silent.prevent)=\"(0)\"\n />\n <div\n class=\"t-button\"\n (mousedown.silent.prevent)=\"(0)\"\n >\n <button\n tuiLink\n type=\"button\"\n (click)=\"done()\"\n >\n {{ doneWord$ | async }}\n </button>\n </div>\n </ng-template>\n</div>\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-icon{pointer-events:auto}.t-icon_small{border:.25rem solid transparent}.t-button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-border-normal)}.t-button button{flex:1;text-align:center}.t-native-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:auto;font-size:2rem}\n"], dependencies: [{ kind: "directive", type: i1.MaskitoDirective, selector: "[maskito]", inputs: ["maskito", "maskitoElement"] }, { kind: "directive", type: i2.PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i3.TuiCalendar, selector: "tui-calendar", inputs: ["month", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler", "value", "initialView"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }, { kind: "directive", type: i4.TuiLink, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo"] }, { kind: "component", type: i5.TuiInputTagComponent, selector: "tui-input-tag", inputs: ["separator", "search", "editable", "tagValidator", "rows", "inputHidden", "uniqueTags", "maxLength", "placeholder", "removable", "pseudoOpen", "disabledItemHandler", "pseudoFocused"], outputs: ["searchChange"] }, { kind: "directive", type: i1$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i1$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { kind: "directive", type: i8.TuiTextfieldFillerDirective, selector: "[tuiTextfieldFiller]", inputs: ["tuiTextfieldFiller"] }, { kind: "directive", type: i8.TuiLegacyDropdownOpenMonitorDirective, selector: "[tuiDropdownOpenMonitor]" }, { kind: "component", type: i9.TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }, { kind: "directive", type: i10.TuiAppearance, selector: "[tuiAppearance]", inputs: ["tuiAppearance", "tuiAppearanceState", "tuiAppearanceFocus"] }, { kind: "pipe", type: i11.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.TuiMapperPipe, name: "tuiMapper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
173
|
+
], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }, { propertyName: "inputTag", first: true, predicate: TuiInputTagComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownEnabled]=\"interactive\"\n [tuiDropdownOpen]=\"open && interactive\"\n (tuiDropdownOpenChange)=\"onOpenChange($event)\"\n>\n <tui-input-tag\n #inputTag\n class=\"t-input\"\n [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"editable\"\n [inputHidden]=\"inputHidden\"\n [maskito]=\"maskitoOptions\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"value | tuiMapper: valueMapper\"\n [ngModelOptions]=\"{standalone: true}\"\n [placeholder]=\"placeholder\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n [removable]=\"!nativeDropdownMode\"\n [rows]=\"rows\"\n [tagValidator]=\"tagValidator | tuiMapper: disabledItemHandlerWrapper\"\n [tuiTextfieldFiller]=\"(filler$ | async) || ''\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n (keydown.enter)=\"onEnter(inputTag.search || '')\"\n (ngModelChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n </tui-input-tag>\n\n <ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [class.t-icon_small]=\"size === 's'\"\n [class.t-icon]=\"!computedDisabled\"\n [icon]=\"src.toString()\"\n (click)=\"onIconClick()\"\n />\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"computedMax\"\n [min]=\"computedMin\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n (mousedown.silent.prevent)=\"(0)\"\n />\n <div\n class=\"t-button\"\n (mousedown.silent.prevent)=\"(0)\"\n >\n <button\n tuiLink\n type=\"button\"\n (click)=\"done()\"\n >\n {{ doneWord$ | async }}\n </button>\n </div>\n </ng-template>\n</div>\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-icon{pointer-events:auto}.t-icon_small{border:.25rem solid transparent}.t-button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-border-normal)}.t-button button{flex:1;text-align:center}.t-native-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:auto;font-size:2rem}\n"], dependencies: [{ kind: "directive", type: i1.MaskitoDirective, selector: "[maskito]", inputs: ["maskito", "maskitoElement"] }, { kind: "directive", type: i2.PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i3.TuiCalendar, selector: "tui-calendar", inputs: ["month", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler", "value", "initialView"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }, { kind: "directive", type: i4.TuiLink, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo"] }, { kind: "component", type: i5.TuiInputTagComponent, selector: "tui-input-tag", inputs: ["separator", "search", "editable", "tagValidator", "rows", "inputHidden", "uniqueTags", "maxLength", "placeholder", "removable", "pseudoOpen", "disabledItemHandler", "pseudoFocused"], outputs: ["searchChange"] }, { kind: "directive", type: i1$1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i1$1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { kind: "directive", type: i8.TuiTextfieldFillerDirective, selector: "[tuiTextfieldFiller]", inputs: ["tuiTextfieldFiller"] }, { kind: "directive", type: i8.TuiLegacyDropdownOpenMonitorDirective, selector: "[tuiDropdownOpenMonitor]" }, { kind: "component", type: i9.TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }, { kind: "directive", type: i10.TuiAppearance, selector: "[tuiAppearance]", inputs: ["tuiAppearance", "tuiAppearanceState", "tuiAppearanceFocus"] }, { kind: "pipe", type: i11.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.TuiMapperPipe, name: "tuiMapper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
174
174
|
}
|
|
175
175
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputDateMultiComponent, decorators: [{
|
|
176
176
|
type: Component,
|
|
@@ -180,7 +180,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
180
180
|
tuiAsControl$1(TuiInputDateMultiComponent),
|
|
181
181
|
tuiDateStreamWithTransformer(TUI_DATE_VALUE_TRANSFORMER),
|
|
182
182
|
TUI_MOBILE_CALENDAR_PROVIDER,
|
|
183
|
-
],
|
|
183
|
+
], host: {
|
|
184
|
+
'[class._editable]': 'editable',
|
|
185
|
+
'[attr.data-size]': 'size',
|
|
186
|
+
'(click)': 'onClick()',
|
|
187
|
+
}, template: "<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownEnabled]=\"interactive\"\n [tuiDropdownOpen]=\"open && interactive\"\n (tuiDropdownOpenChange)=\"onOpenChange($event)\"\n>\n <tui-input-tag\n #inputTag\n class=\"t-input\"\n [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"editable\"\n [inputHidden]=\"inputHidden\"\n [maskito]=\"maskitoOptions\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"value | tuiMapper: valueMapper\"\n [ngModelOptions]=\"{standalone: true}\"\n [placeholder]=\"placeholder\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n [removable]=\"!nativeDropdownMode\"\n [rows]=\"rows\"\n [tagValidator]=\"tagValidator | tuiMapper: disabledItemHandlerWrapper\"\n [tuiTextfieldFiller]=\"(filler$ | async) || ''\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n (keydown.enter)=\"onEnter(inputTag.search || '')\"\n (ngModelChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n </tui-input-tag>\n\n <ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [class.t-icon_small]=\"size === 's'\"\n [class.t-icon]=\"!computedDisabled\"\n [icon]=\"src.toString()\"\n (click)=\"onIconClick()\"\n />\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"computedMax\"\n [min]=\"computedMin\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n (mousedown.silent.prevent)=\"(0)\"\n />\n <div\n class=\"t-button\"\n (mousedown.silent.prevent)=\"(0)\"\n >\n <button\n tuiLink\n type=\"button\"\n (click)=\"done()\"\n >\n {{ doneWord$ | async }}\n </button>\n </div>\n </ng-template>\n</div>\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-icon{pointer-events:auto}.t-icon_small{border:.25rem solid transparent}.t-button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-border-normal)}.t-button button{flex:1;text-align:center}.t-native-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:auto;font-size:2rem}\n"] }]
|
|
184
188
|
}], propDecorators: { textfield: [{
|
|
185
189
|
type: ViewChild,
|
|
186
190
|
args: [TuiPrimitiveTextfieldComponent]
|
|
@@ -201,9 +205,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
201
205
|
type: Input
|
|
202
206
|
}], editable: [{
|
|
203
207
|
type: Input
|
|
204
|
-
}, {
|
|
205
|
-
type: HostBinding,
|
|
206
|
-
args: ['class._editable']
|
|
207
208
|
}], search: [{
|
|
208
209
|
type: Input
|
|
209
210
|
}], placeholder: [{
|
|
@@ -212,12 +213,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
212
213
|
type: Input
|
|
213
214
|
}], tagValidator: [{
|
|
214
215
|
type: Input
|
|
215
|
-
}], size: [{
|
|
216
|
-
type: HostBinding,
|
|
217
|
-
args: ['attr.data-size']
|
|
218
|
-
}], onClick: [{
|
|
219
|
-
type: HostListener,
|
|
220
|
-
args: ['click']
|
|
221
216
|
}] } });
|
|
222
217
|
|
|
223
218
|
class TuiInputDateMultiModule {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-legacy-components-input-date-multi.mjs","sources":["../../../projects/legacy/components/input-date-multi/input-date-multi.component.ts","../../../projects/legacy/components/input-date-multi/input-date-multi.template.html","../../../projects/legacy/components/input-date-multi/input-date-multi.module.ts","../../../projects/legacy/components/input-date-multi/taiga-ui-legacy-components-input-date-multi.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n HostListener,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport type {MaskitoOptions} from '@maskito/core';\nimport {maskitoDateOptionsGenerator} from '@maskito/kit';\nimport type {TuiValueTransformer} from '@taiga-ui/cdk/classes';\nimport {tuiAsControl} from '@taiga-ui/cdk/classes';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiDateClamp, TuiDay, TuiMonth} from '@taiga-ui/cdk/date-time';\nimport {tuiWatch} from '@taiga-ui/cdk/observables';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport type {TuiBooleanHandler, TuiMapper} from '@taiga-ui/cdk/types';\nimport {changeDateSeparator, tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiMarkerHandler} from '@taiga-ui/core/components/calendar';\nimport {TUI_DATE_FORMAT, TUI_DEFAULT_DATE_FORMAT} from '@taiga-ui/core/tokens';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {TuiInputDateOptions} from '@taiga-ui/kit/tokens';\nimport {\n TUI_DATE_TEXTS,\n TUI_DATE_VALUE_TRANSFORMER,\n TUI_DONE_WORD,\n TUI_INPUT_DATE_OPTIONS,\n TUI_MOBILE_CALENDAR,\n TUI_MOBILE_CALENDAR_PROVIDER,\n tuiDateStreamWithTransformer,\n} from '@taiga-ui/kit/tokens';\nimport {tuiToggleDay} from '@taiga-ui/kit/utils';\nimport {\n AbstractTuiMultipleControl,\n tuiAsControl as tuiAsLegacyControl,\n TuiStringifiableItem,\n} from '@taiga-ui/legacy/classes';\nimport {TuiInputTagComponent} from '@taiga-ui/legacy/components/input-tag';\nimport {TuiPrimitiveTextfieldComponent} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TUI_TEXTFIELD_SIZE} from '@taiga-ui/legacy/directives';\nimport type {TuiFocusableElementAccessor} from '@taiga-ui/legacy/tokens';\nimport {tuiAsFocusableItemAccessor} from '@taiga-ui/legacy/tokens';\nimport type {Observable} from 'rxjs';\nimport {map} from 'rxjs';\n\n@Component({\n selector: 'tui-input-date[multiple]',\n templateUrl: './input-date-multi.template.html',\n styleUrls: ['../input-date/input-date.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputDateMultiComponent),\n tuiAsControl(TuiInputDateMultiComponent as any),\n tuiAsLegacyControl(TuiInputDateMultiComponent),\n tuiDateStreamWithTransformer(TUI_DATE_VALUE_TRANSFORMER),\n TUI_MOBILE_CALENDAR_PROVIDER,\n ],\n})\nexport class TuiInputDateMultiComponent\n extends AbstractTuiMultipleControl<TuiDay>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @ViewChild(TuiInputTagComponent)\n private readonly inputTag?: TuiInputTagComponent;\n\n private month: TuiMonth | null = null;\n private readonly mobileCalendar = inject(TUI_MOBILE_CALENDAR, {optional: true});\n private readonly options = inject(TUI_INPUT_DATE_OPTIONS);\n private readonly textfieldSize = inject(TUI_TEXTFIELD_SIZE);\n\n protected readonly dateTexts$ = inject(TUI_DATE_TEXTS);\n protected override readonly valueTransformer = inject<\n TuiValueTransformer<readonly TuiDay[]>\n >(TUI_DATE_VALUE_TRANSFORMER, {optional: true});\n\n protected open = false;\n\n protected dateFormat = TUI_DEFAULT_DATE_FORMAT;\n protected readonly isMobile = inject(TUI_IS_MOBILE);\n protected readonly doneWord$ = inject(TUI_DONE_WORD);\n protected readonly filler$: Observable<string> = this.dateTexts$.pipe(\n map((dateTexts) =>\n changeDateSeparator(\n dateTexts[this.dateFormat.mode],\n this.dateFormat.separator,\n ),\n ),\n );\n\n protected readonly dateFormat$ = inject(TUI_DATE_FORMAT)\n .pipe(tuiWatch(this.cdr), takeUntilDestroyed())\n .subscribe((format) => {\n this.dateFormat = format;\n });\n\n @Input()\n public min: TuiDay | null = this.options.min;\n\n @Input()\n public max: TuiDay | null = this.options.max;\n\n @Input()\n public disabledItemHandler: TuiBooleanHandler<TuiDay> = TUI_FALSE_HANDLER;\n\n @Input()\n public markerHandler: TuiMarkerHandler | null = null;\n\n @Input()\n public defaultActiveYearMonth = TuiMonth.currentLocal();\n\n @Input()\n public inputHidden = false;\n\n @Input()\n @HostBinding('class._editable')\n public editable = true;\n\n @Input()\n public search: string | null = '';\n\n @Input()\n public placeholder = '';\n\n @Input()\n public rows = 1;\n\n public readonly maskitoOptions: MaskitoOptions = maskitoDateOptionsGenerator({\n mode: 'dd/mm/yyyy',\n separator: '.',\n min: this.min?.toLocalNativeDate(),\n max: this.max?.toLocalNativeDate(),\n });\n\n public get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield?.nativeFocusableElement || null;\n }\n\n public get focused(): boolean {\n return !!this.textfield?.focused;\n }\n\n @Input()\n public tagValidator: TuiBooleanHandler<string> = (tag: TuiDay | string) => {\n const {year, month, day} = tuiIsString(tag)\n ? TuiDay.parseRawDateString(tag)\n : tag;\n const date = new TuiDay(year, month, day);\n\n return (\n (TuiDay.isValidDay(year, month, day) &&\n this.min?.dayBefore(date) &&\n this.max?.dayAfter(date)) ??\n false\n );\n };\n\n public override setDisabledState(): void {\n super.setDisabledState();\n this.open = false;\n }\n\n @HostBinding('attr.data-size')\n protected get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n protected get nativeDropdownMode(): boolean {\n return this.isMobile && !this.editable;\n }\n\n protected get computedMin(): TuiDay {\n return this.min ?? this.options.min;\n }\n\n protected get computedMax(): TuiDay {\n return this.max ?? this.options.max;\n }\n\n protected get computedMobile(): boolean {\n return this.isMobile && !!this.mobileCalendar;\n }\n\n protected get calendarIcon(): TuiInputDateOptions['icon'] {\n return this.options.icon;\n }\n\n protected get computedActiveYearMonth(): TuiMonth {\n return (\n this.month ||\n this.value[this.value.length - 1] ||\n tuiDateClamp(this.defaultActiveYearMonth, this.computedMin, this.computedMax)\n );\n }\n\n @HostListener('click')\n protected onClick(): void {\n if (!this.isMobile && this.interactive) {\n this.open = !this.open;\n }\n }\n\n protected onIconClick(): void {\n if (this.isMobile && this.interactive) {\n this.open = true;\n }\n }\n\n protected readonly disabledItemHandlerWrapper: TuiMapper<\n [TuiBooleanHandler<string> | TuiBooleanHandler<TuiDay>],\n TuiBooleanHandler<TuiStringifiableItem<any> | string>\n > = (handler) => (stringifiable) =>\n tuiIsString(stringifiable) || handler(stringifiable.item);\n\n protected readonly valueMapper: TuiMapper<\n [readonly TuiDay[]],\n ReadonlyArray<TuiStringifiableItem<TuiDay>>\n > = (value) =>\n value.map((item) => new TuiStringifiableItem(item, (item) => String(item)));\n\n protected onEnter(search: string): void {\n if (!this.tagValidator(search)) {\n return;\n }\n\n this.value = tuiToggleDay(this.value, TuiDay.normalizeParse(search));\n\n if (this.inputTag) {\n this.inputTag.search = '';\n }\n\n this.done();\n }\n\n protected onValueChange(value: ReadonlyArray<TuiStringifiableItem<TuiDay>>): void {\n this.control?.updateValueAndValidity({emitEvent: false});\n\n if (!value.length && !this.mobileCalendar) {\n this.onOpenChange(true);\n }\n\n this.value = value.map(({item}) => item);\n }\n\n protected onDayClick(value: TuiDay): void {\n this.value = tuiToggleDay(this.value, value);\n }\n\n protected done(): void {\n this.open = false;\n }\n\n protected onMonthChange(month: TuiMonth): void {\n this.month = month;\n }\n\n protected onOpenChange(open: boolean): void {\n this.open = open;\n }\n\n protected onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n}\n","<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownEnabled]=\"interactive\"\n [tuiDropdownOpen]=\"open && interactive\"\n (tuiDropdownOpenChange)=\"onOpenChange($event)\"\n>\n <tui-input-tag\n #inputTag\n class=\"t-input\"\n [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"editable\"\n [inputHidden]=\"inputHidden\"\n [maskito]=\"maskitoOptions\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"value | tuiMapper: valueMapper\"\n [placeholder]=\"placeholder\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n [removable]=\"!nativeDropdownMode\"\n [rows]=\"rows\"\n [tagValidator]=\"tagValidator | tuiMapper: disabledItemHandlerWrapper\"\n [tuiTextfieldFiller]=\"(filler$ | async) || ''\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n (keydown.enter)=\"onEnter(inputTag.search || '')\"\n (ngModelChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n </tui-input-tag>\n\n <ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [class.t-icon_small]=\"size === 's'\"\n [class.t-icon]=\"!computedDisabled\"\n [icon]=\"src.toString()\"\n (click)=\"onIconClick()\"\n />\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"computedMax\"\n [min]=\"computedMin\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n (mousedown.silent.prevent)=\"(0)\"\n />\n <div\n class=\"t-button\"\n (mousedown.silent.prevent)=\"(0)\"\n >\n <button\n tuiLink\n type=\"button\"\n (click)=\"done()\"\n >\n {{ doneWord$ | async }}\n </button>\n </div>\n </ng-template>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {MaskitoDirective} from '@maskito/angular';\nimport {TuiMapperPipe} from '@taiga-ui/cdk/pipes/mapper';\nimport {TuiCalendar} from '@taiga-ui/core/components/calendar';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiLink} from '@taiga-ui/core/components/link';\nimport {TuiAppearance} from '@taiga-ui/core/directives/appearance';\nimport {TuiDropdown} from '@taiga-ui/core/directives/dropdown';\nimport {TuiInputTagModule} from '@taiga-ui/legacy/components/input-tag';\nimport {TuiPrimitiveTextfieldModule} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TuiLegacyDropdownOpenMonitorDirective,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputDateMultiComponent} from './input-date-multi.component';\n\n@NgModule({\n imports: [\n CommonModule,\n MaskitoDirective,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiCalendar,\n TuiLink,\n TuiInputTagModule,\n FormsModule,\n TuiMapperPipe,\n TuiTextfieldControllerModule,\n TuiPrimitiveTextfieldModule,\n TuiLegacyDropdownOpenMonitorDirective,\n TuiIcon,\n TuiAppearance,\n ...TuiDropdown,\n ],\n declarations: [TuiInputDateMultiComponent],\n exports: [TuiInputDateMultiComponent, ...TuiDropdown],\n})\nexport class TuiInputDateMultiModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["tuiAsLegacyControl","i6","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-legacy-components-input-date-multi.mjs","sources":["../../../projects/legacy/components/input-date-multi/input-date-multi.component.ts","../../../projects/legacy/components/input-date-multi/input-date-multi.template.html","../../../projects/legacy/components/input-date-multi/input-date-multi.module.ts","../../../projects/legacy/components/input-date-multi/taiga-ui-legacy-components-input-date-multi.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport type {MaskitoOptions} from '@maskito/core';\nimport {maskitoDateOptionsGenerator} from '@maskito/kit';\nimport type {TuiValueTransformer} from '@taiga-ui/cdk/classes';\nimport {tuiAsControl} from '@taiga-ui/cdk/classes';\nimport {TUI_FALSE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiDateClamp, TuiDay, TuiMonth} from '@taiga-ui/cdk/date-time';\nimport {tuiWatch} from '@taiga-ui/cdk/observables';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport type {TuiBooleanHandler, TuiMapper} from '@taiga-ui/cdk/types';\nimport {changeDateSeparator, tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport type {TuiMarkerHandler} from '@taiga-ui/core/components/calendar';\nimport {TUI_DATE_FORMAT, TUI_DEFAULT_DATE_FORMAT} from '@taiga-ui/core/tokens';\nimport type {TuiSizeL, TuiSizeS} from '@taiga-ui/core/types';\nimport type {TuiInputDateOptions} from '@taiga-ui/kit/tokens';\nimport {\n TUI_DATE_TEXTS,\n TUI_DATE_VALUE_TRANSFORMER,\n TUI_DONE_WORD,\n TUI_INPUT_DATE_OPTIONS,\n TUI_MOBILE_CALENDAR,\n TUI_MOBILE_CALENDAR_PROVIDER,\n tuiDateStreamWithTransformer,\n} from '@taiga-ui/kit/tokens';\nimport {tuiToggleDay} from '@taiga-ui/kit/utils';\nimport {\n AbstractTuiMultipleControl,\n tuiAsControl as tuiAsLegacyControl,\n TuiStringifiableItem,\n} from '@taiga-ui/legacy/classes';\nimport {TuiInputTagComponent} from '@taiga-ui/legacy/components/input-tag';\nimport {TuiPrimitiveTextfieldComponent} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TUI_TEXTFIELD_SIZE} from '@taiga-ui/legacy/directives';\nimport type {TuiFocusableElementAccessor} from '@taiga-ui/legacy/tokens';\nimport {tuiAsFocusableItemAccessor} from '@taiga-ui/legacy/tokens';\nimport type {Observable} from 'rxjs';\nimport {map} from 'rxjs';\n\n@Component({\n selector: 'tui-input-date[multiple]',\n templateUrl: './input-date-multi.template.html',\n styleUrls: ['../input-date/input-date.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputDateMultiComponent),\n tuiAsControl(TuiInputDateMultiComponent as any),\n tuiAsLegacyControl(TuiInputDateMultiComponent),\n tuiDateStreamWithTransformer(TUI_DATE_VALUE_TRANSFORMER),\n TUI_MOBILE_CALENDAR_PROVIDER,\n ],\n host: {\n '[class._editable]': 'editable',\n '[attr.data-size]': 'size',\n '(click)': 'onClick()',\n },\n})\nexport class TuiInputDateMultiComponent\n extends AbstractTuiMultipleControl<TuiDay>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @ViewChild(TuiInputTagComponent)\n private readonly inputTag?: TuiInputTagComponent;\n\n private month: TuiMonth | null = null;\n private readonly mobileCalendar = inject(TUI_MOBILE_CALENDAR, {optional: true});\n private readonly options = inject(TUI_INPUT_DATE_OPTIONS);\n private readonly textfieldSize = inject(TUI_TEXTFIELD_SIZE);\n\n protected readonly dateTexts$ = inject(TUI_DATE_TEXTS);\n protected override readonly valueTransformer = inject<\n TuiValueTransformer<readonly TuiDay[]>\n >(TUI_DATE_VALUE_TRANSFORMER, {optional: true});\n\n protected open = false;\n\n protected dateFormat = TUI_DEFAULT_DATE_FORMAT;\n protected readonly isMobile = inject(TUI_IS_MOBILE);\n protected readonly doneWord$ = inject(TUI_DONE_WORD);\n protected readonly filler$: Observable<string> = this.dateTexts$.pipe(\n map((dateTexts) =>\n changeDateSeparator(\n dateTexts[this.dateFormat.mode],\n this.dateFormat.separator,\n ),\n ),\n );\n\n protected readonly dateFormat$ = inject(TUI_DATE_FORMAT)\n .pipe(tuiWatch(this.cdr), takeUntilDestroyed())\n .subscribe((format) => {\n this.dateFormat = format;\n });\n\n @Input()\n public min: TuiDay | null = this.options.min;\n\n @Input()\n public max: TuiDay | null = this.options.max;\n\n @Input()\n public disabledItemHandler: TuiBooleanHandler<TuiDay> = TUI_FALSE_HANDLER;\n\n @Input()\n public markerHandler: TuiMarkerHandler | null = null;\n\n @Input()\n public defaultActiveYearMonth = TuiMonth.currentLocal();\n\n @Input()\n public inputHidden = false;\n\n @Input()\n public editable = true;\n\n @Input()\n public search: string | null = '';\n\n @Input()\n public placeholder = '';\n\n @Input()\n public rows = 1;\n\n public readonly maskitoOptions: MaskitoOptions = maskitoDateOptionsGenerator({\n mode: 'dd/mm/yyyy',\n separator: '.',\n min: this.min?.toLocalNativeDate(),\n max: this.max?.toLocalNativeDate(),\n });\n\n public get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield?.nativeFocusableElement || null;\n }\n\n public get focused(): boolean {\n return !!this.textfield?.focused;\n }\n\n @Input()\n public tagValidator: TuiBooleanHandler<string> = (tag: TuiDay | string) => {\n const {year, month, day} = tuiIsString(tag)\n ? TuiDay.parseRawDateString(tag)\n : tag;\n const date = new TuiDay(year, month, day);\n\n return (\n (TuiDay.isValidDay(year, month, day) &&\n this.min?.dayBefore(date) &&\n this.max?.dayAfter(date)) ??\n false\n );\n };\n\n public override setDisabledState(): void {\n super.setDisabledState();\n this.open = false;\n }\n\n protected get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n protected get nativeDropdownMode(): boolean {\n return this.isMobile && !this.editable;\n }\n\n protected get computedMin(): TuiDay {\n return this.min ?? this.options.min;\n }\n\n protected get computedMax(): TuiDay {\n return this.max ?? this.options.max;\n }\n\n protected get computedMobile(): boolean {\n return this.isMobile && !!this.mobileCalendar;\n }\n\n protected get calendarIcon(): TuiInputDateOptions['icon'] {\n return this.options.icon;\n }\n\n protected get computedActiveYearMonth(): TuiMonth {\n return (\n this.month ||\n this.value[this.value.length - 1] ||\n tuiDateClamp(this.defaultActiveYearMonth, this.computedMin, this.computedMax)\n );\n }\n\n protected onClick(): void {\n if (!this.isMobile && this.interactive) {\n this.open = !this.open;\n }\n }\n\n protected onIconClick(): void {\n if (this.isMobile && this.interactive) {\n this.open = true;\n }\n }\n\n protected readonly disabledItemHandlerWrapper: TuiMapper<\n [TuiBooleanHandler<string> | TuiBooleanHandler<TuiDay>],\n TuiBooleanHandler<TuiStringifiableItem<any> | string>\n > = (handler) => (stringifiable) =>\n tuiIsString(stringifiable) || handler(stringifiable.item);\n\n protected readonly valueMapper: TuiMapper<\n [readonly TuiDay[]],\n ReadonlyArray<TuiStringifiableItem<TuiDay>>\n > = (value) =>\n value.map((item) => new TuiStringifiableItem(item, (item) => String(item)));\n\n protected onEnter(search: string): void {\n if (!this.tagValidator(search)) {\n return;\n }\n\n this.value = tuiToggleDay(this.value, TuiDay.normalizeParse(search));\n\n if (this.inputTag) {\n this.inputTag.search = '';\n }\n\n this.done();\n }\n\n protected onValueChange(value: ReadonlyArray<TuiStringifiableItem<TuiDay>>): void {\n this.control?.updateValueAndValidity({emitEvent: false});\n\n if (!value.length && !this.mobileCalendar) {\n this.onOpenChange(true);\n }\n\n this.value = value.map(({item}) => item);\n }\n\n protected onDayClick(value: TuiDay): void {\n this.value = tuiToggleDay(this.value, value);\n }\n\n protected done(): void {\n this.open = false;\n }\n\n protected onMonthChange(month: TuiMonth): void {\n this.month = month;\n }\n\n protected onOpenChange(open: boolean): void {\n this.open = open;\n }\n\n protected onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n}\n","<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownEnabled]=\"interactive\"\n [tuiDropdownOpen]=\"open && interactive\"\n (tuiDropdownOpenChange)=\"onOpenChange($event)\"\n>\n <tui-input-tag\n #inputTag\n class=\"t-input\"\n [disabled]=\"disabled\"\n [disabledItemHandler]=\"disabledItemHandler | tuiMapper: disabledItemHandlerWrapper\"\n [editable]=\"editable\"\n [inputHidden]=\"inputHidden\"\n [maskito]=\"maskitoOptions\"\n [nativeId]=\"nativeId\"\n [ngModel]=\"value | tuiMapper: valueMapper\"\n [ngModelOptions]=\"{standalone: true}\"\n [placeholder]=\"placeholder\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n [removable]=\"!nativeDropdownMode\"\n [rows]=\"rows\"\n [tagValidator]=\"tagValidator | tuiMapper: disabledItemHandlerWrapper\"\n [tuiTextfieldFiller]=\"(filler$ | async) || ''\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n (keydown.enter)=\"onEnter(inputTag.search || '')\"\n (ngModelChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n </tui-input-tag>\n\n <ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [class.t-icon_small]=\"size === 's'\"\n [class.t-icon]=\"!computedDisabled\"\n [icon]=\"src.toString()\"\n (click)=\"onIconClick()\"\n />\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar\n [disabledItemHandler]=\"disabledItemHandler\"\n [markerHandler]=\"markerHandler\"\n [max]=\"computedMax\"\n [min]=\"computedMin\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n (mousedown.silent.prevent)=\"(0)\"\n />\n <div\n class=\"t-button\"\n (mousedown.silent.prevent)=\"(0)\"\n >\n <button\n tuiLink\n type=\"button\"\n (click)=\"done()\"\n >\n {{ doneWord$ | async }}\n </button>\n </div>\n </ng-template>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {MaskitoDirective} from '@maskito/angular';\nimport {TuiMapperPipe} from '@taiga-ui/cdk/pipes/mapper';\nimport {TuiCalendar} from '@taiga-ui/core/components/calendar';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiLink} from '@taiga-ui/core/components/link';\nimport {TuiAppearance} from '@taiga-ui/core/directives/appearance';\nimport {TuiDropdown} from '@taiga-ui/core/directives/dropdown';\nimport {TuiInputTagModule} from '@taiga-ui/legacy/components/input-tag';\nimport {TuiPrimitiveTextfieldModule} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TuiLegacyDropdownOpenMonitorDirective,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputDateMultiComponent} from './input-date-multi.component';\n\n@NgModule({\n imports: [\n CommonModule,\n MaskitoDirective,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiCalendar,\n TuiLink,\n TuiInputTagModule,\n FormsModule,\n TuiMapperPipe,\n TuiTextfieldControllerModule,\n TuiPrimitiveTextfieldModule,\n TuiLegacyDropdownOpenMonitorDirective,\n TuiIcon,\n TuiAppearance,\n ...TuiDropdown,\n ],\n declarations: [TuiInputDateMultiComponent],\n exports: [TuiInputDateMultiComponent, ...TuiDropdown],\n})\nexport class TuiInputDateMultiModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["tuiAsLegacyControl","i6","i1"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __decorate } from 'tslib';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { inject, Component, ChangeDetectionStrategy, ViewChild, forwardRef, Input,
|
|
3
|
+
import { inject, Component, ChangeDetectionStrategy, ViewChild, forwardRef, Input, Directive, NgModule } from '@angular/core';
|
|
4
4
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
5
5
|
import { MASKITO_DEFAULT_OPTIONS } from '@maskito/core';
|
|
6
6
|
import { maskitoDateRangeOptionsGenerator } from '@maskito/kit';
|
|
@@ -219,7 +219,7 @@ class TuiInputDateRangeComponent extends AbstractTuiNullableControl {
|
|
|
219
219
|
return `${dateFiller}${RANGE_SEPARATOR_CHAR}${dateFiller}`;
|
|
220
220
|
}
|
|
221
221
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiInputDateRangeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
222
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputDateRangeComponent, selector: "tui-input-date-range", inputs: { disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", defaultViewedMonth: "defaultViewedMonth", items: "items", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength" }, host: { listeners: { "click": "onClick()" }, properties: { "attr.data-size": "
|
|
222
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiInputDateRangeComponent, selector: "tui-input-date-range", inputs: { disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", defaultViewedMonth: "defaultViewedMonth", items: "items", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength" }, host: { listeners: { "click": "onClick()" }, properties: { "attr.data-size": "size" } }, providers: [
|
|
223
223
|
tuiAsFocusableItemAccessor(TuiInputDateRangeComponent),
|
|
224
224
|
tuiAsControl(TuiInputDateRangeComponent),
|
|
225
225
|
tuiAsControl$1(TuiInputDateRangeComponent),
|
|
@@ -238,7 +238,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
238
238
|
tuiAsControl$1(TuiInputDateRangeComponent),
|
|
239
239
|
tuiDateStreamWithTransformer(TUI_DATE_RANGE_VALUE_TRANSFORMER),
|
|
240
240
|
TUI_MOBILE_CALENDAR_PROVIDER,
|
|
241
|
-
],
|
|
241
|
+
], host: {
|
|
242
|
+
'[attr.data-size]': 'size',
|
|
243
|
+
'(click)': 'onClick()',
|
|
244
|
+
}, template: "<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"dropdown\"\n [tuiDropdownEnabled]=\"interactive\"\n [tuiDropdownOpen]=\"open && interactive\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (tuiDropdownOpenChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n *tuiLet=\"dateFiller$ | async as dateFiller\"\n automation-id=\"tui-input-date-range__textfield\"\n tuiValueAccessor\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"computedMask\"\n [nativeId]=\"nativeId\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"innerPseudoFocused\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldFiller]=\"getComputedRangeFiller(dateFiller || '')\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n\n <div\n *ngIf=\"showValueTemplate\"\n ngProjectAs=\"tuiContent\"\n class=\"t-value\"\n >\n <ng-container *polymorpheusOutlet=\"computedContent as text; context: {$implicit: value}\">\n {{ text }}\n </ng-container>\n </div>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-icon\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n automation-id=\"tui-input-date-range__icon\"\n tuiAppearance=\"icon\"\n [class.t-icon_small]=\"size === 's'\"\n [class.t-icon]=\"!computedDisabled\"\n [icon]=\"src.toString()\"\n (click)=\"onIconClick()\"\n />\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar-range\n [defaultViewedMonth]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [items]=\"items\"\n [markerHandler]=\"markerHandler\"\n [max]=\"max\"\n [maxLength]=\"maxLength\"\n [min]=\"min\"\n [minLength]=\"minLength\"\n [value]=\"value\"\n (valueChange)=\"onRangeChange($event)\"\n />\n </ng-template>\n</div>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.t-hosted{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}.t-icon{pointer-events:auto}.t-icon_small{border:.25rem solid transparent}.t-value{display:flex;width:100%;align-items:center}\n"] }]
|
|
242
245
|
}], propDecorators: { textfield: [{
|
|
243
246
|
type: ViewChild,
|
|
244
247
|
args: [TuiPrimitiveTextfieldComponent]
|
|
@@ -261,12 +264,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
261
264
|
type: Input
|
|
262
265
|
}], maxLength: [{
|
|
263
266
|
type: Input
|
|
264
|
-
}], onClick: [{
|
|
265
|
-
type: HostListener,
|
|
266
|
-
args: ['click']
|
|
267
|
-
}], size: [{
|
|
268
|
-
type: HostBinding,
|
|
269
|
-
args: ['attr.data-size']
|
|
270
267
|
}], calculateMask: [] } });
|
|
271
268
|
|
|
272
269
|
class TuiInputDateRangeDirective extends AbstractTuiTextfieldHost {
|