@taiga-ui/addon-table 4.65.0 → 5.0.0-canary.2e92594

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 (98) hide show
  1. package/README.md +2 -2
  2. package/components/reorder/reorder.component.d.ts +7 -10
  3. package/components/reorder/reorder.options.d.ts +1 -3
  4. package/components/table/directives/cell.directive.d.ts +2 -2
  5. package/components/table/directives/head.directive.d.ts +2 -2
  6. package/components/table/directives/resized.directive.d.ts +2 -1
  7. package/components/table/directives/sort-by.directive.d.ts +6 -11
  8. package/components/table/directives/sortable.directive.d.ts +6 -8
  9. package/components/table/directives/table.directive.d.ts +9 -23
  10. package/components/table/index.d.ts +0 -2
  11. package/components/table/pipes/table-sort.pipe.d.ts +6 -5
  12. package/components/table/table-expand/table-expand.component.d.ts +4 -6
  13. package/components/table/table.d.ts +1 -2
  14. package/components/table/table.options.d.ts +1 -19
  15. package/components/table/tbody/tbody.component.d.ts +5 -8
  16. package/components/table/td/td.component.d.ts +3 -2
  17. package/components/table/th/th.component.d.ts +8 -8
  18. package/components/table/th-group/th-group.component.d.ts +4 -7
  19. package/components/table/tr/tr.component.d.ts +3 -7
  20. package/components/table-pagination/table-pagination.component.d.ts +14 -19
  21. package/components/table-pagination/table-pagination.options.d.ts +1 -3
  22. package/directives/table-control/checkbox-row.directive.d.ts +2 -2
  23. package/directives/table-control/checkbox-table.directive.d.ts +2 -1
  24. package/directives/table-filters/abstract-table-filter.d.ts +2 -1
  25. package/directives/table-filters/generic-filter.directive.d.ts +2 -2
  26. package/directives/table-filters/table-filter.directive.d.ts +3 -3
  27. package/fesm2022/taiga-ui-addon-table-components-reorder.mjs +37 -50
  28. package/fesm2022/taiga-ui-addon-table-components-reorder.mjs.map +1 -1
  29. package/fesm2022/taiga-ui-addon-table-components-table-pagination.mjs +36 -77
  30. package/fesm2022/taiga-ui-addon-table-components-table-pagination.mjs.map +1 -1
  31. package/fesm2022/taiga-ui-addon-table-components-table.mjs +212 -406
  32. package/fesm2022/taiga-ui-addon-table-components-table.mjs.map +1 -1
  33. package/fesm2022/taiga-ui-addon-table-directives-table-control.mjs +26 -28
  34. package/fesm2022/taiga-ui-addon-table-directives-table-control.mjs.map +1 -1
  35. package/fesm2022/taiga-ui-addon-table-directives-table-filters.mjs +24 -32
  36. package/fesm2022/taiga-ui-addon-table-directives-table-filters.mjs.map +1 -1
  37. package/fesm2022/taiga-ui-addon-table-tokens.mjs.map +1 -1
  38. package/package.json +13 -30
  39. package/tokens/i18n.d.ts +2 -2
  40. package/components/table/directives/direction-order.directive.d.ts +0 -11
  41. package/components/table/providers/table.provider.d.ts +0 -5
  42. package/esm2022/components/index.mjs +0 -4
  43. package/esm2022/components/reorder/index.mjs +0 -3
  44. package/esm2022/components/reorder/reorder.component.mjs +0 -112
  45. package/esm2022/components/reorder/reorder.options.mjs +0 -16
  46. package/esm2022/components/reorder/taiga-ui-addon-table-components-reorder.mjs +0 -5
  47. package/esm2022/components/table/caption/caption.component.mjs +0 -12
  48. package/esm2022/components/table/directives/cell.directive.mjs +0 -21
  49. package/esm2022/components/table/directives/direction-order.directive.mjs +0 -33
  50. package/esm2022/components/table/directives/head.directive.mjs +0 -22
  51. package/esm2022/components/table/directives/resized.directive.mjs +0 -30
  52. package/esm2022/components/table/directives/sort-by.directive.mjs +0 -59
  53. package/esm2022/components/table/directives/sortable.directive.mjs +0 -51
  54. package/esm2022/components/table/directives/stuck.directive.mjs +0 -37
  55. package/esm2022/components/table/directives/table.directive.mjs +0 -133
  56. package/esm2022/components/table/directives/thead.directive.mjs +0 -30
  57. package/esm2022/components/table/index.mjs +0 -21
  58. package/esm2022/components/table/pipes/table-sort.pipe.mjs +0 -31
  59. package/esm2022/components/table/providers/table.provider.mjs +0 -18
  60. package/esm2022/components/table/table-expand/table-expand.component.mjs +0 -66
  61. package/esm2022/components/table/table.mjs +0 -35
  62. package/esm2022/components/table/table.options.mjs +0 -26
  63. package/esm2022/components/table/taiga-ui-addon-table-components-table.mjs +0 -5
  64. package/esm2022/components/table/tbody/tbody.component.mjs +0 -47
  65. package/esm2022/components/table/td/td.component.mjs +0 -22
  66. package/esm2022/components/table/th/th.component.mjs +0 -87
  67. package/esm2022/components/table/th-group/th-group.component.mjs +0 -33
  68. package/esm2022/components/table/tr/tr.component.mjs +0 -40
  69. package/esm2022/components/table-pagination/index.mjs +0 -3
  70. package/esm2022/components/table-pagination/table-pagination.component.mjs +0 -99
  71. package/esm2022/components/table-pagination/table-pagination.options.mjs +0 -21
  72. package/esm2022/components/table-pagination/taiga-ui-addon-table-components-table-pagination.mjs +0 -5
  73. package/esm2022/components/taiga-ui-addon-table-components.mjs +0 -5
  74. package/esm2022/directives/index.mjs +0 -3
  75. package/esm2022/directives/table-control/checkbox-row.directive.mjs +0 -45
  76. package/esm2022/directives/table-control/checkbox-table.directive.mjs +0 -30
  77. package/esm2022/directives/table-control/index.mjs +0 -5
  78. package/esm2022/directives/table-control/table-control.directive.mjs +0 -32
  79. package/esm2022/directives/table-control/table-control.mjs +0 -9
  80. package/esm2022/directives/table-control/taiga-ui-addon-table-directives-table-control.mjs +0 -5
  81. package/esm2022/directives/table-filters/abstract-table-filter.mjs +0 -3
  82. package/esm2022/directives/table-filters/generic-filter.directive.mjs +0 -26
  83. package/esm2022/directives/table-filters/index.mjs +0 -7
  84. package/esm2022/directives/table-filters/table-filter.directive.mjs +0 -44
  85. package/esm2022/directives/table-filters/table-filter.mjs +0 -2
  86. package/esm2022/directives/table-filters/table-filters.directive.mjs +0 -37
  87. package/esm2022/directives/table-filters/table-filters.mjs +0 -11
  88. package/esm2022/directives/table-filters/table-filters.pipe.mjs +0 -22
  89. package/esm2022/directives/table-filters/taiga-ui-addon-table-directives-table-filters.mjs +0 -5
  90. package/esm2022/directives/taiga-ui-addon-table-directives.mjs +0 -5
  91. package/esm2022/index.mjs +0 -4
  92. package/esm2022/taiga-ui-addon-table.mjs +0 -5
  93. package/esm2022/tokens/i18n.mjs +0 -15
  94. package/esm2022/tokens/index.mjs +0 -2
  95. package/esm2022/tokens/taiga-ui-addon-table-tokens.mjs +0 -5
  96. package/esm2022/types/comparator.mjs +0 -2
  97. package/esm2022/types/index.mjs +0 -2
  98. package/esm2022/types/taiga-ui-addon-table-types.mjs +0 -5
