@firestitch/list 15.0.0 → 17.0.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.
- package/app/components/body/body.component.d.ts +1 -1
- package/app/components/body/row/actions/actions.component.d.ts +1 -1
- package/app/components/body/row/cell/cell.component.d.ts +1 -1
- package/app/components/body/row/inline-action/inline-action.component.d.ts +1 -1
- package/app/components/body/row/menu-action/menu-action.component.d.ts +1 -1
- package/app/components/body/row/row.component.d.ts +1 -1
- package/app/components/footer/footer-row/footer-row.component.d.ts +1 -7
- package/app/components/footer/footer.component.d.ts +1 -1
- package/app/components/head/head.component.d.ts +1 -1
- package/app/components/list/list.component.d.ts +1 -1
- package/app/components/loader/loader.component.d.ts +1 -1
- package/app/components/pagination/pagination.component.d.ts +1 -1
- package/app/components/status/status.component.d.ts +1 -1
- package/app/directives/cell/cell.directive.d.ts +1 -1
- package/app/directives/column/column.directive.d.ts +1 -1
- package/app/directives/content-init/content-init.directive.d.ts +1 -1
- package/app/directives/draggable-list/draggable-list.directive.d.ts +1 -1
- package/app/directives/draggable-row/draggable-row.directive.d.ts +1 -1
- package/app/directives/footer/footer.directive.d.ts +1 -1
- package/app/directives/group-expand-trigger/group-expand-trigger.directive.d.ts +1 -1
- package/app/directives/header/header.directive.d.ts +1 -1
- package/app/models/column.model.d.ts +1 -1
- package/esm2022/app/classes/actions-controller.mjs +57 -0
- package/esm2022/app/classes/columns-controller.mjs +211 -0
- package/esm2022/app/classes/data-controller.mjs +348 -0
- package/esm2022/app/classes/external-params-controller.mjs +153 -0
- package/{esm2020 → esm2022}/app/classes/index.mjs +1 -1
- package/esm2022/app/classes/list-controller.mjs +712 -0
- package/esm2022/app/classes/pagination-controller.mjs +491 -0
- package/esm2022/app/classes/persistance-controller.mjs +19 -0
- package/esm2022/app/classes/reorder-controller.mjs +191 -0
- package/esm2022/app/classes/selection-controller.mjs +473 -0
- package/esm2022/app/classes/sorting-controller.mjs +207 -0
- package/esm2022/app/components/body/body.component.mjs +73 -0
- package/esm2022/app/components/body/row/actions/actions.component.mjs +102 -0
- package/esm2022/app/components/body/row/cell/cell.component.mjs +109 -0
- package/esm2022/app/components/body/row/inline-action/inline-action.component.mjs +32 -0
- package/esm2022/app/components/body/row/menu-action/menu-action.component.mjs +51 -0
- package/esm2022/app/components/body/row/row.component.mjs +341 -0
- package/esm2022/app/components/customize-cols/customize-cols.component.mjs +70 -0
- package/esm2022/app/components/footer/footer-row/footer-cell/footer-cell.component.mjs +16 -0
- package/esm2022/app/components/footer/footer-row/footer-row.component.mjs +17 -0
- package/esm2022/app/components/footer/footer.component.mjs +35 -0
- package/esm2022/app/components/head/head-cell/head-cell.component.mjs +32 -0
- package/esm2022/app/components/head/head.component.mjs +113 -0
- package/esm2022/app/components/list/list.component.mjs +407 -0
- package/esm2022/app/components/loader/loader.component.mjs +40 -0
- package/esm2022/app/components/manage-saved-filters/manage-saved-filters.component.mjs +78 -0
- package/esm2022/app/components/pagination/pagination.component.mjs +40 -0
- package/esm2022/app/components/saved-filters/saved-filters.component.mjs +32 -0
- package/esm2022/app/components/status/status.component.mjs +69 -0
- package/esm2022/app/directives/cell/cell.directive.mjs +21 -0
- package/esm2022/app/directives/column/column.directive.mjs +137 -0
- package/{esm2020 → esm2022}/app/directives/content/content.directive.mjs +4 -4
- package/esm2022/app/directives/content-init/content-init.directive.mjs +23 -0
- package/esm2022/app/directives/draggable-list/draggable-list.directive.mjs +344 -0
- package/esm2022/app/directives/draggable-row/draggable-row.directive.mjs +83 -0
- package/esm2022/app/directives/empty-state/empty-state.directive.mjs +13 -0
- package/esm2022/app/directives/footer/footer.directive.mjs +21 -0
- package/esm2022/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +28 -0
- package/{esm2020 → esm2022}/app/directives/group-footer/group-footer.directive.mjs +4 -4
- package/{esm2020 → esm2022}/app/directives/group-header/group-header.directive.mjs +4 -4
- package/esm2022/app/directives/header/header.directive.mjs +21 -0
- package/esm2022/app/directives/heading/heading.directive.mjs +13 -0
- package/{esm2020 → esm2022}/app/directives/heading-container/heading-container.directive.mjs +4 -4
- package/{esm2020 → esm2022}/app/directives/index.mjs +1 -1
- package/esm2022/app/directives/subheading/subheading.directive.mjs +13 -0
- package/{esm2020 → esm2022}/app/enums/page-change-type.enum.mjs +1 -1
- package/{esm2020 → esm2022}/app/enums/pagination-strategy.enum.mjs +1 -1
- package/{esm2020 → esm2022}/app/enums/state.enum.mjs +1 -1
- package/{esm2020 → esm2022}/app/fs-list.module.mjs +89 -89
- package/{esm2020 → esm2022}/app/fs-list.providers.mjs +1 -1
- package/{esm2020 → esm2022}/app/interfaces/cellconfig.interface.mjs +1 -1
- package/{esm2020 → esm2022}/app/interfaces/draggable-list.interface.mjs +1 -1
- package/esm2022/app/interfaces/external-params.interface.mjs +2 -0
- package/{esm2020 → esm2022}/app/interfaces/index.mjs +1 -1
- package/esm2022/app/interfaces/pagination.interface.mjs +2 -0
- package/{esm2020 → esm2022}/app/interfaces/sorting-change-event.interface.mjs +1 -1
- package/{esm2020 → esm2022}/app/models/column-async-attribute.mjs +1 -1
- package/esm2022/app/models/column-attributes.mjs +139 -0
- package/esm2022/app/models/column.model.mjs +173 -0
- package/esm2022/app/models/row/base-row.mjs +25 -0
- package/esm2022/app/models/row/child-row.mjs +29 -0
- package/esm2022/app/models/row/group-footer-row.mjs +22 -0
- package/esm2022/app/models/row/group-row.mjs +45 -0
- package/{esm2020 → esm2022}/app/models/row/simple-row.mjs +1 -1
- package/esm2022/app/models/row-action.model.mjs +102 -0
- package/esm2022/app/models/row.mjs +90 -0
- package/esm2022/app/models/styleConfig.model.mjs +78 -0
- package/esm2022/app/pipes/action-label.mjs +17 -0
- package/{esm2020 → esm2022}/app/services/group-expand-notifier.service.mjs +7 -9
- package/{fesm2020 → fesm2022}/firestitch-list.mjs +731 -497
- package/fesm2022/firestitch-list.mjs.map +1 -0
- package/package.json +5 -11
- package/esm2020/app/classes/actions-controller.mjs +0 -55
- package/esm2020/app/classes/columns-controller.mjs +0 -206
- package/esm2020/app/classes/data-controller.mjs +0 -345
- package/esm2020/app/classes/external-params-controller.mjs +0 -147
- package/esm2020/app/classes/list-controller.mjs +0 -674
- package/esm2020/app/classes/pagination-controller.mjs +0 -491
- package/esm2020/app/classes/persistance-controller.mjs +0 -19
- package/esm2020/app/classes/reorder-controller.mjs +0 -182
- package/esm2020/app/classes/selection-controller.mjs +0 -466
- package/esm2020/app/classes/sorting-controller.mjs +0 -206
- package/esm2020/app/components/body/body.component.mjs +0 -64
- package/esm2020/app/components/body/row/actions/actions.component.mjs +0 -97
- package/esm2020/app/components/body/row/cell/cell.component.mjs +0 -107
- package/esm2020/app/components/body/row/inline-action/inline-action.component.mjs +0 -33
- package/esm2020/app/components/body/row/menu-action/menu-action.component.mjs +0 -46
- package/esm2020/app/components/body/row/row.component.mjs +0 -322
- package/esm2020/app/components/customize-cols/customize-cols.component.mjs +0 -68
- package/esm2020/app/components/footer/footer-row/footer-cell/footer-cell.component.mjs +0 -16
- package/esm2020/app/components/footer/footer-row/footer-row.component.mjs +0 -28
- package/esm2020/app/components/footer/footer.component.mjs +0 -31
- package/esm2020/app/components/head/head-cell/head-cell.component.mjs +0 -29
- package/esm2020/app/components/head/head.component.mjs +0 -103
- package/esm2020/app/components/list/list.component.mjs +0 -385
- package/esm2020/app/components/loader/loader.component.mjs +0 -40
- package/esm2020/app/components/manage-saved-filters/manage-saved-filters.component.mjs +0 -76
- package/esm2020/app/components/pagination/pagination.component.mjs +0 -37
- package/esm2020/app/components/saved-filters/saved-filters.component.mjs +0 -29
- package/esm2020/app/components/status/status.component.mjs +0 -64
- package/esm2020/app/directives/cell/cell.directive.mjs +0 -18
- package/esm2020/app/directives/column/column.directive.mjs +0 -121
- package/esm2020/app/directives/content-init/content-init.directive.mjs +0 -22
- package/esm2020/app/directives/draggable-list/draggable-list.directive.mjs +0 -330
- package/esm2020/app/directives/draggable-row/draggable-row.directive.mjs +0 -78
- package/esm2020/app/directives/empty-state/empty-state.directive.mjs +0 -13
- package/esm2020/app/directives/footer/footer.directive.mjs +0 -18
- package/esm2020/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +0 -26
- package/esm2020/app/directives/header/header.directive.mjs +0 -18
- package/esm2020/app/directives/heading/heading.directive.mjs +0 -13
- package/esm2020/app/directives/subheading/subheading.directive.mjs +0 -13
- package/esm2020/app/interfaces/external-params.interface.mjs +0 -2
- package/esm2020/app/interfaces/pagination.interface.mjs +0 -2
- package/esm2020/app/models/column-attributes.mjs +0 -132
- package/esm2020/app/models/column.model.mjs +0 -164
- package/esm2020/app/models/row/base-row.mjs +0 -23
- package/esm2020/app/models/row/child-row.mjs +0 -28
- package/esm2020/app/models/row/group-footer-row.mjs +0 -21
- package/esm2020/app/models/row/group-row.mjs +0 -45
- package/esm2020/app/models/row-action.model.mjs +0 -90
- package/esm2020/app/models/row.mjs +0 -89
- package/esm2020/app/models/styleConfig.model.mjs +0 -76
- package/esm2020/app/pipes/action-label.mjs +0 -17
- package/fesm2015/firestitch-list.mjs +0 -5802
- package/fesm2015/firestitch-list.mjs.map +0 -1
- package/fesm2020/firestitch-list.mjs.map +0 -1
- /package/{esm2020 → esm2022}/app/enums/action-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/app/enums/row-type.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/app/interfaces/column-config.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/app/interfaces/listconfig.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/app/interfaces/pagination-state.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/app/pipes/index.mjs +0 -0
- /package/{esm2020 → esm2022}/firestitch-list.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
|
@@ -49,14 +49,23 @@ var ReorderStrategy;
|
|
|
49
49
|
ReorderStrategy["Custom"] = "custom";
|
|
50
50
|
})(ReorderStrategy || (ReorderStrategy = {}));
|
|
51
51
|
class ReorderController {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
52
|
+
startCallback;
|
|
53
|
+
movedCallback;
|
|
54
|
+
doneCallback;
|
|
55
|
+
moveDropCallback;
|
|
56
|
+
status;
|
|
57
|
+
label;
|
|
58
|
+
menu;
|
|
59
|
+
multiple;
|
|
60
|
+
_dataController;
|
|
61
|
+
_actionsController;
|
|
62
|
+
_selectionController;
|
|
63
|
+
_enabled$ = new BehaviorSubject(false);
|
|
64
|
+
_manualReorderActivated$ = new BehaviorSubject(false);
|
|
65
|
+
_reorderDisabled$ = new BehaviorSubject(false);
|
|
66
|
+
_position = new BehaviorSubject(null);
|
|
67
|
+
_strategy = new BehaviorSubject(null);
|
|
68
|
+
_destroy$ = new Subject();
|
|
60
69
|
get enabled() {
|
|
61
70
|
return this._enabled$.getValue();
|
|
62
71
|
}
|
|
@@ -185,7 +194,7 @@ class ReorderController {
|
|
|
185
194
|
}
|
|
186
195
|
}
|
|
187
196
|
ngOnDestroy() {
|
|
188
|
-
this._destroy$.next();
|
|
197
|
+
this._destroy$.next(null);
|
|
189
198
|
this._destroy$.complete();
|
|
190
199
|
}
|
|
191
200
|
/**
|
|
@@ -208,10 +217,10 @@ class ReorderController {
|
|
|
208
217
|
_setStrategy(value) {
|
|
209
218
|
this._strategy.next(value);
|
|
210
219
|
}
|
|
220
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ReorderController, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
221
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ReorderController });
|
|
211
222
|
}
|
|
212
|
-
|
|
213
|
-
ReorderController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ReorderController });
|
|
214
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ReorderController, decorators: [{
|
|
223
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ReorderController, decorators: [{
|
|
215
224
|
type: Injectable
|
|
216
225
|
}] });
|
|
217
226
|
|
|
@@ -222,28 +231,35 @@ var SelectionChangeType;
|
|
|
222
231
|
SelectionChangeType["SelectedAll"] = "SelectedAll";
|
|
223
232
|
})(SelectionChangeType || (SelectionChangeType = {}));
|
|
224
233
|
class SelectionController {
|
|
234
|
+
_trackBy;
|
|
235
|
+
_selectionDialog;
|
|
236
|
+
// Options from passed config
|
|
237
|
+
actions = [];
|
|
238
|
+
selectAll = true;
|
|
239
|
+
selectionChangedFn;
|
|
240
|
+
actionSelectedFn;
|
|
241
|
+
allSelectedFn;
|
|
242
|
+
cancelledFn;
|
|
243
|
+
// Store for selected visible rows
|
|
244
|
+
selectedRows = new Map();
|
|
245
|
+
selectedGroups = new Map();
|
|
246
|
+
// Reference to selection dialog
|
|
247
|
+
_selectionDialogRef = null;
|
|
248
|
+
_getRows;
|
|
249
|
+
_selectionChange = new Subject();
|
|
250
|
+
// Selected only visible rows (ex.: selected only limited 15 rows when we have pagination)
|
|
251
|
+
_selectedAllVisible = false;
|
|
252
|
+
// Selected all rows when was clicked "Select All" in selection dialog
|
|
253
|
+
// or count of visible records is equal to total and all visible rows was selected
|
|
254
|
+
_selectedAll = false;
|
|
255
|
+
_selectedRecords = 0;
|
|
256
|
+
_visibleRecordsCount = 0;
|
|
257
|
+
_totalRecordsCount = 0;
|
|
258
|
+
_destroy$ = new Subject();
|
|
259
|
+
_disabled$ = new BehaviorSubject(false);
|
|
225
260
|
constructor(config = {}, _trackBy, _selectionDialog) {
|
|
226
261
|
this._trackBy = _trackBy;
|
|
227
262
|
this._selectionDialog = _selectionDialog;
|
|
228
|
-
// Options from passed config
|
|
229
|
-
this.actions = [];
|
|
230
|
-
this.selectAll = true;
|
|
231
|
-
// Store for selected visible rows
|
|
232
|
-
this.selectedRows = new Map();
|
|
233
|
-
this.selectedGroups = new Map();
|
|
234
|
-
// Reference to selection dialog
|
|
235
|
-
this._selectionDialogRef = null;
|
|
236
|
-
this._selectionChange = new Subject();
|
|
237
|
-
// Selected only visible rows (ex.: selected only limited 15 rows when we have pagination)
|
|
238
|
-
this._selectedAllVisible = false;
|
|
239
|
-
// Selected all rows when was clicked "Select All" in selection dialog
|
|
240
|
-
// or count of visible records is equal to total and all visible rows was selected
|
|
241
|
-
this._selectedAll = false;
|
|
242
|
-
this._selectedRecords = 0;
|
|
243
|
-
this._visibleRecordsCount = 0;
|
|
244
|
-
this._totalRecordsCount = 0;
|
|
245
|
-
this._destroy$ = new Subject();
|
|
246
|
-
this._disabled$ = new BehaviorSubject(false);
|
|
247
263
|
this.actions = config.actions ? [...config.actions] : [];
|
|
248
264
|
this.actionSelectedFn = config.actionSelected;
|
|
249
265
|
this.allSelectedFn = config.allSelected;
|
|
@@ -446,7 +462,7 @@ class SelectionController {
|
|
|
446
462
|
this.cancelledFn = null;
|
|
447
463
|
this.closeSelectionDialog();
|
|
448
464
|
this._selectionDialogRef = null;
|
|
449
|
-
this._destroy$.next();
|
|
465
|
+
this._destroy$.next(null);
|
|
450
466
|
this._destroy$.complete();
|
|
451
467
|
this._selectionChange.complete();
|
|
452
468
|
}
|
|
@@ -679,25 +695,39 @@ class SelectionController {
|
|
|
679
695
|
}
|
|
680
696
|
|
|
681
697
|
class FsListDraggableListDirective {
|
|
698
|
+
_cdRef;
|
|
699
|
+
_zone;
|
|
700
|
+
_containerElement;
|
|
701
|
+
_reorderController;
|
|
702
|
+
_renderer;
|
|
703
|
+
// Draggable Element
|
|
704
|
+
_draggableElement;
|
|
705
|
+
_draggableElementPreview;
|
|
706
|
+
_multipleDraggableElementPreview;
|
|
707
|
+
_draggableElementHeight;
|
|
708
|
+
_draggableElementIndex;
|
|
709
|
+
_draggableElementStartIndex;
|
|
710
|
+
// Handlers
|
|
711
|
+
_dragToHandler = this.dragTo.bind(this);
|
|
712
|
+
_dragEndHandler = this.dragEnd.bind(this);
|
|
713
|
+
_dragInProgress = false;
|
|
714
|
+
_childRowElements;
|
|
715
|
+
_dragStart$ = new Subject();
|
|
716
|
+
_dragEnd$ = new Subject();
|
|
717
|
+
_rows;
|
|
718
|
+
_draggableChildrenDirectives = [];
|
|
719
|
+
_selectedRowsDirectives = [];
|
|
720
|
+
_destroy$ = new Subject();
|
|
682
721
|
constructor(_cdRef, _zone, _containerElement, _reorderController, _renderer) {
|
|
683
722
|
this._cdRef = _cdRef;
|
|
684
723
|
this._zone = _zone;
|
|
685
724
|
this._containerElement = _containerElement;
|
|
686
725
|
this._reorderController = _reorderController;
|
|
687
726
|
this._renderer = _renderer;
|
|
688
|
-
// Handlers
|
|
689
|
-
this._dragToHandler = this.dragTo.bind(this);
|
|
690
|
-
this._dragEndHandler = this.dragEnd.bind(this);
|
|
691
|
-
this._dragInProgress = false;
|
|
692
|
-
this._dragStart$ = new Subject();
|
|
693
|
-
this._dragEnd$ = new Subject();
|
|
694
|
-
this._draggableChildrenDirectives = [];
|
|
695
|
-
this._selectedRowsDirectives = [];
|
|
696
|
-
this._destroy$ = new Subject();
|
|
697
|
-
this._windowTouchMoveHandler = () => {
|
|
698
|
-
//
|
|
699
|
-
};
|
|
700
727
|
}
|
|
728
|
+
_windowTouchMoveHandler = () => {
|
|
729
|
+
//
|
|
730
|
+
};
|
|
701
731
|
get dragStart$() {
|
|
702
732
|
return this._dragStart$.pipe(takeUntil(this._destroy$));
|
|
703
733
|
}
|
|
@@ -745,7 +775,7 @@ class FsListDraggableListDirective {
|
|
|
745
775
|
window.document.addEventListener('mouseup', this._dragEndHandler);
|
|
746
776
|
window.document.addEventListener('touchend', this._dragEndHandler);
|
|
747
777
|
window.document.addEventListener('touchcancel', this._dragEndHandler);
|
|
748
|
-
this._dragStart$.next();
|
|
778
|
+
this._dragStart$.next(null);
|
|
749
779
|
}
|
|
750
780
|
/**
|
|
751
781
|
* Move draggable elements and swap items
|
|
@@ -828,7 +858,7 @@ class FsListDraggableListDirective {
|
|
|
828
858
|
window.document.removeEventListener('mouseup', this._dragEndHandler);
|
|
829
859
|
window.document.removeEventListener('touchend', this._dragEndHandler);
|
|
830
860
|
window.document.removeEventListener('touchcancel', this._dragEndHandler);
|
|
831
|
-
this._dragEnd$.next();
|
|
861
|
+
this._dragEnd$.next(null);
|
|
832
862
|
}
|
|
833
863
|
get _isMultipleDrag() {
|
|
834
864
|
return this._reorderController.multiple && this._selectedRowsDirectives.length > 1;
|
|
@@ -989,15 +1019,15 @@ class FsListDraggableListDirective {
|
|
|
989
1019
|
e.preventDefault();
|
|
990
1020
|
}
|
|
991
1021
|
}
|
|
1022
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListDraggableListDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: ReorderController }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1023
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListDraggableListDirective, selector: "[fsListDraggableList]", inputs: { _rows: ["rows", "_rows"] }, ngImport: i0 });
|
|
992
1024
|
}
|
|
993
|
-
|
|
994
|
-
FsListDraggableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListDraggableListDirective, selector: "[fsListDraggableList]", inputs: { _rows: ["rows", "_rows"] }, ngImport: i0 });
|
|
995
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListDraggableListDirective, decorators: [{
|
|
1025
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListDraggableListDirective, decorators: [{
|
|
996
1026
|
type: Directive,
|
|
997
1027
|
args: [{
|
|
998
1028
|
selector: '[fsListDraggableList]',
|
|
999
1029
|
}]
|
|
1000
|
-
}], ctorParameters:
|
|
1030
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.ElementRef }, { type: ReorderController }, { type: i0.Renderer2 }], propDecorators: { _rows: [{
|
|
1001
1031
|
type: Input,
|
|
1002
1032
|
args: ['rows']
|
|
1003
1033
|
}] } });
|
|
@@ -1011,9 +1041,11 @@ var RowType;
|
|
|
1011
1041
|
})(RowType || (RowType = {}));
|
|
1012
1042
|
|
|
1013
1043
|
class BaseRow {
|
|
1044
|
+
index;
|
|
1045
|
+
readyToSwap = true;
|
|
1046
|
+
_rowType;
|
|
1047
|
+
_data = {};
|
|
1014
1048
|
constructor(data = {}, rowType = RowType.Simple) {
|
|
1015
|
-
this.readyToSwap = true;
|
|
1016
|
-
this._data = {};
|
|
1017
1049
|
this._data = data;
|
|
1018
1050
|
this._rowType = rowType;
|
|
1019
1051
|
}
|
|
@@ -1033,9 +1065,10 @@ class BaseRow {
|
|
|
1033
1065
|
}
|
|
1034
1066
|
|
|
1035
1067
|
class ChildRow extends BaseRow {
|
|
1068
|
+
visible = true;
|
|
1069
|
+
_parent;
|
|
1036
1070
|
constructor(data = {}, parent = null) {
|
|
1037
1071
|
super(data, RowType.GroupChild);
|
|
1038
|
-
this.visible = true;
|
|
1039
1072
|
this._parent = parent;
|
|
1040
1073
|
if (this.parent) {
|
|
1041
1074
|
this.visible = this._parent.expanded;
|
|
@@ -1059,9 +1092,10 @@ class ChildRow extends BaseRow {
|
|
|
1059
1092
|
}
|
|
1060
1093
|
|
|
1061
1094
|
class GroupFooterRow extends BaseRow {
|
|
1095
|
+
visible = true;
|
|
1096
|
+
_parent;
|
|
1062
1097
|
constructor(data = {}, parent = null) {
|
|
1063
1098
|
super(data, RowType.GroupFooter);
|
|
1064
|
-
this.visible = true;
|
|
1065
1099
|
this._parent = parent;
|
|
1066
1100
|
if (this.parent) {
|
|
1067
1101
|
this.visible = this._parent.expanded;
|
|
@@ -1078,10 +1112,10 @@ class GroupFooterRow extends BaseRow {
|
|
|
1078
1112
|
}
|
|
1079
1113
|
|
|
1080
1114
|
class GroupRow extends BaseRow {
|
|
1115
|
+
children = [];
|
|
1116
|
+
_expanded = new BehaviorSubject(false);
|
|
1081
1117
|
constructor(data = {}, initialExpand = false) {
|
|
1082
1118
|
super(data, RowType.Group);
|
|
1083
|
-
this.children = [];
|
|
1084
|
-
this._expanded = new BehaviorSubject(false);
|
|
1085
1119
|
if (initialExpand) {
|
|
1086
1120
|
this._expanded.next(initialExpand);
|
|
1087
1121
|
}
|
|
@@ -1128,8 +1162,9 @@ class SimpleRow extends BaseRow {
|
|
|
1128
1162
|
}
|
|
1129
1163
|
|
|
1130
1164
|
class Row {
|
|
1165
|
+
_row;
|
|
1166
|
+
_actionsUpdate$ = new Subject();
|
|
1131
1167
|
constructor(data = {}, rowType = RowType.Simple, { parent, initialExpand } = {}) {
|
|
1132
|
-
this._actionsUpdate$ = new Subject();
|
|
1133
1168
|
switch (rowType) {
|
|
1134
1169
|
case RowType.Simple:
|
|
1135
1170
|
{
|
|
@@ -1155,7 +1190,7 @@ class Row {
|
|
|
1155
1190
|
return this._actionsUpdate$.asObservable();
|
|
1156
1191
|
}
|
|
1157
1192
|
actionsUpdate() {
|
|
1158
|
-
return this._actionsUpdate$.next();
|
|
1193
|
+
return this._actionsUpdate$.next(null);
|
|
1159
1194
|
}
|
|
1160
1195
|
set index(value) {
|
|
1161
1196
|
this._row.index = value;
|
|
@@ -1220,11 +1255,23 @@ var ActionType;
|
|
|
1220
1255
|
})(ActionType || (ActionType = {}));
|
|
1221
1256
|
|
|
1222
1257
|
class RowAction {
|
|
1258
|
+
icon;
|
|
1259
|
+
menu;
|
|
1260
|
+
remove;
|
|
1261
|
+
className;
|
|
1262
|
+
type;
|
|
1263
|
+
show;
|
|
1264
|
+
restore;
|
|
1265
|
+
rowActions;
|
|
1266
|
+
label = '';
|
|
1267
|
+
routerLink;
|
|
1268
|
+
classArray = [];
|
|
1269
|
+
isShown = true;
|
|
1270
|
+
click;
|
|
1271
|
+
fileConfig;
|
|
1272
|
+
_linkFn;
|
|
1273
|
+
_isGroup = false;
|
|
1223
1274
|
constructor(config = {}) {
|
|
1224
|
-
this.label = '';
|
|
1225
|
-
this.classArray = [];
|
|
1226
|
-
this.isShown = true;
|
|
1227
|
-
this._isGroup = false;
|
|
1228
1275
|
this._init(config);
|
|
1229
1276
|
if (Array.isArray(this.rowActions)) {
|
|
1230
1277
|
this._isGroup = true;
|
|
@@ -1309,20 +1356,19 @@ class RowAction {
|
|
|
1309
1356
|
}
|
|
1310
1357
|
|
|
1311
1358
|
class FsRowInlineActionComponent {
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
}
|
|
1359
|
+
action;
|
|
1360
|
+
clicked = new EventEmitter();
|
|
1361
|
+
fileSelect = new EventEmitter();
|
|
1316
1362
|
actionClick(event) {
|
|
1317
1363
|
this.clicked.emit(event);
|
|
1318
1364
|
}
|
|
1319
1365
|
fileSelected(event) {
|
|
1320
1366
|
this.fileSelect.emit(event);
|
|
1321
1367
|
}
|
|
1368
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowInlineActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1369
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: { action: "action" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, ngImport: i0, template: "<ng-container *ngIf=\"action.isShown\" [ngSwitch]=\"action.type\">\n <!-- Basic button -->\n <ng-container *ngSwitchCase=\"'basic'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Raised button -->\n <ng-container *ngSwitchCase=\"'raised'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-raised-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Icon button -->\n <ng-container *ngSwitchCase=\"'icon'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-icon-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Fab button -->\n <ng-container *ngSwitchCase=\"'fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Mini Fab button -->\n <ng-container *ngSwitchCase=\"'mini-fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-mini-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <ng-template #buttonContent>\n <ng-container *ngIf=\"!action.fileConfig else uploadFileBtn\">\n <mat-icon *ngIf=\"action.icon\">{{action.icon}}</mat-icon>\n {{action.label}}\n </ng-container>\n\n <ng-template #uploadFileBtn>\n <fs-file\n class=\"action-button\"\n [accept]=\"action.fileConfig.accept || '*'\"\n [multiple]=\"action.fileConfig.multiple\"\n [minWidth]=\"action.fileConfig.minWidth\"\n [minHeight]=\"action.fileConfig.minHeight\"\n [imageWidth]=\"action.fileConfig.maxWidth\"\n [imageHeight]=\"action.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n <mat-icon *ngIf=\"action.icon\">{{action.icon}}</mat-icon>\n {{action.label}}\n </fs-file>\n </ng-template>\n </ng-template>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatMiniFabAnchor, selector: "a[mat-mini-fab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFabAnchor, selector: "a[mat-fab]", inputs: ["extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.FsFileComponent, selector: "fs-file", inputs: ["minHeight", "minWidth", "orientate", "multiple", "capture", "allowClick", "allowDrop", "accept", "disabled", "imageWidth", "imageHeight", "imageQuality"], outputs: ["select", "error", "beforeProcessing", "clicked", "declined"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1322
1370
|
}
|
|
1323
|
-
|
|
1324
|
-
FsRowInlineActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: { action: "action" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, ngImport: i0, template: "<ng-container *ngIf=\"action.isShown\" [ngSwitch]=\"action.type\">\n <!-- Basic button -->\n <ng-container *ngSwitchCase=\"'basic'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Raised button -->\n <ng-container *ngSwitchCase=\"'raised'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-raised-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Icon button -->\n <ng-container *ngSwitchCase=\"'icon'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-icon-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Fab button -->\n <ng-container *ngSwitchCase=\"'fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Mini Fab button -->\n <ng-container *ngSwitchCase=\"'mini-fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-mini-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <ng-template #buttonContent>\n <ng-container *ngIf=\"!action.fileConfig else uploadFileBtn\">\n <mat-icon *ngIf=\"action.icon\">{{action.icon}}</mat-icon>\n {{action.label}}\n </ng-container>\n\n <ng-template #uploadFileBtn>\n <fs-file\n class=\"action-button\"\n [accept]=\"action.fileConfig.accept || '*'\"\n [multiple]=\"action.fileConfig.multiple\"\n [minWidth]=\"action.fileConfig.minWidth\"\n [minHeight]=\"action.fileConfig.minHeight\"\n [imageWidth]=\"action.fileConfig.maxWidth\"\n [imageHeight]=\"action.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n <mat-icon *ngIf=\"action.icon\">{{action.icon}}</mat-icon>\n {{action.label}}\n </fs-file>\n </ng-template>\n </ng-template>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconAnchor, selector: "a[mat-icon-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatMiniFabAnchor, selector: "a[mat-mini-fab]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatMiniFabButton, selector: "button[mat-mini-fab]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatFabAnchor, selector: "a[mat-fab]", inputs: ["disabled", "disableRipple", "color", "tabIndex", "extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFabButton, selector: "button[mat-fab]", inputs: ["disabled", "disableRipple", "color", "tabIndex", "extended"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.FsFileComponent, selector: "fs-file", inputs: ["minHeight", "minWidth", "orientate", "multiple", "capture", "allowClick", "allowDrop", "accept", "disabled", "imageWidth", "imageHeight", "imageQuality"], outputs: ["select", "error", "beforeProcessing", "clicked", "declined"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1325
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsRowInlineActionComponent, decorators: [{
|
|
1371
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowInlineActionComponent, decorators: [{
|
|
1326
1372
|
type: Component,
|
|
1327
1373
|
args: [{ selector: 'fs-list-row-inline-action', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"action.isShown\" [ngSwitch]=\"action.type\">\n <!-- Basic button -->\n <ng-container *ngSwitchCase=\"'basic'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Raised button -->\n <ng-container *ngSwitchCase=\"'raised'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-raised-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Icon button -->\n <ng-container *ngSwitchCase=\"'icon'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-icon-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Fab button -->\n <ng-container *ngSwitchCase=\"'fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <!-- Mini Fab button -->\n <ng-container *ngSwitchCase=\"'mini-fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\"\n >\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a mat-mini-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n\n <ng-template #buttonContent>\n <ng-container *ngIf=\"!action.fileConfig else uploadFileBtn\">\n <mat-icon *ngIf=\"action.icon\">{{action.icon}}</mat-icon>\n {{action.label}}\n </ng-container>\n\n <ng-template #uploadFileBtn>\n <fs-file\n class=\"action-button\"\n [accept]=\"action.fileConfig.accept || '*'\"\n [multiple]=\"action.fileConfig.multiple\"\n [minWidth]=\"action.fileConfig.minWidth\"\n [minHeight]=\"action.fileConfig.minHeight\"\n [imageWidth]=\"action.fileConfig.maxWidth\"\n [imageHeight]=\"action.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n <mat-icon *ngIf=\"action.icon\">{{action.icon}}</mat-icon>\n {{action.label}}\n </fs-file>\n </ng-template>\n </ng-template>\n</ng-container>\n" }]
|
|
1328
1374
|
}], propDecorators: { action: [{
|
|
@@ -1340,19 +1386,24 @@ class ActionLabelPipe {
|
|
|
1340
1386
|
}
|
|
1341
1387
|
return label;
|
|
1342
1388
|
}
|
|
1389
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionLabelPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
1390
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: ActionLabelPipe, name: "actionLabel" });
|
|
1343
1391
|
}
|
|
1344
|
-
|
|
1345
|
-
ActionLabelPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: ActionLabelPipe, name: "actionLabel" });
|
|
1346
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ActionLabelPipe, decorators: [{
|
|
1392
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionLabelPipe, decorators: [{
|
|
1347
1393
|
type: Pipe,
|
|
1348
1394
|
args: [{ name: 'actionLabel' }]
|
|
1349
1395
|
}] });
|
|
1350
1396
|
|
|
1351
1397
|
class FsRowMenuActionComponent {
|
|
1398
|
+
_menu;
|
|
1399
|
+
row;
|
|
1400
|
+
icon;
|
|
1401
|
+
label;
|
|
1402
|
+
file;
|
|
1403
|
+
fileSelect = new EventEmitter();
|
|
1404
|
+
fileError = new EventEmitter();
|
|
1352
1405
|
constructor(_menu) {
|
|
1353
1406
|
this._menu = _menu;
|
|
1354
|
-
this.fileSelect = new EventEmitter();
|
|
1355
|
-
this.fileError = new EventEmitter();
|
|
1356
1407
|
}
|
|
1357
1408
|
selectFile(event) {
|
|
1358
1409
|
this.fileSelect.emit(event);
|
|
@@ -1365,13 +1416,13 @@ class FsRowMenuActionComponent {
|
|
|
1365
1416
|
closeMenu() {
|
|
1366
1417
|
this._menu.closeMenu();
|
|
1367
1418
|
}
|
|
1419
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowMenuActionComponent, deps: [{ token: i2.FsMenuComponent }], target: i0.ɵɵFactoryTarget.Component });
|
|
1420
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: { row: "row", icon: "icon", label: "label", file: "file" }, outputs: { fileSelect: "fileSelect", fileError: "fileError" }, ngImport: i0, template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n</ng-container>\n\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [accept]=\"file.accept || '*'\"\n [multiple]=\"file.multiple\"\n [minWidth]=\"file.minWidth\"\n [minHeight]=\"file.minHeight\"\n [imageWidth]=\"file.maxWidth\"\n [imageHeight]=\"file.maxHeight\"\n (click)=\"$event.stopPropagation();\"\n (select)=\"selectFile($event)\"\n (error)=\"errorFile($event)\"\n (cancel)=\"closeMenu()\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n </fs-file>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.FsFileComponent, selector: "fs-file", inputs: ["minHeight", "minWidth", "orientate", "multiple", "capture", "allowClick", "allowDrop", "accept", "disabled", "imageWidth", "imageHeight", "imageQuality"], outputs: ["select", "error", "beforeProcessing", "clicked", "declined"] }, { kind: "pipe", type: ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1368
1421
|
}
|
|
1369
|
-
|
|
1370
|
-
FsRowMenuActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: { row: "row", icon: "icon", label: "label", file: "file" }, outputs: { fileSelect: "fileSelect", fileError: "fileError" }, ngImport: i0, template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n</ng-container>\n\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [accept]=\"file.accept || '*'\"\n [multiple]=\"file.multiple\"\n [minWidth]=\"file.minWidth\"\n [minHeight]=\"file.minHeight\"\n [imageWidth]=\"file.maxWidth\"\n [imageHeight]=\"file.maxHeight\"\n (click)=\"$event.stopPropagation();\"\n (select)=\"selectFile($event)\"\n (error)=\"errorFile($event)\"\n (cancel)=\"closeMenu()\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n </fs-file>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.FsFileComponent, selector: "fs-file", inputs: ["minHeight", "minWidth", "orientate", "multiple", "capture", "allowClick", "allowDrop", "accept", "disabled", "imageWidth", "imageHeight", "imageQuality"], outputs: ["select", "error", "beforeProcessing", "clicked", "declined"] }, { kind: "pipe", type: ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1371
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsRowMenuActionComponent, decorators: [{
|
|
1422
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowMenuActionComponent, decorators: [{
|
|
1372
1423
|
type: Component,
|
|
1373
1424
|
args: [{ selector: 'fs-list-row-menu-action', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n</ng-container>\n\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [accept]=\"file.accept || '*'\"\n [multiple]=\"file.multiple\"\n [minWidth]=\"file.minWidth\"\n [minHeight]=\"file.minHeight\"\n [imageWidth]=\"file.maxWidth\"\n [imageHeight]=\"file.maxHeight\"\n (click)=\"$event.stopPropagation();\"\n (select)=\"selectFile($event)\"\n (error)=\"errorFile($event)\"\n (cancel)=\"closeMenu()\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n </fs-file>\n</ng-template>\n" }]
|
|
1374
|
-
}], ctorParameters:
|
|
1425
|
+
}], ctorParameters: () => [{ type: i2.FsMenuComponent }], propDecorators: { row: [{
|
|
1375
1426
|
type: Input
|
|
1376
1427
|
}], icon: [{
|
|
1377
1428
|
type: Input
|
|
@@ -1386,13 +1437,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
1386
1437
|
}] } });
|
|
1387
1438
|
|
|
1388
1439
|
class FsRowActionsComponent {
|
|
1440
|
+
_prompt;
|
|
1441
|
+
row;
|
|
1442
|
+
index;
|
|
1443
|
+
restoreMode = false;
|
|
1444
|
+
rowActions = [];
|
|
1445
|
+
rowRemoved;
|
|
1446
|
+
menuRowActions = [];
|
|
1447
|
+
inlineRowActions = [];
|
|
1448
|
+
restoreAction;
|
|
1449
|
+
_destroy$ = new Subject();
|
|
1389
1450
|
constructor(_prompt) {
|
|
1390
1451
|
this._prompt = _prompt;
|
|
1391
|
-
this.restoreMode = false;
|
|
1392
|
-
this.rowActions = [];
|
|
1393
|
-
this.menuRowActions = [];
|
|
1394
|
-
this.inlineRowActions = [];
|
|
1395
|
-
this._destroy$ = new Subject();
|
|
1396
1452
|
}
|
|
1397
1453
|
actionClick(action, row, event, menuRef) {
|
|
1398
1454
|
if (action.remove) {
|
|
@@ -1444,13 +1500,13 @@ class FsRowActionsComponent {
|
|
|
1444
1500
|
this.rowRemoved.emit(row);
|
|
1445
1501
|
}
|
|
1446
1502
|
}
|
|
1503
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowActionsComponent, deps: [{ token: i1$1.FsPrompt }], target: i0.ɵɵFactoryTarget.Component });
|
|
1504
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsRowActionsComponent, selector: "fs-list-row-actions", inputs: { row: "row", index: "index", restoreMode: "restoreMode", rowActions: "rowActions", rowRemoved: "rowRemoved", menuRowActions: "menuRowActions", inlineRowActions: "inlineRowActions", restoreAction: "restoreAction" }, ngImport: i0, template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action\n class=\"row-inline-action row-inline-action-{{action.type}}\"\n [action]=\"action\"\n [ngClass]=\"{'mobile-hide': action.menu === undefined}\"\n (clicked)=\"actionClick(action, row, $event)\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n\n<!-- Menu -->\n<fs-menu\n class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n #menuRef>\n <!-- Case when we have usual menu actions -->\n <ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <ng-template\n class=\"hidden-mobile-menu-action\"\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"action.menu !== undefined && !action.isShown\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n\n <ng-container *ngFor=\"let action of menuRowActions; trackBy: trackByFn\">\n <ng-container *ngIf=\"action.isGroup else simpleMenuItem\">\n <fs-menu-group [label]=\"action.label | actionLabel:row\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template\n fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n [class]=\"subAction.className\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"subAction.icon\"\n [label]=\"subAction.label\"\n [row]=\"row\"\n [file]=\"subAction.fileConfig\"\n (fileSelect)=\"subAction.fileConfig.select($event, row, index)\"\n (fileError)=\"subAction.fileConfig.error && subAction.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n </fs-menu-group>\n </ng-container>\n <ng-template #simpleMenuItem>\n <ng-template\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n [class]=\"action.className\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n\n <!-- Case when we have restore mode enabled and must hide menu actions -->\n <ng-container *ngIf=\"restoreMode && restoreAction\">\n <ng-template fs-menu-item (click)=\"actionClick(restoreAction, row, $event, menuRef)\">\n <mat-icon *ngIf=\"restoreAction.icon\">{{restoreAction.icon}}</mat-icon>\n {{restoreAction.label | actionLabel:row}}\n </ng-template>\n </ng-container>\n</fs-menu>\n", styles: [":host ::ng-deep fs-list-row-inline-action{margin-left:5px}:host ::ng-deep fs-list-row-inline-action:first-child{margin-left:0}::ng-deep .hidden-mobile-menu-action{display:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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]" }, { kind: "component", type: FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: ["action"], outputs: ["clicked", "fileSelect"] }, { kind: "component", type: FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: ["row", "icon", "label", "file"], outputs: ["fileSelect", "fileError"] }, { kind: "pipe", type: ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1447
1505
|
}
|
|
1448
|
-
|
|
1449
|
-
FsRowActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsRowActionsComponent, selector: "fs-list-row-actions", inputs: { row: "row", index: "index", restoreMode: "restoreMode", rowActions: "rowActions", rowRemoved: "rowRemoved", menuRowActions: "menuRowActions", inlineRowActions: "inlineRowActions", restoreAction: "restoreAction" }, ngImport: i0, template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action\n class=\"row-inline-action row-inline-action-{{action.type}}\"\n [action]=\"action\"\n [ngClass]=\"{'mobile-hide': action.menu === undefined}\"\n (clicked)=\"actionClick(action, row, $event)\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n\n<!-- Menu -->\n<fs-menu\n class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n #menuRef>\n <!-- Case when we have usual menu actions -->\n <ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <ng-template\n class=\"hidden-mobile-menu-action\"\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"action.menu !== undefined && !action.isShown\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n\n <ng-container *ngFor=\"let action of menuRowActions; trackBy: trackByFn\">\n <ng-container *ngIf=\"action.isGroup else simpleMenuItem\">\n <fs-menu-group [label]=\"action.label | actionLabel:row\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template\n fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n [class]=\"subAction.className\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"subAction.icon\"\n [label]=\"subAction.label\"\n [row]=\"row\"\n [file]=\"subAction.fileConfig\"\n (fileSelect)=\"subAction.fileConfig.select($event, row, index)\"\n (fileError)=\"subAction.fileConfig.error && subAction.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n </fs-menu-group>\n </ng-container>\n <ng-template #simpleMenuItem>\n <ng-template\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n [class]=\"action.className\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n\n <!-- Case when we have restore mode enabled and must hide menu actions -->\n <ng-container *ngIf=\"restoreMode && restoreAction\">\n <ng-template fs-menu-item (click)=\"actionClick(restoreAction, row, $event, menuRef)\">\n <mat-icon *ngIf=\"restoreAction.icon\">{{restoreAction.icon}}</mat-icon>\n {{restoreAction.label | actionLabel:row}}\n </ng-template>\n </ng-container>\n</fs-menu>\n", styles: [":host ::ng-deep fs-list-row-inline-action{margin-left:5px}:host ::ng-deep fs-list-row-inline-action:first-child{margin-left:0}::ng-deep .hidden-mobile-menu-action{display:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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]" }, { kind: "component", type: FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: ["action"], outputs: ["clicked", "fileSelect"] }, { kind: "component", type: FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: ["row", "icon", "label", "file"], outputs: ["fileSelect", "fileError"] }, { kind: "pipe", type: ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1450
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsRowActionsComponent, decorators: [{
|
|
1506
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowActionsComponent, decorators: [{
|
|
1451
1507
|
type: Component,
|
|
1452
1508
|
args: [{ selector: 'fs-list-row-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action\n class=\"row-inline-action row-inline-action-{{action.type}}\"\n [action]=\"action\"\n [ngClass]=\"{'mobile-hide': action.menu === undefined}\"\n (clicked)=\"actionClick(action, row, $event)\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n\n<!-- Menu -->\n<fs-menu\n class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n #menuRef>\n <!-- Case when we have usual menu actions -->\n <ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <ng-template\n class=\"hidden-mobile-menu-action\"\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"action.menu !== undefined && !action.isShown\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n\n <ng-container *ngFor=\"let action of menuRowActions; trackBy: trackByFn\">\n <ng-container *ngIf=\"action.isGroup else simpleMenuItem\">\n <fs-menu-group [label]=\"action.label | actionLabel:row\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template\n fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n [class]=\"subAction.className\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"subAction.icon\"\n [label]=\"subAction.label\"\n [row]=\"row\"\n [file]=\"subAction.fileConfig\"\n (fileSelect)=\"subAction.fileConfig.select($event, row, index)\"\n (fileError)=\"subAction.fileConfig.error && subAction.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n </fs-menu-group>\n </ng-container>\n <ng-template #simpleMenuItem>\n <ng-template\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n [class]=\"action.className\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n\n <!-- Case when we have restore mode enabled and must hide menu actions -->\n <ng-container *ngIf=\"restoreMode && restoreAction\">\n <ng-template fs-menu-item (click)=\"actionClick(restoreAction, row, $event, menuRef)\">\n <mat-icon *ngIf=\"restoreAction.icon\">{{restoreAction.icon}}</mat-icon>\n {{restoreAction.label | actionLabel:row}}\n </ng-template>\n </ng-container>\n</fs-menu>\n", styles: [":host ::ng-deep fs-list-row-inline-action{margin-left:5px}:host ::ng-deep fs-list-row-inline-action:first-child{margin-left:0}::ng-deep .hidden-mobile-menu-action{display:none!important}\n"] }]
|
|
1453
|
-
}], ctorParameters:
|
|
1509
|
+
}], ctorParameters: () => [{ type: i1$1.FsPrompt }], propDecorators: { row: [{
|
|
1454
1510
|
type: Input
|
|
1455
1511
|
}], index: [{
|
|
1456
1512
|
type: Input
|
|
@@ -1469,10 +1525,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
1469
1525
|
}] } });
|
|
1470
1526
|
|
|
1471
1527
|
class StyleConfig {
|
|
1528
|
+
colspan;
|
|
1529
|
+
align; // Can't be used in tempaltes!
|
|
1530
|
+
className = []; // Can't be used in tempaltes!
|
|
1531
|
+
classesArray = []; // Can be used in tempaltes
|
|
1532
|
+
classesString = '';
|
|
1472
1533
|
constructor(config = {}) {
|
|
1473
|
-
this.className = []; // Can't be used in tempaltes!
|
|
1474
|
-
this.classesArray = []; // Can be used in tempaltes
|
|
1475
|
-
this.classesString = '';
|
|
1476
1534
|
this._init(config);
|
|
1477
1535
|
}
|
|
1478
1536
|
/**
|
|
@@ -1555,18 +1613,27 @@ const ALLOWED_DEFAULTS = [
|
|
|
1555
1613
|
'class',
|
|
1556
1614
|
];
|
|
1557
1615
|
class Column {
|
|
1616
|
+
headerTemplate;
|
|
1617
|
+
groupHeaderTemplate;
|
|
1618
|
+
groupFooterTemplate;
|
|
1619
|
+
cellTemplate;
|
|
1620
|
+
footerTemplate;
|
|
1621
|
+
expandTrigger;
|
|
1622
|
+
headerConfigs = new StyleConfig();
|
|
1623
|
+
groupHeaderConfigs = new StyleConfig();
|
|
1624
|
+
groupFooterConfigs = new StyleConfig();
|
|
1625
|
+
cellConfigs = new StyleConfig();
|
|
1626
|
+
footerConfigs = new StyleConfig();
|
|
1627
|
+
colStyles;
|
|
1628
|
+
headerColspanned = false;
|
|
1629
|
+
groupHeaderColspanned = false;
|
|
1630
|
+
groupFooterColspanned = false;
|
|
1631
|
+
cellColspanned = false;
|
|
1632
|
+
footerColspanned = false;
|
|
1633
|
+
_attributes;
|
|
1634
|
+
_defaultDirection;
|
|
1635
|
+
_ordered = false;
|
|
1558
1636
|
constructor(colConfig, colDefaults = false) {
|
|
1559
|
-
this.headerConfigs = new StyleConfig();
|
|
1560
|
-
this.groupHeaderConfigs = new StyleConfig();
|
|
1561
|
-
this.groupFooterConfigs = new StyleConfig();
|
|
1562
|
-
this.cellConfigs = new StyleConfig();
|
|
1563
|
-
this.footerConfigs = new StyleConfig();
|
|
1564
|
-
this.headerColspanned = false;
|
|
1565
|
-
this.groupHeaderColspanned = false;
|
|
1566
|
-
this.groupFooterColspanned = false;
|
|
1567
|
-
this.cellColspanned = false;
|
|
1568
|
-
this.footerColspanned = false;
|
|
1569
|
-
this._ordered = false;
|
|
1570
1637
|
this._parseConfig(colConfig);
|
|
1571
1638
|
this.colStyles = new StyleConfig({
|
|
1572
1639
|
className: this._attributes.className,
|
|
@@ -1706,12 +1773,14 @@ class Column {
|
|
|
1706
1773
|
}
|
|
1707
1774
|
|
|
1708
1775
|
class FsCellComponent {
|
|
1709
|
-
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
}
|
|
1776
|
+
isColl = true;
|
|
1777
|
+
role = 'gridcell';
|
|
1778
|
+
column;
|
|
1779
|
+
row; // tmp
|
|
1780
|
+
rowIndex;
|
|
1781
|
+
cellContext = {};
|
|
1782
|
+
cellTemplate;
|
|
1783
|
+
_destroy$ = new Subject();
|
|
1715
1784
|
ngOnInit() {
|
|
1716
1785
|
this._listenGroupOpen();
|
|
1717
1786
|
}
|
|
@@ -1732,7 +1801,7 @@ class FsCellComponent {
|
|
|
1732
1801
|
}
|
|
1733
1802
|
}
|
|
1734
1803
|
ngOnDestroy() {
|
|
1735
|
-
this._destroy$.next();
|
|
1804
|
+
this._destroy$.next(null);
|
|
1736
1805
|
this._destroy$.complete();
|
|
1737
1806
|
}
|
|
1738
1807
|
_initCellContext() {
|
|
@@ -1786,12 +1855,12 @@ class FsCellComponent {
|
|
|
1786
1855
|
});
|
|
1787
1856
|
}
|
|
1788
1857
|
}
|
|
1858
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1859
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsCellComponent, selector: "[fs-cell]", inputs: { column: "column", row: "row", rowIndex: "rowIndex" }, host: { properties: { "class.fs-list-col": "this.isColl", "attr.role": "this.role" } }, usesOnChanges: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"cellTemplate || defaultCellTemplate\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\r\n\r\n<ng-template #defaultCellTemplate let-value=\"value\">\r\n {{value}}\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1789
1860
|
}
|
|
1790
|
-
|
|
1791
|
-
FsCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsCellComponent, selector: "[fs-cell]", inputs: { column: "column", row: "row", rowIndex: "rowIndex" }, host: { properties: { "class.fs-list-col": "this.isColl", "attr.role": "this.role" } }, usesOnChanges: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"cellTemplate || defaultCellTemplate\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\n\n<ng-template #defaultCellTemplate let-value=\"value\">\n {{value}}\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1792
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsCellComponent, decorators: [{
|
|
1861
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsCellComponent, decorators: [{
|
|
1793
1862
|
type: Component,
|
|
1794
|
-
args: [{ selector: '[fs-cell]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngTemplateOutlet]=\"cellTemplate || defaultCellTemplate\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\n\n<ng-template #defaultCellTemplate let-value=\"value\">\n {{value}}\n</ng-template>\n" }]
|
|
1863
|
+
args: [{ selector: '[fs-cell]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngTemplateOutlet]=\"cellTemplate || defaultCellTemplate\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\r\n\r\n<ng-template #defaultCellTemplate let-value=\"value\">\r\n {{value}}\r\n</ng-template>\r\n" }]
|
|
1795
1864
|
}], propDecorators: { isColl: [{
|
|
1796
1865
|
type: HostBinding,
|
|
1797
1866
|
args: ['class.fs-list-col']
|
|
@@ -1807,27 +1876,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
1807
1876
|
}] } });
|
|
1808
1877
|
|
|
1809
1878
|
class FsRowComponent {
|
|
1879
|
+
el;
|
|
1880
|
+
_cdRef;
|
|
1881
|
+
_differs;
|
|
1882
|
+
_renderer;
|
|
1883
|
+
_draggableList;
|
|
1884
|
+
role = 'row';
|
|
1885
|
+
row;
|
|
1886
|
+
rowActionsRaw = [];
|
|
1887
|
+
groupActionsRaw = [];
|
|
1888
|
+
hasRowActions = false;
|
|
1889
|
+
rowEvents = {};
|
|
1890
|
+
rowClass;
|
|
1891
|
+
restoreMode = false;
|
|
1892
|
+
rowIndex;
|
|
1893
|
+
columns;
|
|
1894
|
+
selection;
|
|
1895
|
+
rowRemoved;
|
|
1896
|
+
activeFiltersCount;
|
|
1897
|
+
reorderEnabled;
|
|
1898
|
+
reorderPosition;
|
|
1899
|
+
reorderStrategy;
|
|
1900
|
+
reorderMultiple;
|
|
1901
|
+
cellRefs;
|
|
1902
|
+
ReorderPosition = ReorderPosition;
|
|
1903
|
+
ReorderStrategy = ReorderStrategy;
|
|
1904
|
+
rowActions = [];
|
|
1905
|
+
menuRowActions = [];
|
|
1906
|
+
inlineRowActions = [];
|
|
1907
|
+
restoreAction;
|
|
1908
|
+
selected = false;
|
|
1909
|
+
indeterminateSelected = false;
|
|
1910
|
+
_rowDiffer;
|
|
1911
|
+
_eventListeners = [];
|
|
1912
|
+
_destroy$ = new Subject();
|
|
1810
1913
|
constructor(el, _cdRef, _differs, _renderer, _draggableList) {
|
|
1811
1914
|
this.el = el;
|
|
1812
1915
|
this._cdRef = _cdRef;
|
|
1813
1916
|
this._differs = _differs;
|
|
1814
1917
|
this._renderer = _renderer;
|
|
1815
1918
|
this._draggableList = _draggableList;
|
|
1816
|
-
this.role = 'row';
|
|
1817
|
-
this.rowActionsRaw = [];
|
|
1818
|
-
this.groupActionsRaw = [];
|
|
1819
|
-
this.hasRowActions = false;
|
|
1820
|
-
this.rowEvents = {};
|
|
1821
|
-
this.restoreMode = false;
|
|
1822
|
-
this.ReorderPosition = ReorderPosition;
|
|
1823
|
-
this.ReorderStrategy = ReorderStrategy;
|
|
1824
|
-
this.rowActions = [];
|
|
1825
|
-
this.menuRowActions = [];
|
|
1826
|
-
this.inlineRowActions = [];
|
|
1827
|
-
this.selected = false;
|
|
1828
|
-
this.indeterminateSelected = false;
|
|
1829
|
-
this._eventListeners = [];
|
|
1830
|
-
this._destroy$ = new Subject();
|
|
1831
1919
|
this._rowDiffer = _differs.find({}).create();
|
|
1832
1920
|
}
|
|
1833
1921
|
get isGroupRow() {
|
|
@@ -1926,7 +2014,7 @@ class FsRowComponent {
|
|
|
1926
2014
|
this._eventListeners.forEach((listener) => {
|
|
1927
2015
|
listener();
|
|
1928
2016
|
});
|
|
1929
|
-
this._destroy$.next();
|
|
2017
|
+
this._destroy$.next(null);
|
|
1930
2018
|
this._destroy$.complete();
|
|
1931
2019
|
}
|
|
1932
2020
|
/**
|
|
@@ -2058,13 +2146,13 @@ class FsRowComponent {
|
|
|
2058
2146
|
}
|
|
2059
2147
|
});
|
|
2060
2148
|
}
|
|
2149
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }, { token: FsListDraggableListDirective }], target: i0.ɵɵFactoryTarget.Component });
|
|
2150
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsRowComponent, selector: "[fs-list-row]", inputs: { row: "row", rowActionsRaw: "rowActionsRaw", groupActionsRaw: "groupActionsRaw", hasRowActions: "hasRowActions", rowEvents: "rowEvents", rowClass: "rowClass", restoreMode: "restoreMode", rowIndex: "rowIndex", columns: "columns", selection: "selection", rowRemoved: "rowRemoved", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy", reorderMultiple: "reorderMultiple" }, host: { properties: { "attr.role": "this.role", "class.drag-row": "this.reorderEnabled", "class.multiple-selection": "this.isMultipleSelection", "class": "this.rowCssClass" } }, viewQueries: [{ propertyName: "cellRefs", predicate: ["td"], descendants: true }], ngImport: i0, template: "<!-- Drag -->\n<ng-container *ngIf=\"leftDragDropEnabled\">\n <ng-container *ngTemplateOutlet=\"dragCell\"></ng-container>\n</ng-container>\n\n<!-- Selection -->\n<ng-container *ngIf=\"selection && !(selection.disabled$ | async)\">\n <td class=\"fs-list-col fs-list-col-selection\">\n <ng-container *ngIf=\"!row.isGroupFooter\">\n <mat-checkbox \n (change)=\"selectRow($event)\"\n [checked]=\"selected\"\n [indeterminate]=\"indeterminateSelected\">\n </mat-checkbox>\n </ng-container>\n </td>\n</ng-container>\n\n<!-- Content -->\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn; let isFirst = first\">\n <td fs-cell\n *ngIf=\"(isGroupRow && !column.groupHeaderColspanned)\n || (isGroupFooterRow && !column.groupFooterColspanned)\n || (!isGroupRow && !isGroupFooterRow && !column.cellColspanned)\"\n [column]=\"column\"\n [row]=\"row\"\n [rowIndex]=\"rowIndex\"\n [class]=\"(isGroupRow && column.groupHeaderConfigs.classesString)\n || (isGroupFooterRow && column.groupFooterConfigs.classesString)\n || (!isGroupFooterRow && column.cellConfigs.classesString)\"\n [ngClass]=\"{ 'primary-col': isFirst }\"\n [attr.colspan]=\"(isGroupRow && column.groupHeaderConfigs.colspan)\n || (isGroupFooterRow && column.groupFooterConfigs.colspan)\n || column.cellConfigs.colspan\"\n [attr.width]=\"column.width\"\n >\n </td>\n</ng-container>\n\n<!-- Drag -->\n<ng-container *ngIf=\"rightDragDropEnabled\">\n <ng-container *ngTemplateOutlet=\"dragCell\"></ng-container>\n</ng-container>\n\n<!-- Row Actions -->\n<td *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategy.Manual)\" class=\"fs-list-col row-actions\">\n <ng-container *ngIf=\"!isGroupFooterRow\">\n <fs-list-row-actions\n [row]=\"row\"\n [index]=\"rowIndex\"\n [rowActions]=\"rowActions\"\n [menuRowActions]=\"menuRowActions\"\n [inlineRowActions]=\"inlineRowActions\"\n [restoreAction]=\"restoreAction\"\n [restoreMode]=\"restoreMode\"\n [rowRemoved]=\"rowRemoved\">\n </fs-list-row-actions>\n </ng-container>\n</td>\n\n<ng-template #dragCell>\n <ng-container *ngIf=\"dragCellVisible && !isGroupFooterRow; else emptyCell\">\n <td \n class=\"fs-list-col drag-col\"\n [class.drag-disabled]=\"isDragDisabled\"\n (mousedown)=\"dragStart($event)\"\n (touchstart)=\"dragStart($event)\">\n <mat-icon>drag_handle</mat-icon>\n </td>\n </ng-container>\n <ng-template #emptyCell>\n <td class=\"fs-list-col drag-col\"></td>\n </ng-template>\n</ng-template>\n", styles: [":host.drag-hidden{display:none}:host.draggable{opacity:.8;position:fixed;z-index:9999;box-shadow:2px 2px 2px #9e9e9ea6;border-radius:5px}:host.draggable td{border:none;background-color:#fff}:host.draggable-elem td{background-color:#c3c3c3}:host.fs-list-row-clickable{cursor:pointer}td.drag-col{width:1%!important;white-space:nowrap;text-align:center;cursor:grab}td.drag-col.drag-disabled{opacity:.4;cursor:no-drop}td.drag-col mat-icon{display:flex}td.fs-list-col-selection{padding:10px;width:1%!important}td.row-actions{width:1%;white-space:nowrap;overflow:hidden}td.row-actions .row-inline-action{margin-left:12px;display:inline-block}td.row-actions .row-inline-action:first-child{margin-left:0}td.row-actions .row-inline-action-icon,td.row-actions .row-inline-action-fab,td.row-actions .row-inline-action-mini-fab,td.row-actions .row-menu-action{width:35px;justify-content:center;align-items:center}td.left{text-align:left}td.center{text-align:center}td.right{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: FsRowActionsComponent, selector: "fs-list-row-actions", inputs: ["row", "index", "restoreMode", "rowActions", "rowRemoved", "menuRowActions", "inlineRowActions", "restoreAction"] }, { kind: "component", type: FsCellComponent, selector: "[fs-cell]", inputs: ["column", "row", "rowIndex"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2061
2151
|
}
|
|
2062
|
-
|
|
2063
|
-
FsRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsRowComponent, selector: "[fs-list-row]", inputs: { row: "row", rowActionsRaw: "rowActionsRaw", groupActionsRaw: "groupActionsRaw", hasRowActions: "hasRowActions", rowEvents: "rowEvents", rowClass: "rowClass", restoreMode: "restoreMode", rowIndex: "rowIndex", columns: "columns", selection: "selection", rowRemoved: "rowRemoved", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy", reorderMultiple: "reorderMultiple" }, host: { properties: { "attr.role": "this.role", "class.drag-row": "this.reorderEnabled", "class.multiple-selection": "this.isMultipleSelection", "class": "this.rowCssClass" } }, viewQueries: [{ propertyName: "cellRefs", predicate: ["td"], descendants: true }], ngImport: i0, template: "<!-- Drag -->\n<ng-container *ngIf=\"leftDragDropEnabled\">\n <ng-container *ngTemplateOutlet=\"dragCell\"></ng-container>\n</ng-container>\n\n<!-- Selection -->\n<ng-container *ngIf=\"selection && !(selection.disabled$ | async)\">\n <td class=\"fs-list-col fs-list-col-selection\">\n <ng-container *ngIf=\"!row.isGroupFooter\">\n <mat-checkbox \n (change)=\"selectRow($event)\"\n [checked]=\"selected\"\n [indeterminate]=\"indeterminateSelected\">\n </mat-checkbox>\n </ng-container>\n </td>\n</ng-container>\n\n<!-- Content -->\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn; let isFirst = first\">\n <td fs-cell\n *ngIf=\"(isGroupRow && !column.groupHeaderColspanned)\n || (isGroupFooterRow && !column.groupFooterColspanned)\n || (!isGroupRow && !isGroupFooterRow && !column.cellColspanned)\"\n [column]=\"column\"\n [row]=\"row\"\n [rowIndex]=\"rowIndex\"\n [class]=\"(isGroupRow && column.groupHeaderConfigs.classesString)\n || (isGroupFooterRow && column.groupFooterConfigs.classesString)\n || (!isGroupFooterRow && column.cellConfigs.classesString)\"\n [ngClass]=\"{ 'primary-col': isFirst }\"\n [attr.colspan]=\"(isGroupRow && column.groupHeaderConfigs.colspan)\n || (isGroupFooterRow && column.groupFooterConfigs.colspan)\n || column.cellConfigs.colspan\"\n [attr.width]=\"column.width\"\n >\n </td>\n</ng-container>\n\n<!-- Drag -->\n<ng-container *ngIf=\"rightDragDropEnabled\">\n <ng-container *ngTemplateOutlet=\"dragCell\"></ng-container>\n</ng-container>\n\n<!-- Row Actions -->\n<td *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategy.Manual)\" class=\"fs-list-col row-actions\">\n <ng-container *ngIf=\"!isGroupFooterRow\">\n <fs-list-row-actions\n [row]=\"row\"\n [index]=\"rowIndex\"\n [rowActions]=\"rowActions\"\n [menuRowActions]=\"menuRowActions\"\n [inlineRowActions]=\"inlineRowActions\"\n [restoreAction]=\"restoreAction\"\n [restoreMode]=\"restoreMode\"\n [rowRemoved]=\"rowRemoved\">\n </fs-list-row-actions>\n </ng-container>\n</td>\n\n<ng-template #dragCell>\n <ng-container *ngIf=\"dragCellVisible && !isGroupFooterRow; else emptyCell\">\n <td \n class=\"fs-list-col drag-col\"\n [class.drag-disabled]=\"isDragDisabled\"\n (mousedown)=\"dragStart($event)\"\n (touchstart)=\"dragStart($event)\">\n <mat-icon>drag_handle</mat-icon>\n </td>\n </ng-container>\n <ng-template #emptyCell>\n <td class=\"fs-list-col drag-col\"></td>\n </ng-template>\n</ng-template>\n", styles: [":host.drag-hidden{display:none}:host.draggable{opacity:.8;position:fixed;z-index:9999;box-shadow:2px 2px 2px #9e9e9ea6;border-radius:5px}:host.draggable td{border:none;background-color:#fff}:host.draggable-elem td{background-color:#c3c3c3}:host.fs-list-row-clickable{cursor:pointer}td.drag-col{width:1%!important;white-space:nowrap;text-align:center;cursor:grab}td.drag-col.drag-disabled{opacity:.4;cursor:no-drop}td.drag-col mat-icon{display:flex}td.fs-list-col-selection{padding:10px;width:1%!important}td.row-actions{width:1%;white-space:nowrap;overflow:hidden}td.row-actions .row-inline-action{margin-left:12px;display:inline-block}td.row-actions .row-inline-action:first-child{margin-left:0}td.row-actions .row-inline-action-icon,td.row-actions .row-inline-action-fab,td.row-actions .row-inline-action-mini-fab,td.row-actions .row-menu-action{width:35px;justify-content:center;align-items:center}td.left{text-align:left}td.center{text-align:center}td.right{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: FsRowActionsComponent, selector: "fs-list-row-actions", inputs: ["row", "index", "restoreMode", "rowActions", "rowRemoved", "menuRowActions", "inlineRowActions", "restoreAction"] }, { kind: "component", type: FsCellComponent, selector: "[fs-cell]", inputs: ["column", "row", "rowIndex"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2064
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsRowComponent, decorators: [{
|
|
2152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsRowComponent, decorators: [{
|
|
2065
2153
|
type: Component,
|
|
2066
2154
|
args: [{ selector: '[fs-list-row]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- Drag -->\n<ng-container *ngIf=\"leftDragDropEnabled\">\n <ng-container *ngTemplateOutlet=\"dragCell\"></ng-container>\n</ng-container>\n\n<!-- Selection -->\n<ng-container *ngIf=\"selection && !(selection.disabled$ | async)\">\n <td class=\"fs-list-col fs-list-col-selection\">\n <ng-container *ngIf=\"!row.isGroupFooter\">\n <mat-checkbox \n (change)=\"selectRow($event)\"\n [checked]=\"selected\"\n [indeterminate]=\"indeterminateSelected\">\n </mat-checkbox>\n </ng-container>\n </td>\n</ng-container>\n\n<!-- Content -->\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn; let isFirst = first\">\n <td fs-cell\n *ngIf=\"(isGroupRow && !column.groupHeaderColspanned)\n || (isGroupFooterRow && !column.groupFooterColspanned)\n || (!isGroupRow && !isGroupFooterRow && !column.cellColspanned)\"\n [column]=\"column\"\n [row]=\"row\"\n [rowIndex]=\"rowIndex\"\n [class]=\"(isGroupRow && column.groupHeaderConfigs.classesString)\n || (isGroupFooterRow && column.groupFooterConfigs.classesString)\n || (!isGroupFooterRow && column.cellConfigs.classesString)\"\n [ngClass]=\"{ 'primary-col': isFirst }\"\n [attr.colspan]=\"(isGroupRow && column.groupHeaderConfigs.colspan)\n || (isGroupFooterRow && column.groupFooterConfigs.colspan)\n || column.cellConfigs.colspan\"\n [attr.width]=\"column.width\"\n >\n </td>\n</ng-container>\n\n<!-- Drag -->\n<ng-container *ngIf=\"rightDragDropEnabled\">\n <ng-container *ngTemplateOutlet=\"dragCell\"></ng-container>\n</ng-container>\n\n<!-- Row Actions -->\n<td *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategy.Manual)\" class=\"fs-list-col row-actions\">\n <ng-container *ngIf=\"!isGroupFooterRow\">\n <fs-list-row-actions\n [row]=\"row\"\n [index]=\"rowIndex\"\n [rowActions]=\"rowActions\"\n [menuRowActions]=\"menuRowActions\"\n [inlineRowActions]=\"inlineRowActions\"\n [restoreAction]=\"restoreAction\"\n [restoreMode]=\"restoreMode\"\n [rowRemoved]=\"rowRemoved\">\n </fs-list-row-actions>\n </ng-container>\n</td>\n\n<ng-template #dragCell>\n <ng-container *ngIf=\"dragCellVisible && !isGroupFooterRow; else emptyCell\">\n <td \n class=\"fs-list-col drag-col\"\n [class.drag-disabled]=\"isDragDisabled\"\n (mousedown)=\"dragStart($event)\"\n (touchstart)=\"dragStart($event)\">\n <mat-icon>drag_handle</mat-icon>\n </td>\n </ng-container>\n <ng-template #emptyCell>\n <td class=\"fs-list-col drag-col\"></td>\n </ng-template>\n</ng-template>\n", styles: [":host.drag-hidden{display:none}:host.draggable{opacity:.8;position:fixed;z-index:9999;box-shadow:2px 2px 2px #9e9e9ea6;border-radius:5px}:host.draggable td{border:none;background-color:#fff}:host.draggable-elem td{background-color:#c3c3c3}:host.fs-list-row-clickable{cursor:pointer}td.drag-col{width:1%!important;white-space:nowrap;text-align:center;cursor:grab}td.drag-col.drag-disabled{opacity:.4;cursor:no-drop}td.drag-col mat-icon{display:flex}td.fs-list-col-selection{padding:10px;width:1%!important}td.row-actions{width:1%;white-space:nowrap;overflow:hidden}td.row-actions .row-inline-action{margin-left:12px;display:inline-block}td.row-actions .row-inline-action:first-child{margin-left:0}td.row-actions .row-inline-action-icon,td.row-actions .row-inline-action-fab,td.row-actions .row-inline-action-mini-fab,td.row-actions .row-menu-action{width:35px;justify-content:center;align-items:center}td.left{text-align:left}td.center{text-align:center}td.right{text-align:right}\n"] }]
|
|
2067
|
-
}], ctorParameters:
|
|
2155
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.KeyValueDiffers }, { type: i0.Renderer2 }, { type: FsListDraggableListDirective }], propDecorators: { role: [{
|
|
2068
2156
|
type: HostBinding,
|
|
2069
2157
|
args: ['attr.role']
|
|
2070
2158
|
}], row: [{
|
|
@@ -2114,12 +2202,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
2114
2202
|
}] } });
|
|
2115
2203
|
|
|
2116
2204
|
class FsListDraggableRowDirective {
|
|
2205
|
+
_el;
|
|
2206
|
+
_renderer;
|
|
2207
|
+
_reorderController;
|
|
2208
|
+
_draggableList;
|
|
2209
|
+
row;
|
|
2210
|
+
_destroy$ = new Subject();
|
|
2117
2211
|
constructor(_el, _renderer, _reorderController, _draggableList) {
|
|
2118
2212
|
this._el = _el;
|
|
2119
2213
|
this._renderer = _renderer;
|
|
2120
2214
|
this._reorderController = _reorderController;
|
|
2121
2215
|
this._draggableList = _draggableList;
|
|
2122
|
-
this._destroy$ = new Subject();
|
|
2123
2216
|
}
|
|
2124
2217
|
get elRef() {
|
|
2125
2218
|
return this._el;
|
|
@@ -2132,7 +2225,7 @@ class FsListDraggableRowDirective {
|
|
|
2132
2225
|
}
|
|
2133
2226
|
ngOnDestroy() {
|
|
2134
2227
|
this._draggableList.removeDraggableDirective(this);
|
|
2135
|
-
this._destroy$.next();
|
|
2228
|
+
this._destroy$.next(null);
|
|
2136
2229
|
this._destroy$.complete();
|
|
2137
2230
|
}
|
|
2138
2231
|
dragHide() {
|
|
@@ -2170,32 +2263,41 @@ class FsListDraggableRowDirective {
|
|
|
2170
2263
|
this._renderer.removeClass(this._el.nativeElement, 'fs-list-swap-restricted');
|
|
2171
2264
|
}
|
|
2172
2265
|
}
|
|
2266
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListDraggableRowDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ReorderController }, { token: FsListDraggableListDirective }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2267
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListDraggableRowDirective, selector: "[fsListDraggableRow]", inputs: { row: "row" }, ngImport: i0 });
|
|
2173
2268
|
}
|
|
2174
|
-
|
|
2175
|
-
FsListDraggableRowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListDraggableRowDirective, selector: "[fsListDraggableRow]", inputs: { row: "row" }, ngImport: i0 });
|
|
2176
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListDraggableRowDirective, decorators: [{
|
|
2269
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListDraggableRowDirective, decorators: [{
|
|
2177
2270
|
type: Directive,
|
|
2178
2271
|
args: [{
|
|
2179
2272
|
selector: '[fsListDraggableRow]',
|
|
2180
2273
|
}]
|
|
2181
|
-
}], ctorParameters:
|
|
2274
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ReorderController }, { type: FsListDraggableListDirective }], propDecorators: { row: [{
|
|
2182
2275
|
type: Input
|
|
2183
2276
|
}] } });
|
|
2184
2277
|
|
|
2185
2278
|
class FsBodyComponent {
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2194
|
-
|
|
2279
|
+
rows;
|
|
2280
|
+
columns = [];
|
|
2281
|
+
hasFooter = false;
|
|
2282
|
+
rowActionsRaw = [];
|
|
2283
|
+
groupActionsRaw = [];
|
|
2284
|
+
rowEvents = {};
|
|
2285
|
+
rowClass;
|
|
2286
|
+
hasRowActions = false;
|
|
2287
|
+
selection;
|
|
2288
|
+
restoreMode = false;
|
|
2289
|
+
rowRemoved;
|
|
2290
|
+
activeFiltersCount;
|
|
2291
|
+
reorderEnabled;
|
|
2292
|
+
reorderPosition;
|
|
2293
|
+
reorderStrategy;
|
|
2294
|
+
reorderMultiple;
|
|
2295
|
+
rowsContainer;
|
|
2296
|
+
headerTemplate;
|
|
2297
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2298
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsBodyComponent, selector: "[fs-list-body]", inputs: { rows: "rows", columns: "columns", hasFooter: "hasFooter", rowActionsRaw: "rowActionsRaw", groupActionsRaw: "groupActionsRaw", rowEvents: "rowEvents", rowClass: "rowClass", hasRowActions: "hasRowActions", selection: "selection", restoreMode: "restoreMode", rowRemoved: "rowRemoved", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy", reorderMultiple: "reorderMultiple" }, queries: [{ propertyName: "headerTemplate", first: true, predicate: FsRowComponent, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "rowsContainer", first: true, predicate: ["rowsContainer"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container *ngFor=\"let row of rows; let i = index;\">\n <tr\n fs-list-row\n fsListDraggableRow\n [row]=\"row\"\n [rowIndex]=\"i\"\n [columns]=\"columns\"\n [rowActionsRaw]=\"rowActionsRaw\"\n [groupActionsRaw]=\"groupActionsRaw\"\n [hasRowActions]=\"hasRowActions\"\n [rowEvents]=\"rowEvents\"\n [rowClass]=\"rowClass\"\n [selection]=\"selection\"\n [restoreMode]=\"restoreMode\"\n [rowRemoved]=\"rowRemoved\"\n [activeFiltersCount]=\"activeFiltersCount\"\n [reorderEnabled]=\"reorderEnabled\"\n [reorderPosition]=\"reorderPosition\"\n [reorderStrategy]=\"reorderStrategy\"\n [reorderMultiple]=\"reorderMultiple\">\n </tr>\n</ng-container>\n", styles: [":host.drag-hidden .drag-col{opacity:0!important;cursor:default}:host.disabled{opacity:.4;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: FsRowComponent, selector: "[fs-list-row]", inputs: ["row", "rowActionsRaw", "groupActionsRaw", "hasRowActions", "rowEvents", "rowClass", "restoreMode", "rowIndex", "columns", "selection", "rowRemoved", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy", "reorderMultiple"] }, { kind: "directive", type: FsListDraggableRowDirective, selector: "[fsListDraggableRow]", inputs: ["row"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2195
2299
|
}
|
|
2196
|
-
|
|
2197
|
-
FsBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsBodyComponent, selector: "[fs-list-body]", inputs: { rows: "rows", columns: "columns", hasFooter: "hasFooter", rowActionsRaw: "rowActionsRaw", groupActionsRaw: "groupActionsRaw", rowEvents: "rowEvents", rowClass: "rowClass", hasRowActions: "hasRowActions", selection: "selection", restoreMode: "restoreMode", rowRemoved: "rowRemoved", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy", reorderMultiple: "reorderMultiple" }, queries: [{ propertyName: "headerTemplate", first: true, predicate: FsRowComponent, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "rowsContainer", first: true, predicate: ["rowsContainer"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container *ngFor=\"let row of rows; let i = index;\">\n <tr\n fs-list-row\n fsListDraggableRow\n [row]=\"row\"\n [rowIndex]=\"i\"\n [columns]=\"columns\"\n [rowActionsRaw]=\"rowActionsRaw\"\n [groupActionsRaw]=\"groupActionsRaw\"\n [hasRowActions]=\"hasRowActions\"\n [rowEvents]=\"rowEvents\"\n [rowClass]=\"rowClass\"\n [selection]=\"selection\"\n [restoreMode]=\"restoreMode\"\n [rowRemoved]=\"rowRemoved\"\n [activeFiltersCount]=\"activeFiltersCount\"\n [reorderEnabled]=\"reorderEnabled\"\n [reorderPosition]=\"reorderPosition\"\n [reorderStrategy]=\"reorderStrategy\"\n [reorderMultiple]=\"reorderMultiple\">\n </tr>\n</ng-container>\n", styles: [":host.drag-hidden .drag-col{opacity:0!important;cursor:default}:host.disabled{opacity:.4;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: FsRowComponent, selector: "[fs-list-row]", inputs: ["row", "rowActionsRaw", "groupActionsRaw", "hasRowActions", "rowEvents", "rowClass", "restoreMode", "rowIndex", "columns", "selection", "rowRemoved", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy", "reorderMultiple"] }, { kind: "directive", type: FsListDraggableRowDirective, selector: "[fsListDraggableRow]", inputs: ["row"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2198
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsBodyComponent, decorators: [{
|
|
2300
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsBodyComponent, decorators: [{
|
|
2199
2301
|
type: Component,
|
|
2200
2302
|
args: [{ selector: '[fs-list-body]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let row of rows; let i = index;\">\n <tr\n fs-list-row\n fsListDraggableRow\n [row]=\"row\"\n [rowIndex]=\"i\"\n [columns]=\"columns\"\n [rowActionsRaw]=\"rowActionsRaw\"\n [groupActionsRaw]=\"groupActionsRaw\"\n [hasRowActions]=\"hasRowActions\"\n [rowEvents]=\"rowEvents\"\n [rowClass]=\"rowClass\"\n [selection]=\"selection\"\n [restoreMode]=\"restoreMode\"\n [rowRemoved]=\"rowRemoved\"\n [activeFiltersCount]=\"activeFiltersCount\"\n [reorderEnabled]=\"reorderEnabled\"\n [reorderPosition]=\"reorderPosition\"\n [reorderStrategy]=\"reorderStrategy\"\n [reorderMultiple]=\"reorderMultiple\">\n </tr>\n</ng-container>\n", styles: [":host.drag-hidden .drag-col{opacity:0!important;cursor:default}:host.disabled{opacity:.4;pointer-events:none}\n"] }]
|
|
2201
2303
|
}], propDecorators: { rows: [{
|
|
@@ -2239,16 +2341,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
2239
2341
|
}] } });
|
|
2240
2342
|
|
|
2241
2343
|
class CustomizeColsDialogComponent {
|
|
2344
|
+
_dialog;
|
|
2345
|
+
columns = [];
|
|
2346
|
+
saveDisabled = false;
|
|
2347
|
+
_changeFn;
|
|
2348
|
+
_destroy$ = new Subject();
|
|
2242
2349
|
constructor(data, _dialog) {
|
|
2243
2350
|
this._dialog = _dialog;
|
|
2244
|
-
this.columns = [];
|
|
2245
|
-
this.saveDisabled = false;
|
|
2246
|
-
this._destroy$ = new Subject();
|
|
2247
2351
|
this.columns = data.columns;
|
|
2248
2352
|
this._changeFn = data.changeFn;
|
|
2249
2353
|
}
|
|
2250
2354
|
ngOnDestroy() {
|
|
2251
|
-
this._destroy$.next();
|
|
2355
|
+
this._destroy$.next(null);
|
|
2252
2356
|
this._destroy$.complete();
|
|
2253
2357
|
}
|
|
2254
2358
|
visibilityChange(event, column) {
|
|
@@ -2284,59 +2388,53 @@ class CustomizeColsDialogComponent {
|
|
|
2284
2388
|
cancel() {
|
|
2285
2389
|
this._dialog.close();
|
|
2286
2390
|
}
|
|
2391
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomizeColsDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$2.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2392
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CustomizeColsDialogComponent, selector: "ng-component", ngImport: i0, template: "<h1 matDialogTitle>Customize Columns</h1>\r\n<mat-dialog-content>\r\n <div *ngFor=\"let column of columns\">\r\n <mat-checkbox [checked]=\"column.show\" (change)=\"visibilityChange($event, column)\" [disabled]=\"column.disabled\">\r\n <ng-container *ngIf=\"!column.title; else titleLable\">\r\n <ng-template [ngTemplateOutlet]=\"column.template\"></ng-template>\r\n </ng-container>\r\n <ng-template #titleLable>\r\n {{ column.title }}\r\n </ng-template>\r\n\r\n <ng-container *ngIf=\"column.tooltip\">\r\n <mat-icon [matTooltip]=\"column.tooltip\">\r\n help\r\n </mat-icon>\r\n </ng-container>\r\n </mat-checkbox>\r\n </div>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button type=\"button\" mat-button color=\"primary\" (click)=\"save()\" [disabled]=\"saveDisabled\">Save</button>\r\n <button type=\"button\" mat-button (click)=\"cancel()\">Cancel</button>\r\n</mat-dialog-actions>\r\n", styles: [".mat-checkbox{min-height:32px;display:block}.mat-icon{font-size:14px;height:14px;width:14px;vertical-align:middle}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i6$1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2287
2393
|
}
|
|
2288
|
-
|
|
2289
|
-
CustomizeColsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomizeColsDialogComponent, selector: "ng-component", ngImport: i0, template: "<h1 matDialogTitle>Customize Columns</h1>\n<mat-dialog-content>\n <div *ngFor=\"let column of columns\">\n <mat-checkbox [checked]=\"column.show\" (change)=\"visibilityChange($event, column)\" [disabled]=\"column.disabled\">\n <ng-container *ngIf=\"!column.title; else titleLable\">\n <ng-template [ngTemplateOutlet]=\"column.template\"></ng-template>\n </ng-container>\n <ng-template #titleLable>\n {{ column.title }}\n </ng-template>\n\n <ng-container *ngIf=\"column.tooltip\">\n <mat-icon [matTooltip]=\"column.tooltip\">\n help\n </mat-icon>\n </ng-container>\n </mat-checkbox>\n </div>\n</mat-dialog-content>\n<mat-dialog-actions>\n <button type=\"button\" mat-button color=\"primary\" (click)=\"save()\" [disabled]=\"saveDisabled\">Save</button>\n <button type=\"button\" mat-button (click)=\"cancel()\">Cancel</button>\n</mat-dialog-actions>\n", styles: [".mat-checkbox{min-height:32px;display:block}.mat-icon{font-size:14px;height:14px;width:14px;vertical-align:middle}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i6$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2290
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomizeColsDialogComponent, decorators: [{
|
|
2394
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CustomizeColsDialogComponent, decorators: [{
|
|
2291
2395
|
type: Component,
|
|
2292
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<h1 matDialogTitle>Customize Columns</h1>\n<mat-dialog-content>\n <div *ngFor=\"let column of columns\">\n <mat-checkbox [checked]=\"column.show\" (change)=\"visibilityChange($event, column)\" [disabled]=\"column.disabled\">\n <ng-container *ngIf=\"!column.title; else titleLable\">\n <ng-template [ngTemplateOutlet]=\"column.template\"></ng-template>\n </ng-container>\n <ng-template #titleLable>\n {{ column.title }}\n </ng-template>\n\n <ng-container *ngIf=\"column.tooltip\">\n <mat-icon [matTooltip]=\"column.tooltip\">\n help\n </mat-icon>\n </ng-container>\n </mat-checkbox>\n </div>\n</mat-dialog-content>\n<mat-dialog-actions>\n <button type=\"button\" mat-button color=\"primary\" (click)=\"save()\" [disabled]=\"saveDisabled\">Save</button>\n <button type=\"button\" mat-button (click)=\"cancel()\">Cancel</button>\n</mat-dialog-actions>\n", styles: [".mat-checkbox{min-height:32px;display:block}.mat-icon{font-size:14px;height:14px;width:14px;vertical-align:middle}\n"] }]
|
|
2293
|
-
}], ctorParameters:
|
|
2396
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<h1 matDialogTitle>Customize Columns</h1>\r\n<mat-dialog-content>\r\n <div *ngFor=\"let column of columns\">\r\n <mat-checkbox [checked]=\"column.show\" (change)=\"visibilityChange($event, column)\" [disabled]=\"column.disabled\">\r\n <ng-container *ngIf=\"!column.title; else titleLable\">\r\n <ng-template [ngTemplateOutlet]=\"column.template\"></ng-template>\r\n </ng-container>\r\n <ng-template #titleLable>\r\n {{ column.title }}\r\n </ng-template>\r\n\r\n <ng-container *ngIf=\"column.tooltip\">\r\n <mat-icon [matTooltip]=\"column.tooltip\">\r\n help\r\n </mat-icon>\r\n </ng-container>\r\n </mat-checkbox>\r\n </div>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button type=\"button\" mat-button color=\"primary\" (click)=\"save()\" [disabled]=\"saveDisabled\">Save</button>\r\n <button type=\"button\" mat-button (click)=\"cancel()\">Cancel</button>\r\n</mat-dialog-actions>\r\n", styles: [".mat-checkbox{min-height:32px;display:block}.mat-icon{font-size:14px;height:14px;width:14px;vertical-align:middle}\n"] }]
|
|
2397
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
2294
2398
|
type: Inject,
|
|
2295
2399
|
args: [MAT_DIALOG_DATA]
|
|
2296
|
-
}] }, { type: i1$2.MatDialogRef }]
|
|
2400
|
+
}] }, { type: i1$2.MatDialogRef }] });
|
|
2297
2401
|
|
|
2298
2402
|
class FsFooterCellComponent extends FsCellComponent {
|
|
2299
2403
|
constructor() {
|
|
2300
2404
|
super();
|
|
2301
2405
|
}
|
|
2406
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsFooterCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2407
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsFooterCellComponent, selector: "[fs-list-footer-cell]", usesInheritance: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"column.footerTemplate || cell\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\r\n\r\n<ng-template #cell let-value=\"value\">\r\n {{value}}\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2302
2408
|
}
|
|
2303
|
-
|
|
2304
|
-
FsFooterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsFooterCellComponent, selector: "[fs-list-footer-cell]", usesInheritance: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"column.footerTemplate || cell\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\n\n<ng-template #cell let-value=\"value\">\n {{value}}\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2305
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsFooterCellComponent, decorators: [{
|
|
2409
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsFooterCellComponent, decorators: [{
|
|
2306
2410
|
type: Component,
|
|
2307
|
-
args: [{ selector: '[fs-list-footer-cell]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngTemplateOutlet]=\"column.footerTemplate || cell\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\n\n<ng-template #cell let-value=\"value\">\n {{value}}\n</ng-template>\n" }]
|
|
2308
|
-
}], ctorParameters:
|
|
2411
|
+
args: [{ selector: '[fs-list-footer-cell]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngTemplateOutlet]=\"column.footerTemplate || cell\" [ngTemplateOutletContext]=\"cellContext\"></ng-template>\r\n\r\n<ng-template #cell let-value=\"value\">\r\n {{value}}\r\n</ng-template>\r\n" }]
|
|
2412
|
+
}], ctorParameters: () => [] });
|
|
2309
2413
|
|
|
2310
2414
|
class FsFooterRowComponent extends FsRowComponent {
|
|
2311
2415
|
constructor(el, cdRef, differs, renderer) {
|
|
2312
2416
|
super(el, cdRef, differs, renderer, null);
|
|
2313
2417
|
}
|
|
2418
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsFooterRowComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
2419
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsFooterRowComponent, selector: "[fs-list-footer-row]", usesInheritance: true, ngImport: i0, template: "<td *ngIf=\"leftDragDropEnabled\" class=\"fs-list-col drag-col\"></td>\n\n<td *ngIf=\"selection\" class=\"fs-list-col fs-list-col-selection\"></td>\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn\">\n <td \n *ngIf=\"!column.footerColspanned\"\n fs-list-footer-cell\n [column]=\"column\"\n [row]=\"row\"\n [rowIndex]=\"rowIndex\"\n [ngClass]=\"column.footerConfigs.classesArray\"\n [attr.colspan]=\"column.footerConfigs.colspan\"\n [attr.width]=\"column.width\">\n </td>\n</ng-container>\n\n<!-- Drag -->\n<td *ngIf=\"rightDragDropEnabled\" class=\"fs-list-col row-actions\"></td>\n\n<!-- Row Actions -->\n<td *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategy.Manual)\" class=\"fs-list-col drag-col\"></td>\n", styles: ["td.left{text-align:left}td.center{text-align:center}td.right{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FsFooterCellComponent, selector: "[fs-list-footer-cell]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2314
2420
|
}
|
|
2315
|
-
|
|
2316
|
-
FsFooterRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsFooterRowComponent, selector: "[fs-list-footer-row]", inputs: { hasRowActions: "hasRowActions", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy" }, usesInheritance: true, ngImport: i0, template: "<td *ngIf=\"leftDragDropEnabled\" class=\"fs-list-col drag-col\"></td>\n\n<td *ngIf=\"selection\" class=\"fs-list-col fs-list-col-selection\"></td>\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn\">\n <td \n *ngIf=\"!column.footerColspanned\"\n fs-list-footer-cell\n [column]=\"column\"\n [row]=\"row\"\n [rowIndex]=\"rowIndex\"\n [ngClass]=\"column.footerConfigs.classesArray\"\n [attr.colspan]=\"column.footerConfigs.colspan\"\n [attr.width]=\"column.width\">\n </td>\n</ng-container>\n\n<!-- Drag -->\n<td *ngIf=\"rightDragDropEnabled\" class=\"fs-list-col row-actions\"></td>\n\n<!-- Row Actions -->\n<td *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategy.Manual)\" class=\"fs-list-col drag-col\"></td>\n", styles: ["td.left{text-align:left}td.center{text-align:center}td.right{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FsFooterCellComponent, selector: "[fs-list-footer-cell]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2317
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsFooterRowComponent, decorators: [{
|
|
2421
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsFooterRowComponent, decorators: [{
|
|
2318
2422
|
type: Component,
|
|
2319
2423
|
args: [{ selector: '[fs-list-footer-row]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<td *ngIf=\"leftDragDropEnabled\" class=\"fs-list-col drag-col\"></td>\n\n<td *ngIf=\"selection\" class=\"fs-list-col fs-list-col-selection\"></td>\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn\">\n <td \n *ngIf=\"!column.footerColspanned\"\n fs-list-footer-cell\n [column]=\"column\"\n [row]=\"row\"\n [rowIndex]=\"rowIndex\"\n [ngClass]=\"column.footerConfigs.classesArray\"\n [attr.colspan]=\"column.footerConfigs.colspan\"\n [attr.width]=\"column.width\">\n </td>\n</ng-container>\n\n<!-- Drag -->\n<td *ngIf=\"rightDragDropEnabled\" class=\"fs-list-col row-actions\"></td>\n\n<!-- Row Actions -->\n<td *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategy.Manual)\" class=\"fs-list-col drag-col\"></td>\n", styles: ["td.left{text-align:left}td.center{text-align:center}td.right{text-align:right}\n"] }]
|
|
2320
|
-
}], ctorParameters:
|
|
2321
|
-
type: Input
|
|
2322
|
-
}], activeFiltersCount: [{
|
|
2323
|
-
type: Input
|
|
2324
|
-
}], reorderEnabled: [{
|
|
2325
|
-
type: Input
|
|
2326
|
-
}], reorderPosition: [{
|
|
2327
|
-
type: Input
|
|
2328
|
-
}], reorderStrategy: [{
|
|
2329
|
-
type: Input
|
|
2330
|
-
}] } });
|
|
2424
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.KeyValueDiffers }, { type: i0.Renderer2 }] });
|
|
2331
2425
|
|
|
2332
2426
|
class FsFooterComponent {
|
|
2333
|
-
|
|
2334
|
-
|
|
2335
|
-
|
|
2427
|
+
hasRowActions;
|
|
2428
|
+
columns = [];
|
|
2429
|
+
selection;
|
|
2430
|
+
activeFiltersCount;
|
|
2431
|
+
reorderEnabled;
|
|
2432
|
+
reorderPosition;
|
|
2433
|
+
reorderStrategy;
|
|
2434
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2435
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsFooterComponent, selector: "[fs-list-footer]", inputs: { hasRowActions: "hasRowActions", columns: "columns", selection: "selection", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy" }, ngImport: i0, template: "<tr \n fs-list-footer-row\n [columns]=\"columns\"\n [hasRowActions]=\"hasRowActions\"\n [selection]=\"selection\"\n [activeFiltersCount]=\"activeFiltersCount\"\n [reorderEnabled]=\"reorderEnabled\"\n [reorderPosition]=\"reorderPosition\"\n [reorderStrategy]=\"reorderStrategy\">\n</tr>\n", styles: [""], dependencies: [{ kind: "component", type: FsFooterRowComponent, selector: "[fs-list-footer-row]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2336
2436
|
}
|
|
2337
|
-
|
|
2338
|
-
FsFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsFooterComponent, selector: "[fs-list-footer]", inputs: { hasRowActions: "hasRowActions", columns: "columns", selection: "selection", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy" }, ngImport: i0, template: "<tr \n fs-list-footer-row\n [columns]=\"columns\"\n [hasRowActions]=\"hasRowActions\"\n [selection]=\"selection\"\n [activeFiltersCount]=\"activeFiltersCount\"\n [reorderEnabled]=\"reorderEnabled\"\n [reorderPosition]=\"reorderPosition\"\n [reorderStrategy]=\"reorderStrategy\">\n</tr>\n", styles: [""], dependencies: [{ kind: "component", type: FsFooterRowComponent, selector: "[fs-list-footer-row]", inputs: ["hasRowActions", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2339
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsFooterComponent, decorators: [{
|
|
2437
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsFooterComponent, decorators: [{
|
|
2340
2438
|
type: Component,
|
|
2341
2439
|
args: [{ selector: '[fs-list-footer]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<tr \n fs-list-footer-row\n [columns]=\"columns\"\n [hasRowActions]=\"hasRowActions\"\n [selection]=\"selection\"\n [activeFiltersCount]=\"activeFiltersCount\"\n [reorderEnabled]=\"reorderEnabled\"\n [reorderPosition]=\"reorderPosition\"\n [reorderStrategy]=\"reorderStrategy\">\n</tr>\n" }]
|
|
2342
2440
|
}], propDecorators: { hasRowActions: [{
|
|
@@ -2356,11 +2454,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
2356
2454
|
}] } });
|
|
2357
2455
|
|
|
2358
2456
|
class FsHeadCellComponent extends FsCellComponent {
|
|
2457
|
+
_cdRef;
|
|
2458
|
+
_differs;
|
|
2459
|
+
cellContext = {};
|
|
2460
|
+
_columnDiffer;
|
|
2359
2461
|
constructor(_cdRef, _differs) {
|
|
2360
2462
|
super();
|
|
2361
2463
|
this._cdRef = _cdRef;
|
|
2362
2464
|
this._differs = _differs;
|
|
2363
|
-
this.cellContext = {};
|
|
2364
2465
|
this._columnDiffer = this._differs.find({}).create();
|
|
2365
2466
|
}
|
|
2366
2467
|
ngDoCheck() {
|
|
@@ -2371,13 +2472,13 @@ class FsHeadCellComponent extends FsCellComponent {
|
|
|
2371
2472
|
initCellContext() {
|
|
2372
2473
|
this.cellContext.value = this.column.title;
|
|
2373
2474
|
}
|
|
2475
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsHeadCellComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.KeyValueDiffers }], target: i0.ɵɵFactoryTarget.Component });
|
|
2476
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsHeadCellComponent, selector: "[fs-head-cell]", usesInheritance: true, ngImport: i0, template: "<div class=\"wrap\">\n <span class=\"title\">\n <ng-template [ngIf]=\"!column.headerTemplate\">{{column.title}}</ng-template>\n <ng-template\n [ngIf]=\"column.headerTemplate\"\n [ngTemplateOutlet]=\"column.headerTemplate\"\n [ngTemplateOutletContext]=\"cellContext\">\n </ng-template>\n </span>\n <div class=\"direction\" *ngIf=\"column.ordered\" [ngSwitch]=\"column.sortingDirection$ | async\">\n <mat-icon class=\"material-icons\" role=\"img\" aria-label=\"arrow_downward\" *ngSwitchCase=\"'asc'\">arrow_downward</mat-icon>\n <mat-icon class=\"material-icons\" role=\"img\" aria-label=\"arrow_upward\" *ngSwitchCase=\"'desc'\">arrow_upward</mat-icon>\n </div>\n</div>\n", styles: [".wrap{display:inline-flex;align-items:center}.wrap mat-icon{font-size:14px;display:block;height:14px;width:14px}.wrap .direction{margin-left:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2374
2477
|
}
|
|
2375
|
-
|
|
2376
|
-
FsHeadCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsHeadCellComponent, selector: "[fs-head-cell]", usesInheritance: true, ngImport: i0, template: "<div class=\"wrap\">\n <span class=\"title\">\n <ng-template [ngIf]=\"!column.headerTemplate\">{{column.title}}</ng-template>\n <ng-template\n [ngIf]=\"column.headerTemplate\"\n [ngTemplateOutlet]=\"column.headerTemplate\"\n [ngTemplateOutletContext]=\"cellContext\">\n </ng-template>\n </span>\n <div class=\"direction\" *ngIf=\"column.ordered\" [ngSwitch]=\"column.sortingDirection$ | async\">\n <mat-icon class=\"material-icons\" role=\"img\" aria-label=\"arrow_downward\" *ngSwitchCase=\"'asc'\">arrow_downward</mat-icon>\n <mat-icon class=\"material-icons\" role=\"img\" aria-label=\"arrow_upward\" *ngSwitchCase=\"'desc'\">arrow_upward</mat-icon>\n </div>\n</div>\n", styles: [".wrap{display:inline-flex;align-items:center}.wrap mat-icon{font-size:14px;display:block;height:14px;width:14px}.wrap .direction{margin-left:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2377
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsHeadCellComponent, decorators: [{
|
|
2478
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsHeadCellComponent, decorators: [{
|
|
2378
2479
|
type: Component,
|
|
2379
2480
|
args: [{ selector: '[fs-head-cell]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"wrap\">\n <span class=\"title\">\n <ng-template [ngIf]=\"!column.headerTemplate\">{{column.title}}</ng-template>\n <ng-template\n [ngIf]=\"column.headerTemplate\"\n [ngTemplateOutlet]=\"column.headerTemplate\"\n [ngTemplateOutletContext]=\"cellContext\">\n </ng-template>\n </span>\n <div class=\"direction\" *ngIf=\"column.ordered\" [ngSwitch]=\"column.sortingDirection$ | async\">\n <mat-icon class=\"material-icons\" role=\"img\" aria-label=\"arrow_downward\" *ngSwitchCase=\"'asc'\">arrow_downward</mat-icon>\n <mat-icon class=\"material-icons\" role=\"img\" aria-label=\"arrow_upward\" *ngSwitchCase=\"'desc'\">arrow_upward</mat-icon>\n </div>\n</div>\n", styles: [".wrap{display:inline-flex;align-items:center}.wrap mat-icon{font-size:14px;display:block;height:14px;width:14px}.wrap .direction{margin-left:5px}\n"] }]
|
|
2380
|
-
}], ctorParameters:
|
|
2481
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.KeyValueDiffers }] });
|
|
2381
2482
|
|
|
2382
2483
|
class ColumnAsyncAttribute extends BehaviorSubject {
|
|
2383
2484
|
constructor(value) {
|
|
@@ -2393,10 +2494,17 @@ class ColumnAsyncAttribute extends BehaviorSubject {
|
|
|
2393
2494
|
}
|
|
2394
2495
|
|
|
2395
2496
|
class ColumnAttributes {
|
|
2497
|
+
_title;
|
|
2498
|
+
_name;
|
|
2499
|
+
_customize = true;
|
|
2500
|
+
_sortable;
|
|
2501
|
+
_sortableDefault;
|
|
2502
|
+
_direction$ = new ColumnAsyncAttribute(null);
|
|
2503
|
+
_align;
|
|
2504
|
+
_width;
|
|
2505
|
+
_className;
|
|
2506
|
+
_visible$ = new ColumnAsyncAttribute(true);
|
|
2396
2507
|
constructor(attrs = {}) {
|
|
2397
|
-
this._customize = true;
|
|
2398
|
-
this._direction$ = new ColumnAsyncAttribute(null);
|
|
2399
|
-
this._visible$ = new ColumnAsyncAttribute(true);
|
|
2400
2508
|
this._init(attrs);
|
|
2401
2509
|
}
|
|
2402
2510
|
// title
|
|
@@ -2524,13 +2632,14 @@ class ColumnAttributes {
|
|
|
2524
2632
|
}
|
|
2525
2633
|
|
|
2526
2634
|
class SortingController {
|
|
2527
|
-
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2635
|
+
config;
|
|
2636
|
+
sortingColumns = [];
|
|
2637
|
+
fakeSortingColumns = [];
|
|
2638
|
+
sortingColumn;
|
|
2639
|
+
_initialized = new BehaviorSubject(false);
|
|
2640
|
+
_sortingChanged$ = new Subject();
|
|
2641
|
+
_onDestroy = new Subject();
|
|
2642
|
+
constructor() { }
|
|
2534
2643
|
get sortingChanged$() {
|
|
2535
2644
|
return this._sortingChanged$.pipe(takeUntil(this._onDestroy));
|
|
2536
2645
|
}
|
|
@@ -2684,7 +2793,7 @@ class SortingController {
|
|
|
2684
2793
|
* Destroy
|
|
2685
2794
|
*/
|
|
2686
2795
|
destroy() {
|
|
2687
|
-
this._onDestroy.next();
|
|
2796
|
+
this._onDestroy.next(null);
|
|
2688
2797
|
this._onDestroy.complete();
|
|
2689
2798
|
}
|
|
2690
2799
|
_setSortingColumn(column) {
|
|
@@ -2726,11 +2835,21 @@ class SortingController {
|
|
|
2726
2835
|
}
|
|
2727
2836
|
|
|
2728
2837
|
class FsHeadComponent {
|
|
2838
|
+
_cdRef;
|
|
2839
|
+
sorting;
|
|
2840
|
+
columns;
|
|
2841
|
+
hasRowActions;
|
|
2842
|
+
selection;
|
|
2843
|
+
activeFiltersCount;
|
|
2844
|
+
reorderEnabled;
|
|
2845
|
+
reorderPosition;
|
|
2846
|
+
reorderStrategy;
|
|
2847
|
+
rowsContainer;
|
|
2848
|
+
selectedAll = false;
|
|
2849
|
+
ReorderStrategyEnum = ReorderStrategy;
|
|
2850
|
+
_destroy$ = new Subject();
|
|
2729
2851
|
constructor(_cdRef) {
|
|
2730
2852
|
this._cdRef = _cdRef;
|
|
2731
|
-
this.selectedAll = false;
|
|
2732
|
-
this.ReorderStrategyEnum = ReorderStrategy;
|
|
2733
|
-
this._destroy$ = new Subject();
|
|
2734
2853
|
}
|
|
2735
2854
|
get leftDragDropEnabled() {
|
|
2736
2855
|
return this.reorderEnabled
|
|
@@ -2747,7 +2866,7 @@ class FsHeadComponent {
|
|
|
2747
2866
|
this._initSelection();
|
|
2748
2867
|
}
|
|
2749
2868
|
ngOnDestroy() {
|
|
2750
|
-
this._destroy$.next();
|
|
2869
|
+
this._destroy$.next(null);
|
|
2751
2870
|
this._destroy$.complete();
|
|
2752
2871
|
}
|
|
2753
2872
|
/**
|
|
@@ -2791,13 +2910,13 @@ class FsHeadComponent {
|
|
|
2791
2910
|
});
|
|
2792
2911
|
}
|
|
2793
2912
|
}
|
|
2913
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsHeadComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2914
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsHeadComponent, selector: "[fs-list-head]", inputs: { sorting: "sorting", columns: "columns", hasRowActions: "hasRowActions", selection: "selection", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy" }, viewQueries: [{ propertyName: "rowsContainer", first: true, predicate: ["rowsContainer"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<tr class=\"fs-list-row\">\n <!-- Drag -->\n <th *ngIf=\"leftDragDropEnabled\"\n class=\"fs-list-col drag-col\">\n </th>\n\n <!-- Selection -->\n <th *ngIf=\"selection && !(selection.disabled$ | async)\" class=\"fs-list-col fs-list-col-selection\">\n <mat-checkbox (change)=\"selectAll($event)\" [checked]=\"selectedAll\"></mat-checkbox>\n </th>\n\n <!-- Content -->\n <th \n fs-head-cell *ngFor=\"let column of columns; trackBy: trackByFn\"\n (click)=\"$event.stopPropagation(); sorting.sortBy(column)\"\n [column]=\"column\"\n [class.sorting]=\"column.sortable\"\n [ngClass]=\"column.headerConfigs.classesArray\"\n [attr.colspan]=\"column.headerConfigs.colspan\"\n [attr.width]=\"column.width\">\n </th>\n\n <!-- Drag -->\n <th *ngIf=\"rightDragDropEnabled\"\n class=\"fs-list-col drag-col\">\n </th>\n\n <!-- Row Actions -->\n <th *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategyEnum.Manual)\" class=\"fs-list-col row-actions\"></th>\n</tr>\n", styles: ["th.fs-list-col-selection{width:1%!important;text-align:left}th.sorting{cursor:pointer}th.sorting:hover{background-color:#f6f6f6}th.sorting{background-image:none}th.left{text-align:left}th.center{text-align:center}th.right{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: FsHeadCellComponent, selector: "[fs-head-cell]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2794
2915
|
}
|
|
2795
|
-
|
|
2796
|
-
FsHeadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsHeadComponent, selector: "[fs-list-head]", inputs: { sorting: "sorting", columns: "columns", hasRowActions: "hasRowActions", selection: "selection", activeFiltersCount: "activeFiltersCount", reorderEnabled: "reorderEnabled", reorderPosition: "reorderPosition", reorderStrategy: "reorderStrategy" }, viewQueries: [{ propertyName: "rowsContainer", first: true, predicate: ["rowsContainer"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<tr class=\"fs-list-row\">\n <!-- Drag -->\n <th *ngIf=\"leftDragDropEnabled\"\n class=\"fs-list-col drag-col\">\n </th>\n\n <!-- Selection -->\n <th *ngIf=\"selection && !(selection.disabled$ | async)\" class=\"fs-list-col fs-list-col-selection\">\n <mat-checkbox (change)=\"selectAll($event)\" [checked]=\"selectedAll\"></mat-checkbox>\n </th>\n\n <!-- Content -->\n <th \n fs-head-cell *ngFor=\"let column of columns; trackBy: trackByFn\"\n (click)=\"$event.stopPropagation(); sorting.sortBy(column)\"\n [column]=\"column\"\n [class.sorting]=\"column.sortable\"\n [ngClass]=\"column.headerConfigs.classesArray\"\n [attr.colspan]=\"column.headerConfigs.colspan\"\n [attr.width]=\"column.width\">\n </th>\n\n <!-- Drag -->\n <th *ngIf=\"rightDragDropEnabled\"\n class=\"fs-list-col drag-col\">\n </th>\n\n <!-- Row Actions -->\n <th *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategyEnum.Manual)\" class=\"fs-list-col row-actions\"></th>\n</tr>\n", styles: ["th.fs-list-col-selection{width:1%!important;text-align:left}th.sorting{cursor:pointer}th.sorting:hover{background-color:#f6f6f6}th.sorting{background-image:none}th.left{text-align:left}th.center{text-align:center}th.right{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: FsHeadCellComponent, selector: "[fs-head-cell]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2797
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsHeadComponent, decorators: [{
|
|
2916
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsHeadComponent, decorators: [{
|
|
2798
2917
|
type: Component,
|
|
2799
2918
|
args: [{ selector: '[fs-list-head]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<tr class=\"fs-list-row\">\n <!-- Drag -->\n <th *ngIf=\"leftDragDropEnabled\"\n class=\"fs-list-col drag-col\">\n </th>\n\n <!-- Selection -->\n <th *ngIf=\"selection && !(selection.disabled$ | async)\" class=\"fs-list-col fs-list-col-selection\">\n <mat-checkbox (change)=\"selectAll($event)\" [checked]=\"selectedAll\"></mat-checkbox>\n </th>\n\n <!-- Content -->\n <th \n fs-head-cell *ngFor=\"let column of columns; trackBy: trackByFn\"\n (click)=\"$event.stopPropagation(); sorting.sortBy(column)\"\n [column]=\"column\"\n [class.sorting]=\"column.sortable\"\n [ngClass]=\"column.headerConfigs.classesArray\"\n [attr.colspan]=\"column.headerConfigs.colspan\"\n [attr.width]=\"column.width\">\n </th>\n\n <!-- Drag -->\n <th *ngIf=\"rightDragDropEnabled\"\n class=\"fs-list-col drag-col\">\n </th>\n\n <!-- Row Actions -->\n <th *ngIf=\"hasRowActions && !(reorderEnabled && reorderStrategy === ReorderStrategyEnum.Manual)\" class=\"fs-list-col row-actions\"></th>\n</tr>\n", styles: ["th.fs-list-col-selection{width:1%!important;text-align:left}th.sorting{cursor:pointer}th.sorting:hover{background-color:#f6f6f6}th.sorting{background-image:none}th.left{text-align:left}th.center{text-align:center}th.right{text-align:right}\n"] }]
|
|
2800
|
-
}], ctorParameters:
|
|
2919
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { sorting: [{
|
|
2801
2920
|
type: Input
|
|
2802
2921
|
}], columns: [{
|
|
2803
2922
|
type: Input
|
|
@@ -2836,20 +2955,25 @@ var FsListState;
|
|
|
2836
2955
|
})(FsListState || (FsListState = {}));
|
|
2837
2956
|
|
|
2838
2957
|
class ColumnsController {
|
|
2839
|
-
|
|
2840
|
-
|
|
2841
|
-
|
|
2842
|
-
|
|
2843
|
-
|
|
2844
|
-
|
|
2845
|
-
|
|
2846
|
-
|
|
2847
|
-
|
|
2848
|
-
|
|
2849
|
-
|
|
2850
|
-
|
|
2851
|
-
|
|
2852
|
-
|
|
2958
|
+
_visibleColumns$ = new BehaviorSubject([]);
|
|
2959
|
+
_visibleColumnsShared$ = this._visibleColumns$.pipe();
|
|
2960
|
+
_theadClass = '';
|
|
2961
|
+
_loadFn;
|
|
2962
|
+
_changeFn;
|
|
2963
|
+
_customizeFieldTitleFn;
|
|
2964
|
+
_customizeFieldDisabledFn;
|
|
2965
|
+
_columnTooltipFn;
|
|
2966
|
+
_isConfigured = false;
|
|
2967
|
+
_loadFnConfigured = false;
|
|
2968
|
+
_changeFnConfigured = false;
|
|
2969
|
+
_columnsFetched = false;
|
|
2970
|
+
_hasHeader = false;
|
|
2971
|
+
_hasFooter = false;
|
|
2972
|
+
_columns = [];
|
|
2973
|
+
_defaultConfigs;
|
|
2974
|
+
_columnsUpdated$ = new Subject();
|
|
2975
|
+
_destroy$ = new Subject();
|
|
2976
|
+
constructor() { }
|
|
2853
2977
|
get columns() {
|
|
2854
2978
|
return this._columns.slice();
|
|
2855
2979
|
}
|
|
@@ -2999,7 +3123,7 @@ class ColumnsController {
|
|
|
2999
3123
|
this.updateVisibleColumns();
|
|
3000
3124
|
}
|
|
3001
3125
|
destroy() {
|
|
3002
|
-
this._destroy$.next();
|
|
3126
|
+
this._destroy$.next(null);
|
|
3003
3127
|
this._destroy$.complete();
|
|
3004
3128
|
this._columnsUpdated$.complete();
|
|
3005
3129
|
this._columns = void 0;
|
|
@@ -3009,7 +3133,7 @@ class ColumnsController {
|
|
|
3009
3133
|
this._changeFn = void 0;
|
|
3010
3134
|
}
|
|
3011
3135
|
_listenColumnVisibilityUpdates() {
|
|
3012
|
-
this._columnsUpdated$.next();
|
|
3136
|
+
this._columnsUpdated$.next(null);
|
|
3013
3137
|
const columnsVisibility = this._columns.map((column) => {
|
|
3014
3138
|
return column.visible$.pipe(skip(1));
|
|
3015
3139
|
});
|
|
@@ -3038,17 +3162,20 @@ class ColumnsController {
|
|
|
3038
3162
|
}
|
|
3039
3163
|
|
|
3040
3164
|
class DataController {
|
|
3041
|
-
|
|
3042
|
-
|
|
3043
|
-
|
|
3044
|
-
|
|
3045
|
-
|
|
3046
|
-
|
|
3047
|
-
|
|
3048
|
-
|
|
3049
|
-
|
|
3050
|
-
|
|
3051
|
-
|
|
3165
|
+
_visibleRows$ = new BehaviorSubject([]);
|
|
3166
|
+
_rowsRemoved$ = new Subject();
|
|
3167
|
+
_remoteRowsChange$ = new Subject();
|
|
3168
|
+
_store = new Map();
|
|
3169
|
+
_rowsStack = [];
|
|
3170
|
+
_operation;
|
|
3171
|
+
_groupByFn;
|
|
3172
|
+
_footerRowFn;
|
|
3173
|
+
_compareByFn;
|
|
3174
|
+
_initialExpand = true;
|
|
3175
|
+
_groupEnabled = false;
|
|
3176
|
+
_loadMoreEnabled;
|
|
3177
|
+
_hasData = false;
|
|
3178
|
+
_destroy$ = new Subject();
|
|
3052
3179
|
get visibleRowsData() {
|
|
3053
3180
|
return this.visibleRows.map((row) => row.data);
|
|
3054
3181
|
}
|
|
@@ -3230,7 +3357,7 @@ class DataController {
|
|
|
3230
3357
|
destroy() {
|
|
3231
3358
|
this._destroyRowsStack();
|
|
3232
3359
|
this._store.clear();
|
|
3233
|
-
this._destroy$.next();
|
|
3360
|
+
this._destroy$.next(null);
|
|
3234
3361
|
this._destroy$.complete();
|
|
3235
3362
|
}
|
|
3236
3363
|
toggleRowGroup(rowData) {
|
|
@@ -3374,6 +3501,19 @@ class DataController {
|
|
|
3374
3501
|
}
|
|
3375
3502
|
|
|
3376
3503
|
class ExternalParamsController {
|
|
3504
|
+
_router;
|
|
3505
|
+
_route;
|
|
3506
|
+
_persistance;
|
|
3507
|
+
_paginator;
|
|
3508
|
+
_sorting;
|
|
3509
|
+
_queryParamsEnabled;
|
|
3510
|
+
_externalParams = {
|
|
3511
|
+
page: null,
|
|
3512
|
+
limit: null,
|
|
3513
|
+
sortName: null,
|
|
3514
|
+
sortDirection: null,
|
|
3515
|
+
};
|
|
3516
|
+
_destroy$ = new Subject();
|
|
3377
3517
|
constructor(_router, _route, _persistance, _paginator, _sorting, _queryParamsEnabled) {
|
|
3378
3518
|
this._router = _router;
|
|
3379
3519
|
this._route = _route;
|
|
@@ -3381,13 +3521,6 @@ class ExternalParamsController {
|
|
|
3381
3521
|
this._paginator = _paginator;
|
|
3382
3522
|
this._sorting = _sorting;
|
|
3383
3523
|
this._queryParamsEnabled = _queryParamsEnabled;
|
|
3384
|
-
this._externalParams = {
|
|
3385
|
-
page: null,
|
|
3386
|
-
limit: null,
|
|
3387
|
-
sortName: null,
|
|
3388
|
-
sortDirection: null,
|
|
3389
|
-
};
|
|
3390
|
-
this._destroy$ = new Subject();
|
|
3391
3524
|
this.initialize();
|
|
3392
3525
|
}
|
|
3393
3526
|
get externalSorting() {
|
|
@@ -3444,7 +3577,7 @@ class ExternalParamsController {
|
|
|
3444
3577
|
this._updateSortingParams(null, null);
|
|
3445
3578
|
}
|
|
3446
3579
|
destroy() {
|
|
3447
|
-
this._destroy$.next();
|
|
3580
|
+
this._destroy$.next(null);
|
|
3448
3581
|
this._destroy$.complete();
|
|
3449
3582
|
}
|
|
3450
3583
|
_restorePaginationParams(values) {
|
|
@@ -3519,10 +3652,12 @@ class ExternalParamsController {
|
|
|
3519
3652
|
}
|
|
3520
3653
|
|
|
3521
3654
|
class ActionsController {
|
|
3522
|
-
|
|
3523
|
-
|
|
3524
|
-
|
|
3525
|
-
|
|
3655
|
+
_filterRef;
|
|
3656
|
+
_actions = [];
|
|
3657
|
+
_reorderAction;
|
|
3658
|
+
_doneAction;
|
|
3659
|
+
_destroy$ = new Subject();
|
|
3660
|
+
constructor() { }
|
|
3526
3661
|
get destroy$() {
|
|
3527
3662
|
return this._destroy$.asObservable();
|
|
3528
3663
|
}
|
|
@@ -3565,7 +3700,7 @@ class ActionsController {
|
|
|
3565
3700
|
}
|
|
3566
3701
|
clearActions() {
|
|
3567
3702
|
this._actions = [];
|
|
3568
|
-
this._destroy$.next();
|
|
3703
|
+
this._destroy$.next(null);
|
|
3569
3704
|
}
|
|
3570
3705
|
updateDisabledState() {
|
|
3571
3706
|
this._filterRef.updateDisabledState();
|
|
@@ -3580,20 +3715,20 @@ var PaginationStrategy;
|
|
|
3580
3715
|
})(PaginationStrategy || (PaginationStrategy = {}));
|
|
3581
3716
|
|
|
3582
3717
|
class PaginationController {
|
|
3583
|
-
|
|
3584
|
-
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3718
|
+
limit = 25;
|
|
3719
|
+
records;
|
|
3720
|
+
manual = false;
|
|
3721
|
+
page = 1; // Active page
|
|
3722
|
+
offset = 0;
|
|
3723
|
+
displayed = 0;
|
|
3724
|
+
_pages$ = new BehaviorSubject(0); // Total pages
|
|
3725
|
+
_strategy = PaginationStrategy.None;
|
|
3726
|
+
_removedRows = 0;
|
|
3727
|
+
_pageChanged$ = new Subject();
|
|
3728
|
+
_pageReset$ = new Subject();
|
|
3729
|
+
_onDestroy$ = new Subject();
|
|
3730
|
+
_loadMoreConfig;
|
|
3731
|
+
_limits = [10, 25, 50, 100, 200];
|
|
3597
3732
|
// Total pages
|
|
3598
3733
|
set pages(value) {
|
|
3599
3734
|
this._pages$.next(value);
|
|
@@ -4036,7 +4171,7 @@ class PaginationController {
|
|
|
4036
4171
|
* Destroy
|
|
4037
4172
|
*/
|
|
4038
4173
|
destroy() {
|
|
4039
|
-
this._onDestroy$.next();
|
|
4174
|
+
this._onDestroy$.next(null);
|
|
4040
4175
|
this._onDestroy$.complete();
|
|
4041
4176
|
}
|
|
4042
4177
|
/**
|
|
@@ -4068,6 +4203,68 @@ class PaginationController {
|
|
|
4068
4203
|
|
|
4069
4204
|
const showDeletedFilterKey = 'showDeleted';
|
|
4070
4205
|
class List {
|
|
4206
|
+
_el;
|
|
4207
|
+
_config;
|
|
4208
|
+
_selectionDialog;
|
|
4209
|
+
_router;
|
|
4210
|
+
_route;
|
|
4211
|
+
_persistance;
|
|
4212
|
+
_inDialog;
|
|
4213
|
+
heading;
|
|
4214
|
+
trackBy;
|
|
4215
|
+
subheading;
|
|
4216
|
+
autoFocus;
|
|
4217
|
+
rowHoverHighlight;
|
|
4218
|
+
rowActionsRaw;
|
|
4219
|
+
groupActionsRaw;
|
|
4220
|
+
rowClass;
|
|
4221
|
+
rowEvents;
|
|
4222
|
+
restore;
|
|
4223
|
+
persist;
|
|
4224
|
+
filters = [];
|
|
4225
|
+
filterInitCb;
|
|
4226
|
+
filterChangeCb;
|
|
4227
|
+
savedFilters;
|
|
4228
|
+
noResults;
|
|
4229
|
+
emptyState;
|
|
4230
|
+
fetchFn;
|
|
4231
|
+
beforeFetchFn;
|
|
4232
|
+
afterFetchFn;
|
|
4233
|
+
afterContentInit;
|
|
4234
|
+
afterInit;
|
|
4235
|
+
style;
|
|
4236
|
+
hasRowActions;
|
|
4237
|
+
paging = new PaginationController();
|
|
4238
|
+
columns = new ColumnsController();
|
|
4239
|
+
actions = new ActionsController();
|
|
4240
|
+
dataController = new DataController();
|
|
4241
|
+
sorting = new SortingController();
|
|
4242
|
+
externalParams;
|
|
4243
|
+
selection;
|
|
4244
|
+
filterConfig = null;
|
|
4245
|
+
loading$ = new BehaviorSubject(false);
|
|
4246
|
+
fetchComplete$ = new Subject();
|
|
4247
|
+
filtersReady$ = new Subject();
|
|
4248
|
+
status = true;
|
|
4249
|
+
chips = false;
|
|
4250
|
+
filterInput = true;
|
|
4251
|
+
queryParam = false;
|
|
4252
|
+
restoreMode = false;
|
|
4253
|
+
autoReload;
|
|
4254
|
+
initialFetch = true;
|
|
4255
|
+
// Empty state
|
|
4256
|
+
emptyStateEnabled = false;
|
|
4257
|
+
emptyStateTemplate;
|
|
4258
|
+
_destroy$ = new Subject();
|
|
4259
|
+
_initialized$ = new BehaviorSubject(false);
|
|
4260
|
+
_fetch$ = new Subject();
|
|
4261
|
+
_filtersQuery = new BehaviorSubject(null);
|
|
4262
|
+
_activeFiltersCount$ = this._filtersQuery
|
|
4263
|
+
.pipe(map((v) => Object.keys(v).length), shareReplay());
|
|
4264
|
+
_headerConfig;
|
|
4265
|
+
_groupCellConfig;
|
|
4266
|
+
_cellConfig;
|
|
4267
|
+
_footerConfig;
|
|
4071
4268
|
constructor(_el, _config = {}, _selectionDialog, _router, _route, _persistance, _inDialog) {
|
|
4072
4269
|
this._el = _el;
|
|
4073
4270
|
this._config = _config;
|
|
@@ -4076,30 +4273,6 @@ class List {
|
|
|
4076
4273
|
this._route = _route;
|
|
4077
4274
|
this._persistance = _persistance;
|
|
4078
4275
|
this._inDialog = _inDialog;
|
|
4079
|
-
this.filters = [];
|
|
4080
|
-
this.paging = new PaginationController();
|
|
4081
|
-
this.columns = new ColumnsController();
|
|
4082
|
-
this.actions = new ActionsController();
|
|
4083
|
-
this.dataController = new DataController();
|
|
4084
|
-
this.sorting = new SortingController();
|
|
4085
|
-
this.filterConfig = null;
|
|
4086
|
-
this.loading$ = new BehaviorSubject(false);
|
|
4087
|
-
this.fetchComplete$ = new Subject();
|
|
4088
|
-
this.filtersReady$ = new Subject();
|
|
4089
|
-
this.status = true;
|
|
4090
|
-
this.chips = false;
|
|
4091
|
-
this.filterInput = true;
|
|
4092
|
-
this.queryParam = false;
|
|
4093
|
-
this.restoreMode = false;
|
|
4094
|
-
this.initialFetch = true;
|
|
4095
|
-
// Empty state
|
|
4096
|
-
this.emptyStateEnabled = false;
|
|
4097
|
-
this._destroy$ = new Subject();
|
|
4098
|
-
this._initialized$ = new BehaviorSubject(false);
|
|
4099
|
-
this._fetch$ = new Subject();
|
|
4100
|
-
this._filtersQuery = new BehaviorSubject(null);
|
|
4101
|
-
this._activeFiltersCount$ = this._filtersQuery
|
|
4102
|
-
.pipe(map((v) => Object.keys(v).length), shareReplay());
|
|
4103
4276
|
this._initialize(_config);
|
|
4104
4277
|
this._headerConfig = new StyleConfig(_config.header);
|
|
4105
4278
|
this._groupCellConfig = new StyleConfig(_config.cell);
|
|
@@ -4109,7 +4282,7 @@ class List {
|
|
|
4109
4282
|
this.subscribe();
|
|
4110
4283
|
if (this.initialFetch) {
|
|
4111
4284
|
this.dataController.setOperation(FsListState.Load);
|
|
4112
|
-
this._fetch$.next();
|
|
4285
|
+
this._fetch$.next(null);
|
|
4113
4286
|
}
|
|
4114
4287
|
}
|
|
4115
4288
|
get fetch$() {
|
|
@@ -4173,7 +4346,7 @@ class List {
|
|
|
4173
4346
|
reload() {
|
|
4174
4347
|
this.loading$.next(true);
|
|
4175
4348
|
this.dataController.setOperation(FsListState.Reload);
|
|
4176
|
-
this._fetch$.next();
|
|
4349
|
+
this._fetch$.next(null);
|
|
4177
4350
|
return this.fetchComplete$
|
|
4178
4351
|
.asObservable()
|
|
4179
4352
|
.pipe(take(1), delay(0));
|
|
@@ -4218,14 +4391,14 @@ class List {
|
|
|
4218
4391
|
}
|
|
4219
4392
|
});
|
|
4220
4393
|
}
|
|
4221
|
-
this._fetch$.next();
|
|
4394
|
+
this._fetch$.next(null);
|
|
4222
4395
|
});
|
|
4223
4396
|
this.sorting.sortingChanged$
|
|
4224
4397
|
.pipe(takeUntil(this._destroy$))
|
|
4225
4398
|
.subscribe(() => {
|
|
4226
4399
|
this.dataController.setOperation(FsListState.Sort);
|
|
4227
4400
|
this.paging.page = 1;
|
|
4228
|
-
this._fetch$.next();
|
|
4401
|
+
this._fetch$.next(null);
|
|
4229
4402
|
});
|
|
4230
4403
|
this._listenVisibleColumnChanges();
|
|
4231
4404
|
this._listenRowsRemove();
|
|
@@ -4276,7 +4449,7 @@ class List {
|
|
|
4276
4449
|
this.externalParams.destroy();
|
|
4277
4450
|
}
|
|
4278
4451
|
this.columns.destroy();
|
|
4279
|
-
this._destroy$.next();
|
|
4452
|
+
this._destroy$.next(null);
|
|
4280
4453
|
this._destroy$.complete();
|
|
4281
4454
|
this.dataController.destroy();
|
|
4282
4455
|
}
|
|
@@ -4371,7 +4544,7 @@ class List {
|
|
|
4371
4544
|
menu: true,
|
|
4372
4545
|
click: (row) => {
|
|
4373
4546
|
this._restoreClick(this.restore.click, row);
|
|
4374
|
-
},
|
|
4547
|
+
}, // TODO fix me, move to special file
|
|
4375
4548
|
restore: true,
|
|
4376
4549
|
});
|
|
4377
4550
|
if (!this.rowActionsRaw) {
|
|
@@ -4600,7 +4773,7 @@ class List {
|
|
|
4600
4773
|
this.dataController.setOperation(FsListState.Filter);
|
|
4601
4774
|
// Reset paging for request with correct offset
|
|
4602
4775
|
this.paging.resetPaging();
|
|
4603
|
-
this._fetch$.next();
|
|
4776
|
+
this._fetch$.next(null);
|
|
4604
4777
|
}
|
|
4605
4778
|
_checkRestoreFilter() {
|
|
4606
4779
|
// Restore option
|
|
@@ -4726,22 +4899,22 @@ class List {
|
|
|
4726
4899
|
|
|
4727
4900
|
const FILTER_STORE_KEY = 'fs-list-persist';
|
|
4728
4901
|
class PersistanceController extends FsPersistanceStore {
|
|
4902
|
+
STORE_KEY = FILTER_STORE_KEY;
|
|
4729
4903
|
constructor(_store, _route) {
|
|
4730
4904
|
super(_store, _route);
|
|
4731
|
-
this.STORE_KEY = FILTER_STORE_KEY;
|
|
4732
4905
|
}
|
|
4906
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PersistanceController, deps: [{ token: i1$3.FsStore }, { token: i6.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4907
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PersistanceController });
|
|
4733
4908
|
}
|
|
4734
|
-
|
|
4735
|
-
PersistanceController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PersistanceController });
|
|
4736
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PersistanceController, decorators: [{
|
|
4909
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PersistanceController, decorators: [{
|
|
4737
4910
|
type: Injectable
|
|
4738
|
-
}], ctorParameters:
|
|
4911
|
+
}], ctorParameters: () => [{ type: i1$3.FsStore }, { type: i6.ActivatedRoute }] });
|
|
4739
4912
|
|
|
4740
4913
|
class FsListHeadingDirective {
|
|
4914
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListHeadingDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4915
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListHeadingDirective, selector: "[fs-list-heading],[fsListHeading]", ngImport: i0 });
|
|
4741
4916
|
}
|
|
4742
|
-
|
|
4743
|
-
FsListHeadingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListHeadingDirective, selector: "[fs-list-heading],[fsListHeading]", ngImport: i0 });
|
|
4744
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListHeadingDirective, decorators: [{
|
|
4917
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListHeadingDirective, decorators: [{
|
|
4745
4918
|
type: Directive,
|
|
4746
4919
|
args: [{
|
|
4747
4920
|
selector: '[fs-list-heading],[fsListHeading]'
|
|
@@ -4749,10 +4922,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4749
4922
|
}] });
|
|
4750
4923
|
|
|
4751
4924
|
class FsListSubheadingDirective {
|
|
4925
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListSubheadingDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4926
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListSubheadingDirective, selector: "[fs-list-subheading],[fsListSubheading]", ngImport: i0 });
|
|
4752
4927
|
}
|
|
4753
|
-
|
|
4754
|
-
FsListSubheadingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListSubheadingDirective, selector: "[fs-list-subheading],[fsListSubheading]", ngImport: i0 });
|
|
4755
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListSubheadingDirective, decorators: [{
|
|
4928
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListSubheadingDirective, decorators: [{
|
|
4756
4929
|
type: Directive,
|
|
4757
4930
|
args: [{
|
|
4758
4931
|
selector: '[fs-list-subheading],[fsListSubheading]'
|
|
@@ -4760,10 +4933,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4760
4933
|
}] });
|
|
4761
4934
|
|
|
4762
4935
|
class FsListHeadingContainerDirective {
|
|
4936
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListHeadingContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4937
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListHeadingContainerDirective, selector: "[fs-list-heading-container],[fsListHeadingContainer]", ngImport: i0 });
|
|
4763
4938
|
}
|
|
4764
|
-
|
|
4765
|
-
FsListHeadingContainerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListHeadingContainerDirective, selector: "[fs-list-heading-container],[fsListHeadingContainer]", ngImport: i0 });
|
|
4766
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListHeadingContainerDirective, decorators: [{
|
|
4939
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListHeadingContainerDirective, decorators: [{
|
|
4767
4940
|
type: Directive,
|
|
4768
4941
|
args: [{
|
|
4769
4942
|
selector: '[fs-list-heading-container],[fsListHeadingContainer]'
|
|
@@ -4771,10 +4944,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4771
4944
|
}] });
|
|
4772
4945
|
|
|
4773
4946
|
class FsListCellDirective {
|
|
4947
|
+
colspan;
|
|
4948
|
+
align;
|
|
4949
|
+
className;
|
|
4950
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4951
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListCellDirective, selector: "[fs-list-cell]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"] }, ngImport: i0 });
|
|
4774
4952
|
}
|
|
4775
|
-
|
|
4776
|
-
FsListCellDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListCellDirective, selector: "[fs-list-cell]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"] }, ngImport: i0 });
|
|
4777
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListCellDirective, decorators: [{
|
|
4953
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListCellDirective, decorators: [{
|
|
4778
4954
|
type: Directive,
|
|
4779
4955
|
args: [{ selector: '[fs-list-cell]' }]
|
|
4780
4956
|
}], propDecorators: { colspan: [{
|
|
@@ -4787,10 +4963,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4787
4963
|
}] } });
|
|
4788
4964
|
|
|
4789
4965
|
class FsListFooterDirective {
|
|
4966
|
+
colspan;
|
|
4967
|
+
align;
|
|
4968
|
+
className;
|
|
4969
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4970
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListFooterDirective, selector: "[fs-list-footer]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"] }, ngImport: i0 });
|
|
4790
4971
|
}
|
|
4791
|
-
|
|
4792
|
-
FsListFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListFooterDirective, selector: "[fs-list-footer]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"] }, ngImport: i0 });
|
|
4793
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListFooterDirective, decorators: [{
|
|
4972
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListFooterDirective, decorators: [{
|
|
4794
4973
|
type: Directive,
|
|
4795
4974
|
args: [{ selector: '[fs-list-footer]' }]
|
|
4796
4975
|
}], propDecorators: { colspan: [{
|
|
@@ -4803,10 +4982,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4803
4982
|
}] } });
|
|
4804
4983
|
|
|
4805
4984
|
class FsListHeaderDirective {
|
|
4985
|
+
colspan;
|
|
4986
|
+
align;
|
|
4987
|
+
className;
|
|
4988
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4989
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListHeaderDirective, selector: "[fs-list-header]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"] }, ngImport: i0 });
|
|
4806
4990
|
}
|
|
4807
|
-
|
|
4808
|
-
FsListHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListHeaderDirective, selector: "[fs-list-header]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"] }, ngImport: i0 });
|
|
4809
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListHeaderDirective, decorators: [{
|
|
4991
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListHeaderDirective, decorators: [{
|
|
4810
4992
|
type: Directive,
|
|
4811
4993
|
args: [{ selector: '[fs-list-header]' }]
|
|
4812
4994
|
}], propDecorators: { colspan: [{
|
|
@@ -4819,10 +5001,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4819
5001
|
}] } });
|
|
4820
5002
|
|
|
4821
5003
|
class GroupExpandNotifierService {
|
|
4822
|
-
|
|
4823
|
-
|
|
4824
|
-
this._destroy$ = new Subject();
|
|
4825
|
-
}
|
|
5004
|
+
_expandStatusChanged$ = new Subject();
|
|
5005
|
+
_destroy$ = new Subject();
|
|
4826
5006
|
get expandStatusChange$() {
|
|
4827
5007
|
return this._expandStatusChanged$.pipe(takeUntil(this._destroy$));
|
|
4828
5008
|
}
|
|
@@ -4830,32 +5010,34 @@ class GroupExpandNotifierService {
|
|
|
4830
5010
|
this._expandStatusChanged$.next(rowData);
|
|
4831
5011
|
}
|
|
4832
5012
|
ngOnDestroy() {
|
|
4833
|
-
this._destroy$.next();
|
|
5013
|
+
this._destroy$.next(null);
|
|
4834
5014
|
this._destroy$.complete();
|
|
4835
5015
|
}
|
|
5016
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GroupExpandNotifierService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5017
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GroupExpandNotifierService });
|
|
4836
5018
|
}
|
|
4837
|
-
|
|
4838
|
-
GroupExpandNotifierService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GroupExpandNotifierService });
|
|
4839
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GroupExpandNotifierService, decorators: [{
|
|
5019
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GroupExpandNotifierService, decorators: [{
|
|
4840
5020
|
type: Injectable
|
|
4841
5021
|
}] });
|
|
4842
5022
|
|
|
4843
5023
|
class FsListGroupExpandTriggerDirective {
|
|
5024
|
+
_expandNotifier;
|
|
4844
5025
|
click(event) {
|
|
4845
5026
|
event.preventDefault();
|
|
4846
5027
|
event.stopPropagation();
|
|
4847
5028
|
this._expandNotifier.toggleExpandStatus(this.row);
|
|
4848
5029
|
}
|
|
5030
|
+
row;
|
|
4849
5031
|
constructor(_expandNotifier) {
|
|
4850
5032
|
this._expandNotifier = _expandNotifier;
|
|
4851
5033
|
}
|
|
5034
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListGroupExpandTriggerDirective, deps: [{ token: GroupExpandNotifierService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
5035
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListGroupExpandTriggerDirective, selector: "[fsListGroupExpandTrigger]", inputs: { row: "row" }, host: { listeners: { "click": "click($event)" } }, ngImport: i0 });
|
|
4852
5036
|
}
|
|
4853
|
-
|
|
4854
|
-
FsListGroupExpandTriggerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListGroupExpandTriggerDirective, selector: "[fsListGroupExpandTrigger]", inputs: { row: "row" }, host: { listeners: { "click": "click($event)" } }, ngImport: i0 });
|
|
4855
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListGroupExpandTriggerDirective, decorators: [{
|
|
5037
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListGroupExpandTriggerDirective, decorators: [{
|
|
4856
5038
|
type: Directive,
|
|
4857
5039
|
args: [{ selector: '[fsListGroupExpandTrigger]' }]
|
|
4858
|
-
}], ctorParameters:
|
|
5040
|
+
}], ctorParameters: () => [{ type: GroupExpandNotifierService }], propDecorators: { click: [{
|
|
4859
5041
|
type: HostListener,
|
|
4860
5042
|
args: ['click', ['$event']]
|
|
4861
5043
|
}], row: [{
|
|
@@ -4863,10 +5045,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4863
5045
|
}] } });
|
|
4864
5046
|
|
|
4865
5047
|
class FsListGroupFooterDirective extends FsListCellDirective {
|
|
5048
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListGroupFooterDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
5049
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListGroupFooterDirective, selector: "[fs-list-group-footer]", usesInheritance: true, ngImport: i0 });
|
|
4866
5050
|
}
|
|
4867
|
-
|
|
4868
|
-
FsListGroupFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListGroupFooterDirective, selector: "[fs-list-group-footer]", usesInheritance: true, ngImport: i0 });
|
|
4869
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListGroupFooterDirective, decorators: [{
|
|
5051
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListGroupFooterDirective, decorators: [{
|
|
4870
5052
|
type: Directive,
|
|
4871
5053
|
args: [{
|
|
4872
5054
|
selector: '[fs-list-group-footer]'
|
|
@@ -4874,10 +5056,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4874
5056
|
}] });
|
|
4875
5057
|
|
|
4876
5058
|
class FsListGroupHeaderDirective extends FsListCellDirective {
|
|
5059
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListGroupHeaderDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
5060
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListGroupHeaderDirective, selector: "[fs-list-group-cell],[fs-list-group-header]", usesInheritance: true, ngImport: i0 });
|
|
4877
5061
|
}
|
|
4878
|
-
|
|
4879
|
-
FsListGroupHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListGroupHeaderDirective, selector: "[fs-list-group-cell],[fs-list-group-header]", usesInheritance: true, ngImport: i0 });
|
|
4880
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListGroupHeaderDirective, decorators: [{
|
|
5062
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListGroupHeaderDirective, decorators: [{
|
|
4881
5063
|
type: Directive,
|
|
4882
5064
|
args: [{
|
|
4883
5065
|
selector: '[fs-list-group-cell],[fs-list-group-header]'
|
|
@@ -4885,9 +5067,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4885
5067
|
}] });
|
|
4886
5068
|
|
|
4887
5069
|
class FsListColumnDirective {
|
|
4888
|
-
|
|
4889
|
-
|
|
4890
|
-
|
|
5070
|
+
// Header
|
|
5071
|
+
headerTemplate;
|
|
5072
|
+
headerConfigs;
|
|
5073
|
+
// Group
|
|
5074
|
+
groupHeaderTemplate;
|
|
5075
|
+
groupHeaderConfigs;
|
|
5076
|
+
// Group Footer
|
|
5077
|
+
groupFooterTemplate;
|
|
5078
|
+
groupFooterConfigs;
|
|
5079
|
+
// Trigger
|
|
5080
|
+
expandTrigger;
|
|
5081
|
+
// Cell
|
|
5082
|
+
cellTemplate;
|
|
5083
|
+
cellConfigs;
|
|
5084
|
+
// Footer
|
|
5085
|
+
footerTemplate;
|
|
5086
|
+
footerConfigs;
|
|
5087
|
+
_columnAttributes = new ColumnAttributes();
|
|
5088
|
+
constructor() { }
|
|
4891
5089
|
get attributes() {
|
|
4892
5090
|
return this._columnAttributes;
|
|
4893
5091
|
}
|
|
@@ -4928,15 +5126,15 @@ class FsListColumnDirective {
|
|
|
4928
5126
|
set className(value) {
|
|
4929
5127
|
this._columnAttributes.className = value;
|
|
4930
5128
|
}
|
|
5129
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5130
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListColumnDirective, selector: "fs-list-column", inputs: { visible: ["show", "visible"], title: "title", name: "name", customize: "customize", sortable: "sortable", sortableDefault: "sortableDefault", sortableDirection: "sortableDirection", direction: "direction", align: "align", width: "width", className: ["class", "className"] }, queries: [{ propertyName: "headerTemplate", first: true, predicate: FsListHeaderDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "headerConfigs", first: true, predicate: FsListHeaderDirective, descendants: true, static: true }, { propertyName: "groupHeaderTemplate", first: true, predicate: FsListGroupHeaderDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "groupHeaderConfigs", first: true, predicate: FsListGroupHeaderDirective, descendants: true, static: true }, { propertyName: "groupFooterTemplate", first: true, predicate: FsListGroupFooterDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "groupFooterConfigs", first: true, predicate: FsListGroupFooterDirective, descendants: true, static: true }, { propertyName: "cellTemplate", first: true, predicate: FsListCellDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "cellConfigs", first: true, predicate: FsListCellDirective, descendants: true, static: true }, { propertyName: "footerTemplate", first: true, predicate: FsListFooterDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "footerConfigs", first: true, predicate: FsListFooterDirective, descendants: true, static: true }, { propertyName: "expandTrigger", predicate: FsListGroupExpandTriggerDirective, descendants: true }], ngImport: i0 });
|
|
4931
5131
|
}
|
|
4932
|
-
|
|
4933
|
-
FsListColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListColumnDirective, selector: "fs-list-column", inputs: { visible: ["show", "visible"], title: "title", name: "name", customize: "customize", sortable: "sortable", sortableDefault: "sortableDefault", sortableDirection: "sortableDirection", direction: "direction", align: "align", width: "width", className: ["class", "className"] }, queries: [{ propertyName: "headerTemplate", first: true, predicate: FsListHeaderDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "headerConfigs", first: true, predicate: FsListHeaderDirective, descendants: true, static: true }, { propertyName: "groupHeaderTemplate", first: true, predicate: FsListGroupHeaderDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "groupHeaderConfigs", first: true, predicate: FsListGroupHeaderDirective, descendants: true, static: true }, { propertyName: "groupFooterTemplate", first: true, predicate: FsListGroupFooterDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "groupFooterConfigs", first: true, predicate: FsListGroupFooterDirective, descendants: true, static: true }, { propertyName: "cellTemplate", first: true, predicate: FsListCellDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "cellConfigs", first: true, predicate: FsListCellDirective, descendants: true, static: true }, { propertyName: "footerTemplate", first: true, predicate: FsListFooterDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "footerConfigs", first: true, predicate: FsListFooterDirective, descendants: true, static: true }, { propertyName: "expandTrigger", predicate: FsListGroupExpandTriggerDirective, descendants: true }], ngImport: i0 });
|
|
4934
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListColumnDirective, decorators: [{
|
|
5132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListColumnDirective, decorators: [{
|
|
4935
5133
|
type: Directive,
|
|
4936
5134
|
args: [{
|
|
4937
5135
|
selector: 'fs-list-column'
|
|
4938
5136
|
}]
|
|
4939
|
-
}], ctorParameters:
|
|
5137
|
+
}], ctorParameters: () => [], propDecorators: { headerTemplate: [{
|
|
4940
5138
|
type: ContentChild,
|
|
4941
5139
|
args: [FsListHeaderDirective, { read: TemplateRef, static: true }]
|
|
4942
5140
|
}], headerConfigs: [{
|
|
@@ -4996,10 +5194,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4996
5194
|
}] } });
|
|
4997
5195
|
|
|
4998
5196
|
class FsListEmptyStateDirective {
|
|
5197
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListEmptyStateDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5198
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListEmptyStateDirective, selector: "[fs-list-empty-state]", ngImport: i0 });
|
|
4999
5199
|
}
|
|
5000
|
-
|
|
5001
|
-
FsListEmptyStateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListEmptyStateDirective, selector: "[fs-list-empty-state]", ngImport: i0 });
|
|
5002
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListEmptyStateDirective, decorators: [{
|
|
5200
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListEmptyStateDirective, decorators: [{
|
|
5003
5201
|
type: Directive,
|
|
5004
5202
|
args: [{
|
|
5005
5203
|
selector: '[fs-list-empty-state]',
|
|
@@ -5010,6 +5208,9 @@ const FS_LIST_DEFAULT_CONFIG = new InjectionToken('fs-list.default-config');
|
|
|
5010
5208
|
const FS_LIST_CONFIG = new InjectionToken('fs-list.config');
|
|
5011
5209
|
|
|
5012
5210
|
class FsListSavedFiltersComponent {
|
|
5211
|
+
_dialog;
|
|
5212
|
+
_externalParams;
|
|
5213
|
+
_vcRef;
|
|
5013
5214
|
constructor(_dialog, _externalParams, _vcRef) {
|
|
5014
5215
|
this._dialog = _dialog;
|
|
5015
5216
|
this._externalParams = _externalParams;
|
|
@@ -5023,18 +5224,23 @@ class FsListSavedFiltersComponent {
|
|
|
5023
5224
|
// viewContainerRef: this._vcRef,
|
|
5024
5225
|
// });
|
|
5025
5226
|
}
|
|
5227
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListSavedFiltersComponent, deps: [{ token: i1$2.MatDialog }, { token: i2$1.ExternalParamsController }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
5228
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsListSavedFiltersComponent, selector: "fs-list-saved-filters", ngImport: i0, template: "<ng-container *ngIf=\"savedFiltersEnabled$ | async\"><!--\r\n -->, saved filter\r\n <fs-filter-saved-filters-menu (manage)=\"showManageDialog()\"></fs-filter-saved-filters-menu>\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.FsSavedFiltersMenuComponent, selector: "fs-filter-saved-filters-menu", outputs: ["clear"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
|
|
5026
5229
|
}
|
|
5027
|
-
|
|
5028
|
-
FsListSavedFiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsListSavedFiltersComponent, selector: "fs-list-saved-filters", ngImport: i0, template: "<ng-container *ngIf=\"savedFiltersEnabled$ | async\"><!--\n -->, saved filter\n <fs-filter-saved-filters-menu (manage)=\"showManageDialog()\"></fs-filter-saved-filters-menu>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.FsSavedFiltersMenuComponent, selector: "fs-filter-saved-filters-menu", outputs: ["clear"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
|
|
5029
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListSavedFiltersComponent, decorators: [{
|
|
5230
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListSavedFiltersComponent, decorators: [{
|
|
5030
5231
|
type: Component,
|
|
5031
|
-
args: [{ selector: 'fs-list-saved-filters', template: "<ng-container *ngIf=\"savedFiltersEnabled$ | async\"><!--\n -->, saved filter\n <fs-filter-saved-filters-menu (manage)=\"showManageDialog()\"></fs-filter-saved-filters-menu>\n</ng-container>\n" }]
|
|
5032
|
-
}], ctorParameters:
|
|
5232
|
+
args: [{ selector: 'fs-list-saved-filters', template: "<ng-container *ngIf=\"savedFiltersEnabled$ | async\"><!--\r\n -->, saved filter\r\n <fs-filter-saved-filters-menu (manage)=\"showManageDialog()\"></fs-filter-saved-filters-menu>\r\n</ng-container>\r\n" }]
|
|
5233
|
+
}], ctorParameters: () => [{ type: i1$2.MatDialog }, { type: i2$1.ExternalParamsController }, { type: i0.ViewContainerRef }] });
|
|
5033
5234
|
|
|
5034
5235
|
class FsStatusComponent {
|
|
5236
|
+
_cdRef;
|
|
5237
|
+
paging;
|
|
5238
|
+
sorting;
|
|
5239
|
+
rows;
|
|
5240
|
+
firstLoad;
|
|
5241
|
+
_destroy$ = new Subject();
|
|
5035
5242
|
constructor(_cdRef) {
|
|
5036
5243
|
this._cdRef = _cdRef;
|
|
5037
|
-
this._destroy$ = new Subject();
|
|
5038
5244
|
}
|
|
5039
5245
|
ngOnInit() {
|
|
5040
5246
|
this.sorting.sortingChanged$
|
|
@@ -5044,7 +5250,7 @@ class FsStatusComponent {
|
|
|
5044
5250
|
});
|
|
5045
5251
|
}
|
|
5046
5252
|
ngOnDestroy() {
|
|
5047
|
-
this._destroy$.next();
|
|
5253
|
+
this._destroy$.next(null);
|
|
5048
5254
|
this._destroy$.complete();
|
|
5049
5255
|
}
|
|
5050
5256
|
toggleDirection() {
|
|
@@ -5063,13 +5269,13 @@ class FsStatusComponent {
|
|
|
5063
5269
|
setLimit(limit) {
|
|
5064
5270
|
this.paging.setLimit(limit);
|
|
5065
5271
|
}
|
|
5272
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsStatusComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
5273
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsStatusComponent, selector: "fs-list-status", inputs: { paging: "paging", sorting: "sorting", rows: "rows", firstLoad: "firstLoad" }, host: { properties: { "class.first-load": "this.firstLoad", "class.fs-skeleton-placeholder": "this.firstLoad" } }, ngImport: i0, template: "<div class=\"status\">\r\n <small>\r\n <ng-container *ngIf=\"paging.enabled\">\r\n <ng-container *ngIf=\"paging.records > 0; else emptyResults\">\r\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">{{ paging.statusLabel }}</a> of {{ paging.records | number:'1.0':'en-US' }} results\r\n </ng-container>\r\n <ng-template #emptyResults>\r\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">0</a> results\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\r\n --></ng-container><!--\r\n\r\n --><ng-container *ngIf=\"(!paging.enabled) && paging.displayed > 0\">\r\n <ng-container *ngIf=\"!scrollable; else scrollable\">\r\n Showing\r\n <span *ngIf=\"paging.displayed === 1\">{{ paging.displayed }} result </span>\r\n <span *ngIf=\"paging.displayed > 1\">{{ paging.displayed | number:'1.0':'en-US' }} results </span>\r\n </ng-container>\r\n\r\n <ng-template #scrollable>\r\n <span *ngIf=\"paging.records === 1\">{{ paging.records }} result </span>\r\n <span *ngIf=\"paging.records > 1\">{{ paging.records | number:'1.0':'en-US' }} results </span>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\r\n --></ng-container><!--\r\n\r\n --><fs-list-saved-filters class=\"saved-filters\"></fs-list-saved-filters>\r\n\r\n <fs-menu [hidden]=\"!paging.enabled\" #limitsMenu>\r\n <ng-template\r\n ngFor\r\n let-limit\r\n [ngForOf]=\"paging.limits\">\r\n <ng-template fs-menu-item (click)=\"setLimit(limit)\">\r\n {{ limit }}\r\n </ng-template>\r\n </ng-template>\r\n </fs-menu>\r\n\r\n <fs-menu [hidden]=\"!sorting.sortingColumn || paging.displayed === 0\" #orderColumnsMenu>\r\n <!-- Real sorting columns -->\r\n <ng-template\r\n ngFor\r\n let-column\r\n [ngForOf]=\"sorting.sortingColumns\">\r\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\r\n <ng-container *ngIf=\"column.title; else sortByTemplate\">\r\n {{ column.title }}\r\n </ng-container>\r\n <ng-template #sortByTemplate>\r\n <ng-template [ngTemplateOutlet]=\"column.headerTemplate\"></ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n\r\n <!-- Fake sorting columns -->\r\n <ng-template\r\n ngFor\r\n let-column\r\n [ngForOf]=\"sorting.fakeSortingColumns\">\r\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\r\n {{ column.title }}\r\n </ng-template>\r\n </ng-template>\r\n </fs-menu>\r\n\r\n <ng-template #sortedBy>\r\n <ng-container *ngIf=\"sorting.sortingColumn\">\r\n sorted by\r\n <ng-container *ngIf=\"sorting.sortingColumn.title; else sortByTemplate\">\r\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">{{ sorting.sortingColumn.title }}</a>,\r\n </ng-container>\r\n <ng-template #sortByTemplate>\r\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">\r\n <ng-template [ngTemplateOutlet]=\"sorting.sortingColumn.headerTemplate\"></ng-template>\r\n </a>,\r\n </ng-template>\r\n <a class=\"order-toggle\" (click)=\"toggleDirection()\">{{ sorting.sortingColumn.fullNameDirection }}</a><!--\r\n --></ng-container><!--\r\n --></ng-template>\r\n </small> \r\n</div>\r\n", styles: [":host.hidden-mobile{display:none!important}:host.first-load .status{visibility:hidden}.order-toggle{white-space:nowrap}a{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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]" }, { kind: "directive", type: i2.FsMenuTriggerDirective, selector: "[fsMenuTriggerFor]", inputs: ["fsMenuTriggerFor"] }, { kind: "component", type: FsListSavedFiltersComponent, selector: "fs-list-saved-filters" }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, preserveWhitespaces: true });
|
|
5066
5274
|
}
|
|
5067
|
-
|
|
5068
|
-
FsStatusComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsStatusComponent, selector: "fs-list-status", inputs: { paging: "paging", sorting: "sorting", rows: "rows", firstLoad: "firstLoad" }, host: { properties: { "class.first-load": "this.firstLoad", "class.fs-skeleton-placeholder": "this.firstLoad" } }, ngImport: i0, template: "<div class=\"status\">\n <small>\n <ng-container *ngIf=\"paging.enabled\">\n <ng-container *ngIf=\"paging.records > 0; else emptyResults\">\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">{{ paging.statusLabel }}</a> of {{ paging.records | number:'1.0':'en-US' }} results\n </ng-container>\n <ng-template #emptyResults>\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">0</a> results\n </ng-template>\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\n --></ng-container><!--\n\n --><ng-container *ngIf=\"(!paging.enabled) && paging.displayed > 0\">\n <ng-container *ngIf=\"!scrollable; else scrollable\">\n Showing\n <span *ngIf=\"paging.displayed === 1\">{{ paging.displayed }} result </span>\n <span *ngIf=\"paging.displayed > 1\">{{ paging.displayed | number:'1.0':'en-US' }} results </span>\n </ng-container>\n\n <ng-template #scrollable>\n <span *ngIf=\"paging.records === 1\">{{ paging.records }} result </span>\n <span *ngIf=\"paging.records > 1\">{{ paging.records | number:'1.0':'en-US' }} results </span>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\n --></ng-container><!--\n\n --><fs-list-saved-filters class=\"saved-filters\"></fs-list-saved-filters>\n\n <fs-menu [hidden]=\"!paging.enabled\" #limitsMenu>\n <ng-template\n ngFor\n let-limit\n [ngForOf]=\"paging.limits\">\n <ng-template fs-menu-item (click)=\"setLimit(limit)\">\n {{ limit }}\n </ng-template>\n </ng-template>\n </fs-menu>\n\n <fs-menu [hidden]=\"!sorting.sortingColumn || paging.displayed === 0\" #orderColumnsMenu>\n <!-- Real sorting columns -->\n <ng-template\n ngFor\n let-column\n [ngForOf]=\"sorting.sortingColumns\">\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\n <ng-container *ngIf=\"column.title; else sortByTemplate\">\n {{ column.title }}\n </ng-container>\n <ng-template #sortByTemplate>\n <ng-template [ngTemplateOutlet]=\"column.headerTemplate\"></ng-template>\n </ng-template>\n </ng-template>\n </ng-template>\n\n <!-- Fake sorting columns -->\n <ng-template\n ngFor\n let-column\n [ngForOf]=\"sorting.fakeSortingColumns\">\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\n {{ column.title }}\n </ng-template>\n </ng-template>\n </fs-menu>\n\n <ng-template #sortedBy>\n <ng-container *ngIf=\"sorting.sortingColumn\">\n sorted by\n <ng-container *ngIf=\"sorting.sortingColumn.title; else sortByTemplate\">\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">{{ sorting.sortingColumn.title }}</a>,\n </ng-container>\n <ng-template #sortByTemplate>\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">\n <ng-template [ngTemplateOutlet]=\"sorting.sortingColumn.headerTemplate\"></ng-template>\n </a>,\n </ng-template>\n <a class=\"order-toggle\" (click)=\"toggleDirection()\">{{ sorting.sortingColumn.fullNameDirection }}</a><!--\n --></ng-container><!--\n --></ng-template>\n </small> \n</div>\n", styles: [":host.hidden-mobile{display:none!important}:host.first-load .status{visibility:hidden}.order-toggle{white-space:nowrap}a{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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]" }, { kind: "directive", type: i2.FsMenuTriggerDirective, selector: "[fsMenuTriggerFor]", inputs: ["fsMenuTriggerFor"] }, { kind: "component", type: FsListSavedFiltersComponent, selector: "fs-list-saved-filters" }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, preserveWhitespaces: true });
|
|
5069
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsStatusComponent, decorators: [{
|
|
5275
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsStatusComponent, decorators: [{
|
|
5070
5276
|
type: Component,
|
|
5071
|
-
args: [{ selector: 'fs-list-status', changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: true, template: "<div class=\"status\">\n <small>\n <ng-container *ngIf=\"paging.enabled\">\n <ng-container *ngIf=\"paging.records > 0; else emptyResults\">\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">{{ paging.statusLabel }}</a> of {{ paging.records | number:'1.0':'en-US' }} results\n </ng-container>\n <ng-template #emptyResults>\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">0</a> results\n </ng-template>\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\n --></ng-container><!--\n\n --><ng-container *ngIf=\"(!paging.enabled) && paging.displayed > 0\">\n <ng-container *ngIf=\"!scrollable; else scrollable\">\n Showing\n <span *ngIf=\"paging.displayed === 1\">{{ paging.displayed }} result </span>\n <span *ngIf=\"paging.displayed > 1\">{{ paging.displayed | number:'1.0':'en-US' }} results </span>\n </ng-container>\n\n <ng-template #scrollable>\n <span *ngIf=\"paging.records === 1\">{{ paging.records }} result </span>\n <span *ngIf=\"paging.records > 1\">{{ paging.records | number:'1.0':'en-US' }} results </span>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\n --></ng-container><!--\n\n --><fs-list-saved-filters class=\"saved-filters\"></fs-list-saved-filters>\n\n <fs-menu [hidden]=\"!paging.enabled\" #limitsMenu>\n <ng-template\n ngFor\n let-limit\n [ngForOf]=\"paging.limits\">\n <ng-template fs-menu-item (click)=\"setLimit(limit)\">\n {{ limit }}\n </ng-template>\n </ng-template>\n </fs-menu>\n\n <fs-menu [hidden]=\"!sorting.sortingColumn || paging.displayed === 0\" #orderColumnsMenu>\n <!-- Real sorting columns -->\n <ng-template\n ngFor\n let-column\n [ngForOf]=\"sorting.sortingColumns\">\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\n <ng-container *ngIf=\"column.title; else sortByTemplate\">\n {{ column.title }}\n </ng-container>\n <ng-template #sortByTemplate>\n <ng-template [ngTemplateOutlet]=\"column.headerTemplate\"></ng-template>\n </ng-template>\n </ng-template>\n </ng-template>\n\n <!-- Fake sorting columns -->\n <ng-template\n ngFor\n let-column\n [ngForOf]=\"sorting.fakeSortingColumns\">\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\n {{ column.title }}\n </ng-template>\n </ng-template>\n </fs-menu>\n\n <ng-template #sortedBy>\n <ng-container *ngIf=\"sorting.sortingColumn\">\n sorted by\n <ng-container *ngIf=\"sorting.sortingColumn.title; else sortByTemplate\">\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">{{ sorting.sortingColumn.title }}</a>,\n </ng-container>\n <ng-template #sortByTemplate>\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">\n <ng-template [ngTemplateOutlet]=\"sorting.sortingColumn.headerTemplate\"></ng-template>\n </a>,\n </ng-template>\n <a class=\"order-toggle\" (click)=\"toggleDirection()\">{{ sorting.sortingColumn.fullNameDirection }}</a><!--\n --></ng-container><!--\n --></ng-template>\n </small> \n</div>\n", styles: [":host.hidden-mobile{display:none!important}:host.first-load .status{visibility:hidden}.order-toggle{white-space:nowrap}a{cursor:pointer}\n"] }]
|
|
5072
|
-
}], ctorParameters:
|
|
5277
|
+
args: [{ selector: 'fs-list-status', changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: true, template: "<div class=\"status\">\r\n <small>\r\n <ng-container *ngIf=\"paging.enabled\">\r\n <ng-container *ngIf=\"paging.records > 0; else emptyResults\">\r\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">{{ paging.statusLabel }}</a> of {{ paging.records | number:'1.0':'en-US' }} results\r\n </ng-container>\r\n <ng-template #emptyResults>\r\n Showing <a [fsMenuTriggerFor]=\"limitsMenu\">0</a> results\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\r\n --></ng-container><!--\r\n\r\n --><ng-container *ngIf=\"(!paging.enabled) && paging.displayed > 0\">\r\n <ng-container *ngIf=\"!scrollable; else scrollable\">\r\n Showing\r\n <span *ngIf=\"paging.displayed === 1\">{{ paging.displayed }} result </span>\r\n <span *ngIf=\"paging.displayed > 1\">{{ paging.displayed | number:'1.0':'en-US' }} results </span>\r\n </ng-container>\r\n\r\n <ng-template #scrollable>\r\n <span *ngIf=\"paging.records === 1\">{{ paging.records }} result </span>\r\n <span *ngIf=\"paging.records > 1\">{{ paging.records | number:'1.0':'en-US' }} results </span>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"sortedBy\"></ng-container><!--\r\n --></ng-container><!--\r\n\r\n --><fs-list-saved-filters class=\"saved-filters\"></fs-list-saved-filters>\r\n\r\n <fs-menu [hidden]=\"!paging.enabled\" #limitsMenu>\r\n <ng-template\r\n ngFor\r\n let-limit\r\n [ngForOf]=\"paging.limits\">\r\n <ng-template fs-menu-item (click)=\"setLimit(limit)\">\r\n {{ limit }}\r\n </ng-template>\r\n </ng-template>\r\n </fs-menu>\r\n\r\n <fs-menu [hidden]=\"!sorting.sortingColumn || paging.displayed === 0\" #orderColumnsMenu>\r\n <!-- Real sorting columns -->\r\n <ng-template\r\n ngFor\r\n let-column\r\n [ngForOf]=\"sorting.sortingColumns\">\r\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\r\n <ng-container *ngIf=\"column.title; else sortByTemplate\">\r\n {{ column.title }}\r\n </ng-container>\r\n <ng-template #sortByTemplate>\r\n <ng-template [ngTemplateOutlet]=\"column.headerTemplate\"></ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n\r\n <!-- Fake sorting columns -->\r\n <ng-template\r\n ngFor\r\n let-column\r\n [ngForOf]=\"sorting.fakeSortingColumns\">\r\n <ng-template fs-menu-item (click)=\"setSortableColumn(column)\">\r\n {{ column.title }}\r\n </ng-template>\r\n </ng-template>\r\n </fs-menu>\r\n\r\n <ng-template #sortedBy>\r\n <ng-container *ngIf=\"sorting.sortingColumn\">\r\n sorted by\r\n <ng-container *ngIf=\"sorting.sortingColumn.title; else sortByTemplate\">\r\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">{{ sorting.sortingColumn.title }}</a>,\r\n </ng-container>\r\n <ng-template #sortByTemplate>\r\n <a class=\"order-toggle\" [fsMenuTriggerFor]=\"orderColumnsMenu\">\r\n <ng-template [ngTemplateOutlet]=\"sorting.sortingColumn.headerTemplate\"></ng-template>\r\n </a>,\r\n </ng-template>\r\n <a class=\"order-toggle\" (click)=\"toggleDirection()\">{{ sorting.sortingColumn.fullNameDirection }}</a><!--\r\n --></ng-container><!--\r\n --></ng-template>\r\n </small> \r\n</div>\r\n", styles: [":host.hidden-mobile{display:none!important}:host.first-load .status{visibility:hidden}.order-toggle{white-space:nowrap}a{cursor:pointer}\n"] }]
|
|
5278
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { paging: [{
|
|
5073
5279
|
type: Input
|
|
5074
5280
|
}], sorting: [{
|
|
5075
5281
|
type: Input
|
|
@@ -5086,12 +5292,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
5086
5292
|
}] } });
|
|
5087
5293
|
|
|
5088
5294
|
class FsListLoaderComponent {
|
|
5089
|
-
|
|
5090
|
-
|
|
5091
|
-
|
|
5092
|
-
|
|
5093
|
-
|
|
5094
|
-
|
|
5295
|
+
placeholderWidths = [[], [], []];
|
|
5296
|
+
widths = [];
|
|
5297
|
+
columns;
|
|
5298
|
+
loaderLines;
|
|
5299
|
+
cols = [];
|
|
5300
|
+
rows = [];
|
|
5095
5301
|
ngOnInit() {
|
|
5096
5302
|
this.cols = this.columns > 5 ? this.columns.splice(0, 5) : this.columns;
|
|
5097
5303
|
const length = this.cols.length;
|
|
@@ -5109,12 +5315,12 @@ class FsListLoaderComponent {
|
|
|
5109
5315
|
this.rows = new Array(this.loaderLines);
|
|
5110
5316
|
}
|
|
5111
5317
|
}
|
|
5318
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5319
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsListLoaderComponent, selector: "fs-list-loader", inputs: { columns: "columns", loaderLines: "loaderLines" }, usesOnChanges: true, ngImport: i0, template: "<table>\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let col of cols; let column = index\" [width]=\"widths[column] + '%'\">\r\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"(placeholderWidths[0][column]/2) + '%'\"></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of rows; let index=index\">\r\n <td *ngFor=\"let col of cols; let column = index\">\r\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"placeholderWidths[index][column] + '%'\"></div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n", styles: ["table{width:100%;border-spacing:0}.fs-skeleton-placeholder{opacity:.5}:host ::ng-deep tbody tr:hover td{background:transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5112
5320
|
}
|
|
5113
|
-
|
|
5114
|
-
FsListLoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsListLoaderComponent, selector: "fs-list-loader", inputs: { columns: "columns", loaderLines: "loaderLines" }, usesOnChanges: true, ngImport: i0, template: "<table>\n <thead>\n <tr>\n <th *ngFor=\"let col of cols; let column = index\" [width]=\"widths[column] + '%'\">\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"(placeholderWidths[0][column]/2) + '%'\"></div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of rows; let index=index\">\n <td *ngFor=\"let col of cols; let column = index\">\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"placeholderWidths[index][column] + '%'\"></div>\n </td>\n </tr>\n </tbody>\n</table>\n", styles: ["table{width:100%;border-spacing:0}.fs-skeleton-placeholder{opacity:.5}:host ::ng-deep tbody tr:hover td{background:transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5115
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListLoaderComponent, decorators: [{
|
|
5321
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListLoaderComponent, decorators: [{
|
|
5116
5322
|
type: Component,
|
|
5117
|
-
args: [{ selector: 'fs-list-loader', changeDetection: ChangeDetectionStrategy.OnPush, template: "<table>\n <thead>\n <tr>\n <th *ngFor=\"let col of cols; let column = index\" [width]=\"widths[column] + '%'\">\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"(placeholderWidths[0][column]/2) + '%'\"></div>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of rows; let index=index\">\n <td *ngFor=\"let col of cols; let column = index\">\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"placeholderWidths[index][column] + '%'\"></div>\n </td>\n </tr>\n </tbody>\n</table>\n", styles: ["table{width:100%;border-spacing:0}.fs-skeleton-placeholder{opacity:.5}:host ::ng-deep tbody tr:hover td{background:transparent}\n"] }]
|
|
5323
|
+
args: [{ selector: 'fs-list-loader', changeDetection: ChangeDetectionStrategy.OnPush, template: "<table>\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let col of cols; let column = index\" [width]=\"widths[column] + '%'\">\r\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"(placeholderWidths[0][column]/2) + '%'\"></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of rows; let index=index\">\r\n <td *ngFor=\"let col of cols; let column = index\">\r\n <div class=\"fs-skeleton-placeholder\" [style.width]=\"placeholderWidths[index][column] + '%'\"></div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n", styles: ["table{width:100%;border-spacing:0}.fs-skeleton-placeholder{opacity:.5}:host ::ng-deep tbody tr:hover td{background:transparent}\n"] }]
|
|
5118
5324
|
}], propDecorators: { columns: [{
|
|
5119
5325
|
type: Input
|
|
5120
5326
|
}], loaderLines: [{
|
|
@@ -5122,9 +5328,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
5122
5328
|
}] } });
|
|
5123
5329
|
|
|
5124
5330
|
class FsPaginationComponent {
|
|
5331
|
+
_cdRef;
|
|
5332
|
+
pagination;
|
|
5333
|
+
rows;
|
|
5334
|
+
_destroy$ = new Subject();
|
|
5125
5335
|
constructor(_cdRef) {
|
|
5126
5336
|
this._cdRef = _cdRef;
|
|
5127
|
-
this._destroy$ = new Subject();
|
|
5128
5337
|
}
|
|
5129
5338
|
ngOnInit() {
|
|
5130
5339
|
merge(this.pagination.pageChanged$, this.pagination.pages$)
|
|
@@ -5134,45 +5343,77 @@ class FsPaginationComponent {
|
|
|
5134
5343
|
});
|
|
5135
5344
|
}
|
|
5136
5345
|
ngOnDestroy() {
|
|
5137
|
-
this._destroy$.next();
|
|
5346
|
+
this._destroy$.next(null);
|
|
5138
5347
|
this._destroy$.complete();
|
|
5139
5348
|
}
|
|
5349
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsPaginationComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
5350
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: { pagination: "pagination", rows: "rows" }, ngImport: i0, template: "<ng-container *ngIf=\"!pagination.loadMoreEnabled; else loadMoreButton\">\n <ng-container *ngIf=\"pagination?.pages\">\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"first\" [class.disabled]=\"!pagination.hasPrevPage\" (click)=\"pagination.goFirst()\">\n <i class=\"material-icons\">first_page</i>\n </a>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"previous\" [class.disabled]=\"!pagination.hasPrevPage\" (click)=\"pagination.goPrev()\">\n <i class=\"material-icons\">keyboard_arrow_left</i>\n </a>\n\n <div class=\"number\">\n {{ pagination.page | fsFormatNumber }} of {{ pagination.pages | fsFormatNumber }}\n </div>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"next\" [class.disabled]=\"!pagination.hasNextPage\" (click)=\"pagination.goNext()\">\n <i class=\"material-icons\">keyboard_arrow_right</i>\n </a>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"last\" [class.disabled]=\"!pagination.hasNextPage\" (click)=\"pagination.goLast()\">\n <i class=\"material-icons\">last_page</i>\n </a>\n </ng-container>\n</ng-container>\n\n<ng-template #loadMoreButton>\n <div class=\"fs-list-load-more\" *ngIf=\"pagination.hasNextPage\">\n <button \n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"pagination.goNext()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n</ng-template>\n", styles: [":host{display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%}a{text-align:center;color:#000000de;text-decoration:none;font-size:15px;cursor:pointer;display:flex}a:not(.page){padding:10px}a.disabled{pointer-events:none;cursor:default;color:#d8d8d8}.number{font-size:90%}.fs-list-load-more button{width:100%;margin-top:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i3$2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i4$1.FsFormatNumberPipe, name: "fsFormatNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5140
5351
|
}
|
|
5141
|
-
|
|
5142
|
-
FsPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: { pagination: "pagination", rows: "rows" }, ngImport: i0, template: "<ng-container *ngIf=\"!pagination.loadMoreEnabled; else loadMoreButton\">\n <ng-container *ngIf=\"pagination?.pages\">\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"first\" [class.disabled]=\"!pagination.hasPrevPage\" (click)=\"pagination.goFirst()\">\n <i class=\"material-icons\">first_page</i>\n </a>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"previous\" [class.disabled]=\"!pagination.hasPrevPage\" (click)=\"pagination.goPrev()\">\n <i class=\"material-icons\">keyboard_arrow_left</i>\n </a>\n\n <div class=\"number\">\n {{ pagination.page | fsFormatNumber }} of {{ pagination.pages | fsFormatNumber }}\n </div>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"next\" [class.disabled]=\"!pagination.hasNextPage\" (click)=\"pagination.goNext()\">\n <i class=\"material-icons\">keyboard_arrow_right</i>\n </a>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"last\" [class.disabled]=\"!pagination.hasNextPage\" (click)=\"pagination.goLast()\">\n <i class=\"material-icons\">last_page</i>\n </a>\n </ng-container>\n</ng-container>\n\n<ng-template #loadMoreButton>\n <div class=\"fs-list-load-more\" *ngIf=\"pagination.hasNextPage\">\n <button \n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"pagination.goNext()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n</ng-template>\n", styles: [":host{display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%}a{text-align:center;color:#000000de;text-decoration:none;font-size:15px;cursor:pointer;display:flex}a:not(.page){padding:10px}a.disabled{pointer-events:none;cursor:default;color:#d8d8d8}.number{font-size:90%}.fs-list-load-more button{width:100%;margin-top:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i3$2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i4$1.FsFormatNumberPipe, name: "fsFormatNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5143
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsPaginationComponent, decorators: [{
|
|
5352
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsPaginationComponent, decorators: [{
|
|
5144
5353
|
type: Component,
|
|
5145
5354
|
args: [{ selector: 'fs-list-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!pagination.loadMoreEnabled; else loadMoreButton\">\n <ng-container *ngIf=\"pagination?.pages\">\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"first\" [class.disabled]=\"!pagination.hasPrevPage\" (click)=\"pagination.goFirst()\">\n <i class=\"material-icons\">first_page</i>\n </a>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"previous\" [class.disabled]=\"!pagination.hasPrevPage\" (click)=\"pagination.goPrev()\">\n <i class=\"material-icons\">keyboard_arrow_left</i>\n </a>\n\n <div class=\"number\">\n {{ pagination.page | fsFormatNumber }} of {{ pagination.pages | fsFormatNumber }}\n </div>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"next\" [class.disabled]=\"!pagination.hasNextPage\" (click)=\"pagination.goNext()\">\n <i class=\"material-icons\">keyboard_arrow_right</i>\n </a>\n\n <a matRipple [matRippleRadius]=\"15\" [matRippleCentered]=\"true\" class=\"last\" [class.disabled]=\"!pagination.hasNextPage\" (click)=\"pagination.goLast()\">\n <i class=\"material-icons\">last_page</i>\n </a>\n </ng-container>\n</ng-container>\n\n<ng-template #loadMoreButton>\n <div class=\"fs-list-load-more\" *ngIf=\"pagination.hasNextPage\">\n <button \n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"pagination.goNext()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n</ng-template>\n", styles: [":host{display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%}a{text-align:center;color:#000000de;text-decoration:none;font-size:15px;cursor:pointer;display:flex}a:not(.page){padding:10px}a.disabled{pointer-events:none;cursor:default;color:#d8d8d8}.number{font-size:90%}.fs-list-load-more button{width:100%;margin-top:10px}\n"] }]
|
|
5146
|
-
}], ctorParameters:
|
|
5355
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { pagination: [{
|
|
5147
5356
|
type: Input
|
|
5148
5357
|
}], rows: [{
|
|
5149
5358
|
type: Input
|
|
5150
5359
|
}] } });
|
|
5151
5360
|
|
|
5152
5361
|
class FsListContentInitDirective {
|
|
5362
|
+
contentInitCallback;
|
|
5153
5363
|
constructor() { }
|
|
5154
5364
|
ngAfterViewInit() {
|
|
5155
5365
|
if (this.contentInitCallback) {
|
|
5156
5366
|
this.contentInitCallback();
|
|
5157
5367
|
}
|
|
5158
5368
|
}
|
|
5369
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListContentInitDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5370
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListContentInitDirective, selector: "[fsListContentInit]", inputs: { contentInitCallback: ["fsListContentInit", "contentInitCallback"] }, ngImport: i0 });
|
|
5159
5371
|
}
|
|
5160
|
-
|
|
5161
|
-
FsListContentInitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListContentInitDirective, selector: "[fsListContentInit]", inputs: { contentInitCallback: ["fsListContentInit", "contentInitCallback"] }, ngImport: i0 });
|
|
5162
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListContentInitDirective, decorators: [{
|
|
5372
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListContentInitDirective, decorators: [{
|
|
5163
5373
|
type: Directive,
|
|
5164
5374
|
args: [{
|
|
5165
5375
|
selector: '[fsListContentInit]'
|
|
5166
5376
|
}]
|
|
5167
|
-
}], ctorParameters:
|
|
5377
|
+
}], ctorParameters: () => [], propDecorators: { contentInitCallback: [{
|
|
5168
5378
|
type: Input,
|
|
5169
5379
|
args: ['fsListContentInit']
|
|
5170
5380
|
}] } });
|
|
5171
5381
|
|
|
5172
5382
|
class FsListComponent {
|
|
5383
|
+
reorderController;
|
|
5384
|
+
_defaultOptions;
|
|
5385
|
+
_dialogRef;
|
|
5386
|
+
_drawerRef;
|
|
5387
|
+
_el;
|
|
5388
|
+
_selectionDialog;
|
|
5389
|
+
_dialog;
|
|
5390
|
+
_cdRef;
|
|
5391
|
+
_groupExpandNotifier;
|
|
5392
|
+
_router;
|
|
5393
|
+
_route;
|
|
5394
|
+
_persistance;
|
|
5395
|
+
_location;
|
|
5396
|
+
classFsList = true;
|
|
5397
|
+
rowHoverHighlight;
|
|
5173
5398
|
set config(config) {
|
|
5174
5399
|
this._initWithConfig(config);
|
|
5175
5400
|
}
|
|
5401
|
+
loaderLines = 3;
|
|
5402
|
+
filtersReady = new EventEmitter();
|
|
5403
|
+
headingTemplate;
|
|
5404
|
+
headingContainerTemplate;
|
|
5405
|
+
subheadingTemplate;
|
|
5406
|
+
body;
|
|
5407
|
+
list;
|
|
5408
|
+
keywordVisible = true;
|
|
5409
|
+
// Event will fired if action remove: true will clicked
|
|
5410
|
+
rowRemoved = new EventEmitter();
|
|
5411
|
+
firstLoad = true;
|
|
5412
|
+
_listColumnDirectives;
|
|
5413
|
+
_filterRef;
|
|
5414
|
+
_filterParamsReady = false;
|
|
5415
|
+
_inDialog;
|
|
5416
|
+
_destroy = new Subject();
|
|
5176
5417
|
set filterReference(component) {
|
|
5177
5418
|
this._filterRef = component;
|
|
5178
5419
|
this.list.actions.setFilterRef(component);
|
|
@@ -5207,16 +5448,7 @@ class FsListComponent {
|
|
|
5207
5448
|
this._route = _route;
|
|
5208
5449
|
this._persistance = _persistance;
|
|
5209
5450
|
this._location = _location;
|
|
5210
|
-
this.classFsList = true;
|
|
5211
|
-
this.loaderLines = 3;
|
|
5212
|
-
this.filtersReady = new EventEmitter();
|
|
5213
|
-
this.keywordVisible = true;
|
|
5214
|
-
// Event will fired if action remove: true will clicked
|
|
5215
|
-
this.rowRemoved = new EventEmitter();
|
|
5216
|
-
this.firstLoad = true;
|
|
5217
|
-
this._filterParamsReady = false;
|
|
5218
5451
|
this._inDialog = !!this._dialogRef || !!this._drawerRef;
|
|
5219
|
-
this._destroy = new Subject();
|
|
5220
5452
|
}
|
|
5221
5453
|
/**
|
|
5222
5454
|
* Return reference for filter
|
|
@@ -5265,7 +5497,7 @@ class FsListComponent {
|
|
|
5265
5497
|
if (this.list) {
|
|
5266
5498
|
this.list.destroy();
|
|
5267
5499
|
}
|
|
5268
|
-
this._destroy.next();
|
|
5500
|
+
this._destroy.next(null);
|
|
5269
5501
|
this._destroy.complete();
|
|
5270
5502
|
}
|
|
5271
5503
|
nextPage() {
|
|
@@ -5329,7 +5561,7 @@ class FsListComponent {
|
|
|
5329
5561
|
}
|
|
5330
5562
|
}
|
|
5331
5563
|
filterReady() {
|
|
5332
|
-
this.list.filtersReady$.next();
|
|
5564
|
+
this.list.filtersReady$.next(null);
|
|
5333
5565
|
this._filterParamsReady = true;
|
|
5334
5566
|
this._emitFiltersReadyEvent();
|
|
5335
5567
|
}
|
|
@@ -5455,21 +5687,21 @@ class FsListComponent {
|
|
|
5455
5687
|
const namespace = getNormalizedPath(this._location);
|
|
5456
5688
|
this._persistance.setConfig(persistConfig, namespace, this._inDialog);
|
|
5457
5689
|
}
|
|
5690
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListComponent, deps: [{ token: ReorderController }, { token: FS_LIST_DEFAULT_CONFIG, optional: true }, { token: i1$2.MatDialogRef, optional: true }, { token: i3$3.DrawerRef, optional: true }, { token: i0.ElementRef }, { token: i4$2.SelectionDialog }, { token: i1$2.MatDialog }, { token: i0.ChangeDetectorRef }, { token: GroupExpandNotifierService }, { token: i6.Router }, { token: i6.ActivatedRoute }, { token: PersistanceController }, { token: i1.Location }], target: i0.ɵɵFactoryTarget.Component });
|
|
5691
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsListComponent, selector: "fs-list", inputs: { config: "config", loaderLines: "loaderLines" }, outputs: { filtersReady: "filtersReady" }, host: { properties: { "class.fs-list": "this.classFsList", "class.fs-list-row-highlight": "this.rowHoverHighlight" } }, providers: [
|
|
5692
|
+
GroupExpandNotifierService,
|
|
5693
|
+
PersistanceController,
|
|
5694
|
+
ReorderController,
|
|
5695
|
+
], queries: [{ propertyName: "headingTemplate", first: true, predicate: FsListHeadingDirective, descendants: true, read: TemplateRef }, { propertyName: "headingContainerTemplate", first: true, predicate: FsListHeadingContainerDirective, descendants: true, read: TemplateRef }, { propertyName: "subheadingTemplate", first: true, predicate: FsListSubheadingDirective, descendants: true, read: TemplateRef }, { propertyName: "_emptyStateTemplate", first: true, predicate: FsListEmptyStateDirective, descendants: true, read: TemplateRef }, { propertyName: "columnTemplates", predicate: FsListColumnDirective }], viewQueries: [{ propertyName: "body", first: true, predicate: FsBodyComponent, descendants: true }, { propertyName: "filterReference", first: true, predicate: FilterComponent, descendants: true }], ngImport: i0, template: "<div class=\"fs-list-container\"\n [ngClass]=\"{\n 'has-filter-keyword': hasFilterKeyword,\n 'has-filters': list.filterConfig?.items.length,\n 'has-heading': list.heading || headingTemplate,\n 'has-status': hasStatus,\n 'has-chips': list.chips,\n 'has-actions': list.actions.hasActions,\n 'first-load': firstLoad,\n 'loading': list.loading$ | async\n }\">\n <ng-template [ngTemplateOutlet]=\"listContainerContent\"></ng-template>\n</div>\n\n<ng-template #listContainerContent>\n <ng-container *ngIf=\"list.dataController.visibleRows$ | async as listData\">\n <div class=\"fs-list-header-container\">\n <div\n class=\"fs-list-header\"\n [ngClass]=\"{ 'no-wrap': reorderController.manualReorderActivated || !list.filterConfig?.items.length }\">\n <ng-container\n *ngIf=\"hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <fs-filter\n class=\"fs-list-filter\"\n *ngIf=\"list.filterConfig\"\n [filter]=\"list.filterConfig\"\n [showSortBy]=\"!list.status\"\n [showFilterInput]=\"list.filterInput\"\n (ready)=\"filterReady()\">\n <ng-template fsFilterStatusBar>\n <ng-container\n *ngIf=\"!hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <ng-container *ngIf=\"hasStatus\">\n <fs-list-status\n class=\"fs-list-status\"\n [ngClass]=\"{ 'hidden-mobile': !list.status }\"\n [rows]=\"listData\"\n [sorting]=\"list.sorting\"\n [paging]=\"list.paging\"\n [firstLoad]=\"firstLoad\">\n </fs-list-status>\n </ng-container>\n </ng-template>\n </fs-filter>\n </div>\n </div>\n\n <ng-content select=\"[fs-list-content]\"></ng-content>\n\n <!-- Table implementation -->\n <div class=\"fs-list-table-container\">\n <ng-container *ngIf=\"!firstLoad && listData.length > 0 && !list.emptyStateEnabled\">\n <table \n class=\"fs-list-table\" \n role=\"grid\" \n [fsListContentInit]=\"list.afterContentInit\" \n [ngClass]=\"{\n 'style-card': list.style === 'card',\n 'style-basic': list.style === 'basic',\n 'style-line': (list.style || 'line') === 'line'\n }\">\n <thead\n fs-list-head\n class=\"fs-list-head\"\n role=\"rowgroup\"\n *ngIf=\"list.columns.hasHeader\"\n [ngClass]=\"list.columns.theadClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [sorting]=\"list.sorting\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </thead>\n\n <tbody\n fs-list-body\n fsListDraggableList\n class=\"fs-list-body\"\n role=\"rowgroup\"\n [class.disabled]=\"!!(reorderController.reorderDisabled$ | async)\"\n [rows]=\"listData\"\n [rowActionsRaw]=\"list.rowActionsRaw\"\n [groupActionsRaw]=\"list.groupActionsRaw\"\n [hasRowActions]=\"list.hasRowActions\"\n [rowEvents]=\"list.rowEvents\"\n [rowClass]=\"list.rowClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [restoreMode]=\"list.restoreMode\"\n [selection]=\"list.selection\"\n [rowRemoved]=\"rowRemoved\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\"\n [reorderMultiple]=\"reorderController.multiple\">\n </tbody>\n\n <tfoot\n fs-list-footer\n class=\"fs-list-footer\"\n *ngIf=\"list.columns.hasFooter\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </tfoot>\n </table>\n </ng-container>\n <fs-list-loader\n *ngIf=\"firstLoad\"\n [columns]=\"list.columns.columns\"\n [loaderLines]=\"loaderLines\">\n </fs-list-loader>\n </div>\n\n <fs-list-pagination\n *ngIf=\"paginatorVisible\"\n class=\"fs-list-pagination\"\n [rows]=\"listData\"\n [pagination]=\"list.paging\">\n </fs-list-pagination>\n\n <ng-container *ngIf=\"!firstLoad\">\n <div\n *ngIf=\"listData.length === 0\"\n class=\"fs-list-no-results-container\">\n <div\n *ngIf=\"list.noResults?.message && !list.emptyStateEnabled\"\n class=\"fs-list-no-results\">\n {{ list.noResults?.message }}\n </div>\n <ng-container *ngIf=\"list.emptyStateEnabled\">\n <ng-template [ngTemplateOutlet]=\"list.emptyStateTemplate\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #heading>\n <div class=\"heading-container\" *ngIf=\"headingContainerTemplate || list.heading || list.subheading || headingTemplate\">\n <ng-container *ngIf=\"headingContainerTemplate; else headingContainer\">\n <ng-container\n [ngTemplateOutlet]=\"headingContainerTemplate\"\n [ngTemplateOutletContext]=\"{ template: headingContainer }\">\n </ng-container>\n </ng-container>\n <ng-template #headingContainer>\n <h2 class=\"heading\" *ngIf=\"list.heading || headingTemplate\">\n {{list.heading}}\n <ng-container [ngTemplateOutlet]=\"headingTemplate\"></ng-container>\n </h2>\n <div class=\"small subheading\" *ngIf=\"list.subheading || subheadingTemplate\">\n {{list.subheading}}\n <ng-container [ngTemplateOutlet]=\"subheadingTemplate\"></ng-container>\n </div>\n </ng-template>\n </div>\n</ng-template>\n", styles: [":host{display:block;width:100%}:host ::ng-deep .fs-list-swap-restricted{opacity:.5}:host ::ng-deep .fs-list-no-drop{cursor:no-drop}:host ::ng-deep .hidden{display:none}:host ::ng-deep .multiple-selection{background-color:#2196f380}:host ::ng-deep .multiple-selection ::ng-deep .fs-list-col{background-color:#2196f380}@media print{:host ::ng-deep .fs-list-row-group{page-break-after:avoid}:host ::ng-deep .fs-list-row-group-child{page-break-before:avoid}:host ::ng-deep .fs-list-row-group-footer{page-break-before:avoid}}.fs-list-container{width:100%}.fs-list-container:not(.has-filters):not(.has-actions):not(.has-heading) .fs-list-header-container{display:none}.fs-list-container:not(.has-filter-keyword) .fs-list-header{display:flex;margin-bottom:4px}.fs-list-container:not(.has-filter-keyword) .fs-list-header .heading-container{flex:1}.fs-list-container:not(.has-filter-keyword) .fs-list-header fs-filter{display:flex}.fs-list-container.has-filters .heading-container{margin-bottom:4px}.fs-list-container.loading .fs-list-status,.fs-list-container.loading .fs-list-body,.fs-list-container.loading .fs-list-head,.fs-list-container.loading .fs-list-footer,.fs-list-container.loading fs-list-pagination,.fs-list-container.loading ::ng-deep fs-filter-chips,.fs-list-container.loading .fs-list-no-results-container,.fs-list-container.first-load .fs-list-status,.fs-list-container.first-load .fs-list-body,.fs-list-container.first-load .fs-list-head,.fs-list-container.first-load .fs-list-footer,.fs-list-container.first-load fs-list-pagination,.fs-list-container.first-load ::ng-deep fs-filter-chips,.fs-list-container.first-load .fs-list-no-results-container{opacity:.4;pointer-events:none}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip{color:transparent}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip .remove{visibility:hidden}.fs-list-container.has-actions .fs-list-actions{margin-left:5px}.fs-list-container .fs-list-header .heading-container{display:flex;flex-direction:column;justify-content:center}.fs-list-container .fs-list-header .heading{margin:0}.fs-list-container .fs-list-header h2+.subheading{margin:2px 0 0}.fs-list-container .fs-list-filter{margin-bottom:0;position:initial!important;display:block;width:100%}.fs-list-container .fs-list-no-results-container .fs-list-no-results{text-align:center;color:#999;padding:10px 0}.fs-list-container .fs-list-table-container{width:100%;overflow:auto}::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 tfoot td{padding:8px}::ng-deep .fs-list-table.style-line tbody .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-col{box-sizing:border-box;border-top:1px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:first-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:first-child .fs-list-col{border-top:2px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:last-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:last-child .fs-list-col{border-bottom:2px solid #ddd}::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-bottom:2px solid #ddd}::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 .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-preview-block{position:fixed;height:30px;width:200px;background:gray;display:flex;justify-content:center;align-items:center;z-index:1000;box-shadow:2px 2px 2px #9e9e9ea6;border-radius:6px}::ng-deep .reorder-in-progress{-webkit-user-select:none;user-select:none}@media only screen and (max-width: 600px){::ng-deep .fs-list-filter .inline-actions{top:initial!important;position:initial!important}::ng-deep .fs-list-filter .inline-actions .action-filter{margin-bottom:0!important}::ng-deep .fs-list-header .filter-input-field .mat-form-field-wrapper{padding:0!important}::ng-deep .fs-list-header.has-filters{flex-flow:row wrap}}@media only screen and (max-width: 768px){::ng-deep .show-mobile{display:inline-block!important}::ng-deep .fs-list-actions .action-button{display:none}::ng-deep .row-inline-action.mobile-hide{display:none}::ng-deep .hidden-mobile-menu-action{display:block!important}}:host(.fs-list-row-highlight) ::ng-deep tbody .fs-list-row:hover .fs-list-col{background-color:#f6f6f6}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2$1.FilterComponent, selector: "fs-filter", inputs: ["config", "filter", "showSortBy", "showFilterInput"], outputs: ["closed", "opened", "ready"] }, { kind: "directive", type: i2$1.FilterStatusBarDirective, selector: "[fsFilterStatusBar]" }, { kind: "component", type: FsStatusComponent, selector: "fs-list-status", inputs: ["paging", "sorting", "rows", "firstLoad"] }, { kind: "component", type: FsListLoaderComponent, selector: "fs-list-loader", inputs: ["columns", "loaderLines"] }, { kind: "component", type: FsHeadComponent, selector: "[fs-list-head]", inputs: ["sorting", "columns", "hasRowActions", "selection", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy"] }, { kind: "component", type: FsBodyComponent, selector: "[fs-list-body]", inputs: ["rows", "columns", "hasFooter", "rowActionsRaw", "groupActionsRaw", "rowEvents", "rowClass", "hasRowActions", "selection", "restoreMode", "rowRemoved", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy", "reorderMultiple"] }, { kind: "component", type: FsFooterComponent, selector: "[fs-list-footer]", inputs: ["hasRowActions", "columns", "selection", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy"] }, { kind: "component", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: ["pagination", "rows"] }, { kind: "directive", type: FsListFooterDirective, selector: "[fs-list-footer]", inputs: ["colspan", "align", "class"] }, { kind: "directive", type: FsListDraggableListDirective, selector: "[fsListDraggableList]", inputs: ["rows"] }, { kind: "directive", type: FsListContentInitDirective, selector: "[fsListContentInit]", inputs: ["fsListContentInit"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5458
5696
|
}
|
|
5459
|
-
|
|
5460
|
-
FsListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsListComponent, selector: "fs-list", inputs: { config: "config", loaderLines: "loaderLines" }, outputs: { filtersReady: "filtersReady" }, host: { properties: { "class.fs-list": "this.classFsList", "class.fs-list-row-highlight": "this.rowHoverHighlight" } }, providers: [
|
|
5461
|
-
GroupExpandNotifierService,
|
|
5462
|
-
PersistanceController,
|
|
5463
|
-
ReorderController,
|
|
5464
|
-
], queries: [{ propertyName: "headingTemplate", first: true, predicate: FsListHeadingDirective, descendants: true, read: TemplateRef }, { propertyName: "headingContainerTemplate", first: true, predicate: FsListHeadingContainerDirective, descendants: true, read: TemplateRef }, { propertyName: "subheadingTemplate", first: true, predicate: FsListSubheadingDirective, descendants: true, read: TemplateRef }, { propertyName: "_emptyStateTemplate", first: true, predicate: FsListEmptyStateDirective, descendants: true, read: TemplateRef }, { propertyName: "columnTemplates", predicate: FsListColumnDirective }], viewQueries: [{ propertyName: "body", first: true, predicate: FsBodyComponent, descendants: true }, { propertyName: "filterReference", first: true, predicate: FilterComponent, descendants: true }], ngImport: i0, template: "<div class=\"fs-list-container\"\n [ngClass]=\"{\n 'has-filter-keyword': hasFilterKeyword,\n 'has-filters': list.filterConfig?.items.length,\n 'has-heading': list.heading || headingTemplate,\n 'has-status': hasStatus,\n 'has-chips': list.chips,\n 'has-actions': list.actions.hasActions,\n 'first-load': firstLoad,\n 'loading': list.loading$ | async\n }\">\n <ng-template [ngTemplateOutlet]=\"listContainerContent\"></ng-template>\n</div>\n\n<ng-template #listContainerContent>\n <ng-container *ngIf=\"list.dataController.visibleRows$ | async as listData\">\n <div class=\"fs-list-header-container\">\n <div\n class=\"fs-list-header\"\n [ngClass]=\"{ 'no-wrap': reorderController.manualReorderActivated || !list.filterConfig?.items.length }\">\n <ng-container\n *ngIf=\"hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <fs-filter\n class=\"fs-list-filter\"\n *ngIf=\"list.filterConfig\"\n [filter]=\"list.filterConfig\"\n [showSortBy]=\"!list.status\"\n [showFilterInput]=\"list.filterInput\"\n (ready)=\"filterReady()\">\n <ng-template fsFilterStatusBar>\n <ng-container\n *ngIf=\"!hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <ng-container *ngIf=\"hasStatus\">\n <fs-list-status\n class=\"fs-list-status\"\n [ngClass]=\"{ 'hidden-mobile': !list.status }\"\n [rows]=\"listData\"\n [sorting]=\"list.sorting\"\n [paging]=\"list.paging\"\n [firstLoad]=\"firstLoad\">\n </fs-list-status>\n </ng-container>\n </ng-template>\n </fs-filter>\n </div>\n </div>\n\n <ng-content select=\"[fs-list-content]\"></ng-content>\n\n <!-- Table implementation -->\n <div class=\"fs-list-table-container\">\n <ng-container *ngIf=\"!firstLoad && listData.length > 0 && !list.emptyStateEnabled\">\n <table \n class=\"fs-list-table\" \n role=\"grid\" \n [fsListContentInit]=\"list.afterContentInit\" \n [ngClass]=\"{\n 'style-card': list.style === 'card',\n 'style-basic': list.style === 'basic',\n 'style-line': (list.style || 'line') === 'line'\n }\">\n <thead\n fs-list-head\n class=\"fs-list-head\"\n role=\"rowgroup\"\n *ngIf=\"list.columns.hasHeader\"\n [ngClass]=\"list.columns.theadClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [sorting]=\"list.sorting\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </thead>\n\n <tbody\n fs-list-body\n fsListDraggableList\n class=\"fs-list-body\"\n role=\"rowgroup\"\n [class.disabled]=\"!!(reorderController.reorderDisabled$ | async)\"\n [rows]=\"listData\"\n [rowActionsRaw]=\"list.rowActionsRaw\"\n [groupActionsRaw]=\"list.groupActionsRaw\"\n [hasRowActions]=\"list.hasRowActions\"\n [rowEvents]=\"list.rowEvents\"\n [rowClass]=\"list.rowClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [restoreMode]=\"list.restoreMode\"\n [selection]=\"list.selection\"\n [rowRemoved]=\"rowRemoved\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\"\n [reorderMultiple]=\"reorderController.multiple\">\n </tbody>\n\n <tfoot\n fs-list-footer\n class=\"fs-list-footer\"\n *ngIf=\"list.columns.hasFooter\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </tfoot>\n </table>\n </ng-container>\n <fs-list-loader\n *ngIf=\"firstLoad\"\n [columns]=\"list.columns.columns\"\n [loaderLines]=\"loaderLines\">\n </fs-list-loader>\n </div>\n\n <fs-list-pagination\n *ngIf=\"paginatorVisible\"\n class=\"fs-list-pagination\"\n [rows]=\"listData\"\n [pagination]=\"list.paging\">\n </fs-list-pagination>\n\n <ng-container *ngIf=\"!firstLoad\">\n <div\n *ngIf=\"listData.length === 0\"\n class=\"fs-list-no-results-container\">\n <div\n *ngIf=\"list.noResults?.message && !list.emptyStateEnabled\"\n class=\"fs-list-no-results\">\n {{ list.noResults?.message }}\n </div>\n <ng-container *ngIf=\"list.emptyStateEnabled\">\n <ng-template [ngTemplateOutlet]=\"list.emptyStateTemplate\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #heading>\n <div class=\"heading-container\" *ngIf=\"headingContainerTemplate || list.heading || list.subheading || headingTemplate\">\n <ng-container *ngIf=\"headingContainerTemplate; else headingContainer\">\n <ng-container\n [ngTemplateOutlet]=\"headingContainerTemplate\"\n [ngTemplateOutletContext]=\"{ template: headingContainer }\">\n </ng-container>\n </ng-container>\n <ng-template #headingContainer>\n <h2 class=\"heading\" *ngIf=\"list.heading || headingTemplate\">\n {{list.heading}}\n <ng-container [ngTemplateOutlet]=\"headingTemplate\"></ng-container>\n </h2>\n <div class=\"small subheading\" *ngIf=\"list.subheading || subheadingTemplate\">\n {{list.subheading}}\n <ng-container [ngTemplateOutlet]=\"subheadingTemplate\"></ng-container>\n </div>\n </ng-template>\n </div>\n</ng-template>\n", styles: [":host{display:block;width:100%}:host ::ng-deep .fs-list-swap-restricted{opacity:.5}:host ::ng-deep .fs-list-no-drop{cursor:no-drop}:host ::ng-deep .hidden{display:none}:host ::ng-deep .multiple-selection{background-color:#2196f380}:host ::ng-deep .multiple-selection ::ng-deep .fs-list-col{background-color:#2196f380}@media print{:host ::ng-deep .fs-list-row-group{page-break-after:avoid}:host ::ng-deep .fs-list-row-group-child{page-break-before:avoid}:host ::ng-deep .fs-list-row-group-footer{page-break-before:avoid}}.fs-list-container{width:100%}.fs-list-container:not(.has-filters):not(.has-actions):not(.has-heading) .fs-list-header-container{display:none}.fs-list-container:not(.has-filter-keyword) .fs-list-header{display:flex;margin-bottom:4px}.fs-list-container:not(.has-filter-keyword) .fs-list-header .heading-container{flex:1}.fs-list-container:not(.has-filter-keyword) .fs-list-header fs-filter{display:flex}.fs-list-container.has-filters .heading-container{margin-bottom:4px}.fs-list-container.loading .fs-list-status,.fs-list-container.loading .fs-list-body,.fs-list-container.loading .fs-list-head,.fs-list-container.loading .fs-list-footer,.fs-list-container.loading fs-list-pagination,.fs-list-container.loading ::ng-deep fs-filter-chips,.fs-list-container.loading .fs-list-no-results-container,.fs-list-container.first-load .fs-list-status,.fs-list-container.first-load .fs-list-body,.fs-list-container.first-load .fs-list-head,.fs-list-container.first-load .fs-list-footer,.fs-list-container.first-load fs-list-pagination,.fs-list-container.first-load ::ng-deep fs-filter-chips,.fs-list-container.first-load .fs-list-no-results-container{opacity:.4;pointer-events:none}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip{color:transparent}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip .remove{visibility:hidden}.fs-list-container.has-actions .fs-list-actions{margin-left:5px}.fs-list-container .fs-list-header .heading-container{display:flex;flex-direction:column;justify-content:center}.fs-list-container .fs-list-header .heading{margin:0}.fs-list-container .fs-list-header h2+.subheading{margin:2px 0 0}.fs-list-container .fs-list-filter{margin-bottom:0;position:initial!important;display:block;width:100%}.fs-list-container .fs-list-no-results-container .fs-list-no-results{text-align:center;color:#999;padding:10px 0}.fs-list-container .fs-list-table-container{width:100%;overflow:auto}::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 tfoot td{padding:8px}::ng-deep .fs-list-table.style-line tbody .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-col{box-sizing:border-box;border-top:1px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:first-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:first-child .fs-list-col{border-top:2px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:last-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:last-child .fs-list-col{border-bottom:2px solid #ddd}::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-bottom:2px solid #ddd}::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 .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-preview-block{position:fixed;height:30px;width:200px;background:grey;display:flex;justify-content:center;align-items:center;z-index:1000;box-shadow:2px 2px 2px #9e9e9ea6;border-radius:6px}::ng-deep .reorder-in-progress{-webkit-user-select:none;user-select:none}@media only screen and (max-width: 600px){::ng-deep .fs-list-filter .inline-actions{top:initial!important;position:initial!important}::ng-deep .fs-list-filter .inline-actions .action-filter{margin-bottom:0!important}::ng-deep .fs-list-header .filter-input-field .mat-form-field-wrapper{padding:0!important}::ng-deep .fs-list-header.has-filters{flex-flow:row wrap}}@media only screen and (max-width: 768px){::ng-deep .show-mobile{display:inline-block!important}::ng-deep .fs-list-actions .action-button{display:none}::ng-deep .row-inline-action.mobile-hide{display:none}::ng-deep .hidden-mobile-menu-action{display:block!important}}:host(.fs-list-row-highlight) ::ng-deep tbody .fs-list-row:hover .fs-list-col{background-color:#f6f6f6}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2$1.FilterComponent, selector: "fs-filter", inputs: ["config", "filter", "showSortBy", "showFilterInput"], outputs: ["closed", "opened", "ready"] }, { kind: "directive", type: i2$1.FilterStatusBarDirective, selector: "[fsFilterStatusBar]" }, { kind: "component", type: FsStatusComponent, selector: "fs-list-status", inputs: ["paging", "sorting", "rows", "firstLoad"] }, { kind: "component", type: FsListLoaderComponent, selector: "fs-list-loader", inputs: ["columns", "loaderLines"] }, { kind: "component", type: FsHeadComponent, selector: "[fs-list-head]", inputs: ["sorting", "columns", "hasRowActions", "selection", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy"] }, { kind: "component", type: FsBodyComponent, selector: "[fs-list-body]", inputs: ["rows", "columns", "hasFooter", "rowActionsRaw", "groupActionsRaw", "rowEvents", "rowClass", "hasRowActions", "selection", "restoreMode", "rowRemoved", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy", "reorderMultiple"] }, { kind: "component", type: FsFooterComponent, selector: "[fs-list-footer]", inputs: ["hasRowActions", "columns", "selection", "activeFiltersCount", "reorderEnabled", "reorderPosition", "reorderStrategy"] }, { kind: "component", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: ["pagination", "rows"] }, { kind: "directive", type: FsListFooterDirective, selector: "[fs-list-footer]", inputs: ["colspan", "align", "class"] }, { kind: "directive", type: FsListDraggableListDirective, selector: "[fsListDraggableList]", inputs: ["rows"] }, { kind: "directive", type: FsListContentInitDirective, selector: "[fsListContentInit]", inputs: ["fsListContentInit"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5465
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListComponent, decorators: [{
|
|
5697
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListComponent, decorators: [{
|
|
5466
5698
|
type: Component,
|
|
5467
5699
|
args: [{ selector: 'fs-list', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
5468
5700
|
GroupExpandNotifierService,
|
|
5469
5701
|
PersistanceController,
|
|
5470
5702
|
ReorderController,
|
|
5471
|
-
], template: "<div class=\"fs-list-container\"\n [ngClass]=\"{\n 'has-filter-keyword': hasFilterKeyword,\n 'has-filters': list.filterConfig?.items.length,\n 'has-heading': list.heading || headingTemplate,\n 'has-status': hasStatus,\n 'has-chips': list.chips,\n 'has-actions': list.actions.hasActions,\n 'first-load': firstLoad,\n 'loading': list.loading$ | async\n }\">\n <ng-template [ngTemplateOutlet]=\"listContainerContent\"></ng-template>\n</div>\n\n<ng-template #listContainerContent>\n <ng-container *ngIf=\"list.dataController.visibleRows$ | async as listData\">\n <div class=\"fs-list-header-container\">\n <div\n class=\"fs-list-header\"\n [ngClass]=\"{ 'no-wrap': reorderController.manualReorderActivated || !list.filterConfig?.items.length }\">\n <ng-container\n *ngIf=\"hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <fs-filter\n class=\"fs-list-filter\"\n *ngIf=\"list.filterConfig\"\n [filter]=\"list.filterConfig\"\n [showSortBy]=\"!list.status\"\n [showFilterInput]=\"list.filterInput\"\n (ready)=\"filterReady()\">\n <ng-template fsFilterStatusBar>\n <ng-container\n *ngIf=\"!hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <ng-container *ngIf=\"hasStatus\">\n <fs-list-status\n class=\"fs-list-status\"\n [ngClass]=\"{ 'hidden-mobile': !list.status }\"\n [rows]=\"listData\"\n [sorting]=\"list.sorting\"\n [paging]=\"list.paging\"\n [firstLoad]=\"firstLoad\">\n </fs-list-status>\n </ng-container>\n </ng-template>\n </fs-filter>\n </div>\n </div>\n\n <ng-content select=\"[fs-list-content]\"></ng-content>\n\n <!-- Table implementation -->\n <div class=\"fs-list-table-container\">\n <ng-container *ngIf=\"!firstLoad && listData.length > 0 && !list.emptyStateEnabled\">\n <table \n class=\"fs-list-table\" \n role=\"grid\" \n [fsListContentInit]=\"list.afterContentInit\" \n [ngClass]=\"{\n 'style-card': list.style === 'card',\n 'style-basic': list.style === 'basic',\n 'style-line': (list.style || 'line') === 'line'\n }\">\n <thead\n fs-list-head\n class=\"fs-list-head\"\n role=\"rowgroup\"\n *ngIf=\"list.columns.hasHeader\"\n [ngClass]=\"list.columns.theadClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [sorting]=\"list.sorting\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </thead>\n\n <tbody\n fs-list-body\n fsListDraggableList\n class=\"fs-list-body\"\n role=\"rowgroup\"\n [class.disabled]=\"!!(reorderController.reorderDisabled$ | async)\"\n [rows]=\"listData\"\n [rowActionsRaw]=\"list.rowActionsRaw\"\n [groupActionsRaw]=\"list.groupActionsRaw\"\n [hasRowActions]=\"list.hasRowActions\"\n [rowEvents]=\"list.rowEvents\"\n [rowClass]=\"list.rowClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [restoreMode]=\"list.restoreMode\"\n [selection]=\"list.selection\"\n [rowRemoved]=\"rowRemoved\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\"\n [reorderMultiple]=\"reorderController.multiple\">\n </tbody>\n\n <tfoot\n fs-list-footer\n class=\"fs-list-footer\"\n *ngIf=\"list.columns.hasFooter\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </tfoot>\n </table>\n </ng-container>\n <fs-list-loader\n *ngIf=\"firstLoad\"\n [columns]=\"list.columns.columns\"\n [loaderLines]=\"loaderLines\">\n </fs-list-loader>\n </div>\n\n <fs-list-pagination\n *ngIf=\"paginatorVisible\"\n class=\"fs-list-pagination\"\n [rows]=\"listData\"\n [pagination]=\"list.paging\">\n </fs-list-pagination>\n\n <ng-container *ngIf=\"!firstLoad\">\n <div\n *ngIf=\"listData.length === 0\"\n class=\"fs-list-no-results-container\">\n <div\n *ngIf=\"list.noResults?.message && !list.emptyStateEnabled\"\n class=\"fs-list-no-results\">\n {{ list.noResults?.message }}\n </div>\n <ng-container *ngIf=\"list.emptyStateEnabled\">\n <ng-template [ngTemplateOutlet]=\"list.emptyStateTemplate\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #heading>\n <div class=\"heading-container\" *ngIf=\"headingContainerTemplate || list.heading || list.subheading || headingTemplate\">\n <ng-container *ngIf=\"headingContainerTemplate; else headingContainer\">\n <ng-container\n [ngTemplateOutlet]=\"headingContainerTemplate\"\n [ngTemplateOutletContext]=\"{ template: headingContainer }\">\n </ng-container>\n </ng-container>\n <ng-template #headingContainer>\n <h2 class=\"heading\" *ngIf=\"list.heading || headingTemplate\">\n {{list.heading}}\n <ng-container [ngTemplateOutlet]=\"headingTemplate\"></ng-container>\n </h2>\n <div class=\"small subheading\" *ngIf=\"list.subheading || subheadingTemplate\">\n {{list.subheading}}\n <ng-container [ngTemplateOutlet]=\"subheadingTemplate\"></ng-container>\n </div>\n </ng-template>\n </div>\n</ng-template>\n", styles: [":host{display:block;width:100%}:host ::ng-deep .fs-list-swap-restricted{opacity:.5}:host ::ng-deep .fs-list-no-drop{cursor:no-drop}:host ::ng-deep .hidden{display:none}:host ::ng-deep .multiple-selection{background-color:#2196f380}:host ::ng-deep .multiple-selection ::ng-deep .fs-list-col{background-color:#2196f380}@media print{:host ::ng-deep .fs-list-row-group{page-break-after:avoid}:host ::ng-deep .fs-list-row-group-child{page-break-before:avoid}:host ::ng-deep .fs-list-row-group-footer{page-break-before:avoid}}.fs-list-container{width:100%}.fs-list-container:not(.has-filters):not(.has-actions):not(.has-heading) .fs-list-header-container{display:none}.fs-list-container:not(.has-filter-keyword) .fs-list-header{display:flex;margin-bottom:4px}.fs-list-container:not(.has-filter-keyword) .fs-list-header .heading-container{flex:1}.fs-list-container:not(.has-filter-keyword) .fs-list-header fs-filter{display:flex}.fs-list-container.has-filters .heading-container{margin-bottom:4px}.fs-list-container.loading .fs-list-status,.fs-list-container.loading .fs-list-body,.fs-list-container.loading .fs-list-head,.fs-list-container.loading .fs-list-footer,.fs-list-container.loading fs-list-pagination,.fs-list-container.loading ::ng-deep fs-filter-chips,.fs-list-container.loading .fs-list-no-results-container,.fs-list-container.first-load .fs-list-status,.fs-list-container.first-load .fs-list-body,.fs-list-container.first-load .fs-list-head,.fs-list-container.first-load .fs-list-footer,.fs-list-container.first-load fs-list-pagination,.fs-list-container.first-load ::ng-deep fs-filter-chips,.fs-list-container.first-load .fs-list-no-results-container{opacity:.4;pointer-events:none}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip{color:transparent}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip .remove{visibility:hidden}.fs-list-container.has-actions .fs-list-actions{margin-left:5px}.fs-list-container .fs-list-header .heading-container{display:flex;flex-direction:column;justify-content:center}.fs-list-container .fs-list-header .heading{margin:0}.fs-list-container .fs-list-header h2+.subheading{margin:2px 0 0}.fs-list-container .fs-list-filter{margin-bottom:0;position:initial!important;display:block;width:100%}.fs-list-container .fs-list-no-results-container .fs-list-no-results{text-align:center;color:#999;padding:10px 0}.fs-list-container .fs-list-table-container{width:100%;overflow:auto}::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 tfoot td{padding:8px}::ng-deep .fs-list-table.style-line tbody .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-col{box-sizing:border-box;border-top:1px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:first-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:first-child .fs-list-col{border-top:2px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:last-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:last-child .fs-list-col{border-bottom:2px solid #ddd}::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-bottom:2px solid #ddd}::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 .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-preview-block{position:fixed;height:30px;width:200px;background:grey;display:flex;justify-content:center;align-items:center;z-index:1000;box-shadow:2px 2px 2px #9e9e9ea6;border-radius:6px}::ng-deep .reorder-in-progress{-webkit-user-select:none;user-select:none}@media only screen and (max-width: 600px){::ng-deep .fs-list-filter .inline-actions{top:initial!important;position:initial!important}::ng-deep .fs-list-filter .inline-actions .action-filter{margin-bottom:0!important}::ng-deep .fs-list-header .filter-input-field .mat-form-field-wrapper{padding:0!important}::ng-deep .fs-list-header.has-filters{flex-flow:row wrap}}@media only screen and (max-width: 768px){::ng-deep .show-mobile{display:inline-block!important}::ng-deep .fs-list-actions .action-button{display:none}::ng-deep .row-inline-action.mobile-hide{display:none}::ng-deep .hidden-mobile-menu-action{display:block!important}}:host(.fs-list-row-highlight) ::ng-deep tbody .fs-list-row:hover .fs-list-col{background-color:#f6f6f6}\n"] }]
|
|
5472
|
-
}], ctorParameters:
|
|
5703
|
+
], template: "<div class=\"fs-list-container\"\n [ngClass]=\"{\n 'has-filter-keyword': hasFilterKeyword,\n 'has-filters': list.filterConfig?.items.length,\n 'has-heading': list.heading || headingTemplate,\n 'has-status': hasStatus,\n 'has-chips': list.chips,\n 'has-actions': list.actions.hasActions,\n 'first-load': firstLoad,\n 'loading': list.loading$ | async\n }\">\n <ng-template [ngTemplateOutlet]=\"listContainerContent\"></ng-template>\n</div>\n\n<ng-template #listContainerContent>\n <ng-container *ngIf=\"list.dataController.visibleRows$ | async as listData\">\n <div class=\"fs-list-header-container\">\n <div\n class=\"fs-list-header\"\n [ngClass]=\"{ 'no-wrap': reorderController.manualReorderActivated || !list.filterConfig?.items.length }\">\n <ng-container\n *ngIf=\"hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <fs-filter\n class=\"fs-list-filter\"\n *ngIf=\"list.filterConfig\"\n [filter]=\"list.filterConfig\"\n [showSortBy]=\"!list.status\"\n [showFilterInput]=\"list.filterInput\"\n (ready)=\"filterReady()\">\n <ng-template fsFilterStatusBar>\n <ng-container\n *ngIf=\"!hasFilterKeyword\"\n [ngTemplateOutlet]=\"heading\">\n </ng-container>\n <ng-container *ngIf=\"hasStatus\">\n <fs-list-status\n class=\"fs-list-status\"\n [ngClass]=\"{ 'hidden-mobile': !list.status }\"\n [rows]=\"listData\"\n [sorting]=\"list.sorting\"\n [paging]=\"list.paging\"\n [firstLoad]=\"firstLoad\">\n </fs-list-status>\n </ng-container>\n </ng-template>\n </fs-filter>\n </div>\n </div>\n\n <ng-content select=\"[fs-list-content]\"></ng-content>\n\n <!-- Table implementation -->\n <div class=\"fs-list-table-container\">\n <ng-container *ngIf=\"!firstLoad && listData.length > 0 && !list.emptyStateEnabled\">\n <table \n class=\"fs-list-table\" \n role=\"grid\" \n [fsListContentInit]=\"list.afterContentInit\" \n [ngClass]=\"{\n 'style-card': list.style === 'card',\n 'style-basic': list.style === 'basic',\n 'style-line': (list.style || 'line') === 'line'\n }\">\n <thead\n fs-list-head\n class=\"fs-list-head\"\n role=\"rowgroup\"\n *ngIf=\"list.columns.hasHeader\"\n [ngClass]=\"list.columns.theadClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [sorting]=\"list.sorting\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </thead>\n\n <tbody\n fs-list-body\n fsListDraggableList\n class=\"fs-list-body\"\n role=\"rowgroup\"\n [class.disabled]=\"!!(reorderController.reorderDisabled$ | async)\"\n [rows]=\"listData\"\n [rowActionsRaw]=\"list.rowActionsRaw\"\n [groupActionsRaw]=\"list.groupActionsRaw\"\n [hasRowActions]=\"list.hasRowActions\"\n [rowEvents]=\"list.rowEvents\"\n [rowClass]=\"list.rowClass\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [restoreMode]=\"list.restoreMode\"\n [selection]=\"list.selection\"\n [rowRemoved]=\"rowRemoved\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\"\n [reorderMultiple]=\"reorderController.multiple\">\n </tbody>\n\n <tfoot\n fs-list-footer\n class=\"fs-list-footer\"\n *ngIf=\"list.columns.hasFooter\"\n [columns]=\"list.columns.visibleColumns$ | async\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [activeFiltersCount]=\"list.activeFiltersCount$ | async\"\n [reorderEnabled]=\"reorderController.enabled$ | async\"\n [reorderPosition]=\"reorderController.position$ | async\"\n [reorderStrategy]=\"reorderController.strategy$ | async\">\n </tfoot>\n </table>\n </ng-container>\n <fs-list-loader\n *ngIf=\"firstLoad\"\n [columns]=\"list.columns.columns\"\n [loaderLines]=\"loaderLines\">\n </fs-list-loader>\n </div>\n\n <fs-list-pagination\n *ngIf=\"paginatorVisible\"\n class=\"fs-list-pagination\"\n [rows]=\"listData\"\n [pagination]=\"list.paging\">\n </fs-list-pagination>\n\n <ng-container *ngIf=\"!firstLoad\">\n <div\n *ngIf=\"listData.length === 0\"\n class=\"fs-list-no-results-container\">\n <div\n *ngIf=\"list.noResults?.message && !list.emptyStateEnabled\"\n class=\"fs-list-no-results\">\n {{ list.noResults?.message }}\n </div>\n <ng-container *ngIf=\"list.emptyStateEnabled\">\n <ng-template [ngTemplateOutlet]=\"list.emptyStateTemplate\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #heading>\n <div class=\"heading-container\" *ngIf=\"headingContainerTemplate || list.heading || list.subheading || headingTemplate\">\n <ng-container *ngIf=\"headingContainerTemplate; else headingContainer\">\n <ng-container\n [ngTemplateOutlet]=\"headingContainerTemplate\"\n [ngTemplateOutletContext]=\"{ template: headingContainer }\">\n </ng-container>\n </ng-container>\n <ng-template #headingContainer>\n <h2 class=\"heading\" *ngIf=\"list.heading || headingTemplate\">\n {{list.heading}}\n <ng-container [ngTemplateOutlet]=\"headingTemplate\"></ng-container>\n </h2>\n <div class=\"small subheading\" *ngIf=\"list.subheading || subheadingTemplate\">\n {{list.subheading}}\n <ng-container [ngTemplateOutlet]=\"subheadingTemplate\"></ng-container>\n </div>\n </ng-template>\n </div>\n</ng-template>\n", styles: [":host{display:block;width:100%}:host ::ng-deep .fs-list-swap-restricted{opacity:.5}:host ::ng-deep .fs-list-no-drop{cursor:no-drop}:host ::ng-deep .hidden{display:none}:host ::ng-deep .multiple-selection{background-color:#2196f380}:host ::ng-deep .multiple-selection ::ng-deep .fs-list-col{background-color:#2196f380}@media print{:host ::ng-deep .fs-list-row-group{page-break-after:avoid}:host ::ng-deep .fs-list-row-group-child{page-break-before:avoid}:host ::ng-deep .fs-list-row-group-footer{page-break-before:avoid}}.fs-list-container{width:100%}.fs-list-container:not(.has-filters):not(.has-actions):not(.has-heading) .fs-list-header-container{display:none}.fs-list-container:not(.has-filter-keyword) .fs-list-header{display:flex;margin-bottom:4px}.fs-list-container:not(.has-filter-keyword) .fs-list-header .heading-container{flex:1}.fs-list-container:not(.has-filter-keyword) .fs-list-header fs-filter{display:flex}.fs-list-container.has-filters .heading-container{margin-bottom:4px}.fs-list-container.loading .fs-list-status,.fs-list-container.loading .fs-list-body,.fs-list-container.loading .fs-list-head,.fs-list-container.loading .fs-list-footer,.fs-list-container.loading fs-list-pagination,.fs-list-container.loading ::ng-deep fs-filter-chips,.fs-list-container.loading .fs-list-no-results-container,.fs-list-container.first-load .fs-list-status,.fs-list-container.first-load .fs-list-body,.fs-list-container.first-load .fs-list-head,.fs-list-container.first-load .fs-list-footer,.fs-list-container.first-load fs-list-pagination,.fs-list-container.first-load ::ng-deep fs-filter-chips,.fs-list-container.first-load .fs-list-no-results-container{opacity:.4;pointer-events:none}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip{color:transparent}.fs-list-container.first-load ::ng-deep fs-filter-chips .fs-chip .remove{visibility:hidden}.fs-list-container.has-actions .fs-list-actions{margin-left:5px}.fs-list-container .fs-list-header .heading-container{display:flex;flex-direction:column;justify-content:center}.fs-list-container .fs-list-header .heading{margin:0}.fs-list-container .fs-list-header h2+.subheading{margin:2px 0 0}.fs-list-container .fs-list-filter{margin-bottom:0;position:initial!important;display:block;width:100%}.fs-list-container .fs-list-no-results-container .fs-list-no-results{text-align:center;color:#999;padding:10px 0}.fs-list-container .fs-list-table-container{width:100%;overflow:auto}::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 tfoot td{padding:8px}::ng-deep .fs-list-table.style-line tbody .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-col{box-sizing:border-box;border-top:1px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:first-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:first-child .fs-list-col{border-top:2px solid #ddd}::ng-deep .fs-list-table.style-line tbody .fs-list-row:last-child .fs-list-col,::ng-deep .fs-list-table:not(.style-card):not(.style-basic) tbody .fs-list-row:last-child .fs-list-col{border-bottom:2px solid #ddd}::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-bottom:2px solid #ddd}::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 .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-preview-block{position:fixed;height:30px;width:200px;background:gray;display:flex;justify-content:center;align-items:center;z-index:1000;box-shadow:2px 2px 2px #9e9e9ea6;border-radius:6px}::ng-deep .reorder-in-progress{-webkit-user-select:none;user-select:none}@media only screen and (max-width: 600px){::ng-deep .fs-list-filter .inline-actions{top:initial!important;position:initial!important}::ng-deep .fs-list-filter .inline-actions .action-filter{margin-bottom:0!important}::ng-deep .fs-list-header .filter-input-field .mat-form-field-wrapper{padding:0!important}::ng-deep .fs-list-header.has-filters{flex-flow:row wrap}}@media only screen and (max-width: 768px){::ng-deep .show-mobile{display:inline-block!important}::ng-deep .fs-list-actions .action-button{display:none}::ng-deep .row-inline-action.mobile-hide{display:none}::ng-deep .hidden-mobile-menu-action{display:block!important}}:host(.fs-list-row-highlight) ::ng-deep tbody .fs-list-row:hover .fs-list-col{background-color:#f6f6f6}\n"] }]
|
|
5704
|
+
}], ctorParameters: () => [{ type: ReorderController }, { type: undefined, decorators: [{
|
|
5473
5705
|
type: Optional
|
|
5474
5706
|
}, {
|
|
5475
5707
|
type: Inject,
|
|
@@ -5478,7 +5710,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
5478
5710
|
type: Optional
|
|
5479
5711
|
}] }, { type: i3$3.DrawerRef, decorators: [{
|
|
5480
5712
|
type: Optional
|
|
5481
|
-
}] }, { type: i0.ElementRef }, { type: i4$2.SelectionDialog }, { type: i1$2.MatDialog }, { type: i0.ChangeDetectorRef }, { type: GroupExpandNotifierService }, { type: i6.Router }, { type: i6.ActivatedRoute }, { type: PersistanceController }, { type: i1.Location }]
|
|
5713
|
+
}] }, { type: i0.ElementRef }, { type: i4$2.SelectionDialog }, { type: i1$2.MatDialog }, { type: i0.ChangeDetectorRef }, { type: GroupExpandNotifierService }, { type: i6.Router }, { type: i6.ActivatedRoute }, { type: PersistanceController }, { type: i1.Location }], propDecorators: { classFsList: [{
|
|
5482
5714
|
type: HostBinding,
|
|
5483
5715
|
args: ['class.fs-list']
|
|
5484
5716
|
}], rowHoverHighlight: [{
|
|
@@ -5515,9 +5747,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
5515
5747
|
}] } });
|
|
5516
5748
|
|
|
5517
5749
|
class FsListManageSavedFiltersComponent {
|
|
5750
|
+
_externalParams;
|
|
5751
|
+
config;
|
|
5752
|
+
_reorderReady = true;
|
|
5518
5753
|
constructor(_externalParams) {
|
|
5519
5754
|
this._externalParams = _externalParams;
|
|
5520
|
-
this._reorderReady = true;
|
|
5521
5755
|
this._initList();
|
|
5522
5756
|
}
|
|
5523
5757
|
get savedFiltersController() {
|
|
@@ -5571,19 +5805,19 @@ class FsListManageSavedFiltersComponent {
|
|
|
5571
5805
|
},
|
|
5572
5806
|
};
|
|
5573
5807
|
}
|
|
5808
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListManageSavedFiltersComponent, deps: [{ token: i2$1.ExternalParamsController }], target: i0.ɵɵFactoryTarget.Component });
|
|
5809
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FsListManageSavedFiltersComponent, selector: "ng-component", ngImport: i0, template: "<h1 mat-dialog-title>\r\n Manage Saved Filters\r\n</h1>\r\n<div mat-dialog-content>\r\n <fs-list [config]=\"config\">\r\n <fs-list-column name=\"name\" title=\"Name\">\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{ row.name }}\r\n </ng-template>\r\n </fs-list-column>\r\n </fs-list>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-button\r\n [mat-dialog-close]=\"null\"\r\n type=\"button\"\r\n color=\"primary\">\r\n Done\r\n </button>\r\n</div>\r\n", dependencies: [{ kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1$2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }, { kind: "directive", type: FsListColumnDirective, selector: "fs-list-column", inputs: ["show", "title", "name", "customize", "sortable", "sortableDefault", "sortableDirection", "direction", "align", "width", "class"] }, { kind: "directive", type: FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5574
5810
|
}
|
|
5575
|
-
|
|
5576
|
-
FsListManageSavedFiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FsListManageSavedFiltersComponent, selector: "ng-component", ngImport: i0, template: "<h1 mat-dialog-title>\n Manage Saved Filters\n</h1>\n<div mat-dialog-content>\n <fs-list [config]=\"config\">\n <fs-list-column name=\"name\" title=\"Name\">\n <ng-template fs-list-cell let-row=\"row\">\n {{ row.name }}\n </ng-template>\n </fs-list-column>\n </fs-list>\n</div>\n<div mat-dialog-actions>\n <button mat-button\n [mat-dialog-close]=\"null\"\n type=\"button\"\n color=\"primary\">\n Done\n </button>\n</div>\n", dependencies: [{ kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1$2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }, { kind: "directive", type: FsListColumnDirective, selector: "fs-list-column", inputs: ["show", "title", "name", "customize", "sortable", "sortableDefault", "sortableDirection", "direction", "align", "width", "class"] }, { kind: "directive", type: FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5577
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListManageSavedFiltersComponent, decorators: [{
|
|
5811
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListManageSavedFiltersComponent, decorators: [{
|
|
5578
5812
|
type: Component,
|
|
5579
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<h1 mat-dialog-title>\n Manage Saved Filters\n</h1>\n<div mat-dialog-content>\n <fs-list [config]=\"config\">\n <fs-list-column name=\"name\" title=\"Name\">\n <ng-template fs-list-cell let-row=\"row\">\n {{ row.name }}\n </ng-template>\n </fs-list-column>\n </fs-list>\n</div>\n<div mat-dialog-actions>\n <button mat-button\n [mat-dialog-close]=\"null\"\n type=\"button\"\n color=\"primary\">\n Done\n </button>\n</div>\n" }]
|
|
5580
|
-
}], ctorParameters:
|
|
5813
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<h1 mat-dialog-title>\r\n Manage Saved Filters\r\n</h1>\r\n<div mat-dialog-content>\r\n <fs-list [config]=\"config\">\r\n <fs-list-column name=\"name\" title=\"Name\">\r\n <ng-template fs-list-cell let-row=\"row\">\r\n {{ row.name }}\r\n </ng-template>\r\n </fs-list-column>\r\n </fs-list>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-button\r\n [mat-dialog-close]=\"null\"\r\n type=\"button\"\r\n color=\"primary\">\r\n Done\r\n </button>\r\n</div>\r\n" }]
|
|
5814
|
+
}], ctorParameters: () => [{ type: i2$1.ExternalParamsController }] });
|
|
5581
5815
|
|
|
5582
5816
|
class FsListContentDirective {
|
|
5817
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5818
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FsListContentDirective, selector: "[fs-list-content]", ngImport: i0 });
|
|
5583
5819
|
}
|
|
5584
|
-
|
|
5585
|
-
FsListContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FsListContentDirective, selector: "[fs-list-content]", ngImport: i0 });
|
|
5586
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListContentDirective, decorators: [{
|
|
5820
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListContentDirective, decorators: [{
|
|
5587
5821
|
type: Directive,
|
|
5588
5822
|
args: [{
|
|
5589
5823
|
selector: '[fs-list-content]',
|
|
@@ -5604,95 +5838,95 @@ class FsListModule {
|
|
|
5604
5838
|
],
|
|
5605
5839
|
};
|
|
5606
5840
|
}
|
|
5841
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5842
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: FsListModule, declarations: [
|
|
5843
|
+
// Components
|
|
5844
|
+
FsListComponent,
|
|
5845
|
+
FsRowComponent,
|
|
5846
|
+
FsRowActionsComponent,
|
|
5847
|
+
FsRowInlineActionComponent,
|
|
5848
|
+
FsRowMenuActionComponent,
|
|
5849
|
+
FsCellComponent,
|
|
5850
|
+
FsFooterRowComponent,
|
|
5851
|
+
FsFooterCellComponent,
|
|
5852
|
+
FsStatusComponent,
|
|
5853
|
+
FsListLoaderComponent,
|
|
5854
|
+
FsListSavedFiltersComponent,
|
|
5855
|
+
FsListManageSavedFiltersComponent,
|
|
5856
|
+
// Internal Components
|
|
5857
|
+
FsHeadComponent,
|
|
5858
|
+
FsHeadCellComponent,
|
|
5859
|
+
FsBodyComponent,
|
|
5860
|
+
FsFooterComponent,
|
|
5861
|
+
FsPaginationComponent,
|
|
5862
|
+
// Directives
|
|
5863
|
+
FsListColumnDirective,
|
|
5864
|
+
FsListCellDirective,
|
|
5865
|
+
FsListHeaderDirective,
|
|
5866
|
+
FsListFooterDirective,
|
|
5867
|
+
FsListGroupHeaderDirective,
|
|
5868
|
+
FsListGroupFooterDirective,
|
|
5869
|
+
FsListGroupExpandTriggerDirective,
|
|
5870
|
+
FsListDraggableListDirective,
|
|
5871
|
+
FsListDraggableRowDirective,
|
|
5872
|
+
FsListEmptyStateDirective,
|
|
5873
|
+
FsListContentDirective,
|
|
5874
|
+
FsListContentInitDirective,
|
|
5875
|
+
FsListSubheadingDirective,
|
|
5876
|
+
FsListHeadingDirective,
|
|
5877
|
+
FsListHeadingContainerDirective,
|
|
5878
|
+
// Dialog
|
|
5879
|
+
CustomizeColsDialogComponent,
|
|
5880
|
+
//Pipes
|
|
5881
|
+
ActionLabelPipe], imports: [CommonModule,
|
|
5882
|
+
RouterModule,
|
|
5883
|
+
MatButtonModule,
|
|
5884
|
+
MatIconModule,
|
|
5885
|
+
MatMenuModule,
|
|
5886
|
+
MatProgressSpinnerModule,
|
|
5887
|
+
MatCheckboxModule,
|
|
5888
|
+
MatRippleModule,
|
|
5889
|
+
FsFilterModule,
|
|
5890
|
+
FsMenuModule,
|
|
5891
|
+
FsScrollModule,
|
|
5892
|
+
FsPromptModule,
|
|
5893
|
+
MatDialogModule,
|
|
5894
|
+
MatTooltipModule,
|
|
5895
|
+
FsFileModule,
|
|
5896
|
+
FsCommonModule], exports: [FsListComponent,
|
|
5897
|
+
FsRowComponent,
|
|
5898
|
+
FsCellComponent,
|
|
5899
|
+
FsListLoaderComponent,
|
|
5900
|
+
FsListColumnDirective,
|
|
5901
|
+
FsListCellDirective,
|
|
5902
|
+
FsListHeaderDirective,
|
|
5903
|
+
FsListFooterDirective,
|
|
5904
|
+
FsListGroupHeaderDirective,
|
|
5905
|
+
FsListGroupFooterDirective,
|
|
5906
|
+
FsListGroupExpandTriggerDirective,
|
|
5907
|
+
FsListEmptyStateDirective,
|
|
5908
|
+
FsListContentDirective,
|
|
5909
|
+
FsListSubheadingDirective,
|
|
5910
|
+
FsListHeadingDirective,
|
|
5911
|
+
FsListHeadingContainerDirective] });
|
|
5912
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListModule, imports: [CommonModule,
|
|
5913
|
+
RouterModule,
|
|
5914
|
+
MatButtonModule,
|
|
5915
|
+
MatIconModule,
|
|
5916
|
+
MatMenuModule,
|
|
5917
|
+
MatProgressSpinnerModule,
|
|
5918
|
+
MatCheckboxModule,
|
|
5919
|
+
MatRippleModule,
|
|
5920
|
+
FsFilterModule,
|
|
5921
|
+
FsMenuModule,
|
|
5922
|
+
FsScrollModule,
|
|
5923
|
+
FsPromptModule,
|
|
5924
|
+
MatDialogModule,
|
|
5925
|
+
MatTooltipModule,
|
|
5926
|
+
FsFileModule,
|
|
5927
|
+
FsCommonModule] });
|
|
5607
5928
|
}
|
|
5608
|
-
|
|
5609
|
-
FsListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: FsListModule, declarations: [
|
|
5610
|
-
// Components
|
|
5611
|
-
FsListComponent,
|
|
5612
|
-
FsRowComponent,
|
|
5613
|
-
FsRowActionsComponent,
|
|
5614
|
-
FsRowInlineActionComponent,
|
|
5615
|
-
FsRowMenuActionComponent,
|
|
5616
|
-
FsCellComponent,
|
|
5617
|
-
FsFooterRowComponent,
|
|
5618
|
-
FsFooterCellComponent,
|
|
5619
|
-
FsStatusComponent,
|
|
5620
|
-
FsListLoaderComponent,
|
|
5621
|
-
FsListSavedFiltersComponent,
|
|
5622
|
-
FsListManageSavedFiltersComponent,
|
|
5623
|
-
// Internal Components
|
|
5624
|
-
FsHeadComponent,
|
|
5625
|
-
FsHeadCellComponent,
|
|
5626
|
-
FsBodyComponent,
|
|
5627
|
-
FsFooterComponent,
|
|
5628
|
-
FsPaginationComponent,
|
|
5629
|
-
// Directives
|
|
5630
|
-
FsListColumnDirective,
|
|
5631
|
-
FsListCellDirective,
|
|
5632
|
-
FsListHeaderDirective,
|
|
5633
|
-
FsListFooterDirective,
|
|
5634
|
-
FsListGroupHeaderDirective,
|
|
5635
|
-
FsListGroupFooterDirective,
|
|
5636
|
-
FsListGroupExpandTriggerDirective,
|
|
5637
|
-
FsListDraggableListDirective,
|
|
5638
|
-
FsListDraggableRowDirective,
|
|
5639
|
-
FsListEmptyStateDirective,
|
|
5640
|
-
FsListContentDirective,
|
|
5641
|
-
FsListContentInitDirective,
|
|
5642
|
-
FsListSubheadingDirective,
|
|
5643
|
-
FsListHeadingDirective,
|
|
5644
|
-
FsListHeadingContainerDirective,
|
|
5645
|
-
// Dialog
|
|
5646
|
-
CustomizeColsDialogComponent,
|
|
5647
|
-
//Pipes
|
|
5648
|
-
ActionLabelPipe], imports: [CommonModule,
|
|
5649
|
-
RouterModule,
|
|
5650
|
-
MatButtonModule,
|
|
5651
|
-
MatIconModule,
|
|
5652
|
-
MatMenuModule,
|
|
5653
|
-
MatProgressSpinnerModule,
|
|
5654
|
-
MatCheckboxModule,
|
|
5655
|
-
MatRippleModule,
|
|
5656
|
-
FsFilterModule,
|
|
5657
|
-
FsMenuModule,
|
|
5658
|
-
FsScrollModule,
|
|
5659
|
-
FsPromptModule,
|
|
5660
|
-
MatDialogModule,
|
|
5661
|
-
MatTooltipModule,
|
|
5662
|
-
FsFileModule,
|
|
5663
|
-
FsCommonModule], exports: [FsListComponent,
|
|
5664
|
-
FsRowComponent,
|
|
5665
|
-
FsCellComponent,
|
|
5666
|
-
FsListLoaderComponent,
|
|
5667
|
-
FsListColumnDirective,
|
|
5668
|
-
FsListCellDirective,
|
|
5669
|
-
FsListHeaderDirective,
|
|
5670
|
-
FsListFooterDirective,
|
|
5671
|
-
FsListGroupHeaderDirective,
|
|
5672
|
-
FsListGroupFooterDirective,
|
|
5673
|
-
FsListGroupExpandTriggerDirective,
|
|
5674
|
-
FsListEmptyStateDirective,
|
|
5675
|
-
FsListContentDirective,
|
|
5676
|
-
FsListSubheadingDirective,
|
|
5677
|
-
FsListHeadingDirective,
|
|
5678
|
-
FsListHeadingContainerDirective] });
|
|
5679
|
-
FsListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListModule, imports: [CommonModule,
|
|
5680
|
-
RouterModule,
|
|
5681
|
-
MatButtonModule,
|
|
5682
|
-
MatIconModule,
|
|
5683
|
-
MatMenuModule,
|
|
5684
|
-
MatProgressSpinnerModule,
|
|
5685
|
-
MatCheckboxModule,
|
|
5686
|
-
MatRippleModule,
|
|
5687
|
-
FsFilterModule,
|
|
5688
|
-
FsMenuModule,
|
|
5689
|
-
FsScrollModule,
|
|
5690
|
-
FsPromptModule,
|
|
5691
|
-
MatDialogModule,
|
|
5692
|
-
MatTooltipModule,
|
|
5693
|
-
FsFileModule,
|
|
5694
|
-
FsCommonModule] });
|
|
5695
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsListModule, decorators: [{
|
|
5929
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FsListModule, decorators: [{
|
|
5696
5930
|
type: NgModule,
|
|
5697
5931
|
args: [{
|
|
5698
5932
|
imports: [
|