@firestitch/filter 13.3.1 → 13.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/components/saved-filter/index.d.ts +3 -0
- package/app/components/saved-filter/saved-filter-edit/index.d.ts +1 -0
- package/app/components/{saved-filter-edit → saved-filter/saved-filter-edit}/saved-filter-edit.component.d.ts +2 -2
- package/app/components/saved-filter/saved-filter-manage/index.d.ts +1 -0
- package/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.d.ts +16 -0
- package/app/components/saved-filter/saved-filters-menu/index.d.ts +1 -0
- package/app/components/{saved-filters-menu → saved-filter/saved-filters-menu}/saved-filters-menu.component.d.ts +7 -5
- package/app/fs-filter.module.d.ts +37 -35
- package/app/helpers/create-filter-item.d.ts +1 -1
- package/app/services/items-store.service.d.ts +1 -0
- package/esm2020/app/components/saved-filter/index.mjs +4 -0
- package/esm2020/app/components/saved-filter/saved-filter-edit/index.mjs +2 -0
- package/esm2020/app/components/{saved-filter-edit → saved-filter/saved-filter-edit}/saved-filter-edit.component.mjs +1 -1
- package/esm2020/app/components/saved-filter/saved-filter-manage/index.mjs +2 -0
- package/esm2020/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +40 -0
- package/esm2020/app/components/saved-filter/saved-filters-menu/index.mjs +2 -0
- package/esm2020/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.mjs +52 -0
- package/esm2020/app/fs-filter.module.mjs +10 -3
- package/esm2020/app/helpers/restore-items.mjs +4 -4
- package/esm2020/app/services/external-params/saved-filters-controller.service.mjs +6 -6
- package/esm2020/app/services/external-params-controller.service.mjs +23 -6
- package/esm2020/app/services/items-store.service.mjs +4 -1
- package/esm2020/public_api.mjs +2 -2
- package/fesm2015/firestitch-filter.mjs +67 -15
- package/fesm2015/firestitch-filter.mjs.map +1 -1
- package/fesm2020/firestitch-filter.mjs +221 -159
- package/fesm2020/firestitch-filter.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -1
- package/esm2020/app/components/saved-filters-menu/saved-filters-menu.component.mjs +0 -44
|
@@ -29,6 +29,8 @@ import * as i7 from '@firestitch/form';
|
|
|
29
29
|
import { FsFormModule } from '@firestitch/form';
|
|
30
30
|
import * as i3$2 from '@angular/material/input';
|
|
31
31
|
import { MatInput, MatInputModule } from '@angular/material/input';
|
|
32
|
+
import * as i4$3 from '@angular/cdk/drag-drop';
|
|
33
|
+
import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
|
|
32
34
|
import { ComponentPortal, PortalInjector, PortalModule } from '@angular/cdk/portal';
|
|
33
35
|
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
34
36
|
import * as i4$2 from '@angular/material/checkbox';
|
|
@@ -1435,6 +1437,9 @@ class FsFilterItemsStore {
|
|
|
1435
1437
|
get items() {
|
|
1436
1438
|
return this._items;
|
|
1437
1439
|
}
|
|
1440
|
+
get itemNames() {
|
|
1441
|
+
return this._items.map((item) => item.name);
|
|
1442
|
+
}
|
|
1438
1443
|
get visibleItems() {
|
|
1439
1444
|
return this._visibleItems$.getValue();
|
|
1440
1445
|
}
|
|
@@ -2073,17 +2078,17 @@ class SavedFiltersController {
|
|
|
2073
2078
|
}
|
|
2074
2079
|
order(savedFilters) {
|
|
2075
2080
|
return this._config.order(savedFilters)
|
|
2076
|
-
.pipe(tap((
|
|
2081
|
+
.pipe(tap(() => {
|
|
2077
2082
|
this.savedFilters = [
|
|
2078
|
-
...
|
|
2083
|
+
...savedFilters,
|
|
2079
2084
|
];
|
|
2080
2085
|
}));
|
|
2081
2086
|
}
|
|
2082
2087
|
delete(savedFilter) {
|
|
2083
2088
|
return this._config.delete(savedFilter)
|
|
2084
|
-
.pipe(tap((
|
|
2089
|
+
.pipe(tap(() => {
|
|
2085
2090
|
this.savedFilters = this.savedFilters
|
|
2086
|
-
.filter((f) => f.id !==
|
|
2091
|
+
.filter((f) => f.id !== savedFilter.id);
|
|
2087
2092
|
}));
|
|
2088
2093
|
}
|
|
2089
2094
|
setActiveFilter(savedFilter) {
|
|
@@ -2170,15 +2175,20 @@ class ExternalParamsController {
|
|
|
2170
2175
|
}
|
|
2171
2176
|
get params() {
|
|
2172
2177
|
var _a;
|
|
2173
|
-
|
|
2178
|
+
let result = {};
|
|
2174
2179
|
if (this._persistanceStore.enabled) {
|
|
2175
|
-
Object.assign(result, (_a = this._persistanceStore.value) === null || _a === void 0 ? void 0 : _a.data);
|
|
2180
|
+
result = Object.assign(Object.assign({}, result), (_a = this._persistanceStore.value) === null || _a === void 0 ? void 0 : _a.data);
|
|
2176
2181
|
}
|
|
2177
2182
|
if (this._savedFilters.enabled && this._savedFilters.activeFilter) {
|
|
2178
|
-
Object.
|
|
2183
|
+
const query = Object.keys(result)
|
|
2184
|
+
.filter((key) => !this._itemsStore.itemNames.includes(key))
|
|
2185
|
+
.reduce((acc, key) => {
|
|
2186
|
+
return Object.assign(Object.assign({}, acc), { [key]: result[key] });
|
|
2187
|
+
}, {});
|
|
2188
|
+
result = Object.assign(Object.assign({}, query), this._savedFilters.activeFilterData);
|
|
2179
2189
|
}
|
|
2180
|
-
if (this._queryParams.enabled) {
|
|
2181
|
-
Object.assign(result, this._queryParams.fetchedParams);
|
|
2190
|
+
else if (this._queryParams.enabled) {
|
|
2191
|
+
result = Object.assign(Object.assign({}, result), this._queryParams.fetchedParams);
|
|
2182
2192
|
}
|
|
2183
2193
|
return result;
|
|
2184
2194
|
}
|
|
@@ -4306,11 +4316,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
|
|
|
4306
4316
|
args: [{ selector: 'filter-item-select-backdrop', changeDetection: ChangeDetectionStrategy.OnPush, template: "", styles: [":host{position:absolute;z-index:1002;inset:0}\n"] }]
|
|
4307
4317
|
}], ctorParameters: function () { return []; } });
|
|
4308
4318
|
|
|
4319
|
+
class FsFilterSavedFilterManageComponent {
|
|
4320
|
+
constructor(data, _cdRef) {
|
|
4321
|
+
this.data = data;
|
|
4322
|
+
this._cdRef = _cdRef;
|
|
4323
|
+
this._savedFiltersController = this.data.savedFiltersController;
|
|
4324
|
+
this.savedFilters = [...this._savedFiltersController.savedFilters];
|
|
4325
|
+
}
|
|
4326
|
+
remove(savedFilter) {
|
|
4327
|
+
this._savedFiltersController.delete(savedFilter)
|
|
4328
|
+
.subscribe(() => {
|
|
4329
|
+
this.savedFilters = [...this._savedFiltersController.savedFilters];
|
|
4330
|
+
this._cdRef.markForCheck();
|
|
4331
|
+
});
|
|
4332
|
+
}
|
|
4333
|
+
drop(event) {
|
|
4334
|
+
moveItemInArray(this.savedFilters, event.previousIndex, event.currentIndex);
|
|
4335
|
+
this._savedFiltersController.order(this.savedFilters)
|
|
4336
|
+
.subscribe();
|
|
4337
|
+
}
|
|
4338
|
+
}
|
|
4339
|
+
FsFilterSavedFilterManageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFilterSavedFilterManageComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
4340
|
+
FsFilterSavedFilterManageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FsFilterSavedFilterManageComponent, selector: "ng-component", ngImport: i0, template: "<h1 mat-dialog-title>\n Manage saved filters\n</h1>\n<div mat-dialog-content>\n <div\n cdkDropList \n [cdkDropListData]=\"savedFilters\"\n cdkDropListOrientation=\"vertical\"\n (cdkDropListDropped)=\"drop($event)\"> \n <ng-container \n *ngFor=\"let savedFilter of savedFilters\">\n <div class=\"chip-container\">\n <fs-chip \n cdkDrag\n (removed)=\"remove(savedFilter)\">\n {{savedFilter.name}}\n </fs-chip>\n </div>\n </ng-container>\n </div>\n</div>\n<div mat-dialog-actions>\n <button \n mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Done\n </button>\n</div>\n", styles: [".chip-container{padding:5px 0}.chip-container fs-chip{cursor:move}.cdk-drag-preview{box-sizing:border-box}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], components: [{ type: i2$3.FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "value", "icon", "image", "selected", "size", "backgroundColor", "borderColor", "color", "outlined"], outputs: ["selectedToggled", "removed"] }, { type: i1$3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1$1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1$1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i4$3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4$3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i1$1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i7.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit", "form"] }, { type: i1$1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4341
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFilterSavedFilterManageComponent, decorators: [{
|
|
4342
|
+
type: Component,
|
|
4343
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<h1 mat-dialog-title>\n Manage saved filters\n</h1>\n<div mat-dialog-content>\n <div\n cdkDropList \n [cdkDropListData]=\"savedFilters\"\n cdkDropListOrientation=\"vertical\"\n (cdkDropListDropped)=\"drop($event)\"> \n <ng-container \n *ngFor=\"let savedFilter of savedFilters\">\n <div class=\"chip-container\">\n <fs-chip \n cdkDrag\n (removed)=\"remove(savedFilter)\">\n {{savedFilter.name}}\n </fs-chip>\n </div>\n </ng-container>\n </div>\n</div>\n<div mat-dialog-actions>\n <button \n mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Done\n </button>\n</div>\n", styles: [".chip-container{padding:5px 0}.chip-container fs-chip{cursor:move}.cdk-drag-preview{box-sizing:border-box}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
4344
|
+
}], ctorParameters: function () {
|
|
4345
|
+
return [{ type: undefined, decorators: [{
|
|
4346
|
+
type: Inject,
|
|
4347
|
+
args: [MAT_DIALOG_DATA]
|
|
4348
|
+
}] }, { type: i0.ChangeDetectorRef }];
|
|
4349
|
+
} });
|
|
4350
|
+
|
|
4309
4351
|
class FsSavedFiltersMenuComponent {
|
|
4310
|
-
constructor(_itemsStore, _externalParams, _savedFilters) {
|
|
4352
|
+
constructor(_itemsStore, _externalParams, _savedFilters, _dialog) {
|
|
4311
4353
|
this._itemsStore = _itemsStore;
|
|
4312
4354
|
this._externalParams = _externalParams;
|
|
4313
4355
|
this._savedFilters = _savedFilters;
|
|
4356
|
+
this._dialog = _dialog;
|
|
4314
4357
|
this.clear = new EventEmitter();
|
|
4315
4358
|
}
|
|
4316
4359
|
get filters$() {
|
|
@@ -4328,15 +4371,19 @@ class FsSavedFiltersMenuComponent {
|
|
|
4328
4371
|
this.clear.emit();
|
|
4329
4372
|
}
|
|
4330
4373
|
manageFilters() {
|
|
4331
|
-
|
|
4374
|
+
this._dialog.open(FsFilterSavedFilterManageComponent, {
|
|
4375
|
+
data: {
|
|
4376
|
+
savedFiltersController: this._savedFilters,
|
|
4377
|
+
},
|
|
4378
|
+
});
|
|
4332
4379
|
}
|
|
4333
4380
|
}
|
|
4334
|
-
FsSavedFiltersMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsSavedFiltersMenuComponent, deps: [{ token: FsFilterItemsStore }, { token: ExternalParamsController }, { token: SavedFiltersController }], target: i0.ɵɵFactoryTarget.Component });
|
|
4335
|
-
FsSavedFiltersMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FsSavedFiltersMenuComponent, selector: "fs-filter-saved-filters-menu", outputs: { clear: "clear" }, ngImport: i0, template: "<a [fsMenuTriggerFor]=\"menu\" class=\"selector\">{{ (activeFilter$ | async)?.name || 'Not selected' }}</a>\n\n<fs-menu #menu>\n <ng-container *ngIf=\"activeFilter$ | async\">\n <ng-template fs-menu-item (click)=\"removeActiveFilter()\">\n None\n </ng-template>\n </ng-container>\n <ng-container *ngFor=\"let filter of filters$ | async\">\n
|
|
4381
|
+
FsSavedFiltersMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsSavedFiltersMenuComponent, deps: [{ token: FsFilterItemsStore }, { token: ExternalParamsController }, { token: SavedFiltersController }, { token: i1$1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
4382
|
+
FsSavedFiltersMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FsSavedFiltersMenuComponent, selector: "fs-filter-saved-filters-menu", outputs: { clear: "clear" }, ngImport: i0, template: "<a [fsMenuTriggerFor]=\"menu\" class=\"selector\">{{ (activeFilter$ | async)?.name || 'Not selected' }}</a>\n\n<fs-menu #menu>\n <ng-container *ngIf=\"activeFilter$ | async\">\n <ng-template fs-menu-item (click)=\"removeActiveFilter()\">\n None\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"(filters$ | async).length !==0\">\n <ng-container *ngFor=\"let filter of filters$ | async\">\n <ng-template fs-menu-item (click)=\"selectFilter(filter)\">\n {{ filter.name }}\n </ng-template>\n </ng-container>\n <ng-template fs-menu-divider-item></ng-template>\n </ng-container>\n <ng-template \n fs-menu-item \n class=\"saved-filter-last-item\" \n (click)=\"manageFilters()\">\n Manage\n </ng-template>\n</fs-menu>\n", styles: [":host ::ng-deep .selector{cursor:pointer}\n"], components: [{ type: i3$3.FsMenuComponent, selector: "fs-menu", inputs: ["class", "buttonClass", "buttonType", "buttonColor"], outputs: ["opened", "closed"] }], directives: [{ type: i3$3.FsMenuTriggerDirective, selector: "[fsMenuTriggerFor]", inputs: ["fsMenuTriggerFor"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$3.FsMenuItemDirective, selector: "fs-menu-group,[fs-menu-item]" }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4336
4383
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsSavedFiltersMenuComponent, decorators: [{
|
|
4337
4384
|
type: Component,
|
|
4338
|
-
args: [{ selector: 'fs-filter-saved-filters-menu', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a [fsMenuTriggerFor]=\"menu\" class=\"selector\">{{ (activeFilter$ | async)?.name || 'Not selected' }}</a>\n\n<fs-menu #menu>\n <ng-container *ngIf=\"activeFilter$ | async\">\n <ng-template fs-menu-item (click)=\"removeActiveFilter()\">\n None\n </ng-template>\n </ng-container>\n <ng-container *ngFor=\"let filter of filters$ | async\">\n
|
|
4339
|
-
}], ctorParameters: function () { return [{ type: FsFilterItemsStore }, { type: ExternalParamsController }, { type: SavedFiltersController }]; }, propDecorators: { clear: [{
|
|
4385
|
+
args: [{ selector: 'fs-filter-saved-filters-menu', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a [fsMenuTriggerFor]=\"menu\" class=\"selector\">{{ (activeFilter$ | async)?.name || 'Not selected' }}</a>\n\n<fs-menu #menu>\n <ng-container *ngIf=\"activeFilter$ | async\">\n <ng-template fs-menu-item (click)=\"removeActiveFilter()\">\n None\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"(filters$ | async).length !==0\">\n <ng-container *ngFor=\"let filter of filters$ | async\">\n <ng-template fs-menu-item (click)=\"selectFilter(filter)\">\n {{ filter.name }}\n </ng-template>\n </ng-container>\n <ng-template fs-menu-divider-item></ng-template>\n </ng-container>\n <ng-template \n fs-menu-item \n class=\"saved-filter-last-item\" \n (click)=\"manageFilters()\">\n Manage\n </ng-template>\n</fs-menu>\n", styles: [":host ::ng-deep .selector{cursor:pointer}\n"] }]
|
|
4386
|
+
}], ctorParameters: function () { return [{ type: FsFilterItemsStore }, { type: ExternalParamsController }, { type: SavedFiltersController }, { type: i1$1.MatDialog }]; }, propDecorators: { clear: [{
|
|
4340
4387
|
type: Output
|
|
4341
4388
|
}] } });
|
|
4342
4389
|
|
|
@@ -4383,6 +4430,7 @@ FsFilterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
4383
4430
|
FsFilterActionsComponent,
|
|
4384
4431
|
FsFilterActionButtonComponent,
|
|
4385
4432
|
FsFilterActionKebabActionsComponent,
|
|
4433
|
+
FsFilterSavedFilterManageComponent,
|
|
4386
4434
|
FilterStatusBarDirective,
|
|
4387
4435
|
FocusToItemDirective,
|
|
4388
4436
|
// Pipes
|
|
@@ -4390,6 +4438,7 @@ FsFilterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
4390
4438
|
RouterModule,
|
|
4391
4439
|
FormsModule,
|
|
4392
4440
|
ReactiveFormsModule,
|
|
4441
|
+
DragDropModule,
|
|
4393
4442
|
MatIconModule,
|
|
4394
4443
|
MatInputModule,
|
|
4395
4444
|
MatSelectModule,
|
|
@@ -4425,6 +4474,7 @@ FsFilterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
|
|
|
4425
4474
|
RouterModule,
|
|
4426
4475
|
FormsModule,
|
|
4427
4476
|
ReactiveFormsModule,
|
|
4477
|
+
DragDropModule,
|
|
4428
4478
|
MatIconModule,
|
|
4429
4479
|
MatInputModule,
|
|
4430
4480
|
MatSelectModule,
|
|
@@ -4460,6 +4510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
|
|
|
4460
4510
|
RouterModule,
|
|
4461
4511
|
FormsModule,
|
|
4462
4512
|
ReactiveFormsModule,
|
|
4513
|
+
DragDropModule,
|
|
4463
4514
|
MatIconModule,
|
|
4464
4515
|
MatInputModule,
|
|
4465
4516
|
MatSelectModule,
|
|
@@ -4515,6 +4566,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
|
|
|
4515
4566
|
FsFilterActionsComponent,
|
|
4516
4567
|
FsFilterActionButtonComponent,
|
|
4517
4568
|
FsFilterActionKebabActionsComponent,
|
|
4569
|
+
FsFilterSavedFilterManageComponent,
|
|
4518
4570
|
FilterStatusBarDirective,
|
|
4519
4571
|
FocusToItemDirective,
|
|
4520
4572
|
// Pipes
|