@taiga-ui/cdk 5.18.0 → 5.19.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/classes/control.d.ts +4 -0
- package/classes/form-value-control.d.ts +33 -0
- package/classes/index.d.ts +1 -0
- package/constants/version.d.ts +1 -1
- package/constants/version.js +1 -1
- package/directives/native-validator/native-validator.directive.d.ts +9 -4
- package/fesm2022/taiga-ui-cdk-classes.mjs +4 -0
- package/fesm2022/taiga-ui-cdk-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-constants.mjs +1 -1
- package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs +14 -14
- package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-truncate.mjs +3 -3
- package/package.json +1 -1
- package/schematics/ng-add/constants/versions.d.ts +1 -1
- package/schematics/ng-update/v5/steps/constants/html-comments.js +10 -0
- package/schematics/ng-update/v5/steps/constants/html-comments.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js +80 -0
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/migration-warnings.js +142 -13
- package/schematics/ng-update/v5/steps/constants/migration-warnings.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/tags-to-replace.js +0 -5
- package/schematics/ng-update/v5/steps/constants/tags-to-replace.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-breakpoint-service.js +70 -17
- package/schematics/ng-update/v5/steps/migrate-breakpoint-service.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-closeable.js +33 -0
- package/schematics/ng-update/v5/steps/migrate-closeable.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-css-variables.js +15 -0
- package/schematics/ng-update/v5/steps/migrate-css-variables.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-templates.js +2 -0
- package/schematics/ng-update/v5/steps/migrate-templates.js.map +1 -1
- package/schematics/ng-update/v5/steps/templates/migrate-combo-box.js +19 -7
- package/schematics/ng-update/v5/steps/templates/migrate-combo-box.js.map +1 -1
- package/schematics/ng-update/v5/steps/templates/migrate-pin.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-pin.js +51 -0
- package/schematics/ng-update/v5/steps/templates/migrate-pin.js.map +1 -0
package/classes/control.d.ts
CHANGED
|
@@ -14,6 +14,10 @@ export declare abstract class TuiControl<T> implements ControlValueAccessor {
|
|
|
14
14
|
protected transformer: TuiValueTransformer<any, any>;
|
|
15
15
|
readonly value: import("@angular/core").Signal<T>;
|
|
16
16
|
readonly readOnly: import("@angular/core").InputSignal<boolean>;
|
|
17
|
+
/**
|
|
18
|
+
* @deprecated use `<tui-textfield [invalid]="..." />` instead
|
|
19
|
+
* TODO(v6): delete
|
|
20
|
+
*/
|
|
17
21
|
readonly pseudoInvalid: import("@angular/core").InputSignal<boolean | null | undefined>;
|
|
18
22
|
readonly touched: import("@angular/core").WritableSignal<boolean>;
|
|
19
23
|
readonly status: import("@angular/core").WritableSignal<FormControlStatus | undefined>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { type InputSignal, type InputSignalWithTransform, type ModelSignal, type OutputRef } from '@angular/core';
|
|
2
|
+
/**
|
|
3
|
+
* @deprecated use import {ValidationError} from '@angular/forms/signals'
|
|
4
|
+
* Just temporary copy-pasted types until Taiga UI supports Angular <22
|
|
5
|
+
* https://github.com/angular/angular/blob/main/packages/forms/signals/src/api/rules/validation/validation_errors.ts#L368
|
|
6
|
+
* TODO: replace all usages `TuiSignalValidationError` by built-in Angular alternative
|
|
7
|
+
*/
|
|
8
|
+
export interface TuiSignalValidationError {
|
|
9
|
+
readonly kind: string;
|
|
10
|
+
readonly message?: string;
|
|
11
|
+
}
|
|
12
|
+
interface FormUiControl {
|
|
13
|
+
readonly errors?: InputSignal<readonly TuiSignalValidationError[]> | InputSignalWithTransform<readonly TuiSignalValidationError[], unknown>;
|
|
14
|
+
readonly disabled?: InputSignal<boolean> | InputSignalWithTransform<boolean, unknown>;
|
|
15
|
+
readonly readonly?: InputSignal<boolean> | InputSignalWithTransform<boolean, unknown>;
|
|
16
|
+
readonly invalid?: InputSignal<boolean> | InputSignalWithTransform<boolean, unknown>;
|
|
17
|
+
readonly pending?: InputSignal<boolean> | InputSignalWithTransform<boolean, unknown>;
|
|
18
|
+
readonly touched?: InputSignal<boolean> | InputSignalWithTransform<boolean, unknown>;
|
|
19
|
+
readonly dirty?: InputSignal<boolean> | InputSignalWithTransform<boolean, unknown>;
|
|
20
|
+
readonly touch?: OutputRef<void>;
|
|
21
|
+
focus?(options?: FocusOptions): void;
|
|
22
|
+
reset?(): void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @deprecated use import {FormValueControl} from '@angular/forms/signals'
|
|
26
|
+
* Just temporary copy-pasted types until Taiga UI supports Angular <22
|
|
27
|
+
* https://github.com/angular/angular/blob/main/packages/forms/signals/src/api/control.ts
|
|
28
|
+
* TODO: replace all usages `TuiFormValueControl` by built-in Angular alternative
|
|
29
|
+
*/
|
|
30
|
+
export interface TuiFormValueControl<TValue> extends FormUiControl {
|
|
31
|
+
readonly value: ModelSignal<TValue>;
|
|
32
|
+
}
|
|
33
|
+
export {};
|
package/classes/index.d.ts
CHANGED
package/constants/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const TUI_VERSION = "5.
|
|
1
|
+
export declare const TUI_VERSION = "5.19.0";
|
package/constants/version.js
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
|
-
import { type AbstractControl
|
|
1
|
+
import { type AbstractControl } from '@angular/forms';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class TuiNativeValidator
|
|
3
|
+
export declare class TuiNativeValidator {
|
|
4
4
|
private readonly el;
|
|
5
5
|
private readonly doc;
|
|
6
|
-
private readonly
|
|
6
|
+
private readonly ngControl;
|
|
7
7
|
protected readonly sub: import("rxjs").Subscription;
|
|
8
|
+
/**
|
|
9
|
+
* There is no `InteropNgControl.events` for signal forms
|
|
10
|
+
* Their `InteropNgControl` state (getters `touched` / `invalid`) is backed by signals,
|
|
11
|
+
* so the effect tracks it instead
|
|
12
|
+
*/
|
|
13
|
+
protected readonly ref: import("@angular/core").EffectRef;
|
|
8
14
|
readonly tuiNativeValidator: import("@angular/core").InputSignal<string>;
|
|
9
15
|
id: string;
|
|
10
16
|
get control(): AbstractControl | null;
|
|
11
|
-
validate(control: AbstractControl): null;
|
|
12
17
|
protected handleValidation(): void;
|
|
13
18
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiNativeValidator, never>;
|
|
14
19
|
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiNativeValidator, "[tuiNativeValidator]", never, { "tuiNativeValidator": { "alias": "tuiNativeValidator"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
@@ -44,6 +44,10 @@ class TuiControl {
|
|
|
44
44
|
this.transformer = inject(TuiValueTransformer, FLAGS) ?? TUI_IDENTITY_VALUE_TRANSFORMER;
|
|
45
45
|
this.value = computed(() => this.internal() ?? this.fallback);
|
|
46
46
|
this.readOnly = input(false);
|
|
47
|
+
/**
|
|
48
|
+
* @deprecated use `<tui-textfield [invalid]="..." />` instead
|
|
49
|
+
* TODO(v6): delete
|
|
50
|
+
*/
|
|
47
51
|
this.pseudoInvalid = input(undefined, { alias: 'invalid' });
|
|
48
52
|
this.touched = signal(false);
|
|
49
53
|
this.status = signal(undefined);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-classes.mjs","sources":["../../../projects/cdk/classes/value-transformer.ts","../../../projects/cdk/classes/control.ts","../../../projects/cdk/classes/validation-error.ts","../../../projects/cdk/classes/taiga-ui-cdk-classes.ts"],"sourcesContent":["import {type FactoryProvider, inject, type ProviderToken} from '@angular/core';\nimport {identity} from 'rxjs';\n\nexport abstract class TuiValueTransformer<From, To = unknown> {\n public abstract toControlValue(componentValue: From): To;\n public abstract fromControlValue(controlValue: To): From;\n}\n\nexport function tuiValueTransformerFrom<\n T extends {valueTransformer: TuiValueTransformer<unknown>},\n>(token: ProviderToken<T>): FactoryProvider {\n return {\n provide: TuiValueTransformer,\n useFactory: () => inject(token).valueTransformer,\n };\n}\n\nexport class TuiNonNullableValueTransformer<T> extends TuiValueTransformer<T | null, T> {\n private prevValue!: T;\n\n public fromControlValue(value: T): T {\n this.prevValue = value;\n\n return value;\n }\n\n public toControlValue(value: T | null): T {\n this.prevValue = value ?? this.prevValue;\n\n return this.prevValue;\n }\n}\n\nexport const TUI_IDENTITY_VALUE_TRANSFORMER: TuiValueTransformer<any, any> = {\n fromControlValue: identity,\n toControlValue: identity,\n};\n","import {\n ChangeDetectorRef,\n computed,\n Directive,\n inject,\n input,\n type Provider,\n signal,\n type Type,\n untracked,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n type ControlValueAccessor,\n type FormControlStatus,\n NgControl,\n NgModel,\n} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {TUI_FALLBACK_VALUE} from '@taiga-ui/cdk/tokens';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {\n delay,\n distinctUntilChanged,\n filter,\n map,\n merge,\n startWith,\n Subject,\n switchMap,\n} from 'rxjs';\n\nimport {TUI_IDENTITY_VALUE_TRANSFORMER, TuiValueTransformer} from './value-transformer';\n\nconst FLAGS = {self: true, optional: true};\n\n/**\n * Basic ControlValueAccessor class to build form components upon\n */\n@Directive()\nexport abstract class TuiControl<T> implements ControlValueAccessor {\n private readonly fallback = inject(TUI_FALLBACK_VALUE, FLAGS) as T;\n private readonly refresh$ = new Subject<void>();\n private readonly internal = signal(this.fallback);\n\n protected readonly control = inject(NgControl, {self: true});\n protected readonly cdr = inject(ChangeDetectorRef);\n\n protected transformer =\n inject(TuiValueTransformer, FLAGS) ?? TUI_IDENTITY_VALUE_TRANSFORMER;\n\n public readonly value = computed(() => this.internal() ?? this.fallback);\n public readonly readOnly = input(false);\n public readonly pseudoInvalid = input<boolean | null>(undefined, {alias: 'invalid'});\n public readonly touched = signal(false);\n public readonly status = signal<FormControlStatus | undefined>(undefined);\n public readonly disabled = computed(() => this.status() === 'DISABLED');\n public readonly interactive = computed(() => !this.disabled() && !this.readOnly());\n\n public readonly invalid = computed(() => {\n const pseudoInvalid = this.pseudoInvalid();\n\n return pseudoInvalid == null\n ? this.interactive() && this.touched() && this.status() === 'INVALID'\n : pseudoInvalid && this.interactive();\n });\n\n public readonly mode = computed(() =>\n // eslint-disable-next-line no-nested-ternary\n this.readOnly() ? 'readonly' : this.invalid() ? 'invalid' : 'valid',\n );\n\n public onTouched = EMPTY_FUNCTION;\n public onChange: (value: T) => void = EMPTY_FUNCTION;\n\n constructor() {\n this.control.valueAccessor = this;\n this.refresh$\n .pipe(\n delay(0),\n startWith(null),\n map(() => this.control.control),\n filter(Boolean),\n distinctUntilChanged(),\n switchMap((c) =>\n merge(c.valueChanges, c.statusChanges, c.events).pipe(\n startWith(null),\n ),\n ),\n takeUntilDestroyed(),\n )\n .subscribe(() => this.update());\n }\n\n public registerOnChange(onChange: (value: unknown) => void): void {\n this.refresh$.next();\n\n this.onChange = (value: T) => {\n const internal = untracked(this.internal);\n\n if (value === internal) {\n return;\n }\n\n onChange(this.transformer.toControlValue(value));\n this.internal.set(value);\n this.update();\n };\n }\n\n public registerOnTouched(onTouched: () => void): void {\n this.onTouched = () => {\n onTouched();\n this.update();\n };\n }\n\n public setDisabledState(): void {\n this.update();\n }\n\n public writeValue(value: T | null): void {\n // TODO: https://github.com/angular/angular/issues/14988\n const safe = this.control instanceof NgModel ? this.control.model : value;\n\n this.internal.set(this.transformer.fromControlValue(safe));\n this.update();\n }\n\n private update(): void {\n this.status.set(this.control.control?.status);\n this.touched.set(!!this.control.control?.touched);\n this.cdr.markForCheck();\n }\n}\n\nexport function tuiAsControl<T>(control: Type<TuiControl<T>>): Provider {\n return tuiProvide(TuiControl, control);\n}\n","import {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport class TuiValidationError<T extends Record<string, any> = Record<string, unknown>> {\n constructor(\n public readonly message: PolymorpheusContent<T>,\n public readonly context: T = {} as T,\n ) {}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-classes.mjs","sources":["../../../projects/cdk/classes/value-transformer.ts","../../../projects/cdk/classes/control.ts","../../../projects/cdk/classes/validation-error.ts","../../../projects/cdk/classes/taiga-ui-cdk-classes.ts"],"sourcesContent":["import {type FactoryProvider, inject, type ProviderToken} from '@angular/core';\nimport {identity} from 'rxjs';\n\nexport abstract class TuiValueTransformer<From, To = unknown> {\n public abstract toControlValue(componentValue: From): To;\n public abstract fromControlValue(controlValue: To): From;\n}\n\nexport function tuiValueTransformerFrom<\n T extends {valueTransformer: TuiValueTransformer<unknown>},\n>(token: ProviderToken<T>): FactoryProvider {\n return {\n provide: TuiValueTransformer,\n useFactory: () => inject(token).valueTransformer,\n };\n}\n\nexport class TuiNonNullableValueTransformer<T> extends TuiValueTransformer<T | null, T> {\n private prevValue!: T;\n\n public fromControlValue(value: T): T {\n this.prevValue = value;\n\n return value;\n }\n\n public toControlValue(value: T | null): T {\n this.prevValue = value ?? this.prevValue;\n\n return this.prevValue;\n }\n}\n\nexport const TUI_IDENTITY_VALUE_TRANSFORMER: TuiValueTransformer<any, any> = {\n fromControlValue: identity,\n toControlValue: identity,\n};\n","import {\n ChangeDetectorRef,\n computed,\n Directive,\n inject,\n input,\n type Provider,\n signal,\n type Type,\n untracked,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n type ControlValueAccessor,\n type FormControlStatus,\n NgControl,\n NgModel,\n} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {TUI_FALLBACK_VALUE} from '@taiga-ui/cdk/tokens';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {\n delay,\n distinctUntilChanged,\n filter,\n map,\n merge,\n startWith,\n Subject,\n switchMap,\n} from 'rxjs';\n\nimport {TUI_IDENTITY_VALUE_TRANSFORMER, TuiValueTransformer} from './value-transformer';\n\nconst FLAGS = {self: true, optional: true};\n\n/**\n * Basic ControlValueAccessor class to build form components upon\n */\n@Directive()\nexport abstract class TuiControl<T> implements ControlValueAccessor {\n private readonly fallback = inject(TUI_FALLBACK_VALUE, FLAGS) as T;\n private readonly refresh$ = new Subject<void>();\n private readonly internal = signal(this.fallback);\n\n protected readonly control = inject(NgControl, {self: true});\n protected readonly cdr = inject(ChangeDetectorRef);\n\n protected transformer =\n inject(TuiValueTransformer, FLAGS) ?? TUI_IDENTITY_VALUE_TRANSFORMER;\n\n public readonly value = computed(() => this.internal() ?? this.fallback);\n public readonly readOnly = input(false);\n /**\n * @deprecated use `<tui-textfield [invalid]=\"...\" />` instead\n * TODO(v6): delete\n */\n public readonly pseudoInvalid = input<boolean | null>(undefined, {alias: 'invalid'});\n public readonly touched = signal(false);\n public readonly status = signal<FormControlStatus | undefined>(undefined);\n public readonly disabled = computed(() => this.status() === 'DISABLED');\n public readonly interactive = computed(() => !this.disabled() && !this.readOnly());\n\n public readonly invalid = computed(() => {\n const pseudoInvalid = this.pseudoInvalid();\n\n return pseudoInvalid == null\n ? this.interactive() && this.touched() && this.status() === 'INVALID'\n : pseudoInvalid && this.interactive();\n });\n\n public readonly mode = computed(() =>\n // eslint-disable-next-line no-nested-ternary\n this.readOnly() ? 'readonly' : this.invalid() ? 'invalid' : 'valid',\n );\n\n public onTouched = EMPTY_FUNCTION;\n public onChange: (value: T) => void = EMPTY_FUNCTION;\n\n constructor() {\n this.control.valueAccessor = this;\n this.refresh$\n .pipe(\n delay(0),\n startWith(null),\n map(() => this.control.control),\n filter(Boolean),\n distinctUntilChanged(),\n switchMap((c) =>\n merge(c.valueChanges, c.statusChanges, c.events).pipe(\n startWith(null),\n ),\n ),\n takeUntilDestroyed(),\n )\n .subscribe(() => this.update());\n }\n\n public registerOnChange(onChange: (value: unknown) => void): void {\n this.refresh$.next();\n\n this.onChange = (value: T) => {\n const internal = untracked(this.internal);\n\n if (value === internal) {\n return;\n }\n\n onChange(this.transformer.toControlValue(value));\n this.internal.set(value);\n this.update();\n };\n }\n\n public registerOnTouched(onTouched: () => void): void {\n this.onTouched = () => {\n onTouched();\n this.update();\n };\n }\n\n public setDisabledState(): void {\n this.update();\n }\n\n public writeValue(value: T | null): void {\n // TODO: https://github.com/angular/angular/issues/14988\n const safe = this.control instanceof NgModel ? this.control.model : value;\n\n this.internal.set(this.transformer.fromControlValue(safe));\n this.update();\n }\n\n private update(): void {\n this.status.set(this.control.control?.status);\n this.touched.set(!!this.control.control?.touched);\n this.cdr.markForCheck();\n }\n}\n\nexport function tuiAsControl<T>(control: Type<TuiControl<T>>): Provider {\n return tuiProvide(TuiControl, control);\n}\n","import {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport class TuiValidationError<T extends Record<string, any> = Record<string, unknown>> {\n constructor(\n public readonly message: PolymorpheusContent<T>,\n public readonly context: T = {} as T,\n ) {}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-constants.mjs","sources":["../../../projects/cdk/constants/empty.ts","../../../projects/cdk/constants/handlers.ts","../../../projects/cdk/constants/matchers.ts","../../../projects/cdk/constants/regexp.ts","../../../projects/cdk/constants/svg-node-filter.ts","../../../projects/cdk/constants/unicode-chars.ts","../../../projects/cdk/constants/used-icons.ts","../../../projects/cdk/constants/version.ts","../../../projects/cdk/constants/taiga-ui-cdk-constants.ts"],"sourcesContent":["const rect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n x: 0,\n y: 0,\n} as const;\n\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\n\nexport const EMPTY_CLIENT_RECT: DOMRect = {\n ...rect,\n toJSON: () => rect,\n};\n","import {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Handler that always returns `false`.\n */\nexport const TUI_FALSE_HANDLER = (): false => false;\n\n/**\n * Handler that always returns `true`.\n */\nexport const TUI_TRUE_HANDLER = (): true => true;\nexport const TUI_STRINGIFY: PolymorpheusContent = ({$implicit}) => String($implicit);\n","import {type TuiHandler, type TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\n","export const svgNodeFilter = {\n acceptNode(node: Node): number {\n return 'ownerSVGElement' in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT;\n },\n};\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = '\\u00A0';\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = '\\u2013';\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = '\\u2014';\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = '\\u00AB';\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = '\\u00BB';\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = '\\u002D';\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `−`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = '\\u2212';\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = '\\u002B';\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = '\\u2022';\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = '\\u2026';\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = '\\u00A4';\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = '\\u200B';\n","/**\n * @description:\n * AUTOGENERATED\n *\n * Array of icons used in ./projects\n */\nexport const TUI_USED_ICONS = [\n '@img.amex',\n '@img.diners-club',\n '@img.discover',\n '@img.humo',\n '@img.jcb',\n '@img.maestro',\n '@img.mastercard',\n '@img.ru-pay',\n '@img.union-pay',\n '@img.uzcard',\n '@img.verve',\n '@tui.arrow-left',\n '@tui.arrow-right',\n '@tui.calendar',\n '@tui.check',\n '@tui.chevron-down',\n '@tui.chevron-left',\n '@tui.chevron-right',\n '@tui.chevron-up',\n '@tui.chevrons-up-down',\n '@tui.circle-alert',\n '@tui.circle-check',\n '@tui.circle-help',\n '@tui.circle-x',\n '@tui.clock',\n '@tui.code',\n '@tui.copy',\n '@tui.electron',\n '@tui.ellipsis',\n '@tui.expand',\n '@tui.eye',\n '@tui.eye-off',\n '@tui.file',\n '@tui.filter',\n '@tui.grip-vertical',\n '@tui.heart',\n '@tui.heart-filled',\n '@tui.info',\n '@tui.layout-grid',\n '@tui.link',\n '@tui.menu',\n '@tui.minimize',\n '@tui.minus',\n '@tui.mir',\n '@tui.plus',\n '@tui.rotate-ccw-square',\n '@tui.search',\n '@tui.shrink',\n '@tui.star',\n '@tui.trash',\n '@tui.visa',\n '@tui.x',\n] as const;\n","export const TUI_VERSION = '5.
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-constants.mjs","sources":["../../../projects/cdk/constants/empty.ts","../../../projects/cdk/constants/handlers.ts","../../../projects/cdk/constants/matchers.ts","../../../projects/cdk/constants/regexp.ts","../../../projects/cdk/constants/svg-node-filter.ts","../../../projects/cdk/constants/unicode-chars.ts","../../../projects/cdk/constants/used-icons.ts","../../../projects/cdk/constants/version.ts","../../../projects/cdk/constants/taiga-ui-cdk-constants.ts"],"sourcesContent":["const rect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n x: 0,\n y: 0,\n} as const;\n\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\n\nexport const EMPTY_CLIENT_RECT: DOMRect = {\n ...rect,\n toJSON: () => rect,\n};\n","import {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * Handler that always returns `false`.\n */\nexport const TUI_FALSE_HANDLER = (): false => false;\n\n/**\n * Handler that always returns `true`.\n */\nexport const TUI_TRUE_HANDLER = (): true => true;\nexport const TUI_STRINGIFY: PolymorpheusContent = ({$implicit}) => String($implicit);\n","import {type TuiHandler, type TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = String,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\n","export const svgNodeFilter = {\n acceptNode(node: Node): number {\n return 'ownerSVGElement' in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT;\n },\n};\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = '\\u00A0';\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = '\\u2013';\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = '\\u2014';\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = '\\u00AB';\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = '\\u00BB';\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = '\\u002D';\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `−`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = '\\u2212';\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = '\\u002B';\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = '\\u2022';\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = '\\u2026';\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = '\\u00A4';\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = '\\u200B';\n","/**\n * @description:\n * AUTOGENERATED\n *\n * Array of icons used in ./projects\n */\nexport const TUI_USED_ICONS = [\n '@img.amex',\n '@img.diners-club',\n '@img.discover',\n '@img.humo',\n '@img.jcb',\n '@img.maestro',\n '@img.mastercard',\n '@img.ru-pay',\n '@img.union-pay',\n '@img.uzcard',\n '@img.verve',\n '@tui.arrow-left',\n '@tui.arrow-right',\n '@tui.calendar',\n '@tui.check',\n '@tui.chevron-down',\n '@tui.chevron-left',\n '@tui.chevron-right',\n '@tui.chevron-up',\n '@tui.chevrons-up-down',\n '@tui.circle-alert',\n '@tui.circle-check',\n '@tui.circle-help',\n '@tui.circle-x',\n '@tui.clock',\n '@tui.code',\n '@tui.copy',\n '@tui.electron',\n '@tui.ellipsis',\n '@tui.expand',\n '@tui.eye',\n '@tui.eye-off',\n '@tui.file',\n '@tui.filter',\n '@tui.grip-vertical',\n '@tui.heart',\n '@tui.heart-filled',\n '@tui.info',\n '@tui.layout-grid',\n '@tui.link',\n '@tui.menu',\n '@tui.minimize',\n '@tui.minus',\n '@tui.mir',\n '@tui.plus',\n '@tui.rotate-ccw-square',\n '@tui.search',\n '@tui.shrink',\n '@tui.star',\n '@tui.trash',\n '@tui.visa',\n '@tui.x',\n] as const;\n","export const TUI_VERSION = '5.19.0';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,29 +1,30 @@
|
|
|
1
1
|
import { DOCUMENT } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { inject, input, Directive } from '@angular/core';
|
|
4
|
-
import {
|
|
3
|
+
import { inject, effect, input, Directive } from '@angular/core';
|
|
4
|
+
import { NgControl } from '@angular/forms';
|
|
5
5
|
import { tuiZonefree, tuiTakeUntilDestroyed } from '@taiga-ui/cdk/observables';
|
|
6
|
-
import { tuiProvide } from '@taiga-ui/cdk/utils/di';
|
|
7
6
|
import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
|
|
8
|
-
import {
|
|
7
|
+
import { timer, switchMap, startWith, of, delay } from 'rxjs';
|
|
9
8
|
|
|
10
9
|
class TuiNativeValidator {
|
|
11
10
|
constructor() {
|
|
12
11
|
this.el = tuiInjectElement();
|
|
13
12
|
this.doc = inject(DOCUMENT);
|
|
14
|
-
this.
|
|
15
|
-
this.sub =
|
|
16
|
-
.pipe(switchMap((
|
|
13
|
+
this.ngControl = inject(NgControl, { self: true, optional: true });
|
|
14
|
+
this.sub = timer(0) // https://github.com/angular/angular/issues/54418
|
|
15
|
+
.pipe(switchMap(() => this.control?.events?.pipe(startWith(null)) ?? of(null)), delay(0), tuiZonefree(), tuiTakeUntilDestroyed())
|
|
17
16
|
.subscribe(() => this.handleValidation());
|
|
17
|
+
/**
|
|
18
|
+
* There is no `InteropNgControl.events` for signal forms
|
|
19
|
+
* Their `InteropNgControl` state (getters `touched` / `invalid`) is backed by signals,
|
|
20
|
+
* so the effect tracks it instead
|
|
21
|
+
*/
|
|
22
|
+
this.ref = effect(() => this.handleValidation());
|
|
18
23
|
this.tuiNativeValidator = input('Invalid');
|
|
19
24
|
this.id = '';
|
|
20
25
|
}
|
|
21
26
|
get control() {
|
|
22
|
-
return this.control
|
|
23
|
-
}
|
|
24
|
-
validate(control) {
|
|
25
|
-
this.control$.next(control);
|
|
26
|
-
return null;
|
|
27
|
+
return this.ngControl?.control ?? null;
|
|
27
28
|
}
|
|
28
29
|
handleValidation() {
|
|
29
30
|
const invalid = !!this.control?.touched && this.control?.invalid;
|
|
@@ -37,13 +38,12 @@ class TuiNativeValidator {
|
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiNativeValidator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
40
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.25", type: TuiNativeValidator, isStandalone: true, selector: "[tuiNativeValidator]", inputs: { tuiNativeValidator: { classPropertyName: "tuiNativeValidator", publicName: "tuiNativeValidator", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "focusout": "handleValidation()" } },
|
|
41
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.25", type: TuiNativeValidator, isStandalone: true, selector: "[tuiNativeValidator]", inputs: { tuiNativeValidator: { classPropertyName: "tuiNativeValidator", publicName: "tuiNativeValidator", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "focusout": "handleValidation()" } }, ngImport: i0 }); }
|
|
41
42
|
}
|
|
42
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiNativeValidator, decorators: [{
|
|
43
44
|
type: Directive,
|
|
44
45
|
args: [{
|
|
45
46
|
selector: '[tuiNativeValidator]',
|
|
46
|
-
providers: [tuiProvide(NG_VALIDATORS, TuiNativeValidator, true)],
|
|
47
47
|
host: { '(focusout)': 'handleValidation()' },
|
|
48
48
|
}]
|
|
49
49
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-cdk-directives-native-validator.mjs","sources":["../../../projects/cdk/directives/native-validator/native-validator.directive.ts","../../../projects/cdk/directives/native-validator/taiga-ui-cdk-directives-native-validator.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {Directive, inject, input} from '@angular/core';\nimport {type AbstractControl,
|
|
1
|
+
{"version":3,"file":"taiga-ui-cdk-directives-native-validator.mjs","sources":["../../../projects/cdk/directives/native-validator/native-validator.directive.ts","../../../projects/cdk/directives/native-validator/taiga-ui-cdk-directives-native-validator.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {Directive, effect, inject, input} from '@angular/core';\nimport {type AbstractControl, NgControl} from '@angular/forms';\nimport {tuiTakeUntilDestroyed, tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {delay, of, startWith, switchMap, timer} from 'rxjs';\n\n@Directive({\n selector: '[tuiNativeValidator]',\n host: {'(focusout)': 'handleValidation()'},\n})\nexport class TuiNativeValidator {\n private readonly el = tuiInjectElement<HTMLInputElement>();\n private readonly doc = inject(DOCUMENT);\n private readonly ngControl = inject(NgControl, {self: true, optional: true});\n\n protected readonly sub = timer(0) // https://github.com/angular/angular/issues/54418\n .pipe(\n switchMap(() => this.control?.events?.pipe(startWith(null)) ?? of(null)),\n delay(0),\n tuiZonefree(),\n tuiTakeUntilDestroyed(),\n )\n .subscribe(() => this.handleValidation());\n\n /**\n * There is no `InteropNgControl.events` for signal forms\n * Their `InteropNgControl` state (getters `touched` / `invalid`) is backed by signals,\n * so the effect tracks it instead\n */\n protected readonly ref = effect(() => this.handleValidation());\n\n public readonly tuiNativeValidator = input('Invalid');\n public id = '';\n\n public get control(): AbstractControl | null {\n return this.ngControl?.control ?? null;\n }\n\n protected handleValidation(): void {\n const invalid = !!this.control?.touched && this.control?.invalid;\n\n // TODO: Replace with :has(:invalid) when supported\n this.el.closest('tui-textfield')?.classList.toggle('tui-invalid', invalid);\n this.el.setCustomValidity?.(invalid ? this.tuiNativeValidator() : '');\n this.el.setAttribute('aria-invalid', String(invalid));\n\n if (!this.id && invalid) {\n this.doc.dispatchEvent(new CustomEvent('tui-validator', {detail: this}));\n this.el.setAttribute('aria-describedby', this.id);\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;MAWa,kBAAkB,CAAA;AAJ/B,IAAA,WAAA,GAAA;QAKqB,IAAA,CAAA,EAAE,GAAG,gBAAgB,EAAoB;AACzC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;AACtB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;AAEzD,QAAA,IAAA,CAAA,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;AAC5B,aAAA,IAAI,CACD,SAAS,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,EACxE,KAAK,CAAC,CAAC,CAAC,EACR,WAAW,EAAE,EACb,qBAAqB,EAAE;aAE1B,SAAS,CAAC,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAE7C;;;;AAIG;QACgB,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAE9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,KAAK,CAAC,SAAS,CAAC;QAC9C,IAAA,CAAA,EAAE,GAAG,EAAE;AAmBjB,IAAA;AAjBG,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,SAAS,EAAE,OAAO,IAAI,IAAI;IAC1C;IAEU,gBAAgB,GAAA;AACtB,QAAA,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO;;AAGhE,QAAA,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC;AAC1E,QAAA,IAAI,CAAC,EAAE,CAAC,iBAAiB,GAAG,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC;AACrE,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;AAErD,QAAA,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE;AACrB,YAAA,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,eAAe,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;YACxE,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC;QACrD;IACJ;+GAxCS,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,IAAI,EAAE,EAAC,YAAY,EAAE,oBAAoB,EAAC;AAC7C,iBAAA;;;ACVD;;AAEG;;;;"}
|
|
@@ -106,11 +106,11 @@ function truncate(text, left, right) {
|
|
|
106
106
|
|
|
107
107
|
class Styles {
|
|
108
108
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: Styles, isStandalone: true, selector: "ng-component", exportAs: ["tui-truncate-5.
|
|
109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: Styles, isStandalone: true, selector: "ng-component", exportAs: ["tui-truncate-5.19.0"], ngImport: i0, template: '', isInline: true, styles: ["[tuiTruncate]:where(*[data-tui-version=\"5.19.0\"]){display:-webkit-box;letter-spacing:-1rem;-webkit-text-fill-color:transparent;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}[tuiTruncate]:where(*[data-tui-version=\"5.19.0\"])[data-lines=\"1\"]:before{white-space:nowrap}[tuiTruncate]:where(*[data-tui-version=\"5.19.0\"]):before{content:attr(data-text);inline-size:100%;letter-spacing:normal;-webkit-text-fill-color:currentColor;white-space:normal;overflow-wrap:anywhere}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
110
110
|
}
|
|
111
111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Styles, decorators: [{
|
|
112
112
|
type: Component,
|
|
113
|
-
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: `tui-truncate-${TUI_VERSION}`, styles: ["[tuiTruncate]:where(*[data-tui-version=\"5.
|
|
113
|
+
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: `tui-truncate-${TUI_VERSION}`, styles: ["[tuiTruncate]:where(*[data-tui-version=\"5.19.0\"]){display:-webkit-box;letter-spacing:-1rem;-webkit-text-fill-color:transparent;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}[tuiTruncate]:where(*[data-tui-version=\"5.19.0\"])[data-lines=\"1\"]:before{white-space:nowrap}[tuiTruncate]:where(*[data-tui-version=\"5.19.0\"]):before{content:attr(data-text);inline-size:100%;letter-spacing:normal;-webkit-text-fill-color:currentColor;white-space:normal;overflow-wrap:anywhere}\n"] }]
|
|
114
114
|
}] });
|
|
115
115
|
class TuiTruncate {
|
|
116
116
|
constructor() {
|
|
@@ -129,7 +129,7 @@ class TuiTruncate {
|
|
|
129
129
|
return this.el.innerText.trim();
|
|
130
130
|
}
|
|
131
131
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TuiTruncate, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
132
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.25", type: TuiTruncate, isStandalone: true, selector: "[tuiTruncate]", inputs: { lines: { classPropertyName: "lines", publicName: "tuiTruncate", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-tui-version": "5.
|
|
132
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.25", type: TuiTruncate, isStandalone: true, selector: "[tuiTruncate]", inputs: { lines: { classPropertyName: "lines", publicName: "tuiTruncate", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-tui-version": "5.19.0", "tuiTruncate": "" }, properties: { "attr.data-lines": "lines()", "attr.data-text": "truncated()", "style.-webkit-line-clamp": "lines()" } }, providers: [
|
|
133
133
|
TuiTruncateService,
|
|
134
134
|
WaResizeObserverService,
|
|
135
135
|
WaMutationObserverService,
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const TAIGA_VERSION = "^5.
|
|
1
|
+
export declare const TAIGA_VERSION = "^5.19.0";
|
|
@@ -129,5 +129,15 @@ exports.HTML_COMMENTS = [
|
|
|
129
129
|
},
|
|
130
130
|
comment: '`tuiHeader` values changed in v5 from size tokens to typography tokens (xxl->h1, xl->h2, l->h3, m->h4, s->h5, xs->h6, xxs->body-l). This dynamic binding still contains old size tokens that cannot be migrated automatically — update them to the v5 tokens manually. See https://taiga-ui.dev/components/header',
|
|
131
131
|
},
|
|
132
|
+
{
|
|
133
|
+
tag: 'table',
|
|
134
|
+
withAttrs: ['(tuiSortByChange)'],
|
|
135
|
+
comment: 'tuiSortByChange has been removed. Use (tuiSortChange) instead, but note its $event is now the full TuiSortChange object ({sortKey, sortDirection}), not the sort key string.',
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
tag: 'tui-scrollbar',
|
|
139
|
+
withAttrs: ['hidden'],
|
|
140
|
+
comment: 'The [hidden] input has been removed from <tui-scrollbar>. Configure a hidden scrollbar via tuiScrollbarOptionsProvider({mode: "hidden"}) (or TUI_SCROLLBAR_OPTIONS) instead — [hidden] now binds the native DOM attribute and would hide the whole element.',
|
|
141
|
+
},
|
|
132
142
|
];
|
|
133
143
|
//# sourceMappingURL=html-comments.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-comments.js","sourceRoot":"","sources":["../../../../../../../projects/cdk/schematics/ng-update/v5/steps/constants/html-comments.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"html-comments.js","sourceRoot":"","sources":["../../../../../../../projects/cdk/schematics/ng-update/v5/steps/constants/html-comments.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,16 @@ exports.IDENTIFIERS_TO_REPLACE = [
|
|
|
9
9
|
},
|
|
10
10
|
to: { name: '[]' },
|
|
11
11
|
},
|
|
12
|
+
{
|
|
13
|
+
from: {
|
|
14
|
+
name: 'TuiDocDocumentation',
|
|
15
|
+
moduleSpecifier: '@taiga-ui/addon-doc',
|
|
16
|
+
},
|
|
17
|
+
to: {
|
|
18
|
+
name: 'TuiDocAPI',
|
|
19
|
+
moduleSpecifier: '@taiga-ui/addon-doc',
|
|
20
|
+
},
|
|
21
|
+
},
|
|
12
22
|
{
|
|
13
23
|
from: {
|
|
14
24
|
name: 'TuiInputSliderModule',
|
|
@@ -19,6 +29,26 @@ exports.IDENTIFIERS_TO_REPLACE = [
|
|
|
19
29
|
moduleSpecifier: '@taiga-ui/kit',
|
|
20
30
|
},
|
|
21
31
|
},
|
|
32
|
+
{
|
|
33
|
+
from: {
|
|
34
|
+
name: 'TuiInputRangeModule',
|
|
35
|
+
moduleSpecifier: '@taiga-ui/legacy',
|
|
36
|
+
},
|
|
37
|
+
to: {
|
|
38
|
+
name: 'TuiInputRange',
|
|
39
|
+
moduleSpecifier: '@taiga-ui/kit',
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
from: {
|
|
44
|
+
name: 'TuiInputDateMultiModule',
|
|
45
|
+
moduleSpecifier: '@taiga-ui/legacy',
|
|
46
|
+
},
|
|
47
|
+
to: {
|
|
48
|
+
name: 'TuiInputDateMulti',
|
|
49
|
+
moduleSpecifier: '@taiga-ui/kit',
|
|
50
|
+
},
|
|
51
|
+
},
|
|
22
52
|
{
|
|
23
53
|
from: {
|
|
24
54
|
name: 'TuiInputMonthRangeModule',
|
|
@@ -99,6 +129,46 @@ exports.IDENTIFIERS_TO_REPLACE = [
|
|
|
99
129
|
moduleSpecifier: '@taiga-ui/core',
|
|
100
130
|
},
|
|
101
131
|
},
|
|
132
|
+
{
|
|
133
|
+
from: {
|
|
134
|
+
name: 'TuiDropdownPortal',
|
|
135
|
+
moduleSpecifier: '@taiga-ui/core',
|
|
136
|
+
},
|
|
137
|
+
to: {
|
|
138
|
+
name: 'TuiDropdownContent',
|
|
139
|
+
moduleSpecifier: '@taiga-ui/core',
|
|
140
|
+
},
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
from: {
|
|
144
|
+
name: 'TuiWithTextfield',
|
|
145
|
+
moduleSpecifier: '@taiga-ui/core',
|
|
146
|
+
},
|
|
147
|
+
to: {
|
|
148
|
+
name: 'TuiWithInput',
|
|
149
|
+
moduleSpecifier: '@taiga-ui/core',
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
from: {
|
|
154
|
+
name: 'tuiStringHashToHsl',
|
|
155
|
+
moduleSpecifier: '@taiga-ui/core',
|
|
156
|
+
},
|
|
157
|
+
to: {
|
|
158
|
+
name: 'tuiAutoColor',
|
|
159
|
+
moduleSpecifier: '@taiga-ui/kit',
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
from: {
|
|
164
|
+
name: 'tuiSwitchNgDevMode',
|
|
165
|
+
moduleSpecifier: '@taiga-ui/testing',
|
|
166
|
+
},
|
|
167
|
+
to: {
|
|
168
|
+
name: 'tuiSwitchNgDevMode',
|
|
169
|
+
moduleSpecifier: '@taiga-ui/jest-config',
|
|
170
|
+
},
|
|
171
|
+
},
|
|
102
172
|
{
|
|
103
173
|
from: {
|
|
104
174
|
name: 'TuiAlertService',
|
|
@@ -576,6 +646,16 @@ exports.IDENTIFIERS_TO_REPLACE = [
|
|
|
576
646
|
moduleSpecifier: '@taiga-ui/core',
|
|
577
647
|
},
|
|
578
648
|
},
|
|
649
|
+
{
|
|
650
|
+
from: {
|
|
651
|
+
name: 'TuiTextfieldDirective',
|
|
652
|
+
moduleSpecifier: '@taiga-ui/core',
|
|
653
|
+
},
|
|
654
|
+
to: {
|
|
655
|
+
name: 'TuiInputDirective',
|
|
656
|
+
moduleSpecifier: '@taiga-ui/core',
|
|
657
|
+
},
|
|
658
|
+
},
|
|
579
659
|
{
|
|
580
660
|
from: {
|
|
581
661
|
name: 'TuiSlider',
|