@firestitch/list 18.0.70 → 18.0.72

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.
@@ -0,0 +1,15 @@
1
+ import { EventEmitter, OnChanges, SimpleChanges } 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 FsRowInlineButtonContentComponent implements OnChanges {
7
+ rowAction: RowAction;
8
+ row: Row;
9
+ fileSelect: EventEmitter<FsFile | FsFile[]>;
10
+ icon: string;
11
+ ngOnChanges(changes: SimpleChanges): void;
12
+ fileSelected(event: FsFile | FsFile[]): void;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<FsRowInlineButtonContentComponent, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsRowInlineButtonContentComponent, "fs-list-row-inline-button-content", never, { "rowAction": { "alias": "rowAction"; "required": false; }; "row": { "alias": "row"; "required": false; }; }, { "fileSelect": "fileSelect"; }, never, never, true, never>;
15
+ }
@@ -1,4 +1,4 @@
1
- import { EventEmitter, TemplateRef } from '@angular/core';
1
+ import { EventEmitter } from '@angular/core';
2
2
  import { FsFile } from '@firestitch/file';
3
3
  import { Row } from '../../../../../models/row';
4
4
  import { RowAction } from '../../../../../models/row-action.model';
@@ -6,12 +6,10 @@ import * as i0 from "@angular/core";
6
6
  export declare class FsRowInlineIconButtonComponent {
7
7
  rowAction: RowAction;
8
8
  row: Row;
9
- icon: string;
10
- buttonContent: TemplateRef<any>;
11
9
  clicked: EventEmitter<any>;
12
10
  fileSelect: EventEmitter<FsFile | FsFile[]>;
13
- actionClick(event: any): void;
14
- fileSelected(event: any): void;
11
+ actionClick(event: Event): void;
12
+ fileSelected(event: FsFile | FsFile[]): void;
15
13
  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>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsRowInlineIconButtonComponent, "fs-list-row-inline-icon-button", never, { "rowAction": { "alias": "rowAction"; "required": false; }; "row": { "alias": "row"; "required": false; }; }, { "clicked": "clicked"; "fileSelect": "fileSelect"; }, never, never, true, never>;
17
15
  }
