@taiga-ui/addon-table 2.53.0 → 2.55.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/bundles/taiga-ui-addon-table-directives-table-filters.umd.js +426 -0
  2. package/bundles/taiga-ui-addon-table-directives-table-filters.umd.js.map +1 -0
  3. package/bundles/taiga-ui-addon-table-directives-table-filters.umd.min.js +2 -0
  4. package/bundles/taiga-ui-addon-table-directives-table-filters.umd.min.js.map +1 -0
  5. package/bundles/taiga-ui-addon-table-directives.umd.js +23 -0
  6. package/bundles/taiga-ui-addon-table-directives.umd.js.map +1 -0
  7. package/bundles/taiga-ui-addon-table-directives.umd.min.js +2 -0
  8. package/bundles/taiga-ui-addon-table-directives.umd.min.js.map +1 -0
  9. package/bundles/taiga-ui-addon-table.umd.js +12 -4
  10. package/bundles/taiga-ui-addon-table.umd.js.map +1 -1
  11. package/bundles/taiga-ui-addon-table.umd.min.js +1 -1
  12. package/directives/index.d.ts +1 -0
  13. package/directives/package.json +13 -0
  14. package/directives/table-filters/abstract-table-filter.d.ts +3 -0
  15. package/directives/table-filters/generic-filter.directive.d.ts +5 -0
  16. package/directives/table-filters/index.d.ts +7 -0
  17. package/directives/table-filters/package.json +13 -0
  18. package/directives/table-filters/table-filter.d.ts +5 -0
  19. package/directives/table-filters/table-filter.directive.d.ts +18 -0
  20. package/directives/table-filters/table-filters.directive.d.ts +11 -0
  21. package/directives/table-filters/table-filters.module.d.ts +2 -0
  22. package/directives/table-filters/table-filters.pipe.d.ts +8 -0
  23. package/directives/table-filters/taiga-ui-addon-table-directives-table-filters.d.ts +4 -0
  24. package/directives/table-filters/taiga-ui-addon-table-directives-table-filters.metadata.json +1 -0
  25. package/directives/taiga-ui-addon-table-directives.d.ts +4 -0
  26. package/directives/taiga-ui-addon-table-directives.metadata.json +1 -0
  27. package/esm2015/directives/index.js +2 -0
  28. package/esm2015/directives/table-filters/abstract-table-filter.js +3 -0
  29. package/esm2015/directives/table-filters/generic-filter.directive.js +30 -0
  30. package/esm2015/directives/table-filters/index.js +7 -0
  31. package/esm2015/directives/table-filters/table-filter.directive.js +53 -0
  32. package/esm2015/directives/table-filters/table-filter.js +1 -0
  33. package/esm2015/directives/table-filters/table-filters.directive.js +34 -0
  34. package/esm2015/directives/table-filters/table-filters.module.js +26 -0
  35. package/esm2015/directives/table-filters/table-filters.pipe.js +22 -0
  36. package/esm2015/directives/table-filters/taiga-ui-addon-table-directives-table-filters.js +5 -0
  37. package/esm2015/directives/taiga-ui-addon-table-directives.js +5 -0
  38. package/esm2015/index.js +2 -1
  39. package/esm5/directives/index.js +2 -0
  40. package/esm5/directives/table-filters/abstract-table-filter.js +7 -0
  41. package/esm5/directives/table-filters/generic-filter.directive.js +34 -0
  42. package/esm5/directives/table-filters/index.js +7 -0
  43. package/esm5/directives/table-filters/table-filter.directive.js +59 -0
  44. package/esm5/directives/table-filters/table-filter.js +1 -0
  45. package/esm5/directives/table-filters/table-filters.directive.js +39 -0
  46. package/esm5/directives/table-filters/table-filters.module.js +29 -0
  47. package/esm5/directives/table-filters/table-filters.pipe.js +23 -0
  48. package/esm5/directives/table-filters/taiga-ui-addon-table-directives-table-filters.js +5 -0
  49. package/esm5/directives/taiga-ui-addon-table-directives.js +5 -0
  50. package/esm5/index.js +2 -1
  51. package/fesm2015/taiga-ui-addon-table-directives-table-filters.js +152 -0
  52. package/fesm2015/taiga-ui-addon-table-directives-table-filters.js.map +1 -0
  53. package/fesm2015/taiga-ui-addon-table-directives.js +6 -0
  54. package/fesm2015/taiga-ui-addon-table-directives.js.map +1 -0
  55. package/fesm2015/taiga-ui-addon-table.js +1 -0
  56. package/fesm2015/taiga-ui-addon-table.js.map +1 -1
  57. package/fesm5/taiga-ui-addon-table-directives-table-filters.js +174 -0
  58. package/fesm5/taiga-ui-addon-table-directives-table-filters.js.map +1 -0
  59. package/fesm5/taiga-ui-addon-table-directives.js +6 -0
  60. package/fesm5/taiga-ui-addon-table-directives.js.map +1 -0
  61. package/fesm5/taiga-ui-addon-table.js +1 -0
  62. package/fesm5/taiga-ui-addon-table.js.map +1 -1
  63. package/index.d.ts +1 -0
  64. package/package.json +5 -5
  65. package/taiga-ui-addon-table.metadata.json +1 -1
