@firestitch/list 9.11.1 → 9.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/classes/list-controller.d.ts +4 -2
- package/app/classes/reorder-controller.d.ts +2 -0
- package/app/components/body/row/inline-action/inline-action.component.d.ts +3 -0
- package/app/components/body/row/menu-action/menu-action.component.d.ts +9 -0
- package/app/components/list/list.component.d.ts +1 -0
- package/app/interfaces/listconfig.interface.d.ts +9 -0
- package/app/models/row-action.model.d.ts +4 -1
- package/bundles/firestitch-list.umd.js +112 -16
- package/bundles/firestitch-list.umd.js.map +1 -1
- package/bundles/firestitch-list.umd.min.js +2 -2
- package/bundles/firestitch-list.umd.min.js.map +1 -1
- package/esm2015/app/classes/list-controller.js +10 -3
- package/esm2015/app/classes/reorder-controller.js +12 -3
- package/esm2015/app/components/body/row/actions/actions.component.js +2 -2
- package/esm2015/app/components/body/row/inline-action/inline-action.component.js +10 -2
- package/esm2015/app/components/body/row/menu-action/menu-action.component.js +41 -0
- package/esm2015/app/components/list/list.component.js +12 -1
- package/esm2015/app/fs-list.module.js +5 -1
- package/esm2015/app/interfaces/listconfig.interface.js +1 -1
- package/esm2015/app/models/row-action.model.js +12 -2
- package/esm2015/firestitch-list.js +7 -6
- package/esm2015/public_api.js +1 -1
- package/esm5/app/classes/list-controller.js +18 -3
- package/esm5/app/classes/reorder-controller.js +12 -3
- package/esm5/app/components/body/row/actions/actions.component.js +2 -2
- package/esm5/app/components/body/row/inline-action/inline-action.component.js +10 -2
- package/esm5/app/components/body/row/menu-action/menu-action.component.js +42 -0
- package/esm5/app/components/list/list.component.js +13 -1
- package/esm5/app/fs-list.module.js +5 -1
- package/esm5/app/interfaces/listconfig.interface.js +1 -1
- package/esm5/app/models/row-action.model.js +12 -2
- package/esm5/firestitch-list.js +7 -6
- package/esm5/public_api.js +1 -1
- package/fesm2015/firestitch-list.js +94 -8
- package/fesm2015/firestitch-list.js.map +1 -1
- package/fesm5/firestitch-list.js +104 -8
- package/fesm5/firestitch-list.js.map +1 -1
- package/firestitch-list.d.ts +7 -6
- package/firestitch-list.metadata.json +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -1
package/fesm5/firestitch-list.js
CHANGED
|
@@ -15,6 +15,7 @@ import { ItemType, FilterComponent, ExternalParamsController as ExternalParamsCo
|
|
|
15
15
|
import { FsScrollService, FsScrollModule } from '@firestitch/scroll';
|
|
16
16
|
import { FsMenuModule } from '@firestitch/menu';
|
|
17
17
|
import { FsPrompt, FsPromptModule } from '@firestitch/prompt';
|
|
18
|
+
import { FsFileModule } from '@firestitch/file';
|
|
18
19
|
import { isString, isObject, isBoolean, isNumber, isFunction, get, cloneDeep, mergeWith, random, merge as merge$1 } from 'lodash-es';
|
|
19
20
|
import { Subject, BehaviorSubject, Observable, merge, from, combineLatest, of } from 'rxjs';
|
|
20
21
|
import { takeUntil, tap, take, map, debounceTime, switchMap, mapTo, catchError, distinctUntilChanged, shareReplay, skip, filter } from 'rxjs/operators';
|
|
@@ -356,6 +357,15 @@ var RowAction = /** @class */ (function (_super) {
|
|
|
356
357
|
return _this.clickEvent(row, event, index, rowActionsRef, clickFn);
|
|
357
358
|
};
|
|
358
359
|
this._linkFn = value.link;
|
|
360
|
+
if (value.file) {
|
|
361
|
+
if (value.file.select) {
|
|
362
|
+
this.fileUploadFn = function (selection, row, index) {
|
|
363
|
+
value.file.select(selection, row, index);
|
|
364
|
+
};
|
|
365
|
+
}
|
|
366
|
+
this.fileUploadErrorFn = value.file.error;
|
|
367
|
+
this.fileMultiple = value.file.multiple;
|
|
368
|
+
}
|
|
359
369
|
if (typeof value.label === 'function') {
|
|
360
370
|
this._labelFn = value.label;
|
|
361
371
|
this.label = '';
|
|
@@ -375,7 +385,8 @@ var RowAction = /** @class */ (function (_super) {
|
|
|
375
385
|
this.rowActions.forEach(function (action) {
|
|
376
386
|
action.checkShowStatus(row, index);
|
|
377
387
|
});
|
|
378
|
-
|
|
388
|
+
var groupVisible = !this.show || this.show(row, index);
|
|
389
|
+
this.isShown = groupVisible && this.rowActions.some(function (action) { return action.isShown; });
|
|
379
390
|
}
|
|
380
391
|
else if (this.show) {
|
|
381
392
|
this.isShown = this.show(row, index);
|
|
@@ -2850,6 +2861,7 @@ var List = /** @class */ (function (_super) {
|
|
|
2850
2861
|
// Empty state
|
|
2851
2862
|
_this.emptyStateEnabled = false;
|
|
2852
2863
|
_this.onDestroy$ = new Subject();
|
|
2864
|
+
_this._filtersQuery = new BehaviorSubject(null);
|
|
2853
2865
|
_this._fromJSON(config);
|
|
2854
2866
|
_this.initialize(config);
|
|
2855
2867
|
_this._headerConfig = new StyleConfig(config.header);
|
|
@@ -2871,6 +2883,20 @@ var List = /** @class */ (function (_super) {
|
|
|
2871
2883
|
enumerable: true,
|
|
2872
2884
|
configurable: true
|
|
2873
2885
|
});
|
|
2886
|
+
Object.defineProperty(List.prototype, "filtersQuery", {
|
|
2887
|
+
get: function () {
|
|
2888
|
+
return this._filtersQuery.getValue();
|
|
2889
|
+
},
|
|
2890
|
+
enumerable: true,
|
|
2891
|
+
configurable: true
|
|
2892
|
+
});
|
|
2893
|
+
Object.defineProperty(List.prototype, "filtersQuery$", {
|
|
2894
|
+
get: function () {
|
|
2895
|
+
return this._filtersQuery.asObservable();
|
|
2896
|
+
},
|
|
2897
|
+
enumerable: true,
|
|
2898
|
+
configurable: true
|
|
2899
|
+
});
|
|
2874
2900
|
List.prototype.fetchRemote = function (query) {
|
|
2875
2901
|
var options = {
|
|
2876
2902
|
state: this.dataController.operation,
|
|
@@ -3334,7 +3360,7 @@ var List = /** @class */ (function (_super) {
|
|
|
3334
3360
|
if (this.filterInitCb) {
|
|
3335
3361
|
this.filterInitCb(filters);
|
|
3336
3362
|
}
|
|
3337
|
-
this.
|
|
3363
|
+
this._filtersQuery.next(filters);
|
|
3338
3364
|
this.checkRestoreFilter();
|
|
3339
3365
|
};
|
|
3340
3366
|
/**
|
|
@@ -3346,7 +3372,7 @@ var List = /** @class */ (function (_super) {
|
|
|
3346
3372
|
if (this.filterChangeCb) {
|
|
3347
3373
|
this.filterChangeCb(filterQuery, filterSort);
|
|
3348
3374
|
}
|
|
3349
|
-
this.
|
|
3375
|
+
this._filtersQuery.next(filterQuery);
|
|
3350
3376
|
this.restoreMode = false;
|
|
3351
3377
|
// Restore option
|
|
3352
3378
|
this.checkRestoreFilter();
|
|
@@ -3566,6 +3592,7 @@ var ReorderController = /** @class */ (function () {
|
|
|
3566
3592
|
this._enabled$ = new BehaviorSubject(false);
|
|
3567
3593
|
this._manualReorderActivated$ = new BehaviorSubject(false);
|
|
3568
3594
|
this._reorderDisabled$ = new BehaviorSubject(false);
|
|
3595
|
+
this._numberOfActiveFilters = 0;
|
|
3569
3596
|
this._destroy$ = new Subject();
|
|
3570
3597
|
}
|
|
3571
3598
|
Object.defineProperty(ReorderController.prototype, "enabled", {
|
|
@@ -3599,7 +3626,9 @@ var ReorderController = /** @class */ (function () {
|
|
|
3599
3626
|
return this._enabled$
|
|
3600
3627
|
.pipe(map(function (enabled) {
|
|
3601
3628
|
return enabled && _this.position === ReorderPosition.Left;
|
|
3602
|
-
}),
|
|
3629
|
+
}), map(function (enabled) {
|
|
3630
|
+
return enabled && _this._numberOfActiveFilters === 0;
|
|
3631
|
+
}), distinctUntilChanged(), shareReplay());
|
|
3603
3632
|
},
|
|
3604
3633
|
enumerable: true,
|
|
3605
3634
|
configurable: true
|
|
@@ -3610,7 +3639,9 @@ var ReorderController = /** @class */ (function () {
|
|
|
3610
3639
|
return this._enabled$
|
|
3611
3640
|
.pipe(map(function (enabled) {
|
|
3612
3641
|
return enabled && _this.position === ReorderPosition.Right;
|
|
3613
|
-
}),
|
|
3642
|
+
}), map(function (enabled) {
|
|
3643
|
+
return enabled && _this._numberOfActiveFilters === 0;
|
|
3644
|
+
}), distinctUntilChanged(), shareReplay());
|
|
3614
3645
|
},
|
|
3615
3646
|
enumerable: true,
|
|
3616
3647
|
configurable: true
|
|
@@ -3733,6 +3764,10 @@ var ReorderController = /** @class */ (function () {
|
|
|
3733
3764
|
this._reorderDisabled$.next(true);
|
|
3734
3765
|
this._actionsController.updateDisabledState();
|
|
3735
3766
|
};
|
|
3767
|
+
ReorderController.prototype.setNunberOfActiveFilters = function (activeFilters) {
|
|
3768
|
+
this._numberOfActiveFilters = activeFilters;
|
|
3769
|
+
this.enabled = this.enabled;
|
|
3770
|
+
};
|
|
3736
3771
|
ReorderController = __decorate([
|
|
3737
3772
|
Injectable(),
|
|
3738
3773
|
__metadata("design:paramtypes", [])
|
|
@@ -4259,6 +4294,7 @@ var FsListComponent = /** @class */ (function () {
|
|
|
4259
4294
|
this._updateCustomizeAction(listConfig.actions);
|
|
4260
4295
|
this.list = new List(this._el, listConfig, this.fsScroll, this.selectionDialog, this._router, this._route, this._persistance, this._inDialog);
|
|
4261
4296
|
this._waitFirstLoad();
|
|
4297
|
+
this._listenFiltersQueryChange();
|
|
4262
4298
|
this.reorderController.initWithConfig(config.reorder, this.list.dataController, this.list.actions);
|
|
4263
4299
|
if (this.listColumnDirectives) {
|
|
4264
4300
|
this.list.tranformTemplatesToColumns(this.listColumnDirectives);
|
|
@@ -4336,6 +4372,17 @@ var FsListComponent = /** @class */ (function () {
|
|
|
4336
4372
|
_this.cdRef.markForCheck();
|
|
4337
4373
|
});
|
|
4338
4374
|
};
|
|
4375
|
+
FsListComponent.prototype._listenFiltersQueryChange = function () {
|
|
4376
|
+
var _this = this;
|
|
4377
|
+
this.list.filtersQuery$
|
|
4378
|
+
.pipe(takeUntil(this.list.onDestroy$), takeUntil(this._destroy))
|
|
4379
|
+
.subscribe(function (value) {
|
|
4380
|
+
if (value) {
|
|
4381
|
+
var activeFilters = Object.keys(value).length;
|
|
4382
|
+
_this.reorderController.setNunberOfActiveFilters(activeFilters);
|
|
4383
|
+
}
|
|
4384
|
+
});
|
|
4385
|
+
};
|
|
4339
4386
|
FsListComponent.prototype._configMergeCustomizer = function (objValue, srcValue) {
|
|
4340
4387
|
if (Array.isArray(objValue)) {
|
|
4341
4388
|
return objValue;
|
|
@@ -5632,7 +5679,7 @@ var FsRowActionsComponent = /** @class */ (function () {
|
|
|
5632
5679
|
FsRowActionsComponent = __decorate([
|
|
5633
5680
|
Component({
|
|
5634
5681
|
selector: 'fs-list-row-actions',
|
|
5635
|
-
template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action 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 </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n\n<!-- Menu -->\n<fs-menu class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n (click)=\"clickOnTrigger($event)\"\n #menuRef\n>\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 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 <
|
|
5682
|
+
template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action 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.fileUploadFn($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n\n<!-- Menu -->\n<fs-menu class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n (click)=\"clickOnTrigger($event)\"\n #menuRef\n>\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 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 [file]=\"!!action.fileUploadFn\"\n [fileMultiple]=\"action.fileMultiple\"\n (fileSelect)=\"action.fileUploadFn($event, row, index)\"\n (fileError)=\"action.fileUploadErrorFn && action.fileUploadErrorFn($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\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"subAction.icon\"\n [label]=\"subAction.label\"\n [file]=\"!!subAction.fileUploadFn\"\n [fileMultiple]=\"subAction.fileMultiple\"\n (fileSelect)=\"subAction.fileUploadFn($event, row, index)\"\n (fileError)=\"subAction.fileUploadErrorFn && subAction.fileUploadErrorFn($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 fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [file]=\"!!action.fileUploadFn\"\n [fileMultiple]=\"action.fileMultiple\"\n (fileSelect)=\"action.fileUploadFn($event, row, index)\"\n (fileError)=\"action.fileUploadErrorFn && action.fileUploadErrorFn($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}}\n </ng-template>\n </ng-container>\n</fs-menu>\n",
|
|
5636
5683
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
5637
5684
|
}),
|
|
5638
5685
|
__metadata("design:paramtypes", [FsPrompt])
|
|
@@ -5644,10 +5691,14 @@ var FsRowInlineActionComponent = /** @class */ (function () {
|
|
|
5644
5691
|
function FsRowInlineActionComponent(_fsPrompt) {
|
|
5645
5692
|
this._fsPrompt = _fsPrompt;
|
|
5646
5693
|
this.clicked = new EventEmitter();
|
|
5694
|
+
this.fileSelect = new EventEmitter();
|
|
5647
5695
|
}
|
|
5648
5696
|
FsRowInlineActionComponent.prototype.actionClick = function (event) {
|
|
5649
5697
|
this.clicked.emit(event);
|
|
5650
5698
|
};
|
|
5699
|
+
FsRowInlineActionComponent.prototype.fileSelected = function (event) {
|
|
5700
|
+
this.fileSelect.emit(event);
|
|
5701
|
+
};
|
|
5651
5702
|
FsRowInlineActionComponent.ctorParameters = function () { return [
|
|
5652
5703
|
{ type: FsPrompt }
|
|
5653
5704
|
]; };
|
|
@@ -5659,10 +5710,14 @@ var FsRowInlineActionComponent = /** @class */ (function () {
|
|
|
5659
5710
|
Output(),
|
|
5660
5711
|
__metadata("design:type", Object)
|
|
5661
5712
|
], FsRowInlineActionComponent.prototype, "clicked", void 0);
|
|
5713
|
+
__decorate([
|
|
5714
|
+
Output(),
|
|
5715
|
+
__metadata("design:type", Object)
|
|
5716
|
+
], FsRowInlineActionComponent.prototype, "fileSelect", void 0);
|
|
5662
5717
|
FsRowInlineActionComponent = __decorate([
|
|
5663
5718
|
Component({
|
|
5664
5719
|
selector: 'fs-list-row-inline-action',
|
|
5665
|
-
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
|
|
5720
|
+
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.fileUploadFn 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 [multiple]=\"action.fileMultiple\"\n (select)=\"fileSelected($event)\"\n (error)=\"action.fileUploadErrorFn && action.fileUploadErrorFn($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",
|
|
5666
5721
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
5667
5722
|
}),
|
|
5668
5723
|
__metadata("design:paramtypes", [FsPrompt])
|
|
@@ -5670,6 +5725,45 @@ var FsRowInlineActionComponent = /** @class */ (function () {
|
|
|
5670
5725
|
return FsRowInlineActionComponent;
|
|
5671
5726
|
}());
|
|
5672
5727
|
|
|
5728
|
+
var FsRowMenuActionComponent = /** @class */ (function () {
|
|
5729
|
+
function FsRowMenuActionComponent() {
|
|
5730
|
+
this.fileSelect = new EventEmitter();
|
|
5731
|
+
this.fileError = new EventEmitter();
|
|
5732
|
+
}
|
|
5733
|
+
__decorate([
|
|
5734
|
+
Input(),
|
|
5735
|
+
__metadata("design:type", String)
|
|
5736
|
+
], FsRowMenuActionComponent.prototype, "icon", void 0);
|
|
5737
|
+
__decorate([
|
|
5738
|
+
Input(),
|
|
5739
|
+
__metadata("design:type", String)
|
|
5740
|
+
], FsRowMenuActionComponent.prototype, "label", void 0);
|
|
5741
|
+
__decorate([
|
|
5742
|
+
Input(),
|
|
5743
|
+
__metadata("design:type", Boolean)
|
|
5744
|
+
], FsRowMenuActionComponent.prototype, "file", void 0);
|
|
5745
|
+
__decorate([
|
|
5746
|
+
Input(),
|
|
5747
|
+
__metadata("design:type", Boolean)
|
|
5748
|
+
], FsRowMenuActionComponent.prototype, "fileMultiple", void 0);
|
|
5749
|
+
__decorate([
|
|
5750
|
+
Output(),
|
|
5751
|
+
__metadata("design:type", Object)
|
|
5752
|
+
], FsRowMenuActionComponent.prototype, "fileSelect", void 0);
|
|
5753
|
+
__decorate([
|
|
5754
|
+
Output(),
|
|
5755
|
+
__metadata("design:type", Object)
|
|
5756
|
+
], FsRowMenuActionComponent.prototype, "fileError", void 0);
|
|
5757
|
+
FsRowMenuActionComponent = __decorate([
|
|
5758
|
+
Component({
|
|
5759
|
+
selector: 'fs-list-row-menu-action',
|
|
5760
|
+
template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label}}\n</ng-container>\n\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [multiple]=\"fileMultiple\"\n (select)=\"fileSelect.emit($event)\"\n (error)=\"fileError.emit($event)\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label}}\n </fs-file>\n</ng-template>\n",
|
|
5761
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
5762
|
+
})
|
|
5763
|
+
], FsRowMenuActionComponent);
|
|
5764
|
+
return FsRowMenuActionComponent;
|
|
5765
|
+
}());
|
|
5766
|
+
|
|
5673
5767
|
var FsListManageSavedFiltersComponent = /** @class */ (function () {
|
|
5674
5768
|
function FsListManageSavedFiltersComponent(_externalParams) {
|
|
5675
5769
|
this._externalParams = _externalParams;
|
|
@@ -5892,6 +5986,7 @@ var FsListModule = /** @class */ (function () {
|
|
|
5892
5986
|
FsPromptModule,
|
|
5893
5987
|
MatDialogModule,
|
|
5894
5988
|
MatTooltipModule,
|
|
5989
|
+
FsFileModule,
|
|
5895
5990
|
],
|
|
5896
5991
|
declarations: [
|
|
5897
5992
|
// Components
|
|
@@ -5899,6 +5994,7 @@ var FsListModule = /** @class */ (function () {
|
|
|
5899
5994
|
FsRowComponent,
|
|
5900
5995
|
FsRowActionsComponent,
|
|
5901
5996
|
FsRowInlineActionComponent,
|
|
5997
|
+
FsRowMenuActionComponent,
|
|
5902
5998
|
FsCellComponent,
|
|
5903
5999
|
FsFooterRowComponent,
|
|
5904
6000
|
FsFooterCellComponent,
|
|
@@ -5959,5 +6055,5 @@ function FsListConfigFactory(config) {
|
|
|
5959
6055
|
* Generated bundle index. Do not edit.
|
|
5960
6056
|
*/
|
|
5961
6057
|
|
|
5962
|
-
export { ActionType, Column, FS_LIST_CONFIG, FS_LIST_DEFAULT_CONFIG, FsBodyComponent, FsCellComponent, FsFooterCellComponent, FsFooterComponent, FsFooterRowComponent, FsHeadCellComponent, FsHeadComponent, FsListCellDirective, FsListColumnDirective, FsListComponent, FsListEmptyStateDirective, FsListFooterDirective, FsListHeaderDirective, FsListModule, FsListState, FsPaginationComponent, FsRowComponent, FsStatusComponent, List, PaginationController, PaginationStrategy, ReorderController, ReorderPosition, ReorderStrategy, RowAction, RowType, SelectionChangeType, SelectionController, SortingController, SortingDirection, StyleConfig, FsListConfigFactory as ɵa, GroupExpandNotifierService as ɵb, PersistanceController as ɵc, FsListGroupCellDirective as ɵd, FsListGroupExpandTriggerDirective as ɵe, FsListDraggableListDirective as ɵf, FsRowActionsComponent as ɵg, FsRowInlineActionComponent as ɵh,
|
|
6058
|
+
export { ActionType, Column, FS_LIST_CONFIG, FS_LIST_DEFAULT_CONFIG, FsBodyComponent, FsCellComponent, FsFooterCellComponent, FsFooterComponent, FsFooterRowComponent, FsHeadCellComponent, FsHeadComponent, FsListCellDirective, FsListColumnDirective, FsListComponent, FsListEmptyStateDirective, FsListFooterDirective, FsListHeaderDirective, FsListModule, FsListState, FsPaginationComponent, FsRowComponent, FsStatusComponent, List, PaginationController, PaginationStrategy, ReorderController, ReorderPosition, ReorderStrategy, RowAction, RowType, SelectionChangeType, SelectionController, SortingController, SortingDirection, StyleConfig, FsListConfigFactory as ɵa, GroupExpandNotifierService as ɵb, PersistanceController as ɵc, FsListGroupCellDirective as ɵd, FsListGroupExpandTriggerDirective as ɵe, FsListDraggableListDirective as ɵf, FsRowActionsComponent as ɵg, FsRowInlineActionComponent as ɵh, FsRowMenuActionComponent as ɵi, FsListLoaderComponent as ɵj, FsListSavedFiltersComponent as ɵk, FsListManageSavedFiltersComponent as ɵl, FsListDraggableRowDirective as ɵm, CustomizeColsDialogComponent as ɵn };
|
|
5963
6059
|
//# sourceMappingURL=firestitch-list.js.map
|