@@ -0,0 +1,9 @@
1
+ import { Row } from '../../../../../models/row';
2
+ import { RowAction } from '../../../../../models/row-action.model';
3
+ import * as i0 from "@angular/core";
4
+ export declare class FsRowInlineIconLinkComponent {
5
+ rowAction: RowAction;
6
+ row: Row;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<FsRowInlineIconLinkComponent, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsRowInlineIconLinkComponent, "fs-list-row-inline-icon-link", never, { "rowAction": { "alias": "rowAction"; "required": false; }; "row": { "alias": "row"; "required": false; }; }, {}, never, never, true, never>;
9
+ }
@@ -1,18 +1,16 @@
1
- import { EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
2
  import { FsFile } from '@firestitch/file';
3
3
  import { Row } from '../../../../models/row';
4
4
  import { RowAction } from '../../../../models/row-action.model';
5
5
  import * as i0 from "@angular/core";
6
- export declare class FsRowInlineActionComponent implements OnInit, OnChanges {
6
+ export declare class FsRowInlineActionComponent implements OnInit {
7
7
  rowAction: RowAction;
8
8
  row: Row;
9
9
  clicked: EventEmitter<any>;
10
10
  fileSelect: EventEmitter<FsFile | FsFile[]>;
11
- icon: string;
12
- ngOnChanges(changes: SimpleChanges): void;
13
- actionClick(event: any): void;
11
+ actionClick(event: Event): void;
14
12
  ngOnInit(): void;
15
- fileSelected(event: any): void;
13
+ fileSelected(event: FsFile | FsFile[]): void;
16
14
  static ɵfac: i0.ɵɵFactoryDeclaration<FsRowInlineActionComponent, never>;
17
15
  static ɵcmp: i0.ɵɵComponentDeclaration<FsRowInlineActionComponent, "fs-list-row-inline-action", never, { "rowAction": { "alias": "rowAction"; "required": false; }; "row": { "alias": "row"; "required": false; }; }, { "clicked": "clicked"; "fileSelect": "fileSelect"; }, never, never, true, never>;
18
16
  }
@@ -0,0 +1,36 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
2
+ import { MatIcon } from '@angular/material/icon';
3
+ import { FsFileModule } from '@firestitch/file';
4
+ import { RowAction } from '../../../../../models/row-action.model';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@firestitch/file";
7
+ export class FsRowInlineButtonContentComponent {
8
+ rowAction;
9
+ row;
10
+ fileSelect = new EventEmitter();
11
+ icon;
12
+ ngOnChanges(changes) {
13
+ if ((changes.row || changes.rowAction) && this.rowAction && this.row) {
14
+ this.icon = this.rowAction.getRowIcon(this.row.data);
15
+ }
16
+ }
17
+ fileSelected(event) {
18
+ this.fileSelect.emit(event);
19
+ }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineButtonContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineButtonContentComponent, isStandalone: true, selector: "fs-list-row-inline-button-content", inputs: { rowAction: "rowAction", row: "row" }, outputs: { fileSelect: "fileSelect" }, usesOnChanges: true, ngImport: i0, template: "@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\n", dependencies: [{ 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineButtonContentComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'fs-list-row-inline-button-content', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
26
+ MatIcon,
27
+ FsFileModule,
28
+ ], template: "@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\n" }]
29
+ }], propDecorators: { rowAction: [{
30
+ type: Input
31
+ }], row: [{
32
+ type: Input
33
+ }], fileSelect: [{
34
+ type: Output
35
+ }] } });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vYnV0dG9uLWNvbnRlbnQvYnV0dG9uLWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vYnV0dG9uLWNvbnRlbnQvYnV0dG9uLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUd4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQWFuRSxNQUFNLE9BQU8saUNBQWlDO0lBR3JDLFNBQVMsQ0FBWTtJQUdyQixHQUFHLENBQU07SUFHVCxVQUFVLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7SUFFbkQsSUFBSSxDQUFTO0lBRWIsV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLElBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNwRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsQ0FBQztJQUNILENBQUM7SUFFTSxZQUFZLENBQUMsS0FBd0I7UUFDMUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzt1R0FyQlUsaUNBQWlDOzJGQUFqQyxpQ0FBaUMseU1DNUI5QywydkJBMkJBLDRDREhJLE9BQU8sMElBQ1AsWUFBWTs7MkZBR0gsaUNBQWlDO2tCQVY3QyxTQUFTOytCQUNFLG1DQUFtQyxtQkFFNUIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsT0FBTzt3QkFDUCxZQUFZO3FCQUNiOzhCQUtNLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5pbXBvcnQgeyBGc0ZpbGUsIEZzRmlsZU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbGUnO1xuXG5pbXBvcnQgeyBSb3cgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcm93JztcbmltcG9ydCB7IFJvd0FjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9yb3ctYWN0aW9uLm1vZGVsJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdEljb24sXG4gICAgRnNGaWxlTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGc1Jvd0lubGluZUJ1dHRvbkNvbnRlbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByb3dBY3Rpb246IFJvd0FjdGlvbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93OiBSb3c7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWxlU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxGc0ZpbGUgfCBGc0ZpbGVbXT4oKTtcblxuICBwdWJsaWMgaWNvbjogc3RyaW5nO1xuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYoKGNoYW5nZXMucm93IHx8IGNoYW5nZXMucm93QWN0aW9uKSAmJiB0aGlzLnJvd0FjdGlvbiAmJiB0aGlzLnJvdykge1xuICAgICAgdGhpcy5pY29uID0gdGhpcy5yb3dBY3Rpb24uZ2V0Um93SWNvbih0aGlzLnJvdy5kYXRhKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZmlsZVNlbGVjdGVkKGV2ZW50OiBGc0ZpbGUgfCBGc0ZpbGVbXSk6IHZvaWQge1xuICAgIHRoaXMuZmlsZVNlbGVjdC5lbWl0KGV2ZW50KTtcbiAgfVxufVxuXG4iLCJAaWYgKCFyb3dBY3Rpb24/LmZpbGVDb25maWcpIHtcbiAgQGlmIChpY29uKSB7XG4gICAgPG1hdC1pY29uPlxuICAgICAge3sgaWNvbiB9fVxuICAgIDwvbWF0LWljb24+XG4gIH1cbiAge3sgcm93QWN0aW9uPy5sYWJlbCB9fVxufSBAZWxzZSB7XG4gIDxmcy1maWxlXG4gICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIlxuICAgICAgW2FjY2VwdF09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5hY2NlcHQgfHwgJyonXCJcbiAgICAgIFttdWx0aXBsZV09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5tdWx0aXBsZVwiXG4gICAgICBbbWluV2lkdGhdPVwicm93QWN0aW9uLmZpbGVDb25maWcubWluV2lkdGhcIlxuICAgICAgW21pbkhlaWdodF09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5taW5IZWlnaHRcIlxuICAgICAgW2ltYWdlV2lkdGhdPVwicm93QWN0aW9uLmZpbGVDb25maWcubWF4V2lkdGhcIlxuICAgICAgW2ltYWdlSGVpZ2h0XT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm1heEhlaWdodFwiXG4gICAgICAoc2VsZWN0KT1cImZpbGVTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICAgIChlcnJvcik9XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5lcnJvciAmJiByb3dBY3Rpb24uZmlsZUNvbmZpZy5lcnJvcigkZXZlbnQpXCI+XG4gICAgQGlmIChpY29uKSB7XG4gICAgICA8bWF0LWljb24+XG4gICAgICAgIHt7IGljb24gfX1cbiAgICAgIDwvbWF0LWljb24+XG4gICAgfVxuICAgIHt7IHJvd0FjdGlvbi5sYWJlbCB9fVxuICA8L2ZzLWZpbGU+XG59XG5cbiJdfQ==
@@ -1,16 +1,12 @@
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';
1
+ import { NgClass } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
3
+ import { MatIconButton } from '@angular/material/button';
7
4
  import { RowAction } from '../../../../../models/row-action.model';