@@ -0,0 +1,39 @@
1
+ import { __decorate, __read, __spread } from "tslib";
2
+ import { Directive } from '@angular/core';
3
+ import { identity, merge, ReplaySubject } from 'rxjs';
4
+ import { map, startWith, switchMap } from 'rxjs/operators';
5
+ var TuiTableFiltersDirective = /** @class */ (function () {
6
+ function TuiTableFiltersDirective() {
7
+ this.refresh$ = new ReplaySubject(1);
8
+ this.filters = [];
9
+ }
10
+ TuiTableFiltersDirective.prototype.register = function (filter) {
11
+ this.filters = this.filters.concat(filter);
12
+ this.update();
13
+ };
14
+ TuiTableFiltersDirective.prototype.unregister = function (filter) {
15
+ this.filters = this.filters.filter(function (item) { return item !== filter; });
16
+ this.update();
17
+ };
18
+ TuiTableFiltersDirective.prototype.filter = function (items) {
19
+ var _this = this;
20
+ return this.refresh$.pipe(switchMap(identity), startWith(null), map(function () { return items.filter(function (item) { return _this.check(item); }); }));
21
+ };
22
+ TuiTableFiltersDirective.prototype.check = function (item) {
23
+ return this.filters.every(function (filter) { return filter.filter(item); });
24
+ };
25
+ TuiTableFiltersDirective.prototype.update = function () {
26
+ this.refresh$.next(merge.apply(void 0, __spread(this.filters.map(function (_a) {
27
+ var refresh$ = _a.refresh$;
28
+ return refresh$;
29
+ }))));
30
+ };
31
+ TuiTableFiltersDirective = __decorate([
32
+ Directive({
33
+ selector: '[tuiTableFilters]',
34
+ })
35
+ ], TuiTableFiltersDirective);
36
+ return TuiTableFiltersDirective;
37
+ }());
38
+ export { TuiTableFiltersDirective };
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZmlsdGVycy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tdGFibGUvZGlyZWN0aXZlcy90YWJsZS1maWx0ZXJzLyIsInNvdXJjZXMiOlsidGFibGUtZmlsdGVycy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQWMsYUFBYSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBT3pEO0lBQUE7UUFDcUIsYUFBUSxHQUFHLElBQUksYUFBYSxDQUFzQixDQUFDLENBQUMsQ0FBQztRQUU5RCxZQUFPLEdBQXFDLEVBQUUsQ0FBQztJQTJCM0QsQ0FBQztJQXpCRywyQ0FBUSxHQUFSLFVBQVMsTUFBeUI7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELDZDQUFVLEdBQVYsVUFBVyxNQUF5QjtRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQUEsSUFBSSxJQUFJLE9BQUEsSUFBSSxLQUFLLE1BQU0sRUFBZixDQUFlLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELHlDQUFNLEdBQU4sVUFBTyxLQUFtQjtRQUExQixpQkFNQztRQUxHLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3JCLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFDbkIsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLEdBQUcsQ0FBQyxjQUFNLE9BQUEsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLEtBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQWhCLENBQWdCLENBQUMsRUFBdEMsQ0FBc0MsQ0FBQyxDQUNwRCxDQUFDO0lBQ04sQ0FBQztJQUVPLHdDQUFLLEdBQWIsVUFBYyxJQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBQSxNQUFNLElBQUksT0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFuQixDQUFtQixDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVPLHlDQUFNLEdBQWQ7UUFDSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLHdCQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQUMsRUFBVTtnQkFBVCxzQkFBUTtZQUFNLE9BQUEsUUFBUTtRQUFSLENBQVEsQ0FBQyxHQUFFLENBQUM7SUFDN0UsQ0FBQztJQTdCUSx3QkFBd0I7UUFIcEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLG1CQUFtQjtTQUNoQyxDQUFDO09BQ1csd0JBQXdCLENBOEJwQztJQUFELCtCQUFDO0NBQUEsQUE5QkQsSUE4QkM7U0E5Qlksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtpZGVudGl0eSwgbWVyZ2UsIE9ic2VydmFibGUsIFJlcGxheVN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpVGFibGVGaWx0ZXJ9IGZyb20gJy4vdGFibGUtZmlsdGVyJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpVGFibGVGaWx0ZXJzXScsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVRhYmxlRmlsdGVyc0RpcmVjdGl2ZTxUPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSByZWZyZXNoJCA9IG5ldyBSZXBsYXlTdWJqZWN0PE9ic2VydmFibGU8dW5rbm93bj4+KDEpO1xuXG4gICAgcHJpdmF0ZSBmaWx0ZXJzOiBSZWFkb25seUFycmF5PFR1aVRhYmxlRmlsdGVyPFQ+PiA9IFtdO1xuXG4gICAgcmVnaXN0ZXIoZmlsdGVyOiBUdWlUYWJsZUZpbHRlcjxUPik6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbHRlcnMgPSB0aGlzLmZpbHRlcnMuY29uY2F0KGZpbHRlcik7XG4gICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgfVxuXG4gICAgdW5yZWdpc3RlcihmaWx0ZXI6IFR1aVRhYmxlRmlsdGVyPFQ+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuZmlsdGVycy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSBmaWx0ZXIpO1xuICAgICAgICB0aGlzLnVwZGF0ZSgpO1xuICAgIH1cblxuICAgIGZpbHRlcihpdGVtczogcmVhZG9ubHkgVFtdKTogT2JzZXJ2YWJsZTxyZWFkb25seSBUW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVmcmVzaCQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChpZGVudGl0eSksXG4gICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICBtYXAoKCkgPT4gaXRlbXMuZmlsdGVyKGl0ZW0gPT4gdGhpcy5jaGVjayhpdGVtKSkpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2soaXRlbTogVCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJzLmV2ZXJ5KGZpbHRlciA9PiBmaWx0ZXIuZmlsdGVyKGl0ZW0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoJC5uZXh0KG1lcmdlKC4uLnRoaXMuZmlsdGVycy5tYXAoKHtyZWZyZXNoJH0pID0+IHJlZnJlc2gkKSkpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { __decorate } from "tslib";
2
+ import { NgModule } from '@angular/core';
3
+ import { TuiGenericFilterDirective } from './generic-filter.directive';
4
+ import { TuiTableFilterDirective } from './table-filter.directive';
5
+ import { TuiTableFiltersDirective } from './table-filters.directive';
6
+ import { TuiTableFiltersPipe } from './table-filters.pipe';
7
+ var TuiTableFiltersModule = /** @class */ (function () {
8
+ function TuiTableFiltersModule() {
9
+ }
10
+ TuiTableFiltersModule = __decorate([
11
+ NgModule({
12
+ declarations: [
13
+ TuiTableFiltersDirective,
14
+ TuiTableFilterDirective,
15
+ TuiTableFiltersPipe,
16
+ TuiGenericFilterDirective,
17
+ ],
18
+ exports: [
19
+ TuiTableFiltersDirective,
20
+ TuiTableFilterDirective,
21
+ TuiTableFiltersPipe,
22
+ TuiGenericFilterDirective,
23
+ ],
24
+ })
25
+ ], TuiTableFiltersModule);
26
+ return TuiTableFiltersModule;
27
+ }());
28
+ export { TuiTableFiltersModule };
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZmlsdGVycy5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tdGFibGUvZGlyZWN0aXZlcy90YWJsZS1maWx0ZXJzLyIsInNvdXJjZXMiOlsidGFibGUtZmlsdGVycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFnQnpEO0lBQUE7SUFBb0MsQ0FBQztJQUF4QixxQkFBcUI7UUFkakMsUUFBUSxDQUFDO1lBQ04sWUFBWSxFQUFFO2dCQUNWLHdCQUF3QjtnQkFDeEIsdUJBQXVCO2dCQUN2QixtQkFBbUI7Z0JBQ25CLHlCQUF5QjthQUM1QjtZQUNELE9BQU8sRUFBRTtnQkFDTCx3QkFBd0I7Z0JBQ3hCLHVCQUF1QjtnQkFDdkIsbUJBQW1CO2dCQUNuQix5QkFBeUI7YUFDNUI7U0FDSixDQUFDO09BQ1cscUJBQXFCLENBQUc7SUFBRCw0QkFBQztDQUFBLEFBQXJDLElBQXFDO1NBQXhCLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1R1aUdlbmVyaWNGaWx0ZXJEaXJlY3RpdmV9IGZyb20gJy4vZ2VuZXJpYy1maWx0ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpVGFibGVGaWx0ZXJEaXJlY3RpdmV9IGZyb20gJy4vdGFibGUtZmlsdGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1R1aVRhYmxlRmlsdGVyc0RpcmVjdGl2ZX0gZnJvbSAnLi90YWJsZS1maWx0ZXJzLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1R1aVRhYmxlRmlsdGVyc1BpcGV9IGZyb20gJy4vdGFibGUtZmlsdGVycy5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgVHVpVGFibGVGaWx0ZXJzRGlyZWN0aXZlLFxuICAgICAgICBUdWlUYWJsZUZpbHRlckRpcmVjdGl2ZSxcbiAgICAgICAgVHVpVGFibGVGaWx0ZXJzUGlwZSxcbiAgICAgICAgVHVpR2VuZXJpY0ZpbHRlckRpcmVjdGl2ZSxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgVHVpVGFibGVGaWx0ZXJzRGlyZWN0aXZlLFxuICAgICAgICBUdWlUYWJsZUZpbHRlckRpcmVjdGl2ZSxcbiAgICAgICAgVHVpVGFibGVGaWx0ZXJzUGlwZSxcbiAgICAgICAgVHVpR2VuZXJpY0ZpbHRlckRpcmVjdGl2ZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUYWJsZUZpbHRlcnNNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,23 @@
1
+ import { __decorate, __param } from "tslib";
2
+ import { Inject, Pipe } from '@angular/core';
3
+ import { TuiTableFiltersDirective } from './table-filters.directive';
4
+ var TuiTableFiltersPipe = /** @class */ (function () {
5
+ function TuiTableFiltersPipe(filters) {
6
+ this.filters = filters;
7
+ }
8
+ TuiTableFiltersPipe.prototype.transform = function (items) {
9
+ return this.filters.filter(items);
10
+ };
11
+ TuiTableFiltersPipe.ctorParameters = function () { return [
12
+ { type: TuiTableFiltersDirective, decorators: [{ type: Inject, args: [TuiTableFiltersDirective,] }] }
13
+ ]; };
14
+ TuiTableFiltersPipe = __decorate([
15
+ Pipe({
16
+ name: 'tuiTableFilters',
17
+ }),
18
+ __param(0, Inject(TuiTableFiltersDirective))
19
+ ], TuiTableFiltersPipe);
20
+ return TuiTableFiltersPipe;
21
+ }());
22
+ export { TuiTableFiltersPipe };
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZmlsdGVycy5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLXRhYmxlL2RpcmVjdGl2ZXMvdGFibGUtZmlsdGVycy8iLCJzb3VyY2VzIjpbInRhYmxlLWZpbHRlcnMucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBRzFELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBS25FO0lBQ0ksNkJBRXFCLE9BQW9DO1FBQXBDLFlBQU8sR0FBUCxPQUFPLENBQTZCO0lBQ3RELENBQUM7SUFFSix1Q0FBUyxHQUFULFVBQVUsS0FBbUI7UUFDekIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDOztnQkFMNkIsd0JBQXdCLHVCQURqRCxNQUFNLFNBQUMsd0JBQXdCOztJQUYzQixtQkFBbUI7UUFIL0IsSUFBSSxDQUFDO1lBQ0YsSUFBSSxFQUFFLGlCQUFpQjtTQUMxQixDQUFDO1FBR08sV0FBQSxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtPQUY1QixtQkFBbUIsQ0FTL0I7SUFBRCwwQkFBQztDQUFBLEFBVEQsSUFTQztTQVRZLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpVGFibGVGaWx0ZXJzRGlyZWN0aXZlfSBmcm9tICcuL3RhYmxlLWZpbHRlcnMuZGlyZWN0aXZlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICd0dWlUYWJsZUZpbHRlcnMnLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUYWJsZUZpbHRlcnNQaXBlPFQ+IGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpVGFibGVGaWx0ZXJzRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGZpbHRlcnM6IFR1aVRhYmxlRmlsdGVyc0RpcmVjdGl2ZTxUPixcbiAgICApIHt9XG5cbiAgICB0cmFuc2Zvcm0oaXRlbXM6IHJlYWRvbmx5IFRbXSk6IE9ic2VydmFibGU8cmVhZG9ubHkgVFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlcnMuZmlsdGVyKGl0ZW1zKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tdGFibGUtZGlyZWN0aXZlcy10YWJsZS1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLXRhYmxlL2RpcmVjdGl2ZXMvdGFibGUtZmlsdGVycy8iLCJzb3VyY2VzIjpbInRhaWdhLXVpLWFkZG9uLXRhYmxlLWRpcmVjdGl2ZXMtdGFibGUtZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktYWRkb24tdGFibGUtZGlyZWN0aXZlcy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi10YWJsZS9kaXJlY3RpdmVzLyIsInNvdXJjZXMiOlsidGFpZ2EtdWktYWRkb24tdGFibGUtZGlyZWN0aXZlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
package/esm5/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from '@taiga-ui/addon-table/components';
2
+ export * from '@taiga-ui/addon-table/directives';
2
3
  export * from '@taiga-ui/addon-table/tokens';