package/README.md CHANGED
@@ -16,13 +16,13 @@ consisting of multiple base libraries and several add-ons
16
16
 
17
17
  Install base packages:
18
18
 
19
- ```
19
+ ```bash
20
20
  npm i @taiga-ui/{cdk,core}
21
21
  ```
22
22
 
23
23
  Install addon-table:
24
24
 
25
- ```
25
+ ```bash
26
26
  npm i @taiga-ui/addon-table
27
27
  ```
28
28
 
@@ -1,20 +1,17 @@
1
- import { EventEmitter } from '@angular/core';
2
1
  import { type TuiContext } from '@taiga-ui/cdk/types';
3
2
  import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class TuiReorder<T> {
6
5
  private dragging;
7
6
  protected order: Map<number, number>;
8
- protected unsortedItems: readonly T[];
7
+ protected readonly unsortedItems: import("@angular/core").WritableSignal<readonly T[]>;
9
8
  protected readonly options: import("./reorder.options").TuiReorderOptions;
10
- protected readonly showHideText$: import("rxjs").Observable<string>;
11
- enabled: readonly T[];
12
- readonly itemsChange: EventEmitter<T[]>;
13
- readonly enabledChange: EventEmitter<T[]>;
14
- set items(items: readonly T[]);
15
- content: PolymorpheusContent<TuiContext<T> & {
9
+ protected readonly showHideText: import("@angular/core").Signal<string>;
10
+ readonly enabled: import("@angular/core").ModelSignal<readonly T[]>;
11
+ readonly items: import("@angular/core").ModelSignal<readonly T[]>;
12
+ readonly content: import("@angular/core").InputSignal<PolymorpheusContent<TuiContext<T> & {
16
13
  index: number;
17
- }>;
14
+ }>>;
18
15
  protected onDrag(): void;
19
16
  protected onDrop(): void;
20
17
  protected isEnabled(item: T): boolean;
@@ -25,5 +22,5 @@ export declare class TuiReorder<T> {
25
22
  private updateItems;
26
23
  private updateEnabled;
27
24
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiReorder<any>, never>;
28
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiReorder<any>, "tui-reorder", never, { "enabled": { "alias": "enabled"; "required": false; }; "items": { "alias": "items"; "required": false; }; "content": { "alias": "content"; "required": false; }; }, { "itemsChange": "itemsChange"; "enabledChange": "enabledChange"; }, never, never, true, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiReorder<any>, "tui-reorder", never, { "enabled": { "alias": "enabled"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; }, { "enabled": "enabledChange"; "items": "itemsChange"; }, never, never, true, never>;
29
26
  }
@@ -1,4 +1,3 @@
1
- import { InjectionToken, type Provider } from '@angular/core';
2
1
  export interface TuiReorderOptions {
3
2
  readonly icons: {
4
3
  readonly drag: string;
@@ -7,5 +6,4 @@ export interface TuiReorderOptions {
7
6
  };
8
7
  }
9
8
  export declare const TUI_REORDER_DEFAULT_OPTIONS: TuiReorderOptions;
10
- export declare const TUI_REORDER_OPTIONS: InjectionToken<TuiReorderOptions>;
11
- export declare function tuiReorderOptionsProvider(options: Partial<TuiReorderOptions>): Provider;
9
+ export declare const TUI_REORDER_OPTIONS: import("@angular/core").InjectionToken<TuiReorderOptions>, tuiReorderOptionsProvider: (item: Partial<TuiReorderOptions> | (() => Partial<TuiReorderOptions>)) => import("@angular/core").FactoryProvider;
@@ -1,8 +1,8 @@
1
1
  import { TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiTableCell {
4
- tuiCell: string;
4
+ readonly tuiCell: import("@angular/core").InputSignal<string>;
5
5
  readonly template: TemplateRef<any>;
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableCell, never>;
7
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableCell, "ng-template[tuiCell]", never, { "tuiCell": { "alias": "tuiCell"; "required": false; }; }, {}, never, never, true, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableCell, "ng-template[tuiCell]", never, { "tuiCell": { "alias": "tuiCell"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8
8
  }
@@ -1,8 +1,8 @@
1
1
  import { TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiTableHead<T extends Partial<Record<keyof T, unknown>>> {
4
- tuiHead: string | keyof T;
4
+ readonly tuiHead: import("@angular/core").InputSignal<string | keyof T>;
5
5
  readonly template: TemplateRef<any>;
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableHead<any>, never>;
7
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableHead<any>, "[tuiHead]", never, { "tuiHead": { "alias": "tuiHead"; "required": true; }; }, {}, never, never, true, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableHead<any>, "[tuiHead]", never, { "tuiHead": { "alias": "tuiHead"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
8
8
  }
@@ -2,7 +2,8 @@ import * as i0 from "@angular/core";
2
2
  export declare class TuiTableResized {
3
3
  private readonly doc;
4
4
  private readonly el;
5
- readonly tuiResized: import("rxjs").Observable<number>;
5
+ private readonly tuiResized$;
6
+ readonly tuiResized: import("@angular/core").OutputRef<number>;
6
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableResized, never>;
7
8
  static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableResized, "[tuiResized]", never, {}, { "tuiResized": "tuiResized"; }, never, never, true, never>;
8
9
  }
@@ -1,18 +1,13 @@
1
- import { type Observable } from 'rxjs';
2
1
  import { type TuiSortChange } from '../table.options';
3
2
  import * as i0 from "@angular/core";
4
3
  export declare class TuiTableSortBy<T extends Partial<Record<keyof T, unknown>>> {
5
- private readonly sortables;
6
4
  private readonly table;
7
- /**
8
- * @deprecated: use tuiSortChange
9
- */
10
- readonly tuiSortByChange: Observable<keyof T | null>;
11
- readonly tuiSortChange: Observable<TuiSortChange<T>>;
12
- tuiSortBy: string | keyof T | null;
13
- set sortBy(sortBy: string | keyof T | null);
14
- protected checkSortables(): void;
5
+ private readonly sortables;
6
+ private readonly sortChange;
7
+ protected readonly sortOutput: import("@angular/core").EffectRef;
8
+ readonly tuiSortChange: import("@angular/core").OutputEmitterRef<TuiSortChange<T>>;
9
+ readonly tuiSortBy: import("@angular/core").InputSignal<string | keyof T | null>;
15
10
  private getKey;
16
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableSortBy<any>, never>;
17
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableSortBy<any>, "table[tuiTable][tuiSortBy]", never, { "sortBy": { "alias": "tuiSortBy"; "required": false; }; }, { "tuiSortByChange": "tuiSortByChange"; "tuiSortChange": "tuiSortChange"; }, ["sortables"], never, true, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableSortBy<any>, "table[tuiTable][tuiSortBy]", never, { "tuiSortBy": { "alias": "tuiSortBy"; "required": false; "isSignal": true; }; }, { "tuiSortChange": "tuiSortChange"; }, ["sortables"], never, true, never>;
18
13
  }
@@ -1,18 +1,16 @@
1
1
  import { type BooleanInput } from '@angular/cdk/coercion';
2
- import { type OnChanges } from '@angular/core';
3
2
  import { type TuiComparator } from '@taiga-ui/addon-table/types';
4
3
  import * as i0 from "@angular/core";
5
- export declare class TuiTableSortable<T extends Partial<Record<keyof T, unknown>>> implements OnChanges {
4
+ export declare class TuiTableSortable<T extends Partial<Record<keyof T, unknown>>> {
6
5
  private readonly table;
7
6
  private readonly th;
8
7
  private readonly sortBy;
9
- sortable: BooleanInput;
8
+ readonly sortable: import("@angular/core").InputSignalWithTransform<BooleanInput, any>;
9
+ protected readonly setThSorter: import("@angular/core").EffectRef;
10
+ protected readonly setTableSorter: import("@angular/core").EffectRef;
11
+ readonly sorter: import("@angular/core").Signal<TuiComparator<T>>;
10
12
  get key(): keyof T;
11
- sorter: TuiComparator<T>;
12
- ngOnChanges(): void;
13
- check(): void;
14
13
  private get match();
15
14
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableSortable<any>, never>;
16
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableSortable<any>, "th[tuiTh][tuiSortable]", never, { "sortable": { "alias": "tuiSortable"; "required": false; }; }, {}, never, never, true, never>;
17
- static ngAcceptInputType_sortable: any;
15
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableSortable<any>, "th[tuiTh][tuiSortable]", never, { "sortable": { "alias": "tuiSortable"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
18
16
  }
@@ -1,36 +1,22 @@
1
- import { type AfterViewInit, EventEmitter, type OnChanges } from '@angular/core';
2
1
  import { type TuiComparator } from '@taiga-ui/addon-table/types';
3
2
  import { type TuiTextfieldOptions } from '@taiga-ui/core/components/textfield';
4
- import { type TuiSizeL, type TuiSizeS } from '@taiga-ui/core/types';
5
- import { type Observable, Subject } from 'rxjs';
6
3
  import { TuiSortDirection, type TuiTableSortChange } from '../table.options';
7
4
  import * as i0 from "@angular/core";
8
5
  import * as i1 from "./stuck.directive";
9
- export declare class TuiTableDirective<T extends Partial<Record<keyof T, unknown>>> implements AfterViewInit, TuiTextfieldOptions, OnChanges {
6
+ export declare class TuiTableDirective<T extends Partial<Record<keyof T, unknown>>> implements TuiTextfieldOptions {
10
7
  private readonly options;
11
- private readonly cdr;
12
8
  protected readonly nothing: undefined;
13
- columns: ReadonlyArray<string | keyof T>;
14
- direction: TuiSortDirection;
15
- sorter: TuiComparator<T>;
16
- /**
17
- * @deprecated: use sortChange
18
- */
19
- readonly directionChange: EventEmitter<TuiSortDirection>;
20
- /**
21
- * @deprecated: use sortChange
22
- */
23
- readonly sorterChange: EventEmitter<TuiComparator<T> | null>;
24
- readonly sortChange: Observable<TuiTableSortChange<T>>;
9
+ protected readonly computedSortChange: import("@angular/core").Signal<TuiTableSortChange<T>>;
10
+ protected readonly sortChangeOutput: import("@angular/core").EffectRef;
11
+ readonly columns: import("@angular/core").InputSignal<readonly (string | keyof T)[]>;
12
+ readonly size: import("@angular/core").InputSignal<"s" | "m" | "l">;
13
+ readonly direction: import("@angular/core").ModelSignal<TuiSortDirection>;
14
+ readonly sorter: import("@angular/core").ModelSignal<TuiComparator<T>>;
15
+ readonly sortChange: import("@angular/core").OutputEmitterRef<TuiTableSortChange<T>>;
25
16
  readonly appearance: import("@angular/core").WritableSignal<string>;
26
- readonly size: import("@angular/core").WritableSignal<"m" | "l" | "s">;
27
17
  readonly cleaner: import("@angular/core").WritableSignal<boolean>;
28
- readonly change$: Subject<void>;
29
- set sizeSetter(size: TuiSizeL | TuiSizeS);
30
18
  updateSorterAndDirection(sorter: TuiComparator<T> | null): void;
31
- ngOnChanges(): void;
32
- ngAfterViewInit(): void;
33
19
  updateSorter(sorter: TuiComparator<T> | null, direction?: TuiSortDirection): void;
34
20
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableDirective<any>, never>;
35
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableDirective<any>, "table[tuiTable]", never, { "columns": { "alias": "columns"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "sorter": { "alias": "sorter"; "required": false; }; "sizeSetter": { "alias": "size"; "required": false; }; }, { "directionChange": "directionChange"; "sorterChange": "sorterChange"; "sortChange": "sortChange"; }, never, never, true, [{ directive: typeof i1.TuiStuck; inputs: {}; outputs: {}; }]>;
21
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableDirective<any>, "table[tuiTable]", never, { "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "sorter": { "alias": "sorter"; "required": false; "isSignal": true; }; }, { "direction": "directionChange"; "sorter": "sorterChange"; "sortChange": "sortChange"; }, never, never, true, [{ directive: typeof i1.TuiStuck; inputs: {}; outputs: {}; }]>;
36
22
  }
@@ -1,6 +1,5 @@
1
1
  export * from './caption/caption.component';
2
2
  export * from './directives/cell.directive';
3
- export * from './directives/direction-order.directive';
4
3
  export * from './directives/head.directive';
5
4
  export * from './directives/resized.directive';
6
5
  export * from './directives/sort-by.directive';
@@ -9,7 +8,6 @@ export * from './directives/stuck.directive';
9
8
  export * from './directives/table.directive';
10
9
  export * from './directives/thead.directive';
11
10
  export * from './pipes/table-sort.pipe';
12
- export * from './providers/table.provider';
13
11
  export * from './table';
14
12
  export * from './table.options';
15
13
  export * from './table-expand/table-expand.component';
@@ -1,9 +1,10 @@
1
1
  import { type PipeTransform } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- export declare class TuiTableSortPipe implements PipeTransform {
3
+ export declare class TuiTableSortPipe<T> implements PipeTransform {
4
4
  private readonly table;
5
- transform<T>(data?: readonly T[] | null): readonly T[];
6
- private sort;
7
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableSortPipe, never>;
8
- static ɵpipe: i0.ɵɵPipeDeclaration<TuiTableSortPipe, "tuiTableSort", true>;
5
+ private readonly data;
6
+ private readonly sorted;
7
+ transform(data?: readonly T[] | null): readonly T[];
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableSortPipe<any>, never>;
9
+ static ɵpipe: i0.ɵɵPipeDeclaration<TuiTableSortPipe<any>, "tuiTableSort", true>;
9
10
  }
@@ -1,20 +1,18 @@
1
- import { EventEmitter } from '@angular/core';
2
1
  import { Subject } from 'rxjs';
3
2
  import * as i0 from "@angular/core";
4
3
  import * as i1 from "@taiga-ui/kit/directives/present";
5
4
  export declare class TuiTableExpand {
6
- private readonly content?;
5
+ private readonly content;
7
6
  private readonly el;
8
7
  private readonly server;
9
8
  protected readonly transitioning: import("@angular/core").WritableSignal<boolean>;
10
9
  protected readonly contentHeight: import("@angular/core").Signal<number>;
11
10
  protected readonly visible$: Subject<boolean>;
12
11
  protected readonly sub: import("rxjs").Subscription;
13
- readonly expandedChange: EventEmitter<boolean>;
14
- readonly expanded: import("@angular/core").WritableSignal<boolean>;
15
- set expandedSetter(open: boolean);
12
+ readonly expanded: import("@angular/core").ModelSignal<boolean>;
13
+ protected readonly transitioningEffect: import("@angular/core").EffectRef;
16
14
  toggle(): void;
17
15
  private update;
18
16
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableExpand, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableExpand, "tui-table-expand", never, { "expandedSetter": { "alias": "expanded"; "required": false; }; }, { "expandedChange": "expandedChange"; }, never, ["*"], true, [{ directive: typeof i1.TuiPresent; inputs: {}; outputs: { "tuiPresentChange": "tuiPresentChange"; }; }]>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableExpand, "tui-table-expand", never, { "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; }, never, ["*"], true, [{ directive: typeof i1.TuiPresent; inputs: {}; outputs: { "tuiPresent": "tuiPresent"; }; }]>;
20
18
  }
@@ -1,6 +1,5 @@
1
1
  import { TuiTableCaption } from './caption/caption.component';
2
2
  import { TuiTableCell } from './directives/cell.directive';
3
- import { TuiTableDirectionOrder } from './directives/direction-order.directive';
4
3
  import { TuiTableHead } from './directives/head.directive';
5
4
  import { TuiTableResized } from './directives/resized.directive';
6
5
  import { TuiTableSortBy } from './directives/sort-by.directive';
@@ -14,4 +13,4 @@ import { TuiTableTd } from './td/td.component';
14
13
  import { TuiTableTh } from './th/th.component';
15
14
  import { TuiTableThGroup } from './th-group/th-group.component';
16
15
  import { TuiTableTr } from './tr/tr.component';
17
- export declare const TuiTable: readonly [typeof TuiTableDirective, typeof TuiTableCaption, typeof TuiTableTbody, typeof TuiTableThGroup, typeof TuiTableTh, typeof TuiTableTd, typeof TuiTableTr, typeof TuiTableCell, typeof TuiTableHead, typeof TuiTableSortBy, typeof TuiTableSortable, typeof TuiTableThead, typeof TuiTableResized, typeof TuiTableSortPipe, typeof TuiTableDirectionOrder, typeof TuiTableExpand];
16
+ export declare const TuiTable: readonly [typeof TuiTableDirective, typeof TuiTableCaption, typeof TuiTableTbody, typeof TuiTableThGroup, typeof TuiTableTh, typeof TuiTableTd, typeof TuiTableTr, typeof TuiTableCell, typeof TuiTableHead, typeof TuiTableSortBy, typeof TuiTableSortable, typeof TuiTableThead, typeof TuiTableResized, typeof TuiTableSortPipe, typeof TuiTableExpand];
@@ -1,4 +1,3 @@
1
- import { InjectionToken, type Provider } from '@angular/core';
2
1
  import { type TuiComparator } from '@taiga-ui/addon-table/types';
3
2
  import { type TuiSizeL, type TuiSizeS } from '@taiga-ui/core/types';
4
3
  export declare const TuiSortDirection: {
@@ -7,27 +6,11 @@ export declare const TuiSortDirection: {
7
6
  };
8
7
  export type TuiSortDirection = (typeof TuiSortDirection)[keyof typeof TuiSortDirection];
9
8
  export interface TuiSortChange<T> {
10
- /**
11
- * @deprecated use sortKey
12
- */
13
- sortBy: keyof T | null;
14
9
  sortKey: keyof T | null;
15
- /**
16
- * @deprecated use sortDirection
17
- */
18
- orderBy: TuiSortDirection;
19
10
  sortDirection: TuiSortDirection;
20
11
  }
21
12
  export interface TuiTableSortChange<T> {
22
- /**
23
- * @deprecated use sortComparator
24
- */
25
- sortBy: TuiComparator<T> | null;
26
13
  sortComparator: TuiComparator<T> | null;
27
- /**
28
- * @deprecated use sortDirection
29
- */
30
- orderBy: TuiSortDirection;
31
14
  sortDirection: TuiSortDirection;
32
15
  }
33
16
  export interface TuiTableOptions {
@@ -44,5 +27,4 @@ export interface TuiTableOptions {
44
27
  readonly sticky: boolean;
45
28
  }
46
29
  export declare const TUI_TABLE_DEFAULT_OPTIONS: TuiTableOptions;
47
- export declare const TUI_TABLE_OPTIONS: InjectionToken<TuiTableOptions>;
48
- export declare function tuiTableOptionsProvider(options: Partial<TuiTableOptions>): Provider;
30
+ export declare const TUI_TABLE_OPTIONS: import("@angular/core").InjectionToken<TuiTableOptions>, tuiTableOptionsProvider: (item: Partial<TuiTableOptions> | (() => Partial<TuiTableOptions>)) => import("@angular/core").FactoryProvider;
@@ -1,4 +1,3 @@
1
- import { EventEmitter, type QueryList } from '@angular/core';
2
1
  import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
3
2
  import { TuiTableDirective } from '../directives/table.directive';
4
3
  import { TuiTableTr } from '../tr/tr.component';
@@ -6,16 +5,14 @@ import * as i0 from "@angular/core";
6
5
  export declare class TuiTableTbody<T extends Partial<Record<keyof T, unknown>>> {
7
6
  private readonly options;
8
7
  protected readonly table: TuiTableDirective<T>;
9
- readonly rows: QueryList<TuiTableTr<T>>;
10
- data: readonly T[];
8
+ readonly rows: import("@angular/core").Signal<readonly TuiTableTr<T>[]>;
9
+ readonly data: import("@angular/core").InputSignal<readonly T[]>;
11
10
  /** @deprecated: drop in v5.0, use TuiTableExpand */
12
- heading: PolymorpheusContent;
11
+ readonly heading: import("@angular/core").InputSignal<PolymorpheusContent>;
13
12
  /** @deprecated: drop in v5.0, use TuiTableExpand */
14
- open: boolean;
15
- /** @deprecated: drop in v5.0, use TuiTableExpand */
16
- readonly openChange: EventEmitter<boolean>;
13
+ readonly open: import("@angular/core").ModelSignal<boolean>;
17
14
  /** @deprecated: drop in v5.0, use TuiTableExpand */
18
15
  protected onClick: () => void;
19
16
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableTbody<any>, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableTbody<any>, "tbody[tuiTbody]", never, { "data": { "alias": "data"; "required": false; }; "heading": { "alias": "heading"; "required": false; }; "open": { "alias": "open"; "required": false; }; }, { "openChange": "openChange"; }, ["rows"], ["*"], true, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableTbody<any>, "tbody[tuiTbody]", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; }, { "open": "openChange"; }, ["rows"], ["*"], true, never>;
21
18
  }
@@ -1,8 +1,9 @@
1
+ import { TuiControl } from '@taiga-ui/cdk/classes';
1
2
  import { TuiTextfieldComponent } from '@taiga-ui/core/components/textfield';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare class TuiTableTd {
4
- protected readonly control: unknown;
5
- protected readonly textfield?: TuiTextfieldComponent<unknown>;
5
+ protected readonly control: import("@angular/core").Signal<TuiControl<any> | undefined>;
6
+ protected readonly textfield: import("@angular/core").Signal<TuiTextfieldComponent<any> | undefined>;
6
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableTd, never>;
7
8
  static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableTd, "th[tuiTd], td[tuiTd]", never, {}, {}, ["control", "textfield"], ["*"], true, never>;
8
9
  }
@@ -4,14 +4,14 @@ import * as i0 from "@angular/core";
4
4
  export declare class TuiTableTh<T extends Partial<Record<keyof T, unknown>>> {
5
5
  private readonly options;
6
6
  private readonly head;
7
- protected width: number | null;
7
+ protected readonly width: import("@angular/core").WritableSignal<number | null>;
8
8
  protected readonly table: TuiTableDirective<T> | null;
9
- minWidth: number;
10
- maxWidth: number;
11
- sorter: TuiComparator<T> | null;
12
- resizable: boolean;
13
- sticky: boolean;
14
- requiredSort: boolean;
9
+ readonly minWidth: import("@angular/core").InputSignal<number>;
10
+ readonly maxWidth: import("@angular/core").InputSignal<number>;
11
+ sorter: import("@angular/core").ModelSignal<TuiComparator<T> | null>;
12
+ readonly resizable: import("@angular/core").InputSignal<boolean>;
13
+ readonly sticky: import("@angular/core").InputSignal<boolean>;
14
+ readonly requiredSort: import("@angular/core").InputSignal<boolean>;
15
15
  get key(): keyof T;
16
16
  protected get isCurrent(): boolean;
17
17
  protected get icon(): string;
@@ -19,7 +19,7 @@ export declare class TuiTableTh<T extends Partial<Record<keyof T, unknown>>> {
19
19
  protected onResized(width: number): void;
20
20
  private get isCurrentAndDescDirection();
21
21
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableTh<any>, never>;
22
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableTh<any>, "th[tuiTh]", never, { "minWidth": { "alias": "minWidth"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "sorter": { "alias": "sorter"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "sticky": { "alias": "sticky"; "required": false; }; "requiredSort": { "alias": "requiredSort"; "required": false; }; }, {}, never, ["*"], true, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableTh<any>, "th[tuiTh]", never, { "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; "sorter": { "alias": "sorter"; "required": false; "isSignal": true; }; "resizable": { "alias": "resizable"; "required": false; "isSignal": true; }; "sticky": { "alias": "sticky"; "required": false; "isSignal": true; }; "requiredSort": { "alias": "requiredSort"; "required": false; "isSignal": true; }; }, { "sorter": "sorterChange"; }, never, ["*"], true, never>;
23
23
  }
24
24
  export declare class TuiTableSortKeyException extends Error {
25
25
  constructor();
@@ -1,15 +1,12 @@
1
- import { type AfterContentInit, type QueryList } from '@angular/core';
2
- import { type Observable } from 'rxjs';
3
1
  import { TuiTableHead } from '../directives/head.directive';
4
2
  import { TuiTableDirective } from '../directives/table.directive';
5
3
  import { TuiTableTh } from '../th/th.component';
6
4
  import * as i0 from "@angular/core";
7
- export declare class TuiTableThGroup<T extends Partial<Record<keyof T, unknown>>> implements AfterContentInit {
8
- protected readonly th: TuiTableTh<T>;
9
- protected readonly heads: QueryList<TuiTableHead<T>>;
10
- protected heads$: Observable<Record<string | keyof T, TuiTableHead<T>>> | null;
5
+ export declare class TuiTableThGroup<T extends Partial<Record<keyof T, unknown>>> {
6
+ protected readonly th: import("@angular/core").Signal<TuiTableTh<T> | undefined>;
7
+ protected readonly heads: import("@angular/core").Signal<readonly TuiTableHead<T>[]>;
8
+ protected readonly computedHeads: import("@angular/core").Signal<Record<string | keyof T, TuiTableHead<T>>>;
11
9
  protected readonly table: TuiTableDirective<T>;
12
- ngAfterContentInit(): void;
13
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableThGroup<any>, never>;
14
11
  static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableThGroup<any>, "tr[tuiThGroup]", never, {}, {}, ["th", "heads"], ["*"], true, never>;
15
12
  }
@@ -1,16 +1,12 @@
1
- import { type AfterContentInit } from '@angular/core';
2
1
  import { TuiTableCell } from '../directives/cell.directive';
3
2
  import { TuiTableDirective } from '../directives/table.directive';
4
3
  import * as i0 from "@angular/core";
5
- export declare class TuiTableTr<T extends Partial<Record<keyof T, unknown>>> implements AfterContentInit {
4
+ export declare class TuiTableTr<T extends Partial<Record<keyof T, unknown>>> {
6
5
  private readonly cells;
7
6
  private readonly body;
8
- private readonly contentReady$;
9
7
  protected readonly table: TuiTableDirective<T>;
10
- protected readonly height: import("@angular/core").Signal<number>;
11
- protected readonly cells$: import("rxjs").Observable<Record<string | keyof T, TuiTableCell>>;
12
- protected readonly item$: import("rxjs").Observable<Record<string | keyof T, unknown>>;
13
- ngAfterContentInit(): void;
8
+ protected readonly items: import("@angular/core").Signal<Record<string | keyof T, TuiTableCell>>;
9
+ protected readonly item: import("@angular/core").Signal<Record<string | keyof T, unknown>>;
14
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableTr<any>, never>;
15
11
  static ɵcmp: i0.ɵɵComponentDeclaration<TuiTableTr<any>, "tr[tuiTr]", never, {}, {}, ["cells"], ["*"], true, never>;
16
12
  }
@@ -1,4 +1,3 @@
1
- import { EventEmitter } from '@angular/core';
2
1
  import { type TuiTablePaginationOptions } from './table-pagination.options';
3
2
  import * as i0 from "@angular/core";
4
3
  export interface TuiTablePaginationEvent {
@@ -6,32 +5,28 @@ export interface TuiTablePaginationEvent {
6
5
  readonly size: number;
7
6
  }
8
7
  export declare class TuiTablePagination {
9
- private readonly options;
10
- protected open: boolean;
11
- protected readonly icons: import("@taiga-ui/core/tokens").TuiSpinIcons;
12
- protected readonly spinTexts$: import("rxjs").Observable<readonly [previous: string, next: string]>;
13
- protected readonly texts$: import("rxjs").Observable<{
8
+ protected readonly options: TuiTablePaginationOptions;
9
+ protected readonly icons: import("@taiga-ui/core/tokens").TuiCommonIcons;
10
+ protected readonly spinTexts: import("@angular/core").Signal<readonly [previous: string, next: string]>;
11
+ protected readonly texts: import("@angular/core").Signal<{
14
12
  linesPerPage: string;
15
13
  of: string;
16
14
  pages: string;
17
15
  }>;
18
- protected readonly commonIcons: import("@taiga-ui/core/tokens").TuiCommonIcons;
19
- items: readonly number[];
20
- total: number;
21
- page: number;
22
- size: number;
23
- readonly paginationChange: EventEmitter<TuiTablePaginationEvent>;
16
+ protected readonly pages: import("@angular/core").Signal<number>;
17
+ protected readonly end: import("@angular/core").Signal<number>;
18
+ protected readonly rightDisabled: import("@angular/core").Signal<boolean>;
19
+ protected readonly pagination: import("@angular/core").Signal<TuiTablePaginationEvent>;
20
+ readonly items: import("@angular/core").InputSignal<readonly number[]>;
21
+ readonly total: import("@angular/core").InputSignal<number>;
22
+ readonly page: import("@angular/core").ModelSignal<number>;
23
+ readonly size: import("@angular/core").ModelSignal<number>;
24
+ readonly paginationChange: import("@angular/core").OutputEmitterRef<TuiTablePaginationEvent>;
24
25
  onItem(size: number): void;
25
- protected get pages(): number;
26
- protected get showPages(): boolean;
27
26
  protected get sizeOptionContent(): TuiTablePaginationOptions['sizeOptionContent'];
28
27
  protected get start(): number;
29
- protected get end(): number;
30
- protected get leftDisabled(): boolean;
31
- protected get rightDisabled(): boolean;
32
- protected get pagination(): TuiTablePaginationEvent;
33
28
  protected back(): void;
34
29
  protected forth(): void;
35
30
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTablePagination, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiTablePagination, "tui-table-pagination", never, { "items": { "alias": "items"; "required": false; }; "total": { "alias": "total"; "required": false; }; "page": { "alias": "page"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "paginationChange": "paginationChange"; }, never, never, true, never>;
31
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiTablePagination, "tui-table-pagination", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": false; "isSignal": true; }; "page": { "alias": "page"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "page": "pageChange"; "size": "sizeChange"; "paginationChange": "paginationChange"; }, never, never, true, never>;
37
32
  }
@@ -1,4 +1,3 @@
1
- import { InjectionToken, type Provider } from '@angular/core';
2
1
  import { type TuiContext } from '@taiga-ui/cdk/types';
3
2
  import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
4
3
  export interface TuiTablePaginationOptions {
@@ -13,5 +12,4 @@ export declare const TUI_TABLE_PAGINATION_DEFAULT_OPTIONS: TuiTablePaginationOpt
13
12
  /**
14
13
  * Default parameters for TablePagination component
15
14
  */
16
- export declare const TUI_TABLE_PAGINATION_OPTIONS: InjectionToken<TuiTablePaginationOptions>;
17
- export declare function tuiTablePaginationOptionsProvider(options: Partial<TuiTablePaginationOptions>): Provider;
15
+ export declare const TUI_TABLE_PAGINATION_OPTIONS: import("@angular/core").InjectionToken<TuiTablePaginationOptions>, tuiTablePaginationOptionsProvider: (item: Partial<TuiTablePaginationOptions> | (() => Partial<TuiTablePaginationOptions>)) => import("@angular/core").FactoryProvider;
@@ -4,10 +4,10 @@ export declare class TuiCheckboxRowDirective<T> implements OnInit, OnDestroy {
4
4
  private readonly control;
5
5
  private readonly parent;
6
6
  protected readonly checked: import("@angular/core").Signal<boolean>;
7
- tuiCheckboxRow: T;
7
+ readonly tuiCheckboxRow: import("@angular/core").InputSignal<T>;
8
8
  ngOnInit(): void;
9
9
  ngOnDestroy(): void;
10
10
  protected onChange(): void;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiCheckboxRowDirective<any>, never>;
12
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiCheckboxRowDirective<any>, "[tuiCheckbox][tuiCheckboxRow]", never, { "tuiCheckboxRow": { "alias": "tuiCheckboxRow"; "required": false; }; }, {}, never, never, true, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiCheckboxRowDirective<any>, "[tuiCheckbox][tuiCheckboxRow]", never, { "tuiCheckboxRow": { "alias": "tuiCheckboxRow"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
13
13
  }
@@ -1,9 +1,10 @@
1
1
  import { TuiTableControlDirective } from './table-control.directive';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiCheckboxTableDirective {
4
+ private readonly el;
4
5
  private readonly control;
5
6
  protected readonly parent: TuiTableControlDirective<any>;
6
- protected readonly update: import("@angular/core").Signal<void>;
7
+ protected readonly update: import("@angular/core").EffectRef;
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiCheckboxTableDirective, never>;
8
9
  static ɵdir: i0.ɵɵDirectiveDeclaration<TuiCheckboxTableDirective, "[tuiCheckbox][tuiCheckboxTable]", never, {}, {}, never, never, true, never>;
9
10
  }
@@ -1,3 +1,4 @@
1
+ import { type Signal } from '@angular/core';
1
2
  export declare abstract class AbstractTuiTableFilter<T, G> {
2
- abstract filter(item: T, value: G): boolean;
3
+ abstract filter: Signal<(item: T, value: G) => boolean>;
3
4
  }
@@ -1,7 +1,7 @@
1
1
  import { AbstractTuiTableFilter } from './abstract-table-filter';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiGenericFilter<T, G> extends AbstractTuiTableFilter<T, G> {
4
- filter: (item: T, value: G) => boolean;
4
+ readonly filter: import("@angular/core").InputSignal<(item: T, value: G) => boolean>;
5
5
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiGenericFilter<any, any>, never>;
6
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiGenericFilter<any, any>, "[tuiGenericFilter]", never, { "filter": { "alias": "tuiGenericFilter"; "required": false; }; }, {}, never, never, true, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiGenericFilter<any, any>, "[tuiGenericFilter]", never, { "filter": { "alias": "tuiGenericFilter"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7
7
  }
@@ -7,12 +7,12 @@ export declare class TuiTableFilterDirective<T> implements OnInit, OnDestroy, Tu
7
7
  private readonly delegate;
8
8
  private readonly control;
9
9
  protected readonly filters: TuiTableFiltersDirective<any>;
10
- tuiTableFilter?: keyof T;
10
+ protected readonly key: import("@angular/core").Signal<string | keyof T | undefined>;
11
+ readonly tuiTableFilter: import("@angular/core").InputSignal<keyof T | undefined>;
11
12
  readonly refresh$: import("rxjs").Observable<any>;
12
13
  ngOnInit(): void;
13
14
  ngOnDestroy(): void;
14
15
  filter(item: T): boolean;
15
- private get key();
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableFilterDirective<any>, never>;
17
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableFilterDirective<any>, "[tuiTableFilter]", never, { "tuiTableFilter": { "alias": "tuiTableFilter"; "required": false; }; }, {}, never, never, true, never>;
17
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableFilterDirective<any>, "[tuiTableFilter]", never, { "tuiTableFilter": { "alias": "tuiTableFilter"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
18
18
  }