5
+ import { FsRowInlineButtonContentComponent } from '../button-content/button-content.component';
8
6
  import * as i0 from "@angular/core";
9
7
  export class FsRowInlineIconButtonComponent {
10
8
  rowAction;
11
9
  row;
12
- icon;
13
- buttonContent;
14
10
  clicked = new EventEmitter();
15
11
  fileSelect = new EventEmitter();
16
12
  actionClick(event) {
@@ -20,31 +16,22 @@ export class FsRowInlineIconButtonComponent {
20
16
  this.fileSelect.emit(event);
21
17
  }
22
18
  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 });
19
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsRowInlineIconButtonComponent, isStandalone: true, selector: "fs-list-row-inline-icon-button", inputs: { rowAction: "rowAction", row: "row" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, ngImport: i0, template: "<button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n</button>", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: FsRowInlineButtonContentComponent, selector: "fs-list-row-inline-button-content", inputs: ["rowAction", "row"], outputs: ["fileSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
20
  }
25
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineIconButtonComponent, decorators: [{
26
22
  type: Component,
27
23
  args: [{ selector: 'fs-list-row-inline-icon-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
28
24
  NgClass,
29
- NgTemplateOutlet,
30
- RouterLink,
31
25
  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" }]
26
+ FsRowInlineButtonContentComponent,
27
+ ], template: "<button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n</button>" }]
37
28
  }], propDecorators: { rowAction: [{
38
29
  type: Input
39
30
  }], row: [{
40
31
  type: Input
41
- }], icon: [{
42
- type: Input
43
- }], buttonContent: [{
44
- type: Input
45
32
  }], clicked: [{
46
33
  type: Output
47
34
  }], fileSelect: [{
48
35
  type: Output
49
36
  }] } });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBVSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUd4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBbUJuRSxNQUFNLE9BQU8sOEJBQThCO0lBR2xDLFNBQVMsQ0FBWTtJQUdyQixHQUFHLENBQU07SUFHVCxJQUFJLENBQVM7SUFHYixhQUFhLENBQW1CO0lBR2hDLE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzdCLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztJQUVuRCxXQUFXLENBQUMsS0FBSztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQUs7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzt1R0ExQlUsOEJBQThCOzJGQUE5Qiw4QkFBOEIsbVBDcEMzQywyZUFpQkEsNENEU0ksT0FBTyxvRkFDUCxnQkFBZ0Isb0pBQ2hCLFVBQVUsb09BQ1YsYUFBYSw2RkFDYixhQUFhLG9HQUViLFlBQVk7OzJGQUlILDhCQUE4QjtrQkFoQjFDLFNBQVM7K0JBQ0UsZ0NBQWdDLG1CQUV6Qix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxPQUFPO3dCQUNQLGdCQUFnQjt3QkFDaEIsVUFBVTt3QkFDVixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsT0FBTzt3QkFDUCxZQUFZO3dCQUNaLFNBQVM7cUJBQ1Y7OEJBS00sU0FBUztzQkFEZixLQUFLO2dCQUlDLEdBQUc7c0JBRFQsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsYUFBYTtzQkFEbkIsS0FBSztnQkFJQyxPQUFPO3NCQURiLE1BQU07Z0JBSUEsVUFBVTtzQkFEaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBNYXRJY29uQW5jaG9yLCBNYXRJY29uQnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcblxuaW1wb3J0IHsgRnNGaWxlLCBGc0ZpbGVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcblxuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdyc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctaW5saW5lLWljb24tYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24tYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0NsYXNzLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgUm91dGVyTGluayxcbiAgICBNYXRJY29uQnV0dG9uLFxuICAgIE1hdEljb25BbmNob3IsXG4gICAgTWF0SWNvbixcbiAgICBGc0ZpbGVNb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGc1Jvd0lubGluZUljb25CdXR0b25Db21wb25lbnQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByb3dBY3Rpb246IFJvd0FjdGlvbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93OiBSb3c7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYnV0dG9uQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWxlU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxGc0ZpbGUgfCBGc0ZpbGVbXT4oKTtcblxuICBwdWJsaWMgYWN0aW9uQ2xpY2soZXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBwdWJsaWMgZmlsZVNlbGVjdGVkKGV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5maWxlU2VsZWN0LmVtaXQoZXZlbnQpO1xuICB9XG59XG5cbiIsIkBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICBbbmdDbGFzc109XCJyb3dBY3Rpb24uY2xhc3NBcnJheVwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2J1dHRvbj5cbn0gQGVsc2Uge1xuICA8YVxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L2E+XG59XG5cbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUt6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBYy9GLE1BQU0sT0FBTyw4QkFBOEI7SUFHbEMsU0FBUyxDQUFZO0lBR3JCLEdBQUcsQ0FBTTtJQUdULE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzdCLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztJQUVuRCxXQUFXLENBQUMsS0FBWTtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQXdCO1FBQzFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7dUdBcEJVLDhCQUE4QjsyRkFBOUIsOEJBQThCLHFNQzdCM0Msd1RBVVMsNENEY0wsT0FBTyxvRkFDUCxhQUFhLDZGQUNiLGlDQUFpQzs7MkZBR3hCLDhCQUE4QjtrQkFYMUMsU0FBUzsrQkFDRSxnQ0FBZ0MsbUJBRXpCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLE9BQU87d0JBQ1AsYUFBYTt3QkFDYixpQ0FBaUM7cUJBQ2xDOzhCQUtNLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsT0FBTztzQkFEYixNQUFNO2dCQUlBLFVBQVU7c0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1hdEljb25CdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5pbXBvcnQgeyBGc0ZpbGUgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcblxuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdyc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBGc1Jvd0lubGluZUJ1dHRvbkNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuLi9idXR0b24tY29udGVudC9idXR0b24tY29udGVudC5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWxpc3Qtcm93LWlubGluZS1pY29uLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdDbGFzcyxcbiAgICBNYXRJY29uQnV0dG9uLFxuICAgIEZzUm93SW5saW5lQnV0dG9uQ29udGVudENvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNSb3dJbmxpbmVJY29uQnV0dG9uQ29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93QWN0aW9uOiBSb3dBY3Rpb247XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvdzogUm93O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGVTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPEZzRmlsZSB8IEZzRmlsZVtdPigpO1xuXG4gIHB1YmxpYyBhY3Rpb25DbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBwdWJsaWMgZmlsZVNlbGVjdGVkKGV2ZW50OiBGc0ZpbGUgfCBGc0ZpbGVbXSk6IHZvaWQge1xuICAgIHRoaXMuZmlsZVNlbGVjdC5lbWl0KGV2ZW50KTtcbiAgfVxufVxuXG4iLCI8YnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgbWF0LWljb24tYnV0dG9uXG4gICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gIDxmcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnRcbiAgICBbcm93QWN0aW9uXT1cInJvd0FjdGlvblwiXG4gICAgW3Jvd109XCJyb3dcIlxuICAgIChmaWxlU2VsZWN0KT1cImZpbGVTZWxlY3RlZCgkZXZlbnQpXCI+XG4gIDwvZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50PlxuPC9idXR0b24+Il19