3
4
  export * from '@taiga-ui/addon-table/utils';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tdGFibGUvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9hZGRvbi10YWJsZS9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9hZGRvbi10YWJsZS90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2FkZG9uLXRhYmxlL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9hZGRvbi10YWJsZS91dGlscyc7XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tdGFibGUvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2FkZG9uLXRhYmxlL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2FkZG9uLXRhYmxlL2RpcmVjdGl2ZXMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2FkZG9uLXRhYmxlL3Rva2Vucyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvYWRkb24tdGFibGUvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2FkZG9uLXRhYmxlL3V0aWxzJztcbiJdfQ==
@@ -0,0 +1,152 @@
1
+ import { __decorate, __param } from 'tslib';
2
+ import { Input, Directive, Optional, Inject, Pipe, NgModule } from '@angular/core';
3
+ import { ALWAYS_TRUE_HANDLER } from '@taiga-ui/cdk';
4
+ import { NgControl } from '@angular/forms';
5
+ import { TuiHeadDirective } from '@taiga-ui/addon-table/components';
6
+ import { ReplaySubject, identity, merge, defer, EMPTY } from 'rxjs';
7
+ import { switchMap, startWith, map, distinctUntilChanged } from 'rxjs/operators';
8
+
9
+ class AbstractTuiTableFilter {
10
+ }
11
+
12
+ var TuiGenericFilterDirective_1;
13
+ let TuiGenericFilterDirective = TuiGenericFilterDirective_1 = class TuiGenericFilterDirective extends AbstractTuiTableFilter {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.tuiGenericFilter = ALWAYS_TRUE_HANDLER;
17
+ }
18
+ filter(item, value) {
19
+ return this.tuiGenericFilter(item, value);
20
+ }
21
+ };
22
+ __decorate([
23
+ Input()
24
+ ], TuiGenericFilterDirective.prototype, "tuiGenericFilter", void 0);
25
+ TuiGenericFilterDirective = TuiGenericFilterDirective_1 = __decorate([
26
+ Directive({
27
+ selector: '[tuiGenericFilter]',
28
+ providers: [
29
+ {
30
+ provide: AbstractTuiTableFilter,
31
+ useExisting: TuiGenericFilterDirective_1,
32
+ },
33
+ ],
34
+ })
35
+ ], TuiGenericFilterDirective);
36
+
37
+ let TuiTableFiltersDirective = class TuiTableFiltersDirective {
38
+ constructor() {
39
+ this.refresh$ = new ReplaySubject(1);
40
+ this.filters = [];
41
+ }
42
+ register(filter) {
43
+ this.filters = this.filters.concat(filter);
44
+ this.update();
45
+ }
46
+ unregister(filter) {
47
+ this.filters = this.filters.filter(item => item !== filter);
48
+ this.update();
49
+ }
50
+ filter(items) {
51
+ return this.refresh$.pipe(switchMap(identity), startWith(null), map(() => items.filter(item => this.check(item))));
52
+ }
53
+ check(item) {
54
+ return this.filters.every(filter => filter.filter(item));
55
+ }
56
+ update() {
57
+ this.refresh$.next(merge(...this.filters.map(({ refresh$ }) => refresh$)));
58
+ }
59
+ };
60
+ TuiTableFiltersDirective = __decorate([
61
+ Directive({
62
+ selector: '[tuiTableFilters]',
63
+ })
64
+ ], TuiTableFiltersDirective);
65
+
66
+ let TuiTableFilterDirective = class TuiTableFilterDirective {
67
+ constructor(head, delegate, control, filters) {
68
+ this.head = head;
69
+ this.delegate = delegate;
70
+ this.control = control;
71
+ this.filters = filters;
72
+ this.refresh$ = defer(() => {
73
+ var _a;
74
+ return merge(this.control.valueChanges || EMPTY, ((_a = this.control.statusChanges) === null || _a === void 0 ? void 0 : _a.pipe(distinctUntilChanged())) || EMPTY);
75
+ });
76
+ this.filters.register(this);
77
+ }
78
+ ngOnDestroy() {
79
+ this.filters.unregister(this);
80
+ }
81
+ filter(item) {
82
+ const { disabled, value } = this.control;
83
+ return !!disabled || !this.key || this.delegate.filter(item[this.key], value);
84
+ }
85
+ get key() {
86
+ var _a;
87
+ return this.tuiTableFilter || ((_a = this.head) === null || _a === void 0 ? void 0 : _a.tuiHead);
88
+ }
89
+ };
90
+ TuiTableFilterDirective.ctorParameters = () => [
91
+ { type: TuiHeadDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiHeadDirective,] }] },
92
+ { type: AbstractTuiTableFilter, decorators: [{ type: Inject, args: [AbstractTuiTableFilter,] }] },
93
+ { type: NgControl, decorators: [{ type: Inject, args: [NgControl,] }] },
94
+ { type: TuiTableFiltersDirective, decorators: [{ type: Inject, args: [TuiTableFiltersDirective,] }] }
95
+ ];
96
+ __decorate([
97
+ Input()
98
+ ], TuiTableFilterDirective.prototype, "tuiTableFilter", void 0);
99
+ TuiTableFilterDirective = __decorate([
100
+ Directive({
101
+ selector: '[tuiTableFilter]',
102
+ }),
103
+ __param(0, Optional()),
104
+ __param(0, Inject(TuiHeadDirective)),
105
+ __param(1, Inject(AbstractTuiTableFilter)),
106
+ __param(2, Inject(NgControl)),
107
+ __param(3, Inject(TuiTableFiltersDirective))
108
+ ], TuiTableFilterDirective);
109
+
110
+ let TuiTableFiltersPipe = class TuiTableFiltersPipe {
111
+ constructor(filters) {
112
+ this.filters = filters;
113
+ }
114
+ transform(items) {
115
+ return this.filters.filter(items);
116
+ }
117
+ };
118
+ TuiTableFiltersPipe.ctorParameters = () => [
119
+ { type: TuiTableFiltersDirective, decorators: [{ type: Inject, args: [TuiTableFiltersDirective,] }] }
120
+ ];
121
+ TuiTableFiltersPipe = __decorate([
122
+ Pipe({
123
+ name: 'tuiTableFilters',
124
+ }),
125
+ __param(0, Inject(TuiTableFiltersDirective))
126
+ ], TuiTableFiltersPipe);
127
+
128
+ let TuiTableFiltersModule = class TuiTableFiltersModule {
129
+ };
130
+ TuiTableFiltersModule = __decorate([
131
+ NgModule({
132
+ declarations: [
133
+ TuiTableFiltersDirective,
134
+ TuiTableFilterDirective,
135
+ TuiTableFiltersPipe,
136
+ TuiGenericFilterDirective,
137
+ ],
138
+ exports: [
139
+ TuiTableFiltersDirective,
140
+ TuiTableFilterDirective,
141
+ TuiTableFiltersPipe,
142
+ TuiGenericFilterDirective,
143
+ ],
144
+ })
145
+ ], TuiTableFiltersModule);
146
+
147
+ /**
148
+ * Generated bundle index. Do not edit.
149
+ */
150
+
151
+ export { AbstractTuiTableFilter, TuiGenericFilterDirective, TuiTableFilterDirective, TuiTableFiltersDirective, TuiTableFiltersModule, TuiTableFiltersPipe };
152
+ //# sourceMappingURL=taiga-ui-addon-table-directives-table-filters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-addon-table-directives-table-filters.js","sources":["ng://@taiga-ui/addon-table/directives/table-filters/abstract-table-filter.ts","ng://@taiga-ui/addon-table/directives/table-filters/generic-filter.directive.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filters.directive.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filter.directive.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filters.pipe.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filters.module.ts","ng://@taiga-ui/addon-table/directives/table-filters/taiga-ui-addon-table-directives-table-filters.ts"],"sourcesContent":["export abstract class AbstractTuiTableFilter<T, G> {\n abstract filter(item: T, value: G): boolean;\n}\n","import {Directive, Input} from '@angular/core';\nimport {ALWAYS_TRUE_HANDLER} from '@taiga-ui/cdk';\n\nimport {AbstractTuiTableFilter} from './abstract-table-filter';\n\n@Directive({\n selector: '[tuiGenericFilter]',\n providers: [\n {\n provide: AbstractTuiTableFilter,\n useExisting: TuiGenericFilterDirective,\n },\n ],\n})\nexport class TuiGenericFilterDirective<T, G> extends AbstractTuiTableFilter<T, G> {\n @Input()\n tuiGenericFilter: (item: T, value: G) => boolean = ALWAYS_TRUE_HANDLER;\n\n filter(item: T, value: G): boolean {\n return this.tuiGenericFilter(item, value);\n }\n}\n","import {Directive} from '@angular/core';\nimport {identity, merge, Observable, ReplaySubject} from 'rxjs';\nimport {map, startWith, switchMap} from 'rxjs/operators';\n\nimport {TuiTableFilter} from './table-filter';\n\n@Directive({\n selector: '[tuiTableFilters]',\n})\nexport class TuiTableFiltersDirective<T> {\n private readonly refresh$ = new ReplaySubject<Observable<unknown>>(1);\n\n private filters: ReadonlyArray<TuiTableFilter<T>> = [];\n\n register(filter: TuiTableFilter<T>): void {\n this.filters = this.filters.concat(filter);\n this.update();\n }\n\n unregister(filter: TuiTableFilter<T>): void {\n this.filters = this.filters.filter(item => item !== filter);\n this.update();\n }\n\n filter(items: readonly T[]): Observable<readonly T[]> {\n return this.refresh$.pipe(\n switchMap(identity),\n startWith(null),\n map(() => items.filter(item => this.check(item))),\n );\n }\n\n private check(item: T): boolean {\n return this.filters.every(filter => filter.filter(item));\n }\n\n private update(): void {\n this.refresh$.next(merge(...this.filters.map(({refresh$}) => refresh$)));\n }\n}\n","import {Directive, Inject, Input, OnDestroy, Optional} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiHeadDirective} from '@taiga-ui/addon-table/components';\nimport {defer, EMPTY, merge} from 'rxjs';\nimport {distinctUntilChanged} from 'rxjs/operators';\n\nimport {AbstractTuiTableFilter} from './abstract-table-filter';\nimport {TuiTableFilter} from './table-filter';\nimport {TuiTableFiltersDirective} from './table-filters.directive';\n\n@Directive({\n selector: '[tuiTableFilter]',\n})\nexport class TuiTableFilterDirective<T> implements OnDestroy, TuiTableFilter<T> {\n @Input()\n tuiTableFilter?: keyof T;\n\n readonly refresh$ = defer(() =>\n merge(\n this.control.valueChanges || EMPTY,\n this.control.statusChanges?.pipe(distinctUntilChanged()) || EMPTY,\n ),\n );\n\n constructor(\n @Optional()\n @Inject(TuiHeadDirective)\n private readonly head: TuiHeadDirective<T> | null,\n @Inject(AbstractTuiTableFilter)\n private readonly delegate: AbstractTuiTableFilter<T[keyof T], any>,\n @Inject(NgControl) private readonly control: NgControl,\n @Inject(TuiTableFiltersDirective) readonly filters: TuiTableFiltersDirective<T>,\n ) {\n this.filters.register(this);\n }\n\n ngOnDestroy(): void {\n this.filters.unregister(this);\n }\n\n filter(item: T): boolean {\n const {disabled, value} = this.control;\n\n return !!disabled || !this.key || this.delegate.filter(item[this.key], value);\n }\n\n private get key(): keyof T | undefined {\n return this.tuiTableFilter || this.head?.tuiHead;\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {Observable} from 'rxjs';\n\nimport {TuiTableFiltersDirective} from './table-filters.directive';\n\n@Pipe({\n name: 'tuiTableFilters',\n})\nexport class TuiTableFiltersPipe<T> implements PipeTransform {\n constructor(\n @Inject(TuiTableFiltersDirective)\n private readonly filters: TuiTableFiltersDirective<T>,\n ) {}\n\n transform(items: readonly T[]): Observable<readonly T[]> {\n return this.filters.filter(items);\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiGenericFilterDirective} from './generic-filter.directive';\nimport {TuiTableFilterDirective} from './table-filter.directive';\nimport {TuiTableFiltersDirective} from './table-filters.directive';\nimport {TuiTableFiltersPipe} from './table-filters.pipe';\n\n@NgModule({\n declarations: [\n TuiTableFiltersDirective,\n TuiTableFilterDirective,\n TuiTableFiltersPipe,\n TuiGenericFilterDirective,\n ],\n exports: [\n TuiTableFiltersDirective,\n TuiTableFilterDirective,\n TuiTableFiltersPipe,\n TuiGenericFilterDirective,\n ],\n})\nexport class TuiTableFiltersModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export * from '@taiga-ui/addon-table/directives/table-filters';
2
+
3
+ /**
4
+ * Generated bundle index. Do not edit.
5
+ */
6
+ //# sourceMappingURL=taiga-ui-addon-table-directives.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-addon-table-directives.js","sources":["ng://@taiga-ui/addon-table/directives/taiga-ui-addon-table-directives.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAAA;;"}
@@ -1,4 +1,5 @@
1
1
  export * from '@taiga-ui/addon-table/components';
