@taiga-ui/addon-table 3.39.1-dev.main.f92cc75 → 3.40.0-canary.fda819a

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 (36) hide show
  1. package/README.md +3 -3
  2. package/bundles/taiga-ui-addon-table-components-reorder.umd.js +28 -9
  3. package/bundles/taiga-ui-addon-table-components-reorder.umd.js.map +1 -1
  4. package/bundles/taiga-ui-addon-table-components-table-pagination.umd.js +12 -4
  5. package/bundles/taiga-ui-addon-table-components-table-pagination.umd.js.map +1 -1
  6. package/bundles/taiga-ui-addon-table-components-table.umd.js +52 -16
  7. package/bundles/taiga-ui-addon-table-components-table.umd.js.map +1 -1
  8. package/components/reorder/index.d.ts +1 -0
  9. package/components/reorder/reorder.component.d.ts +3 -1
  10. package/components/reorder/reorder.options.d.ts +11 -0
  11. package/components/table/directives/table.directive.d.ts +6 -4
  12. package/components/table/index.d.ts +1 -0
  13. package/components/table/table.options.d.ts +17 -0
  14. package/components/table/tbody/tbody.component.d.ts +5 -1
  15. package/components/table/th/th.component.d.ts +4 -2
  16. package/components/table-pagination/index.d.ts +0 -1
  17. package/components/table-pagination/table-pagination.component.d.ts +8 -2
  18. package/esm2015/components/reorder/index.js +2 -1
  19. package/esm2015/components/reorder/reorder.component.js +11 -6
  20. package/esm2015/components/reorder/reorder.options.js +13 -0
  21. package/esm2015/components/table/directives/table.directive.js +10 -5
  22. package/esm2015/components/table/index.js +2 -1
  23. package/esm2015/components/table/table.options.js +18 -0
  24. package/esm2015/components/table/tbody/tbody.component.js +15 -5
  25. package/esm2015/components/table/th/th.component.js +14 -9
  26. package/esm2015/components/table-pagination/index.js +1 -2
  27. package/esm2015/components/table-pagination/table-pagination.component.js +14 -6
  28. package/fesm2015/taiga-ui-addon-table-components-reorder.js +23 -6
  29. package/fesm2015/taiga-ui-addon-table-components-reorder.js.map +1 -1
  30. package/fesm2015/taiga-ui-addon-table-components-table-pagination.js +13 -5
  31. package/fesm2015/taiga-ui-addon-table-components-table-pagination.js.map +1 -1
  32. package/fesm2015/taiga-ui-addon-table-components-table.js +52 -19
  33. package/fesm2015/taiga-ui-addon-table-components-table.js.map +1 -1
  34. package/package.json +7 -7
  35. package/components/table-pagination/table-pagination.d.ts +0 -4
  36. package/esm2015/components/table-pagination/table-pagination.js +0 -2
@@ -3,10 +3,10 @@ import { TemplateRef, Directive, Inject, Input, InjectionToken, ElementRef, Skip
3
3
  import { map, switchMap, distinctUntilChanged, takeUntil, filter, startWith } from 'rxjs/operators';
4
4
  import { IntersectionObserverService, INTERSECTION_ROOT_MARGIN, INTERSECTION_THRESHOLD } from '@ng-web-apis/intersection-observer';
5
5
  import * as i4 from '@taiga-ui/cdk';
6
- import { AbstractTuiController, tuiTypedFromEvent, tuiPreventDefault, tuiDefaultSort, TuiTableSortKeyException, EMPTY_QUERY, tuiPure, TuiDestroyService, tuiQueryListChanges, TuiMapperPipeModule } from '@taiga-ui/cdk';
6
+ import { tuiCreateOptions, tuiProvideOptions, AbstractTuiController, tuiTypedFromEvent, tuiPreventDefault, tuiDefaultSort, TuiTableSortKeyException, EMPTY_QUERY, tuiPure, TuiDestroyService, tuiQueryListChanges, TuiMapperPipeModule } from '@taiga-ui/cdk';
7
7
  import * as i1$1 from '@taiga-ui/core';
8
8
  import { TUI_TEXTFIELD_APPEARANCE_DIRECTIVE, TuiTextfieldAppearanceDirective, TuiAppearance, TUI_TEXTFIELD_LABEL_OUTSIDE, TUI_TEXTFIELD_SIZE, MODE_PROVIDER, TUI_MODE, TUI_ELEMENT_REF, tuiWatchedControllerFactory, TuiSvgModule } from '@taiga-ui/core';
9
- import { TUI_INPUT_COUNT_OPTIONS } from '@taiga-ui/kit';
9
+ import { TUI_INPUT_COUNT_OPTIONS, TUI_ARROW_OPTIONS } from '@taiga-ui/kit';
10
10
  import * as i1 from 'rxjs';
11
11
  import { ReplaySubject } from 'rxjs';
12
12
  import * as i2 from '@angular/common';
@@ -87,16 +87,34 @@ const TUI_TABLE_PROVIDERS = [
87
87
  TUI_STUCK_PROVIDER,
88
88
  ];
89
89
 
90
+ const TUI_TABLE_DEFAULT_OPTIONS = {
91
+ sticky: false,
92
+ resizable: false,
93
+ open: true,
94
+ size: `m`,
95
+ direction: 1,
96
+ sortIcons: {
97
+ asc: `tuiIconSortAscending`,
98
+ desc: `tuiIconSortDescending`,
99
+ off: `tuiIconSortOff`,
100
+ },
101
+ };
102
+ const TUI_TABLE_OPTIONS = tuiCreateOptions(TUI_TABLE_DEFAULT_OPTIONS);
103
+ function tuiTableOptionsProvider(options) {
104
+ return tuiProvideOptions(TUI_TABLE_OPTIONS, options, TUI_TABLE_DEFAULT_OPTIONS);
105
+ }
106
+
90
107
  class TuiTableDirective extends AbstractTuiController {
91
- constructor(entries$, mode$, stuck$, cdr) {
108
+ constructor(entries$, mode$, stuck$, options, cdr) {
92
109
  super();
93
110
  this.entries$ = entries$;
94
111
  this.mode$ = mode$;
95
112
  this.stuck$ = stuck$;
113
+ this.options = options;
96
114
  this.cdr = cdr;
97
115
  this.columns = [];
98
- this.size = 'm';
99
- this.direction = 1;
116
+ this.size = this.options.size;
117
+ this.direction = this.options.direction;
100
118
  this.directionChange = new EventEmitter();
101
119
  this.sorterChange = new EventEmitter();
102
120
  this.sorter = () => 0;
@@ -124,7 +142,7 @@ class TuiTableDirective extends AbstractTuiController {
124
142
  this.change$.next();
125
143
  }
126
144
  }
127
- TuiTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTableDirective, deps: [{ token: IntersectionObserverService }, { token: TUI_MODE }, { token: TUI_STUCK }, { token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
145
+ TuiTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTableDirective, deps: [{ token: IntersectionObserverService }, { token: TUI_MODE }, { token: TUI_STUCK }, { token: TUI_TABLE_OPTIONS }, { token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
128
146
  TuiTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiTableDirective, selector: "table[tuiTable]", inputs: { columns: "columns", size: "size", direction: "direction", sorter: "sorter" }, outputs: { directionChange: "directionChange", sorterChange: "sorterChange" }, host: { listeners: { "$.data-mode.attr": "mode$", "$.class._stuck": "stuck$" }, properties: { "attr.data-size": "this.size" }, styleAttribute: "border-collapse: separate" }, providers: TUI_TABLE_PROVIDERS, usesInheritance: true, ngImport: i0 });
129
147
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTableDirective, decorators: [{
130
148
  type: Directive,
@@ -146,6 +164,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
146
164
  }] }, { type: i1.Observable, decorators: [{
147
165
  type: Inject,
148
166
  args: [TUI_STUCK]
167
+ }] }, { type: undefined, decorators: [{
168
+ type: Inject,
169
+ args: [TUI_TABLE_OPTIONS]
149
170
  }] }, { type: i0.ChangeDetectorRef, decorators: [{
150
171
  type: Inject,
151
172
  args: [ChangeDetectorRef]
@@ -271,14 +292,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
271
292
  }] } });
272
293
 
273
294
  class TuiThComponent {
274
- constructor(head, table) {
295
+ constructor(options, head, table) {
296
+ this.options = options;
275
297
  this.head = head;
276
298
  this.table = table;
277
299
  this.sorter = this.head
278
300
  ? (a, b) => tuiDefaultSort(a[this.key], b[this.key])
279
301
  : null;
280
- this.resizable = false;
281
- this.sticky = false;
302
+ this.resizable = this.options.resizable;
303
+ this.sticky = this.options.sticky;
282
304
  this.width = null;
283
305
  }
284
306
  get key() {
@@ -294,16 +316,16 @@ class TuiThComponent {
294
316
  var _a;
295
317
  if (this.isCurrent) {
296
318
  return ((_a = this.table) === null || _a === void 0 ? void 0 : _a.direction) === 1
297
- ? 'tuiIconSortDescending'
298
- : 'tuiIconSortAscending';
319
+ ? this.options.sortIcons.desc
320
+ : this.options.sortIcons.asc;
299
321
  }
300
- return 'tuiIconSortOff';
322
+ return this.options.sortIcons.off;
301
323
  }
302
324
  onResized(width) {
303
325
  this.width = width;
304
326
  }
305
327
  }
306
- TuiThComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThComponent, deps: [{ token: TuiHeadDirective, optional: true }, { token: forwardRef(() => TuiTableDirective), optional: true }], target: i0.ɵɵFactoryTarget.Component });
328
+ TuiThComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiThComponent, deps: [{ token: TUI_TABLE_OPTIONS }, { token: TuiHeadDirective, optional: true }, { token: forwardRef(() => TuiTableDirective), optional: true }], target: i0.ɵɵFactoryTarget.Component });
307
329
  TuiThComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiThComponent, selector: "th[tuiTh]", inputs: { sorter: "sorter", resizable: "resizable", sticky: "sticky" }, host: { properties: { "class._sticky": "this.sticky", "style.width.px": "this.width" } }, providers: [
308
330
  {
309
331
  provide: TUI_ELEMENT_REF,
@@ -324,7 +346,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
324
346
  },
325
347
  ],
