@taiga-ui/kit 5.23.0 → 5.24.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.
Files changed (72) hide show
  1. package/components/input-color/input-color-content.component.d.ts +1 -0
  2. package/components/input-date-multi/input-date-multi.directive.d.ts +11 -3
  3. package/components/input-date-range/input-date-range.directive.d.ts +24 -4
  4. package/components/input-range/input-range.component.d.ts +10 -2
  5. package/components/line-clamp/line-clamp.component.d.ts +2 -0
  6. package/components/multi-select/multi-select-native/multi-select-native.component.d.ts +1 -2
  7. package/components/range/range.component.d.ts +10 -2
  8. package/components/textarea/textarea.component.d.ts +12 -2
  9. package/directives/tooltip/tooltip.directive.d.ts +1 -1
  10. package/directives/unfinished-validator/unfinished-validator-refresh.directive.d.ts +6 -3
  11. package/fesm2022/taiga-ui-kit-components-accordion.mjs +2 -2
  12. package/fesm2022/taiga-ui-kit-components-avatar.mjs +9 -9
  13. package/fesm2022/taiga-ui-kit-components-badge.mjs +2 -2
  14. package/fesm2022/taiga-ui-kit-components-block.mjs +2 -2
  15. package/fesm2022/taiga-ui-kit-components-chip.mjs +2 -2
  16. package/fesm2022/taiga-ui-kit-components-comment.mjs +3 -3
  17. package/fesm2022/taiga-ui-kit-components-compass.mjs +2 -2
  18. package/fesm2022/taiga-ui-kit-components-copy.mjs +2 -2
  19. package/fesm2022/taiga-ui-kit-components-files.mjs +5 -5
  20. package/fesm2022/taiga-ui-kit-components-input-color.mjs +3 -2
  21. package/fesm2022/taiga-ui-kit-components-input-color.mjs.map +1 -1
  22. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs +10 -2
  23. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs.map +1 -1
  24. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs +29 -5
  25. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs.map +1 -1
  26. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs +3 -3
  27. package/fesm2022/taiga-ui-kit-components-input-date.mjs +4 -4
  28. package/fesm2022/taiga-ui-kit-components-input-inline.mjs +2 -2
  29. package/fesm2022/taiga-ui-kit-components-input-month.mjs +4 -4
  30. package/fesm2022/taiga-ui-kit-components-input-number.mjs +7 -5
  31. package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
  32. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +2 -2
  33. package/fesm2022/taiga-ui-kit-components-input-pin.mjs +3 -3
  34. package/fesm2022/taiga-ui-kit-components-input-range.mjs +10 -2
  35. package/fesm2022/taiga-ui-kit-components-input-range.mjs.map +1 -1
  36. package/fesm2022/taiga-ui-kit-components-input-slider.mjs +2 -2
  37. package/fesm2022/taiga-ui-kit-components-input-time.mjs +3 -3
  38. package/fesm2022/taiga-ui-kit-components-like.mjs +2 -2
  39. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +13 -10
  40. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  41. package/fesm2022/taiga-ui-kit-components-message.mjs +2 -2
  42. package/fesm2022/taiga-ui-kit-components-meter.mjs +3 -3
  43. package/fesm2022/taiga-ui-kit-components-multi-select.mjs +7 -6
  44. package/fesm2022/taiga-ui-kit-components-multi-select.mjs.map +1 -1
  45. package/fesm2022/taiga-ui-kit-components-pin.mjs +3 -3
  46. package/fesm2022/taiga-ui-kit-components-preview.mjs +3 -3
  47. package/fesm2022/taiga-ui-kit-components-progress.mjs +6 -6
  48. package/fesm2022/taiga-ui-kit-components-radio-list.mjs +2 -2
  49. package/fesm2022/taiga-ui-kit-components-range.mjs +14 -2
  50. package/fesm2022/taiga-ui-kit-components-range.mjs.map +1 -1
  51. package/fesm2022/taiga-ui-kit-components-segmented.mjs +3 -3
  52. package/fesm2022/taiga-ui-kit-components-shrink-wrap.mjs +2 -2
  53. package/fesm2022/taiga-ui-kit-components-status.mjs +3 -3
  54. package/fesm2022/taiga-ui-kit-components-switch.mjs +2 -2
  55. package/fesm2022/taiga-ui-kit-components-tabs.mjs +7 -6
  56. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  57. package/fesm2022/taiga-ui-kit-components-textarea.mjs +19 -5
  58. package/fesm2022/taiga-ui-kit-components-textarea.mjs.map +1 -1
  59. package/fesm2022/taiga-ui-kit-components-tiles.mjs +4 -4
  60. package/fesm2022/taiga-ui-kit-components-toast.mjs +2 -2
  61. package/fesm2022/taiga-ui-kit-directives-button-group.mjs +3 -3
  62. package/fesm2022/taiga-ui-kit-directives-chevron.mjs +2 -2
  63. package/fesm2022/taiga-ui-kit-directives-connected.mjs +3 -3
  64. package/fesm2022/taiga-ui-kit-directives-fade.mjs +3 -3
  65. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs +3 -3
  66. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs +2 -2
  67. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs +3 -3
  68. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs +4 -3
  69. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs.map +1 -1
  70. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs +20 -11
  71. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs.map +1 -1
  72. package/package.json +28 -28
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-tooltip.mjs","sources":["../../../projects/kit/directives/tooltip/tooltip.options.ts","../../../projects/kit/directives/tooltip/tooltip.directive.ts","../../../projects/kit/directives/tooltip/taiga-ui-kit-directives-tooltip.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport const [TUI_TOOLTIP_OPTIONS, tuiTooltipOptionsProvider] = tuiCreateOptions({\n icon: '',\n appearance: 'icon',\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n type DoCheck,\n inject,\n input,\n type Signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {WA_IS_MOBILE} from '@ng-web-apis/platform';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {tuiWatch} from '@taiga-ui/cdk/observables';\nimport {tuiSetSignal, tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiTextfieldComponent} from '@taiga-ui/core/components/textfield';\nimport {\n tuiAppearanceOptionsProvider,\n tuiAppearanceState,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {\n TUI_HINT_OPTIONS,\n TuiHintDescribe,\n TuiHintDirective,\n TuiHintHover,\n} from '@taiga-ui/core/portals/hint';\nimport {TUI_ICON_START} from '@taiga-ui/core/tokens';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {map} from 'rxjs';\n\nimport {TUI_TOOLTIP_OPTIONS} from './tooltip.options';\n\n@Component({\n template: '',\n styles: `\n [data-tui-version='${TUI_VERSION}'] {\n @import './tooltip.style.less';\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: `tui-tooltip-${TUI_VERSION}`,\n})\nclass Styles {}\n\n@Directive({\n selector: 'tui-icon[tuiTooltip]',\n providers: [\n tuiAppearanceOptionsProvider(TUI_TOOLTIP_OPTIONS),\n {\n provide: TUI_ICON_START,\n useFactory: () =>\n inject(TUI_TOOLTIP_OPTIONS).icon || inject(TUI_HINT_OPTIONS).icon,\n },\n ],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiHintDescribe,\n inputs: ['tuiHintDescribe: tuiTooltipDescribe'],\n },\n {\n directive: TuiHintDirective,\n inputs: ['tuiHint: tuiTooltip', 'tuiHintAppearance', 'tuiHintContext'],\n },\n ],\n host: {\n tuiTooltip: '',\n class: 'tui-interactive',\n '[attr.data-size]': 'size()',\n '[attr.tabindex]': 'describe.id() ? null : 0',\n '(click.prevent)': '0',\n '(mousedown.prevent)': '0',\n '(pointerdown)': 'onClick($event)',\n },\n})\nexport class TuiTooltip implements DoCheck {\n private readonly textfield = inject(TuiTextfieldComponent, {optional: true});\n private readonly isMobile = inject(WA_IS_MOBILE);\n\n protected readonly describe = inject(TuiHintDescribe);\n protected readonly nothing = tuiWithStyles(Styles);\n\n protected readonly state: Signal<unknown> = tuiAppearanceState(\n toSignal(\n inject(TuiHintHover).pipe(\n map((hover) => (hover && this.tuiTooltip() ? 'hover' : null)),\n tuiWatch(),\n ),\n {initialValue: null},\n ),\n );\n\n public readonly size = input<TuiSizeS>('m');\n public readonly tuiTooltip = input<unknown>();\n\n public ngDoCheck(): void {\n if (this.textfield) {\n tuiSetSignal(this.describe.id, this.textfield.input()?.nativeElement.id);\n }\n }\n\n protected onClick(event: MouseEvent): void {\n if (!this.isMobile) {\n return;\n }\n\n event.stopPropagation();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;MAEa,CAAC,mBAAmB,EAAE,yBAAyB,CAAC,GAAG,gBAAgB,CAAC;AAC7E,IAAA,IAAI,EAAE,EAAE;AACR,IAAA,UAAU,EAAE,MAAM;AACrB,CAAA;;AC4BD,MAWM,MAAM,CAAA;+GAAN,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAN,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAM,0GAVE,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,64BAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAUV,MAAM,EAAA,UAAA,EAAA,CAAA;kBAXX,SAAS;+BACI,EAAE,EAAA,aAAA,EAMG,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EACrC,CAAA,YAAA,EAAe,WAAW,CAAA,CAAE,EAAA,MAAA,EAAA,CAAA,64BAAA,CAAA,EAAA;;MAmC7B,UAAU,CAAA;AA/BvB,IAAA,WAAA,GAAA;QAgCqB,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,qBAAqB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AAC3D,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC;AAE7B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC;AAClC,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC;QAE/B,IAAA,CAAA,KAAK,GAAoB,kBAAkB,CAC1D,QAAQ,CACJ,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CACrB,GAAG,CAAC,CAAC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,EAC7D,QAAQ,EAAE,CACb,EACD,EAAC,YAAY,EAAE,IAAI,EAAC,CACvB,CACJ;AAEe,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAW,GAAG,CAAC;QAC3B,IAAA,CAAA,UAAU,GAAG,KAAK,EAAW;AAehD,IAAA;IAbU,SAAS,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC;QAC5E;IACJ;AAEU,IAAA,OAAO,CAAC,KAAiB,EAAA;AAC/B,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB;QACJ;QAEA,KAAK,CAAC,eAAe,EAAE;IAC3B;+GAhCS,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,YAAA,EAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,GAAA,EAAA,mBAAA,EAAA,GAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,0BAAA,EAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,EAAA,SAAA,EA7BR;YACP,4BAA4B,CAAC,mBAAmB,CAAC;AACjD,YAAA;AACI,gBAAA,OAAO,EAAE,cAAc;AACvB,gBAAA,UAAU,EAAE,MACR,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI;AACxE,aAAA;AACJ,SAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,eAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAsBQ,UAAU,EAAA,UAAA,EAAA,CAAA;kBA/BtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,SAAS,EAAE;wBACP,4BAA4B,CAAC,mBAAmB,CAAC;AACjD,wBAAA;AACI,4BAAA,OAAO,EAAE,cAAc;AACvB,4BAAA,UAAU,EAAE,MACR,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI;AACxE,yBAAA;AACJ,qBAAA;AACD,oBAAA,cAAc,EAAE;wBACZ,iBAAiB;AACjB,wBAAA;AACI,4BAAA,SAAS,EAAE,eAAe;4BAC1B,MAAM,EAAE,CAAC,qCAAqC,CAAC;AAClD,yBAAA;AACD,wBAAA;AACI,4BAAA,SAAS,EAAE,gBAAgB;AAC3B,4BAAA,MAAM,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,CAAC;AACzE,yBAAA;AACJ,qBAAA;AACD,oBAAA,IAAI,EAAE;AACF,wBAAA,UAAU,EAAE,EAAE;AACd,wBAAA,KAAK,EAAE,iBAAiB;AACxB,wBAAA,kBAAkB,EAAE,QAAQ;AAC5B,wBAAA,iBAAiB,EAAE,0BAA0B;AAC7C,wBAAA,iBAAiB,EAAE,GAAG;AACtB,wBAAA,qBAAqB,EAAE,GAAG;AAC1B,wBAAA,eAAe,EAAE,iBAAiB;AACrC,qBAAA;AACJ,iBAAA;;;AC5ED;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-directives-tooltip.mjs","sources":["../../../projects/kit/directives/tooltip/tooltip.options.ts","../../../projects/kit/directives/tooltip/tooltip.directive.ts","../../../projects/kit/directives/tooltip/taiga-ui-kit-directives-tooltip.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport const [TUI_TOOLTIP_OPTIONS, tuiTooltipOptionsProvider] = tuiCreateOptions({\n icon: '',\n appearance: 'icon',\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n type DoCheck,\n inject,\n input,\n type Signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {WA_IS_MOBILE} from '@ng-web-apis/platform';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {tuiWatch} from '@taiga-ui/cdk/observables';\nimport {tuiSetSignal, tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiTextfieldComponent} from '@taiga-ui/core/components/textfield';\nimport {\n tuiAppearanceOptionsProvider,\n tuiAppearanceState,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {\n TUI_HINT_OPTIONS,\n TuiHintDescribe,\n TuiHintDirective,\n TuiHintHover,\n} from '@taiga-ui/core/portals/hint';\nimport {TUI_ICON_START} from '@taiga-ui/core/tokens';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {map} from 'rxjs';\n\nimport {TUI_TOOLTIP_OPTIONS} from './tooltip.options';\n\n@Component({\n template: '',\n styles: `\n [data-tui-version='${TUI_VERSION}'] {\n @import './tooltip.style.less';\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: `tui-tooltip-${TUI_VERSION}`,\n})\nclass Styles {}\n\n@Directive({\n selector: 'tui-icon[tuiTooltip]',\n providers: [\n tuiAppearanceOptionsProvider(TUI_TOOLTIP_OPTIONS),\n {\n provide: TUI_ICON_START,\n useFactory: () =>\n inject(TUI_TOOLTIP_OPTIONS).icon || inject(TUI_HINT_OPTIONS).icon,\n },\n ],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiHintDescribe,\n inputs: ['tuiHintDescribe: tuiTooltipDescribe'],\n },\n {\n directive: TuiHintDirective,\n inputs: ['tuiHint: tuiTooltip', 'tuiHintAppearance', 'tuiHintContext'],\n outputs: ['tuiHintVisible'],\n },\n ],\n host: {\n tuiTooltip: '',\n class: 'tui-interactive',\n '[attr.data-size]': 'size()',\n '[attr.tabindex]': 'describe.id() ? null : 0',\n '(click.prevent)': '0',\n '(mousedown.prevent)': '0',\n '(pointerdown)': 'onClick($event)',\n },\n})\nexport class TuiTooltip implements DoCheck {\n private readonly textfield = inject(TuiTextfieldComponent, {optional: true});\n private readonly isMobile = inject(WA_IS_MOBILE);\n\n protected readonly describe = inject(TuiHintDescribe);\n protected readonly nothing = tuiWithStyles(Styles);\n\n protected readonly state: Signal<unknown> = tuiAppearanceState(\n toSignal(\n inject(TuiHintHover).pipe(\n map((hover) => (hover && this.tuiTooltip() ? 'hover' : null)),\n tuiWatch(),\n ),\n {initialValue: null},\n ),\n );\n\n public readonly size = input<TuiSizeS>('m');\n public readonly tuiTooltip = input<unknown>();\n\n public ngDoCheck(): void {\n if (this.textfield) {\n tuiSetSignal(this.describe.id, this.textfield.input()?.nativeElement.id);\n }\n }\n\n protected onClick(event: MouseEvent): void {\n if (!this.isMobile) {\n return;\n }\n\n event.stopPropagation();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  import { TuiValidationError } from '@taiga-ui/cdk/classes';
2
2
  import * as i0 from '@angular/core';
3
- import { inject, Directive, signal, input } from '@angular/core';
3
+ import { inject, INJECTOR, Directive, signal, input } from '@angular/core';
4
4
  import { toSignal } from '@angular/core/rxjs-interop';
5
5
  import { NgControl, NG_VALIDATORS } from '@angular/forms';
6
6
  import { tuiProvide } from '@taiga-ui/cdk/utils/di';
7
7
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
8
8
  import { TUI_DEFAULT_ERROR_MESSAGE, TUI_VALIDATION_ERRORS } from '@taiga-ui/core/tokens';
9
9
  import { isObservable } from 'rxjs';
10
+ import { TuiValidator } from '@taiga-ui/cdk/directives/validator';
10
11
 
11
12
  function tuiCreateUnfinishedValidator(element, message) {
12
13
  return ({ value, }) => value === null && element.value !== ''
@@ -14,25 +15,33 @@ function tuiCreateUnfinishedValidator(element, message) {
14
15
  : null;
15
16
  }
16
17
 
17
- class TuiUnfinishedValidatorRefresh {
18
+ class TuiUnfinishedValidatorRefresh extends TuiValidator {
18
19
  constructor() {
20
+ super(...arguments);
21
+ this.injector = inject(INJECTOR);
19
22
  this.element = tuiInjectElement();
20
- this.control = inject(NgControl, { self: true, optional: true });
23
+ this.control = null;
24
+ }
25
+ ngOnInit() {
26
+ this.control = this.injector.get(NgControl, null, { optional: true, self: true });
21
27
  }
22
28
  onInput() {
23
- if (this.control?.control?.value !== null || this.element.value === '') {
24
- this.updateValueAndValidity();
29
+ if (this.control?.field || // Signal forms have nothing else to re-validate them, so they are always asked
30
+ // Reactive forms has silent `updateValueAndValidity({emitEvent: false})` (not compatible with signal forms) inside control components
31
+ this.control?.control?.value !== null ||
32
+ this.element.value === '') {
33
+ this.onChange();
25
34
  }
26
35
  }
27
- updateValueAndValidity() {
28
- this.control?.control?.updateValueAndValidity();
29
- }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiUnfinishedValidatorRefresh, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: TuiUnfinishedValidatorRefresh, isStandalone: true, host: { listeners: { "blur": "updateValueAndValidity()", "input": "onInput()" } }, ngImport: i0 }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiUnfinishedValidatorRefresh, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
37
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: TuiUnfinishedValidatorRefresh, isStandalone: true, host: { listeners: { "blur": "onChange()", "input": "onInput()" } }, providers: [tuiProvide(NG_VALIDATORS, TuiUnfinishedValidatorRefresh, true)], usesInheritance: true, ngImport: i0 }); }
32
38
  }
33
39
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiUnfinishedValidatorRefresh, decorators: [{
34
40
  type: Directive,
35
- args: [{ host: { '(blur)': 'updateValueAndValidity()', '(input)': 'onInput()' } }]
41
+ args: [{
42
+ providers: [tuiProvide(NG_VALIDATORS, TuiUnfinishedValidatorRefresh, true)],
43
+ host: { '(blur)': 'onChange()', '(input)': 'onInput()' },
44
+ }]
36
45
  }] });
37
46
 
38
47
  class TuiUnfinishedValidator {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-unfinished-validator.mjs","sources":["../../../projects/kit/directives/unfinished-validator/unfinished.validator.ts","../../../projects/kit/directives/unfinished-validator/unfinished-validator-refresh.directive.ts","../../../projects/kit/directives/unfinished-validator/unfinished-validator.directive.ts","../../../projects/kit/directives/unfinished-validator/taiga-ui-kit-directives-unfinished-validator.ts"],"sourcesContent":["import {type AbstractControl, type ValidatorFn} from '@angular/forms';\nimport {TuiValidationError} from '@taiga-ui/cdk/classes';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport function tuiCreateUnfinishedValidator(\n element: HTMLInputElement,\n message: PolymorpheusContent,\n): ValidatorFn {\n return ({\n value,\n }: AbstractControl): {tuiUnfinished: TuiValidationError | string} | null =>\n value === null && element.value !== ''\n ? {tuiUnfinished: new TuiValidationError(message)}\n : null;\n}\n","import {Directive, inject} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\n@Directive({host: {'(blur)': 'updateValueAndValidity()', '(input)': 'onInput()'}})\nexport class TuiUnfinishedValidatorRefresh {\n private readonly element = tuiInjectElement<HTMLInputElement>();\n private readonly control = inject(NgControl, {self: true, optional: true});\n\n protected onInput(): void {\n if (this.control?.control?.value !== null || this.element.value === '') {\n this.updateValueAndValidity();\n }\n }\n\n protected updateValueAndValidity(): void {\n this.control?.control?.updateValueAndValidity();\n }\n}\n","import {Directive, inject, input, signal} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NG_VALIDATORS, type Validator} from '@angular/forms';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TUI_DEFAULT_ERROR_MESSAGE, TUI_VALIDATION_ERRORS} from '@taiga-ui/core/tokens';\nimport {isObservable} from 'rxjs';\n\nimport {tuiCreateUnfinishedValidator} from './unfinished.validator';\nimport {TuiUnfinishedValidatorRefresh} from './unfinished-validator-refresh.directive';\n\n@Directive({\n selector: 'input[tuiUnfinishedValidator]',\n providers: [tuiProvide(NG_VALIDATORS, TuiUnfinishedValidator, true)],\n hostDirectives: [TuiUnfinishedValidatorRefresh],\n})\nexport class TuiUnfinishedValidator implements Validator {\n private readonly default = inject(TUI_DEFAULT_ERROR_MESSAGE);\n private readonly error = inject(TUI_VALIDATION_ERRORS)['tuiUnfinished'];\n private readonly fallback = this.error ? signal(this.error) : this.default;\n\n private readonly message = isObservable(this.error)\n ? toSignal(this.error)\n : this.fallback;\n\n public readonly tuiUnfinishedValidator = input('');\n\n public readonly validate = tuiCreateUnfinishedValidator(\n tuiInjectElement<HTMLInputElement>(),\n () => this.tuiUnfinishedValidator() || this.message(),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiUnfinishedValidatorRefresh"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-directives-unfinished-validator.mjs","sources":["../../../projects/kit/directives/unfinished-validator/unfinished.validator.ts","../../../projects/kit/directives/unfinished-validator/unfinished-validator-refresh.directive.ts","../../../projects/kit/directives/unfinished-validator/unfinished-validator.directive.ts","../../../projects/kit/directives/unfinished-validator/taiga-ui-kit-directives-unfinished-validator.ts"],"sourcesContent":["import {type AbstractControl, type ValidatorFn} from '@angular/forms';\nimport {TuiValidationError} from '@taiga-ui/cdk/classes';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport function tuiCreateUnfinishedValidator(\n element: HTMLInputElement,\n message: PolymorpheusContent,\n): ValidatorFn {\n return ({\n value,\n }: AbstractControl): {tuiUnfinished: TuiValidationError | string} | null =>\n value === null && element.value !== ''\n ? {tuiUnfinished: new TuiValidationError(message)}\n : null;\n}\n","import {Directive, inject, INJECTOR, type OnInit} from '@angular/core';\nimport {NG_VALIDATORS, NgControl} from '@angular/forms';\nimport {TuiValidator} from '@taiga-ui/cdk/directives/validator';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\n@Directive({\n providers: [tuiProvide(NG_VALIDATORS, TuiUnfinishedValidatorRefresh, true)],\n host: {'(blur)': 'onChange()', '(input)': 'onInput()'},\n})\nexport class TuiUnfinishedValidatorRefresh extends TuiValidator implements OnInit {\n private readonly injector = inject(INJECTOR);\n private readonly element = tuiInjectElement<HTMLInputElement>();\n private control: (NgControl & {field?: unknown}) | null = null;\n\n public ngOnInit(): void {\n this.control = this.injector.get(NgControl, null, {optional: true, self: true});\n }\n\n protected onInput(): void {\n if (\n this.control?.field || // Signal forms have nothing else to re-validate them, so they are always asked\n // Reactive forms has silent `updateValueAndValidity({emitEvent: false})` (not compatible with signal forms) inside control components\n this.control?.control?.value !== null ||\n this.element.value === ''\n ) {\n this.onChange();\n }\n }\n}\n","import {Directive, inject, input, signal} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NG_VALIDATORS, type Validator} from '@angular/forms';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TUI_DEFAULT_ERROR_MESSAGE, TUI_VALIDATION_ERRORS} from '@taiga-ui/core/tokens';\nimport {isObservable} from 'rxjs';\n\nimport {tuiCreateUnfinishedValidator} from './unfinished.validator';\nimport {TuiUnfinishedValidatorRefresh} from './unfinished-validator-refresh.directive';\n\n@Directive({\n selector: 'input[tuiUnfinishedValidator]',\n providers: [tuiProvide(NG_VALIDATORS, TuiUnfinishedValidator, true)],\n hostDirectives: [TuiUnfinishedValidatorRefresh],\n})\nexport class TuiUnfinishedValidator implements Validator {\n private readonly default = inject(TUI_DEFAULT_ERROR_MESSAGE);\n private readonly error = inject(TUI_VALIDATION_ERRORS)['tuiUnfinished'];\n private readonly fallback = this.error ? signal(this.error) : this.default;\n\n private readonly message = isObservable(this.error)\n ? toSignal(this.error)\n : this.fallback;\n\n public readonly tuiUnfinishedValidator = input('');\n\n public readonly validate = tuiCreateUnfinishedValidator(\n tuiInjectElement<HTMLInputElement>(),\n () => this.tuiUnfinishedValidator() || this.message(),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiUnfinishedValidatorRefresh"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/kit",
3
- "version": "5.23.0",
3
+ "version": "5.24.0",
4
4
  "description": "Taiga UI Angular main components kit",
5
5
  "keywords": [
6
6
  "angular",
@@ -43,11 +43,11 @@
43
43
  "@ng-web-apis/mutation-observer": "^5.3.0",
44
44
  "@ng-web-apis/platform": "^5.3.0",
45
45
  "@ng-web-apis/resize-observer": "^5.3.0",
46
- "@taiga-ui/cdk": "5.23.0",
47
- "@taiga-ui/core": "5.23.0",
48
- "@taiga-ui/i18n": "5.23.0",
46
+ "@taiga-ui/cdk": "5.24.0",
47
+ "@taiga-ui/core": "5.24.0",
48
+ "@taiga-ui/i18n": "5.24.0",
49
49
  "@taiga-ui/polymorpheus": "^5.0.1",
50
- "@taiga-ui/styles": "5.23.0",
50
+ "@taiga-ui/styles": "5.24.0",
51
51
  "rxjs": ">=7.0.0"
52
52
  },
53
53
  "module": "fesm2022/taiga-ui-kit.mjs",
@@ -80,22 +80,22 @@
80
80
  "types": "./utils/index.d.ts",
81
81
  "default": "./fesm2022/taiga-ui-kit-utils.mjs"
82
82
  },
83
- "./components/accordion": {
84
- "types": "./components/accordion/index.d.ts",
85
- "default": "./fesm2022/taiga-ui-kit-components-accordion.mjs"
86
- },
87
83
  "./components/action-bar": {
88
84
  "types": "./components/action-bar/index.d.ts",
89
85
  "default": "./fesm2022/taiga-ui-kit-components-action-bar.mjs"
90
86
  },
91
- "./components/badge": {
92
- "types": "./components/badge/index.d.ts",
93
- "default": "./fesm2022/taiga-ui-kit-components-badge.mjs"
87
+ "./components/accordion": {
88
+ "types": "./components/accordion/index.d.ts",
89
+ "default": "./fesm2022/taiga-ui-kit-components-accordion.mjs"
94
90
  },
95
91
  "./components/avatar": {
96
92
  "types": "./components/avatar/index.d.ts",
97
93
  "default": "./fesm2022/taiga-ui-kit-components-avatar.mjs"
98
94
  },
95
+ "./components/badge": {
96
+ "types": "./components/badge/index.d.ts",
97
+ "default": "./fesm2022/taiga-ui-kit-components-badge.mjs"
98
+ },
99
99
  "./components/badge-notification": {
100
100
  "types": "./components/badge-notification/index.d.ts",
101
101
  "default": "./fesm2022/taiga-ui-kit-components-badge-notification.mjs"
@@ -224,14 +224,14 @@
224
224
  "types": "./components/input-pin/index.d.ts",
225
225
  "default": "./fesm2022/taiga-ui-kit-components-input-pin.mjs"
226
226
  },
227
- "./components/input-slider": {
228
- "types": "./components/input-slider/index.d.ts",
229
- "default": "./fesm2022/taiga-ui-kit-components-input-slider.mjs"
230
- },
231
227
  "./components/input-range": {
232
228
  "types": "./components/input-range/index.d.ts",
233
229
  "default": "./fesm2022/taiga-ui-kit-components-input-range.mjs"
234
230
  },
231
+ "./components/input-slider": {
232
+ "types": "./components/input-slider/index.d.ts",
233
+ "default": "./fesm2022/taiga-ui-kit-components-input-slider.mjs"
234
+ },
235
235
  "./components/input-time": {
236
236
  "types": "./components/input-time/index.d.ts",
237
237
  "default": "./fesm2022/taiga-ui-kit-components-input-time.mjs"
@@ -252,14 +252,14 @@
252
252
  "types": "./components/line-clamp/index.d.ts",
253
253
  "default": "./fesm2022/taiga-ui-kit-components-line-clamp.mjs"
254
254
  },
255
- "./components/meter": {
256
- "types": "./components/meter/index.d.ts",
257
- "default": "./fesm2022/taiga-ui-kit-components-meter.mjs"
258
- },
259
255
  "./components/message": {
260
256
  "types": "./components/message/index.d.ts",
261
257
  "default": "./fesm2022/taiga-ui-kit-components-message.mjs"
262
258
  },
259
+ "./components/meter": {
260
+ "types": "./components/meter/index.d.ts",
261
+ "default": "./fesm2022/taiga-ui-kit-components-meter.mjs"
262
+ },
263
263
  "./components/multi-select": {
264
264
  "types": "./components/multi-select/index.d.ts",
265
265
  "default": "./fesm2022/taiga-ui-kit-components-multi-select.mjs"
@@ -280,14 +280,14 @@
280
280
  "types": "./components/pin/index.d.ts",
281
281
  "default": "./fesm2022/taiga-ui-kit-components-pin.mjs"
282
282
  },
283
- "./components/pincode": {
284
- "types": "./components/pincode/index.d.ts",
285
- "default": "./fesm2022/taiga-ui-kit-components-pincode.mjs"
286
- },
287
283
  "./components/preview": {
288
284
  "types": "./components/preview/index.d.ts",
289
285
  "default": "./fesm2022/taiga-ui-kit-components-preview.mjs"
290
286
  },
287
+ "./components/pincode": {
288
+ "types": "./components/pincode/index.d.ts",
289
+ "default": "./fesm2022/taiga-ui-kit-components-pincode.mjs"
290
+ },
291
291
  "./components/progress": {
292
292
  "types": "./components/progress/index.d.ts",
293
293
  "default": "./fesm2022/taiga-ui-kit-components-progress.mjs"
@@ -436,14 +436,14 @@
436
436
  "types": "./pipes/auto-color/index.d.ts",
437
437
  "default": "./fesm2022/taiga-ui-kit-pipes-auto-color.mjs"
438
438
  },
439
- "./pipes/emails": {
440
- "types": "./pipes/emails/index.d.ts",
441
- "default": "./fesm2022/taiga-ui-kit-pipes-emails.mjs"
442
- },
443
439
  "./pipes/flag": {
444
440
  "types": "./pipes/flag/index.d.ts",
445
441
  "default": "./fesm2022/taiga-ui-kit-pipes-flag.mjs"
446
442
  },
443
+ "./pipes/emails": {
444
+ "types": "./pipes/emails/index.d.ts",
445
+ "default": "./fesm2022/taiga-ui-kit-pipes-emails.mjs"
446
+ },
447
447
  "./pipes/format-number": {
448
448
  "types": "./pipes/format-number/index.d.ts",
449
449
  "default": "./fesm2022/taiga-ui-kit-pipes-format-number.mjs"