2
+ export * from '@taiga-ui/addon-table/directives';
2
3
  export * from '@taiga-ui/addon-table/tokens';
3
4
  export * from '@taiga-ui/addon-table/utils';
4
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-table.js","sources":["ng://@taiga-ui/addon-table/taiga-ui-addon-table.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;"}
1
+ {"version":3,"file":"taiga-ui-addon-table.js","sources":["ng://@taiga-ui/addon-table/taiga-ui-addon-table.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAAA;;"}
@@ -0,0 +1,174 @@
1
+ import { __extends, __decorate, __spread, __param } from 'tslib';
2
+ import { Input, Directive, Optional, Inject, Pipe, NgModule } from '@angular/core';
3
+ import { ALWAYS_TRUE_HANDLER } from '@taiga-ui/cdk';
4
+ import { NgControl } from '@angular/forms';
5
+ import { TuiHeadDirective } from '@taiga-ui/addon-table/components';
6
+ import { ReplaySubject, identity, merge, defer, EMPTY } from 'rxjs';
7
+ import { switchMap, startWith, map, distinctUntilChanged } from 'rxjs/operators';
8
+
9
+ var AbstractTuiTableFilter = /** @class */ (function () {
10
+ function AbstractTuiTableFilter() {
11
+ }
12
+ return AbstractTuiTableFilter;
13
+ }());
14
+
15
+ var TuiGenericFilterDirective = /** @class */ (function (_super) {
16
+ __extends(TuiGenericFilterDirective, _super);
17
+ function TuiGenericFilterDirective() {
18
+ var _this = _super !== null && _super.apply(this, arguments) || this;
19
+ _this.tuiGenericFilter = ALWAYS_TRUE_HANDLER;
20
+ return _this;
21
+ }
22
+ TuiGenericFilterDirective_1 = TuiGenericFilterDirective;
23
+ TuiGenericFilterDirective.prototype.filter = function (item, value) {
24
+ return this.tuiGenericFilter(item, value);
25
+ };
26
+ var TuiGenericFilterDirective_1;
27
+ __decorate([
28
+ Input()
29
+ ], TuiGenericFilterDirective.prototype, "tuiGenericFilter", void 0);
30
+ TuiGenericFilterDirective = TuiGenericFilterDirective_1 = __decorate([
31
+ Directive({
32
+ selector: '[tuiGenericFilter]',
33
+ providers: [
34
+ {
35
+ provide: AbstractTuiTableFilter,
36
+ useExisting: TuiGenericFilterDirective_1,
37
+ },
38
+ ],
39
+ })
40
+ ], TuiGenericFilterDirective);
41
+ return TuiGenericFilterDirective;
42
+ }(AbstractTuiTableFilter));
43
+
44
+ var TuiTableFiltersDirective = /** @class */ (function () {
45
+ function TuiTableFiltersDirective() {
46
+ this.refresh$ = new ReplaySubject(1);
47
+ this.filters = [];
48
+ }
49
+ TuiTableFiltersDirective.prototype.register = function (filter) {
50
+ this.filters = this.filters.concat(filter);
51
+ this.update();
52
+ };
53
+ TuiTableFiltersDirective.prototype.unregister = function (filter) {
54
+ this.filters = this.filters.filter(function (item) { return item !== filter; });
55
+ this.update();
56
+ };
57
+ TuiTableFiltersDirective.prototype.filter = function (items) {
58
+ var _this = this;
59
+ return this.refresh$.pipe(switchMap(identity), startWith(null), map(function () { return items.filter(function (item) { return _this.check(item); }); }));
60
+ };
61
+ TuiTableFiltersDirective.prototype.check = function (item) {
62
+ return this.filters.every(function (filter) { return filter.filter(item); });
63
+ };
64
+ TuiTableFiltersDirective.prototype.update = function () {
65
+ this.refresh$.next(merge.apply(void 0, __spread(this.filters.map(function (_a) {
66
+ var refresh$ = _a.refresh$;
67
+ return refresh$;
68
+ }))));
69
+ };
70
+ TuiTableFiltersDirective = __decorate([
71
+ Directive({
72
+ selector: '[tuiTableFilters]',
73
+ })
74
+ ], TuiTableFiltersDirective);
75
+ return TuiTableFiltersDirective;
76
+ }());
77
+
78
+ var TuiTableFilterDirective = /** @class */ (function () {
79
+ function TuiTableFilterDirective(head, delegate, control, filters) {
80
+ var _this = this;
81
+ this.head = head;
82
+ this.delegate = delegate;
83
+ this.control = control;
84
+ this.filters = filters;
85
+ this.refresh$ = defer(function () {
86
+ var _a;
87
+ return merge(_this.control.valueChanges || EMPTY, ((_a = _this.control.statusChanges) === null || _a === void 0 ? void 0 : _a.pipe(distinctUntilChanged())) || EMPTY);
88
+ });
89
+ this.filters.register(this);
90
+ }
91
+ TuiTableFilterDirective.prototype.ngOnDestroy = function () {
92
+ this.filters.unregister(this);
93
+ };
94
+ TuiTableFilterDirective.prototype.filter = function (item) {
95
+ var _a = this.control, disabled = _a.disabled, value = _a.value;
96
+ return !!disabled || !this.key || this.delegate.filter(item[this.key], value);
97
+ };
98
+ Object.defineProperty(TuiTableFilterDirective.prototype, "key", {
99
+ get: function () {
100
+ var _a;
101
+ return this.tuiTableFilter || ((_a = this.head) === null || _a === void 0 ? void 0 : _a.tuiHead);
102
+ },
103
+ enumerable: true,
104
+ configurable: true
105
+ });
106
+ TuiTableFilterDirective.ctorParameters = function () { return [
107
+ { type: TuiHeadDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiHeadDirective,] }] },
108
+ { type: AbstractTuiTableFilter, decorators: [{ type: Inject, args: [AbstractTuiTableFilter,] }] },
109
+ { type: NgControl, decorators: [{ type: Inject, args: [NgControl,] }] },
110
+ { type: TuiTableFiltersDirective, decorators: [{ type: Inject, args: [TuiTableFiltersDirective,] }] }
111
+ ]; };
112
+ __decorate([
113
+ Input()
114
+ ], TuiTableFilterDirective.prototype, "tuiTableFilter", void 0);
115
+ TuiTableFilterDirective = __decorate([
116
+ Directive({
117
+ selector: '[tuiTableFilter]',
118
+ }),
119
+ __param(0, Optional()),
120
+ __param(0, Inject(TuiHeadDirective)),
121
+ __param(1, Inject(AbstractTuiTableFilter)),
122
+ __param(2, Inject(NgControl)),
123
+ __param(3, Inject(TuiTableFiltersDirective))
124
+ ], TuiTableFilterDirective);
125
+ return TuiTableFilterDirective;
126
+ }());
127
+
128
+ var TuiTableFiltersPipe = /** @class */ (function () {
129
+ function TuiTableFiltersPipe(filters) {
130
+ this.filters = filters;
131
+ }
132
+ TuiTableFiltersPipe.prototype.transform = function (items) {
133
+ return this.filters.filter(items);
134
+ };
135
+ TuiTableFiltersPipe.ctorParameters = function () { return [
136
+ { type: TuiTableFiltersDirective, decorators: [{ type: Inject, args: [TuiTableFiltersDirective,] }] }
137
+ ]; };
138
+ TuiTableFiltersPipe = __decorate([
139
+ Pipe({
140
+ name: 'tuiTableFilters',
141
+ }),
142
+ __param(0, Inject(TuiTableFiltersDirective))
143
+ ], TuiTableFiltersPipe);
144
+ return TuiTableFiltersPipe;
145
+ }());
146
+
147
+ var TuiTableFiltersModule = /** @class */ (function () {
148
+ function TuiTableFiltersModule() {
149
+ }
150
+ TuiTableFiltersModule = __decorate([
151
+ NgModule({
152
+ declarations: [
153
+ TuiTableFiltersDirective,
154
+ TuiTableFilterDirective,
155
+ TuiTableFiltersPipe,
156
+ TuiGenericFilterDirective,
157
+ ],
158
+ exports: [
159
+ TuiTableFiltersDirective,
160
+ TuiTableFilterDirective,
161
+ TuiTableFiltersPipe,
162
+ TuiGenericFilterDirective,
163
+ ],
164
+ })
165
+ ], TuiTableFiltersModule);
166
+ return TuiTableFiltersModule;
167
+ }());
168
+
169
+ /**
170
+ * Generated bundle index. Do not edit.
171
+ */
172
+
173
+ export { AbstractTuiTableFilter, TuiGenericFilterDirective, TuiTableFilterDirective, TuiTableFiltersDirective, TuiTableFiltersModule, TuiTableFiltersPipe };
174
+ //# sourceMappingURL=taiga-ui-addon-table-directives-table-filters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-addon-table-directives-table-filters.js","sources":["ng://@taiga-ui/addon-table/directives/table-filters/abstract-table-filter.ts","ng://@taiga-ui/addon-table/directives/table-filters/generic-filter.directive.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filters.directive.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filter.directive.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filters.pipe.ts","ng://@taiga-ui/addon-table/directives/table-filters/table-filters.module.ts","ng://@taiga-ui/addon-table/directives/table-filters/taiga-ui-addon-table-directives-table-filters.ts"],"sourcesContent":["export abstract class AbstractTuiTableFilter<T, G> {\n abstract filter(item: T, value: G): boolean;\n}\n","import {Directive, Input} from '@angular/core';\nimport {ALWAYS_TRUE_HANDLER} from '@taiga-ui/cdk';\n\nimport {AbstractTuiTableFilter} from './abstract-table-filter';\n\n@Directive({\n selector: '[tuiGenericFilter]',\n providers: [\n {\n provide: AbstractTuiTableFilter,\n useExisting: TuiGenericFilterDirective,\n },\n ],\n})\nexport class TuiGenericFilterDirective<T, G> extends AbstractTuiTableFilter<T, G> {\n @Input()\n tuiGenericFilter: (item: T, value: G) => boolean = ALWAYS_TRUE_HANDLER;\n\n filter(item: T, value: G): boolean {\n return this.tuiGenericFilter(item, value);\n }\n}\n","import {Directive} from '@angular/core';\nimport {identity, merge, Observable, ReplaySubject} from 'rxjs';\nimport {map, startWith, switchMap} from 'rxjs/operators';\n\nimport {TuiTableFilter} from './table-filter';\n\n@Directive({\n selector: '[tuiTableFilters]',\n})\nexport class TuiTableFiltersDirective<T> {\n private readonly refresh$ = new ReplaySubject<Observable<unknown>>(1);\n\n private filters: ReadonlyArray<TuiTableFilter<T>> = [];\n\n register(filter: TuiTableFilter<T>): void {\n this.filters = this.filters.concat(filter);\n this.update();\n }\n\n unregister(filter: TuiTableFilter<T>): void {\n this.filters = this.filters.filter(item => item !== filter);\n this.update();\n }\n\n filter(items: readonly T[]): Observable<readonly T[]> {\n return this.refresh$.pipe(\n switchMap(identity),\n startWith(null),\n map(() => items.filter(item => this.check(item))),\n );\n }\n\n private check(item: T): boolean {\n return this.filters.every(filter => filter.filter(item));\n }\n\n private update(): void {\n this.refresh$.next(merge(...this.filters.map(({refresh$}) => refresh$)));\n }\n}\n","import {Directive, Inject, Input, OnDestroy, Optional} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiHeadDirective} from '@taiga-ui/addon-table/components';\nimport {defer, EMPTY, merge} from 'rxjs';\nimport {distinctUntilChanged} from 'rxjs/operators';\n\nimport {AbstractTuiTableFilter} from './abstract-table-filter';\nimport {TuiTableFilter} from './table-filter';\nimport {TuiTableFiltersDirective} from './table-filters.directive';\n\n@Directive({\n selector: '[tuiTableFilter]',\n})\nexport class TuiTableFilterDirective<T> implements OnDestroy, TuiTableFilter<T> {\n @Input()\n tuiTableFilter?: keyof T;\n\n readonly refresh$ = defer(() =>\n merge(\n this.control.valueChanges || EMPTY,\n this.control.statusChanges?.pipe(distinctUntilChanged()) || EMPTY,\n ),\n );\n\n constructor(\n @Optional()\n @Inject(TuiHeadDirective)\n private readonly head: TuiHeadDirective<T> | null,\n @Inject(AbstractTuiTableFilter)\n private readonly delegate: AbstractTuiTableFilter<T[keyof T], any>,\n @Inject(NgControl) private readonly control: NgControl,\n @Inject(TuiTableFiltersDirective) readonly filters: TuiTableFiltersDirective<T>,\n ) {\n this.filters.register(this);\n }\n\n ngOnDestroy(): void {\n this.filters.unregister(this);\n }\n\n filter(item: T): boolean {\n const {disabled, value} = this.control;\n\n return !!disabled || !this.key || this.delegate.filter(item[this.key], value);\n }\n\n private get key(): keyof T | undefined {\n return this.tuiTableFilter || this.head?.tuiHead;\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {Observable} from 'rxjs';\n\nimport {TuiTableFiltersDirective} from './table-filters.directive';\n\n@Pipe({\n name: 'tuiTableFilters',\n})\nexport class TuiTableFiltersPipe<T> implements PipeTransform {\n constructor(\n @Inject(TuiTableFiltersDirective)\n private readonly filters: TuiTableFiltersDirective<T>,\n ) {}\n\n transform(items: readonly T[]): Observable<readonly T[]> {\n return this.filters.filter(items);\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiGenericFilterDirective} from './generic-filter.directive';\nimport {TuiTableFilterDirective} from './table-filter.directive';\nimport {TuiTableFiltersDirective} from './table-filters.directive';\nimport {TuiTableFiltersPipe} from './table-filters.pipe';\n\n@NgModule({\n declarations: [\n TuiTableFiltersDirective,\n TuiTableFilterDirective,\n TuiTableFiltersPipe,\n TuiGenericFilterDirective,\n ],\n exports: [\n TuiTableFiltersDirective,\n TuiTableFilterDirective,\n TuiTableFiltersPipe,\n TuiGenericFilterDirective,\n ],\n})\nexport class TuiTableFiltersModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export * from '@taiga-ui/addon-table/directives/table-filters';
2
+
3
+ /**
4
+ * Generated bundle index. Do not edit.
5
+ */
6
+ //# sourceMappingURL=taiga-ui-addon-table-directives.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-addon-table-directives.js","sources":["ng://@taiga-ui/addon-table/directives/taiga-ui-addon-table-directives.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAAA;;"}
@@ -1,4 +1,5 @@
1
1
  export * from '@taiga-ui/addon-table/components';
