@firestitch/filter 18.2.110 → 18.2.114
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/saved-filter-manage/saved-filter-manage.component.d.ts +3 -1
- package/app/helpers/create-filter-item.d.ts +1 -1
- package/esm2022/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +14 -4
- package/esm2022/app/helpers/encode-query-parm.mjs +2 -2
- package/fesm2022/firestitch-filter.mjs +13 -4
- package/fesm2022/firestitch-filter.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { OnInit } from '@angular/core';
|
|
2
|
+
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
2
3
|
import { IFilterConfigItem } from '../../../interfaces';
|
|
3
4
|
import { IFilterSavedFilter } from '../../../interfaces/saved-filters.interface';
|
|
4
5
|
import { BaseItem } from '../../../models/items';
|
|
@@ -12,9 +13,10 @@ export declare class FsFilterSavedFilterManageComponent implements OnInit {
|
|
|
12
13
|
ngOnInit(): void;
|
|
13
14
|
get items(): BaseItem<IFilterConfigItem>[];
|
|
14
15
|
get pluralLabel(): string;
|
|
15
|
-
get
|
|
16
|
+
get orderable(): boolean;
|
|
16
17
|
selectFilter(savedFilter: IFilterSavedFilter): void;
|
|
17
18
|
remove(savedFilter: IFilterSavedFilter): void;
|
|
19
|
+
drop(event: CdkDragDrop<IFilterSavedFilter[]>): void;
|
|
18
20
|
order(savedFilters: IFilterSavedFilter[]): void;
|
|
19
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<FsFilterSavedFilterManageComponent, never>;
|
|
20
22
|
static ɵcmp: i0.ɵɵComponentDeclaration<FsFilterSavedFilterManageComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
@@ -12,4 +12,4 @@ import { RangeItem } from '../models/items/range-item';
|
|
|
12
12
|
import { SelectItem } from '../models/items/select-item';
|
|
13
13
|
import { TextItem } from '../models/items/text-item';
|
|
14
14
|
import { WeekItem } from '../models/items/week-item';
|
|
15
|
-
export declare function createFilterItem(item: IFilterConfigItem, filter: FilterComponent): AutocompleteItem |
|
|
15
|
+
export declare function createFilterItem(item: IFilterConfigItem, filter: FilterComponent): AutocompleteItem | CheckboxItem | ChipsItem | DateItem | DateRangeItem | DateTimeItem | DateTimeRangeItem | TextItem | RangeItem | SelectItem | WeekItem | AutocompleteChipsItem;
|
package/esm2022/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, } from '@angular/core';
|
|
2
|
+
import { CdkDrag, CdkDragHandle, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';
|
|
2
3
|
import { MatButton } from '@angular/material/button';
|
|
3
4
|
import { MatDialogModule, MatDialogRef } from '@angular/material/dialog';
|
|
5
|
+
import { MatIcon } from '@angular/material/icon';
|
|
4
6
|
import { FsMenuModule } from '@firestitch/menu';
|
|
5
7
|
import { FilterController } from '../../../services/filter-controller.service';
|
|
6
8
|
import { SavedFilterController } from '../../../services/saved-filter-controller.service';
|
|
@@ -23,7 +25,7 @@ export class FsFilterSavedFilterManageComponent {
|
|
|
23
25
|
get pluralLabel() {
|
|
24
26
|
return this._savedFilterController.pluralLabel;
|
|
25
27
|
}
|
|
26
|
-
get
|
|
28
|
+
get orderable() {
|
|
27
29
|
return this._savedFilterController.orderable;
|
|
28
30
|
}
|
|
29
31
|
selectFilter(savedFilter) {
|
|
@@ -37,20 +39,28 @@ export class FsFilterSavedFilterManageComponent {
|
|
|
37
39
|
this._cdRef.markForCheck();
|
|
38
40
|
});
|
|
39
41
|
}
|
|
42
|
+
drop(event) {
|
|
43
|
+
moveItemInArray(this.savedFilters, event.previousIndex, event.currentIndex);
|
|
44
|
+
this.order(this.savedFilters);
|
|
45
|
+
}
|
|
40
46
|
order(savedFilters) {
|
|
41
47
|
this._savedFilterController.order(savedFilters)
|
|
42
48
|
.subscribe();
|
|
43
49
|
}
|
|
44
50
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterSavedFilterManageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterSavedFilterManageComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n <table class=\"fs-list-table\">\n
|
|
51
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterSavedFilterManageComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n @if (savedFilters?.length) {\n <table class=\"fs-list-table\">\n <thead>\n <tr>\n @if (orderable) {\n <th class=\"drag-col\"></th>\n }\n <th>\n Name\n </th>\n <th>\n Filters\n </th>\n <th class=\"actions-column\"></th>\n </tr>\n </thead>\n <tbody\n cdkDropList\n (cdkDropListDropped)=\"drop($event)\">\n @for (savedFilter of savedFilters; track savedFilter.id) {\n <tr cdkDrag [cdkDragDisabled]=\"!orderable\" cdkDragLockAxis=\"y\" [cdkDragPreviewClass]=\"'saved-filter-drag-preview'\">\n @if (orderable) {\n <td class=\"drag-col\" cdkDragHandle>\n <mat-icon>drag_handle</mat-icon>\n </td>\n }\n <td>\n <a (click)=\"selectFilter(savedFilter)\">\n {{ savedFilter.name }}\n </a>\n </td>\n <td>\n <fs-saved-filter-chips [savedFilter]=\"savedFilter\"></fs-saved-filter-chips>\n </td>\n <td>\n <fs-menu>\n <ng-template\n fs-menu-item\n (click)=\"remove(savedFilter)\">\n Delete\n </ng-template>\n </fs-menu>\n </td>\n </tr>\n }\n </tbody>\n </table>\n }\n</div>\n<div mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Done\n </button>\n</div>", styles: ["::ng-deep .fs-list-table{border-spacing:0;display:table;width:100%;border-collapse:collapse}::ng-deep .fs-list-table thead{display:table-header-group}::ng-deep .fs-list-table thead th{color:#999;padding:8px;font-weight:400;color:#8f8f8f;font-size:85%;text-align:left}::ng-deep .fs-list-table tbody{display:table-row-group;position:relative}::ng-deep .fs-list-table tbody tr,::ng-deep .fs-list-table thead tr,::ng-deep .fs-list-table tfoot tr{display:table-row}::ng-deep .fs-list-table tbody tr td,::ng-deep .fs-list-table thead tr td,::ng-deep .fs-list-table tfoot tr td{display:table-cell;padding:8px;vertical-align:middle;outline:none;text-align:left}::ng-deep .fs-list-table.style-card tbody tr:not(.fs-list-row-group-footer):not(.fs-list-row-group){clip-path:xywh(0 3px 100% calc(100% - 6px) round 10px)}::ng-deep .fs-list-table.style-card tbody tr td{border:none!important;background-color:#fafafa;padding:8px 16px}::ng-deep .fs-list-table.style-line tbody td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody td{box-sizing:border-box;border-top:1px solid #e7e7e7}::ng-deep .fs-list-table.style-line tbody tr:first-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:first-child td{border-color:#c4c4c4}::ng-deep .fs-list-table.style-line tbody tr:last-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:last-child td{border-bottom:1px solid #c4c4c4}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging thead th,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging thead th{border-color:#e7e7e7}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging tbody tr:nth-child(2) td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging tbody tr:nth-child(2) td{border-top:none}::ng-deep .saved-filter-drag-preview{display:table;background-color:#00000008;border-radius:5px}::ng-deep .saved-filter-drag-preview td{border:none;padding:8px;vertical-align:middle}::ng-deep .saved-filter-drag-preview fs-menu{display:none}:host ::ng-deep .mat-mdc-dialog-content{min-width:400px}:host ::ng-deep .cdk-drag-placeholder{opacity:.5;background-color:#0000000d;border-radius:5px}:host ::ng-deep .cdk-drag-placeholder td{border:none}:host ::ng-deep .cdk-drop-list-dragging .cdk-drag{transition:transform .25s cubic-bezier(0,0,.2,1)}:host ::ng-deep .cdk-drag-animating{transition:transform .3s cubic-bezier(0,0,.2,1)}.actions-column{width:1%}td.drag-col,th.drag-col{width:1%;white-space:nowrap;text-align:center;cursor:grab}td.drag-col mat-icon,th.drag-col mat-icon{display:flex}\n"], dependencies: [{ kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: FsFilterSavedFilterChipsComponent, selector: "fs-saved-filter-chips", inputs: ["savedFilter"] }, { kind: "ngmodule", type: FsMenuModule }, { kind: "component", type: i2.FsMenuComponent, selector: "fs-menu", inputs: ["class", "buttonClass", "buttonType", "buttonColor"], outputs: ["opened", "closed"] }, { kind: "directive", type: i2.FsMenuItemDirective, selector: "fs-menu-group,[fs-menu-item]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
46
52
|
}
|
|
47
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterSavedFilterManageComponent, decorators: [{
|
|
48
54
|
type: Component,
|
|
49
55
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
50
56
|
MatDialogModule,
|
|
51
57
|
MatButton,
|
|
58
|
+
MatIcon,
|
|
59
|
+
CdkDropList,
|
|
60
|
+
CdkDrag,
|
|
61
|
+
CdkDragHandle,
|
|
52
62
|
FsFilterSavedFilterChipsComponent,
|
|
53
63
|
FsMenuModule,
|
|
54
|
-
], template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n <table class=\"fs-list-table\">\n
|
|
64
|
+
], template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n @if (savedFilters?.length) {\n <table class=\"fs-list-table\">\n <thead>\n <tr>\n @if (orderable) {\n <th class=\"drag-col\"></th>\n }\n <th>\n Name\n </th>\n <th>\n Filters\n </th>\n <th class=\"actions-column\"></th>\n </tr>\n </thead>\n <tbody\n cdkDropList\n (cdkDropListDropped)=\"drop($event)\">\n @for (savedFilter of savedFilters; track savedFilter.id) {\n <tr cdkDrag [cdkDragDisabled]=\"!orderable\" cdkDragLockAxis=\"y\" [cdkDragPreviewClass]=\"'saved-filter-drag-preview'\">\n @if (orderable) {\n <td class=\"drag-col\" cdkDragHandle>\n <mat-icon>drag_handle</mat-icon>\n </td>\n }\n <td>\n <a (click)=\"selectFilter(savedFilter)\">\n {{ savedFilter.name }}\n </a>\n </td>\n <td>\n <fs-saved-filter-chips [savedFilter]=\"savedFilter\"></fs-saved-filter-chips>\n </td>\n <td>\n <fs-menu>\n <ng-template\n fs-menu-item\n (click)=\"remove(savedFilter)\">\n Delete\n </ng-template>\n </fs-menu>\n </td>\n </tr>\n }\n </tbody>\n </table>\n }\n</div>\n<div mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Done\n </button>\n</div>", styles: ["::ng-deep .fs-list-table{border-spacing:0;display:table;width:100%;border-collapse:collapse}::ng-deep .fs-list-table thead{display:table-header-group}::ng-deep .fs-list-table thead th{color:#999;padding:8px;font-weight:400;color:#8f8f8f;font-size:85%;text-align:left}::ng-deep .fs-list-table tbody{display:table-row-group;position:relative}::ng-deep .fs-list-table tbody tr,::ng-deep .fs-list-table thead tr,::ng-deep .fs-list-table tfoot tr{display:table-row}::ng-deep .fs-list-table tbody tr td,::ng-deep .fs-list-table thead tr td,::ng-deep .fs-list-table tfoot tr td{display:table-cell;padding:8px;vertical-align:middle;outline:none;text-align:left}::ng-deep .fs-list-table.style-card tbody tr:not(.fs-list-row-group-footer):not(.fs-list-row-group){clip-path:xywh(0 3px 100% calc(100% - 6px) round 10px)}::ng-deep .fs-list-table.style-card tbody tr td{border:none!important;background-color:#fafafa;padding:8px 16px}::ng-deep .fs-list-table.style-line tbody td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody td{box-sizing:border-box;border-top:1px solid #e7e7e7}::ng-deep .fs-list-table.style-line tbody tr:first-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:first-child td{border-color:#c4c4c4}::ng-deep .fs-list-table.style-line tbody tr:last-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:last-child td{border-bottom:1px solid #c4c4c4}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging thead th,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging thead th{border-color:#e7e7e7}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging tbody tr:nth-child(2) td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging tbody tr:nth-child(2) td{border-top:none}::ng-deep .saved-filter-drag-preview{display:table;background-color:#00000008;border-radius:5px}::ng-deep .saved-filter-drag-preview td{border:none;padding:8px;vertical-align:middle}::ng-deep .saved-filter-drag-preview fs-menu{display:none}:host ::ng-deep .mat-mdc-dialog-content{min-width:400px}:host ::ng-deep .cdk-drag-placeholder{opacity:.5;background-color:#0000000d;border-radius:5px}:host ::ng-deep .cdk-drag-placeholder td{border:none}:host ::ng-deep .cdk-drop-list-dragging .cdk-drag{transition:transform .25s cubic-bezier(0,0,.2,1)}:host ::ng-deep .cdk-drag-animating{transition:transform .3s cubic-bezier(0,0,.2,1)}.actions-column{width:1%}td.drag-col,th.drag-col{width:1%;white-space:nowrap;text-align:center;cursor:grab}td.drag-col mat-icon,th.drag-col mat-icon{display:flex}\n"] }]
|
|
55
65
|
}] });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZWQtZmlsdGVyLW1hbmFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvc2F2ZWQtZmlsdGVyL3NhdmVkLWZpbHRlci1tYW5hZ2Uvc2F2ZWQtZmlsdGVyLW1hbmFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvc2F2ZWQtZmlsdGVyL3NhdmVkLWZpbHRlci1tYW5hZ2Uvc2F2ZWQtZmlsdGVyLW1hbmFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQWUsYUFBYSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMzRyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBS2hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBRTFGLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBbUJwRixNQUFNLE9BQU8sa0NBQWtDO0lBRXRDLFlBQVksQ0FBdUI7SUFFbEMsc0JBQXNCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDdkQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ25DLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzdDLFVBQVUsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFbkMsUUFBUTtRQUNiLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQztJQUMvRCxDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDO0lBQy9DLENBQUM7SUFFTSxZQUFZLENBQUMsV0FBK0I7UUFDakQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSxNQUFNLENBQUMsV0FBK0I7UUFDM0MsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7YUFDNUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQztZQUM3RCxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLElBQUksQ0FBQyxLQUF3QztRQUNsRCxlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU0sS0FBSyxDQUFDLFlBQWtDO1FBQzdDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO2FBQzVDLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7d0dBOUNVLGtDQUFrQzs0RkFBbEMsa0NBQWtDLHdFQ3hDL0Msd3BEQTZETSx3b0ZEL0JGLGVBQWUsZ29CQUNmLFNBQVMsaUxBQ1QsT0FBTywySUFDUCxXQUFXLDhmQUNYLE9BQU8sd2NBQ1AsYUFBYSwrRkFDYixpQ0FBaUMsMEZBQ2pDLFlBQVk7OzRGQUdILGtDQUFrQztrQkFoQjlDLFNBQVM7c0NBR1MsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixTQUFTO3dCQUNULE9BQU87d0JBQ1AsV0FBVzt3QkFDWCxPQUFPO3dCQUNQLGFBQWE7d0JBQ2IsaUNBQWlDO3dCQUNqQyxZQUFZO3FCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIGluamVjdCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2RrRHJhZywgQ2RrRHJhZ0Ryb3AsIENka0RyYWdIYW5kbGUsIENka0Ryb3BMaXN0LCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbmltcG9ydCB7IEZzTWVudU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL21lbnUnO1xuXG5pbXBvcnQgeyBJRmlsdGVyQ29uZmlnSXRlbSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgSUZpbHRlclNhdmVkRmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9zYXZlZC1maWx0ZXJzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pdGVtcyc7XG5pbXBvcnQgeyBGaWx0ZXJDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZmlsdGVyLWNvbnRyb2xsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTYXZlZEZpbHRlckNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9zYXZlZC1maWx0ZXItY29udHJvbGxlci5zZXJ2aWNlJztcblxuaW1wb3J0IHsgRnNGaWx0ZXJTYXZlZEZpbHRlckNoaXBzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NhdmVkLWZpbHRlci1jaGlwcyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9zYXZlZC1maWx0ZXItbWFuYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2F2ZWQtZmlsdGVyLW1hbmFnZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICBNYXRCdXR0b24sXG4gICAgTWF0SWNvbixcbiAgICBDZGtEcm9wTGlzdCxcbiAgICBDZGtEcmFnLFxuICAgIENka0RyYWdIYW5kbGUsXG4gICAgRnNGaWx0ZXJTYXZlZEZpbHRlckNoaXBzQ29tcG9uZW50LFxuICAgIEZzTWVudU1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNGaWx0ZXJTYXZlZEZpbHRlck1hbmFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIHNhdmVkRmlsdGVyczogSUZpbHRlclNhdmVkRmlsdGVyW107XG5cbiAgcHJpdmF0ZSBfc2F2ZWRGaWx0ZXJDb250cm9sbGVyID0gaW5qZWN0KFNhdmVkRmlsdGVyQ29udHJvbGxlcik7XG4gIHByaXZhdGUgX2NkUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBfZmlsdGVyQ29udHJvbGxlciA9IGluamVjdChGaWx0ZXJDb250cm9sbGVyKTtcbiAgcHJpdmF0ZSBfZGlhbG9nUmVmID0gaW5qZWN0KE1hdERpYWxvZ1JlZik7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2F2ZWRGaWx0ZXJzID0gdGhpcy5fc2F2ZWRGaWx0ZXJDb250cm9sbGVyLnNhdmVkRmlsdGVycztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXRlbXMoKTogQmFzZUl0ZW08SUZpbHRlckNvbmZpZ0l0ZW0+W10ge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJDb250cm9sbGVyLml0ZW1zO1xuICB9XG5cbiAgcHVibGljIGdldCBwbHVyYWxMYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zYXZlZEZpbHRlckNvbnRyb2xsZXIucGx1cmFsTGFiZWw7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG9yZGVyYWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc2F2ZWRGaWx0ZXJDb250cm9sbGVyLm9yZGVyYWJsZTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RGaWx0ZXIoc2F2ZWRGaWx0ZXI6IElGaWx0ZXJTYXZlZEZpbHRlcikge1xuICAgIHRoaXMuX3NhdmVkRmlsdGVyQ29udHJvbGxlci5zZXRBY3RpdmVGaWx0ZXIoc2F2ZWRGaWx0ZXIpO1xuICAgIHRoaXMuX2RpYWxvZ1JlZi5jbG9zZSgpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZShzYXZlZEZpbHRlcjogSUZpbHRlclNhdmVkRmlsdGVyKSB7XG4gICAgdGhpcy5fc2F2ZWRGaWx0ZXJDb250cm9sbGVyLmRlbGV0ZShzYXZlZEZpbHRlcilcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNhdmVkRmlsdGVycyA9IHRoaXMuX3NhdmVkRmlsdGVyQ29udHJvbGxlci5zYXZlZEZpbHRlcnM7XG4gICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8SUZpbHRlclNhdmVkRmlsdGVyW10+KSB7XG4gICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMuc2F2ZWRGaWx0ZXJzLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgIHRoaXMub3JkZXIodGhpcy5zYXZlZEZpbHRlcnMpO1xuICB9XG5cbiAgcHVibGljIG9yZGVyKHNhdmVkRmlsdGVyczogSUZpbHRlclNhdmVkRmlsdGVyW10pIHtcbiAgICB0aGlzLl9zYXZlZEZpbHRlckNvbnRyb2xsZXIub3JkZXIoc2F2ZWRGaWx0ZXJzKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbn1cbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPlxuICB7eyBwbHVyYWxMYWJlbCB9fVxuPC9oMT5cbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxuICBAaWYgKHNhdmVkRmlsdGVycz8ubGVuZ3RoKSB7XG4gICAgPHRhYmxlIGNsYXNzPVwiZnMtbGlzdC10YWJsZVwiPlxuICAgICAgPHRoZWFkPlxuICAgICAgICA8dHI+XG4gICAgICAgICAgQGlmIChvcmRlcmFibGUpIHtcbiAgICAgICAgICAgIDx0aCBjbGFzcz1cImRyYWctY29sXCI+PC90aD5cbiAgICAgICAgICB9XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgTmFtZVxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgRmlsdGVyc1xuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoIGNsYXNzPVwiYWN0aW9ucy1jb2x1bW5cIj48L3RoPlxuICAgICAgICA8L3RyPlxuICAgICAgPC90aGVhZD5cbiAgICAgIDx0Ym9keVxuICAgICAgICAgIGNka0Ryb3BMaXN0XG4gICAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIj5cbiAgICAgICAgQGZvciAoc2F2ZWRGaWx0ZXIgb2Ygc2F2ZWRGaWx0ZXJzOyB0cmFjayBzYXZlZEZpbHRlci5pZCkge1xuICAgICAgICAgIDx0ciBjZGtEcmFnIFtjZGtEcmFnRGlzYWJsZWRdPVwiIW9yZGVyYWJsZVwiIGNka0RyYWdMb2NrQXhpcz1cInlcIiBbY2RrRHJhZ1ByZXZpZXdDbGFzc109XCInc2F2ZWQtZmlsdGVyLWRyYWctcHJldmlldydcIj5cbiAgICAgICAgICAgIEBpZiAob3JkZXJhYmxlKSB7XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImRyYWctY29sXCIgY2RrRHJhZ0hhbmRsZT5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+ZHJhZ19oYW5kbGU8L21hdC1pY29uPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICA8YSAoY2xpY2spPVwic2VsZWN0RmlsdGVyKHNhdmVkRmlsdGVyKVwiPlxuICAgICAgICAgICAgICAgIHt7IHNhdmVkRmlsdGVyLm5hbWUgfX1cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgPGZzLXNhdmVkLWZpbHRlci1jaGlwcyBbc2F2ZWRGaWx0ZXJdPVwic2F2ZWRGaWx0ZXJcIj48L2ZzLXNhdmVkLWZpbHRlci1jaGlwcz5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgIDxmcy1tZW51PlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICBmcy1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZShzYXZlZEZpbHRlcilcIj5cbiAgICAgICAgICAgICAgICAgIERlbGV0ZVxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvZnMtbWVudT5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgfVxuICAgICAgPC90Ym9keT5cbiAgICA8L3RhYmxlPlxuICB9XG48L2Rpdj5cbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxuICA8YnV0dG9uXG4gICAgICBtYXQtYnV0dG9uXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBbbWF0LWRpYWxvZy1jbG9zZV09XCJudWxsXCI+XG4gICAgRG9uZVxuICA8L2J1dHRvbj5cbjwvZGl2PiJdfQ==
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
* resolve to a bare primitive whose `.name` is undefined.
|
|
7
7
|
*/
|
|
8
8
|
export function encodeQueryParam(value) {
|
|
9
|
-
return (value ?? '')
|
|
9
|
+
return String(value ?? '')
|
|
10
10
|
.replace(/,/g, '\\,')
|
|
11
11
|
.replace(/:/g, '\\:');
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RlLXF1ZXJ5LXBhcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2hlbHBlcnMvZW5jb2RlLXF1ZXJ5LXBhcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEtBQWdDO0lBQy9ELE9BQU8sTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7U0FDdkIsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUM7U0FDcEIsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztBQUMxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFc2NhcGVzIGNvbW1hcyBhbmQgY29sb25zIGluIGEgcXVlcnktcGFyYW0gdmFsdWUgc28gdGhleSBhcmUgbm90XG4gKiBtaXNpbnRlcnByZXRlZCBhcyBkZWxpbWl0ZXJzIGR1cmluZyBkZXNlcmlhbGl6YXRpb24uXG4gKlxuICogQWNjZXB0cyBudWxsaXNoIGlucHV0IGRlZmVuc2l2ZWx5IOKAlCBBdXRvY29tcGxldGVJdGVtLnZhbHVlIGNhblxuICogcmVzb2x2ZSB0byBhIGJhcmUgcHJpbWl0aXZlIHdob3NlIGAubmFtZWAgaXMgdW5kZWZpbmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlUXVlcnlQYXJhbSh2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gIHJldHVybiBTdHJpbmcodmFsdWUgPz8gJycpXG4gICAgLnJlcGxhY2UoLywvZywgJ1xcXFwsJylcbiAgICAucmVwbGFjZSgvOi9nLCAnXFxcXDonKTtcbn1cbiJdfQ==
|
|
@@ -52,6 +52,7 @@ import * as i1$4 from '@firestitch/label';
|
|
|
52
52
|
import { FsLabelModule } from '@firestitch/label';
|
|
53
53
|
import { MatFormField, MatLabel, MatPrefix, MatSuffix } from '@angular/material/form-field';
|
|
54
54
|
import { MatCheckbox } from '@angular/material/checkbox';
|
|
55
|
+
import { moveItemInArray, CdkDropList, CdkDrag, CdkDragHandle } from '@angular/cdk/drag-drop';
|
|
55
56
|
|
|
56
57
|
class SavedFilterController {
|
|
57
58
|
_filterController;
|
|
@@ -913,7 +914,7 @@ function arraysAreEquals(arr1, arr2) {
|
|
|
913
914
|
* resolve to a bare primitive whose `.name` is undefined.
|
|
914
915
|
*/
|
|
915
916
|
function encodeQueryParam(value) {
|
|
916
|
-
return (value ?? '')
|
|
917
|
+
return String(value ?? '')
|
|
917
918
|
.replace(/,/g, '\\,')
|
|
918
919
|
.replace(/:/g, '\\:');
|
|
919
920
|
}
|
|
@@ -3363,7 +3364,7 @@ class FsFilterSavedFilterManageComponent {
|
|
|
3363
3364
|
get pluralLabel() {
|
|
3364
3365
|
return this._savedFilterController.pluralLabel;
|
|
3365
3366
|
}
|
|
3366
|
-
get
|
|
3367
|
+
get orderable() {
|
|
3367
3368
|
return this._savedFilterController.orderable;
|
|
3368
3369
|
}
|
|
3369
3370
|
selectFilter(savedFilter) {
|
|
@@ -3377,21 +3378,29 @@ class FsFilterSavedFilterManageComponent {
|
|
|
3377
3378
|
this._cdRef.markForCheck();
|
|
3378
3379
|
});
|
|
3379
3380
|
}
|
|
3381
|
+
drop(event) {
|
|
3382
|
+
moveItemInArray(this.savedFilters, event.previousIndex, event.currentIndex);
|
|
3383
|
+
this.order(this.savedFilters);
|
|
3384
|
+
}
|
|
3380
3385
|
order(savedFilters) {
|
|
3381
3386
|
this._savedFilterController.order(savedFilters)
|
|
3382
3387
|
.subscribe();
|
|
3383
3388
|
}
|
|
3384
3389
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterSavedFilterManageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3385
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterSavedFilterManageComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n <table class=\"fs-list-table\">\n
|
|
3390
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterSavedFilterManageComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n @if (savedFilters?.length) {\n <table class=\"fs-list-table\">\n <thead>\n <tr>\n @if (orderable) {\n <th class=\"drag-col\"></th>\n }\n <th>\n Name\n </th>\n <th>\n Filters\n </th>\n <th class=\"actions-column\"></th>\n </tr>\n </thead>\n <tbody\n cdkDropList\n (cdkDropListDropped)=\"drop($event)\">\n @for (savedFilter of savedFilters; track savedFilter.id) {\n <tr cdkDrag [cdkDragDisabled]=\"!orderable\" cdkDragLockAxis=\"y\" [cdkDragPreviewClass]=\"'saved-filter-drag-preview'\">\n @if (orderable) {\n <td class=\"drag-col\" cdkDragHandle>\n <mat-icon>drag_handle</mat-icon>\n </td>\n }\n <td>\n <a (click)=\"selectFilter(savedFilter)\">\n {{ savedFilter.name }}\n </a>\n </td>\n <td>\n <fs-saved-filter-chips [savedFilter]=\"savedFilter\"></fs-saved-filter-chips>\n </td>\n <td>\n <fs-menu>\n <ng-template\n fs-menu-item\n (click)=\"remove(savedFilter)\">\n Delete\n </ng-template>\n </fs-menu>\n </td>\n </tr>\n }\n </tbody>\n </table>\n }\n</div>\n<div mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Done\n </button>\n</div>", styles: ["::ng-deep .fs-list-table{border-spacing:0;display:table;width:100%;border-collapse:collapse}::ng-deep .fs-list-table thead{display:table-header-group}::ng-deep .fs-list-table thead th{color:#999;padding:8px;font-weight:400;color:#8f8f8f;font-size:85%;text-align:left}::ng-deep .fs-list-table tbody{display:table-row-group;position:relative}::ng-deep .fs-list-table tbody tr,::ng-deep .fs-list-table thead tr,::ng-deep .fs-list-table tfoot tr{display:table-row}::ng-deep .fs-list-table tbody tr td,::ng-deep .fs-list-table thead tr td,::ng-deep .fs-list-table tfoot tr td{display:table-cell;padding:8px;vertical-align:middle;outline:none;text-align:left}::ng-deep .fs-list-table.style-card tbody tr:not(.fs-list-row-group-footer):not(.fs-list-row-group){clip-path:xywh(0 3px 100% calc(100% - 6px) round 10px)}::ng-deep .fs-list-table.style-card tbody tr td{border:none!important;background-color:#fafafa;padding:8px 16px}::ng-deep .fs-list-table.style-line tbody td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody td{box-sizing:border-box;border-top:1px solid #e7e7e7}::ng-deep .fs-list-table.style-line tbody tr:first-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:first-child td{border-color:#c4c4c4}::ng-deep .fs-list-table.style-line tbody tr:last-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:last-child td{border-bottom:1px solid #c4c4c4}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging thead th,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging thead th{border-color:#e7e7e7}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging tbody tr:nth-child(2) td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging tbody tr:nth-child(2) td{border-top:none}::ng-deep .saved-filter-drag-preview{display:table;background-color:#00000008;border-radius:5px}::ng-deep .saved-filter-drag-preview td{border:none;padding:8px;vertical-align:middle}::ng-deep .saved-filter-drag-preview fs-menu{display:none}:host ::ng-deep .mat-mdc-dialog-content{min-width:400px}:host ::ng-deep .cdk-drag-placeholder{opacity:.5;background-color:#0000000d;border-radius:5px}:host ::ng-deep .cdk-drag-placeholder td{border:none}:host ::ng-deep .cdk-drop-list-dragging .cdk-drag{transition:transform .25s cubic-bezier(0,0,.2,1)}:host ::ng-deep .cdk-drag-animating{transition:transform .3s cubic-bezier(0,0,.2,1)}.actions-column{width:1%}td.drag-col,th.drag-col{width:1%;white-space:nowrap;text-align:center;cursor:grab}td.drag-col mat-icon,th.drag-col mat-icon{display:flex}\n"], dependencies: [{ kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1$6.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: FsFilterSavedFilterChipsComponent, selector: "fs-saved-filter-chips", inputs: ["savedFilter"] }, { kind: "ngmodule", type: FsMenuModule }, { kind: "component", type: i2.FsMenuComponent, selector: "fs-menu", inputs: ["class", "buttonClass", "buttonType", "buttonColor"], outputs: ["opened", "closed"] }, { kind: "directive", type: i2.FsMenuItemDirective, selector: "fs-menu-group,[fs-menu-item]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3386
3391
|
}
|
|
3387
3392
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterSavedFilterManageComponent, decorators: [{
|
|
3388
3393
|
type: Component,
|
|
3389
3394
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
3390
3395
|
MatDialogModule,
|
|
3391
3396
|
MatButton,
|
|
3397
|
+
MatIcon,
|
|
3398
|
+
CdkDropList,
|
|
3399
|
+
CdkDrag,
|
|
3400
|
+
CdkDragHandle,
|
|
3392
3401
|
FsFilterSavedFilterChipsComponent,
|
|
3393
3402
|
FsMenuModule,
|
|
3394
|
-
], template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n <table class=\"fs-list-table\">\n
|
|
3403
|
+
], template: "<h1 mat-dialog-title>\n {{ pluralLabel }}\n</h1>\n<div mat-dialog-content>\n @if (savedFilters?.length) {\n <table class=\"fs-list-table\">\n <thead>\n <tr>\n @if (orderable) {\n <th class=\"drag-col\"></th>\n }\n <th>\n Name\n </th>\n <th>\n Filters\n </th>\n <th class=\"actions-column\"></th>\n </tr>\n </thead>\n <tbody\n cdkDropList\n (cdkDropListDropped)=\"drop($event)\">\n @for (savedFilter of savedFilters; track savedFilter.id) {\n <tr cdkDrag [cdkDragDisabled]=\"!orderable\" cdkDragLockAxis=\"y\" [cdkDragPreviewClass]=\"'saved-filter-drag-preview'\">\n @if (orderable) {\n <td class=\"drag-col\" cdkDragHandle>\n <mat-icon>drag_handle</mat-icon>\n </td>\n }\n <td>\n <a (click)=\"selectFilter(savedFilter)\">\n {{ savedFilter.name }}\n </a>\n </td>\n <td>\n <fs-saved-filter-chips [savedFilter]=\"savedFilter\"></fs-saved-filter-chips>\n </td>\n <td>\n <fs-menu>\n <ng-template\n fs-menu-item\n (click)=\"remove(savedFilter)\">\n Delete\n </ng-template>\n </fs-menu>\n </td>\n </tr>\n }\n </tbody>\n </table>\n }\n</div>\n<div mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Done\n </button>\n</div>", styles: ["::ng-deep .fs-list-table{border-spacing:0;display:table;width:100%;border-collapse:collapse}::ng-deep .fs-list-table thead{display:table-header-group}::ng-deep .fs-list-table thead th{color:#999;padding:8px;font-weight:400;color:#8f8f8f;font-size:85%;text-align:left}::ng-deep .fs-list-table tbody{display:table-row-group;position:relative}::ng-deep .fs-list-table tbody tr,::ng-deep .fs-list-table thead tr,::ng-deep .fs-list-table tfoot tr{display:table-row}::ng-deep .fs-list-table tbody tr td,::ng-deep .fs-list-table thead tr td,::ng-deep .fs-list-table tfoot tr td{display:table-cell;padding:8px;vertical-align:middle;outline:none;text-align:left}::ng-deep .fs-list-table.style-card tbody tr:not(.fs-list-row-group-footer):not(.fs-list-row-group){clip-path:xywh(0 3px 100% calc(100% - 6px) round 10px)}::ng-deep .fs-list-table.style-card tbody tr td{border:none!important;background-color:#fafafa;padding:8px 16px}::ng-deep .fs-list-table.style-line tbody td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody td{box-sizing:border-box;border-top:1px solid #e7e7e7}::ng-deep .fs-list-table.style-line tbody tr:first-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:first-child td{border-color:#c4c4c4}::ng-deep .fs-list-table.style-line tbody tr:last-child td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody tr:last-child td{border-bottom:1px solid #c4c4c4}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging thead th,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging thead th{border-color:#e7e7e7}::ng-deep .fs-list-table.style-line .fs-list-container.has-dragging tbody tr:nth-child(2) td,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) .fs-list-container.has-dragging tbody tr:nth-child(2) td{border-top:none}::ng-deep .saved-filter-drag-preview{display:table;background-color:#00000008;border-radius:5px}::ng-deep .saved-filter-drag-preview td{border:none;padding:8px;vertical-align:middle}::ng-deep .saved-filter-drag-preview fs-menu{display:none}:host ::ng-deep .mat-mdc-dialog-content{min-width:400px}:host ::ng-deep .cdk-drag-placeholder{opacity:.5;background-color:#0000000d;border-radius:5px}:host ::ng-deep .cdk-drag-placeholder td{border:none}:host ::ng-deep .cdk-drop-list-dragging .cdk-drag{transition:transform .25s cubic-bezier(0,0,.2,1)}:host ::ng-deep .cdk-drag-animating{transition:transform .3s cubic-bezier(0,0,.2,1)}.actions-column{width:1%}td.drag-col,th.drag-col{width:1%;white-space:nowrap;text-align:center;cursor:grab}td.drag-col mat-icon,th.drag-col mat-icon{display:flex}\n"] }]
|
|
3395
3404
|
}] });
|
|
3396
3405
|
|
|
3397
3406
|
class FsFilterChipsComponent {
|