@firestitch/list 18.0.23 → 18.0.24

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.
@@ -1,16 +1,20 @@
1
- import { EventEmitter, OnInit } from '@angular/core';
1
+ import { EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
2
2
  import { FsFile } from '@firestitch/file';
3
3
  import { ActionType } from '../../../../enums/action-type.enum';
4
+ import { Row } from '../../../../models/row';
4
5
  import { RowAction } from '../../../../models/row-action.model';
5
6
  import * as i0 from "@angular/core";
6
- export declare class FsRowInlineActionComponent implements OnInit {
7
+ export declare class FsRowInlineActionComponent implements OnInit, OnChanges {
7
8
  actionType: ActionType;
8
- action: RowAction;
9
+ rowAction: RowAction;
10
+ row: Row;
9
11
  clicked: EventEmitter<any>;
10
12
  fileSelect: EventEmitter<FsFile | FsFile[]>;
13
+ icon: string;
14
+ ngOnChanges(changes: SimpleChanges): void;
11
15
  actionClick(event: any): void;
12
16
  ngOnInit(): void;
13
17
  fileSelected(event: any): void;
14
18
  static ɵfac: i0.ɵɵFactoryDeclaration<FsRowInlineActionComponent, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<FsRowInlineActionComponent, "fs-list-row-inline-action", never, { "action": { "alias": "action"; "required": false; }; }, { "clicked": "clicked"; "fileSelect": "fileSelect"; }, never, never, false, never>;
19
+ 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, false, never>;
16
20
  }
@@ -1,20 +1,24 @@
1
- import { EventEmitter } from '@angular/core';
1
+ import { EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
2
2
  import { FsMenuComponent } from '@firestitch/menu';
3
3
  import { FsListRowActionFile } from '../../../../interfaces/listconfig.interface';
4
4
  import { Row } from '../../../../models/row';
5
+ import { RowAction } from '../../../../models/row-action.model';
5
6
  import * as i0 from "@angular/core";
6
- export declare class FsRowMenuActionComponent {
7
+ export declare class FsRowMenuActionComponent implements OnInit, OnChanges {
7
8
  private _menu;
8
9
  row: Row;
9
- icon: string;
10
- label: string;
10
+ rowAction: RowAction;
11
11
  file: FsListRowActionFile;
12
12
  fileSelect: EventEmitter<any>;
13
13
  fileError: EventEmitter<any>;
14
+ icon: string;
15
+ label: string;
14
16
  constructor(_menu: FsMenuComponent);
17
+ ngOnChanges(changes: SimpleChanges): void;
15
18
  selectFile(event: any): void;
16
19
  errorFile(event: any): void;
17
20
  closeMenu(): void;
21
+ ngOnInit(): void;
18
22
  static ɵfac: i0.ɵɵFactoryDeclaration<FsRowMenuActionComponent, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<FsRowMenuActionComponent, "fs-list-row-menu-action", never, { "row": { "alias": "row"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "label": { "alias": "label"; "required": false; }; "file": { "alias": "file"; "required": false; }; }, { "fileSelect": "fileSelect"; "fileError": "fileError"; }, never, never, false, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsRowMenuActionComponent, "fs-list-row-menu-action", never, { "row": { "alias": "row"; "required": false; }; "rowAction": { "alias": "rowAction"; "required": false; }; "file": { "alias": "file"; "required": false; }; }, { "fileSelect": "fileSelect"; "fileError": "fileError"; }, never, never, false, never>;
20
24
  }
@@ -166,7 +166,7 @@ export interface FsListRowAction {
166
166
  label?: string | FsListRowActionLabelFn;
167
167
  type?: ActionType;
168
168
  className?: string;
169
- icon?: string;
169
+ icon?: string | ((row: any) => string);
170
170
  menu?: boolean;
171
171
  click?: (row: any, event: any, index: any) => void;
172
172
  link?: FsListRowActionLinkFn;
@@ -1,7 +1,7 @@
1
1
  import { ActionType } from '../enums/action-type.enum';
2
2
  import { FsListRowActionFile, FsListRowActionLink } from '../interfaces';
3
3
  export declare class RowAction {
4
- icon: string;
4
+ icon: string | ((row: any) => string);
5
5
  menu: boolean;
6
6
  remove: {
7
7
  title: string;
@@ -22,6 +22,7 @@ export declare class RowAction {
22
22
  private readonly _isGroup;
23
23
  constructor(config?: any);
24
24
  get isGroup(): boolean;
25
+ getRowIcon(row: any): string;
25
26
  _init(value: any): void;
26
27
  checkShowStatus(row: any, index: any): void;
27
28
  updateLink(row: any): void;
@@ -77,11 +77,11 @@ export class FsRowActionsComponent {
77
77
  }
78
78
  }
79
79
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowActionsComponent, deps: [{ token: i1.FsPrompt }], target: i0.ɵɵFactoryTarget.Component });
80
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsRowActionsComponent, selector: "fs-list-row-actions", inputs: { row: "row", index: "index", restoreMode: "restoreMode", rowActions: "rowActions", rowRemoved: "rowRemoved", menuRowActions: "menuRowActions", inlineRowActions: "inlineRowActions", restoreAction: "restoreAction" }, ngImport: i0, template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action\n class=\"row-inline-action row-inline-action-{{action.type}}\"\n [action]=\"action\"\n [ngClass]=\"{'mobile-hide': action.menu === undefined}\"\n (clicked)=\"actionClick(action, row, $event)\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n\n<!-- Menu -->\n<fs-menu\n class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n #menuRef>\n <!-- Case when we have usual menu actions -->\n <ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <ng-template\n class=\"hidden-mobile-menu-action\"\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"action.menu !== undefined && !action.isShown\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n\n <ng-container *ngFor=\"let action of menuRowActions; trackBy: trackByFn\">\n <ng-container *ngIf=\"action.isGroup else simpleMenuItem\">\n <fs-menu-group [label]=\"action.label | actionLabel:row\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template\n fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n [class]=\"subAction.className\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"subAction.icon\"\n [label]=\"subAction.label\"\n [row]=\"row\"\n [file]=\"subAction.fileConfig\"\n (fileSelect)=\"subAction.fileConfig.select($event, row, index)\"\n (fileError)=\"subAction.fileConfig.error && subAction.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n </fs-menu-group>\n </ng-container>\n <ng-template #simpleMenuItem>\n <ng-template\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n [class]=\"action.className\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n\n <!-- Case when we have restore mode enabled and must hide menu actions -->\n <ng-container *ngIf=\"restoreMode && restoreAction\">\n <ng-template fs-menu-item (click)=\"actionClick(restoreAction, row, $event, menuRef)\">\n <mat-icon *ngIf=\"restoreAction.icon\">{{restoreAction.icon}}</mat-icon>\n {{restoreAction.label | actionLabel:row}}\n </ng-template>\n </ng-container>\n</fs-menu>\n", styles: [":host{display:flex;align-items:center;justify-content:flex-end}:host ::ng-deep fs-list-row-inline-action{margin-left:5px}:host ::ng-deep fs-list-row-inline-action:first-child{margin-left:0}::ng-deep .hidden-mobile-menu-action{display:none!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.FsMenuComponent, selector: "fs-menu", inputs: ["class", "buttonClass", "buttonType", "buttonColor"], outputs: ["opened", "closed"] }, { kind: "directive", type: i4.FsMenuItemDirective, selector: "fs-menu-group,[fs-menu-item]" }, { kind: "component", type: i5.FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: ["action"], outputs: ["clicked", "fileSelect"] }, { kind: "component", type: i6.FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: ["row", "icon", "label", "file"], outputs: ["fileSelect", "fileError"] }, { kind: "pipe", type: i7.ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
80
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsRowActionsComponent, selector: "fs-list-row-actions", inputs: { row: "row", index: "index", restoreMode: "restoreMode", rowActions: "rowActions", rowRemoved: "rowRemoved", menuRowActions: "menuRowActions", inlineRowActions: "inlineRowActions", restoreAction: "restoreAction" }, ngImport: i0, template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action\n class=\"row-inline-action row-inline-action-{{action.type}}\"\n [rowAction]=\"action\"\n [row]=\"row\"\n [ngClass]=\"{ 'mobile-hide': action.menu === undefined }\"\n (clicked)=\"actionClick(action, row, $event)\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n<!-- Menu -->\n<fs-menu\n class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n #menuRef>\n <!-- Case when we have usual menu actions -->\n <ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <ng-template\n class=\"hidden-mobile-menu-action\"\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"action.menu !== undefined && !action.isShown\">\n <fs-list-row-menu-action\n [rowAction]=\"action\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n <ng-container *ngFor=\"let action of menuRowActions; trackBy: trackByFn\">\n <ng-container *ngIf=\"action.isGroup else simpleMenuItem\">\n <fs-menu-group [label]=\"action.label | actionLabel:row\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template\n fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n [class]=\"subAction.className\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [rowAction]=\"subAction\"\n [row]=\"row\"\n [file]=\"subAction.fileConfig\"\n (fileSelect)=\"subAction.fileConfig.select($event, row, index)\"\n (fileError)=\"subAction.fileConfig.error && subAction.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n </fs-menu-group>\n </ng-container>\n <ng-template #simpleMenuItem>\n <ng-template\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n [class]=\"action.className\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [rowAction]=\"action\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n <!-- Case when we have restore mode enabled and must hide menu actions -->\n <ng-container *ngIf=\"restoreMode && restoreAction\">\n <ng-template\n fs-menu-item\n (click)=\"actionClick(restoreAction, row, $event, menuRef)\">\n <mat-icon *ngIf=\"restoreAction.icon\">\n {{ restoreAction.icon }}\n </mat-icon>\n {{ restoreAction.label | actionLabel:row }}\n </ng-template>\n </ng-container>\n</fs-menu>", styles: [":host{display:flex;align-items:center;justify-content:flex-end}:host ::ng-deep fs-list-row-inline-action{margin-left:5px}:host ::ng-deep fs-list-row-inline-action:first-child{margin-left:0}::ng-deep .hidden-mobile-menu-action{display:none!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.FsMenuComponent, selector: "fs-menu", inputs: ["class", "buttonClass", "buttonType", "buttonColor"], outputs: ["opened", "closed"] }, { kind: "directive", type: i4.FsMenuItemDirective, selector: "fs-menu-group,[fs-menu-item]" }, { kind: "component", type: i5.FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: ["rowAction", "row"], outputs: ["clicked", "fileSelect"] }, { kind: "component", type: i6.FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: ["row", "rowAction", "file"], outputs: ["fileSelect", "fileError"] }, { kind: "pipe", type: i7.ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
81
81
  }
82
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowActionsComponent, decorators: [{
83
83
  type: Component,
84
- args: [{ selector: 'fs-list-row-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action\n class=\"row-inline-action row-inline-action-{{action.type}}\"\n [action]=\"action\"\n [ngClass]=\"{'mobile-hide': action.menu === undefined}\"\n (clicked)=\"actionClick(action, row, $event)\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n\n<!-- Menu -->\n<fs-menu\n class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n #menuRef>\n <!-- Case when we have usual menu actions -->\n <ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <ng-template\n class=\"hidden-mobile-menu-action\"\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"action.menu !== undefined && !action.isShown\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n\n <ng-container *ngFor=\"let action of menuRowActions; trackBy: trackByFn\">\n <ng-container *ngIf=\"action.isGroup else simpleMenuItem\">\n <fs-menu-group [label]=\"action.label | actionLabel:row\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template\n fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n [class]=\"subAction.className\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"subAction.icon\"\n [label]=\"subAction.label\"\n [row]=\"row\"\n [file]=\"subAction.fileConfig\"\n (fileSelect)=\"subAction.fileConfig.select($event, row, index)\"\n (fileError)=\"subAction.fileConfig.error && subAction.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n </fs-menu-group>\n </ng-container>\n <ng-template #simpleMenuItem>\n <ng-template\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n [class]=\"action.className\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [icon]=\"action.icon\"\n [label]=\"action.label\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n\n <!-- Case when we have restore mode enabled and must hide menu actions -->\n <ng-container *ngIf=\"restoreMode && restoreAction\">\n <ng-template fs-menu-item (click)=\"actionClick(restoreAction, row, $event, menuRef)\">\n <mat-icon *ngIf=\"restoreAction.icon\">{{restoreAction.icon}}</mat-icon>\n {{restoreAction.label | actionLabel:row}}\n </ng-template>\n </ng-container>\n</fs-menu>\n", styles: [":host{display:flex;align-items:center;justify-content:flex-end}:host ::ng-deep fs-list-row-inline-action{margin-left:5px}:host ::ng-deep fs-list-row-inline-action:first-child{margin-left:0}::ng-deep .hidden-mobile-menu-action{display:none!important}\n"] }]
84
+ args: [{ selector: 'fs-list-row-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <fs-list-row-inline-action\n class=\"row-inline-action row-inline-action-{{action.type}}\"\n [rowAction]=\"action\"\n [row]=\"row\"\n [ngClass]=\"{ 'mobile-hide': action.menu === undefined }\"\n (clicked)=\"actionClick(action, row, $event)\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\">\n </fs-list-row-inline-action>\n </ng-container>\n</ng-container>\n<!-- Menu -->\n<fs-menu\n class=\"row-menu-action\"\n *ngIf=\"menuRowActions.length || (restoreMode && restoreAction)\"\n #menuRef>\n <!-- Case when we have usual menu actions -->\n <ng-container *ngIf=\"!restoreMode || (restoreMode && !restoreAction)\">\n <ng-container *ngFor=\"let action of inlineRowActions; trackBy: trackByFn\">\n <ng-template\n class=\"hidden-mobile-menu-action\"\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"action.menu !== undefined && !action.isShown\">\n <fs-list-row-menu-action\n [rowAction]=\"action\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n <ng-container *ngFor=\"let action of menuRowActions; trackBy: trackByFn\">\n <ng-container *ngIf=\"action.isGroup else simpleMenuItem\">\n <fs-menu-group [label]=\"action.label | actionLabel:row\">\n <ng-container *ngFor=\"let subAction of action.rowActions\">\n <ng-template\n fs-menu-item\n [link]=\"subAction.routerLink?.link\"\n [queryParams]=\"subAction.routerLink?.queryParams\"\n [target]=\"subAction.routerLink?.target\"\n [hidden]=\"!subAction.isShown\"\n [class]=\"subAction.className\"\n (click)=\"actionClick(subAction, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [rowAction]=\"subAction\"\n [row]=\"row\"\n [file]=\"subAction.fileConfig\"\n (fileSelect)=\"subAction.fileConfig.select($event, row, index)\"\n (fileError)=\"subAction.fileConfig.error && subAction.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-container>\n </fs-menu-group>\n </ng-container>\n <ng-template #simpleMenuItem>\n <ng-template\n fs-menu-item\n [link]=\"action.routerLink?.link\"\n [queryParams]=\"action.routerLink?.queryParams\"\n [target]=\"action.routerLink?.target\"\n [hidden]=\"!action.isShown\"\n [class]=\"action.className\"\n (click)=\"actionClick(action, row, $event, menuRef);\">\n <fs-list-row-menu-action\n [rowAction]=\"action\"\n [row]=\"row\"\n [file]=\"action.fileConfig\"\n (fileSelect)=\"action.fileConfig.select($event, row, index)\"\n (fileError)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n </fs-list-row-menu-action>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n <!-- Case when we have restore mode enabled and must hide menu actions -->\n <ng-container *ngIf=\"restoreMode && restoreAction\">\n <ng-template\n fs-menu-item\n (click)=\"actionClick(restoreAction, row, $event, menuRef)\">\n <mat-icon *ngIf=\"restoreAction.icon\">\n {{ restoreAction.icon }}\n </mat-icon>\n {{ restoreAction.label | actionLabel:row }}\n </ng-template>\n </ng-container>\n</fs-menu>", styles: [":host{display:flex;align-items:center;justify-content:flex-end}:host ::ng-deep fs-list-row-inline-action{margin-left:5px}:host ::ng-deep fs-list-row-inline-action:first-child{margin-left:0}::ng-deep .hidden-mobile-menu-action{display:none!important}\n"] }]
85
85
  }], ctorParameters: () => [{ type: i1.FsPrompt }], propDecorators: { row: [{
86
86
  type: Input
87
87
  }], index: [{
@@ -99,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
99
99
  }], restoreAction: [{
100
100
  type: Input
101
101
  }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvYWN0aW9ucy9hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9hY3Rpb25zL2FjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7QUFTaEUsTUFBTSxPQUFPLHFCQUFxQjtJQTZCdEI7SUExQkgsR0FBRyxDQUFNO0lBR1QsS0FBSyxDQUFTO0lBR2QsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUdwQixVQUFVLEdBQWdCLEVBQUUsQ0FBQztJQUc3QixVQUFVLENBQW9CO0lBRzlCLGNBQWMsR0FBZ0IsRUFBRSxDQUFDO0lBR2pDLGdCQUFnQixHQUFnQixFQUFFLENBQUM7SUFHbkMsYUFBYSxDQUFZO0lBRXhCLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBRWxDLFlBQ1UsT0FBaUI7UUFBakIsWUFBTyxHQUFQLE9BQU8sQ0FBVTtJQUN2QixDQUFDO0lBRUUsV0FBVyxDQUFDLE1BQWlCLEVBQUUsR0FBUSxFQUFFLEtBQVUsRUFBRSxPQUFRO1FBQ2xFLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2xCLElBQUksT0FBTyxNQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUN2QyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO29CQUNuQixLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLO29CQUMxQixRQUFRLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRO29CQUNoQyxTQUFTLEVBQUUsSUFBSTtpQkFDaEIsQ0FBQztxQkFDQyxJQUFJLENBQ0gsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO3FCQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxRCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNyRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxTQUFTLENBQUMsS0FBSztRQUNwQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssYUFBYSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUs7UUFDN0MsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFekQsSUFBSSxnQkFBZ0IsSUFBSSxnQkFBZ0IsWUFBWSxVQUFVLEVBQUUsQ0FBQztZQUMvRCxnQkFBZ0I7aUJBQ2IsSUFBSSxDQUNILElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQjtpQkFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQzt1R0F2RlUscUJBQXFCOzJGQUFyQixxQkFBcUIsMlJDdkJsQyxvaUlBNEZBOzsyRkRyRWEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNOzZFQUt4QyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQUlDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLGFBQWE7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRnNQcm9tcHQgfSBmcm9tICdAZmlyZXN0aXRjaC9wcm9tcHQnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cblxuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdyc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctYWN0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWN0aW9ucy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRnNSb3dBY3Rpb25zQ29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93OiBSb3c7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGluZGV4OiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlc3RvcmVNb2RlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvd0FjdGlvbnM6IFJvd0FjdGlvbltdID0gW107XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvd1JlbW92ZWQ6IEV2ZW50RW1pdHRlcjxhbnk+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtZW51Um93QWN0aW9uczogUm93QWN0aW9uW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5saW5lUm93QWN0aW9uczogUm93QWN0aW9uW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVzdG9yZUFjdGlvbjogUm93QWN0aW9uO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9wcm9tcHQ6IEZzUHJvbXB0LFxuICApIHsgfVxuXG4gIHB1YmxpYyBhY3Rpb25DbGljayhhY3Rpb246IFJvd0FjdGlvbiwgcm93OiBhbnksIGV2ZW50OiBhbnksIG1lbnVSZWY/KSB7XG4gICAgaWYgKGFjdGlvbi5yZW1vdmUpIHtcbiAgICAgIGlmICh0eXBlb2YgYWN0aW9uLnJlbW92ZSA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUFjdGlvbihhY3Rpb24sIHJvdy5kYXRhLCBldmVudCwgdGhpcy5pbmRleCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9wcm9tcHQuY29uZmlybSh7XG4gICAgICAgICAgdGl0bGU6IGFjdGlvbi5yZW1vdmUudGl0bGUsXG4gICAgICAgICAgdGVtcGxhdGU6IGFjdGlvbi5yZW1vdmUudGVtcGxhdGUsXG4gICAgICAgICAgYXV0b2ZvY3VzOiB0cnVlLFxuICAgICAgICB9KVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWN0aW9uKGFjdGlvbiwgcm93LmRhdGEsIGV2ZW50LCB0aGlzLmluZGV4KTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgYWN0aW9uLmNsaWNrKHJvdy5kYXRhLCBldmVudCwgdGhpcy5pbmRleCwgbWVudVJlZik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRyYWNrIEJ5IGZvciBpbXByb3ZlIGNoYW5nZSBkZXRlY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIGluZGV4XG4gICAqL1xuICBwdWJsaWMgdHJhY2tCeUZuKGluZGV4KSB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXQgdGhhdCBzb21lIHJvdyBtdXN0IGJlIHJlbW92ZWRcbiAgICpcbiAgICogQHBhcmFtIGFjdGlvblxuICAgKiBAcGFyYW0gcm93XG4gICAqIEBwYXJhbSBldmVudFxuICAgKiBAcGFyYW0gaW5kZXhcbiAgICovXG4gIHByaXZhdGUgX3JlbW92ZUFjdGlvbihhY3Rpb24sIHJvdywgZXZlbnQsIGluZGV4KSB7XG4gICAgY29uc3QgcmVtb3ZlT2JzZXJ2YWJsZSA9IGFjdGlvbi5jbGljayhyb3csIGV2ZW50LCBpbmRleCk7XG5cbiAgICBpZiAocmVtb3ZlT2JzZXJ2YWJsZSAmJiByZW1vdmVPYnNlcnZhYmxlIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xuICAgICAgcmVtb3ZlT2JzZXJ2YWJsZVxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5yb3dSZW1vdmVkLmVtaXQocm93KTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucm93UmVtb3ZlZC5lbWl0KHJvdyk7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIXJlc3RvcmVNb2RlIHx8IChyZXN0b3JlTW9kZSAmJiAhcmVzdG9yZUFjdGlvbilcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGlubGluZVJvd0FjdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgIDxmcy1saXN0LXJvdy1pbmxpbmUtYWN0aW9uXG4gICAgICBjbGFzcz1cInJvdy1pbmxpbmUtYWN0aW9uIHJvdy1pbmxpbmUtYWN0aW9uLXt7YWN0aW9uLnR5cGV9fVwiXG4gICAgICBbYWN0aW9uXT1cImFjdGlvblwiXG4gICAgICBbbmdDbGFzc109XCJ7J21vYmlsZS1oaWRlJzogYWN0aW9uLm1lbnUgPT09IHVuZGVmaW5lZH1cIlxuICAgICAgKGNsaWNrZWQpPVwiYWN0aW9uQ2xpY2soYWN0aW9uLCByb3csICRldmVudClcIlxuICAgICAgKGZpbGVTZWxlY3QpPVwiYWN0aW9uLmZpbGVDb25maWcuc2VsZWN0KCRldmVudCwgcm93LCBpbmRleClcIj5cbiAgICA8L2ZzLWxpc3Qtcm93LWlubGluZS1hY3Rpb24+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG5cbjwhLS0gTWVudSAtLT5cbjxmcy1tZW51XG4gICAgY2xhc3M9XCJyb3ctbWVudS1hY3Rpb25cIlxuICAgICpuZ0lmPVwibWVudVJvd0FjdGlvbnMubGVuZ3RoIHx8IChyZXN0b3JlTW9kZSAmJiByZXN0b3JlQWN0aW9uKVwiXG4gICAgI21lbnVSZWY+XG4gIDwhLS0gQ2FzZSB3aGVuIHdlIGhhdmUgdXN1YWwgbWVudSBhY3Rpb25zIC0tPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXJlc3RvcmVNb2RlIHx8IChyZXN0b3JlTW9kZSAmJiAhcmVzdG9yZUFjdGlvbilcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgaW5saW5lUm93QWN0aW9uczsgdHJhY2tCeTogdHJhY2tCeUZuXCI+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICBjbGFzcz1cImhpZGRlbi1tb2JpbGUtbWVudS1hY3Rpb25cIlxuICAgICAgICAgIGZzLW1lbnUtaXRlbVxuICAgICAgICAgIFtsaW5rXT1cImFjdGlvbi5yb3V0ZXJMaW5rPy5saW5rXCJcbiAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwiYWN0aW9uLnJvdXRlckxpbms/LnF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgICBbdGFyZ2V0XT1cImFjdGlvbi5yb3V0ZXJMaW5rPy50YXJnZXRcIlxuICAgICAgICAgIFtoaWRkZW5dPVwiYWN0aW9uLm1lbnUgIT09IHVuZGVmaW5lZCAmJiAhYWN0aW9uLmlzU2hvd25cIj5cbiAgICAgICAgPGZzLWxpc3Qtcm93LW1lbnUtYWN0aW9uXG4gICAgICAgICAgW2ljb25dPVwiYWN0aW9uLmljb25cIlxuICAgICAgICAgIFtsYWJlbF09XCJhY3Rpb24ubGFiZWxcIlxuICAgICAgICAgIFtyb3ddPVwicm93XCJcbiAgICAgICAgICBbZmlsZV09XCJhY3Rpb24uZmlsZUNvbmZpZ1wiXG4gICAgICAgICAgKGZpbGVTZWxlY3QpPVwiYWN0aW9uLmZpbGVDb25maWcuc2VsZWN0KCRldmVudCwgcm93LCBpbmRleClcIlxuICAgICAgICAgIChmaWxlRXJyb3IpPVwiYWN0aW9uLmZpbGVDb25maWcuZXJyb3IgJiYgYWN0aW9uLmZpbGVDb25maWcuZXJyb3IoJGV2ZW50KVwiPlxuICAgICAgICA8L2ZzLWxpc3Qtcm93LW1lbnUtYWN0aW9uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBtZW51Um93QWN0aW9uczsgdHJhY2tCeTogdHJhY2tCeUZuXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWN0aW9uLmlzR3JvdXAgZWxzZSBzaW1wbGVNZW51SXRlbVwiPlxuICAgICAgICA8ZnMtbWVudS1ncm91cCBbbGFiZWxdPVwiYWN0aW9uLmxhYmVsIHwgYWN0aW9uTGFiZWw6cm93XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3ViQWN0aW9uIG9mIGFjdGlvbi5yb3dBY3Rpb25zXCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICBmcy1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICBbbGlua109XCJzdWJBY3Rpb24ucm91dGVyTGluaz8ubGlua1wiXG4gICAgICAgICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInN1YkFjdGlvbi5yb3V0ZXJMaW5rPy5xdWVyeVBhcmFtc1wiXG4gICAgICAgICAgICAgICAgW3RhcmdldF09XCJzdWJBY3Rpb24ucm91dGVyTGluaz8udGFyZ2V0XCJcbiAgICAgICAgICAgICAgICBbaGlkZGVuXT1cIiFzdWJBY3Rpb24uaXNTaG93blwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cInN1YkFjdGlvbi5jbGFzc05hbWVcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljayhzdWJBY3Rpb24sIHJvdywgJGV2ZW50LCBtZW51UmVmKTtcIj5cbiAgICAgICAgICAgICAgPGZzLWxpc3Qtcm93LW1lbnUtYWN0aW9uXG4gICAgICAgICAgICAgICAgW2ljb25dPVwic3ViQWN0aW9uLmljb25cIlxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCJzdWJBY3Rpb24ubGFiZWxcIlxuICAgICAgICAgICAgICAgIFtyb3ddPVwicm93XCJcbiAgICAgICAgICAgICAgICBbZmlsZV09XCJzdWJBY3Rpb24uZmlsZUNvbmZpZ1wiXG4gICAgICAgICAgICAgICAgKGZpbGVTZWxlY3QpPVwic3ViQWN0aW9uLmZpbGVDb25maWcuc2VsZWN0KCRldmVudCwgcm93LCBpbmRleClcIlxuICAgICAgICAgICAgICAgIChmaWxlRXJyb3IpPVwic3ViQWN0aW9uLmZpbGVDb25maWcuZXJyb3IgJiYgc3ViQWN0aW9uLmZpbGVDb25maWcuZXJyb3IoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICA8L2ZzLWxpc3Qtcm93LW1lbnUtYWN0aW9uPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9mcy1tZW51LWdyb3VwPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI3NpbXBsZU1lbnVJdGVtPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgIGZzLW1lbnUtaXRlbVxuICAgICAgICAgICAgW2xpbmtdPVwiYWN0aW9uLnJvdXRlckxpbms/LmxpbmtcIlxuICAgICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cImFjdGlvbi5yb3V0ZXJMaW5rPy5xdWVyeVBhcmFtc1wiXG4gICAgICAgICAgICBbdGFyZ2V0XT1cImFjdGlvbi5yb3V0ZXJMaW5rPy50YXJnZXRcIlxuICAgICAgICAgICAgW2hpZGRlbl09XCIhYWN0aW9uLmlzU2hvd25cIlxuICAgICAgICAgICAgW2NsYXNzXT1cImFjdGlvbi5jbGFzc05hbWVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKGFjdGlvbiwgcm93LCAkZXZlbnQsIG1lbnVSZWYpO1wiPlxuICAgICAgICAgIDxmcy1saXN0LXJvdy1tZW51LWFjdGlvblxuICAgICAgICAgICAgW2ljb25dPVwiYWN0aW9uLmljb25cIlxuICAgICAgICAgICAgW2xhYmVsXT1cImFjdGlvbi5sYWJlbFwiXG4gICAgICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgICAgICBbZmlsZV09XCJhY3Rpb24uZmlsZUNvbmZpZ1wiXG4gICAgICAgICAgICAoZmlsZVNlbGVjdCk9XCJhY3Rpb24uZmlsZUNvbmZpZy5zZWxlY3QoJGV2ZW50LCByb3csIGluZGV4KVwiXG4gICAgICAgICAgICAoZmlsZUVycm9yKT1cImFjdGlvbi5maWxlQ29uZmlnLmVycm9yICYmIGFjdGlvbi5maWxlQ29uZmlnLmVycm9yKCRldmVudClcIj5cbiAgICAgICAgICA8L2ZzLWxpc3Qtcm93LW1lbnUtYWN0aW9uPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPCEtLSBDYXNlIHdoZW4gd2UgaGF2ZSByZXN0b3JlIG1vZGUgZW5hYmxlZCBhbmQgbXVzdCBoaWRlIG1lbnUgYWN0aW9ucyAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlc3RvcmVNb2RlICYmIHJlc3RvcmVBY3Rpb25cIj5cbiAgICA8bmctdGVtcGxhdGUgZnMtbWVudS1pdGVtIChjbGljayk9XCJhY3Rpb25DbGljayhyZXN0b3JlQWN0aW9uLCByb3csICRldmVudCwgbWVudVJlZilcIj5cbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInJlc3RvcmVBY3Rpb24uaWNvblwiPnt7cmVzdG9yZUFjdGlvbi5pY29ufX08L21hdC1pY29uPlxuICAgICAge3tyZXN0b3JlQWN0aW9uLmxhYmVsIHwgYWN0aW9uTGFiZWw6cm93fX1cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZnMtbWVudT5cbiJdfQ==
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvYWN0aW9ucy9hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9hY3Rpb25zL2FjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7QUFTaEUsTUFBTSxPQUFPLHFCQUFxQjtJQTZCdEI7SUExQkgsR0FBRyxDQUFNO0lBR1QsS0FBSyxDQUFTO0lBR2QsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUdwQixVQUFVLEdBQWdCLEVBQUUsQ0FBQztJQUc3QixVQUFVLENBQW9CO0lBRzlCLGNBQWMsR0FBZ0IsRUFBRSxDQUFDO0lBR2pDLGdCQUFnQixHQUFnQixFQUFFLENBQUM7SUFHbkMsYUFBYSxDQUFZO0lBRXhCLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBRWxDLFlBQ1UsT0FBaUI7UUFBakIsWUFBTyxHQUFQLE9BQU8sQ0FBVTtJQUN2QixDQUFDO0lBRUUsV0FBVyxDQUFDLE1BQWlCLEVBQUUsR0FBUSxFQUFFLEtBQVUsRUFBRSxPQUFRO1FBQ2xFLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2xCLElBQUksT0FBTyxNQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUN2QyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO29CQUNuQixLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLO29CQUMxQixRQUFRLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRO29CQUNoQyxTQUFTLEVBQUUsSUFBSTtpQkFDaEIsQ0FBQztxQkFDQyxJQUFJLENBQ0gsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO3FCQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxRCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNyRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxTQUFTLENBQUMsS0FBSztRQUNwQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssYUFBYSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUs7UUFDN0MsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFekQsSUFBSSxnQkFBZ0IsSUFBSSxnQkFBZ0IsWUFBWSxVQUFVLEVBQUUsQ0FBQztZQUMvRCxnQkFBZ0I7aUJBQ2IsSUFBSSxDQUNILElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQjtpQkFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQzt1R0F2RlUscUJBQXFCOzJGQUFyQixxQkFBcUIsMlJDdkJsQyx1K0hBMEZVOzsyRkRuRUcscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNOzZFQUt4QyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQUlDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLGFBQWE7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRnNQcm9tcHQgfSBmcm9tICdAZmlyZXN0aXRjaC9wcm9tcHQnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cblxuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdyc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctYWN0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWN0aW9ucy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRnNSb3dBY3Rpb25zQ29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93OiBSb3c7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGluZGV4OiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlc3RvcmVNb2RlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvd0FjdGlvbnM6IFJvd0FjdGlvbltdID0gW107XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvd1JlbW92ZWQ6IEV2ZW50RW1pdHRlcjxhbnk+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtZW51Um93QWN0aW9uczogUm93QWN0aW9uW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5saW5lUm93QWN0aW9uczogUm93QWN0aW9uW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVzdG9yZUFjdGlvbjogUm93QWN0aW9uO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9wcm9tcHQ6IEZzUHJvbXB0LFxuICApIHsgfVxuXG4gIHB1YmxpYyBhY3Rpb25DbGljayhhY3Rpb246IFJvd0FjdGlvbiwgcm93OiBhbnksIGV2ZW50OiBhbnksIG1lbnVSZWY/KSB7XG4gICAgaWYgKGFjdGlvbi5yZW1vdmUpIHtcbiAgICAgIGlmICh0eXBlb2YgYWN0aW9uLnJlbW92ZSA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUFjdGlvbihhY3Rpb24sIHJvdy5kYXRhLCBldmVudCwgdGhpcy5pbmRleCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9wcm9tcHQuY29uZmlybSh7XG4gICAgICAgICAgdGl0bGU6IGFjdGlvbi5yZW1vdmUudGl0bGUsXG4gICAgICAgICAgdGVtcGxhdGU6IGFjdGlvbi5yZW1vdmUudGVtcGxhdGUsXG4gICAgICAgICAgYXV0b2ZvY3VzOiB0cnVlLFxuICAgICAgICB9KVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQWN0aW9uKGFjdGlvbiwgcm93LmRhdGEsIGV2ZW50LCB0aGlzLmluZGV4KTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgYWN0aW9uLmNsaWNrKHJvdy5kYXRhLCBldmVudCwgdGhpcy5pbmRleCwgbWVudVJlZik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRyYWNrIEJ5IGZvciBpbXByb3ZlIGNoYW5nZSBkZXRlY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIGluZGV4XG4gICAqL1xuICBwdWJsaWMgdHJhY2tCeUZuKGluZGV4KSB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXQgdGhhdCBzb21lIHJvdyBtdXN0IGJlIHJlbW92ZWRcbiAgICpcbiAgICogQHBhcmFtIGFjdGlvblxuICAgKiBAcGFyYW0gcm93XG4gICAqIEBwYXJhbSBldmVudFxuICAgKiBAcGFyYW0gaW5kZXhcbiAgICovXG4gIHByaXZhdGUgX3JlbW92ZUFjdGlvbihhY3Rpb24sIHJvdywgZXZlbnQsIGluZGV4KSB7XG4gICAgY29uc3QgcmVtb3ZlT2JzZXJ2YWJsZSA9IGFjdGlvbi5jbGljayhyb3csIGV2ZW50LCBpbmRleCk7XG5cbiAgICBpZiAocmVtb3ZlT2JzZXJ2YWJsZSAmJiByZW1vdmVPYnNlcnZhYmxlIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xuICAgICAgcmVtb3ZlT2JzZXJ2YWJsZVxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5yb3dSZW1vdmVkLmVtaXQocm93KTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucm93UmVtb3ZlZC5lbWl0KHJvdyk7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIXJlc3RvcmVNb2RlIHx8IChyZXN0b3JlTW9kZSAmJiAhcmVzdG9yZUFjdGlvbilcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGlubGluZVJvd0FjdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgIDxmcy1saXN0LXJvdy1pbmxpbmUtYWN0aW9uXG4gICAgICBjbGFzcz1cInJvdy1pbmxpbmUtYWN0aW9uIHJvdy1pbmxpbmUtYWN0aW9uLXt7YWN0aW9uLnR5cGV9fVwiXG4gICAgICBbcm93QWN0aW9uXT1cImFjdGlvblwiXG4gICAgICBbcm93XT1cInJvd1wiXG4gICAgICBbbmdDbGFzc109XCJ7ICdtb2JpbGUtaGlkZSc6IGFjdGlvbi5tZW51ID09PSB1bmRlZmluZWQgfVwiXG4gICAgICAoY2xpY2tlZCk9XCJhY3Rpb25DbGljayhhY3Rpb24sIHJvdywgJGV2ZW50KVwiXG4gICAgICAoZmlsZVNlbGVjdCk9XCJhY3Rpb24uZmlsZUNvbmZpZy5zZWxlY3QoJGV2ZW50LCByb3csIGluZGV4KVwiPlxuICAgIDwvZnMtbGlzdC1yb3ctaW5saW5lLWFjdGlvbj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbjwhLS0gTWVudSAtLT5cbjxmcy1tZW51XG4gICAgY2xhc3M9XCJyb3ctbWVudS1hY3Rpb25cIlxuICAgICpuZ0lmPVwibWVudVJvd0FjdGlvbnMubGVuZ3RoIHx8IChyZXN0b3JlTW9kZSAmJiByZXN0b3JlQWN0aW9uKVwiXG4gICAgI21lbnVSZWY+XG4gIDwhLS0gQ2FzZSB3aGVuIHdlIGhhdmUgdXN1YWwgbWVudSBhY3Rpb25zIC0tPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXJlc3RvcmVNb2RlIHx8IChyZXN0b3JlTW9kZSAmJiAhcmVzdG9yZUFjdGlvbilcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgaW5saW5lUm93QWN0aW9uczsgdHJhY2tCeTogdHJhY2tCeUZuXCI+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICBjbGFzcz1cImhpZGRlbi1tb2JpbGUtbWVudS1hY3Rpb25cIlxuICAgICAgICAgIGZzLW1lbnUtaXRlbVxuICAgICAgICAgIFtsaW5rXT1cImFjdGlvbi5yb3V0ZXJMaW5rPy5saW5rXCJcbiAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwiYWN0aW9uLnJvdXRlckxpbms/LnF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgICBbdGFyZ2V0XT1cImFjdGlvbi5yb3V0ZXJMaW5rPy50YXJnZXRcIlxuICAgICAgICAgIFtoaWRkZW5dPVwiYWN0aW9uLm1lbnUgIT09IHVuZGVmaW5lZCAmJiAhYWN0aW9uLmlzU2hvd25cIj5cbiAgICAgICAgPGZzLWxpc3Qtcm93LW1lbnUtYWN0aW9uXG4gICAgICAgICAgW3Jvd0FjdGlvbl09XCJhY3Rpb25cIlxuICAgICAgICAgIFtyb3ddPVwicm93XCJcbiAgICAgICAgICBbZmlsZV09XCJhY3Rpb24uZmlsZUNvbmZpZ1wiXG4gICAgICAgICAgKGZpbGVTZWxlY3QpPVwiYWN0aW9uLmZpbGVDb25maWcuc2VsZWN0KCRldmVudCwgcm93LCBpbmRleClcIlxuICAgICAgICAgIChmaWxlRXJyb3IpPVwiYWN0aW9uLmZpbGVDb25maWcuZXJyb3IgJiYgYWN0aW9uLmZpbGVDb25maWcuZXJyb3IoJGV2ZW50KVwiPlxuICAgICAgICA8L2ZzLWxpc3Qtcm93LW1lbnUtYWN0aW9uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgbWVudVJvd0FjdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFjdGlvbi5pc0dyb3VwIGVsc2Ugc2ltcGxlTWVudUl0ZW1cIj5cbiAgICAgICAgPGZzLW1lbnUtZ3JvdXAgW2xhYmVsXT1cImFjdGlvbi5sYWJlbCB8IGFjdGlvbkxhYmVsOnJvd1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHN1YkFjdGlvbiBvZiBhY3Rpb24ucm93QWN0aW9uc1wiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgZnMtbWVudS1pdGVtXG4gICAgICAgICAgICAgICAgW2xpbmtdPVwic3ViQWN0aW9uLnJvdXRlckxpbms/LmxpbmtcIlxuICAgICAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJzdWJBY3Rpb24ucm91dGVyTGluaz8ucXVlcnlQYXJhbXNcIlxuICAgICAgICAgICAgICAgIFt0YXJnZXRdPVwic3ViQWN0aW9uLnJvdXRlckxpbms/LnRhcmdldFwiXG4gICAgICAgICAgICAgICAgW2hpZGRlbl09XCIhc3ViQWN0aW9uLmlzU2hvd25cIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJzdWJBY3Rpb24uY2xhc3NOYW1lXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soc3ViQWN0aW9uLCByb3csICRldmVudCwgbWVudVJlZik7XCI+XG4gICAgICAgICAgICAgIDxmcy1saXN0LXJvdy1tZW51LWFjdGlvblxuICAgICAgICAgICAgICAgIFtyb3dBY3Rpb25dPVwic3ViQWN0aW9uXCJcbiAgICAgICAgICAgICAgICBbcm93XT1cInJvd1wiXG4gICAgICAgICAgICAgICAgW2ZpbGVdPVwic3ViQWN0aW9uLmZpbGVDb25maWdcIlxuICAgICAgICAgICAgICAgIChmaWxlU2VsZWN0KT1cInN1YkFjdGlvbi5maWxlQ29uZmlnLnNlbGVjdCgkZXZlbnQsIHJvdywgaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAoZmlsZUVycm9yKT1cInN1YkFjdGlvbi5maWxlQ29uZmlnLmVycm9yICYmIHN1YkFjdGlvbi5maWxlQ29uZmlnLmVycm9yKCRldmVudClcIj5cbiAgICAgICAgICAgICAgPC9mcy1saXN0LXJvdy1tZW51LWFjdGlvbj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZnMtbWVudS1ncm91cD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNzaW1wbGVNZW51SXRlbT5cbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBmcy1tZW51LWl0ZW1cbiAgICAgICAgICAgIFtsaW5rXT1cImFjdGlvbi5yb3V0ZXJMaW5rPy5saW5rXCJcbiAgICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJhY3Rpb24ucm91dGVyTGluaz8ucXVlcnlQYXJhbXNcIlxuICAgICAgICAgICAgW3RhcmdldF09XCJhY3Rpb24ucm91dGVyTGluaz8udGFyZ2V0XCJcbiAgICAgICAgICAgIFtoaWRkZW5dPVwiIWFjdGlvbi5pc1Nob3duXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJhY3Rpb24uY2xhc3NOYW1lXCJcbiAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljayhhY3Rpb24sIHJvdywgJGV2ZW50LCBtZW51UmVmKTtcIj5cbiAgICAgICAgICA8ZnMtbGlzdC1yb3ctbWVudS1hY3Rpb25cbiAgICAgICAgICAgIFtyb3dBY3Rpb25dPVwiYWN0aW9uXCJcbiAgICAgICAgICAgIFtyb3ddPVwicm93XCJcbiAgICAgICAgICAgIFtmaWxlXT1cImFjdGlvbi5maWxlQ29uZmlnXCJcbiAgICAgICAgICAgIChmaWxlU2VsZWN0KT1cImFjdGlvbi5maWxlQ29uZmlnLnNlbGVjdCgkZXZlbnQsIHJvdywgaW5kZXgpXCJcbiAgICAgICAgICAgIChmaWxlRXJyb3IpPVwiYWN0aW9uLmZpbGVDb25maWcuZXJyb3IgJiYgYWN0aW9uLmZpbGVDb25maWcuZXJyb3IoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvZnMtbGlzdC1yb3ctbWVudS1hY3Rpb24+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPCEtLSBDYXNlIHdoZW4gd2UgaGF2ZSByZXN0b3JlIG1vZGUgZW5hYmxlZCBhbmQgbXVzdCBoaWRlIG1lbnUgYWN0aW9ucyAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlc3RvcmVNb2RlICYmIHJlc3RvcmVBY3Rpb25cIj5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgZnMtbWVudS1pdGVtXG4gICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljayhyZXN0b3JlQWN0aW9uLCByb3csICRldmVudCwgbWVudVJlZilcIj5cbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInJlc3RvcmVBY3Rpb24uaWNvblwiPlxuICAgICAgICB7eyByZXN0b3JlQWN0aW9uLmljb24gfX1cbiAgICAgIDwvbWF0LWljb24+XG4gICAgICB7eyByZXN0b3JlQWN0aW9uLmxhYmVsIHwgYWN0aW9uTGFiZWw6cm93IH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG48L2ZzLW1lbnU+Il19
@@ -1,5 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
2
2
  import { ActionType } from '../../../../enums/action-type.enum';
3
+ import { Row } from '../../../../models/row';
3
4
  import { RowAction } from '../../../../models/row-action.model';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/common";
@@ -9,15 +10,22 @@ import * as i4 from "@angular/material/icon";
9
10
  import * as i5 from "@firestitch/file";
10
11
  export class FsRowInlineActionComponent {
11
12
  actionType;
12
- action;
13
+ rowAction;
14
+ row;
13
15
  clicked = new EventEmitter();
14
16
  fileSelect = new EventEmitter();
17
+ icon;
18
+ ngOnChanges(changes) {
19
+ if (changes.row) {
20
+ this.icon = this.rowAction.getRowIcon(this.row.data);
21
+ }
22
+ }
15
23
  actionClick(event) {
16
24
  this.clicked.emit(event);
17
25
  }
18
26
  ngOnInit() {
19
- this.actionType = this.action.type;
20
- if (!this.action.label && this.action.icon) {
27
+ this.actionType = this.rowAction.type;
28
+ if (!this.rowAction.label && this.rowAction.icon) {
21
29
  this.actionType = ActionType.Icon;
22
30
  }
23
31
  }
@@ -25,16 +33,18 @@ export class FsRowInlineActionComponent {
25
33
  this.fileSelect.emit(event);
26
34
  }
27
35
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: { action: "action" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, ngImport: i0, template: "<ng-container\n *ngIf=\"action.isShown\"\n [ngSwitch]=\"actionType\">\n <!-- Basic button -->\n <ng-container *ngSwitchCase=\"'basic'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Raised button -->\n <ng-container *ngSwitchCase=\"'raised'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-raised-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Icon button -->\n <ng-container *ngSwitchCase=\"'icon'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-icon-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Fab button -->\n <ng-container *ngSwitchCase=\"'fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Mini Fab button -->\n <ng-container *ngSwitchCase=\"'mini-fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-mini-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <ng-template #buttonContent>\n <ng-container *ngIf=\"!action.fileConfig else uploadFileBtn\">\n <mat-icon *ngIf=\"action.icon\">\n {{ action.icon }}\n </mat-icon>\n {{ action.label }}\n </ng-container>\n <ng-template #uploadFileBtn>\n <fs-file\n class=\"action-button\"\n [accept]=\"action.fileConfig.accept || '*'\"\n [multiple]=\"action.fileConfig.multiple\"\n [minWidth]=\"action.fileConfig.minWidth\"\n [minHeight]=\"action.fileConfig.minHeight\"\n [imageWidth]=\"action.fileConfig.maxWidth\"\n [imageHeight]=\"action.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n <mat-icon *ngIf=\"action.icon\">\n {{ action.icon }}\n </mat-icon>\n {{ action.label }}\n </fs-file>\n </ng-template>\n </ng-template>\n</ng-container>", styles: ["mat-icon{display:flex}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatMiniFabAnchor, selector: "a[mat-mini-fab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFabAnchor, selector: "a[mat-fab]", inputs: ["extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.FsFileComponent, selector: "fs-file", inputs: ["minHeight", "minWidth", "orientate", "multiple", "capture", "allowClick", "allowDrop", "accept", "disabled", "imageWidth", "imageHeight", "imageQuality"], outputs: ["select", "error", "beforeProcessing", "clicked", "declined"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
36
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsRowInlineActionComponent, selector: "fs-list-row-inline-action", inputs: { rowAction: "rowAction", row: "row" }, outputs: { clicked: "clicked", fileSelect: "fileSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-container\n *ngIf=\"rowAction.isShown\"\n [ngSwitch]=\"actionType\">\n <!-- Basic button -->\n <ng-container *ngSwitchCase=\"'basic'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Raised button -->\n <ng-container *ngSwitchCase=\"'raised'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Icon button -->\n <ng-container *ngSwitchCase=\"'icon'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Fab button -->\n <ng-container *ngSwitchCase=\"'fab'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Mini Fab button -->\n <ng-container *ngSwitchCase=\"'mini-fab'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <ng-template #buttonContent>\n <ng-container *ngIf=\"!rowAction.fileConfig else uploadFileBtn\">\n <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ rowAction.label }}\n </ng-container>\n <ng-template #uploadFileBtn>\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 <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ rowAction.label }}\n </fs-file>\n </ng-template>\n </ng-template>\n</ng-container>", styles: ["mat-icon{display:flex}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatMiniFabAnchor, selector: "a[mat-mini-fab]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFabAnchor, selector: "a[mat-fab]", inputs: ["extended"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.FsFileComponent, selector: "fs-file", inputs: ["minHeight", "minWidth", "orientate", "multiple", "capture", "allowClick", "allowDrop", "accept", "disabled", "imageWidth", "imageHeight", "imageQuality"], outputs: ["select", "error", "beforeProcessing", "clicked", "declined"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
37
  }
30
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowInlineActionComponent, decorators: [{
31
39
  type: Component,
32
- args: [{ selector: 'fs-list-row-inline-action', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container\n *ngIf=\"action.isShown\"\n [ngSwitch]=\"actionType\">\n <!-- Basic button -->\n <ng-container *ngSwitchCase=\"'basic'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Raised button -->\n <ng-container *ngSwitchCase=\"'raised'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-raised-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Icon button -->\n <ng-container *ngSwitchCase=\"'icon'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-icon-button\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Fab button -->\n <ng-container *ngSwitchCase=\"'fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Mini Fab button -->\n <ng-container *ngSwitchCase=\"'mini-fab'\">\n <ng-container *ngIf=\"!action.routerLink; else link\">\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"action.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-mini-fab\n [routerLink]=\"action.routerLink.link\"\n [queryParams]=\"action.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <ng-template #buttonContent>\n <ng-container *ngIf=\"!action.fileConfig else uploadFileBtn\">\n <mat-icon *ngIf=\"action.icon\">\n {{ action.icon }}\n </mat-icon>\n {{ action.label }}\n </ng-container>\n <ng-template #uploadFileBtn>\n <fs-file\n class=\"action-button\"\n [accept]=\"action.fileConfig.accept || '*'\"\n [multiple]=\"action.fileConfig.multiple\"\n [minWidth]=\"action.fileConfig.minWidth\"\n [minHeight]=\"action.fileConfig.minHeight\"\n [imageWidth]=\"action.fileConfig.maxWidth\"\n [imageHeight]=\"action.fileConfig.maxHeight\"\n (select)=\"fileSelected($event)\"\n (error)=\"action.fileConfig.error && action.fileConfig.error($event)\">\n <mat-icon *ngIf=\"action.icon\">\n {{ action.icon }}\n </mat-icon>\n {{ action.label }}\n </fs-file>\n </ng-template>\n </ng-template>\n</ng-container>", styles: ["mat-icon{display:flex}\n"] }]
33
- }], propDecorators: { action: [{
40
+ args: [{ selector: 'fs-list-row-inline-action', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container\n *ngIf=\"rowAction.isShown\"\n [ngSwitch]=\"actionType\">\n <!-- Basic button -->\n <ng-container *ngSwitchCase=\"'basic'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Raised button -->\n <ng-container *ngSwitchCase=\"'raised'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-raised-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-raised-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Icon button -->\n <ng-container *ngSwitchCase=\"'icon'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-icon-button\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-icon-button\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Fab button -->\n <ng-container *ngSwitchCase=\"'fab'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <!-- Mini Fab button -->\n <ng-container *ngSwitchCase=\"'mini-fab'\">\n <ng-container *ngIf=\"!rowAction.routerLink; else link\">\n <button\n type=\"button\"\n mat-mini-fab\n (click)=\"actionClick($event)\"\n [ngClass]=\"rowAction.classArray\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </button>\n </ng-container>\n <ng-template #link>\n <a\n mat-mini-fab\n [routerLink]=\"rowAction.routerLink.link\"\n [queryParams]=\"rowAction.routerLink.queryParams\">\n <ng-template [ngTemplateOutlet]=\"buttonContent\"></ng-template>\n </a>\n </ng-template>\n </ng-container>\n <ng-template #buttonContent>\n <ng-container *ngIf=\"!rowAction.fileConfig else uploadFileBtn\">\n <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ rowAction.label }}\n </ng-container>\n <ng-template #uploadFileBtn>\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 <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ rowAction.label }}\n </fs-file>\n </ng-template>\n </ng-template>\n</ng-container>", styles: ["mat-icon{display:flex}\n"] }]
41
+ }], propDecorators: { rowAction: [{
42
+ type: Input
43
+ }], row: [{
34
44
  type: Input
35
45
  }], clicked: [{
36
46
  type: Output
37
47
  }], fileSelect: [{
38
48
  type: Output
39
49
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvaW5saW5lLWFjdGlvbi9pbmxpbmUtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7OztBQVNoRSxNQUFNLE9BQU8sMEJBQTBCO0lBRTlCLFVBQVUsQ0FBYTtJQUd2QixNQUFNLENBQVk7SUFHbEIsT0FBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFHN0IsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO0lBRW5ELFdBQVcsQ0FBQyxLQUFLO1FBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUVuQyxJQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7SUFFTSxZQUFZLENBQUMsS0FBSztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO3VHQTNCVSwwQkFBMEI7MkZBQTFCLDBCQUEwQiwwSkNyQnZDLDg0SUFnSWU7OzJGRDNHRiwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQU94QyxNQUFNO3NCQURaLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixNQUFNO2dCQUlBLFVBQVU7c0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZzRmlsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbGUnO1xuXG5pbXBvcnQgeyBBY3Rpb25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZW51bXMvYWN0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctaW5saW5lLWFjdGlvbicsXG4gIHN0eWxlVXJsczogWycuL2lubGluZS1hY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRnNSb3dJbmxpbmVBY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBcbiAgcHVibGljIGFjdGlvblR5cGU6IEFjdGlvblR5cGU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGFjdGlvbjogUm93QWN0aW9uO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGVTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPEZzRmlsZSB8IEZzRmlsZVtdPigpO1xuXG4gIHB1YmxpYyBhY3Rpb25DbGljayhldmVudCkge1xuICAgIHRoaXMuY2xpY2tlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGlvblR5cGUgPSB0aGlzLmFjdGlvbi50eXBlO1xuXG4gICAgaWYoIXRoaXMuYWN0aW9uLmxhYmVsICYmIHRoaXMuYWN0aW9uLmljb24pIHtcbiAgICAgIHRoaXMuYWN0aW9uVHlwZSA9IEFjdGlvblR5cGUuSWNvbjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZmlsZVNlbGVjdGVkKGV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5maWxlU2VsZWN0LmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJhY3Rpb24uaXNTaG93blwiXG4gICAgW25nU3dpdGNoXT1cImFjdGlvblR5cGVcIj5cbiAgPCEtLSBCYXNpYyBidXR0b24gLS0+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidiYXNpYydcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWFjdGlvbi5yb3V0ZXJMaW5rOyBlbHNlIGxpbmtcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cImFjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjbGluaz5cbiAgICAgIDxhXG4gICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cImFjdGlvbi5yb3V0ZXJMaW5rLmxpbmtcIlxuICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJhY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDwhLS0gUmFpc2VkIGJ1dHRvbiAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhaXNlZCdcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWFjdGlvbi5yb3V0ZXJMaW5rOyBlbHNlIGxpbmtcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJhY3Rpb24uY2xhc3NBcnJheVwiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2xpbms+XG4gICAgICA8YVxuICAgICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiYWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cImFjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPCEtLSBJY29uIGJ1dHRvbiAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ljb24nXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhY3Rpb24ucm91dGVyTGluazsgZWxzZSBsaW5rXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cImFjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjbGluaz5cbiAgICAgIDxhXG4gICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiYWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cImFjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPCEtLSBGYWIgYnV0dG9uIC0tPlxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZmFiJ1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhYWN0aW9uLnJvdXRlckxpbms7IGVsc2UgbGlua1wiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIG1hdC1mYWJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwiYWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNsaW5rPlxuICAgICAgPGFcbiAgICAgICAgICBtYXQtZmFiXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiYWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cImFjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPCEtLSBNaW5pIEZhYiBidXR0b24gLS0+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtaW5pLWZhYidcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWFjdGlvbi5yb3V0ZXJMaW5rOyBlbHNlIGxpbmtcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwiYWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNsaW5rPlxuICAgICAgPGFcbiAgICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgICBbcm91dGVyTGlua109XCJhY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwiYWN0aW9uLnJvdXRlckxpbmsucXVlcnlQYXJhbXNcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9hPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2J1dHRvbkNvbnRlbnQ+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhY3Rpb24uZmlsZUNvbmZpZyBlbHNlIHVwbG9hZEZpbGVCdG5cIj5cbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImFjdGlvbi5pY29uXCI+XG4gICAgICAgIHt7IGFjdGlvbi5pY29uIH19XG4gICAgICA8L21hdC1pY29uPlxuICAgICAge3sgYWN0aW9uLmxhYmVsIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICN1cGxvYWRGaWxlQnRuPlxuICAgICAgPGZzLWZpbGVcbiAgICAgICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIlxuICAgICAgICAgIFthY2NlcHRdPVwiYWN0aW9uLmZpbGVDb25maWcuYWNjZXB0IHx8ICcqJ1wiXG4gICAgICAgICAgW211bHRpcGxlXT1cImFjdGlvbi5maWxlQ29uZmlnLm11bHRpcGxlXCJcbiAgICAgICAgICBbbWluV2lkdGhdPVwiYWN0aW9uLmZpbGVDb25maWcubWluV2lkdGhcIlxuICAgICAgICAgIFttaW5IZWlnaHRdPVwiYWN0aW9uLmZpbGVDb25maWcubWluSGVpZ2h0XCJcbiAgICAgICAgICBbaW1hZ2VXaWR0aF09XCJhY3Rpb24uZmlsZUNvbmZpZy5tYXhXaWR0aFwiXG4gICAgICAgICAgW2ltYWdlSGVpZ2h0XT1cImFjdGlvbi5maWxlQ29uZmlnLm1heEhlaWdodFwiXG4gICAgICAgICAgKHNlbGVjdCk9XCJmaWxlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgKGVycm9yKT1cImFjdGlvbi5maWxlQ29uZmlnLmVycm9yICYmIGFjdGlvbi5maWxlQ29uZmlnLmVycm9yKCRldmVudClcIj5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiYWN0aW9uLmljb25cIj5cbiAgICAgICAgICB7eyBhY3Rpb24uaWNvbiB9fVxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICB7eyBhY3Rpb24ubGFiZWwgfX1cbiAgICAgIDwvZnMtZmlsZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+Il19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvaW5saW5lLWFjdGlvbi9pbmxpbmUtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7QUFTaEUsTUFBTSxPQUFPLDBCQUEwQjtJQUU5QixVQUFVLENBQWE7SUFHdkIsU0FBUyxDQUFZO0lBR3JCLEdBQUcsQ0FBTTtJQUdULE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzdCLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztJQUVuRCxJQUFJLENBQVM7SUFFYixXQUFXLENBQUMsT0FBc0I7UUFDdkMsSUFBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsQ0FBQztJQUNILENBQUM7SUFFTSxXQUFXLENBQUMsS0FBSztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7UUFFdEMsSUFBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDaEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQUs7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzt1R0F0Q1UsMEJBQTBCOzJGQUExQiwwQkFBMEIsaU1DeEJ2QyxrOUlBZ0llOzsyRkR4R0YsMEJBQTBCO2tCQU50QyxTQUFTOytCQUNFLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFPeEMsU0FBUztzQkFEZixLQUFLO2dCQUlDLEdBQUc7c0JBRFQsS0FBSztnQkFJQyxPQUFPO3NCQURiLE1BQU07Z0JBSUEsVUFBVTtzQkFEaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGc0ZpbGUgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcblxuaW1wb3J0IHsgQWN0aW9uVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudW1zL2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3Jvdyc7XG5pbXBvcnQgeyBSb3dBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93LWFjdGlvbi5tb2RlbCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdC1yb3ctaW5saW5lLWFjdGlvbicsXG4gIHN0eWxlVXJsczogWycuL2lubGluZS1hY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2lubGluZS1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRnNSb3dJbmxpbmVBY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIFxuICBwdWJsaWMgYWN0aW9uVHlwZTogQWN0aW9uVHlwZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm93QWN0aW9uOiBSb3dBY3Rpb247XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvdzogUm93O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGVTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPEZzRmlsZSB8IEZzRmlsZVtdPigpO1xuXG4gIHB1YmxpYyBpY29uOiBzdHJpbmc7XG4gIFxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmKGNoYW5nZXMucm93KSB7XG4gICAgICB0aGlzLmljb24gPSB0aGlzLnJvd0FjdGlvbi5nZXRSb3dJY29uKHRoaXMucm93LmRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhY3Rpb25DbGljayhldmVudCkge1xuICAgIHRoaXMuY2xpY2tlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGlvblR5cGUgPSB0aGlzLnJvd0FjdGlvbi50eXBlO1xuXG4gICAgaWYoIXRoaXMucm93QWN0aW9uLmxhYmVsICYmIHRoaXMucm93QWN0aW9uLmljb24pIHtcbiAgICAgIHRoaXMuYWN0aW9uVHlwZSA9IEFjdGlvblR5cGUuSWNvbjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZmlsZVNlbGVjdGVkKGV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5maWxlU2VsZWN0LmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJyb3dBY3Rpb24uaXNTaG93blwiXG4gICAgW25nU3dpdGNoXT1cImFjdGlvblR5cGVcIj5cbiAgPCEtLSBCYXNpYyBidXR0b24gLS0+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidiYXNpYydcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXJvd0FjdGlvbi5yb3V0ZXJMaW5rOyBlbHNlIGxpbmtcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjbGluaz5cbiAgICAgIDxhXG4gICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLmxpbmtcIlxuICAgICAgICAgIFtxdWVyeVBhcmFtc109XCJyb3dBY3Rpb24ucm91dGVyTGluay5xdWVyeVBhcmFtc1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDwhLS0gUmFpc2VkIGJ1dHRvbiAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhaXNlZCdcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXJvd0FjdGlvbi5yb3V0ZXJMaW5rOyBlbHNlIGxpbmtcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgIChjbGljayk9XCJhY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJyb3dBY3Rpb24uY2xhc3NBcnJheVwiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uQ29udGVudFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2xpbms+XG4gICAgICA8YVxuICAgICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPCEtLSBJY29uIGJ1dHRvbiAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ljb24nXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFyb3dBY3Rpb24ucm91dGVyTGluazsgZWxzZSBsaW5rXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cInJvd0FjdGlvbi5jbGFzc0FycmF5XCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjbGluaz5cbiAgICAgIDxhXG4gICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPCEtLSBGYWIgYnV0dG9uIC0tPlxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZmFiJ1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhcm93QWN0aW9uLnJvdXRlckxpbms7IGVsc2UgbGlua1wiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIG1hdC1mYWJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwicm93QWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNsaW5rPlxuICAgICAgPGFcbiAgICAgICAgICBtYXQtZmFiXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwicm93QWN0aW9uLnJvdXRlckxpbmsubGlua1wiXG4gICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInJvd0FjdGlvbi5yb3V0ZXJMaW5rLnF1ZXJ5UGFyYW1zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25Db250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPCEtLSBNaW5pIEZhYiBidXR0b24gLS0+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtaW5pLWZhYidcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXJvd0FjdGlvbi5yb3V0ZXJMaW5rOyBlbHNlIGxpbmtcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aW9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwicm93QWN0aW9uLmNsYXNzQXJyYXlcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNsaW5rPlxuICAgICAgPGFcbiAgICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgICBbcm91dGVyTGlua109XCJyb3dBY3Rpb24ucm91dGVyTGluay5saW5rXCJcbiAgICAgICAgICBbcXVlcnlQYXJhbXNdPVwicm93QWN0aW9uLnJvdXRlckxpbmsucXVlcnlQYXJhbXNcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbkNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuICAgICAgPC9hPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2J1dHRvbkNvbnRlbnQ+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFyb3dBY3Rpb24uZmlsZUNvbmZpZyBlbHNlIHVwbG9hZEZpbGVCdG5cIj5cbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIj5cbiAgICAgICAge3sgaWNvbiB9fVxuICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIHt7IHJvd0FjdGlvbi5sYWJlbCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjdXBsb2FkRmlsZUJ0bj5cbiAgICAgIDxmcy1maWxlXG4gICAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCJcbiAgICAgICAgICBbYWNjZXB0XT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLmFjY2VwdCB8fCAnKidcIlxuICAgICAgICAgIFttdWx0aXBsZV09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5tdWx0aXBsZVwiXG4gICAgICAgICAgW21pbldpZHRoXT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm1pbldpZHRoXCJcbiAgICAgICAgICBbbWluSGVpZ2h0XT1cInJvd0FjdGlvbi5maWxlQ29uZmlnLm1pbkhlaWdodFwiXG4gICAgICAgICAgW2ltYWdlV2lkdGhdPVwicm93QWN0aW9uLmZpbGVDb25maWcubWF4V2lkdGhcIlxuICAgICAgICAgIFtpbWFnZUhlaWdodF09XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5tYXhIZWlnaHRcIlxuICAgICAgICAgIChzZWxlY3QpPVwiZmlsZVNlbGVjdGVkKCRldmVudClcIlxuICAgICAgICAgIChlcnJvcik9XCJyb3dBY3Rpb24uZmlsZUNvbmZpZy5lcnJvciAmJiByb3dBY3Rpb24uZmlsZUNvbmZpZy5lcnJvcigkZXZlbnQpXCI+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIj5cbiAgICAgICAgICB7eyBpY29uIH19XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIHt7IHJvd0FjdGlvbi5sYWJlbCB9fVxuICAgICAgPC9mcy1maWxlPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj4iXX0=
@@ -1,6 +1,7 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
2
2
  import { FsMenuComponent } from '@firestitch/menu';
3
3
  import { Row } from '../../../../models/row';
4
+ import { RowAction } from '../../../../models/row-action.model';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@firestitch/menu";
6
7
  import * as i2 from "@angular/common";
@@ -10,14 +11,20 @@ import * as i5 from "../../../../pipes/action-label";
10
11
  export class FsRowMenuActionComponent {
11
12
  _menu;
12
13
  row;
13
- icon;
14
- label;
14
+ rowAction;
15
15
  file;
16
16
  fileSelect = new EventEmitter();
17
17
  fileError = new EventEmitter();
18
+ icon;
19
+ label;
18
20
  constructor(_menu) {
19
21
  this._menu = _menu;
20
22
  }
23
+ ngOnChanges(changes) {
24
+ if (changes.row) {
25
+ this.icon = this.rowAction.getRowIcon(this.row.data);
26
+ }
27
+ }
21
28
  selectFile(event) {
22
29
  this.fileSelect.emit(event);
23
30
  this.closeMenu();
@@ -29,17 +36,18 @@ export class FsRowMenuActionComponent {
29
36
  closeMenu() {
30
37
  this._menu.closeMenu();
31
38
  }
39
+ ngOnInit() {
40
+ this.label = this.rowAction.label;
41
+ }
32
42
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowMenuActionComponent, deps: [{ token: i1.FsMenuComponent }], target: i0.ɵɵFactoryTarget.Component });
33
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: { row: "row", icon: "icon", label: "label", file: "file" }, outputs: { fileSelect: "fileSelect", fileError: "fileError" }, ngImport: i0, template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n</ng-container>\n\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [accept]=\"file.accept || '*'\"\n [multiple]=\"file.multiple\"\n [minWidth]=\"file.minWidth\"\n [minHeight]=\"file.minHeight\"\n [imageWidth]=\"file.maxWidth\"\n [imageHeight]=\"file.maxHeight\"\n (click)=\"$event.stopPropagation();\"\n (select)=\"selectFile($event)\"\n (error)=\"errorFile($event)\"\n (cancel)=\"closeMenu()\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n </fs-file>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.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: i5.ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
43
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsRowMenuActionComponent, selector: "fs-list-row-menu-action", inputs: { row: "row", rowAction: "rowAction", file: "file" }, outputs: { fileSelect: "fileSelect", fileError: "fileError" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ label| actionLabel:row }}\n</ng-container>\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [accept]=\"file.accept || '*'\"\n [multiple]=\"file.multiple\"\n [minWidth]=\"file.minWidth\"\n [minHeight]=\"file.minHeight\"\n [imageWidth]=\"file.maxWidth\"\n [imageHeight]=\"file.maxHeight\"\n (click)=\"$event.stopPropagation();\"\n (select)=\"selectFile($event)\"\n (error)=\"errorFile($event)\"\n (cancel)=\"closeMenu()\">\n <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ label| actionLabel:row }}\n </fs-file>\n</ng-template>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.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: i5.ActionLabelPipe, name: "actionLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
44
  }
35
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsRowMenuActionComponent, decorators: [{
36
46
  type: Component,
37
- args: [{ selector: 'fs-list-row-menu-action', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n</ng-container>\n\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [accept]=\"file.accept || '*'\"\n [multiple]=\"file.multiple\"\n [minWidth]=\"file.minWidth\"\n [minHeight]=\"file.minHeight\"\n [imageWidth]=\"file.maxWidth\"\n [imageHeight]=\"file.maxHeight\"\n (click)=\"$event.stopPropagation();\"\n (select)=\"selectFile($event)\"\n (error)=\"errorFile($event)\"\n (cancel)=\"closeMenu()\">\n <mat-icon *ngIf=\"icon\">{{icon}}</mat-icon>\n {{label| actionLabel:row}}\n </fs-file>\n</ng-template>\n" }]
47
+ args: [{ selector: 'fs-list-row-menu-action', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!file else withFile\">\n <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ label| actionLabel:row }}\n</ng-container>\n<ng-template #withFile>\n <fs-file\n class=\"action-button\"\n [accept]=\"file.accept || '*'\"\n [multiple]=\"file.multiple\"\n [minWidth]=\"file.minWidth\"\n [minHeight]=\"file.minHeight\"\n [imageWidth]=\"file.maxWidth\"\n [imageHeight]=\"file.maxHeight\"\n (click)=\"$event.stopPropagation();\"\n (select)=\"selectFile($event)\"\n (error)=\"errorFile($event)\"\n (cancel)=\"closeMenu()\">\n <mat-icon *ngIf=\"icon\">\n {{ icon }}\n </mat-icon>\n {{ label| actionLabel:row }}\n </fs-file>\n</ng-template>" }]
38
48
  }], ctorParameters: () => [{ type: i1.FsMenuComponent }], propDecorators: { row: [{
39
49
  type: Input
40
- }], icon: [{
41
- type: Input
42
- }], label: [{
50
+ }], rowAction: [{
43
51
  type: Input
44
52
  }], file: [{
45
53
  type: Input
@@ -48,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
48
56
  }], fileError: [{
49
57
  type: Output
50
58
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1hY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L21lbnUtYWN0aW9uL21lbnUtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9tZW51LWFjdGlvbi9tZW51LWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFBRSxZQUFZLEVBQ3ZCLEtBQUssRUFBRSxNQUFNLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQVE3QyxNQUFNLE9BQU8sd0JBQXdCO0lBcUJ6QjtJQWxCSCxHQUFHLENBQU07SUFHVCxJQUFJLENBQVM7SUFHYixLQUFLLENBQVM7SUFHZCxJQUFJLENBQXNCO0lBRzFCLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBR2hDLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRXRDLFlBQ1UsS0FBc0I7UUFBdEIsVUFBSyxHQUFMLEtBQUssQ0FBaUI7SUFDNUIsQ0FBQztJQUVFLFVBQVUsQ0FBQyxLQUFLO1FBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU0sU0FBUyxDQUFDLEtBQUs7UUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN6QixDQUFDO3VHQXBDVSx3QkFBd0I7MkZBQXhCLHdCQUF3QixrTUNqQnJDLGtzQkFzQkE7OzJGRExhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSx5QkFBeUIsbUJBRWxCLHVCQUF1QixDQUFDLE1BQU07b0ZBS3hDLEdBQUc7c0JBRFQsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFJQyxVQUFVO3NCQURoQixNQUFNO2dCQUlBLFNBQVM7c0JBRGYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZzTWVudUNvbXBvbmVudCB9IGZyb20gJ0BmaXJlc3RpdGNoL21lbnUnO1xuXG5pbXBvcnQgeyBGc0xpc3RSb3dBY3Rpb25GaWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcy9saXN0Y29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBSb3cgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93JztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1saXN0LXJvdy1tZW51LWFjdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWFjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGc1Jvd01lbnVBY3Rpb25Db21wb25lbnQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByb3c6IFJvdztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaWNvbjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYWJlbDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWxlOiBGc0xpc3RSb3dBY3Rpb25GaWxlO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZmlsZVNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGVFcnJvciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9tZW51OiBGc01lbnVDb21wb25lbnQsXG4gICkgeyB9XG5cbiAgcHVibGljIHNlbGVjdEZpbGUoZXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVTZWxlY3QuZW1pdChldmVudCk7XG4gICAgdGhpcy5jbG9zZU1lbnUoKTtcbiAgfVxuXG4gIHB1YmxpYyBlcnJvckZpbGUoZXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVFcnJvci5lbWl0KGV2ZW50KTtcbiAgICB0aGlzLmNsb3NlTWVudSgpO1xuICB9XG5cbiAgcHVibGljIGNsb3NlTWVudSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZW51LmNsb3NlTWVudSgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIWZpbGUgZWxzZSB3aXRoRmlsZVwiPlxuICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCI+e3tpY29ufX08L21hdC1pY29uPlxuICB7e2xhYmVsfCBhY3Rpb25MYWJlbDpyb3d9fVxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjd2l0aEZpbGU+XG4gIDxmcy1maWxlXG4gICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIlxuICAgICAgW2FjY2VwdF09XCJmaWxlLmFjY2VwdCB8fCAnKidcIlxuICAgICAgW211bHRpcGxlXT1cImZpbGUubXVsdGlwbGVcIlxuICAgICAgW21pbldpZHRoXT1cImZpbGUubWluV2lkdGhcIlxuICAgICAgW21pbkhlaWdodF09XCJmaWxlLm1pbkhlaWdodFwiXG4gICAgICBbaW1hZ2VXaWR0aF09XCJmaWxlLm1heFdpZHRoXCJcbiAgICAgIFtpbWFnZUhlaWdodF09XCJmaWxlLm1heEhlaWdodFwiXG4gICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1wiXG4gICAgICAoc2VsZWN0KT1cInNlbGVjdEZpbGUoJGV2ZW50KVwiXG4gICAgICAoZXJyb3IpPVwiZXJyb3JGaWxlKCRldmVudClcIlxuICAgICAgKGNhbmNlbCk9XCJjbG9zZU1lbnUoKVwiPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIj57e2ljb259fTwvbWF0LWljb24+XG4gICAge3tsYWJlbHwgYWN0aW9uTGFiZWw6cm93fX1cbiAgPC9mcy1maWxlPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1hY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2JvZHkvcm93L21lbnUtYWN0aW9uL21lbnUtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9ib2R5L3Jvdy9tZW51LWFjdGlvbi9tZW51LWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFBRSxZQUFZLEVBQ3ZCLEtBQUssRUFBcUIsTUFBTSxHQUVqQyxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7OztBQVFoRSxNQUFNLE9BQU8sd0JBQXdCO0lBcUJ6QjtJQWxCSCxHQUFHLENBQU07SUFHVCxTQUFTLENBQVk7SUFHckIsSUFBSSxDQUFzQjtJQUcxQixVQUFVLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUdoQyxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUUvQixJQUFJLENBQVM7SUFDYixLQUFLLENBQVM7SUFFckIsWUFDVSxLQUFzQjtRQUF0QixVQUFLLEdBQUwsS0FBSyxDQUFpQjtJQUM1QixDQUFDO0lBRUUsV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLElBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQUs7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBSztRQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVNLFNBQVM7UUFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNwQyxDQUFDO3VHQTlDVSx3QkFBd0I7MkZBQXhCLHdCQUF3QixpTkNuQnJDLDh0QkF3QmM7OzJGRExELHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSx5QkFBeUIsbUJBRWxCLHVCQUF1QixDQUFDLE1BQU07b0ZBS3hDLEdBQUc7c0JBRFQsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLE1BQU07Z0JBSUEsU0FBUztzQkFEZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZzTWVudUNvbXBvbmVudCB9IGZyb20gJ0BmaXJlc3RpdGNoL21lbnUnO1xuXG5pbXBvcnQgeyBGc0xpc3RSb3dBY3Rpb25GaWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcy9saXN0Y29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBSb3cgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcm93JztcbmltcG9ydCB7IFJvd0FjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yb3ctYWN0aW9uLm1vZGVsJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1saXN0LXJvdy1tZW51LWFjdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWFjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGc1Jvd01lbnVBY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvdzogUm93O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByb3dBY3Rpb246IFJvd0FjdGlvbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZmlsZTogRnNMaXN0Um93QWN0aW9uRmlsZTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGVTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWxlRXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHVibGljIGljb246IHN0cmluZztcbiAgcHVibGljIGxhYmVsOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfbWVudTogRnNNZW51Q29tcG9uZW50LFxuICApIHsgfVxuICAgIFxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmKGNoYW5nZXMucm93KSB7XG4gICAgICB0aGlzLmljb24gPSB0aGlzLnJvd0FjdGlvbi5nZXRSb3dJY29uKHRoaXMucm93LmRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RGaWxlKGV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5maWxlU2VsZWN0LmVtaXQoZXZlbnQpO1xuICAgIHRoaXMuY2xvc2VNZW51KCk7XG4gIH1cblxuICBwdWJsaWMgZXJyb3JGaWxlKGV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5maWxlRXJyb3IuZW1pdChldmVudCk7XG4gICAgdGhpcy5jbG9zZU1lbnUoKTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZU1lbnUoKTogdm9pZCB7XG4gICAgdGhpcy5fbWVudS5jbG9zZU1lbnUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxhYmVsID0gdGhpcy5yb3dBY3Rpb24ubGFiZWw7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhZmlsZSBlbHNlIHdpdGhGaWxlXCI+XG4gIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIj5cbiAgICB7eyBpY29uIH19XG4gIDwvbWF0LWljb24+XG4gIHt7IGxhYmVsfCBhY3Rpb25MYWJlbDpyb3cgfX1cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICN3aXRoRmlsZT5cbiAgPGZzLWZpbGVcbiAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiXG4gICAgICBbYWNjZXB0XT1cImZpbGUuYWNjZXB0IHx8ICcqJ1wiXG4gICAgICBbbXVsdGlwbGVdPVwiZmlsZS5tdWx0aXBsZVwiXG4gICAgICBbbWluV2lkdGhdPVwiZmlsZS5taW5XaWR0aFwiXG4gICAgICBbbWluSGVpZ2h0XT1cImZpbGUubWluSGVpZ2h0XCJcbiAgICAgIFtpbWFnZVdpZHRoXT1cImZpbGUubWF4V2lkdGhcIlxuICAgICAgW2ltYWdlSGVpZ2h0XT1cImZpbGUubWF4SGVpZ2h0XCJcbiAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XCJcbiAgICAgIChzZWxlY3QpPVwic2VsZWN0RmlsZSgkZXZlbnQpXCJcbiAgICAgIChlcnJvcik9XCJlcnJvckZpbGUoJGV2ZW50KVwiXG4gICAgICAoY2FuY2VsKT1cImNsb3NlTWVudSgpXCI+XG4gICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiPlxuICAgICAge3sgaWNvbiB9fVxuICAgIDwvbWF0LWljb24+XG4gICAge3sgbGFiZWx8IGFjdGlvbkxhYmVsOnJvdyB9fVxuICA8L2ZzLWZpbGU+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGNvbmZpZy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZzRmlsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbGUnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRm4sXG4gIEZzRmlsdGVyQWN0aW9uLFxuICBGc0ZpbHRlckF1dG9SZWxvYWQsXG4gIEZzRmlsdGVyUGVyc2lzdGFuY2UsXG4gIElGaWx0ZXJDb25maWdEYXRlSXRlbSxcbiAgSUZpbHRlckNvbmZpZ0l0ZW0sXG4gIElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWcsXG59IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQge1xuICBGc1NlbGVjdGlvbkFjdGlvblNlbGVjdGVkLFxuICBGc1NlbGVjdGlvbkRpYWxvZ0NvbmZpZ0FjdGlvbixcbiAgU2VsZWN0aW9uUmVmLFxufSBmcm9tICdAZmlyZXN0aXRjaC9zZWxlY3Rpb24nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJlb3JkZXJQb3NpdGlvbiB9IGZyb20gJy4uL2NsYXNzZXMvcmVvcmRlci1jb250cm9sbGVyJztcbmltcG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuLi9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdHJhdGVneSB9IGZyb20gJy4uL2VudW1zL3BhZ2luYXRpb24tc3RyYXRlZ3kuZW51bSc7XG5pbXBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi4vZW51bXMvcm93LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBGc0xpc3RTdGF0ZSB9IGZyb20gJy4uL2VudW1zL3N0YXRlLmVudW0nO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNQYWdpbmcge1xuICBsaW1pdHM/OiBudW1iZXJbXTtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHBhZ2U/OiBudW1iZXI7XG4gIHBhZ2VzPzogbnVtYmVyO1xuICByZWNvcmRzPzogbnVtYmVyO1xuICBzdHJhdGVneT86IFBhZ2luYXRpb25TdHJhdGVneTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RDb25maWcge1xuICBoZWFkaW5nPzogc3RyaW5nO1xuICB0cmFja0J5Pzogc3RyaW5nO1xuICBzdWJoZWFkaW5nPzogc3RyaW5nO1xuICBzdGF0dXM/OiBib29sZWFuO1xuICByb3dIb3ZlckhpZ2hsaWdodD86IGJvb2xlYW47XG4gIGNoaXBzPzogYm9vbGVhbjtcbiAgY29sdW1uPzogRnNMaXN0Q29sdW1uQ29uZmlnO1xuICBhdXRvRm9jdXM/OiBib29sZWFuO1xuICBmaWx0ZXJJbnB1dD86IGJvb2xlYW47XG4gIHF1ZXJ5UGFyYW0/OiBib29sZWFuO1xuICBwYWdpbmc/OiBGc1BhZ2luZyB8IGZhbHNlO1xuICBsb2FkTW9yZT86IEZzTGlzdExvYWRNb3JlQ29uZmlnIHwgYm9vbGVhbjtcbiAgY29sdW1uRGVmYXVsdHM/OiBhbnk7XG4gIGZpbHRlcnM/OiAoSUZpbHRlckNvbmZpZ0l0ZW0gfCBJRmlsdGVyQ29uZmlnRGF0ZUl0ZW0pW107XG4gIHNhdmVkRmlsdGVycz86IElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWc7XG4gIHBlcnNpc3Q/OiBGc0xpc3RQZXJzaXRhbmNlO1xuICByb3dBY3Rpb25zPzogKEZzTGlzdFJvd0FjdGlvbkdyb3VwIHwgRnNMaXN0Um93QWN0aW9uKVtdO1xuICByb3dBY3Rpb25zSG92ZXI/OiBib29sZWFuO1xuICByb3dDbGFzcz86IChyb3c6IGFueSwgb3B0aW9ucz86IEZzTGlzdFJvd0NsYXNzT3B0aW9ucykgPT4gc3RyaW5nO1xuICByb3dIb3Zlcj86IGJvb2xlYW47XG4gIGFjdGlvbnM/OiBGc0xpc3RBY3Rpb25bXTtcbiAgZmV0Y2g/OiBGc0xpc3RGZXRjaEZuO1xuICBhZnRlckZldGNoPzogRnNMaXN0QWZ0ZXJGZXRjaEZuO1xuICBiZWZvcmVGZXRjaD86IEZzTGlzdEJlZm9yZUZldGNoRm47XG4gIGFmdGVyQ29udGVudEluaXQ/OiBGc0xpc3RBZnRlckNvbnRlbnRJbml0Rm47XG4gIGFmdGVySW5pdD86IEZzTGlzdEFmdGVySW5pdEZuO1xuICBzZWxlY3Rpb24/OiBGc0xpc3RTZWxlY3Rpb25Db25maWc7XG4gIGluaXRpYWxGZXRjaD86IGJvb2xlYW47XG4gIHJvd0V2ZW50cz86IHsgW25hbWU6IHN0cmluZ106IChldmVudCkgPT4gdm9pZCB9O1xuICBoZWFkZXI/OiBGc0xpc3RIZWFkZXJDb25maWc7XG4gIGNlbGw/OiBGc0xpc3RDZWxsQ29uZmlnO1xuICBmb290ZXI/OiBGc0xpc3RGb290ZXJDb25maWc7XG4gIHJlb3JkZXI/OiBGc0xpc3RSZW9yZGVyQ29uZmlnO1xuICBzb3J0cz86IEZzTGlzdFNvcnRzQ29uZmlnW107XG4gIGdyb3VwPzogRnNMaXN0R3JvdXBDb25maWc7XG4gIHNvcnQ/OiBGc0xpc3RTb3J0Q29uZmlnO1xuICByZXN0b3JlPzogRnNMaXN0UmVzdG9yZUNvbmZpZztcbiAgbm9SZXN1bHRzPzogRnNMaXN0Tm9SZXN1bHRzQ29uZmlnO1xuICBlbXB0eVN0YXRlPzogRnNMaXN0RW1wdHlTdGF0ZUNvbmZpZztcbiAgZmlsdGVySW5pdD86IENoYW5nZUZuO1xuICBmaWx0ZXJDaGFuZ2U/OiBDaGFuZ2VGbjtcbiAgcmVsb2FkPzogYm9vbGVhbjtcbiAgc3R5bGU/OiAnbGluZScgfCAnY2FyZCcgfCAnYmFzaWMnO1xuICBhdXRvUmVsb2FkPzogRnNGaWx0ZXJBdXRvUmVsb2FkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEdyb3VwQ29uZmlnIHtcbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIGluaXRpYWxFeHBhbmQ/OiBib29sZWFuO1xuICBncm91cEJ5PzogKHJvdzogYW55KSA9PiBhbnk7XG4gIGNvbXBhcmVCeT86IChyb3c6IGFueSkgPT4gYW55O1xuICBmb290ZXI/OiAoXG4gICAgcm93OiB7IFtrZXk6IHN0cmluZ106IGFueSB9LFxuICAgIGdyb3VwPzoge1xuICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgY2hpbGRyZW46IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgfVtdO1xuICAgIH0sXG4gICkgPT4gYm9vbGVhbjtcbiAgYWN0aW9ucz86IChGc0xpc3RSb3dBY3Rpb25Hcm91cCB8IEZzTGlzdFJvd0FjdGlvbilbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RMb2FkTW9yZUNvbmZpZyB7XG4gIGVuYWJsZWQ/OiBib29sZWFuLFxuICBsYWJlbD86IHN0cmluZztcbiAgYnV0dG9uQ29sb3I/OiAncHJpbWFyeScgfCAnYWNjZW50JyB8ICd3YXJuJztcbiAgYnV0dG9uVHlwZT86ICdmbGF0JyB8ICdyYWlzZWQnIHwgJ3N0cm9rZWQnIHwgJ2Jhc2ljJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSZW9yZGVyQ29uZmlnIHtcbiAgc3RhcnQ/OiAoKSA9PiB2b2lkO1xuICBtb3ZlZD86IEZzTGlzdFJlb3JkZXJNb3ZlZENhbGxiYWNrO1xuICBkb25lPzogRnNMaXN0UmVvcmRlckRvbmVDYWxsYmFjaztcbiAgbW92ZURyb3A/OiBGc0xpc3RSZW9yZGVyTW92ZUluR3JvdXBDYWxsYmFjaztcbiAgcG9zaXRpb24/OiBSZW9yZGVyUG9zaXRpb247XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgdG9nZ2xlPzogYm9vbGVhbjtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIG1lbnU/OiBib29sZWFuO1xuICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIHN0YXR1cz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJlb3JkZXJNb3ZlZENhbGxiYWNrXG4gID0gKHJvd3M6IEZzTGlzdFJlb3JkZXJEYXRhW10pID0+IHZvaWQ7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJlb3JkZXJEb25lQ2FsbGJhY2tcbiAgPSAocm93czogRnNMaXN0UmVvcmRlckRhdGFbXSkgPT4gdm9pZCB8IE9ic2VydmFibGU8YW55PjtcblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSZW9yZGVyRGF0YSB7XG4gIHR5cGU6IFJvd1R5cGU7XG4gIGRhdGE6IGFueTtcbiAgcGFyZW50OiBGc0xpc3RSZW9yZGVyRGF0YTtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0UmVvcmRlck1vdmVJbkdyb3VwQ2FsbGJhY2sgPVxuICAoZGF0YTogeyByb3cxOiBhbnk7IHJvdzI6IGFueTsgZ3JvdXAxOiBhbnk7IGdyb3VwMjogYW55IH0pID0+IGJvb2xlYW47XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0SGVhZGVyQ29uZmlnIHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBhbGlnbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RDZWxsQ29uZmlnIHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBhbGlnbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RGb290ZXJDb25maWcge1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGFsaWduPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFNvcnRzQ29uZmlnIHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xuICBkaXJlY3Rpb24/OiAnYXNjJyB8ICdkZXNjJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RTb3J0Q29uZmlnIHtcbiAgdmFsdWU6IHN0cmluZztcbiAgZGlyZWN0aW9uPzogJ2FzYycgfCAnZGVzYyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0UmVzdG9yZUNvbmZpZyB7XG4gIHF1ZXJ5PzogYW55O1xuICBmaWx0ZXI/OiBib29sZWFuIHwgc3RyaW5nO1xuICBmaWx0ZXJMYWJlbD86IHN0cmluZztcbiAgbWVudUxhYmVsPzogc3RyaW5nO1xuICBjbGljaz86IChyb3c6IEZzTGlzdEFic3RyYWN0Um93LCBldmVudD86IGFueSkgPT4gdm9pZCB8IE9ic2VydmFibGU8YW55PjtcbiAgcmVsb2FkPzogYm9vbGVhbjtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdE5vUmVzdWx0c0NvbmZpZyB7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0U2VsZWN0aW9uQ29uZmlnIHtcbiAgYWN0aW9ucz86IEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW107XG4gIGFjdGlvblNlbGVjdGVkPzogKGFjdGlvbjogRnNMaXN0QWN0aW9uU2VsZWN0ZWQpID0+IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGFsbFNlbGVjdGVkPzogKCkgPT4gdm9pZDtcbiAgY2FuY2VsbGVkPzogKCkgPT4gdm9pZDtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBzZWxlY3RBbGw/OiBib29sZWFuO1xuICBzZWxlY3Rpb25DaGFuZ2VkPzogKGRhdGE6IGFueSwgc2VsZWN0ZWRBbGw6IGJvb2xlYW4sIHNlbGVjdGlvblJlZjogU2VsZWN0aW9uUmVmKSA9PlxuICAgIEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW10gfCBPYnNlcnZhYmxlPEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW10gfCB2b2lkPiB8IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0RmV0Y2hTdWJzY3JpcHRpb24ge1xuICBsb2FkT2Zmc2V0PzogYm9vbGVhbjtcbiAgc2Nyb2xsSW50b1ZpZXc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RBY3Rpb24gPSB7IGN1c3RvbWl6ZT86IGJvb2xlYW4gfSAmIEZzRmlsdGVyQWN0aW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbkdyb3VwIHtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIHJvd0FjdGlvbnM6IEZzTGlzdFJvd0FjdGlvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbiB7XG4gIGxhYmVsPzogc3RyaW5nIHwgRnNMaXN0Um93QWN0aW9uTGFiZWxGbjtcbiAgdHlwZT86IEFjdGlvblR5cGU7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgbWVudT86IGJvb2xlYW47XG4gIGNsaWNrPzogKHJvdywgZXZlbnQsIGluZGV4KSA9PiB2b2lkO1xuICBsaW5rPzogRnNMaXN0Um93QWN0aW9uTGlua0ZuO1xuICBmaWxlPzogRnNMaXN0Um93QWN0aW9uRmlsZTtcbiAgc2hvdz86IChyb3csIGluZGV4OiBudW1iZXIpID0+IGJvb2xlYW47XG4gIHJlbW92ZT86IHsgdGl0bGU/OiBzdHJpbmc7IHRlbXBsYXRlPzogc3RyaW5nIH0gfCBib29sZWFuO1xuICByZXN0b3JlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0Um93QWN0aW9uRmlsZUZuID0gKHNlbGVjdGlvbjogRnNGaWxlIHwgRnNGaWxlW10sIHJvdzogRnNMaXN0QWJzdHJhY3RSb3csIGluZGV4OiBudW1iZXIpID0+IHZvaWQ7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJvd0FjdGlvbkxpbmtGbiA9IChyb3c6IEZzTGlzdEFic3RyYWN0Um93KSA9PiBGc0xpc3RSb3dBY3Rpb25MaW5rO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RSb3dBY3Rpb25MYWJlbEZuID0gKHJvdzogRnNMaXN0QWJzdHJhY3RSb3cpID0+IHN0cmluZztcblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSb3dBY3Rpb25GaWxlIHtcbiAgc2VsZWN0OiBGc0xpc3RSb3dBY3Rpb25GaWxlRm47XG4gIGVycm9yPzogKGVycm9yOiB1bmtub3duKSA9PiB2b2lkO1xuICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIGFjY2VwdD86IHN0cmluZztcbiAgbWluV2lkdGg/OiBudW1iZXI7XG4gIG1pbkhlaWdodD86IG51bWJlcjtcbiAgbWF4V2lkdGg/OiBudW1iZXI7XG4gIG1heEhlaWdodD86IG51bWJlcjtcbiAgaW1hZ2VRdWFsaXR5PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbkxpbmsge1xuICBsaW5rOiBhbnlbXSB8IHN0cmluZztcbiAgcXVlcnlQYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuICB0YXJnZXQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0QWJzdHJhY3RSb3cge1xuICBbbmFtZTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RUcmFja0J5Rm4gPSAocm93OiBGc0xpc3RBYnN0cmFjdFJvdywgaW5kZXg/OiBudW1iZXIpID0+IGJvb2xlYW47XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGbiA9IChsaXN0Um93OiBGc0xpc3RBYnN0cmFjdFJvdywgdGFyZ2V0Um93PzogRnNMaXN0QWJzdHJhY3RSb3cpID0+IGJvb2xlYW47XG5cbmV4cG9ydCB0eXBlIEZzTGlzdENvbHVtbkxvYWRGbiA9ICgpID0+IE9ic2VydmFibGU8RnNMaXN0Q29sdW1uW10+O1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5DaGFuZ2VGbiA9IChsaXN0Q29sdW1uczogRnNMaXN0Q29sdW1uW10pID0+IHZvaWQ7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdENvbHVtblRpdGxlRm4gPSAobmFtZTogc3RyaW5nLCBkZWZhdWx0VGl0bGU6IHN0cmluZykgPT4gc3RyaW5nO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5Ub29sdGlwRm4gPSAobmFtZTogc3RyaW5nLCBzaG93OiBib29sZWFuLCBkaXNhYmxlZDogYm9vbGVhbikgPT4gc3RyaW5nO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5EaXNhYmxlZEZuID0gKG5hbWU6IHN0cmluZykgPT4gYm9vbGVhbjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uU2VsZWN0ZWRGbiA9IChuYW1lOiBzdHJpbmcsIHNob3c6IGJvb2xlYW4pID0+IGJvb2xlYW47XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Q29sdW1uQ29uZmlnIHtcbiAgbG9hZD86IEZzTGlzdENvbHVtbkxvYWRGbjtcbiAgY2hhbmdlPzogRnNMaXN0Q29sdW1uQ2hhbmdlRm47XG4gIHRpdGxlPzogRnNMaXN0Q29sdW1uVGl0bGVGbjtcbiAgdG9vbHRpcD86IEZzTGlzdENvbHVtblRvb2x0aXBGbjtcbiAgZGlzYWJsZWQ/OiBGc0xpc3RDb2x1bW5EaXNhYmxlZEZuO1xuICBzZWxlY3RlZD86IEZzTGlzdENvbHVtblNlbGVjdGVkRm47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Q29sdW1uIHtcbiAgbmFtZTogc3RyaW5nO1xuICBzaG93OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEFjdGlvblNlbGVjdGVkIGV4dGVuZHMgRnNTZWxlY3Rpb25BY3Rpb25TZWxlY3RlZCB7XG4gIHNlbGVjdGVkOiBhbnlbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RFbXB0eVN0YXRlQ29uZmlnIHtcbiAgdmFsaWRhdGU6IEZzTGlzdFN0YXRlVmFsaWRhdGlvbkZuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEZldGNoT3B0aW9ucyB7XG4gIHN0YXRlOiBGc0xpc3RTdGF0ZTtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0UGVyc2l0YW5jZSA9IEZzRmlsdGVyUGVyc2lzdGFuY2U7XG5leHBvcnQgdHlwZSBGc0xpc3RTdGF0ZVZhbGlkYXRpb25GbiA9IChmaWx0ZXJzOiBhbnksIHJvd3M6IEZzTGlzdEFic3RyYWN0Um93W10pID0+IGJvb2xlYW47XG5leHBvcnQgdHlwZSBGc0xpc3RGZXRjaEZuID1cbiAgKHF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBvcHRpb25zOiBGc0xpc3RGZXRjaE9wdGlvbnMpID0+XG4gICAgT2JzZXJ2YWJsZTx7IGRhdGE6IHVua25vd25bXTsgcGFnaW5nPzogRnNQYWdpbmcgfT47XG5cbmV4cG9ydCB0eXBlIEZzTGlzdEFmdGVyRmV0Y2hGbiA9XG4gIChxdWVyeTogUmVjb3JkPHN0cmluZywgYW55PiwgZGF0YTogdW5rbm93bltdKSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RCZWZvcmVGZXRjaEZuID1cbiAgKHF1ZXJ5KSA9PiBPYnNlcnZhYmxlPFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG5leHBvcnQgdHlwZSBGc0xpc3RBZnRlckNvbnRlbnRJbml0Rm4gPVxuICAocXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4sIGRhdGE6IHVua25vd25bXSkgPT4gdm9pZDtcblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSb3dDbGFzc09wdGlvbnMge1xuICBpbmRleDogbnVtYmVyO1xuICBncm91cEluZGV4PzogbnVtYmVyO1xuICB0eXBlPzogUm93VHlwZTtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0QWZ0ZXJJbml0Rm4gPSAobGlzdENvbXBvbmVudDogYW55KSA9PiB2b2lkO1xuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGNvbmZpZy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZzRmlsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbGUnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRm4sXG4gIEZzRmlsdGVyQWN0aW9uLFxuICBGc0ZpbHRlckF1dG9SZWxvYWQsXG4gIEZzRmlsdGVyUGVyc2lzdGFuY2UsXG4gIElGaWx0ZXJDb25maWdEYXRlSXRlbSxcbiAgSUZpbHRlckNvbmZpZ0l0ZW0sXG4gIElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWcsXG59IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQge1xuICBGc1NlbGVjdGlvbkFjdGlvblNlbGVjdGVkLFxuICBGc1NlbGVjdGlvbkRpYWxvZ0NvbmZpZ0FjdGlvbixcbiAgU2VsZWN0aW9uUmVmLFxufSBmcm9tICdAZmlyZXN0aXRjaC9zZWxlY3Rpb24nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJlb3JkZXJQb3NpdGlvbiB9IGZyb20gJy4uL2NsYXNzZXMvcmVvcmRlci1jb250cm9sbGVyJztcbmltcG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuLi9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdHJhdGVneSB9IGZyb20gJy4uL2VudW1zL3BhZ2luYXRpb24tc3RyYXRlZ3kuZW51bSc7XG5pbXBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi4vZW51bXMvcm93LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBGc0xpc3RTdGF0ZSB9IGZyb20gJy4uL2VudW1zL3N0YXRlLmVudW0nO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNQYWdpbmcge1xuICBsaW1pdHM/OiBudW1iZXJbXTtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHBhZ2U/OiBudW1iZXI7XG4gIHBhZ2VzPzogbnVtYmVyO1xuICByZWNvcmRzPzogbnVtYmVyO1xuICBzdHJhdGVneT86IFBhZ2luYXRpb25TdHJhdGVneTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RDb25maWcge1xuICBoZWFkaW5nPzogc3RyaW5nO1xuICB0cmFja0J5Pzogc3RyaW5nO1xuICBzdWJoZWFkaW5nPzogc3RyaW5nO1xuICBzdGF0dXM/OiBib29sZWFuO1xuICByb3dIb3ZlckhpZ2hsaWdodD86IGJvb2xlYW47XG4gIGNoaXBzPzogYm9vbGVhbjtcbiAgY29sdW1uPzogRnNMaXN0Q29sdW1uQ29uZmlnO1xuICBhdXRvRm9jdXM/OiBib29sZWFuO1xuICBmaWx0ZXJJbnB1dD86IGJvb2xlYW47XG4gIHF1ZXJ5UGFyYW0/OiBib29sZWFuO1xuICBwYWdpbmc/OiBGc1BhZ2luZyB8IGZhbHNlO1xuICBsb2FkTW9yZT86IEZzTGlzdExvYWRNb3JlQ29uZmlnIHwgYm9vbGVhbjtcbiAgY29sdW1uRGVmYXVsdHM/OiBhbnk7XG4gIGZpbHRlcnM/OiAoSUZpbHRlckNvbmZpZ0l0ZW0gfCBJRmlsdGVyQ29uZmlnRGF0ZUl0ZW0pW107XG4gIHNhdmVkRmlsdGVycz86IElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWc7XG4gIHBlcnNpc3Q/OiBGc0xpc3RQZXJzaXRhbmNlO1xuICByb3dBY3Rpb25zPzogKEZzTGlzdFJvd0FjdGlvbkdyb3VwIHwgRnNMaXN0Um93QWN0aW9uKVtdO1xuICByb3dBY3Rpb25zSG92ZXI/OiBib29sZWFuO1xuICByb3dDbGFzcz86IChyb3c6IGFueSwgb3B0aW9ucz86IEZzTGlzdFJvd0NsYXNzT3B0aW9ucykgPT4gc3RyaW5nO1xuICByb3dIb3Zlcj86IGJvb2xlYW47XG4gIGFjdGlvbnM/OiBGc0xpc3RBY3Rpb25bXTtcbiAgZmV0Y2g/OiBGc0xpc3RGZXRjaEZuO1xuICBhZnRlckZldGNoPzogRnNMaXN0QWZ0ZXJGZXRjaEZuO1xuICBiZWZvcmVGZXRjaD86IEZzTGlzdEJlZm9yZUZldGNoRm47XG4gIGFmdGVyQ29udGVudEluaXQ/OiBGc0xpc3RBZnRlckNvbnRlbnRJbml0Rm47XG4gIGFmdGVySW5pdD86IEZzTGlzdEFmdGVySW5pdEZuO1xuICBzZWxlY3Rpb24/OiBGc0xpc3RTZWxlY3Rpb25Db25maWc7XG4gIGluaXRpYWxGZXRjaD86IGJvb2xlYW47XG4gIHJvd0V2ZW50cz86IHsgW25hbWU6IHN0cmluZ106IChldmVudCkgPT4gdm9pZCB9O1xuICBoZWFkZXI/OiBGc0xpc3RIZWFkZXJDb25maWc7XG4gIGNlbGw/OiBGc0xpc3RDZWxsQ29uZmlnO1xuICBmb290ZXI/OiBGc0xpc3RGb290ZXJDb25maWc7XG4gIHJlb3JkZXI/OiBGc0xpc3RSZW9yZGVyQ29uZmlnO1xuICBzb3J0cz86IEZzTGlzdFNvcnRzQ29uZmlnW107XG4gIGdyb3VwPzogRnNMaXN0R3JvdXBDb25maWc7XG4gIHNvcnQ/OiBGc0xpc3RTb3J0Q29uZmlnO1xuICByZXN0b3JlPzogRnNMaXN0UmVzdG9yZUNvbmZpZztcbiAgbm9SZXN1bHRzPzogRnNMaXN0Tm9SZXN1bHRzQ29uZmlnO1xuICBlbXB0eVN0YXRlPzogRnNMaXN0RW1wdHlTdGF0ZUNvbmZpZztcbiAgZmlsdGVySW5pdD86IENoYW5nZUZuO1xuICBmaWx0ZXJDaGFuZ2U/OiBDaGFuZ2VGbjtcbiAgcmVsb2FkPzogYm9vbGVhbjtcbiAgc3R5bGU/OiAnbGluZScgfCAnY2FyZCcgfCAnYmFzaWMnO1xuICBhdXRvUmVsb2FkPzogRnNGaWx0ZXJBdXRvUmVsb2FkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEdyb3VwQ29uZmlnIHtcbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIGluaXRpYWxFeHBhbmQ/OiBib29sZWFuO1xuICBncm91cEJ5PzogKHJvdzogYW55KSA9PiBhbnk7XG4gIGNvbXBhcmVCeT86IChyb3c6IGFueSkgPT4gYW55O1xuICBmb290ZXI/OiAoXG4gICAgcm93OiB7IFtrZXk6IHN0cmluZ106IGFueSB9LFxuICAgIGdyb3VwPzoge1xuICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgY2hpbGRyZW46IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgfVtdO1xuICAgIH0sXG4gICkgPT4gYm9vbGVhbjtcbiAgYWN0aW9ucz86IChGc0xpc3RSb3dBY3Rpb25Hcm91cCB8IEZzTGlzdFJvd0FjdGlvbilbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RMb2FkTW9yZUNvbmZpZyB7XG4gIGVuYWJsZWQ/OiBib29sZWFuLFxuICBsYWJlbD86IHN0cmluZztcbiAgYnV0dG9uQ29sb3I/OiAncHJpbWFyeScgfCAnYWNjZW50JyB8ICd3YXJuJztcbiAgYnV0dG9uVHlwZT86ICdmbGF0JyB8ICdyYWlzZWQnIHwgJ3N0cm9rZWQnIHwgJ2Jhc2ljJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSZW9yZGVyQ29uZmlnIHtcbiAgc3RhcnQ/OiAoKSA9PiB2b2lkO1xuICBtb3ZlZD86IEZzTGlzdFJlb3JkZXJNb3ZlZENhbGxiYWNrO1xuICBkb25lPzogRnNMaXN0UmVvcmRlckRvbmVDYWxsYmFjaztcbiAgbW92ZURyb3A/OiBGc0xpc3RSZW9yZGVyTW92ZUluR3JvdXBDYWxsYmFjaztcbiAgcG9zaXRpb24/OiBSZW9yZGVyUG9zaXRpb247XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgdG9nZ2xlPzogYm9vbGVhbjtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIG1lbnU/OiBib29sZWFuO1xuICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIHN0YXR1cz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJlb3JkZXJNb3ZlZENhbGxiYWNrXG4gID0gKHJvd3M6IEZzTGlzdFJlb3JkZXJEYXRhW10pID0+IHZvaWQ7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJlb3JkZXJEb25lQ2FsbGJhY2tcbiAgPSAocm93czogRnNMaXN0UmVvcmRlckRhdGFbXSkgPT4gdm9pZCB8IE9ic2VydmFibGU8YW55PjtcblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSZW9yZGVyRGF0YSB7XG4gIHR5cGU6IFJvd1R5cGU7XG4gIGRhdGE6IGFueTtcbiAgcGFyZW50OiBGc0xpc3RSZW9yZGVyRGF0YTtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0UmVvcmRlck1vdmVJbkdyb3VwQ2FsbGJhY2sgPVxuICAoZGF0YTogeyByb3cxOiBhbnk7IHJvdzI6IGFueTsgZ3JvdXAxOiBhbnk7IGdyb3VwMjogYW55IH0pID0+IGJvb2xlYW47XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0SGVhZGVyQ29uZmlnIHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBhbGlnbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RDZWxsQ29uZmlnIHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBhbGlnbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RGb290ZXJDb25maWcge1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGFsaWduPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFNvcnRzQ29uZmlnIHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xuICBkaXJlY3Rpb24/OiAnYXNjJyB8ICdkZXNjJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RTb3J0Q29uZmlnIHtcbiAgdmFsdWU6IHN0cmluZztcbiAgZGlyZWN0aW9uPzogJ2FzYycgfCAnZGVzYyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0UmVzdG9yZUNvbmZpZyB7XG4gIHF1ZXJ5PzogYW55O1xuICBmaWx0ZXI/OiBib29sZWFuIHwgc3RyaW5nO1xuICBmaWx0ZXJMYWJlbD86IHN0cmluZztcbiAgbWVudUxhYmVsPzogc3RyaW5nO1xuICBjbGljaz86IChyb3c6IEZzTGlzdEFic3RyYWN0Um93LCBldmVudD86IGFueSkgPT4gdm9pZCB8IE9ic2VydmFibGU8YW55PjtcbiAgcmVsb2FkPzogYm9vbGVhbjtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdE5vUmVzdWx0c0NvbmZpZyB7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0U2VsZWN0aW9uQ29uZmlnIHtcbiAgYWN0aW9ucz86IEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW107XG4gIGFjdGlvblNlbGVjdGVkPzogKGFjdGlvbjogRnNMaXN0QWN0aW9uU2VsZWN0ZWQpID0+IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGFsbFNlbGVjdGVkPzogKCkgPT4gdm9pZDtcbiAgY2FuY2VsbGVkPzogKCkgPT4gdm9pZDtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBzZWxlY3RBbGw/OiBib29sZWFuO1xuICBzZWxlY3Rpb25DaGFuZ2VkPzogKGRhdGE6IGFueSwgc2VsZWN0ZWRBbGw6IGJvb2xlYW4sIHNlbGVjdGlvblJlZjogU2VsZWN0aW9uUmVmKSA9PlxuICAgIEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW10gfCBPYnNlcnZhYmxlPEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW10gfCB2b2lkPiB8IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0RmV0Y2hTdWJzY3JpcHRpb24ge1xuICBsb2FkT2Zmc2V0PzogYm9vbGVhbjtcbiAgc2Nyb2xsSW50b1ZpZXc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RBY3Rpb24gPSB7IGN1c3RvbWl6ZT86IGJvb2xlYW4gfSAmIEZzRmlsdGVyQWN0aW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbkdyb3VwIHtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIHJvd0FjdGlvbnM6IEZzTGlzdFJvd0FjdGlvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbiB7XG4gIGxhYmVsPzogc3RyaW5nIHwgRnNMaXN0Um93QWN0aW9uTGFiZWxGbjtcbiAgdHlwZT86IEFjdGlvblR5cGU7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZyB8ICgocm93OiBhbnkpID0+IHN0cmluZyk7XG4gIG1lbnU/OiBib29sZWFuO1xuICBjbGljaz86IChyb3csIGV2ZW50LCBpbmRleCkgPT4gdm9pZDtcbiAgbGluaz86IEZzTGlzdFJvd0FjdGlvbkxpbmtGbjtcbiAgZmlsZT86IEZzTGlzdFJvd0FjdGlvbkZpbGU7XG4gIHNob3c/OiAocm93LCBpbmRleDogbnVtYmVyKSA9PiBib29sZWFuO1xuICByZW1vdmU/OiB7IHRpdGxlPzogc3RyaW5nOyB0ZW1wbGF0ZT86IHN0cmluZyB9IHwgYm9vbGVhbjtcbiAgcmVzdG9yZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJvd0FjdGlvbkZpbGVGbiA9IChzZWxlY3Rpb246IEZzRmlsZSB8IEZzRmlsZVtdLCByb3c6IEZzTGlzdEFic3RyYWN0Um93LCBpbmRleDogbnVtYmVyKSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RSb3dBY3Rpb25MaW5rRm4gPSAocm93OiBGc0xpc3RBYnN0cmFjdFJvdykgPT4gRnNMaXN0Um93QWN0aW9uTGluaztcblxuZXhwb3J0IHR5cGUgRnNMaXN0Um93QWN0aW9uTGFiZWxGbiA9IChyb3c6IEZzTGlzdEFic3RyYWN0Um93KSA9PiBzdHJpbmc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Um93QWN0aW9uRmlsZSB7XG4gIHNlbGVjdDogRnNMaXN0Um93QWN0aW9uRmlsZUZuO1xuICBlcnJvcj86IChlcnJvcjogdW5rbm93bikgPT4gdm9pZDtcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xuICBhY2NlcHQ/OiBzdHJpbmc7XG4gIG1pbldpZHRoPzogbnVtYmVyO1xuICBtaW5IZWlnaHQ/OiBudW1iZXI7XG4gIG1heFdpZHRoPzogbnVtYmVyO1xuICBtYXhIZWlnaHQ/OiBudW1iZXI7XG4gIGltYWdlUXVhbGl0eT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSb3dBY3Rpb25MaW5rIHtcbiAgbGluazogYW55W10gfCBzdHJpbmc7XG4gIHF1ZXJ5UGFyYW1zPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgdGFyZ2V0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEFic3RyYWN0Um93IHtcbiAgW25hbWU6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0VHJhY2tCeUZuID0gKHJvdzogRnNMaXN0QWJzdHJhY3RSb3csIGluZGV4PzogbnVtYmVyKSA9PiBib29sZWFuO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RUcmFja0J5VGFyZ2V0Um93Rm4gPSAobGlzdFJvdzogRnNMaXN0QWJzdHJhY3RSb3csIHRhcmdldFJvdz86IEZzTGlzdEFic3RyYWN0Um93KSA9PiBib29sZWFuO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5Mb2FkRm4gPSAoKSA9PiBPYnNlcnZhYmxlPEZzTGlzdENvbHVtbltdPjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uQ2hhbmdlRm4gPSAobGlzdENvbHVtbnM6IEZzTGlzdENvbHVtbltdKSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5UaXRsZUZuID0gKG5hbWU6IHN0cmluZywgZGVmYXVsdFRpdGxlOiBzdHJpbmcpID0+IHN0cmluZztcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uVG9vbHRpcEZuID0gKG5hbWU6IHN0cmluZywgc2hvdzogYm9vbGVhbiwgZGlzYWJsZWQ6IGJvb2xlYW4pID0+IHN0cmluZztcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uRGlzYWJsZWRGbiA9IChuYW1lOiBzdHJpbmcpID0+IGJvb2xlYW47XG5cbmV4cG9ydCB0eXBlIEZzTGlzdENvbHVtblNlbGVjdGVkRm4gPSAobmFtZTogc3RyaW5nLCBzaG93OiBib29sZWFuKSA9PiBib29sZWFuO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdENvbHVtbkNvbmZpZyB7XG4gIGxvYWQ/OiBGc0xpc3RDb2x1bW5Mb2FkRm47XG4gIGNoYW5nZT86IEZzTGlzdENvbHVtbkNoYW5nZUZuO1xuICB0aXRsZT86IEZzTGlzdENvbHVtblRpdGxlRm47XG4gIHRvb2x0aXA/OiBGc0xpc3RDb2x1bW5Ub29sdGlwRm47XG4gIGRpc2FibGVkPzogRnNMaXN0Q29sdW1uRGlzYWJsZWRGbjtcbiAgc2VsZWN0ZWQ/OiBGc0xpc3RDb2x1bW5TZWxlY3RlZEZuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdENvbHVtbiB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2hvdzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RBY3Rpb25TZWxlY3RlZCBleHRlbmRzIEZzU2VsZWN0aW9uQWN0aW9uU2VsZWN0ZWQge1xuICBzZWxlY3RlZDogYW55W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0RW1wdHlTdGF0ZUNvbmZpZyB7XG4gIHZhbGlkYXRlOiBGc0xpc3RTdGF0ZVZhbGlkYXRpb25Gbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RGZXRjaE9wdGlvbnMge1xuICBzdGF0ZTogRnNMaXN0U3RhdGU7XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFBlcnNpdGFuY2UgPSBGc0ZpbHRlclBlcnNpc3RhbmNlO1xuZXhwb3J0IHR5cGUgRnNMaXN0U3RhdGVWYWxpZGF0aW9uRm4gPSAoZmlsdGVyczogYW55LCByb3dzOiBGc0xpc3RBYnN0cmFjdFJvd1tdKSA9PiBib29sZWFuO1xuZXhwb3J0IHR5cGUgRnNMaXN0RmV0Y2hGbiA9XG4gIChxdWVyeTogUmVjb3JkPHN0cmluZywgYW55Piwgb3B0aW9uczogRnNMaXN0RmV0Y2hPcHRpb25zKSA9PlxuICAgIE9ic2VydmFibGU8eyBkYXRhOiB1bmtub3duW107IHBhZ2luZz86IEZzUGFnaW5nIH0+O1xuXG5leHBvcnQgdHlwZSBGc0xpc3RBZnRlckZldGNoRm4gPVxuICAocXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4sIGRhdGE6IHVua25vd25bXSkgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgRnNMaXN0QmVmb3JlRmV0Y2hGbiA9XG4gIChxdWVyeSkgPT4gT2JzZXJ2YWJsZTxSZWNvcmQ8c3RyaW5nLCBhbnk+PjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0QWZ0ZXJDb250ZW50SW5pdEZuID1cbiAgKHF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBkYXRhOiB1bmtub3duW10pID0+IHZvaWQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Um93Q2xhc3NPcHRpb25zIHtcbiAgaW5kZXg6IG51bWJlcjtcbiAgZ3JvdXBJbmRleD86IG51bWJlcjtcbiAgdHlwZT86IFJvd1R5cGU7XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdEFmdGVySW5pdEZuID0gKGxpc3RDb21wb25lbnQ6IGFueSkgPT4gdm9pZDtcbiJdfQ==
@@ -25,6 +25,9 @@ export class RowAction {
25
25
  get isGroup() {
26
26
  return this._isGroup;
27
27
  }
28
+ getRowIcon(row) {
29
+ return typeof this.icon === 'function' ? this.icon(row) : this.icon;
30
+ }
28
31
  _init(value) {
29
32
  this.icon = value.icon;
30
33
  this.menu = value.menu ?? true;
@@ -99,4 +102,4 @@ export class RowAction {
99
102
  }
100
103
  }
101
104
  }
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWFjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL3Jvdy1hY3Rpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUXZELE1BQU0sT0FBTyxTQUFTO0lBRWIsSUFBSSxDQUFTO0lBQ2IsSUFBSSxDQUFVO0lBQ2QsTUFBTSxDQUFzQztJQUM1QyxTQUFTLENBQVM7SUFDbEIsSUFBSSxDQUFhO0lBQ2pCLElBQUksQ0FBVztJQUNmLE9BQU8sQ0FBVTtJQUNqQixVQUFVLENBQWM7SUFDeEIsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUNYLFVBQVUsQ0FBc0I7SUFDaEMsVUFBVSxHQUFhLEVBQUUsQ0FBQztJQUMxQixPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ2YsS0FBSyxDQUFXO0lBRWhCLFVBQVUsQ0FBc0I7SUFFL0IsT0FBTyxDQUF3QjtJQUN0QixRQUFRLEdBQVksS0FBSyxDQUFDO0lBRTNDLFlBQVksU0FBYyxFQUFFO1FBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbkIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQVU7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFDcEgsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVO1lBQ2hDLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRzNDLDJCQUEyQjtRQUMzQixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxhQUFhLEdBQUcsSUFBSSxFQUFFLEVBQUU7WUFDdkQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNyRSxDQUFDLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFFMUIsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFcEMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUMzQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztnQkFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO29CQUNqRCxRQUFRLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbEMsQ0FBQyxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQy9ELEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBRWYsT0FBTyxHQUFHLENBQUM7WUFDYixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDVCxDQUFDO0lBQ0gsQ0FBQztJQUVNLGVBQWUsQ0FBQyxHQUFHLEVBQUUsS0FBSztRQUMvQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNqQyxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNyQyxDQUFDLENBQUMsQ0FBQztZQUVILE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUV6RCxJQUFJLENBQUMsT0FBTyxHQUFHLFlBQVksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xGLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRU0sVUFBVSxDQUFDLEdBQUc7UUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ2pDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRXBDLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxXQUFXLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLE9BQU87UUFDM0Qsb0NBQW9DO1FBQ3BDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixhQUFhO1FBQ2IsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixhQUFhLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDNUIsQ0FBQztRQUVELElBQUksT0FBTyxFQUFFLENBQUM7WUFDWix1QkFBdUI7WUFDdkIsT0FBTyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwQyxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uVHlwZSB9IGZyb20gJy4uL2VudW1zL2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHtcbiAgRnNMaXN0Um93QWN0aW9uRmlsZSxcbiAgRnNMaXN0Um93QWN0aW9uTGluayxcbiAgRnNMaXN0Um93QWN0aW9uTGlua0ZuLFxufSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuXG5leHBvcnQgY2xhc3MgUm93QWN0aW9uIHtcblxuICBwdWJsaWMgaWNvbjogc3RyaW5nO1xuICBwdWJsaWMgbWVudTogYm9vbGVhbjtcbiAgcHVibGljIHJlbW92ZTogeyB0aXRsZTogc3RyaW5nOyB0ZW1wbGF0ZTogc3RyaW5nIH07XG4gIHB1YmxpYyBjbGFzc05hbWU6IHN0cmluZztcbiAgcHVibGljIHR5cGU6IEFjdGlvblR5cGU7XG4gIHB1YmxpYyBzaG93OiBGdW5jdGlvbjtcbiAgcHVibGljIHJlc3RvcmU6IGJvb2xlYW47XG4gIHB1YmxpYyByb3dBY3Rpb25zOiBSb3dBY3Rpb25bXTtcbiAgcHVibGljIGxhYmVsID0gJyc7XG4gIHB1YmxpYyByb3V0ZXJMaW5rOiBGc0xpc3RSb3dBY3Rpb25MaW5rO1xuICBwdWJsaWMgY2xhc3NBcnJheTogc3RyaW5nW10gPSBbXTtcbiAgcHVibGljIGlzU2hvd24gPSB0cnVlO1xuICBwdWJsaWMgY2xpY2s6IEZ1bmN0aW9uO1xuXG4gIHB1YmxpYyBmaWxlQ29uZmlnOiBGc0xpc3RSb3dBY3Rpb25GaWxlO1xuXG4gIHByaXZhdGUgX2xpbmtGbjogRnNMaXN0Um93QWN0aW9uTGlua0ZuO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0dyb3VwOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBhbnkgPSB7fSkge1xuICAgIHRoaXMuX2luaXQoY29uZmlnKTtcblxuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMucm93QWN0aW9ucykpIHtcbiAgICAgIHRoaXMuX2lzR3JvdXAgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNHcm91cCgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNHcm91cDtcbiAgfVxuXG4gIHB1YmxpYyBfaW5pdCh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5pY29uID0gdmFsdWUuaWNvbjtcbiAgICB0aGlzLm1lbnUgPSB2YWx1ZS5tZW51ID8/IHRydWU7XG4gICAgdGhpcy5yZW1vdmUgPSB2YWx1ZS5yZW1vdmU7XG4gICAgdGhpcy5jbGFzc05hbWUgPSB2YWx1ZS5jbGFzc05hbWU7XG4gICAgdGhpcy50eXBlID0gdGhpcy5tZW51ICYmIHRoaXMuaWNvbiAmJiAhdGhpcy5sYWJlbCAmJiAhdmFsdWUudHlwZSA/IEFjdGlvblR5cGUuSWNvbiA6IHZhbHVlLnR5cGUgPz8gQWN0aW9uVHlwZS5CYXNpYztcbiAgICB0aGlzLnNob3cgPSB2YWx1ZS5zaG93O1xuICAgIHRoaXMucmVzdG9yZSA9IHZhbHVlLnJlc3RvcmU7XG4gICAgdGhpcy5yb3dBY3Rpb25zID0gdmFsdWUucm93QWN0aW9uc1xuICAgICAgPy5tYXAoKGFjdGlvbikgPT4gbmV3IFJvd0FjdGlvbihhY3Rpb24pKTtcblxuXG4gICAgLy8gUmUtYXNzaWduIGNsaWNrIGZ1bmN0aW9uXG4gICAgY29uc3QgY2xpY2tGbiA9IHZhbHVlLmNsaWNrO1xuICAgIHRoaXMuY2xpY2sgPSAocm93LCBldmVudCwgaW5kZXgsIHJvd0FjdGlvbnNSZWYgPSBudWxsKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5fY2xpY2tFdmVudChyb3csIGV2ZW50LCBpbmRleCwgcm93QWN0aW9uc1JlZiwgY2xpY2tGbik7XG4gICAgfTtcblxuICAgIHRoaXMuX2xpbmtGbiA9IHZhbHVlLmxpbms7XG5cbiAgICBpZiAodmFsdWUuZmlsZSkge1xuICAgICAgdGhpcy5maWxlQ29uZmlnID0geyAuLi52YWx1ZS5maWxlIH07XG5cbiAgICAgIGlmICh0aGlzLmZpbGVDb25maWcuc2VsZWN0KSB7XG4gICAgICAgIGNvbnN0IHNlbGVjdEZuID0gdGhpcy5maWxlQ29uZmlnLnNlbGVjdDtcbiAgICAgICAgdGhpcy5maWxlQ29uZmlnLnNlbGVjdCA9IChzZWxlY3Rpb24sIHJvdywgaW5kZXgpID0+IHtcbiAgICAgICAgICBzZWxlY3RGbihzZWxlY3Rpb24sIHJvdywgaW5kZXgpO1xuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMubGFiZWwgPSB2YWx1ZS5sYWJlbDtcblxuICAgIGlmICh0aGlzLmNsYXNzTmFtZSkge1xuICAgICAgdGhpcy5jbGFzc0FycmF5ID0gdGhpcy5jbGFzc05hbWUuc3BsaXQoJyAnKS5yZWR1Y2UoKGFjYywgZWxlbSkgPT4ge1xuICAgICAgICBhY2MucHVzaChlbGVtKTtcblxuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSwgW10pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjaGVja1Nob3dTdGF0dXMocm93LCBpbmRleCkge1xuICAgIGlmICh0aGlzLmlzR3JvdXApIHtcbiAgICAgIHRoaXMucm93QWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IHtcbiAgICAgICAgYWN0aW9uLmNoZWNrU2hvd1N0YXR1cyhyb3csIGluZGV4KTtcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBncm91cFZpc2libGUgPSAhdGhpcy5zaG93IHx8IHRoaXMuc2hvdyhyb3csIGluZGV4KTtcblxuICAgICAgdGhpcy5pc1Nob3duID0gZ3JvdXBWaXNpYmxlICYmIHRoaXMucm93QWN0aW9ucy5zb21lKChhY3Rpb24pID0+IGFjdGlvbi5pc1Nob3duKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2hvdykge1xuICAgICAgdGhpcy5pc1Nob3duID0gdGhpcy5zaG93KHJvdywgaW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVMaW5rKHJvdykge1xuICAgIGlmICghdGhpcy5pc1Nob3duKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXNHcm91cCkge1xuICAgICAgdGhpcy5yb3dBY3Rpb25zLmZvckVhY2goKGFjdGlvbikgPT4ge1xuICAgICAgICBhY3Rpb24udXBkYXRlTGluayhyb3cpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLl9saW5rRm4pIHtcbiAgICAgIHRoaXMucm91dGVyTGluayA9IHRoaXMuX2xpbmtGbihyb3cpO1xuXG4gICAgICBpZiAodGhpcy5yb3V0ZXJMaW5rICYmICF0aGlzLnJvdXRlckxpbmsudGFyZ2V0KSB7XG4gICAgICAgIHRoaXMucm91dGVyTGluay50YXJnZXQgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NsaWNrRXZlbnQocm93LCBldmVudCwgaW5kZXgsIHJvd0FjdGlvbnNSZWYsIGNsaWNrRm4pIHtcbiAgICAvLyBTdG9wIGV2ZW50IHByb3BhZ2F0aW9uIGZvciBwYXJlbnRcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIC8vIENsb3NlIG1lbnVcbiAgICBpZiAocm93QWN0aW9uc1JlZikge1xuICAgICAgcm93QWN0aW9uc1JlZi5jbG9zZU1lbnUoKTtcbiAgICB9XG5cbiAgICBpZiAoY2xpY2tGbikge1xuICAgICAgLy8gRmlyZSBwYXNzZWQgY2FsbGJhY2tcbiAgICAgIHJldHVybiBjbGlja0ZuKHJvdywgZXZlbnQsIGluZGV4KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWFjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL3Jvdy1hY3Rpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUXZELE1BQU0sT0FBTyxTQUFTO0lBRWIsSUFBSSxDQUFrQztJQUN0QyxJQUFJLENBQVU7SUFDZCxNQUFNLENBQXNDO0lBQzVDLFNBQVMsQ0FBUztJQUNsQixJQUFJLENBQWE7SUFDakIsSUFBSSxDQUFXO0lBQ2YsT0FBTyxDQUFVO0lBQ2pCLFVBQVUsQ0FBYztJQUN4QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ1gsVUFBVSxDQUFzQjtJQUNoQyxVQUFVLEdBQWEsRUFBRSxDQUFDO0lBQzFCLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFDZixLQUFLLENBQVc7SUFFaEIsVUFBVSxDQUFzQjtJQUUvQixPQUFPLENBQXdCO0lBQ3RCLFFBQVEsR0FBWSxLQUFLLENBQUM7SUFFM0MsWUFBWSxTQUFjLEVBQUU7UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVuQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxVQUFVLENBQUMsR0FBUTtRQUN4QixPQUFPLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDdEUsQ0FBQztJQUVNLEtBQUss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UUFFeEIsYUFBYTtRQUNiLElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsYUFBYSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzVCLENBQUM7UUFFRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osdUJBQXVCO1lBQ3ZCLE9BQU8sT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuLi9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7XG4gIEZzTGlzdFJvd0FjdGlvbkZpbGUsXG4gIEZzTGlzdFJvd0FjdGlvbkxpbmssXG4gIEZzTGlzdFJvd0FjdGlvbkxpbmtGbixcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cblxuZXhwb3J0IGNsYXNzIFJvd0FjdGlvbiB7XG5cbiAgcHVibGljIGljb246IHN0cmluZyB8ICgocm93OiBhbnkpID0+IHN0cmluZyk7XG4gIHB1YmxpYyBtZW51OiBib29sZWFuO1xuICBwdWJsaWMgcmVtb3ZlOiB7IHRpdGxlOiBzdHJpbmc7IHRlbXBsYXRlOiBzdHJpbmcgfTtcbiAgcHVibGljIGNsYXNzTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgdHlwZTogQWN0aW9uVHlwZTtcbiAgcHVibGljIHNob3c6IEZ1bmN0aW9uO1xuICBwdWJsaWMgcmVzdG9yZTogYm9vbGVhbjtcbiAgcHVibGljIHJvd0FjdGlvbnM6IFJvd0FjdGlvbltdO1xuICBwdWJsaWMgbGFiZWwgPSAnJztcbiAgcHVibGljIHJvdXRlckxpbms6IEZzTGlzdFJvd0FjdGlvbkxpbms7XG4gIHB1YmxpYyBjbGFzc0FycmF5OiBzdHJpbmdbXSA9IFtdO1xuICBwdWJsaWMgaXNTaG93biA9IHRydWU7XG4gIHB1YmxpYyBjbGljazogRnVuY3Rpb247XG5cbiAgcHVibGljIGZpbGVDb25maWc6IEZzTGlzdFJvd0FjdGlvbkZpbGU7XG5cbiAgcHJpdmF0ZSBfbGlua0ZuOiBGc0xpc3RSb3dBY3Rpb25MaW5rRm47XG4gIHByaXZhdGUgcmVhZG9ubHkgX2lzR3JvdXA6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihjb25maWc6IGFueSA9IHt9KSB7XG4gICAgdGhpcy5faW5pdChjb25maWcpO1xuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5yb3dBY3Rpb25zKSkge1xuICAgICAgdGhpcy5faXNHcm91cCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBpc0dyb3VwKCkge1xuICAgIHJldHVybiB0aGlzLl9pc0dyb3VwO1xuICB9XG5cbiAgcHVibGljIGdldFJvd0ljb24ocm93OiBhbnkpIHtcbiAgICByZXR1cm4gdHlwZW9mIHRoaXMuaWNvbiA9PT0gJ2Z1bmN0aW9uJyA/IHRoaXMuaWNvbihyb3cpIDogdGhpcy5pY29uO1xuICB9XG5cbiAgcHVibGljIF9pbml0KHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmljb24gPSB2YWx1ZS5pY29uO1xuICAgIHRoaXMubWVudSA9IHZhbHVlLm1lbnUgPz8gdHJ1ZTtcbiAgICB0aGlzLnJlbW92ZSA9IHZhbHVlLnJlbW92ZTtcbiAgICB0aGlzLmNsYXNzTmFtZSA9IHZhbHVlLmNsYXNzTmFtZTtcbiAgICB0aGlzLnR5cGUgPSB0aGlzLm1lbnUgJiYgdGhpcy5pY29uICYmICF0aGlzLmxhYmVsICYmICF2YWx1ZS50eXBlID8gQWN0aW9uVHlwZS5JY29uIDogdmFsdWUudHlwZSA/PyBBY3Rpb25UeXBlLkJhc2ljO1xuICAgIHRoaXMuc2hvdyA9IHZhbHVlLnNob3c7XG4gICAgdGhpcy5yZXN0b3JlID0gdmFsdWUucmVzdG9yZTtcbiAgICB0aGlzLnJvd0FjdGlvbnMgPSB2YWx1ZS5yb3dBY3Rpb25zXG4gICAgICA/Lm1hcCgoYWN0aW9uKSA9PiBuZXcgUm93QWN0aW9uKGFjdGlvbikpO1xuXG5cbiAgICAvLyBSZS1hc3NpZ24gY2xpY2sgZnVuY3Rpb25cbiAgICBjb25zdCBjbGlja0ZuID0gdmFsdWUuY2xpY2s7XG4gICAgdGhpcy5jbGljayA9IChyb3csIGV2ZW50LCBpbmRleCwgcm93QWN0aW9uc1JlZiA9IG51bGwpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLl9jbGlja0V2ZW50KHJvdywgZXZlbnQsIGluZGV4LCByb3dBY3Rpb25zUmVmLCBjbGlja0ZuKTtcbiAgICB9O1xuXG4gICAgdGhpcy5fbGlua0ZuID0gdmFsdWUubGluaztcblxuICAgIGlmICh2YWx1ZS5maWxlKSB7XG4gICAgICB0aGlzLmZpbGVDb25maWcgPSB7IC4uLnZhbHVlLmZpbGUgfTtcblxuICAgICAgaWYgKHRoaXMuZmlsZUNvbmZpZy5zZWxlY3QpIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0Rm4gPSB0aGlzLmZpbGVDb25maWcuc2VsZWN0O1xuICAgICAgICB0aGlzLmZpbGVDb25maWcuc2VsZWN0ID0gKHNlbGVjdGlvbiwgcm93LCBpbmRleCkgPT4ge1xuICAgICAgICAgIHNlbGVjdEZuKHNlbGVjdGlvbiwgcm93LCBpbmRleCk7XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5sYWJlbCA9IHZhbHVlLmxhYmVsO1xuXG4gICAgaWYgKHRoaXMuY2xhc3NOYW1lKSB7XG4gICAgICB0aGlzLmNsYXNzQXJyYXkgPSB0aGlzLmNsYXNzTmFtZS5zcGxpdCgnICcpLnJlZHVjZSgoYWNjLCBlbGVtKSA9PiB7XG4gICAgICAgIGFjYy5wdXNoKGVsZW0pO1xuXG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCBbXSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNoZWNrU2hvd1N0YXR1cyhyb3csIGluZGV4KSB7XG4gICAgaWYgKHRoaXMuaXNHcm91cCkge1xuICAgICAgdGhpcy5yb3dBY3Rpb25zLmZvckVhY2goKGFjdGlvbikgPT4ge1xuICAgICAgICBhY3Rpb24uY2hlY2tTaG93U3RhdHVzKHJvdywgaW5kZXgpO1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGdyb3VwVmlzaWJsZSA9ICF0aGlzLnNob3cgfHwgdGhpcy5zaG93KHJvdywgaW5kZXgpO1xuXG4gICAgICB0aGlzLmlzU2hvd24gPSBncm91cFZpc2libGUgJiYgdGhpcy5yb3dBY3Rpb25zLnNvbWUoKGFjdGlvbikgPT4gYWN0aW9uLmlzU2hvd24pO1xuICAgIH0gZWxzZSBpZiAodGhpcy5zaG93KSB7XG4gICAgICB0aGlzLmlzU2hvd24gPSB0aGlzLnNob3cocm93LCBpbmRleCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZUxpbmsocm93KSB7XG4gICAgaWYgKCF0aGlzLmlzU2hvd24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0dyb3VwKSB7XG4gICAgICB0aGlzLnJvd0FjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICAgIGFjdGlvbi51cGRhdGVMaW5rKHJvdyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX2xpbmtGbikge1xuICAgICAgdGhpcy5yb3V0ZXJMaW5rID0gdGhpcy5fbGlua0ZuKHJvdyk7XG5cbiAgICAgIGlmICh0aGlzLnJvdXRlckxpbmsgJiYgIXRoaXMucm91dGVyTGluay50YXJnZXQpIHtcbiAgICAgICAgdGhpcy5yb3V0ZXJMaW5rLnRhcmdldCA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2xpY2tFdmVudChyb3csIGV2ZW50LCBpbmRleCwgcm93QWN0aW9uc1JlZiwgY2xpY2tGbikge1xuICAgIC8vIFN0b3AgZXZlbnQgcHJvcGFnYXRpb24gZm9yIHBhcmVudFxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgLy8gQ2xvc2UgbWVudVxuICAgIGlmIChyb3dBY3Rpb25zUmVmKSB7XG4gICAgICByb3dBY3Rpb25zUmVmLmNsb3NlTWVudSgpO1xuICAgIH1cblxuICAgIGlmIChjbGlja0ZuKSB7XG4gICAgICAvLyBGaXJlIHBhc3NlZCBjYWxsYmFja1xuICAgICAgcmV0dXJuIGNsaWNrRm4ocm93LCBldmVudCwgaW5kZXgpO1xuICAgIH1cbiAgfVxufVxuIl19