2
+ export * from '@taiga-ui/addon-table/directives';
2
3
  export * from '@taiga-ui/addon-table/tokens';
3
4
  export * from '@taiga-ui/addon-table/utils';
4
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-table.js","sources":["ng://@taiga-ui/addon-table/taiga-ui-addon-table.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;"}
1
+ {"version":3,"file":"taiga-ui-addon-table.js","sources":["ng://@taiga-ui/addon-table/taiga-ui-addon-table.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAAA;;"}
package/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from '@taiga-ui/addon-table/components';
2
+ export * from '@taiga-ui/addon-table/directives';
2
3
  export * from '@taiga-ui/addon-table/tokens';
3
4
  export * from '@taiga-ui/addon-table/types';
4
5
  export * from '@taiga-ui/addon-table/utils';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/addon-table",
3
- "version": "2.53.0",
3
+ "version": "2.55.0",
4
4
  "description": "A library to display tabled data with filters, search, group actions, etc.",
5
5
  "keywords": [
6
6
  "angular",
@@ -16,10 +16,10 @@
16
16
  "@angular/cdk": ">=9.0.0",
17
17
  "@angular/common": ">=9.0.0",
18
18
  "@angular/core": ">=9.0.0",
19
- "@ng-web-apis/intersection-observer": ">=2.1.0",
20
- "@taiga-ui/cdk": ">=2.53.0",
21
- "@taiga-ui/core": ">=2.53.0",
22
- "@taiga-ui/i18n": ">=2.53.0",
19
+ "@ng-web-apis/intersection-observer": ">=2.1.0 < 3",
20
+ "@taiga-ui/cdk": ">=2.55.0",
21
+ "@taiga-ui/core": ">=2.55.0",
22
+ "@taiga-ui/i18n": ">=2.55.0",
23
23
  "@tinkoff/ng-polymorpheus": ">=3.1.12 < 4",
24
24
  "rxjs": ">=6.0.0"
25
25
  },
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"exports":[{"from":"@taiga-ui/addon-table/components"},{"from":"@taiga-ui/addon-table/tokens"},{"from":"@taiga-ui/addon-table/types"},{"from":"@taiga-ui/addon-table/utils"}],"metadata":{},"origins":{},"importAs":"@taiga-ui/addon-table"}
1
+ {"__symbolic":"module","version":4,"exports":[{"from":"@taiga-ui/addon-table/components"},{"from":"@taiga-ui/addon-table/directives"},{"from":"@taiga-ui/addon-table/tokens"},{"from":"@taiga-ui/addon-table/types"},{"from":"@taiga-ui/addon-table/utils"}],"metadata":{},"origins":{},"importAs":"@taiga-ui/addon-table"}