@@ -0,0 +1,25 @@
1
+ import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
2
+ import { RouterLink } from '@angular/router';
3
+ import { MatIconAnchor } from '@angular/material/button';
4
+ import { RowAction } from '../../../../../models/row-action.model';
5
+ import { FsRowInlineButtonContentComponent } from '../button-content/button-content.component';
6
+ import * as i0 from "@angular/core";
7
+ export class FsRowInlineIconLinkComponent {
8
+ rowAction;
9
+ row;
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineIconLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsRowInlineIconLinkComponent, isStandalone: true, selector: "fs-list-row-inline-icon-link", inputs: { rowAction: "rowAction", row: "row" }, ngImport: i0, template: "@if (rowAction?.routerLink) {\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\">\n </fs-list-row-inline-button-content>\n </a>\n}", dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: FsRowInlineButtonContentComponent, selector: "fs-list-row-inline-button-content", inputs: ["rowAction", "row"], outputs: ["fileSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineIconLinkComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'fs-list-row-inline-icon-link', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
16
+ RouterLink,
17
+ MatIconAnchor,
18
+ FsRowInlineButtonContentComponent,
19
+ ], template: "@if (rowAction?.routerLink) {\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\">\n </fs-list-row-inline-button-content>\n </a>\n}" }]
20
+ }], propDecorators: { rowAction: [{
21
+ type: Input
22
+ }], row: [{
23
+ type: Input
24
+ }] } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1saW5rLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2ljb24tbGluay9pY29uLWxpbmsuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaWNvbi1saW5rL2ljb24tbGluay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUl6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBYy9GLE1BQU0sT0FBTyw0QkFBNEI7SUFHaEMsU0FBUyxDQUFZO0lBR3JCLEdBQUcsQ0FBTTt1R0FOTCw0QkFBNEI7MkZBQTVCLDRCQUE0Qix3SUMxQnpDLDZUQVVDLDRDRFdHLFVBQVUsb09BQ1YsYUFBYSxxR0FDYixpQ0FBaUM7OzJGQUd4Qiw0QkFBNEI7a0JBWHhDLFNBQVM7K0JBQ0UsOEJBQThCLG1CQUV2Qix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsaUNBQWlDO3FCQUNsQzs4QkFLTSxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsR0FBRztzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IE1hdEljb25BbmNob3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5cbmltcG9ydCB7IFJvdyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9yb3cnO1xuaW1wb3J0IHsgUm93QWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdy1hY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgRnNSb3dJbmxpbmVCdXR0b25Db250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uLWNvbnRlbnQvYnV0dG9uLWNvbnRlbnQuY29tcG9uZW50JztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1saXN0LXJvdy1pbmxpbmUtaWNvbi1saW5rJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24tbGluay5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyTGluayxcbiAgICBNYXRJY29uQW5jaG9yLFxuICAgIEZzUm93SW5saW5lQnV0dG9uQ29udGVudENvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNSb3dJbmxpbmVJY29uTGlua0NvbXBvbmVudCB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvd0FjdGlvbjogUm93QWN0aW9uO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByb3c6IFJvdztcblxufVxuXG4iLCJAaWYgKHJvd0FjdGlvbj8ucm91dGVyTGluaykge1xuICA8YVxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgIDxmcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnRcbiAgICAgIFtyb3dBY3Rpb25dPVwicm93QWN0aW9uXCJcbiAgICAgIFtyb3ddPVwicm93XCI+XG4gICAgPC9mcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnQ+XG4gIDwvYT5cbn0iXX0=
@@ -1,25 +1,18 @@
1
- import { AsyncPipe, NgClass, NgTemplateOutlet } from '@angular/common';
1
+ import { AsyncPipe, NgClass } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
3
3
  import { RouterLink } from '@angular/router';