326
348
  }]
327
- }], ctorParameters: function () { return [{ type: TuiHeadDirective, decorators: [{
349
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
350
+ type: Inject,
351
+ args: [TUI_TABLE_OPTIONS]
352
+ }] }, { type: TuiHeadDirective, decorators: [{
328
353
  type: Optional
329
354
  }, {
330
355
  type: Inject,
@@ -558,11 +583,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
558
583
  }] } });
559
584
 
560
585
  class TuiTbodyComponent {
561
- constructor(pipe, table) {
586
+ constructor(pipe, options, arrowOptions, table) {
562
587
  this.pipe = pipe;
588
+ this.options = options;
589
+ this.arrowOptions = arrowOptions;
563
590
  this.table = table;
564
591
  this.data = [];
565
- this.open = true;
592
+ this.open = this.options.open;
566
593
  this.openChange = new EventEmitter();
567
594
  this.rows = EMPTY_QUERY;
568
595
  this.toContext = ($implicit, index) => ({ $implicit, index });
@@ -575,8 +602,8 @@ class TuiTbodyComponent {
575
602
  this.openChange.emit(this.open);
576
603
  }
577
604
  }
578
- TuiTbodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTbodyComponent, deps: [{ token: TuiTableSortPipe }, { token: forwardRef(() => TuiTableDirective) }], target: i0.ɵɵFactoryTarget.Component });
579
- TuiTbodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiTbodyComponent, selector: "tbody[tuiTbody]", inputs: { data: "data", heading: "heading", open: "open" }, outputs: { openChange: "openChange" }, providers: TUI_TABLE_PROVIDER, queries: [{ propertyName: "row", first: true, predicate: i0.forwardRef(function () { return TuiRowDirective; }), descendants: true }, { propertyName: "rows", predicate: i0.forwardRef(function () { return TuiTrComponent; }) }], ngImport: i0, template: "<tr *ngIf=\"heading\">\n <th\n class=\"t-heading\"\n [colSpan]=\"table.columns.length\"\n >\n <button\n type=\"button\"\n class=\"t-expand\"\n (click)=\"onClick()\"\n >\n <span class=\"t-name\">\n <ng-container *polymorpheusOutlet=\"heading as text\">\n {{ text }}\n </ng-container>\n </span>\n <tui-svg\n src=\"tuiIconChevronDownLarge\"\n class=\"t-chevron\"\n [class.t-chevron_rotated]=\"open\"\n ></tui-svg>\n </button>\n </th>\n</tr>\n<ng-container *ngIf=\"open\">\n <ng-content></ng-content>\n</ng-container>\n<ng-container *ngIf=\"open && row\">\n <ng-container\n *ngFor=\"let item of sorted; let index = index\"\n [ngTemplateOutlet]=\"row.template\"\n [ngTemplateOutletContext]=\"item | tuiMapper : toContext : index\"\n ></ng-container>\n</ng-container>\n", styles: [":host{border-color:var(--tui-base-04)}:host tr{border-color:inherit}.t-expand{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;display:flex;width:100%;height:100%;align-items:center;box-sizing:border-box;outline:none;font-weight:bold;cursor:pointer;border-color:inherit}.t-expand:focus-visible .t-name{background:var(--tui-selection)}.t-expand:before,.t-expand:after{content:\"\";position:-webkit-sticky;position:sticky;height:100%;border-left:1px solid;border-color:inherit}.t-expand:before{left:0}.t-expand:after{right:0}.t-heading{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;height:var(--tui-height-m);font:var(--tui-font-text-s);padding:0;background:var(--tui-base-02);border-bottom:1px solid var(--tui-base-04);border-color:inherit}.t-heading:hover{background:var(--tui-base-03)}:host-context(table[data-size=\"l\"]) .t-heading{font:var(--tui-font-text-m);height:var(--tui-height-l)}.t-name{position:-webkit-sticky;position:sticky;left:.75rem;display:inline-block}:host-context(table[data-size=\"l\"]) .t-name{left:1rem}.t-chevron{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:-webkit-sticky;position:sticky;right:.75rem;margin:0 .6875rem 0 auto}.t-chevron_rotated{transform:rotate(180deg)}\n"], components: [{ type: i1$1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "tuiMapper": i4.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
605
+ TuiTbodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTbodyComponent, deps: [{ token: TuiTableSortPipe }, { token: TUI_TABLE_OPTIONS }, { token: TUI_ARROW_OPTIONS }, { token: forwardRef(() => TuiTableDirective) }], target: i0.ɵɵFactoryTarget.Component });
606
+ TuiTbodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiTbodyComponent, selector: "tbody[tuiTbody]", inputs: { data: "data", heading: "heading", open: "open" }, outputs: { openChange: "openChange" }, providers: TUI_TABLE_PROVIDER, queries: [{ propertyName: "row", first: true, predicate: i0.forwardRef(function () { return TuiRowDirective; }), descendants: true }, { propertyName: "rows", predicate: i0.forwardRef(function () { return TuiTrComponent; }) }], ngImport: i0, template: "<tr *ngIf=\"heading\">\n <th\n class=\"t-heading\"\n [colSpan]=\"table.columns.length\"\n >\n <button\n type=\"button\"\n class=\"t-expand\"\n (click)=\"onClick()\"\n >\n <span class=\"t-name\">\n <ng-container *polymorpheusOutlet=\"heading as text\">\n {{ text }}\n </ng-container>\n </span>\n <tui-svg\n class=\"t-chevron\"\n [class.t-chevron_rotated]=\"open\"\n [src]=\"arrowOptions.iconLarge\"\n ></tui-svg>\n </button>\n </th>\n</tr>\n<ng-container *ngIf=\"open\">\n <ng-content></ng-content>\n</ng-container>\n<ng-container *ngIf=\"open && row\">\n <ng-container\n *ngFor=\"let item of sorted; let index = index\"\n [ngTemplateOutlet]=\"row.template\"\n [ngTemplateOutletContext]=\"item | tuiMapper : toContext : index\"\n ></ng-container>\n</ng-container>\n", styles: [":host{border-color:var(--tui-base-04)}:host tr{border-color:inherit}.t-expand{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;display:flex;width:100%;height:100%;align-items:center;box-sizing:border-box;outline:none;font-weight:bold;cursor:pointer;border-color:inherit}.t-expand:focus-visible .t-name{background:var(--tui-selection)}.t-expand:before,.t-expand:after{content:\"\";position:-webkit-sticky;position:sticky;height:100%;border-left:1px solid;border-color:inherit}.t-expand:before{left:0}.t-expand:after{right:0}.t-heading{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;height:var(--tui-height-m);font:var(--tui-font-text-s);padding:0;background:var(--tui-base-02);border-bottom:1px solid var(--tui-base-04);border-color:inherit}.t-heading:hover{background:var(--tui-base-03)}:host-context(table[data-size=\"l\"]) .t-heading{font:var(--tui-font-text-m);height:var(--tui-height-l)}.t-name{position:-webkit-sticky;position:sticky;left:.75rem;display:inline-block}:host-context(table[data-size=\"l\"]) .t-name{left:1rem}.t-chevron{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:-webkit-sticky;position:sticky;right:.75rem;margin:0 .6875rem 0 auto}.t-chevron_rotated{transform:rotate(180deg)}\n"], components: [{ type: i1$1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "tuiMapper": i4.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
580
607
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiTbodyComponent, decorators: [{
581
608
  type: Component,
582
609
  args: [{
@@ -589,6 +616,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
589
616
  }], ctorParameters: function () { return [{ type: TuiTableSortPipe, decorators: [{
590
617
  type: Inject,
591
618
  args: [TuiTableSortPipe]
619
+ }] }, { type: undefined, decorators: [{
620
+ type: Inject,
621
+ args: [TUI_TABLE_OPTIONS]
622
+ }] }, { type: undefined, decorators: [{
623
+ type: Inject,
624
+ args: [TUI_ARROW_OPTIONS]
592
625
  }] }, { type: TuiTableDirective, decorators: [{
593
626
  type: Inject,
594
627
  args: [forwardRef(() => TuiTableDirective)]
@@ -715,5 +748,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
715
748
  * Generated bundle index. Do not edit.
716
749
  */
717
750
 
718
- export { TUI_STUCK, TUI_STUCK_PROVIDER, TUI_TABLE_PROVIDER, TUI_TABLE_PROVIDERS, TuiCellDirective, TuiDirectionOrderDirective, TuiHeadDirective, TuiResizedDirective, TuiRowDirective, TuiSortByDirective, TuiSortableDirective, TuiTableDirective, TuiTableModule, TuiTableSortPipe, TuiTbodyComponent, TuiTdComponent, TuiThComponent, TuiThGroupComponent, TuiTheadDirective, TuiTrComponent };
751
+ export { TUI_STUCK, TUI_STUCK_PROVIDER, TUI_TABLE_DEFAULT_OPTIONS, TUI_TABLE_OPTIONS, TUI_TABLE_PROVIDER, TUI_TABLE_PROVIDERS, TuiCellDirective, TuiDirectionOrderDirective, TuiHeadDirective, TuiResizedDirective, TuiRowDirective, TuiSortByDirective, TuiSortableDirective, TuiTableDirective, TuiTableModule, TuiTableSortPipe, TuiTbodyComponent, TuiTdComponent, TuiThComponent, TuiThGroupComponent, TuiTheadDirective, TuiTrComponent, tuiTableOptionsProvider };
719
752
  //# sourceMappingURL=taiga-ui-addon-table-components-table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-table-components-table.js","sources":["../../../projects/addon-table/components/table/directives/cell.directive.ts","../../../projects/addon-table/components/table/providers/stuck.provider.ts","../../../projects/addon-table/components/table/providers/table.providers.ts","../../../projects/addon-table/components/table/directives/table.directive.ts","../../../projects/addon-table/components/table/directives/direction-order.directive.ts","../../../projects/addon-table/components/table/directives/head.directive.ts","../../../projects/addon-table/components/table/directives/resized.directive.ts","../../../projects/addon-table/components/table/directives/row.directive.ts","../../../projects/addon-table/components/table/th/th.component.ts","../../../projects/addon-table/components/table/th/th.template.html","../../../projects/addon-table/components/table/directives/sortable.directive.ts","../../../projects/addon-table/components/table/directives/sort-by.directive.ts","../../../projects/addon-table/components/table/directives/thead.directive.ts","../../../projects/addon-table/components/table/pipes/table-sort.pipe.ts","../../../projects/addon-table/components/table/providers/table.provider.ts","../../../projects/addon-table/components/table/td/td.component.ts","../../../projects/addon-table/components/table/tr/tr.component.ts","../../../projects/addon-table/components/table/tr/tr.template.html","../../../projects/addon-table/components/table/tbody/tbody.component.ts","../../../projects/addon-table/components/table/tbody/tbody.template.html","../../../projects/addon-table/components/table/th-group/th-group.component.ts","../../../projects/addon-table/components/table/th-group/th-group.template.html","../../../projects/addon-table/components/table/table.module.ts","../../../projects/addon-table/components/table/taiga-ui-addon-table-components-table.ts"],"sourcesContent":["import {Directive, Inject, Input, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: '[tuiCell]',\n})\nexport class TuiCellDirective {\n @Input()\n tuiCell = '';\n\n constructor(\n @Inject(TemplateRef) readonly template: TemplateRef<Record<string, unknown>>,\n ) {}\n}\n","import {ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * Stream of sticky stuck events\n */\nexport const TUI_STUCK = new InjectionToken<boolean>(`[TUI_STUCK]`);\n\nexport const TUI_STUCK_PROVIDER: Provider = {\n provide: TUI_STUCK,\n deps: [ElementRef, IntersectionObserverService],\n useFactory: (\n {nativeElement}: ElementRef,\n entries$: Observable<IntersectionObserverEntry[]>,\n ): Observable<boolean> => {\n const stream$ = entries$.pipe(\n map(([{intersectionRatio}]) => intersectionRatio < 1),\n );\n\n nativeElement[`$.class._stuck`] = stream$;\n\n return stream$;\n },\n};\n","import {forwardRef, SkipSelf} from '@angular/core';\nimport {\n INTERSECTION_ROOT_MARGIN,\n INTERSECTION_THRESHOLD,\n IntersectionObserverService,\n} from '@ng-web-apis/intersection-observer';\nimport {\n MODE_PROVIDER,\n TUI_TEXTFIELD_APPEARANCE_DIRECTIVE,\n TUI_TEXTFIELD_LABEL_OUTSIDE,\n TUI_TEXTFIELD_SIZE,\n TuiAppearance,\n TuiTextfieldAppearanceDirective,\n} from '@taiga-ui/core';\nimport {TUI_INPUT_COUNT_OPTIONS, TuiInputCountOptions} from '@taiga-ui/kit';\n\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TUI_STUCK_PROVIDER} from './stuck.provider';\n\nexport const TUI_TABLE_PROVIDERS = [\n {\n provide: INTERSECTION_ROOT_MARGIN,\n useValue: `10000px 10000px 10000px 0px`,\n },\n {\n provide: INTERSECTION_THRESHOLD,\n useValue: [0, 1],\n },\n {\n provide: TUI_TEXTFIELD_APPEARANCE_DIRECTIVE,\n useFactory: (): TuiTextfieldAppearanceDirective => {\n const directive = new TuiTextfieldAppearanceDirective();\n\n directive.appearance = TuiAppearance.Table;\n\n return directive;\n },\n },\n {\n provide: TUI_TEXTFIELD_LABEL_OUTSIDE,\n useValue: {\n labelOutside: true,\n },\n },\n {\n provide: TUI_INPUT_COUNT_OPTIONS,\n deps: [[new SkipSelf(), TUI_INPUT_COUNT_OPTIONS]],\n useFactory: (options: TuiInputCountOptions): TuiInputCountOptions => ({\n ...options,\n hideButtons: true,\n }),\n },\n {\n provide: TUI_TEXTFIELD_SIZE,\n useExisting: forwardRef(() => TuiTableDirective),\n },\n IntersectionObserverService,\n MODE_PROVIDER,\n TUI_STUCK_PROVIDER,\n];\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {AbstractTuiController} from '@taiga-ui/cdk';\nimport {TUI_MODE, TuiBrightness, TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nimport {TUI_STUCK} from '../providers/stuck.provider';\nimport {TUI_TABLE_PROVIDERS} from '../providers/table.providers';\n\n@Directive({\n selector: 'table[tuiTable]',\n providers: TUI_TABLE_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n '($.class._stuck)': 'stuck$',\n style: 'border-collapse: separate',\n },\n})\nexport class TuiTableDirective<T extends Partial<Record<keyof T, any>>>\n extends AbstractTuiController\n implements AfterViewInit\n{\n @Input()\n columns: ReadonlyArray<string | keyof T> = [];\n\n @Input()\n @HostBinding('attr.data-size')\n size: TuiSizeL | TuiSizeS = 'm';\n\n @Input()\n direction: -1 | 1 = 1;\n\n @Output()\n readonly directionChange = new EventEmitter<-1 | 1>();\n\n @Output()\n readonly sorterChange = new EventEmitter<TuiComparator<T> | null>();\n\n constructor(\n @Inject(IntersectionObserverService)\n readonly entries$: Observable<IntersectionObserverEntry[]>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_STUCK) readonly stuck$: Observable<boolean>,\n @Inject(ChangeDetectorRef) private readonly cdr: ChangeDetectorRef,\n ) {\n super();\n }\n\n @Input()\n sorter: TuiComparator<T> = () => 0;\n\n updateSorterAndDirection(sorter: TuiComparator<T> | null): void {\n if (this.sorter === sorter) {\n this.updateDirection(this.direction === 1 ? -1 : 1);\n } else {\n this.updateSorter(sorter);\n this.updateDirection(1);\n }\n }\n\n ngAfterViewInit(): void {\n this.cdr.detectChanges();\n }\n\n updateSorter(sorter: TuiComparator<T> | null): void {\n this.sorter = sorter || (() => 0);\n this.sorterChange.emit(this.sorter);\n this.change$.next();\n }\n\n private updateDirection(direction: -1 | 1): void {\n this.direction = direction;\n this.directionChange.emit(this.direction);\n this.change$.next();\n }\n}\n","import {Directive, Inject, Input, Output} from '@angular/core';\nimport {map} from 'rxjs/operators';\n\nimport {TuiTableDirective} from './table.directive';\n\n@Directive({\n selector: 'table[tuiTable][tuiDirectionOrder]',\n})\nexport class TuiDirectionOrderDirective<T> {\n @Input()\n set directionOrder(order: 'asc' | 'desc') {\n this.table.direction = order === 'asc' ? 1 : -1;\n }\n\n @Output()\n readonly directionOrderChange = this.table.directionChange.pipe(\n map(dir => (dir === 1 ? 'asc' : 'desc')),\n );\n\n constructor(\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n ) {}\n}\n","import {Directive, Inject, Input, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: '[tuiHead]',\n})\nexport class TuiHeadDirective<T extends Partial<Record<keyof T, any>>> {\n @Input()\n tuiHead!: keyof T;\n\n constructor(\n @Inject(TemplateRef) readonly template: TemplateRef<Record<string, unknown>>,\n ) {}\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Directive, ElementRef, Inject, Output} from '@angular/core';\nimport {tuiPreventDefault, tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core';\nimport {distinctUntilChanged, map, switchMap, takeUntil} from 'rxjs/operators';\n\n@Directive({\n selector: '[tuiResized]',\n})\nexport class TuiResizedDirective {\n @Output()\n readonly tuiResized = tuiTypedFromEvent(this.el.nativeElement, 'mousedown').pipe(\n tuiPreventDefault(),\n switchMap(() => {\n const {width, right} = this.parentRef.nativeElement.getBoundingClientRect();\n\n return tuiTypedFromEvent(this.doc, 'mousemove').pipe(\n distinctUntilChanged(),\n map(({clientX}) => width + clientX - right),\n takeUntil(tuiTypedFromEvent(this.doc, 'mouseup')),\n );\n }),\n );\n\n constructor(\n @Inject(DOCUMENT) private readonly doc: Document,\n @Inject(ElementRef)\n private readonly el: ElementRef<HTMLElement>,\n @Inject(TUI_ELEMENT_REF)\n private readonly parentRef: ElementRef<HTMLTableHeaderCellElement>,\n ) {}\n}\n","import {Directive, Inject, Input, TemplateRef} from '@angular/core';\nimport {TuiRowContext} from '@taiga-ui/addon-table/interfaces';\n\n/**\n * @deprecated use `*ngFor` + `tuiTableSort`-pipe instead.\n * See example {@link https://taiga-ui.dev/components/table/Setup}\n * ___\n * TODO v4.0 delete it.\n */\n@Directive({\n selector: 'ng-template[tuiRow]',\n})\nexport class TuiRowDirective<T extends Partial<Record<keyof T, any>>> {\n @Input()\n tuiRowOf: readonly T[] = [];\n\n constructor(@Inject(TemplateRef) readonly template: TemplateRef<TuiRowContext<T>>) {}\n\n static ngTemplateContextGuard<T>(\n _dir: TuiRowDirective<T>,\n _ctx: unknown,\n ): _ctx is TuiRowContext<T> {\n return true;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {tuiDefaultSort, TuiTableSortKeyException} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core';\n\nimport {TuiHeadDirective} from '../directives/head.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\n\n@Component({\n selector: 'th[tuiTh]',\n templateUrl: './th.template.html',\n styleUrls: ['./th.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_ELEMENT_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiThComponent<T extends Partial<Record<keyof T, any>>> {\n @Input()\n sorter: TuiComparator<T> | null = this.head\n ? (a, b) => tuiDefaultSort(a[this.key], b[this.key])\n : null;\n\n @Input()\n resizable = false;\n\n @Input()\n @HostBinding('class._sticky')\n sticky = false;\n\n @HostBinding('style.width.px')\n width: number | null = null;\n\n constructor(\n @Optional()\n @Inject(TuiHeadDirective)\n private readonly head: TuiHeadDirective<T> | null,\n @Optional()\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T> | null,\n ) {}\n\n get key(): keyof T {\n if (!this.head) {\n throw new TuiTableSortKeyException();\n }\n\n return this.head.tuiHead;\n }\n\n get isCurrent(): boolean {\n return !!this.sorter && !!this.table && this.sorter === this.table.sorter;\n }\n\n get icon(): string {\n if (this.isCurrent) {\n return this.table?.direction === 1\n ? 'tuiIconSortDescending'\n : 'tuiIconSortAscending';\n }\n\n return 'tuiIconSortOff';\n }\n\n onResized(width: number): void {\n this.width = width;\n }\n}\n","<button\n *ngIf=\"sorter && table; else content\"\n type=\"button\"\n class=\"t-sort\"\n [class.t-sort_sorted]=\"isCurrent\"\n (click)=\"table.updateSorterAndDirection(sorter)\"\n>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n {{ table.change$ | async }}\n <tui-svg\n class=\"t-sort-icon\"\n [src]=\"icon\"\n ></tui-svg>\n</button>\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n<div\n *ngIf=\"resizable\"\n class=\"t-bar\"\n (tuiResized)=\"onResized($event)\"\n></div>\n","import {Directive, DoCheck, forwardRef, Inject, OnInit} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\n\nimport {TuiThComponent} from '../th/th.component';\nimport {TuiSortByDirective} from './sort-by.directive';\nimport {TuiTableDirective} from './table.directive';\n\n@Directive({\n selector: 'th[tuiTh][tuiSortable]',\n})\nexport class TuiSortableDirective<T extends Partial<Record<keyof T, any>>>\n implements DoCheck, OnInit\n{\n constructor(\n @Inject(forwardRef(() => TuiSortByDirective))\n private readonly sortBy: TuiSortByDirective<T>,\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n @Inject(TuiThComponent) private readonly th: TuiThComponent<T>,\n ) {}\n\n sorter: TuiComparator<T> = (): number => 0;\n\n get key(): keyof T {\n return this.th.key;\n }\n\n ngOnInit(): void {\n this.sorter = this.match ? this.table.sorter : this.sorter;\n this.th.sorter = this.sorter;\n }\n\n ngDoCheck(): void {\n if (this.match && this.table.sorter !== this.sorter) {\n this.table.updateSorter(this.sorter);\n }\n }\n\n private get match(): boolean {\n return this.sortBy.tuiSortBy === this.key;\n }\n}\n","import {\n ContentChildren,\n Directive,\n Inject,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {filter, map} from 'rxjs/operators';\n\nimport {TuiSortableDirective} from './sortable.directive';\nimport {TuiTableDirective} from './table.directive';\n\n@Directive({\n selector: 'table[tuiTable][tuiSortBy]',\n})\nexport class TuiSortByDirective<T extends Partial<Record<keyof T, any>>> {\n @ContentChildren(TuiSortableDirective, {descendants: true})\n private readonly sortables: QueryList<TuiSortableDirective<T>> = EMPTY_QUERY;\n\n @Input()\n tuiSortBy: string | keyof T | null = null;\n\n @Output()\n readonly tuiSortByChange = this.table.sorterChange.pipe(\n filter(() => !!this.sortables.length),\n map(sorter => this.getKey(sorter)),\n );\n\n constructor(\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n ) {}\n\n private getKey(sorter: TuiComparator<T> | null): keyof T | null {\n return this.sortables.find(s => s.sorter === sorter)?.key || null;\n }\n}\n","import {Directive, Inject} from '@angular/core';\nimport {\n INTERSECTION_ROOT_MARGIN,\n IntersectionObserverService,\n} from '@ng-web-apis/intersection-observer';\nimport {Observable} from 'rxjs';\n\nimport {TUI_STUCK, TUI_STUCK_PROVIDER} from '../providers/stuck.provider';\n\n@Directive({\n selector: 'thead[tuiThead]',\n providers: [\n TUI_STUCK_PROVIDER,\n IntersectionObserverService,\n {\n provide: INTERSECTION_ROOT_MARGIN,\n useValue: '0px 10000px 10000px 10000px',\n },\n ],\n host: {\n '($.class._stuck)': 'stuck$',\n },\n})\nexport class TuiTheadDirective {\n constructor(@Inject(TUI_STUCK) readonly stuck$: Observable<boolean>) {}\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {tuiPure} from '@taiga-ui/cdk';\n\nimport {TuiTableDirective} from '../directives/table.directive';\n\n@Pipe({\n name: `tuiTableSort`,\n pure: false,\n})\nexport class TuiTableSortPipe<T extends Partial<Record<keyof T, any>>>\n implements PipeTransform\n{\n constructor(\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n ) {}\n\n transform(data: readonly T[]): readonly T[] {\n return this.sort(data, this.table.sorter, this.table.direction);\n }\n\n @tuiPure\n private sort(\n data: readonly T[],\n sorter: TuiComparator<T>,\n direction: -1 | 1,\n ): readonly T[] {\n return [...data].sort((a, b) => direction * sorter(a, b));\n }\n}\n","import {ChangeDetectorRef, Provider, SkipSelf} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {tuiWatchedControllerFactory} from '@taiga-ui/core';\n\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TuiTableSortPipe} from '../pipes/table-sort.pipe';\n\nexport const TUI_TABLE_PROVIDER: Provider[] = [\n TuiDestroyService,\n TuiTableSortPipe,\n {\n provide: TuiTableDirective,\n deps: [[new SkipSelf(), TuiTableDirective], ChangeDetectorRef, TuiDestroyService],\n useFactory: tuiWatchedControllerFactory,\n },\n];\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n HostBinding,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\n\n@Component({\n selector: 'th[tuiTd], td[tuiTd]',\n template: `\n <ng-content></ng-content>\n `,\n styleUrls: ['./td.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTdComponent {\n @HostBinding('class._editable')\n @ContentChild(NgControl)\n readonly control: unknown;\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n forwardRef,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY, tuiQueryListChanges} from '@taiga-ui/cdk';\nimport {ReplaySubject} from 'rxjs';\nimport {map, switchMap} from 'rxjs/operators';\n\nimport {TuiCellDirective} from '../directives/cell.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TUI_TABLE_PROVIDER} from '../providers/table.provider';\nimport {TuiTbodyComponent} from '../tbody/tbody.component';\n\n@Component({\n selector: 'tr[tuiTr]',\n templateUrl: './tr.template.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TUI_TABLE_PROVIDER],\n})\nexport class TuiTrComponent<T extends Partial<Record<keyof T, any>>>\n implements AfterContentInit\n{\n @ContentChildren(forwardRef(() => TuiCellDirective))\n private readonly cells: QueryList<TuiCellDirective> = EMPTY_QUERY;\n\n private readonly contentReady$ = new ReplaySubject<boolean>(1);\n\n readonly cells$ = this.contentReady$.pipe(\n switchMap(() => tuiQueryListChanges(this.cells)),\n map(cells =>\n cells.reduce(\n (record, item) => ({...record, [item.tuiCell]: item}),\n {} as Record<string | keyof T, TuiCellDirective>,\n ),\n ),\n );\n\n readonly item$ = this.contentReady$.pipe(\n switchMap(() => tuiQueryListChanges(this.body.rows)),\n map(\n rows =>\n /**\n * TODO v4.0 replace `this.body.sorted` with `this.body.data` (don't forget to drop `sorted`-getter).\n */\n this.body.sorted[rows.findIndex(row => row === this)] as Record<\n string | keyof T,\n any\n >,\n ),\n );\n\n constructor(\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T>,\n @Inject(forwardRef(() => TuiTbodyComponent))\n private readonly body: TuiTbodyComponent<T>,\n ) {}\n\n async ngAfterContentInit(): Promise<void> {\n await Promise.resolve();\n this.contentReady$.next(true);\n }\n}\n","<ng-container *ngIf=\"cells$ | async as items\">\n <ng-container\n *ngFor=\"let key of table.columns\"\n [ngTemplateOutlet]=\"items[key]?.template || plain\"\n >\n <ng-template #plain>\n <td\n *ngIf=\"item$ | async as item\"\n tuiTd\n >\n {{ item[key] }}\n </td>\n </ng-template>\n </ng-container>\n</ng-container>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiRowDirective} from '../directives/row.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TuiTableSortPipe} from '../pipes/table-sort.pipe';\nimport {TUI_TABLE_PROVIDER} from '../providers/table.provider';\nimport {TuiTrComponent} from '../tr/tr.component';\n\n@Component({\n selector: 'tbody[tuiTbody]',\n templateUrl: './tbody.template.html',\n styleUrls: ['./tbody.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TABLE_PROVIDER,\n})\nexport class TuiTbodyComponent<T extends Partial<Record<keyof T, any>>> {\n @Input()\n data: readonly T[] = [];\n\n @Input()\n heading: PolymorpheusContent;\n\n @Input()\n open = true;\n\n @Output()\n readonly openChange = new EventEmitter<boolean>();\n\n @ContentChild(forwardRef(() => TuiRowDirective))\n readonly row?: TuiRowDirective<T>;\n\n @ContentChildren(forwardRef(() => TuiTrComponent))\n readonly rows: QueryList<TuiTrComponent<T>> = EMPTY_QUERY;\n\n constructor(\n @Inject(TuiTableSortPipe) private readonly pipe: TuiTableSortPipe<T>,\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T>,\n ) {}\n\n get sorted(): readonly T[] {\n return this.pipe.transform(this.data);\n }\n\n readonly toContext = (\n $implicit: T,\n index: number,\n ): {$implicit: T; index: number} => ({$implicit, index});\n\n onClick(): void {\n this.open = !this.open;\n this.openChange.emit(this.open);\n }\n}\n","<tr *ngIf=\"heading\">\n <th\n class=\"t-heading\"\n [colSpan]=\"table.columns.length\"\n >\n <button\n type=\"button\"\n class=\"t-expand\"\n (click)=\"onClick()\"\n >\n <span class=\"t-name\">\n <ng-container *polymorpheusOutlet=\"heading as text\">\n {{ text }}\n </ng-container>\n </span>\n <tui-svg\n src=\"tuiIconChevronDownLarge\"\n class=\"t-chevron\"\n [class.t-chevron_rotated]=\"open\"\n ></tui-svg>\n </button>\n </th>\n</tr>\n<ng-container *ngIf=\"open\">\n <ng-content></ng-content>\n</ng-container>\n<ng-container *ngIf=\"open && row\">\n <ng-container\n *ngFor=\"let item of sorted; let index = index\"\n [ngTemplateOutlet]=\"row.template\"\n [ngTemplateOutletContext]=\"item | tuiMapper : toContext : index\"\n ></ng-container>\n</ng-container>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n forwardRef,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\nimport {TuiHeadDirective} from '../directives/head.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TUI_TABLE_PROVIDER} from '../providers/table.provider';\nimport {TuiThComponent} from '../th/th.component';\n\n@Component({\n selector: 'tr[tuiThGroup]',\n templateUrl: './th-group.template.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TUI_TABLE_PROVIDER],\n})\nexport class TuiThGroupComponent<T extends Partial<Record<keyof T, any>>>\n implements AfterContentInit\n{\n @ContentChild(forwardRef(() => TuiThComponent))\n readonly th!: TuiThComponent<T>;\n\n @ContentChildren(forwardRef(() => TuiHeadDirective))\n readonly heads: QueryList<TuiHeadDirective<T>> = EMPTY_QUERY;\n\n heads$: Observable<Record<any, TuiHeadDirective<T>>> | null = null;\n\n constructor(\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T>,\n ) {}\n\n ngAfterContentInit(): void {\n this.heads$ = this.heads.changes.pipe(\n startWith(null),\n map(() =>\n this.heads.reduce(\n (record, item) => ({...record, [item.tuiHead]: item}),\n {} as Record<keyof T, TuiHeadDirective<T>>,\n ),\n ),\n );\n }\n}\n","<ng-content></ng-content>\n<ng-container *ngIf=\"heads$ | async as headings\">\n <ng-container\n *ngFor=\"let key of table.columns\"\n [ngTemplateOutlet]=\"headings[key.toString()]?.template || plain\"\n >\n <ng-template #plain>\n <th\n *ngIf=\"!th && !heads.length\"\n tuiTh\n >\n {{ key.toString() }}\n </th>\n </ng-template>\n </ng-container>\n</ng-container>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiCellDirective} from './directives/cell.directive';\nimport {TuiDirectionOrderDirective} from './directives/direction-order.directive';\nimport {TuiHeadDirective} from './directives/head.directive';\nimport {TuiResizedDirective} from './directives/resized.directive';\nimport {TuiRowDirective} from './directives/row.directive';\nimport {TuiSortByDirective} from './directives/sort-by.directive';\nimport {TuiSortableDirective} from './directives/sortable.directive';\nimport {TuiTableDirective} from './directives/table.directive';\nimport {TuiTheadDirective} from './directives/thead.directive';\nimport {TuiTableSortPipe} from './pipes/table-sort.pipe';\nimport {TuiTbodyComponent} from './tbody/tbody.component';\nimport {TuiTdComponent} from './td/td.component';\nimport {TuiThComponent} from './th/th.component';\nimport {TuiThGroupComponent} from './th-group/th-group.component';\nimport {TuiTrComponent} from './tr/tr.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiMapperPipeModule, TuiSvgModule],\n declarations: [\n TuiTableDirective,\n TuiTbodyComponent,\n TuiThGroupComponent,\n TuiThComponent,\n TuiTdComponent,\n TuiTrComponent,\n TuiCellDirective,\n TuiHeadDirective,\n TuiRowDirective,\n TuiSortByDirective,\n TuiSortableDirective,\n TuiTheadDirective,\n TuiResizedDirective,\n TuiTableSortPipe,\n TuiDirectionOrderDirective,\n ],\n exports: [\n TuiTableDirective,\n TuiTbodyComponent,\n TuiThGroupComponent,\n TuiThComponent,\n TuiTdComponent,\n TuiTrComponent,\n TuiCellDirective,\n TuiHeadDirective,\n TuiRowDirective,\n TuiSortByDirective,\n TuiSortableDirective,\n TuiTheadDirective,\n TuiTableSortPipe,\n TuiDirectionOrderDirective,\n ],\n})\nexport class TuiTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3.TuiResizedDirective","i1.TuiTdComponent","i1.TuiThComponent"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-table-components-table.js","sources":["../../../projects/addon-table/components/table/directives/cell.directive.ts","../../../projects/addon-table/components/table/providers/stuck.provider.ts","../../../projects/addon-table/components/table/providers/table.providers.ts","../../../projects/addon-table/components/table/table.options.ts","../../../projects/addon-table/components/table/directives/table.directive.ts","../../../projects/addon-table/components/table/directives/direction-order.directive.ts","../../../projects/addon-table/components/table/directives/head.directive.ts","../../../projects/addon-table/components/table/directives/resized.directive.ts","../../../projects/addon-table/components/table/directives/row.directive.ts","../../../projects/addon-table/components/table/th/th.component.ts","../../../projects/addon-table/components/table/th/th.template.html","../../../projects/addon-table/components/table/directives/sortable.directive.ts","../../../projects/addon-table/components/table/directives/sort-by.directive.ts","../../../projects/addon-table/components/table/directives/thead.directive.ts","../../../projects/addon-table/components/table/pipes/table-sort.pipe.ts","../../../projects/addon-table/components/table/providers/table.provider.ts","../../../projects/addon-table/components/table/td/td.component.ts","../../../projects/addon-table/components/table/tr/tr.component.ts","../../../projects/addon-table/components/table/tr/tr.template.html","../../../projects/addon-table/components/table/tbody/tbody.component.ts","../../../projects/addon-table/components/table/tbody/tbody.template.html","../../../projects/addon-table/components/table/th-group/th-group.component.ts","../../../projects/addon-table/components/table/th-group/th-group.template.html","../../../projects/addon-table/components/table/table.module.ts","../../../projects/addon-table/components/table/taiga-ui-addon-table-components-table.ts"],"sourcesContent":["import {Directive, Inject, Input, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: '[tuiCell]',\n})\nexport class TuiCellDirective {\n @Input()\n tuiCell = '';\n\n constructor(\n @Inject(TemplateRef) readonly template: TemplateRef<Record<string, unknown>>,\n ) {}\n}\n","import {ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * Stream of sticky stuck events\n */\nexport const TUI_STUCK = new InjectionToken<boolean>(`[TUI_STUCK]`);\n\nexport const TUI_STUCK_PROVIDER: Provider = {\n provide: TUI_STUCK,\n deps: [ElementRef, IntersectionObserverService],\n useFactory: (\n {nativeElement}: ElementRef,\n entries$: Observable<IntersectionObserverEntry[]>,\n ): Observable<boolean> => {\n const stream$ = entries$.pipe(\n map(([{intersectionRatio}]) => intersectionRatio < 1),\n );\n\n nativeElement[`$.class._stuck`] = stream$;\n\n return stream$;\n },\n};\n","import {forwardRef, SkipSelf} from '@angular/core';\nimport {\n INTERSECTION_ROOT_MARGIN,\n INTERSECTION_THRESHOLD,\n IntersectionObserverService,\n} from '@ng-web-apis/intersection-observer';\nimport {\n MODE_PROVIDER,\n TUI_TEXTFIELD_APPEARANCE_DIRECTIVE,\n TUI_TEXTFIELD_LABEL_OUTSIDE,\n TUI_TEXTFIELD_SIZE,\n TuiAppearance,\n TuiTextfieldAppearanceDirective,\n} from '@taiga-ui/core';\nimport {TUI_INPUT_COUNT_OPTIONS, TuiInputCountOptions} from '@taiga-ui/kit';\n\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TUI_STUCK_PROVIDER} from './stuck.provider';\n\nexport const TUI_TABLE_PROVIDERS = [\n {\n provide: INTERSECTION_ROOT_MARGIN,\n useValue: `10000px 10000px 10000px 0px`,\n },\n {\n provide: INTERSECTION_THRESHOLD,\n useValue: [0, 1],\n },\n {\n provide: TUI_TEXTFIELD_APPEARANCE_DIRECTIVE,\n useFactory: (): TuiTextfieldAppearanceDirective => {\n const directive = new TuiTextfieldAppearanceDirective();\n\n directive.appearance = TuiAppearance.Table;\n\n return directive;\n },\n },\n {\n provide: TUI_TEXTFIELD_LABEL_OUTSIDE,\n useValue: {\n labelOutside: true,\n },\n },\n {\n provide: TUI_INPUT_COUNT_OPTIONS,\n deps: [[new SkipSelf(), TUI_INPUT_COUNT_OPTIONS]],\n useFactory: (options: TuiInputCountOptions): TuiInputCountOptions => ({\n ...options,\n hideButtons: true,\n }),\n },\n {\n provide: TUI_TEXTFIELD_SIZE,\n useExisting: forwardRef(() => TuiTableDirective),\n },\n IntersectionObserverService,\n MODE_PROVIDER,\n TUI_STUCK_PROVIDER,\n];\n","import {Provider} from '@angular/core';\nimport {tuiCreateOptions, tuiProvideOptions} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\n\nexport interface TuiTableOptions {\n readonly sticky: boolean;\n readonly resizable: boolean;\n readonly open: boolean;\n readonly size: TuiSizeL | TuiSizeS;\n readonly direction: -1 | 1;\n readonly sortIcons: {\n readonly asc: string;\n readonly desc: string;\n readonly off: string;\n };\n}\n\nexport const TUI_TABLE_DEFAULT_OPTIONS: TuiTableOptions = {\n sticky: false,\n resizable: false,\n open: true,\n size: `m`,\n direction: 1,\n sortIcons: {\n asc: `tuiIconSortAscending`,\n desc: `tuiIconSortDescending`,\n off: `tuiIconSortOff`,\n },\n};\n\nexport const TUI_TABLE_OPTIONS = tuiCreateOptions(TUI_TABLE_DEFAULT_OPTIONS);\n\nexport function tuiTableOptionsProvider(options: Partial<TuiTableOptions>): Provider {\n return tuiProvideOptions(TUI_TABLE_OPTIONS, options, TUI_TABLE_DEFAULT_OPTIONS);\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {AbstractTuiController} from '@taiga-ui/cdk';\nimport {TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nimport {TUI_STUCK} from '../providers/stuck.provider';\nimport {TUI_TABLE_PROVIDERS} from '../providers/table.providers';\nimport {TUI_TABLE_OPTIONS, TuiTableOptions} from '../table.options';\n\n@Directive({\n selector: 'table[tuiTable]',\n providers: TUI_TABLE_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n '($.class._stuck)': 'stuck$',\n style: 'border-collapse: separate',\n },\n})\nexport class TuiTableDirective<T extends Partial<Record<keyof T, any>>>\n extends AbstractTuiController\n implements AfterViewInit\n{\n @Input()\n columns: ReadonlyArray<string | keyof T> = [];\n\n @Input()\n @HostBinding('attr.data-size')\n size = this.options.size;\n\n @Input()\n direction = this.options.direction;\n\n @Output()\n readonly directionChange = new EventEmitter<-1 | 1>();\n\n @Output()\n readonly sorterChange = new EventEmitter<TuiComparator<T> | null>();\n\n constructor(\n @Inject(IntersectionObserverService)\n readonly entries$: Observable<IntersectionObserverEntry[]>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_STUCK) readonly stuck$: Observable<boolean>,\n @Inject(TUI_TABLE_OPTIONS) private readonly options: TuiTableOptions,\n @Inject(ChangeDetectorRef) private readonly cdr: ChangeDetectorRef,\n ) {\n super();\n }\n\n @Input()\n sorter: TuiComparator<T> = () => 0;\n\n updateSorterAndDirection(sorter: TuiComparator<T> | null): void {\n if (this.sorter === sorter) {\n this.updateDirection(this.direction === 1 ? -1 : 1);\n } else {\n this.updateSorter(sorter);\n this.updateDirection(1);\n }\n }\n\n ngAfterViewInit(): void {\n this.cdr.detectChanges();\n }\n\n updateSorter(sorter: TuiComparator<T> | null): void {\n this.sorter = sorter || (() => 0);\n this.sorterChange.emit(this.sorter);\n this.change$.next();\n }\n\n private updateDirection(direction: -1 | 1): void {\n this.direction = direction;\n this.directionChange.emit(this.direction);\n this.change$.next();\n }\n}\n","import {Directive, Inject, Input, Output} from '@angular/core';\nimport {map} from 'rxjs/operators';\n\nimport {TuiTableDirective} from './table.directive';\n\n@Directive({\n selector: 'table[tuiTable][tuiDirectionOrder]',\n})\nexport class TuiDirectionOrderDirective<T> {\n @Input()\n set directionOrder(order: 'asc' | 'desc') {\n this.table.direction = order === 'asc' ? 1 : -1;\n }\n\n @Output()\n readonly directionOrderChange = this.table.directionChange.pipe(\n map(dir => (dir === 1 ? 'asc' : 'desc')),\n );\n\n constructor(\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n ) {}\n}\n","import {Directive, Inject, Input, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: '[tuiHead]',\n})\nexport class TuiHeadDirective<T extends Partial<Record<keyof T, any>>> {\n @Input()\n tuiHead!: keyof T;\n\n constructor(\n @Inject(TemplateRef) readonly template: TemplateRef<Record<string, unknown>>,\n ) {}\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Directive, ElementRef, Inject, Output} from '@angular/core';\nimport {tuiPreventDefault, tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core';\nimport {distinctUntilChanged, map, switchMap, takeUntil} from 'rxjs/operators';\n\n@Directive({\n selector: '[tuiResized]',\n})\nexport class TuiResizedDirective {\n @Output()\n readonly tuiResized = tuiTypedFromEvent(this.el.nativeElement, 'mousedown').pipe(\n tuiPreventDefault(),\n switchMap(() => {\n const {width, right} = this.parentRef.nativeElement.getBoundingClientRect();\n\n return tuiTypedFromEvent(this.doc, 'mousemove').pipe(\n distinctUntilChanged(),\n map(({clientX}) => width + clientX - right),\n takeUntil(tuiTypedFromEvent(this.doc, 'mouseup')),\n );\n }),\n );\n\n constructor(\n @Inject(DOCUMENT) private readonly doc: Document,\n @Inject(ElementRef)\n private readonly el: ElementRef<HTMLElement>,\n @Inject(TUI_ELEMENT_REF)\n private readonly parentRef: ElementRef<HTMLTableHeaderCellElement>,\n ) {}\n}\n","import {Directive, Inject, Input, TemplateRef} from '@angular/core';\nimport {TuiRowContext} from '@taiga-ui/addon-table/interfaces';\n\n/**\n * @deprecated use `*ngFor` + `tuiTableSort`-pipe instead.\n * See example {@link https://taiga-ui.dev/components/table/Setup}\n * ___\n * TODO v4.0 delete it.\n */\n@Directive({\n selector: 'ng-template[tuiRow]',\n})\nexport class TuiRowDirective<T extends Partial<Record<keyof T, any>>> {\n @Input()\n tuiRowOf: readonly T[] = [];\n\n constructor(@Inject(TemplateRef) readonly template: TemplateRef<TuiRowContext<T>>) {}\n\n static ngTemplateContextGuard<T>(\n _dir: TuiRowDirective<T>,\n _ctx: unknown,\n ): _ctx is TuiRowContext<T> {\n return true;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {tuiDefaultSort, TuiTableSortKeyException} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core';\n\nimport {TuiHeadDirective} from '../directives/head.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TUI_TABLE_OPTIONS, TuiTableOptions} from '../table.options';\n\n@Component({\n selector: 'th[tuiTh]',\n templateUrl: './th.template.html',\n styleUrls: ['./th.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_ELEMENT_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiThComponent<T extends Partial<Record<keyof T, any>>> {\n @Input()\n sorter: TuiComparator<T> | null = this.head\n ? (a, b) => tuiDefaultSort(a[this.key], b[this.key])\n : null;\n\n @Input()\n resizable = this.options.resizable;\n\n @Input()\n @HostBinding('class._sticky')\n sticky = this.options.sticky;\n\n @HostBinding('style.width.px')\n width: number | null = null;\n\n constructor(\n @Inject(TUI_TABLE_OPTIONS) private readonly options: TuiTableOptions,\n @Optional()\n @Inject(TuiHeadDirective)\n private readonly head: TuiHeadDirective<T> | null,\n @Optional()\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T> | null,\n ) {}\n\n get key(): keyof T {\n if (!this.head) {\n throw new TuiTableSortKeyException();\n }\n\n return this.head.tuiHead;\n }\n\n get isCurrent(): boolean {\n return !!this.sorter && !!this.table && this.sorter === this.table.sorter;\n }\n\n get icon(): string {\n if (this.isCurrent) {\n return this.table?.direction === 1\n ? this.options.sortIcons.desc\n : this.options.sortIcons.asc;\n }\n\n return this.options.sortIcons.off;\n }\n\n onResized(width: number): void {\n this.width = width;\n }\n}\n","<button\n *ngIf=\"sorter && table; else content\"\n type=\"button\"\n class=\"t-sort\"\n [class.t-sort_sorted]=\"isCurrent\"\n (click)=\"table.updateSorterAndDirection(sorter)\"\n>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n {{ table.change$ | async }}\n <tui-svg\n class=\"t-sort-icon\"\n [src]=\"icon\"\n ></tui-svg>\n</button>\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n<div\n *ngIf=\"resizable\"\n class=\"t-bar\"\n (tuiResized)=\"onResized($event)\"\n></div>\n","import {Directive, DoCheck, forwardRef, Inject, OnInit} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\n\nimport {TuiThComponent} from '../th/th.component';\nimport {TuiSortByDirective} from './sort-by.directive';\nimport {TuiTableDirective} from './table.directive';\n\n@Directive({\n selector: 'th[tuiTh][tuiSortable]',\n})\nexport class TuiSortableDirective<T extends Partial<Record<keyof T, any>>>\n implements DoCheck, OnInit\n{\n constructor(\n @Inject(forwardRef(() => TuiSortByDirective))\n private readonly sortBy: TuiSortByDirective<T>,\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n @Inject(TuiThComponent) private readonly th: TuiThComponent<T>,\n ) {}\n\n sorter: TuiComparator<T> = (): number => 0;\n\n get key(): keyof T {\n return this.th.key;\n }\n\n ngOnInit(): void {\n this.sorter = this.match ? this.table.sorter : this.sorter;\n this.th.sorter = this.sorter;\n }\n\n ngDoCheck(): void {\n if (this.match && this.table.sorter !== this.sorter) {\n this.table.updateSorter(this.sorter);\n }\n }\n\n private get match(): boolean {\n return this.sortBy.tuiSortBy === this.key;\n }\n}\n","import {\n ContentChildren,\n Directive,\n Inject,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {filter, map} from 'rxjs/operators';\n\nimport {TuiSortableDirective} from './sortable.directive';\nimport {TuiTableDirective} from './table.directive';\n\n@Directive({\n selector: 'table[tuiTable][tuiSortBy]',\n})\nexport class TuiSortByDirective<T extends Partial<Record<keyof T, any>>> {\n @ContentChildren(TuiSortableDirective, {descendants: true})\n private readonly sortables: QueryList<TuiSortableDirective<T>> = EMPTY_QUERY;\n\n @Input()\n tuiSortBy: string | keyof T | null = null;\n\n @Output()\n readonly tuiSortByChange = this.table.sorterChange.pipe(\n filter(() => !!this.sortables.length),\n map(sorter => this.getKey(sorter)),\n );\n\n constructor(\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n ) {}\n\n private getKey(sorter: TuiComparator<T> | null): keyof T | null {\n return this.sortables.find(s => s.sorter === sorter)?.key || null;\n }\n}\n","import {Directive, Inject} from '@angular/core';\nimport {\n INTERSECTION_ROOT_MARGIN,\n IntersectionObserverService,\n} from '@ng-web-apis/intersection-observer';\nimport {Observable} from 'rxjs';\n\nimport {TUI_STUCK, TUI_STUCK_PROVIDER} from '../providers/stuck.provider';\n\n@Directive({\n selector: 'thead[tuiThead]',\n providers: [\n TUI_STUCK_PROVIDER,\n IntersectionObserverService,\n {\n provide: INTERSECTION_ROOT_MARGIN,\n useValue: '0px 10000px 10000px 10000px',\n },\n ],\n host: {\n '($.class._stuck)': 'stuck$',\n },\n})\nexport class TuiTheadDirective {\n constructor(@Inject(TUI_STUCK) readonly stuck$: Observable<boolean>) {}\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {TuiComparator} from '@taiga-ui/addon-table/types';\nimport {tuiPure} from '@taiga-ui/cdk';\n\nimport {TuiTableDirective} from '../directives/table.directive';\n\n@Pipe({\n name: `tuiTableSort`,\n pure: false,\n})\nexport class TuiTableSortPipe<T extends Partial<Record<keyof T, any>>>\n implements PipeTransform\n{\n constructor(\n @Inject(TuiTableDirective) private readonly table: TuiTableDirective<T>,\n ) {}\n\n transform(data: readonly T[]): readonly T[] {\n return this.sort(data, this.table.sorter, this.table.direction);\n }\n\n @tuiPure\n private sort(\n data: readonly T[],\n sorter: TuiComparator<T>,\n direction: -1 | 1,\n ): readonly T[] {\n return [...data].sort((a, b) => direction * sorter(a, b));\n }\n}\n","import {ChangeDetectorRef, Provider, SkipSelf} from '@angular/core';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\nimport {tuiWatchedControllerFactory} from '@taiga-ui/core';\n\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TuiTableSortPipe} from '../pipes/table-sort.pipe';\n\nexport const TUI_TABLE_PROVIDER: Provider[] = [\n TuiDestroyService,\n TuiTableSortPipe,\n {\n provide: TuiTableDirective,\n deps: [[new SkipSelf(), TuiTableDirective], ChangeDetectorRef, TuiDestroyService],\n useFactory: tuiWatchedControllerFactory,\n },\n];\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n HostBinding,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\n\n@Component({\n selector: 'th[tuiTd], td[tuiTd]',\n template: `\n <ng-content></ng-content>\n `,\n styleUrls: ['./td.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTdComponent {\n @HostBinding('class._editable')\n @ContentChild(NgControl)\n readonly control: unknown;\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n forwardRef,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY, tuiQueryListChanges} from '@taiga-ui/cdk';\nimport {ReplaySubject} from 'rxjs';\nimport {map, switchMap} from 'rxjs/operators';\n\nimport {TuiCellDirective} from '../directives/cell.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TUI_TABLE_PROVIDER} from '../providers/table.provider';\nimport {TuiTbodyComponent} from '../tbody/tbody.component';\n\n@Component({\n selector: 'tr[tuiTr]',\n templateUrl: './tr.template.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TUI_TABLE_PROVIDER],\n})\nexport class TuiTrComponent<T extends Partial<Record<keyof T, any>>>\n implements AfterContentInit\n{\n @ContentChildren(forwardRef(() => TuiCellDirective))\n private readonly cells: QueryList<TuiCellDirective> = EMPTY_QUERY;\n\n private readonly contentReady$ = new ReplaySubject<boolean>(1);\n\n readonly cells$ = this.contentReady$.pipe(\n switchMap(() => tuiQueryListChanges(this.cells)),\n map(cells =>\n cells.reduce(\n (record, item) => ({...record, [item.tuiCell]: item}),\n {} as Record<string | keyof T, TuiCellDirective>,\n ),\n ),\n );\n\n readonly item$ = this.contentReady$.pipe(\n switchMap(() => tuiQueryListChanges(this.body.rows)),\n map(\n rows =>\n /**\n * TODO v4.0 replace `this.body.sorted` with `this.body.data` (don't forget to drop `sorted`-getter).\n */\n this.body.sorted[rows.findIndex(row => row === this)] as Record<\n string | keyof T,\n any\n >,\n ),\n );\n\n constructor(\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T>,\n @Inject(forwardRef(() => TuiTbodyComponent))\n private readonly body: TuiTbodyComponent<T>,\n ) {}\n\n async ngAfterContentInit(): Promise<void> {\n await Promise.resolve();\n this.contentReady$.next(true);\n }\n}\n","<ng-container *ngIf=\"cells$ | async as items\">\n <ng-container\n *ngFor=\"let key of table.columns\"\n [ngTemplateOutlet]=\"items[key]?.template || plain\"\n >\n <ng-template #plain>\n <td\n *ngIf=\"item$ | async as item\"\n tuiTd\n >\n {{ item[key] }}\n </td>\n </ng-template>\n </ng-container>\n</ng-container>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Output,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {TUI_ARROW_OPTIONS, TuiArrowOptions} from '@taiga-ui/kit';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiRowDirective} from '../directives/row.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TuiTableSortPipe} from '../pipes/table-sort.pipe';\nimport {TUI_TABLE_PROVIDER} from '../providers/table.provider';\nimport {TUI_TABLE_OPTIONS, TuiTableOptions} from '../table.options';\nimport {TuiTrComponent} from '../tr/tr.component';\n\n@Component({\n selector: 'tbody[tuiTbody]',\n templateUrl: './tbody.template.html',\n styleUrls: ['./tbody.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TABLE_PROVIDER,\n})\nexport class TuiTbodyComponent<T extends Partial<Record<keyof T, any>>> {\n @Input()\n data: readonly T[] = [];\n\n @Input()\n heading: PolymorpheusContent;\n\n @Input()\n open = this.options.open;\n\n @Output()\n readonly openChange = new EventEmitter<boolean>();\n\n @ContentChild(forwardRef(() => TuiRowDirective))\n readonly row?: TuiRowDirective<T>;\n\n @ContentChildren(forwardRef(() => TuiTrComponent))\n readonly rows: QueryList<TuiTrComponent<T>> = EMPTY_QUERY;\n\n constructor(\n @Inject(TuiTableSortPipe) private readonly pipe: TuiTableSortPipe<T>,\n @Inject(TUI_TABLE_OPTIONS) private readonly options: TuiTableOptions,\n @Inject(TUI_ARROW_OPTIONS) readonly arrowOptions: TuiArrowOptions,\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T>,\n ) {}\n\n get sorted(): readonly T[] {\n return this.pipe.transform(this.data);\n }\n\n readonly toContext = (\n $implicit: T,\n index: number,\n ): {$implicit: T; index: number} => ({$implicit, index});\n\n onClick(): void {\n this.open = !this.open;\n this.openChange.emit(this.open);\n }\n}\n","<tr *ngIf=\"heading\">\n <th\n class=\"t-heading\"\n [colSpan]=\"table.columns.length\"\n >\n <button\n type=\"button\"\n class=\"t-expand\"\n (click)=\"onClick()\"\n >\n <span class=\"t-name\">\n <ng-container *polymorpheusOutlet=\"heading as text\">\n {{ text }}\n </ng-container>\n </span>\n <tui-svg\n class=\"t-chevron\"\n [class.t-chevron_rotated]=\"open\"\n [src]=\"arrowOptions.iconLarge\"\n ></tui-svg>\n </button>\n </th>\n</tr>\n<ng-container *ngIf=\"open\">\n <ng-content></ng-content>\n</ng-container>\n<ng-container *ngIf=\"open && row\">\n <ng-container\n *ngFor=\"let item of sorted; let index = index\"\n [ngTemplateOutlet]=\"row.template\"\n [ngTemplateOutletContext]=\"item | tuiMapper : toContext : index\"\n ></ng-container>\n</ng-container>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n forwardRef,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\nimport {TuiHeadDirective} from '../directives/head.directive';\nimport {TuiTableDirective} from '../directives/table.directive';\nimport {TUI_TABLE_PROVIDER} from '../providers/table.provider';\nimport {TuiThComponent} from '../th/th.component';\n\n@Component({\n selector: 'tr[tuiThGroup]',\n templateUrl: './th-group.template.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TUI_TABLE_PROVIDER],\n})\nexport class TuiThGroupComponent<T extends Partial<Record<keyof T, any>>>\n implements AfterContentInit\n{\n @ContentChild(forwardRef(() => TuiThComponent))\n readonly th!: TuiThComponent<T>;\n\n @ContentChildren(forwardRef(() => TuiHeadDirective))\n readonly heads: QueryList<TuiHeadDirective<T>> = EMPTY_QUERY;\n\n heads$: Observable<Record<any, TuiHeadDirective<T>>> | null = null;\n\n constructor(\n @Inject(forwardRef(() => TuiTableDirective))\n readonly table: TuiTableDirective<T>,\n ) {}\n\n ngAfterContentInit(): void {\n this.heads$ = this.heads.changes.pipe(\n startWith(null),\n map(() =>\n this.heads.reduce(\n (record, item) => ({...record, [item.tuiHead]: item}),\n {} as Record<keyof T, TuiHeadDirective<T>>,\n ),\n ),\n );\n }\n}\n","<ng-content></ng-content>\n<ng-container *ngIf=\"heads$ | async as headings\">\n <ng-container\n *ngFor=\"let key of table.columns\"\n [ngTemplateOutlet]=\"headings[key.toString()]?.template || plain\"\n >\n <ng-template #plain>\n <th\n *ngIf=\"!th && !heads.length\"\n tuiTh\n >\n {{ key.toString() }}\n </th>\n </ng-template>\n </ng-container>\n</ng-container>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiCellDirective} from './directives/cell.directive';\nimport {TuiDirectionOrderDirective} from './directives/direction-order.directive';\nimport {TuiHeadDirective} from './directives/head.directive';\nimport {TuiResizedDirective} from './directives/resized.directive';\nimport {TuiRowDirective} from './directives/row.directive';\nimport {TuiSortByDirective} from './directives/sort-by.directive';\nimport {TuiSortableDirective} from './directives/sortable.directive';\nimport {TuiTableDirective} from './directives/table.directive';\nimport {TuiTheadDirective} from './directives/thead.directive';\nimport {TuiTableSortPipe} from './pipes/table-sort.pipe';\nimport {TuiTbodyComponent} from './tbody/tbody.component';\nimport {TuiTdComponent} from './td/td.component';\nimport {TuiThComponent} from './th/th.component';\nimport {TuiThGroupComponent} from './th-group/th-group.component';\nimport {TuiTrComponent} from './tr/tr.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiMapperPipeModule, TuiSvgModule],\n declarations: [\n TuiTableDirective,\n TuiTbodyComponent,\n TuiThGroupComponent,\n TuiThComponent,\n TuiTdComponent,\n TuiTrComponent,\n TuiCellDirective,\n TuiHeadDirective,\n TuiRowDirective,\n TuiSortByDirective,\n TuiSortableDirective,\n TuiTheadDirective,\n TuiResizedDirective,\n TuiTableSortPipe,\n TuiDirectionOrderDirective,\n ],\n exports: [\n TuiTableDirective,\n TuiTbodyComponent,\n TuiThGroupComponent,\n TuiThComponent,\n TuiTdComponent,\n TuiTrComponent,\n TuiCellDirective,\n TuiHeadDirective,\n TuiRowDirective,\n TuiSortByDirective,\n TuiSortableDirective,\n TuiTheadDirective,\n TuiTableSortPipe,\n TuiDirectionOrderDirective,\n ],\n})\nexport class TuiTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3.TuiResizedDirective","i1.TuiTdComponent","i1.TuiThComponent"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/addon-table",
3
- "version": "3.39.1-dev.main.f92cc75",
3
+ "version": "3.40.0-canary.fda819a",
4
4
  "description": "A library to display tabled data with filters, search, group actions, etc.",
5
5
  "keywords": [
6
6
  "angular",
@@ -9,17 +9,17 @@
9
9
  "group",
10
10
  "action"
11
11
  ],
12
- "homepage": "https://github.com/tinkoff/taiga-ui",
13
- "repository": "https://github.com/tinkoff/taiga-ui",
12
+ "homepage": "https://github.com/taiga-family/taiga-ui",
13
+ "repository": "https://github.com/taiga-family/taiga-ui",
14
14
  "license": "Apache-2.0",
15
15
  "peerDependencies": {
16
16
  "@angular/common": ">=12.0.0",
17
17
  "@angular/core": ">=12.0.0",
18
18
  "@ng-web-apis/intersection-observer": ">=3.0.0",
19
- "@taiga-ui/cdk": ">=3.39.1",
20
- "@taiga-ui/core": ">=3.39.1",
21
- "@taiga-ui/i18n": ">=3.39.1",
22
- "@taiga-ui/kit": ">=3.39.1",
19
+ "@taiga-ui/cdk": ">=3.40.0",
20
+ "@taiga-ui/core": ">=3.40.0",
21
+ "@taiga-ui/i18n": ">=3.40.0",
22
+ "@taiga-ui/kit": ">=3.40.0",
23
23
  "@tinkoff/ng-polymorpheus": ">=4.0.0",
24
24
  "rxjs": ">=6.0.0"
25
25
  },
@@ -1,4 +0,0 @@
1
- export interface TuiTablePagination {
2
- readonly page: number;
3
- readonly size: number;
4
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcGFnaW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLXRhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi90YWJsZS1wYWdpbmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFR1aVRhYmxlUGFnaW5hdGlvbiB7XG4gICAgcmVhZG9ubHkgcGFnZTogbnVtYmVyO1xuICAgIHJlYWRvbmx5IHNpemU6IG51bWJlcjtcbn1cbiJdfQ==