@firestitch/list 18.0.69 → 18.0.70
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/row/inline-action/icon-button/icon-button.component.d.ts +17 -0
- package/app/components/body/row/inline-action/inline-action.component.d.ts +0 -2
- package/esm2022/app/components/body/row/inline-action/icon-button/icon-button.component.mjs +50 -0
- package/esm2022/app/components/body/row/inline-action/inline-action.component.mjs +8 -10
- package/fesm2022/firestitch-list.mjs +48 -9
- package/fesm2022/firestitch-list.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { EventEmitter, TemplateRef } from '@angular/core';
|
|
2
|
+
import { FsFile } from '@firestitch/file';
|
|
3
|
+
import { Row } from '../../../../../models/row';
|
|
4
|
+
import { RowAction } from '../../../../../models/row-action.model';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class FsRowInlineIconButtonComponent {
|
|
7
|
+
rowAction: RowAction;
|
|
8
|
+
row: Row;
|
|
9
|
+
icon: string;
|
|
10
|
+
buttonContent: TemplateRef<any>;
|
|
11
|
+
clicked: EventEmitter<any>;
|
|
12
|
+
fileSelect: EventEmitter<FsFile | FsFile[]>;
|
|
13
|
+
actionClick(event: any): void;
|
|
14
|
+
fileSelected(event: any): void;
|
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FsRowInlineIconButtonComponent, never>;
|
|
16
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FsRowInlineIconButtonComponent, "fs-list-row-inline-icon-button", never, { "rowAction": { "alias": "rowAction"; "required": false; }; "row": { "alias": "row"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "buttonContent": { "alias": "buttonContent"; "required": false; }; }, { "clicked": "clicked"; "fileSelect": "fileSelect"; }, never, never, true, never>;
|
|
17
|
+
}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
|
|
2
2
|
import { FsFile } from '@firestitch/file';
|
|
3
|
-
import { ActionType } from '../../../../enums/action-type.enum';
|
|
4
3
|
import { Row } from '../../../../models/row';
|
|
5
4
|
import { RowAction } from '../../../../models/row-action.model';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
export declare class FsRowInlineActionComponent implements OnInit, OnChanges {
|
|
8
|
-
actionType: ActionType;
|
|
9
7
|
rowAction: RowAction;
|
|
10
8
|
row: Row;
|
|
11
9
|
clicked: EventEmitter<any>;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { AsyncPipe, NgClass, NgTemplateOutlet } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, TemplateRef, } from '@angular/core';
|
|
3
|
+
import { RouterLink } from '@angular/router';
|
|
4
|
+
import { MatIconAnchor, MatIconButton } from '@angular/material/button';
|
|
5
|
+
import { MatIcon } from '@angular/material/icon';
|
|
6
|
+
import { FsFileModule } from '@firestitch/file';
|
|
7
|
+
import { RowAction } from '../../../../../models/row-action.model';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export class FsRowInlineIconButtonComponent {
|
|
10
|
+
rowAction;
|
|
11
|
+
row;
|
|
12
|
+
icon;
|
|
13
|
+
buttonContent;
|
|
14
|
+
clicked = new EventEmitter();
|
|
15
|
+
fileSelect = new EventEmitter();
|
|
16
|
+
actionClick(event) {
|
|
17
|
+
this.clicked.emit(event);
|
|
18
|
+
}
|
|
19
|
+
fileSelected(event) {
|
|
20
|
+
this.fileSelect.emit(event);
|
|
21
|
+
}
|
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineIconButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineIconButtonComponent, isStandalone: true, selector: "fs-list-row-inline-icon-button", inputs: { rowAction: "rowAction", row: "row", icon: "icon", buttonContent: "buttonContent" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, ngImport: i0, template: "@if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n} @else {\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n}\n\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: FsFileModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineIconButtonComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ selector: 'fs-list-row-inline-icon-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
28
|
+
NgClass,
|
|
29
|
+
NgTemplateOutlet,
|
|
30
|
+
RouterLink,
|
|
31
|
+
MatIconButton,
|
|
32
|
+
MatIconAnchor,
|
|
33
|
+
MatIcon,
|
|
34
|
+
FsFileModule,
|
|
35
|
+
AsyncPipe,
|
|
36
|
+
], template: "@if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n} @else {\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n}\n\n" }]
|
|
37
|
+
}], propDecorators: { rowAction: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], row: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], icon: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], buttonContent: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], clicked: [{
|
|
46
|
+
type: Output
|
|
47
|
+
}], fileSelect: [{
|
|
48
|
+
type: Output
|
|
49
|
+
}] } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUd4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBbUJuRSxNQUFNLE9BQU8sOEJBQThCO0lBR2xDLFNBQVMsQ0FBWTtJQUdyQixHQUFHLENBQU07SUFHVCxJQUFJLENBQVM7SUFHYixhQUFhLENBQW1CO0lBR2hDLE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzdCLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztJQUVuRCxXQUFXLENBQUMsS0FBSztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQUs7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzt1R0ExQlUsOEJBQThCOzJGQUE5Qiw4QkFBOEIsbVBDcEMzQywyZUFpQkEsNENEU0ksT0FBTyxvRkFDUCxnQkFBZ0Isb0pBQ2hCLFVBQVUsb09BQ1YsYUFBYSw2RkFDYixhQUFhLG9HQUViLFlBQVk7OzJGQUlILDhCQUE4QjtrQkFoQjFDLFNBQVM7K0JBQ0UsZ0NBQWdDLG1CQUV6Qix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxPQUFPO3dCQUNQLGdCQUFnQjt3QkFDaEIsVUFBVTt3QkFDVixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsT0FBTzt3QkFDUCxZQUFZO3dCQUNaLFNBQVM7cUJBQ1Y7OEJBS00sU0FBUztzQkFEZixLQUFLO2dCQUlDLEdBQUc7c0JBRFQsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsYUFBYTtzQkFEbkIsS0FBSztnQkFJQyxPQUFPO3NCQURiLE1BQU07Z0JBSUEsVUFBVTtzQkFEaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBNYXRJY29uQW5jaG9yLCBNYXRJY29uQnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcblxuaW1wb3J0IHsgRnNGaWxlLCBGc0ZpbGVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcblxuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdyc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctaW5saW5lLWljb24tYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24tYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0NsYXNzLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgUm91dGVyTGluayxcbiAgICBNYXRJY29uQnV0dG9uLFxuICAgIE1hdEljb25BbmNob3IsXG4gICAgTWF0SWNvbixcbiAgICBGc0ZpbGVNb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGc1Jvd0lubGluZUljb25CdXR0b25Db21wb25lbnQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByb3dBY3Rpb246IFJvd0FjdGlvbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93OiBSb3c7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYnV0dG9uQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWxlU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxGc0ZpbGUgfCBGc0ZpbGVbXT4oKTtcblxuICBwdWJsaWMgYWN0aW9uQ2xpY2soZXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBwdWJsaWMgZmlsZVNlbGVjdGVkKGV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5maWxlU2VsZWN0LmVtaXQoZXZlbnQpO1xuICB9XG59XG5cbiIsIkBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICBbbmdDbGFzc109XCJyb3dBY3Rpb24uY2xhc3NBcnJheVwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2J1dHRvbj5cbn0gQGVsc2Uge1xuICA8YVxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2E+XG59XG5cbiJdfQ==
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { AsyncPipe, NgClass, NgTemplateOutlet } from '@angular/common';
|
|
2
2
|
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
3
3
|
import { RouterLink } from '@angular/router';
|
|
4
|
-
import { MatAnchor, MatButton, MatFabAnchor, MatFabButton,
|
|
4
|
+
import { MatAnchor, MatButton, MatFabAnchor, MatFabButton, MatMiniFabAnchor, MatMiniFabButton, } from '@angular/material/button';
|
|
5
5
|
import { MatIcon } from '@angular/material/icon';
|
|
6
6
|
import { FsFileModule } from '@firestitch/file';
|
|
7
7
|
import { ActionType } from '../../../../enums/action-type.enum';
|
|
8
8
|
import { RowAction } from '../../../../models/row-action.model';
|
|
9
|
+
import { FsRowInlineIconButtonComponent } from './icon-button/icon-button.component';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
import * as i1 from "@firestitch/file";
|
|
11
12
|
export class FsRowInlineActionComponent {
|
|
12
|
-
actionType;
|
|
13
13
|
rowAction;
|
|
14
14
|
row;
|
|
15
15
|
clicked = new EventEmitter();
|
|
@@ -24,27 +24,24 @@ export class FsRowInlineActionComponent {
|
|
|
24
24
|
this.clicked.emit(event);
|
|
25
25
|
}
|
|
26
26
|
ngOnInit() {
|
|
27
|
-
this.actionType = this.rowAction.type;
|
|
28
27
|
if (!this.rowAction.label && this.rowAction.icon) {
|
|
29
|
-
this.
|
|
28
|
+
this.rowAction.type = ActionType.Icon;
|
|
30
29
|
}
|
|
31
30
|
}
|
|
32
31
|
fileSelected(event) {
|
|
33
32
|
this.fileSelect.emit(event);
|
|
34
33
|
}
|
|
35
34
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineActionComponent, isStandalone: true, selector: "fs-list-row-inline-action", inputs: { rowAction: "rowAction", row: "row" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-template #buttonContent>\n @if (!rowAction?.fileConfig) {\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction?.label }}\n } @else {\n <fs-file\n class=\"action-button\"\n [accept]=\"rowAction.fileConfig.accept || '*'\"\n [multiple]=\"rowAction.fileConfig.multiple\"\n [minWidth]=\"rowAction.fileConfig.minWidth\"\n [minHeight]=\"rowAction.fileConfig.minHeight\"\n [imageWidth]=\"rowAction.fileConfig.maxWidth\"\n [imageHeight]=\"rowAction.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"rowAction.fileConfig.error && rowAction.fileConfig.error($event)\">\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction.label }}\n </fs-file>\n }\n</ng-template>\n@if (rowAction?.visible$ | async) {\n @switch (
|
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineActionComponent, isStandalone: true, selector: "fs-list-row-inline-action", inputs: { rowAction: "rowAction", row: "row" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-template #buttonContent>\n @if (!rowAction?.fileConfig) {\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction?.label }}\n } @else {\n <fs-file\n class=\"action-button\"\n [accept]=\"rowAction.fileConfig.accept || '*'\"\n [multiple]=\"rowAction.fileConfig.multiple\"\n [minWidth]=\"rowAction.fileConfig.minWidth\"\n [minHeight]=\"rowAction.fileConfig.minHeight\"\n [imageWidth]=\"rowAction.fileConfig.maxWidth\"\n [imageHeight]=\"rowAction.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"rowAction.fileConfig.error && rowAction.fileConfig.error($event)\">\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction.label }}\n </fs-file>\n }\n</ng-template>\n@if (rowAction?.visible$ | async) {\n @switch (rowAction.type) {\n <!-- Basic button -->\n @case ('basic') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Raised button -->\n @case ('raised') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Icon button -->\n @case ('icon') {\n <fs-list-row-inline-icon-button\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n [icon]=\"icon\"\n [buttonContent]=\"buttonContent\"\n (clicked)=\"actionClick($event)\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-icon-button>\n }\n <!-- Fab button -->\n @case ('fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Mini Fab button -->\n @case ('mini-fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n }\n}", styles: ["mat-icon{display:flex}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: MatFabAnchor, selector: "a[mat-fab]", inputs: ["extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: MatMiniFabAnchor, selector: "a[mat-mini-fab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: FsFileModule }, { kind: "component", type: i1.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: AsyncPipe, name: "async" }, { kind: "component", type: FsRowInlineIconButtonComponent, selector: "fs-list-row-inline-icon-button", inputs: ["rowAction", "row", "icon", "buttonContent"], outputs: ["clicked", "fileSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37
36
|
}
|
|
38
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, decorators: [{
|
|
39
38
|
type: Component,
|
|
40
39
|
args: [{ selector: 'fs-list-row-inline-action', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
41
|
-
MatButton,
|
|
42
40
|
NgClass,
|
|
43
41
|
NgTemplateOutlet,
|
|
44
42
|
MatAnchor,
|
|
45
43
|
RouterLink,
|
|
46
|
-
|
|
47
|
-
MatIconAnchor,
|
|
44
|
+
MatButton,
|
|
48
45
|
MatFabButton,
|
|
49
46
|
MatFabAnchor,
|
|
50
47
|
MatMiniFabButton,
|
|
@@ -52,7 +49,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
52
49
|
MatIcon,
|
|
53
50
|
FsFileModule,
|
|
54
51
|
AsyncPipe,
|
|
55
|
-
|
|
52
|
+
FsRowInlineIconButtonComponent,
|
|
53
|
+
], template: "<ng-template #buttonContent>\n @if (!rowAction?.fileConfig) {\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction?.label }}\n } @else {\n <fs-file\n class=\"action-button\"\n [accept]=\"rowAction.fileConfig.accept || '*'\"\n [multiple]=\"rowAction.fileConfig.multiple\"\n [minWidth]=\"rowAction.fileConfig.minWidth\"\n [minHeight]=\"rowAction.fileConfig.minHeight\"\n [imageWidth]=\"rowAction.fileConfig.maxWidth\"\n [imageHeight]=\"rowAction.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"rowAction.fileConfig.error && rowAction.fileConfig.error($event)\">\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction.label }}\n </fs-file>\n }\n</ng-template>\n@if (rowAction?.visible$ | async) {\n @switch (rowAction.type) {\n <!-- Basic button -->\n @case ('basic') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Raised button -->\n @case ('raised') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Icon button -->\n @case ('icon') {\n <fs-list-row-inline-icon-button\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n [icon]=\"icon\"\n [buttonContent]=\"buttonContent\"\n (clicked)=\"actionClick($event)\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-icon-button>\n }\n <!-- Fab button -->\n @case ('fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Mini Fab button -->\n @case ('mini-fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n }\n}", styles: ["mat-icon{display:flex}\n"] }]
|
|
56
54
|
}], propDecorators: { rowAction: [{
|
|
57
55
|
type: Input
|
|
58
56
|
}], row: [{
|
|
@@ -62,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
62
60
|
}], fileSelect: [{
|
|
63
61
|
type: Output
|
|
64
62
|
}] } });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvaW5saW5lLWFjdGlvbi9pbmxpbmUtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUosT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUEwQmhFLE1BQU0sT0FBTywwQkFBMEI7SUFFOUIsVUFBVSxDQUFhO0lBR3ZCLFNBQVMsQ0FBWTtJQUdyQixHQUFHLENBQU07SUFHVCxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUc3QixVQUFVLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7SUFHbkQsSUFBSSxDQUFTO0lBRWIsV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLElBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRU0sV0FBVyxDQUFDLEtBQUs7UUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBRXRDLElBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2hELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztRQUNwQyxDQUFDO0lBQ0gsQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUFLO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7dUdBdkNVLDBCQUEwQjsyRkFBMUIsMEJBQTBCLHFOQzlDdkMsc2dJQThIQyxrRkRoR0csU0FBUyxpTEFDVCxPQUFPLG9GQUNQLGdCQUFnQixvSkFDaEIsU0FBUyxpS0FDVCxVQUFVLG9PQUNWLGFBQWEsNkZBQ2IsYUFBYSxxR0FDYixZQUFZLDJHQUNaLFlBQVksbUhBQ1osZ0JBQWdCLDBGQUNoQixnQkFBZ0Isa0dBQ2hCLE9BQU8sMElBQ1AsWUFBWSw4VUFDWixTQUFTOzsyRkFHQSwwQkFBMEI7a0JBdkJ0QyxTQUFTOytCQUNFLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsU0FBUzt3QkFDVCxPQUFPO3dCQUNQLGdCQUFnQjt3QkFDaEIsU0FBUzt3QkFDVCxVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLE9BQU87d0JBQ1AsWUFBWTt3QkFDWixTQUFTO3FCQUNWOzhCQU9NLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsT0FBTztzQkFEYixNQUFNO2dCQUlBLFVBQVU7c0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nQ2xhc3MsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgTWF0QW5jaG9yLCBNYXRCdXR0b24sIE1hdEZhYkFuY2hvciwgTWF0RmFiQnV0dG9uLCBNYXRJY29uQW5jaG9yLCBNYXRJY29uQnV0dG9uLCBNYXRNaW5pRmFiQW5jaG9yLCBNYXRNaW5pRmFiQnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcblxuaW1wb3J0IHsgRnNGaWxlLCBGc0ZpbGVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcblxuaW1wb3J0IHsgQWN0aW9uVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudW1zL2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdyc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctaW5saW5lLWFjdGlvbicsXG4gIHN0eWxlVXJsczogWycuL2lubGluZS1hY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdEJ1dHRvbixcbiAgICBOZ0NsYXNzLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgTWF0QW5jaG9yLFxuICAgIFJvdXRlckxpbmssXG4gICAgTWF0SWNvbkJ1dHRvbixcbiAgICBNYXRJY29uQW5jaG9yLFxuICAgIE1hdEZhYkJ1dHRvbixcbiAgICBNYXRGYWJBbmNob3IsXG4gICAgTWF0TWluaUZhYkJ1dHRvbixcbiAgICBNYXRNaW5pRmFiQW5jaG9yLFxuICAgIE1hdEljb24sXG4gICAgRnNGaWxlTW9kdWxlLFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNSb3dJbmxpbmVBY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIFxuICBwdWJsaWMgYWN0aW9uVHlwZTogQWN0aW9uVHlwZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93QWN0aW9uOiBSb3dBY3Rpb247XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvdzogUm93O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGVTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPEZzRmlsZSB8IEZzRmlsZVtdPigpO1xuXG5cbiAgcHVibGljIGljb246IHN0cmluZztcbiAgXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYoY2hhbmdlcy5yb3cpIHtcbiAgICAgIHRoaXMuaWNvbiA9IHRoaXMucm93QWN0aW9uLmdldFJvd0ljb24odGhpcy5yb3cuZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFjdGlvbkNsaWNrKGV2ZW50KSB7XG4gICAgdGhpcy5jbGlja2VkLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aW9uVHlwZSA9IHRoaXMucm93QWN0aW9uLnR5cGU7XG5cbiAgICBpZighdGhpcy5yb3dBY3Rpb24ubGFiZWwgJiYgdGhpcy5yb3dBY3Rpb24uaWNvbikge1xuICAgICAgdGhpcy5hY3Rpb25UeXBlID0gQWN0aW9uVHlwZS5JY29uO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBmaWxlU2VsZWN0ZWQoZXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVTZWxlY3QuZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjYnV0dG9uQ29udGVudD5cbiAgQGlmICghcm93QWN0aW9uPy5maWxlQ29uZmlnKSB7XG4gICAgQGlmIChpY29uKSB7XG4gICAgICA8bWF0LWljb24+XG4gICAgICAgIHt7IGljb24gfX1cbiAgICAgIDwvbWF0LWljb24+XG4gICAgfVxuICAgIHt7IHJvd0FjdGlvbj8ubGFiZWwgfX1cbiAgfSBAZWxzZSB7XG4gICAgPGZzLWZpbGVcbiAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCJcbiAgICAgICAgW2FjY2VwdF09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5hY2NlcHQgfHwgJyonXCJcbiAgICAgICAgW211bHRpcGxlXT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm11bHRpcGxlXCJcbiAgICAgICAgW21pbldpZHRoXT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm1pbldpZHRoXCJcbiAgICAgICAgW21pbkhlaWdodF09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5taW5IZWlnaHRcIlxuICAgICAgICBbaW1hZ2VXaWR0aF09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5tYXhXaWR0aFwiXG4gICAgICAgIFtpbWFnZUhlaWdodF09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5tYXhIZWlnaHRcIlxuICAgICAgICAoc2VsZWN0KT1cImZpbGVTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICAgICAgKGVycm9yKT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLmVycm9yICYmIHJvd0FjdGlvbi5maWxlQ29uZmlnLmVycm9yKCRldmVudClcIj5cbiAgICAgIEBpZiAoaWNvbikge1xuICAgICAgICA8bWF0LWljb24+XG4gICAgICAgICAge3sgaWNvbiB9fVxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgfVxuICAgICAge3sgcm93QWN0aW9uLmxhYmVsIH19XG4gICAgPC9mcy1maWxlPlxuICB9XG48L25nLXRlbXBsYXRlPlxuQGlmIChyb3dBY3Rpb24/LnZpc2libGUkIHwgYXN5bmMpIHtcbiAgQHN3aXRjaCAoYWN0aW9uVHlwZSkge1xuICAgIDwhLS0gQmFzaWMgYnV0dG9uIC0tPlxuICAgIEBjYXNlICgnYmFzaWMnKSB7XG4gICAgICBAaWYgKCFyb3dBY3Rpb24ucm91dGVyTGluaykge1xuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxhXG4gICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgfVxuICAgIDwhLS0gUmFpc2VkIGJ1dHRvbiAtLT5cbiAgICBAY2FzZSAoJ3JhaXNlZCcpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxhXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwicm93QWN0aW9uLnJvdXRlckxpbmsucXVlcnlQYXJhbXNcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hPlxuICAgICAgfVxuICAgIH1cbiAgICA8IS0tIEljb24gYnV0dG9uIC0tPlxuICAgIEBjYXNlICgnaWNvbicpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJyb3dBY3Rpb24uY2xhc3NBcnJheVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YVxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgfVxuICAgIDwhLS0gRmFiIGJ1dHRvbiAtLT5cbiAgICBAY2FzZSAoJ2ZhYicpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LWZhYlxuICAgICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwicm93QWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGFcbiAgICAgICAgICAgIG1hdC1mYWJcbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLmxpbmtcIlxuICAgICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYT5cbiAgICAgIH1cbiAgICB9XG4gICAgPCEtLSBNaW5pIEZhYiBidXR0b24gLS0+XG4gICAgQGNhc2UgKCdtaW5pLWZhYicpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LW1pbmktZmFiXG4gICAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJyb3dBY3Rpb24uY2xhc3NBcnJheVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YVxuICAgICAgICAgICAgbWF0LW1pbmktZmFiXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgfVxuICB9XG59Il19
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvaW5saW5lLWFjdGlvbi9pbmxpbmUtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsT0FBTyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEdBQ2pCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRWhFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUF5QnJGLE1BQU0sT0FBTywwQkFBMEI7SUFHOUIsU0FBUyxDQUFZO0lBR3JCLEdBQUcsQ0FBTTtJQUdULE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzdCLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztJQUduRCxJQUFJLENBQVM7SUFFYixXQUFXLENBQUMsT0FBc0I7UUFDdkMsSUFBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsQ0FBQztJQUNILENBQUM7SUFFTSxXQUFXLENBQUMsS0FBSztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2hELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFTSxZQUFZLENBQUMsS0FBSztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO3VHQW5DVSwwQkFBMEI7MkZBQTFCLDBCQUEwQixxTkN0RHZDLDR1SEFzSEMsa0ZEL0VHLE9BQU8sb0ZBQ1AsZ0JBQWdCLG9KQUNoQixTQUFTLGlLQUNULFVBQVUsb09BQ1YsU0FBUyxpTEFDVCxZQUFZLDJHQUNaLFlBQVksbUhBQ1osZ0JBQWdCLDBGQUNoQixnQkFBZ0Isa0dBQ2hCLE9BQU8sMElBQ1AsWUFBWSw4VUFDWixTQUFTLDhDQUNULDhCQUE4Qjs7MkZBR3JCLDBCQUEwQjtrQkF0QnRDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxPQUFPO3dCQUNQLGdCQUFnQjt3QkFDaEIsU0FBUzt3QkFDVCxVQUFVO3dCQUNWLFNBQVM7d0JBQ1QsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixPQUFPO3dCQUNQLFlBQVk7d0JBQ1osU0FBUzt3QkFDVCw4QkFBOEI7cUJBQy9COzhCQUtNLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsT0FBTztzQkFEYixNQUFNO2dCQUlBLFVBQVU7c0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nQ2xhc3MsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtcbiAgTWF0QW5jaG9yLFxuICBNYXRCdXR0b24sXG4gIE1hdEZhYkFuY2hvcixcbiAgTWF0RmFiQnV0dG9uLFxuICBNYXRNaW5pRmFiQW5jaG9yLFxuICBNYXRNaW5pRmFiQnV0dG9uLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5pbXBvcnQgeyBGc0ZpbGUsIEZzRmlsZU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbGUnO1xuXG5pbXBvcnQgeyBBY3Rpb25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZW51bXMvYWN0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBSb3cgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93JztcbmltcG9ydCB7IFJvd0FjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yb3ctYWN0aW9uLm1vZGVsJztcblxuaW1wb3J0IHsgRnNSb3dJbmxpbmVJY29uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWxpc3Qtcm93LWlubGluZS1hY3Rpb24nLFxuICBzdHlsZVVybHM6IFsnLi9pbmxpbmUtYWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9pbmxpbmUtYWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0NsYXNzLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgTWF0QW5jaG9yLFxuICAgIFJvdXRlckxpbmssXG4gICAgTWF0QnV0dG9uLFxuICAgIE1hdEZhYkJ1dHRvbixcbiAgICBNYXRGYWJBbmNob3IsXG4gICAgTWF0TWluaUZhYkJ1dHRvbixcbiAgICBNYXRNaW5pRmFiQW5jaG9yLFxuICAgIE1hdEljb24sXG4gICAgRnNGaWxlTW9kdWxlLFxuICAgIEFzeW5jUGlwZSxcbiAgICBGc1Jvd0lubGluZUljb25CdXR0b25Db21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzUm93SW5saW5lQWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByb3dBY3Rpb246IFJvd0FjdGlvbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93OiBSb3c7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZmlsZVNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8RnNGaWxlIHwgRnNGaWxlW10+KCk7XG5cblxuICBwdWJsaWMgaWNvbjogc3RyaW5nO1xuICBcbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZihjaGFuZ2VzLnJvdykge1xuICAgICAgdGhpcy5pY29uID0gdGhpcy5yb3dBY3Rpb24uZ2V0Um93SWNvbih0aGlzLnJvdy5kYXRhKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYWN0aW9uQ2xpY2soZXZlbnQpIHtcbiAgICB0aGlzLmNsaWNrZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYoIXRoaXMucm93QWN0aW9uLmxhYmVsICYmIHRoaXMucm93QWN0aW9uLmljb24pIHtcbiAgICAgIHRoaXMucm93QWN0aW9uLnR5cGUgPSBBY3Rpb25UeXBlLkljb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGZpbGVTZWxlY3RlZChldmVudCk6IHZvaWQge1xuICAgIHRoaXMuZmlsZVNlbGVjdC5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNidXR0b25Db250ZW50PlxuICBAaWYgKCFyb3dBY3Rpb24/LmZpbGVDb25maWcpIHtcbiAgICBAaWYgKGljb24pIHtcbiAgICAgIDxtYXQtaWNvbj5cbiAgICAgICAge3sgaWNvbiB9fVxuICAgICAgPC9tYXQtaWNvbj5cbiAgICB9XG4gICAge3sgcm93QWN0aW9uPy5sYWJlbCB9fVxuICB9IEBlbHNlIHtcbiAgICA8ZnMtZmlsZVxuICAgICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIlxuICAgICAgICBbYWNjZXB0XT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLmFjY2VwdCB8fCAnKidcIlxuICAgICAgICBbbXVsdGlwbGVdPVwicm93QWN0aW9uLmZpbGVDb25maWcubXVsdGlwbGVcIlxuICAgICAgICBbbWluV2lkdGhdPVwicm93QWN0aW9uLmZpbGVDb25maWcubWluV2lkdGhcIlxuICAgICAgICBbbWluSGVpZ2h0XT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm1pbkhlaWdodFwiXG4gICAgICAgIFtpbWFnZVdpZHRoXT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm1heFdpZHRoXCJcbiAgICAgICAgW2ltYWdlSGVpZ2h0XT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm1heEhlaWdodFwiXG4gICAgICAgIChzZWxlY3QpPVwiZmlsZVNlbGVjdGVkKCRldmVudClcIlxuICAgICAgICAoZXJyb3IpPVwicm93QWN0aW9uLmZpbGVDb25maWcuZXJyb3IgJiYgcm93QWN0aW9uLmZpbGVDb25maWcuZXJyb3IoJGV2ZW50KVwiPlxuICAgICAgQGlmIChpY29uKSB7XG4gICAgICAgIDxtYXQtaWNvbj5cbiAgICAgICAgICB7eyBpY29uIH19XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICB9XG4gICAgICB7eyByb3dBY3Rpb24ubGFiZWwgfX1cbiAgICA8L2ZzLWZpbGU+XG4gIH1cbjwvbmctdGVtcGxhdGU+XG5AaWYgKHJvd0FjdGlvbj8udmlzaWJsZSQgfCBhc3luYykge1xuICBAc3dpdGNoIChyb3dBY3Rpb24udHlwZSkge1xuICAgIDwhLS0gQmFzaWMgYnV0dG9uIC0tPlxuICAgIEBjYXNlICgnYmFzaWMnKSB7XG4gICAgICBAaWYgKCFyb3dBY3Rpb24ucm91dGVyTGluaykge1xuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxhXG4gICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgfVxuICAgIDwhLS0gUmFpc2VkIGJ1dHRvbiAtLT5cbiAgICBAY2FzZSAoJ3JhaXNlZCcpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxhXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwicm93QWN0aW9uLnJvdXRlckxpbmsucXVlcnlQYXJhbXNcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hPlxuICAgICAgfVxuICAgIH1cbiAgICA8IS0tIEljb24gYnV0dG9uIC0tPlxuICAgIEBjYXNlICgnaWNvbicpIHtcbiAgICAgIDxmcy1saXN0LXJvdy1pbmxpbmUtaWNvbi1idXR0b25cbiAgICAgICAgW3Jvd0FjdGlvbl09XCJyb3dBY3Rpb25cIlxuICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgIFtpY29uXT1cImljb25cIlxuICAgICAgICBbYnV0dG9uQ29udGVudF09XCJidXR0b25Db250ZW50XCJcbiAgICAgICAgKGNsaWNrZWQpPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgIChmaWxlU2VsZWN0KT1cImZpbGVTZWxlY3RlZCgkZXZlbnQpXCI+XG4gICAgICA8L2ZzLWxpc3Qtcm93LWlubGluZS1pY29uLWJ1dHRvbj5cbiAgICB9XG4gICAgPCEtLSBGYWIgYnV0dG9uIC0tPlxuICAgIEBjYXNlICgnZmFiJykge1xuICAgICAgQGlmICghcm93QWN0aW9uLnJvdXRlckxpbmspIHtcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBtYXQtZmFiXG4gICAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJyb3dBY3Rpb24uY2xhc3NBcnJheVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YVxuICAgICAgICAgICAgbWF0LWZhYlxuICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwicm93QWN0aW9uLnJvdXRlckxpbmsucXVlcnlQYXJhbXNcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hPlxuICAgICAgfVxuICAgIH1cbiAgICA8IS0tIE1pbmkgRmFiIGJ1dHRvbiAtLT5cbiAgICBAY2FzZSAoJ21pbmktZmFiJykge1xuICAgICAgQGlmICghcm93QWN0aW9uLnJvdXRlckxpbmspIHtcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxhXG4gICAgICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLmxpbmtcIlxuICAgICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYT5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iXX0=
|
|
@@ -10,7 +10,7 @@ import * as i1$1 from '@firestitch/menu';
|
|
|
10
10
|
import { FsMenuComponent, FsMenuModule } from '@firestitch/menu';
|
|
11
11
|
import { FsPrompt } from '@firestitch/prompt';
|
|
12
12
|
import { RouterLink, ActivatedRoute } from '@angular/router';
|
|
13
|
-
import {
|
|
13
|
+
import { MatIconButton, MatIconAnchor, MatAnchor, MatButton, MatFabButton, MatFabAnchor, MatMiniFabButton, MatMiniFabAnchor } from '@angular/material/button';
|
|
14
14
|
import * as i1 from '@firestitch/file';
|
|
15
15
|
import { FsFileModule } from '@firestitch/file';
|
|
16
16
|
import { CdkScrollable } from '@angular/cdk/scrolling';
|
|
@@ -1422,8 +1422,49 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
1422
1422
|
}]
|
|
1423
1423
|
}] });
|
|
1424
1424
|
|
|
1425
|
+
class FsRowInlineIconButtonComponent {
|
|
1426
|
+
rowAction;
|
|
1427
|
+
row;
|
|
1428
|
+
icon;
|
|
1429
|
+
buttonContent;
|
|
1430
|
+
clicked = new EventEmitter();
|
|
1431
|
+
fileSelect = new EventEmitter();
|
|
1432
|
+
actionClick(event) {
|
|
1433
|
+
this.clicked.emit(event);
|
|
1434
|
+
}
|
|
1435
|
+
fileSelected(event) {
|
|
1436
|
+
this.fileSelect.emit(event);
|
|
1437
|
+
}
|
|
1438
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineIconButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1439
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineIconButtonComponent, isStandalone: true, selector: "fs-list-row-inline-icon-button", inputs: { rowAction: "rowAction", row: "row", icon: "icon", buttonContent: "buttonContent" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, ngImport: i0, template: "@if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n} @else {\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n}\n\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: FsFileModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1440
|
+
}
|
|
1441
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineIconButtonComponent, decorators: [{
|
|
1442
|
+
type: Component,
|
|
1443
|
+
args: [{ selector: 'fs-list-row-inline-icon-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
1444
|
+
NgClass,
|
|
1445
|
+
NgTemplateOutlet,
|
|
1446
|
+
RouterLink,
|
|
1447
|
+
MatIconButton,
|
|
1448
|
+
MatIconAnchor,
|
|
1449
|
+
MatIcon,
|
|
1450
|
+
FsFileModule,
|
|
1451
|
+
AsyncPipe,
|
|
1452
|
+
], template: "@if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n} @else {\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n}\n\n" }]
|
|
1453
|
+
}], propDecorators: { rowAction: [{
|
|
1454
|
+
type: Input
|
|
1455
|
+
}], row: [{
|
|
1456
|
+
type: Input
|
|
1457
|
+
}], icon: [{
|
|
1458
|
+
type: Input
|
|
1459
|
+
}], buttonContent: [{
|
|
1460
|
+
type: Input
|
|
1461
|
+
}], clicked: [{
|
|
1462
|
+
type: Output
|
|
1463
|
+
}], fileSelect: [{
|
|
1464
|
+
type: Output
|
|
1465
|
+
}] } });
|
|
1466
|
+
|
|
1425
1467
|
class FsRowInlineActionComponent {
|
|
1426
|
-
actionType;
|
|
1427
1468
|
rowAction;
|
|
1428
1469
|
row;
|
|
1429
1470
|
clicked = new EventEmitter();
|
|
@@ -1438,27 +1479,24 @@ class FsRowInlineActionComponent {
|
|
|
1438
1479
|
this.clicked.emit(event);
|
|
1439
1480
|
}
|
|
1440
1481
|
ngOnInit() {
|
|
1441
|
-
this.actionType = this.rowAction.type;
|
|
1442
1482
|
if (!this.rowAction.label && this.rowAction.icon) {
|
|
1443
|
-
this.
|
|
1483
|
+
this.rowAction.type = ActionType.Icon;
|
|
1444
1484
|
}
|
|
1445
1485
|
}
|
|
1446
1486
|
fileSelected(event) {
|
|
1447
1487
|
this.fileSelect.emit(event);
|
|
1448
1488
|
}
|
|
1449
1489
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1450
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineActionComponent, isStandalone: true, selector: "fs-list-row-inline-action", inputs: { rowAction: "rowAction", row: "row" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-template #buttonContent>\n @if (!rowAction?.fileConfig) {\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction?.label }}\n } @else {\n <fs-file\n class=\"action-button\"\n [accept]=\"rowAction.fileConfig.accept || '*'\"\n [multiple]=\"rowAction.fileConfig.multiple\"\n [minWidth]=\"rowAction.fileConfig.minWidth\"\n [minHeight]=\"rowAction.fileConfig.minHeight\"\n [imageWidth]=\"rowAction.fileConfig.maxWidth\"\n [imageHeight]=\"rowAction.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"rowAction.fileConfig.error && rowAction.fileConfig.error($event)\">\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction.label }}\n </fs-file>\n }\n</ng-template>\n@if (rowAction?.visible$ | async) {\n @switch (
|
|
1490
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineActionComponent, isStandalone: true, selector: "fs-list-row-inline-action", inputs: { rowAction: "rowAction", row: "row" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-template #buttonContent>\n @if (!rowAction?.fileConfig) {\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction?.label }}\n } @else {\n <fs-file\n class=\"action-button\"\n [accept]=\"rowAction.fileConfig.accept || '*'\"\n [multiple]=\"rowAction.fileConfig.multiple\"\n [minWidth]=\"rowAction.fileConfig.minWidth\"\n [minHeight]=\"rowAction.fileConfig.minHeight\"\n [imageWidth]=\"rowAction.fileConfig.maxWidth\"\n [imageHeight]=\"rowAction.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"rowAction.fileConfig.error && rowAction.fileConfig.error($event)\">\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction.label }}\n </fs-file>\n }\n</ng-template>\n@if (rowAction?.visible$ | async) {\n @switch (rowAction.type) {\n <!-- Basic button -->\n @case ('basic') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Raised button -->\n @case ('raised') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Icon button -->\n @case ('icon') {\n <fs-list-row-inline-icon-button\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n [icon]=\"icon\"\n [buttonContent]=\"buttonContent\"\n (clicked)=\"actionClick($event)\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-icon-button>\n }\n <!-- Fab button -->\n @case ('fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Mini Fab button -->\n @case ('mini-fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n }\n}", styles: ["mat-icon{display:flex}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: MatFabAnchor, selector: "a[mat-fab]", inputs: ["extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: MatMiniFabAnchor, selector: "a[mat-mini-fab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: FsFileModule }, { kind: "component", type: i1.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: AsyncPipe, name: "async" }, { kind: "component", type: FsRowInlineIconButtonComponent, selector: "fs-list-row-inline-icon-button", inputs: ["rowAction", "row", "icon", "buttonContent"], outputs: ["clicked", "fileSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1451
1491
|
}
|
|
1452
1492
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, decorators: [{
|
|
1453
1493
|
type: Component,
|
|
1454
1494
|
args: [{ selector: 'fs-list-row-inline-action', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
1455
|
-
MatButton,
|
|
1456
1495
|
NgClass,
|
|
1457
1496
|
NgTemplateOutlet,
|
|
1458
1497
|
MatAnchor,
|
|
1459
1498
|
RouterLink,
|
|
1460
|
-
|
|
1461
|
-
MatIconAnchor,
|
|
1499
|
+
MatButton,
|
|
1462
1500
|
MatFabButton,
|
|
1463
1501
|
MatFabAnchor,
|
|
1464
1502
|
MatMiniFabButton,
|
|
@@ -1466,7 +1504,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
1466
1504
|
MatIcon,
|
|
1467
1505
|
FsFileModule,
|
|
1468
1506
|
AsyncPipe,
|
|
1469
|
-
|
|
1507
|
+
FsRowInlineIconButtonComponent,
|
|
1508
|
+
], template: "<ng-template #buttonContent>\n @if (!rowAction?.fileConfig) {\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction?.label }}\n } @else {\n <fs-file\n class=\"action-button\"\n [accept]=\"rowAction.fileConfig.accept || '*'\"\n [multiple]=\"rowAction.fileConfig.multiple\"\n [minWidth]=\"rowAction.fileConfig.minWidth\"\n [minHeight]=\"rowAction.fileConfig.minHeight\"\n [imageWidth]=\"rowAction.fileConfig.maxWidth\"\n [imageHeight]=\"rowAction.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"rowAction.fileConfig.error && rowAction.fileConfig.error($event)\">\n @if (icon) {\n <mat-icon>\n {{ icon }}\n </mat-icon>\n }\n {{ rowAction.label }}\n </fs-file>\n }\n</ng-template>\n@if (rowAction?.visible$ | async) {\n @switch (rowAction.type) {\n <!-- Basic button -->\n @case ('basic') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Raised button -->\n @case ('raised') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Icon button -->\n @case ('icon') {\n <fs-list-row-inline-icon-button\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n [icon]=\"icon\"\n [buttonContent]=\"buttonContent\"\n (clicked)=\"actionClick($event)\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-icon-button>\n }\n <!-- Fab button -->\n @case ('fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n <!-- Mini Fab button -->\n @case ('mini-fab') {\n @if (!rowAction.routerLink) {\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </button>\n } @else {\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-container [ngTemplateOutlet]=\"buttonContent\"></ng-container>\n </a>\n }\n }\n }\n}", styles: ["mat-icon{display:flex}\n"] }]
|
|
1470
1509
|
}], propDecorators: { rowAction: [{
|
|
1471
1510
|
type: Input
|
|
1472
1511
|
}], row: [{
|