4
4
  import { MatAnchor, MatButton, MatFabAnchor, MatFabButton, MatMiniFabAnchor, MatMiniFabButton, } from '@angular/material/button';
5
- import { MatIcon } from '@angular/material/icon';
6
- import { FsFileModule } from '@firestitch/file';
7
5
  import { ActionType } from '../../../../enums/action-type.enum';
8
6
  import { RowAction } from '../../../../models/row-action.model';
7
+ import { FsRowInlineButtonContentComponent } from './button-content/button-content.component';
9
8
  import { FsRowInlineIconButtonComponent } from './icon-button/icon-button.component';
9
+ import { FsRowInlineIconLinkComponent } from './icon-link/icon-link.component';
10
10
  import * as i0 from "@angular/core";
11
- import * as i1 from "@firestitch/file";
12
11
  export class FsRowInlineActionComponent {
13
12
  rowAction;
14
13
  row;
15
14
  clicked = new EventEmitter();
16
15
  fileSelect = new EventEmitter();
17
- icon;
18
- ngOnChanges(changes) {
19
- if (changes.row) {
20
- this.icon = this.rowAction.getRowIcon(this.row.data);
21
- }
22
- }
23
16
  actionClick(event) {
24
17
  this.clicked.emit(event);
25
18
  }
@@ -32,13 +25,12 @@ export class FsRowInlineActionComponent {
32
25
  this.fileSelect.emit(event);
33
26
  }
34
27
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
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 });
28
+ 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" }, ngImport: i0, template: "@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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </a>\n }\n }\n <!-- Icon button -->\n @case ('icon') {\n @if (!rowAction.routerLink) {\n <fs-list-row-inline-icon-button\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (clicked)=\"actionClick($event)\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-icon-button>\n } @else {\n <fs-list-row-inline-icon-link\n [rowAction]=\"rowAction\"\n [row]=\"row\">\n </fs-list-row-inline-icon-link>\n }\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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </a>\n }\n }\n }\n}", styles: ["mat-icon{display:flex}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: FsRowInlineButtonContentComponent, selector: "fs-list-row-inline-button-content", inputs: ["rowAction", "row"], outputs: ["fileSelect"] }, { kind: "component", type: FsRowInlineIconButtonComponent, selector: "fs-list-row-inline-icon-button", inputs: ["rowAction", "row"], outputs: ["clicked", "fileSelect"] }, { kind: "component", type: FsRowInlineIconLinkComponent, selector: "fs-list-row-inline-icon-link", inputs: ["rowAction", "row"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
36
29
  }
37
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, decorators: [{
38
31
  type: Component,
39
32
  args: [{ selector: 'fs-list-row-inline-action', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
40
33
  NgClass,
41
- NgTemplateOutlet,
42
34
  MatAnchor,
43
35
  RouterLink,
44
36
  MatButton,
@@ -46,11 +38,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
46
38
  MatFabAnchor,
47
39
  MatMiniFabButton,
48
40
  MatMiniFabAnchor,
49
- MatIcon,
50
- FsFileModule,
51
41
  AsyncPipe,
42
+ FsRowInlineButtonContentComponent,
52
43
  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"] }]
44
+ FsRowInlineIconLinkComponent,
45
+ ], template: "@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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </a>\n }\n }\n <!-- Icon button -->\n @case ('icon') {\n @if (!rowAction.routerLink) {\n <fs-list-row-inline-icon-button\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (clicked)=\"actionClick($event)\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-icon-button>\n } @else {\n <fs-list-row-inline-icon-link\n [rowAction]=\"rowAction\"\n [row]=\"row\">\n </fs-list-row-inline-icon-link>\n }\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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\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 <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </button>\n } @else {\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <fs-list-row-inline-button-content\n [rowAction]=\"rowAction\"\n [row]=\"row\"\n (fileSelect)=\"fileSelected($event)\">\n </fs-list-row-inline-button-content>\n </a>\n }\n }\n }\n}", styles: ["mat-icon{display:flex}\n"] }]
54
46
  }], propDecorators: { rowAction: [{
55
47
  type: Input
56
48
  }], row: [{
@@ -60,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
60
52
  }], fileSelect: [{
61
53
  type: Output
62
54
  }] } });
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=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvaW5saW5lLWFjdGlvbi9pbmxpbmUtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsT0FBTyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEdBQ2pCLE1BQU0sMEJBQTBCLENBQUM7QUFJbEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRWhFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUVoRSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM5RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUF3Qi9FLE1BQU0sT0FBTywwQkFBMEI7SUFHOUIsU0FBUyxDQUFZO0lBR3JCLEdBQUcsQ0FBTTtJQUdULE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzdCLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztJQUVuRCxXQUFXLENBQUMsS0FBWTtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2hELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFTSxZQUFZLENBQUMsS0FBd0I7UUFDMUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzt1R0ExQlUsMEJBQTBCOzJGQUExQiwwQkFBMEIsZ01DcER2Qyx5bElBK0hDLGtGRHpGRyxPQUFPLG9GQUNQLFNBQVMsaUtBQ1QsVUFBVSxvT0FDVixTQUFTLGlMQUNULFlBQVksMkdBQ1osWUFBWSxtSEFDWixnQkFBZ0IsMEZBQ2hCLGdCQUFnQiw2RkFDaEIsU0FBUyw4Q0FDVCxpQ0FBaUMscUlBQ2pDLDhCQUE4Qiw2SUFDOUIsNEJBQTRCOzsyRkFHbkIsMEJBQTBCO2tCQXJCdEMsU0FBUzsrQkFDRSwyQkFBMkIsbUJBR3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLE9BQU87d0JBQ1AsU0FBUzt3QkFDVCxVQUFVO3dCQUNWLFNBQVM7d0JBQ1QsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixTQUFTO3dCQUNULGlDQUFpQzt3QkFDakMsOEJBQThCO3dCQUM5Qiw0QkFBNEI7cUJBQzdCOzhCQUtNLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsT0FBTztzQkFEYixNQUFNO2dCQUlBLFVBQVU7c0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7XG4gIE1hdEFuY2hvcixcbiAgTWF0QnV0dG9uLFxuICBNYXRGYWJBbmNob3IsXG4gIE1hdEZhYkJ1dHRvbixcbiAgTWF0TWluaUZhYkFuY2hvcixcbiAgTWF0TWluaUZhYkJ1dHRvbixcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcblxuaW1wb3J0IHsgRnNGaWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZmlsZSc7XG5cbmltcG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IFJvdyB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yb3cnO1xuaW1wb3J0IHsgUm93QWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdy1hY3Rpb24ubW9kZWwnO1xuXG5pbXBvcnQgeyBGc1Jvd0lubGluZUJ1dHRvbkNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2J1dHRvbi1jb250ZW50L2J1dHRvbi1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0lubGluZUljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0lubGluZUljb25MaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9pY29uLWxpbmsvaWNvbi1saW5rLmNvbXBvbmVudCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctaW5saW5lLWFjdGlvbicsXG4gIHN0eWxlVXJsczogWycuL2lubGluZS1hY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nQ2xhc3MsXG4gICAgTWF0QW5jaG9yLFxuICAgIFJvdXRlckxpbmssXG4gICAgTWF0QnV0dG9uLFxuICAgIE1hdEZhYkJ1dHRvbixcbiAgICBNYXRGYWJBbmNob3IsXG4gICAgTWF0TWluaUZhYkJ1dHRvbixcbiAgICBNYXRNaW5pRmFiQW5jaG9yLFxuICAgIEFzeW5jUGlwZSxcbiAgICBGc1Jvd0lubGluZUJ1dHRvbkNvbnRlbnRDb21wb25lbnQsXG4gICAgRnNSb3dJbmxpbmVJY29uQnV0dG9uQ29tcG9uZW50LFxuICAgIEZzUm93SW5saW5lSWNvbkxpbmtDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzUm93SW5saW5lQWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93QWN0aW9uOiBSb3dBY3Rpb247XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvdzogUm93O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGVTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPEZzRmlsZSB8IEZzRmlsZVtdPigpO1xuXG4gIHB1YmxpYyBhY3Rpb25DbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrZWQuZW1pdChldmVudCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYoIXRoaXMucm93QWN0aW9uLmxhYmVsICYmIHRoaXMucm93QWN0aW9uLmljb24pIHtcbiAgICAgIHRoaXMucm93QWN0aW9uLnR5cGUgPSBBY3Rpb25UeXBlLkljb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGZpbGVTZWxlY3RlZChldmVudDogRnNGaWxlIHwgRnNGaWxlW10pOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVTZWxlY3QuZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIkBpZiAocm93QWN0aW9uPy52aXNpYmxlJCB8IGFzeW5jKSB7XG4gIEBzd2l0Y2ggKHJvd0FjdGlvbi50eXBlKSB7XG4gICAgPCEtLSBCYXNpYyBidXR0b24gLS0+XG4gICAgQGNhc2UgKCdiYXNpYycpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwicm93QWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgICA8ZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50XG4gICAgICAgICAgICBbcm93QWN0aW9uXT1cInJvd0FjdGlvblwiXG4gICAgICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgICAgICAoZmlsZVNlbGVjdCk9XCJmaWxlU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50PlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YVxuICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwicm93QWN0aW9uLnJvdXRlckxpbmsucXVlcnlQYXJhbXNcIj5cbiAgICAgICAgICA8ZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50XG4gICAgICAgICAgICBbcm93QWN0aW9uXT1cInJvd0FjdGlvblwiXG4gICAgICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgICAgICAoZmlsZVNlbGVjdCk9XCJmaWxlU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50PlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgfVxuICAgIDwhLS0gUmFpc2VkIGJ1dHRvbiAtLT5cbiAgICBAY2FzZSAoJ3JhaXNlZCcpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgICAgPGZzLWxpc3Qtcm93LWlubGluZS1idXR0b24tY29udGVudFxuICAgICAgICAgICAgW3Jvd0FjdGlvbl09XCJyb3dBY3Rpb25cIlxuICAgICAgICAgICAgW3Jvd109XCJyb3dcIlxuICAgICAgICAgICAgKGZpbGVTZWxlY3QpPVwiZmlsZVNlbGVjdGVkKCRldmVudClcIj5cbiAgICAgICAgICA8L2ZzLWxpc3Qtcm93LWlubGluZS1idXR0b24tY29udGVudD5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGFcbiAgICAgICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICAgIDxmcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnRcbiAgICAgICAgICAgIFtyb3dBY3Rpb25dPVwicm93QWN0aW9uXCJcbiAgICAgICAgICAgIFtyb3ddPVwicm93XCJcbiAgICAgICAgICAgIChmaWxlU2VsZWN0KT1cImZpbGVTZWxlY3RlZCgkZXZlbnQpXCI+XG4gICAgICAgICAgPC9mcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnQ+XG4gICAgICAgIDwvYT5cbiAgICAgIH1cbiAgICB9XG4gICAgPCEtLSBJY29uIGJ1dHRvbiAtLT5cbiAgICBAY2FzZSAoJ2ljb24nKSB7XG4gICAgICBAaWYgKCFyb3dBY3Rpb24ucm91dGVyTGluaykge1xuICAgICAgICA8ZnMtbGlzdC1yb3ctaW5saW5lLWljb24tYnV0dG9uXG4gICAgICAgICAgW3Jvd0FjdGlvbl09XCJyb3dBY3Rpb25cIlxuICAgICAgICAgIFtyb3ddPVwicm93XCJcbiAgICAgICAgICAoY2xpY2tlZCk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAoZmlsZVNlbGVjdCk9XCJmaWxlU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICA8L2ZzLWxpc3Qtcm93LWlubGluZS1pY29uLWJ1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8ZnMtbGlzdC1yb3ctaW5saW5lLWljb24tbGlua1xuICAgICAgICAgIFtyb3dBY3Rpb25dPVwicm93QWN0aW9uXCJcbiAgICAgICAgICBbcm93XT1cInJvd1wiPlxuICAgICAgICA8L2ZzLWxpc3Qtcm93LWlubGluZS1pY29uLWxpbms+XG4gICAgICB9XG4gICAgfVxuICAgIDwhLS0gRmFiIGJ1dHRvbiAtLT5cbiAgICBAY2FzZSAoJ2ZhYicpIHtcbiAgICAgIEBpZiAoIXJvd0FjdGlvbi5yb3V0ZXJMaW5rKSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0LWZhYlxuICAgICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwicm93QWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgICA8ZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50XG4gICAgICAgICAgICBbcm93QWN0aW9uXT1cInJvd0FjdGlvblwiXG4gICAgICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgICAgICAoZmlsZVNlbGVjdCk9XCJmaWxlU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50PlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YVxuICAgICAgICAgICAgbWF0LWZhYlxuICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwicm93QWN0aW9uLnJvdXRlckxpbmsucXVlcnlQYXJhbXNcIj5cbiAgICAgICAgICA8ZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50XG4gICAgICAgICAgICBbcm93QWN0aW9uXT1cInJvd0FjdGlvblwiXG4gICAgICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgICAgICAoZmlsZVNlbGVjdCk9XCJmaWxlU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50PlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgfVxuICAgIDwhLS0gTWluaSBGYWIgYnV0dG9uIC0tPlxuICAgIEBjYXNlICgnbWluaS1mYWInKSB7XG4gICAgICBAaWYgKCFyb3dBY3Rpb24ucm91dGVyTGluaykge1xuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIG1hdC1taW5pLWZhYlxuICAgICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwicm93QWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgICA8ZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50XG4gICAgICAgICAgICBbcm93QWN0aW9uXT1cInJvd0FjdGlvblwiXG4gICAgICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgICAgICAoZmlsZVNlbGVjdCk9XCJmaWxlU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvZnMtbGlzdC1yb3ctaW5saW5lLWJ1dHRvbi1jb250ZW50PlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YVxuICAgICAgICAgICAgbWF0LW1pbmktZmFiXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICAgIDxmcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnRcbiAgICAgICAgICAgIFtyb3dBY3Rpb25dPVwicm93QWN0aW9uXCJcbiAgICAgICAgICAgIFtyb3ddPVwicm93XCJcbiAgICAgICAgICAgIChmaWxlU2VsZWN0KT1cImZpbGVTZWxlY3RlZCgkZXZlbnQpXCI+XG4gICAgICAgICAgPC9mcy1saXN0LXJvdy1pbmxpbmUtYnV0dG9uLWNvbnRlbnQ+XG4gICAgICAgIDwvYT5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iXX0=