@bcgov/nr-ngx-component-lib 0.0.25 → 0.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,15 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export declare class EditDialogComponent {
4
+ title: string;
5
+ saveLabel: string;
6
+ saveEnabled: boolean;
7
+ cancelLabel: string;
8
+ isLoading: boolean;
9
+ showClose: boolean;
10
+ showWarning: boolean;
11
+ saveClick: EventEmitter<void>;
12
+ cancelClick: EventEmitter<void>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<EditDialogComponent, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<EditDialogComponent, "nrcl-edit-dialog", never, { "title": { "alias": "title"; "required": false; }; "saveLabel": { "alias": "saveLabel"; "required": false; }; "saveEnabled": { "alias": "saveEnabled"; "required": false; }; "cancelLabel": { "alias": "cancelLabel"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "showClose": { "alias": "showClose"; "required": false; }; "showWarning": { "alias": "showWarning"; "required": false; }; }, { "saveClick": "saveClick"; "cancelClick": "cancelClick"; }, never, ["section[title]", "*", "section[footer]"], false, never>;
15
+ }
@@ -1,12 +1,15 @@
1
+ import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
1
2
  import { NrclBase } from '../../directives/nrcl.base';
2
3
  import * as i0 from "@angular/core";
3
- export declare class GapComponent extends NrclBase {
4
- horizontal: boolean;
5
- vertical: boolean;
6
- divider: boolean;
4
+ export declare class GapComponent extends NrclBase implements OnChanges, OnInit {
5
+ horizontal: any;
6
+ vertical: any;
7
+ divider: any;
8
+ componentClass: any;
9
+ multiple: number;
10
+ ngOnInit(): void;
11
+ ngOnChanges(changes: SimpleChanges): void;
12
+ updateState(): void;
7
13
  static ɵfac: i0.ɵɵFactoryDeclaration<GapComponent, never>;
8
14
  static ɵcmp: i0.ɵɵComponentDeclaration<GapComponent, "nrcl-gap", never, { "horizontal": { "alias": "horizontal"; "required": false; }; "vertical": { "alias": "vertical"; "required": false; }; "divider": { "alias": "divider"; "required": false; }; }, {}, never, never, false, never>;
9
- static ngAcceptInputType_horizontal: unknown;
10
- static ngAcceptInputType_vertical: unknown;
11
- static ngAcceptInputType_divider: unknown;
12
15
  }
@@ -0,0 +1,7 @@
1
+ import { NrclBase } from '../../directives/nrcl.base';
2
+ import * as i0 from "@angular/core";
3
+ export declare class IndicatorSelectComponent extends NrclBase {
4
+ selected: boolean;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<IndicatorSelectComponent, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<IndicatorSelectComponent, "nrcl-indicator-select", never, { "selected": { "alias": "selected"; "required": false; }; }, {}, never, never, false, never>;
7
+ }
@@ -0,0 +1,25 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ import { Observable } from "rxjs";
3
+ import { LoadRowListResult, RowListBase, RowListState } from "../../directives/row-list.base";
4
+ import { CodeDescription } from "../../utils/code-table.util";
5
+ import * as i0 from "@angular/core";
6
+ export declare class ListSelectComponent extends RowListBase<{}, CodeDescription> {
7
+ options: CodeDescription[];
8
+ value: string[];
9
+ descriptionLabel: string;
10
+ single: any;
11
+ noRowsMessage: string;
12
+ valueChange: EventEmitter<string[]>;
13
+ searchText: any;
14
+ searchRegexp: RegExp;
15
+ get initialPageState(): RowListState<{}>;
16
+ fetchRowListPage(): Observable<CodeDescription[]>;
17
+ displayRowListPage(res: CodeDescription[]): LoadRowListResult<CodeDescription>;
18
+ isSelected(item: CodeDescription): boolean;
19
+ onRowClick(item: CodeDescription): void;
20
+ onClearFilters(): void;
21
+ onSearchTextChange(ev: any): void;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListSelectComponent, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListSelectComponent, "nrcl-list-select", never, { "options": { "alias": "options"; "required": false; }; "value": { "alias": "value"; "required": false; }; "descriptionLabel": { "alias": "descriptionLabel"; "required": false; }; "single": { "alias": "single"; "required": false; }; "noRowsMessage": { "alias": "noRowsMessage"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, false, never>;
24
+ static ngAcceptInputType_single: unknown;
25
+ }
@@ -0,0 +1,25 @@
1
+ import { ChangeDetectorRef } from "@angular/core";
2
+ import { MatDialogRef } from "@angular/material/dialog";
3
+ import * as i0 from "@angular/core";
4
+ export type EditDialogBaseResult<R> = R | 'cancel';
5
+ export declare class EditDialogBase<CONFIG, RESULT = any> {
6
+ dialogRef: MatDialogRef<any, any>;
7
+ changeDetectorRef: ChangeDetectorRef;
8
+ title: string;
9
+ saveLabel: string;
10
+ private _saveEnabled;
11
+ get saveEnabled(): boolean;
12
+ set saveEnabled(v: boolean);
13
+ cancelLabel: string;
14
+ private _isLoading;
15
+ get isLoading(): boolean;
16
+ set isLoading(v: boolean);
17
+ result: RESULT;
18
+ data: CONFIG;
19
+ onSaveClick(): void;
20
+ onCancelClick(): void;
21
+ ok(): void;
22
+ cancel(): void;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<EditDialogBase<any, any>, never>;
24
+ static ɵdir: i0.ɵɵDirectiveDeclaration<EditDialogBase<any, any>, never, never, {}, {}, never, never, false, never>;
25
+ }
@@ -0,0 +1,43 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/material/progress-spinner";
4
+ import * as i2 from "@angular/material/dialog";
5
+ import * as i3 from "../button/button.component";
6
+ import * as i4 from "../icon/icon.component";
7
+ export class EditDialogComponent {
8
+ constructor() {
9
+ this.saveLabel = 'Save';
10
+ this.saveEnabled = false;
11
+ this.cancelLabel = 'Cancel';
12
+ this.isLoading = false;
13
+ this.showClose = false;
14
+ this.showWarning = true;
15
+ this.saveClick = new EventEmitter();
16
+ this.cancelClick = new EventEmitter();
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: EditDialogComponent, selector: "nrcl-edit-dialog", inputs: { title: "title", saveLabel: "saveLabel", saveEnabled: "saveEnabled", cancelLabel: "cancelLabel", isLoading: "isLoading", showClose: "showClose", showWarning: "showWarning" }, outputs: { saveClick: "saveClick", cancelClick: "cancelClick" }, ngImport: i0, template: "<div mat-dialog-title >\n <div class=\"title-bar\">\n <h1>{{ title }}</h1>\n\n <div style=\"flex: 1 0\"></div>\n\n @if ( isLoading ) {\n <div class=\"spinner-header\">\n <mat-spinner [diameter]=\"25\"></mat-spinner>\n </div>\n }\n\n @if ( showClose ) {\n <nrcl-button tertiary\n icon=\"close\"\n (click)=\"cancelClick.emit()\"\n ></nrcl-button> \n }\n </div>\n\n <ng-content select=\"section[title]\"></ng-content>\n</div>\n\n<div mat-dialog-content>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n\n<ng-content select=\"section[footer]\"></ng-content>\n\n@if ( !showClose ) {\n <div mat-dialog-actions align=\"end\">\n <!-- <ng-content select=\".footer\"></ng-content> -->\n\n <div class=\"action-button-wrapper\"> \n @if ( saveEnabled && showWarning ) {\n <div class=\"warning\">\n <nrcl-icon attr.alt=\"Unsaved Changes\">warning</nrcl-icon>\n <span>Unsaved Changes</span>\n </div>\n } \n \n <nrcl-button \n [label]=\"cancelLabel\"\n (click)=\"cancelClick.emit()\"\n ></nrcl-button>\n\n <nrcl-button primary\n [label]=\"saveLabel\"\n (click)=\"saveClick.emit()\" \n [disabled]=\"!saveEnabled\"\n ></nrcl-button>\n </div>\n </div>\n}\n", styles: [":host{display:contents}:host .title-bar{display:flex;align-items:center;background-color:#036;color:#fff;padding:var(--nrcl-gutter-space)}:host .title-bar h1{margin:0;padding:0;font-weight:400;font-family:var(--nrcl-font-family);font-size:var(--mdc-dialog-subhead-size, 1rem);display:flex;align-items:center}:host .title-bar .spinner-header{--mdc-circular-progress-active-indicator-color: white}:host ::ng-deep .mat-mdc-dialog-title{padding:0}:host ::ng-deep .mat-mdc-dialog-title:before{display:none}:host ::ng-deep .mat-mdc-dialog-content{margin:0;padding:0}:host ::ng-deep .mat-mdc-dialog-content .content-wrapper{padding-top:var(--nrcl-gutter-space);padding-left:var(--nrcl-gutter-space);padding-right:var(--nrcl-gutter-space);padding-bottom:0}:host ::ng-deep .mat-mdc-dialog-actions{margin:0;padding:0}:host ::ng-deep .mat-mdc-dialog-actions .footer{width:100%}:host ::ng-deep .mat-mdc-dialog-actions .action-button-wrapper{background-color:#f2f2f2;border-top:solid 1px #c6c8cb;padding:var(--nrcl-gutter-space);display:flex;align-items:center;justify-content:flex-end;gap:8px;width:100%}:host ::ng-deep .mat-mdc-dialog-actions .action-button-wrapper .warning{display:flex;align-items:center}:host ::ng-deep .mat-mdc-dialog-actions .action-button-wrapper .warning .mat-icon{color:#fcba19;margin-right:8px}::ng-deep .cdk-overlay-pane.nrcl-dialog mat-dialog-container.mat-mdc-dialog-container{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);--mdc-dialog-supporting-text-color: rgba(0, 0, 0, .87)}::ng-deep .cdk-overlay-pane.nrcl-dialog mat-dialog-container.mat-mdc-dialog-container .mat-mdc-dialog-content{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size)}::ng-deep .nrcl-device-desktop .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-surface{overflow:hidden}::ng-deep .nrcl-device-desktop .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-content.no-scroll{overflow-y:hidden}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog{width:unset!important;max-width:unset!important}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-surface{overflow:hidden}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .title-bar .spinner-header{top:10px;right:14px}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-content{overflow-y:auto!important;max-height:calc(var(--vh, 1vh) * 100 - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 135px);width:calc(var(--vw, 1vw) * 100 - env(safe-area-inset-left) - env(safe-area-inset-right) - 2 * var(--nrcl-gutter-space))}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-actions{width:calc(var(--vw, 1vw) * 100 - env(safe-area-inset-left) - env(safe-area-inset-right) - 2 * var(--nrcl-gutter-space))}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .max-content-width{width:calc(var(--vw, 1vw) * 100 - env(safe-area-inset-left) - env(safe-area-inset-right) - 2 * var(--nrcl-gutter-space))}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i3.ButtonComponent, selector: "nrcl-button", inputs: ["label", "icon", "iconRight", "iconCompact", "tooltip", "compact", "primary", "secondary", "tertiary", "disabled", "small"], outputs: ["click"] }, { kind: "component", type: i4.IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditDialogComponent, decorators: [{
22
+ type: Component,
23
+ args: [{ selector: 'nrcl-edit-dialog', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div mat-dialog-title >\n <div class=\"title-bar\">\n <h1>{{ title }}</h1>\n\n <div style=\"flex: 1 0\"></div>\n\n @if ( isLoading ) {\n <div class=\"spinner-header\">\n <mat-spinner [diameter]=\"25\"></mat-spinner>\n </div>\n }\n\n @if ( showClose ) {\n <nrcl-button tertiary\n icon=\"close\"\n (click)=\"cancelClick.emit()\"\n ></nrcl-button> \n }\n </div>\n\n <ng-content select=\"section[title]\"></ng-content>\n</div>\n\n<div mat-dialog-content>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n\n<ng-content select=\"section[footer]\"></ng-content>\n\n@if ( !showClose ) {\n <div mat-dialog-actions align=\"end\">\n <!-- <ng-content select=\".footer\"></ng-content> -->\n\n <div class=\"action-button-wrapper\"> \n @if ( saveEnabled && showWarning ) {\n <div class=\"warning\">\n <nrcl-icon attr.alt=\"Unsaved Changes\">warning</nrcl-icon>\n <span>Unsaved Changes</span>\n </div>\n } \n \n <nrcl-button \n [label]=\"cancelLabel\"\n (click)=\"cancelClick.emit()\"\n ></nrcl-button>\n\n <nrcl-button primary\n [label]=\"saveLabel\"\n (click)=\"saveClick.emit()\" \n [disabled]=\"!saveEnabled\"\n ></nrcl-button>\n </div>\n </div>\n}\n", styles: [":host{display:contents}:host .title-bar{display:flex;align-items:center;background-color:#036;color:#fff;padding:var(--nrcl-gutter-space)}:host .title-bar h1{margin:0;padding:0;font-weight:400;font-family:var(--nrcl-font-family);font-size:var(--mdc-dialog-subhead-size, 1rem);display:flex;align-items:center}:host .title-bar .spinner-header{--mdc-circular-progress-active-indicator-color: white}:host ::ng-deep .mat-mdc-dialog-title{padding:0}:host ::ng-deep .mat-mdc-dialog-title:before{display:none}:host ::ng-deep .mat-mdc-dialog-content{margin:0;padding:0}:host ::ng-deep .mat-mdc-dialog-content .content-wrapper{padding-top:var(--nrcl-gutter-space);padding-left:var(--nrcl-gutter-space);padding-right:var(--nrcl-gutter-space);padding-bottom:0}:host ::ng-deep .mat-mdc-dialog-actions{margin:0;padding:0}:host ::ng-deep .mat-mdc-dialog-actions .footer{width:100%}:host ::ng-deep .mat-mdc-dialog-actions .action-button-wrapper{background-color:#f2f2f2;border-top:solid 1px #c6c8cb;padding:var(--nrcl-gutter-space);display:flex;align-items:center;justify-content:flex-end;gap:8px;width:100%}:host ::ng-deep .mat-mdc-dialog-actions .action-button-wrapper .warning{display:flex;align-items:center}:host ::ng-deep .mat-mdc-dialog-actions .action-button-wrapper .warning .mat-icon{color:#fcba19;margin-right:8px}::ng-deep .cdk-overlay-pane.nrcl-dialog mat-dialog-container.mat-mdc-dialog-container{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);--mdc-dialog-supporting-text-color: rgba(0, 0, 0, .87)}::ng-deep .cdk-overlay-pane.nrcl-dialog mat-dialog-container.mat-mdc-dialog-container .mat-mdc-dialog-content{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size)}::ng-deep .nrcl-device-desktop .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-surface{overflow:hidden}::ng-deep .nrcl-device-desktop .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-content.no-scroll{overflow-y:hidden}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog{width:unset!important;max-width:unset!important}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-surface{overflow:hidden}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .title-bar .spinner-header{top:10px;right:14px}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-content{overflow-y:auto!important;max-height:calc(var(--vh, 1vh) * 100 - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 135px);width:calc(var(--vw, 1vw) * 100 - env(safe-area-inset-left) - env(safe-area-inset-right) - 2 * var(--nrcl-gutter-space))}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .mat-mdc-dialog-actions{width:calc(var(--vw, 1vw) * 100 - env(safe-area-inset-left) - env(safe-area-inset-right) - 2 * var(--nrcl-gutter-space))}::ng-deep .nrcl-device-mobile .cdk-overlay-pane.nrcl-dialog .mat-mdc-dialog-container .max-content-width{width:calc(var(--vw, 1vw) * 100 - env(safe-area-inset-left) - env(safe-area-inset-right) - 2 * var(--nrcl-gutter-space))}\n"] }]
24
+ }], propDecorators: { title: [{
25
+ type: Input
26
+ }], saveLabel: [{
27
+ type: Input
28
+ }], saveEnabled: [{
29
+ type: Input
30
+ }], cancelLabel: [{
31
+ type: Input
32
+ }], isLoading: [{
33
+ type: Input
34
+ }], showClose: [{
35
+ type: Input
36
+ }], showWarning: [{
37
+ type: Input
38
+ }], saveClick: [{
39
+ type: Output
40
+ }], cancelClick: [{
41
+ type: Output
42
+ }] } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZWRpdC1kaWFsb2cvZWRpdC1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZWRpdC1kaWFsb2cvZWRpdC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUWhHLE1BQU0sT0FBTyxtQkFBbUI7SUFOaEM7UUFRYSxjQUFTLEdBQUcsTUFBTSxDQUFBO1FBQ2xCLGdCQUFXLEdBQUcsS0FBSyxDQUFBO1FBQ25CLGdCQUFXLEdBQUcsUUFBUSxDQUFBO1FBQ3RCLGNBQVMsR0FBRyxLQUFLLENBQUE7UUFDakIsY0FBUyxHQUFHLEtBQUssQ0FBQTtRQUNqQixnQkFBVyxHQUFHLElBQUksQ0FBQTtRQUVqQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQTtRQUNwQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUE7S0FDbkQ7K0dBWFksbUJBQW1CO21HQUFuQixtQkFBbUIsaVRDUmhDLG9sREF3REE7OzRGRGhEYSxtQkFBbUI7a0JBTi9CLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25yY2wtZWRpdC1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lZGl0LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2VkaXQtZGlhbG9nLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdERpYWxvZ0NvbXBvbmVudCB7XG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBzYXZlTGFiZWwgPSAnU2F2ZSdcbiAgICBASW5wdXQoKSBzYXZlRW5hYmxlZCA9IGZhbHNlXG4gICAgQElucHV0KCkgY2FuY2VsTGFiZWwgPSAnQ2FuY2VsJ1xuICAgIEBJbnB1dCgpIGlzTG9hZGluZyA9IGZhbHNlXG4gICAgQElucHV0KCkgc2hvd0Nsb3NlID0gZmFsc2VcbiAgICBASW5wdXQoKSBzaG93V2FybmluZyA9IHRydWVcblxuICAgIEBPdXRwdXQoKSBzYXZlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbiAgICBAT3V0cHV0KCkgY2FuY2VsQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbn1cbiIsIjxkaXYgbWF0LWRpYWxvZy10aXRsZSA+XG4gICAgPGRpdiBjbGFzcz1cInRpdGxlLWJhclwiPlxuICAgICAgICA8aDE+e3sgdGl0bGUgfX08L2gxPlxuXG4gICAgICAgIDxkaXYgc3R5bGU9XCJmbGV4OiAxIDBcIj48L2Rpdj5cblxuICAgICAgICBAaWYgKCBpc0xvYWRpbmcgKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Bpbm5lci1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8bWF0LXNwaW5uZXIgW2RpYW1ldGVyXT1cIjI1XCI+PC9tYXQtc3Bpbm5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmICggc2hvd0Nsb3NlICkge1xuICAgICAgICAgICAgPG5yY2wtYnV0dG9uIHRlcnRpYXJ5XG4gICAgICAgICAgICAgICAgaWNvbj1cImNsb3NlXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsQ2xpY2suZW1pdCgpXCJcbiAgICAgICAgICAgID48L25yY2wtYnV0dG9uPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNlY3Rpb25bdGl0bGVdXCI+PC9uZy1jb250ZW50PlxuPC9kaXY+XG5cbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxkaXYgY2xhc3M9XCJjb250ZW50LXdyYXBwZXJcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy1jb250ZW50IHNlbGVjdD1cInNlY3Rpb25bZm9vdGVyXVwiPjwvbmctY29udGVudD5cblxuQGlmICggIXNob3dDbG9zZSApIHtcbiAgICA8ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucyBhbGlnbj1cImVuZFwiPlxuICAgICAgICA8IS0tIDxuZy1jb250ZW50IHNlbGVjdD1cIi5mb290ZXJcIj48L25nLWNvbnRlbnQ+IC0tPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYnV0dG9uLXdyYXBwZXJcIj4gICAgICAgIFxuICAgICAgICAgICAgQGlmICggc2F2ZUVuYWJsZWQgJiYgc2hvd1dhcm5pbmcgKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndhcm5pbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5yY2wtaWNvbiBhdHRyLmFsdD1cIlVuc2F2ZWQgQ2hhbmdlc1wiPndhcm5pbmc8L25yY2wtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+VW5zYXZlZCBDaGFuZ2VzPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfSAgICAgICAgICAgIFxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8bnJjbC1idXR0b24gXG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cImNhbmNlbExhYmVsXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsQ2xpY2suZW1pdCgpXCJcbiAgICAgICAgICAgID48L25yY2wtYnV0dG9uPlxuXG4gICAgICAgICAgICA8bnJjbC1idXR0b24gcHJpbWFyeVxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCJzYXZlTGFiZWxcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzYXZlQ2xpY2suZW1pdCgpXCIgXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFzYXZlRW5hYmxlZFwiXG4gICAgICAgICAgICA+PC9ucmNsLWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG59XG4iXX0=
@@ -4,10 +4,10 @@ import * as i0 from "@angular/core";
4
4
  import * as i1 from "../../gap/gap.component";
5
5
  export class ExpansionPanelSectionComponent extends NrclBase {
6
6
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ExpansionPanelSectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ExpansionPanelSectionComponent, selector: "nrcl-expansion-panel-section", usesInheritance: true, ngImport: i0, template: "<nrcl-gap vertical divider/>\n\n<ng-content></ng-content>\n", styles: [":host ::ng-deep h3{font-size:var(--nrcl-font-size-h3);font-weight:400;padding:0;margin:0;padding-bottom:var(--nrcl-gutter-space)}:host>nrcl-gap.divider{margin-left:calc(-1 * var(--nrcl-gutter-space));margin-right:calc(-1 * var(--nrcl-gutter-space))}\n"], dependencies: [{ kind: "component", type: i1.GapComponent, selector: "nrcl-gap", inputs: ["horizontal", "vertical", "divider"] }] }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ExpansionPanelSectionComponent, selector: "nrcl-expansion-panel-section", usesInheritance: true, ngImport: i0, template: "<nrcl-gap divider/>\n\n<ng-content></ng-content>\n", styles: [":host ::ng-deep h3{font-size:var(--nrcl-font-size-h3);font-weight:400;padding:0;margin:0;padding-bottom:var(--nrcl-gutter-space)}:host>::ng-deep .nrcl-gap{width:calc(100% + 2 * var(--nrcl-gutter-space))}:host>::ng-deep .nrcl-gap .divider{margin-left:calc(-1 * var(--nrcl-gutter-space));margin-right:calc(-1 * var(--nrcl-gutter-space))}\n"], dependencies: [{ kind: "component", type: i1.GapComponent, selector: "nrcl-gap", inputs: ["horizontal", "vertical", "divider"] }] }); }
8
8
  }
9
9
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ExpansionPanelSectionComponent, decorators: [{
10
10
  type: Component,
11
- args: [{ selector: "nrcl-expansion-panel-section", template: "<nrcl-gap vertical divider/>\n\n<ng-content></ng-content>\n", styles: [":host ::ng-deep h3{font-size:var(--nrcl-font-size-h3);font-weight:400;padding:0;margin:0;padding-bottom:var(--nrcl-gutter-space)}:host>nrcl-gap.divider{margin-left:calc(-1 * var(--nrcl-gutter-space));margin-right:calc(-1 * var(--nrcl-gutter-space))}\n"] }]
11
+ args: [{ selector: "nrcl-expansion-panel-section", template: "<nrcl-gap divider/>\n\n<ng-content></ng-content>\n", styles: [":host ::ng-deep h3{font-size:var(--nrcl-font-size-h3);font-weight:400;padding:0;margin:0;padding-bottom:var(--nrcl-gutter-space)}:host>::ng-deep .nrcl-gap{width:calc(100% + 2 * var(--nrcl-gutter-space))}:host>::ng-deep .nrcl-gap .divider{margin-left:calc(-1 * var(--nrcl-gutter-space));margin-right:calc(-1 * var(--nrcl-gutter-space))}\n"] }]
12
12
  }] });
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZXhwYW5zaW9uLXBhbmVsL3NlY3Rpb24vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZXhwYW5zaW9uLXBhbmVsL3NlY3Rpb24vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7QUFPekQsTUFBTSxPQUFPLDhCQUErQixTQUFRLFFBQVE7K0dBQS9DLDhCQUE4QjttR0FBOUIsOEJBQThCLDJGQ1IzQyw2REFHQTs7NEZES2EsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNJLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4uLy4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb25cIixcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9leHBhbnNpb24tcGFuZWwtc2VjdGlvbi5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEV4cGFuc2lvblBhbmVsU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIHtcbn1cbiIsIjxucmNsLWdhcCB2ZXJ0aWNhbCBkaXZpZGVyLz5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZXhwYW5zaW9uLXBhbmVsL3NlY3Rpb24vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZXhwYW5zaW9uLXBhbmVsL3NlY3Rpb24vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7QUFPekQsTUFBTSxPQUFPLDhCQUErQixTQUFRLFFBQVE7K0dBQS9DLDhCQUE4QjttR0FBOUIsOEJBQThCLDJGQ1IzQyxvREFHQTs7NEZES2EsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNJLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4uLy4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb25cIixcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9leHBhbnNpb24tcGFuZWwtc2VjdGlvbi5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEV4cGFuc2lvblBhbmVsU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIHtcbn1cbiIsIjxucmNsLWdhcCBkaXZpZGVyLz5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
@@ -1,31 +1,64 @@
1
- import { booleanAttribute, Component, Input } from '@angular/core';
1
+ import { Component, HostBinding, Input } from '@angular/core';
2
2
  import { NrclBase } from '../../directives/nrcl.base';
3
3
  import * as i0 from "@angular/core";
4
+ const POSITIONS = ['before', 'middle', 'after', 'none'];
4
5
  export class GapComponent extends NrclBase {
5
6
  constructor() {
6
7
  super(...arguments);
7
- this.horizontal = false;
8
- this.vertical = false;
9
- this.divider = false;
8
+ this.multiple = 1;
9
+ }
10
+ ngOnInit() {
11
+ super.ngOnInit();
12
+ this.updateState();
13
+ }
14
+ ngOnChanges(changes) {
15
+ this.updateState();
16
+ }
17
+ updateState() {
18
+ let defaultMultiple = 1;
19
+ let direction = 'vertical';
20
+ let dividerPosition = 'none';
21
+ if (this.divider != null && this.divider !== false) {
22
+ if (this.divider == '' || POSITIONS.includes(this.divider)) {
23
+ dividerPosition = this.divider || 'middle';
24
+ if (dividerPosition == 'middle')
25
+ defaultMultiple = 2;
26
+ }
27
+ }
28
+ this.multiple = defaultMultiple;
29
+ if (this.vertical != null && this.vertical !== false) {
30
+ direction = 'vertical';
31
+ this.multiple = parseMultiple(this.vertical, defaultMultiple);
32
+ }
33
+ else if (this.horizontal != null && this.horizontal !== false) {
34
+ direction = 'horizontal';
35
+ this.multiple = parseMultiple(this.horizontal, defaultMultiple);
36
+ }
37
+ this.componentClass = `direction-${direction} divider-position-${dividerPosition}`;
10
38
  }
11
39
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GapComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.14", type: GapComponent, selector: "nrcl-gap", inputs: { horizontal: ["horizontal", "horizontal", booleanAttribute], vertical: ["vertical", "vertical", booleanAttribute], divider: ["divider", "divider", booleanAttribute] }, host: { properties: { "class.horizontal": "horizontal", "class.vertical": "vertical", "class.divider": "divider" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"divider\"></div>", styles: [":host{justify-content:center;align-items:center}:host.horizontal{display:inline-flex;width:var(--nrcl-gutter-space);align-items:stretch}:host.horizontal.divider .divider{width:1px;height:100%;border-right:1px solid var(--nrcl-divider-color)}:host.vertical{display:flex;height:var(--nrcl-gutter-space)}:host.vertical.divider .divider{height:1px;width:100%;border-bottom:1px solid var(--nrcl-divider-color)}\n"] }); }
40
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: GapComponent, selector: "nrcl-gap", inputs: { horizontal: "horizontal", vertical: "vertical", divider: "divider" }, host: { properties: { "class": "this.componentClass", "style.--nrcl-gap-multiple": "this.multiple" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"divider\"></div>", styles: [":host.direction-horizontal{display:inline-flex;width:var(--nrcl-gutter-space);align-items:stretch}:host.direction-horizontal.divider-position-before{justify-content:flex-start}:host.direction-horizontal.divider-position-middle{justify-content:center}:host.direction-horizontal.divider-position-after{justify-content:flex-end}:host.direction-horizontal.divider-position-before,:host.direction-horizontal.divider-position-middle,:host.direction-horizontal.divider-position-after{width:calc(var(--nrcl-gap-multiple) * var(--nrcl-gutter-space))}:host.direction-horizontal.divider-position-before .divider,:host.direction-horizontal.divider-position-middle .divider,:host.direction-horizontal.divider-position-after .divider{width:1px;height:100%;border-right:1px solid var(--nrcl-divider-color)}:host.direction-vertical{display:flex;height:var(--nrcl-gutter-space)}:host.direction-vertical.divider-position-before{align-items:flex-start}:host.direction-vertical.divider-position-middle{align-items:center}:host.direction-vertical.divider-position-after{align-items:flex-end}:host.direction-vertical.divider-position-before,:host.direction-vertical.divider-position-middle,:host.direction-vertical.divider-position-after{height:calc(var(--nrcl-gap-multiple) * var(--nrcl-gutter-space))}:host.direction-vertical.divider-position-before .divider,:host.direction-vertical.divider-position-middle .divider,:host.direction-vertical.divider-position-after .divider{height:1px;width:100%;border-bottom:1px solid var(--nrcl-divider-color)}\n"] }); }
13
41
  }
14
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GapComponent, decorators: [{
15
43
  type: Component,
16
- args: [{ selector: 'nrcl-gap', host: {
17
- '[class.horizontal]': 'horizontal',
18
- '[class.vertical]': 'vertical',
19
- '[class.divider]': 'divider',
20
- }, template: "<div class=\"divider\"></div>", styles: [":host{justify-content:center;align-items:center}:host.horizontal{display:inline-flex;width:var(--nrcl-gutter-space);align-items:stretch}:host.horizontal.divider .divider{width:1px;height:100%;border-right:1px solid var(--nrcl-divider-color)}:host.vertical{display:flex;height:var(--nrcl-gutter-space)}:host.vertical.divider .divider{height:1px;width:100%;border-bottom:1px solid var(--nrcl-divider-color)}\n"] }]
44
+ args: [{ selector: 'nrcl-gap', template: "<div class=\"divider\"></div>", styles: [":host.direction-horizontal{display:inline-flex;width:var(--nrcl-gutter-space);align-items:stretch}:host.direction-horizontal.divider-position-before{justify-content:flex-start}:host.direction-horizontal.divider-position-middle{justify-content:center}:host.direction-horizontal.divider-position-after{justify-content:flex-end}:host.direction-horizontal.divider-position-before,:host.direction-horizontal.divider-position-middle,:host.direction-horizontal.divider-position-after{width:calc(var(--nrcl-gap-multiple) * var(--nrcl-gutter-space))}:host.direction-horizontal.divider-position-before .divider,:host.direction-horizontal.divider-position-middle .divider,:host.direction-horizontal.divider-position-after .divider{width:1px;height:100%;border-right:1px solid var(--nrcl-divider-color)}:host.direction-vertical{display:flex;height:var(--nrcl-gutter-space)}:host.direction-vertical.divider-position-before{align-items:flex-start}:host.direction-vertical.divider-position-middle{align-items:center}:host.direction-vertical.divider-position-after{align-items:flex-end}:host.direction-vertical.divider-position-before,:host.direction-vertical.divider-position-middle,:host.direction-vertical.divider-position-after{height:calc(var(--nrcl-gap-multiple) * var(--nrcl-gutter-space))}:host.direction-vertical.divider-position-before .divider,:host.direction-vertical.divider-position-middle .divider,:host.direction-vertical.divider-position-after .divider{height:1px;width:100%;border-bottom:1px solid var(--nrcl-divider-color)}\n"] }]
21
45
  }], propDecorators: { horizontal: [{
22
- type: Input,
23
- args: [{ transform: booleanAttribute }]
46
+ type: Input
24
47
  }], vertical: [{
25
- type: Input,
26
- args: [{ transform: booleanAttribute }]
48
+ type: Input
27
49
  }], divider: [{
28
- type: Input,
29
- args: [{ transform: booleanAttribute }]
50
+ type: Input
51
+ }], componentClass: [{
52
+ type: HostBinding,
53
+ args: ['class']
54
+ }], multiple: [{
55
+ type: HostBinding,
56
+ args: ['style.--nrcl-gap-multiple']
30
57
  }] } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL2dhcC9nYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZ2FwL2dhcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBWXRELE1BQU0sT0FBTyxZQUFhLFNBQVEsUUFBUTtJQVYxQzs7UUFXOEMsZUFBVSxHQUFHLEtBQUssQ0FBQTtRQUNsQixhQUFRLEdBQUcsS0FBSyxDQUFBO1FBQ2hCLFlBQU8sR0FBRyxLQUFLLENBQUE7S0FDNUQ7K0dBSlksWUFBWTttR0FBWixZQUFZLDJFQUNBLGdCQUFnQixzQ0FDaEIsZ0JBQWdCLG1DQUNoQixnQkFBZ0IsMEtDaEJ6QywrQkFBMkI7OzRGRGFkLFlBQVk7a0JBVnhCLFNBQVM7K0JBQ0ksVUFBVSxRQUdkO3dCQUNGLG9CQUFvQixFQUFFLFlBQVk7d0JBQ2xDLGtCQUFrQixFQUFFLFVBQVU7d0JBQzlCLGlCQUFpQixFQUFFLFNBQVM7cUJBQy9COzhCQUd5QyxVQUFVO3NCQUFuRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUNHLFFBQVE7c0JBQWpELEtBQUs7dUJBQUUsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ0csT0FBTztzQkFBaEQsS0FBSzt1QkFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ucmNsLmJhc2UnO1xuXG5AQ29tcG9uZW50KCB7XG4gICAgc2VsZWN0b3I6ICducmNsLWdhcCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dhcC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2dhcC5jb21wb25lbnQuc2NzcycsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLmhvcml6b250YWxdJzogJ2hvcml6b250YWwnLCBcbiAgICAgICAgJ1tjbGFzcy52ZXJ0aWNhbF0nOiAndmVydGljYWwnLCBcbiAgICAgICAgJ1tjbGFzcy5kaXZpZGVyXSc6ICdkaXZpZGVyJywgXG4gICAgfVxufSApXG5leHBvcnQgY2xhc3MgR2FwQ29tcG9uZW50IGV4dGVuZHMgTnJjbEJhc2Uge1xuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSApIGhvcml6b250YWwgPSBmYWxzZVxuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSApIHZlcnRpY2FsID0gZmFsc2VcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBkaXZpZGVyID0gZmFsc2Vcbn1cbiIsIjxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+Il19
58
+ function parseMultiple(v, def) {
59
+ let n = Number.parseInt(v);
60
+ if (Number.isNaN(n))
61
+ return def;
62
+ return n;
63
+ }
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL2dhcC9nYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZ2FwL2dhcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQW9DLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFdEQsTUFBTSxTQUFTLEdBQUcsQ0FBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQVcsQ0FBQTtBQVFsRSxNQUFNLE9BQU8sWUFBYSxTQUFRLFFBQVE7SUFMMUM7O1FBY0ksYUFBUSxHQUFHLENBQUMsQ0FBQTtLQW1DZjtJQWpDRyxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUN0QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUN0QixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksZUFBZSxHQUFHLENBQUMsQ0FBQTtRQUN2QixJQUFJLFNBQVMsR0FBOEIsVUFBVSxDQUFBO1FBQ3JELElBQUksZUFBZSxHQUFhLE1BQU0sQ0FBQTtRQUV0QyxJQUFLLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxFQUFHLENBQUM7WUFDbkQsSUFBSyxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUUsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFFLElBQUksQ0FBQyxPQUFPLENBQUUsRUFBRyxDQUFDO2dCQUM3RCxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxRQUFRLENBQUE7Z0JBQzFDLElBQUssZUFBZSxJQUFJLFFBQVE7b0JBQUcsZUFBZSxHQUFHLENBQUMsQ0FBQTtZQUMxRCxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFBO1FBQy9CLElBQUssSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFLLEVBQUcsQ0FBQztZQUNyRCxTQUFTLEdBQUcsVUFBVSxDQUFBO1lBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsZUFBZSxDQUFFLENBQUE7UUFDbkUsQ0FBQzthQUNJLElBQUssSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxLQUFLLEVBQUcsQ0FBQztZQUM5RCxTQUFTLEdBQUcsWUFBWSxDQUFBO1lBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFFLENBQUE7UUFDckUsQ0FBQztRQUVELElBQUksQ0FBQyxjQUFjLEdBQUcsYUFBYyxTQUFVLHFCQUFzQixlQUFnQixFQUFFLENBQUE7SUFDMUYsQ0FBQzsrR0EzQ1EsWUFBWTttR0FBWixZQUFZLG9SQ1h6QiwrQkFBMkI7OzRGRFdkLFlBQVk7a0JBTHhCLFNBQVM7K0JBQ0ksVUFBVTs4QkFLWCxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUdOLGNBQWM7c0JBRGIsV0FBVzt1QkFBRSxPQUFPO2dCQUlyQixRQUFRO3NCQURQLFdBQVc7dUJBQUUsMkJBQTJCOztBQXNDN0MsU0FBUyxhQUFhLENBQUUsQ0FBQyxFQUFFLEdBQUc7SUFDMUIsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBRSxDQUFDLENBQUUsQ0FBQTtJQUM1QixJQUFLLE1BQU0sQ0FBQyxLQUFLLENBQUUsQ0FBQyxDQUFFO1FBQUcsT0FBTyxHQUFHLENBQUE7SUFDbkMsT0FBTyxDQUFDLENBQUE7QUFDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOcmNsQmFzZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlJztcblxuY29uc3QgUE9TSVRJT05TID0gWyAnYmVmb3JlJywgJ21pZGRsZScsICdhZnRlcicsICdub25lJyBdIGFzIGNvbnN0XG50eXBlIFBvc2l0aW9uID0gKHR5cGVvZiBQT1NJVElPTlMpW251bWJlcl0gXG5cbkBDb21wb25lbnQoIHtcbiAgICBzZWxlY3RvcjogJ25yY2wtZ2FwJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZ2FwLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vZ2FwLmNvbXBvbmVudC5zY3NzJyxcbn0gKVxuZXhwb3J0IGNsYXNzIEdhcENvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIEBJbnB1dCgpIGhvcml6b250YWxcbiAgICBASW5wdXQoKSB2ZXJ0aWNhbFxuICAgIEBJbnB1dCgpIGRpdmlkZXJcblxuICAgIEBIb3N0QmluZGluZyggJ2NsYXNzJyApXG4gICAgY29tcG9uZW50Q2xhc3NcblxuICAgIEBIb3N0QmluZGluZyggJ3N0eWxlLi0tbnJjbC1nYXAtbXVsdGlwbGUnIClcbiAgICBtdWx0aXBsZSA9IDFcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpXG4gICAgICAgIHRoaXMudXBkYXRlU3RhdGUoKVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVTdGF0ZSgpXG4gICAgfVxuXG4gICAgdXBkYXRlU3RhdGUoKSB7XG4gICAgICAgIGxldCBkZWZhdWx0TXVsdGlwbGUgPSAxXG4gICAgICAgIGxldCBkaXJlY3Rpb246ICd2ZXJ0aWNhbCcgfCAnaG9yaXpvbnRhbCcgPSAndmVydGljYWwnXG4gICAgICAgIGxldCBkaXZpZGVyUG9zaXRpb246IFBvc2l0aW9uID0gJ25vbmUnXG5cbiAgICAgICAgaWYgKCB0aGlzLmRpdmlkZXIgIT0gbnVsbCAmJiB0aGlzLmRpdmlkZXIgIT09IGZhbHNlICkge1xuICAgICAgICAgICAgaWYgKCB0aGlzLmRpdmlkZXIgPT0gJycgfHwgUE9TSVRJT05TLmluY2x1ZGVzKCB0aGlzLmRpdmlkZXIgKSApIHtcbiAgICAgICAgICAgICAgICBkaXZpZGVyUG9zaXRpb24gPSB0aGlzLmRpdmlkZXIgfHwgJ21pZGRsZSdcbiAgICAgICAgICAgICAgICBpZiAoIGRpdmlkZXJQb3NpdGlvbiA9PSAnbWlkZGxlJyApIGRlZmF1bHRNdWx0aXBsZSA9IDJcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubXVsdGlwbGUgPSBkZWZhdWx0TXVsdGlwbGVcbiAgICAgICAgaWYgKCB0aGlzLnZlcnRpY2FsICE9IG51bGwgJiYgdGhpcy52ZXJ0aWNhbCAhPT0gZmFsc2UgKSB7XG4gICAgICAgICAgICBkaXJlY3Rpb24gPSAndmVydGljYWwnXG4gICAgICAgICAgICB0aGlzLm11bHRpcGxlID0gcGFyc2VNdWx0aXBsZSggdGhpcy52ZXJ0aWNhbCwgZGVmYXVsdE11bHRpcGxlIClcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICggdGhpcy5ob3Jpem9udGFsICE9IG51bGwgJiYgdGhpcy5ob3Jpem9udGFsICE9PSBmYWxzZSApIHtcbiAgICAgICAgICAgIGRpcmVjdGlvbiA9ICdob3Jpem9udGFsJ1xuICAgICAgICAgICAgdGhpcy5tdWx0aXBsZSA9IHBhcnNlTXVsdGlwbGUoIHRoaXMuaG9yaXpvbnRhbCwgZGVmYXVsdE11bHRpcGxlIClcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29tcG9uZW50Q2xhc3MgPSBgZGlyZWN0aW9uLSR7IGRpcmVjdGlvbiB9IGRpdmlkZXItcG9zaXRpb24tJHsgZGl2aWRlclBvc2l0aW9uIH1gXG4gICAgfVxufVxuXG5mdW5jdGlvbiBwYXJzZU11bHRpcGxlKCB2LCBkZWYgKSB7XG4gICAgbGV0IG4gPSBOdW1iZXIucGFyc2VJbnQoIHYgKVxuICAgIGlmICggTnVtYmVyLmlzTmFOKCBuICkgKSByZXR1cm4gZGVmXG4gICAgcmV0dXJuIG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+Il19
@@ -0,0 +1,35 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { NrclBase } from '../../directives/nrcl.base';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../icon/icon.component";
5
+ export class IndicatorSelectComponent extends NrclBase {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.selected = false;
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IndicatorSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: IndicatorSelectComponent, selector: "nrcl-indicator-select", inputs: { selected: "selected" }, host: { properties: { "class.selected": "selected" } }, usesInheritance: true, ngImport: i0, template: `
12
+ @if ( selected ) {
13
+ <nrcl-icon>indeterminate_check_box</nrcl-icon>
14
+ }
15
+ @else {
16
+ <nrcl-icon>add_box</nrcl-icon>
17
+ }
18
+ `, isInline: true, styles: [""], dependencies: [{ kind: "component", type: i1.IconComponent, selector: "nrcl-icon", inputs: ["small", "large"] }] }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IndicatorSelectComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'nrcl-indicator-select', template: `
23
+ @if ( selected ) {
24
+ <nrcl-icon>indeterminate_check_box</nrcl-icon>
25
+ }
26
+ @else {
27
+ <nrcl-icon>add_box</nrcl-icon>
28
+ }
29
+ `, host: {
30
+ '[class.selected]': "selected"
31
+ } }]
32
+ }], propDecorators: { selected: [{
33
+ type: Input
34
+ }] } });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kaWNhdG9yLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9pbmRpY2F0b3Itc2VsZWN0L2luZGljYXRvci1zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBaUJ0RCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsUUFBUTtJQWZ0RDs7UUFnQmEsYUFBUSxHQUFHLEtBQUssQ0FBQTtLQUM1QjsrR0FGWSx3QkFBd0I7bUdBQXhCLHdCQUF3Qiw4S0FadkI7Ozs7Ozs7S0FPVDs7NEZBS1Esd0JBQXdCO2tCQWZwQyxTQUFTOytCQUNJLHVCQUF1QixZQUV2Qjs7Ozs7OztLQU9ULFFBQ0s7d0JBQ0Ysa0JBQWtCLEVBQUUsVUFBVTtxQkFDakM7OEJBR1EsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ucmNsLmJhc2UnO1xuXG5AQ29tcG9uZW50KCB7XG4gICAgc2VsZWN0b3I6ICducmNsLWluZGljYXRvci1zZWxlY3QnLFxuICAgIHN0eWxlVXJsOiAnLi9pbmRpY2F0b3Itc2VsZWN0LmNvbXBvbmVudC5zY3NzJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICBAaWYgKCBzZWxlY3RlZCApIHtcbiAgICAgICAgICAgIDxucmNsLWljb24+aW5kZXRlcm1pbmF0ZV9jaGVja19ib3g8L25yY2wtaWNvbj5cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICA8bnJjbC1pY29uPmFkZF9ib3g8L25yY2wtaWNvbj5cbiAgICAgICAgfVxuICAgIGAsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLnNlbGVjdGVkXSc6IFwic2VsZWN0ZWRcIlxuICAgIH1cbn0gKVxuZXhwb3J0IGNsYXNzIEluZGljYXRvclNlbGVjdENvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIHtcbiAgICBASW5wdXQoKSBzZWxlY3RlZCA9IGZhbHNlXG59XG4iXX0=
@@ -0,0 +1,101 @@
1
+ import { booleanAttribute, ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from "@angular/core";
2
+ import { of } from "rxjs";
3
+ import { RowListBase } from "../../directives/row-list.base";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/table";
6
+ import * as i2 from "../filter-search/filter-search.component";
7
+ import * as i3 from "../filters-panel/filters-panel.component";
8
+ import * as i4 from "../row-list-desktop/row-list-desktop.component";
9
+ import * as i5 from "../row-list-pagination/row-list-pagination.component";
10
+ import * as i6 from "../indicator-select/indicator-select.component";
11
+ export class ListSelectComponent extends RowListBase {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.descriptionLabel = 'Description';
15
+ this.noRowsMessage = "No items have been added.";
16
+ this.valueChange = new EventEmitter();
17
+ }
18
+ get initialPageState() {
19
+ return {
20
+ filter: {},
21
+ pageSize: undefined,
22
+ pageNumber: 1,
23
+ sortActive: null,
24
+ sortDirection: 'desc',
25
+ };
26
+ }
27
+ fetchRowListPage() {
28
+ if (this.searchRegexp) {
29
+ return of(this.options.filter(o => this.searchRegexp.test(o.description)));
30
+ }
31
+ else {
32
+ return of(this.options);
33
+ }
34
+ }
35
+ displayRowListPage(res) {
36
+ return {
37
+ totalRowCount: res.length,
38
+ rows: res
39
+ };
40
+ }
41
+ isSelected(item) {
42
+ return this.value?.includes(item.code);
43
+ }
44
+ onRowClick(item) {
45
+ if (this.single) {
46
+ if (this.isSelected(item)) {
47
+ this.value = [];
48
+ }
49
+ else {
50
+ this.value = [item.code];
51
+ }
52
+ }
53
+ else {
54
+ let val = this.value || [];
55
+ if (this.isSelected(item)) {
56
+ this.value = val.filter(c => c != item.code);
57
+ }
58
+ else {
59
+ this.value = val.concat(item.code);
60
+ }
61
+ }
62
+ this.valueChange.emit(this.value);
63
+ }
64
+ onClearFilters() {
65
+ this.searchText = null;
66
+ this.searchRegexp = null;
67
+ this.refreshRowList();
68
+ }
69
+ onSearchTextChange(ev) {
70
+ this.searchText = ev;
71
+ let t = this.searchText?.trim();
72
+ if (t) {
73
+ t = t.toLowerCase().replace(/\s+/g, '.*');
74
+ this.searchRegexp = new RegExp(t, 'gi');
75
+ }
76
+ else {
77
+ this.searchRegexp = null;
78
+ }
79
+ this.refreshRowList();
80
+ }
81
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
82
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ListSelectComponent, selector: "nrcl-list-select", inputs: { options: "options", value: "value", descriptionLabel: "descriptionLabel", single: ["single", "single", booleanAttribute], noRowsMessage: "noRowsMessage" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0, template: "@if ( !single ) {\n <div class=\"summary\">\n <h3>{{ value?.length || '0' }} Selected</h3>\n </div>\n}\n\n<nrcl-filters-panel (clearFilters)=\"onClearFilters()\">\n <nrcl-filter-search\n [(value)]=\"searchText\"\n (valueChange)=\"onSearchTextChange( $event )\">\n </nrcl-filter-search>\n</nrcl-filters-panel>\n\n<nrcl-row-list-desktop>\n @if ( rows?.length > 0 ) {\n <mat-table [dataSource]=\"rows\">\n <ng-container matColumnDef=\"description\">\n <mat-header-cell *matHeaderCellDef>{{ descriptionLabel }}</mat-header-cell>\n <mat-cell *matCellDef=\"let item\">\n {{ item.description }}\n </mat-cell>\n </ng-container>\n\n <ng-container matColumnDef=\"addRemove\">\n <mat-header-cell *matHeaderCellDef>Add Remove</mat-header-cell>\n <mat-cell *matCellDef=\"let item\">\n <nrcl-indicator-select [selected]=\"isSelected( item )\"></nrcl-indicator-select>\n </mat-cell>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"[ 'description', 'addRemove' ]; sticky: true\"></mat-header-row>\n\n <mat-row\n *matRowDef=\"let item; columns: [ 'description', 'addRemove' ]\"\n [class.selected]=\"isSelected( item )\"\n (click)=\"onRowClick( item )\"\n (keypress)=\"onRowClick( item )\"\n ></mat-row>\n </mat-table>\n }\n</nrcl-row-list-desktop>\n\n@if ( totalRowCount == 0 ) {\n <nrcl-row-list-pagination\n paginationId=\"list-select\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n [noRowsMessage]=\"noRowsMessage\"\n ></nrcl-row-list-pagination>\n}\n", styles: [":host{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size)}:host .summary{display:flex;justify-content:flex-end}:host .summary h3{font-size:var(--nrcl-font-size-h3);font-weight:400;padding:0;margin:0;padding-bottom:var(--nrcl-gutter-space)}:host .mat-mdc-table .mat-column-description{flex-grow:1}:host .mat-mdc-table .mat-column-addRemove{flex-basis:70px;flex-grow:0;flex-shrink:0;display:flex;justify-content:center;text-align:center}\n"], dependencies: [{ kind: "component", type: i1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i1.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i2.FilterSearchComponent, selector: "nrcl-filter-search", inputs: ["label", "placeholder", "hint", "value", "wide"], outputs: ["valueChange"] }, { kind: "component", type: i3.FiltersPanelComponent, selector: "nrcl-filters-panel", inputs: ["showClear", "showFilters", "hasAdvancedFilters", "showAdvancedFilters"], outputs: ["clearFilters", "showFiltersChange", "showAdvancedFiltersChange"] }, { kind: "component", type: i4.RowListDesktopComponent, selector: "nrcl-row-list-desktop" }, { kind: "component", type: i5.RowListPaginationComponent, selector: "nrcl-row-list-pagination", inputs: ["paginationId", "pageSizeOptions", "pageSize", "pageNumber", "rowCount", "showPageSize", "noRowsMessage"], outputs: ["pageSizeChange", "pageNumberChange"] }, { kind: "component", type: i6.IndicatorSelectComponent, selector: "nrcl-indicator-select", inputs: ["selected"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
83
+ }
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListSelectComponent, decorators: [{
85
+ type: Component,
86
+ args: [{ selector: "nrcl-list-select", changeDetection: ChangeDetectionStrategy.OnPush, template: "@if ( !single ) {\n <div class=\"summary\">\n <h3>{{ value?.length || '0' }} Selected</h3>\n </div>\n}\n\n<nrcl-filters-panel (clearFilters)=\"onClearFilters()\">\n <nrcl-filter-search\n [(value)]=\"searchText\"\n (valueChange)=\"onSearchTextChange( $event )\">\n </nrcl-filter-search>\n</nrcl-filters-panel>\n\n<nrcl-row-list-desktop>\n @if ( rows?.length > 0 ) {\n <mat-table [dataSource]=\"rows\">\n <ng-container matColumnDef=\"description\">\n <mat-header-cell *matHeaderCellDef>{{ descriptionLabel }}</mat-header-cell>\n <mat-cell *matCellDef=\"let item\">\n {{ item.description }}\n </mat-cell>\n </ng-container>\n\n <ng-container matColumnDef=\"addRemove\">\n <mat-header-cell *matHeaderCellDef>Add Remove</mat-header-cell>\n <mat-cell *matCellDef=\"let item\">\n <nrcl-indicator-select [selected]=\"isSelected( item )\"></nrcl-indicator-select>\n </mat-cell>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"[ 'description', 'addRemove' ]; sticky: true\"></mat-header-row>\n\n <mat-row\n *matRowDef=\"let item; columns: [ 'description', 'addRemove' ]\"\n [class.selected]=\"isSelected( item )\"\n (click)=\"onRowClick( item )\"\n (keypress)=\"onRowClick( item )\"\n ></mat-row>\n </mat-table>\n }\n</nrcl-row-list-desktop>\n\n@if ( totalRowCount == 0 ) {\n <nrcl-row-list-pagination\n paginationId=\"list-select\"\n [pageSize]=\"pageSize\"\n [pageNumber]=\"pageNumber\"\n [rowCount]=\"totalRowCount\"\n (pageNumberChange)=\"onPageNumberChange( $event )\"\n (pageSizeChange)=\"onPageSizeChange( $event )\"\n [noRowsMessage]=\"noRowsMessage\"\n ></nrcl-row-list-pagination>\n}\n", styles: [":host{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size)}:host .summary{display:flex;justify-content:flex-end}:host .summary h3{font-size:var(--nrcl-font-size-h3);font-weight:400;padding:0;margin:0;padding-bottom:var(--nrcl-gutter-space)}:host .mat-mdc-table .mat-column-description{flex-grow:1}:host .mat-mdc-table .mat-column-addRemove{flex-basis:70px;flex-grow:0;flex-shrink:0;display:flex;justify-content:center;text-align:center}\n"] }]
87
+ }], propDecorators: { options: [{
88
+ type: Input
89
+ }], value: [{
90
+ type: Input
91
+ }], descriptionLabel: [{
92
+ type: Input
93
+ }], single: [{
94
+ type: Input,
95
+ args: [{ transform: booleanAttribute }]
96
+ }], noRowsMessage: [{
97
+ type: Input
98
+ }], valueChange: [{
99
+ type: Output
100
+ }] } });
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1zZWxlY3QvbGlzdC1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvbGlzdC1zZWxlY3QvbGlzdC1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFtQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkksT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQXFCLFdBQVcsRUFBZ0IsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7QUFTOUYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFdBQStCO0lBTnhFOztRQVNhLHFCQUFnQixHQUFHLGFBQWEsQ0FBQTtRQUVoQyxrQkFBYSxHQUFHLDJCQUEyQixDQUFBO1FBRTFDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztLQThFeEQ7SUF6RUcsSUFBSSxnQkFBZ0I7UUFDaEIsT0FBTztZQUNILE1BQU0sRUFBRSxFQUFFO1lBQ1YsUUFBUSxFQUFFLFNBQVM7WUFDbkIsVUFBVSxFQUFFLENBQUM7WUFDYixVQUFVLEVBQUUsSUFBSTtZQUNoQixhQUFhLEVBQUUsTUFBTTtTQUN4QixDQUFBO0lBQ0wsQ0FBQztJQUVELGdCQUFnQjtRQUNaLElBQUssSUFBSSxDQUFDLFlBQVksRUFBRyxDQUFDO1lBQ3RCLE9BQU8sRUFBRSxDQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBRSxDQUFFLENBQUUsQ0FBQTtRQUNwRixDQUFDO2FBQ0ksQ0FBQztZQUNGLE9BQU8sRUFBRSxDQUFFLElBQUksQ0FBQyxPQUFPLENBQUUsQ0FBQTtRQUM3QixDQUFDO0lBQ0wsQ0FBQztJQUVELGtCQUFrQixDQUFFLEdBQXNCO1FBQ3RDLE9BQU87WUFDSCxhQUFhLEVBQUUsR0FBRyxDQUFDLE1BQU07WUFDekIsSUFBSSxFQUFFLEdBQUc7U0FDWixDQUFBO0lBQ0wsQ0FBQztJQUVELFVBQVUsQ0FBRSxJQUFxQjtRQUM3QixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFFLElBQUksQ0FBQyxJQUFJLENBQUUsQ0FBQTtJQUM1QyxDQUFDO0lBRUQsVUFBVSxDQUFFLElBQXFCO1FBQzdCLElBQUssSUFBSSxDQUFDLE1BQU0sRUFBRyxDQUFDO1lBQ2hCLElBQUssSUFBSSxDQUFDLFVBQVUsQ0FBRSxJQUFJLENBQUUsRUFBRyxDQUFDO2dCQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQTtZQUNuQixDQUFDO2lCQUNJLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFFLElBQUksQ0FBQyxJQUFJLENBQUUsQ0FBQTtZQUM5QixDQUFDO1FBQ0wsQ0FBQzthQUNJLENBQUM7WUFDRixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQTtZQUUxQixJQUFLLElBQUksQ0FBQyxVQUFVLENBQUUsSUFBSSxDQUFFLEVBQUcsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUUsQ0FBQTtZQUNsRCxDQUFDO2lCQUNJLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFFLElBQUksQ0FBQyxJQUFJLENBQUUsQ0FBQTtZQUN4QyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFFLElBQUksQ0FBQyxLQUFLLENBQUUsQ0FBQTtJQUN2QyxDQUFDO0lBRUQsY0FBYztRQUNWLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFBO1FBQ3RCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQTtJQUN6QixDQUFDO0lBRUQsa0JBQWtCLENBQUUsRUFBRTtRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQTtRQUVwQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFBO1FBQy9CLElBQUssQ0FBQyxFQUFHLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBRSxNQUFNLEVBQUUsSUFBSSxDQUFFLENBQUE7WUFDM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLE1BQU0sQ0FBRSxDQUFDLEVBQUUsSUFBSSxDQUFFLENBQUE7UUFDN0MsQ0FBQzthQUNJLENBQUM7WUFDRixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUM1QixDQUFDO1FBRUQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFBO0lBQ3pCLENBQUM7K0dBcEZRLG1CQUFtQjttR0FBbkIsbUJBQW1CLGlKQUlQLGdCQUFnQiw2SENmekMsZzdEQXFEQTs7NEZEMUNhLG1CQUFtQjtrQkFOL0IsU0FBUzsrQkFDSSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ29DLE1BQU07c0JBQS9DLEtBQUs7dUJBQUUsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQzlCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIG51bWJlckF0dHJpYnV0ZSwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IExvYWRSb3dMaXN0UmVzdWx0LCBSb3dMaXN0QmFzZSwgUm93TGlzdFN0YXRlIH0gZnJvbSBcIi4uLy4uL2RpcmVjdGl2ZXMvcm93LWxpc3QuYmFzZVwiO1xuaW1wb3J0IHsgQ29kZURlc2NyaXB0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL2NvZGUtdGFibGUudXRpbFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWxpc3Qtc2VsZWN0XCIsXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9saXN0LXNlbGVjdC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsOiBcIi4vbGlzdC1zZWxlY3QuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMaXN0U2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgUm93TGlzdEJhc2U8e30sQ29kZURlc2NyaXB0aW9uPiB7XG4gICAgQElucHV0KCkgb3B0aW9uczogQ29kZURlc2NyaXB0aW9uW11cbiAgICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nW11cbiAgICBASW5wdXQoKSBkZXNjcmlwdGlvbkxhYmVsID0gJ0Rlc2NyaXB0aW9uJ1xuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSApIHNpbmdsZSBcbiAgICBASW5wdXQoKSBub1Jvd3NNZXNzYWdlID0gXCJObyBpdGVtcyBoYXZlIGJlZW4gYWRkZWQuXCJcbiAgIFxuICAgIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG4gICAgXG4gICAgc2VhcmNoVGV4dFxuICAgIHNlYXJjaFJlZ2V4cDogUmVnRXhwXG5cbiAgICBnZXQgaW5pdGlhbFBhZ2VTdGF0ZSgpOiBSb3dMaXN0U3RhdGU8e30+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGZpbHRlcjoge30sXG4gICAgICAgICAgICBwYWdlU2l6ZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgcGFnZU51bWJlcjogMSxcbiAgICAgICAgICAgIHNvcnRBY3RpdmU6IG51bGwsXG4gICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiAnZGVzYycsXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmZXRjaFJvd0xpc3RQYWdlKCk6IE9ic2VydmFibGU8Q29kZURlc2NyaXB0aW9uW10+IHtcbiAgICAgICAgaWYgKCB0aGlzLnNlYXJjaFJlZ2V4cCApIHtcbiAgICAgICAgICAgIHJldHVybiBvZiggdGhpcy5vcHRpb25zLmZpbHRlciggbyA9PiB0aGlzLnNlYXJjaFJlZ2V4cC50ZXN0KCBvLmRlc2NyaXB0aW9uICkgKSApXG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gb2YoIHRoaXMub3B0aW9ucyApXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgZGlzcGxheVJvd0xpc3RQYWdlKCByZXM6IENvZGVEZXNjcmlwdGlvbltdICk6IExvYWRSb3dMaXN0UmVzdWx0PENvZGVEZXNjcmlwdGlvbj4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdG90YWxSb3dDb3VudDogcmVzLmxlbmd0aCxcbiAgICAgICAgICAgIHJvd3M6IHJlc1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNTZWxlY3RlZCggaXRlbTogQ29kZURlc2NyaXB0aW9uICkge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZT8uaW5jbHVkZXMoIGl0ZW0uY29kZSApXG4gICAgfVxuXG4gICAgb25Sb3dDbGljayggaXRlbTogQ29kZURlc2NyaXB0aW9uICkgeyAgICAgICBcbiAgICAgICAgaWYgKCB0aGlzLnNpbmdsZSApIHtcbiAgICAgICAgICAgIGlmICggdGhpcy5pc1NlbGVjdGVkKCBpdGVtICkgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IFtdXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gWyBpdGVtLmNvZGUgXVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGV0IHZhbCA9IHRoaXMudmFsdWUgfHwgW11cblxuICAgICAgICAgICAgaWYgKCB0aGlzLmlzU2VsZWN0ZWQoIGl0ZW0gKSApIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsLmZpbHRlciggYyA9PiBjICE9IGl0ZW0uY29kZSApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsLmNvbmNhdCggaXRlbS5jb2RlIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCggdGhpcy52YWx1ZSApXG4gICAgfSAgICBcblxuICAgIG9uQ2xlYXJGaWx0ZXJzKCkge1xuICAgICAgICB0aGlzLnNlYXJjaFRleHQgPSBudWxsXG4gICAgICAgIHRoaXMuc2VhcmNoUmVnZXhwID0gbnVsbFxuICAgICAgICB0aGlzLnJlZnJlc2hSb3dMaXN0KClcbiAgICB9XG5cbiAgICBvblNlYXJjaFRleHRDaGFuZ2UoIGV2ICkge1xuICAgICAgICB0aGlzLnNlYXJjaFRleHQgPSBldlxuXG4gICAgICAgIGxldCB0ID0gdGhpcy5zZWFyY2hUZXh0Py50cmltKClcbiAgICAgICAgaWYgKCB0ICkge1xuICAgICAgICAgICAgdCA9IHQudG9Mb3dlckNhc2UoKS5yZXBsYWNlKCAvXFxzKy9nLCAnLionIClcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoUmVnZXhwID0gbmV3IFJlZ0V4cCggdCwgJ2dpJyApIFxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hSZWdleHAgPSBudWxsXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJlZnJlc2hSb3dMaXN0KClcbiAgICB9XG59XG4iLCJAaWYgKCAhc2luZ2xlICkge1xuICAgIDxkaXYgY2xhc3M9XCJzdW1tYXJ5XCI+XG4gICAgICAgIDxoMz57eyB2YWx1ZT8ubGVuZ3RoIHx8ICcwJyB9fSBTZWxlY3RlZDwvaDM+XG4gICAgPC9kaXY+XG59XG5cbjxucmNsLWZpbHRlcnMtcGFuZWwgKGNsZWFyRmlsdGVycyk9XCJvbkNsZWFyRmlsdGVycygpXCI+XG4gICAgPG5yY2wtZmlsdGVyLXNlYXJjaFxuICAgICAgICBbKHZhbHVlKV09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uU2VhcmNoVGV4dENoYW5nZSggJGV2ZW50IClcIj5cbiAgICA8L25yY2wtZmlsdGVyLXNlYXJjaD5cbjwvbnJjbC1maWx0ZXJzLXBhbmVsPlxuXG48bnJjbC1yb3ctbGlzdC1kZXNrdG9wPlxuICAgIEBpZiAoIHJvd3M/Lmxlbmd0aCA+IDAgKSB7XG4gICAgICAgIDxtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwicm93c1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJkZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+e3sgZGVzY3JpcHRpb25MYWJlbCB9fTwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0uZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgICAgICA8L21hdC1jZWxsPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiYWRkUmVtb3ZlXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5BZGQgUmVtb3ZlPC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgPG5yY2wtaW5kaWNhdG9yLXNlbGVjdCBbc2VsZWN0ZWRdPVwiaXNTZWxlY3RlZCggaXRlbSApXCI+PC9ucmNsLWluZGljYXRvci1zZWxlY3Q+XG4gICAgICAgICAgICAgICAgPC9tYXQtY2VsbD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cIlsgJ2Rlc2NyaXB0aW9uJywgJ2FkZFJlbW92ZScgXTsgc3RpY2t5OiB0cnVlXCI+PC9tYXQtaGVhZGVyLXJvdz5cblxuICAgICAgICAgICAgPG1hdC1yb3dcbiAgICAgICAgICAgICAgICAqbWF0Um93RGVmPVwibGV0IGl0ZW07IGNvbHVtbnM6IFsgJ2Rlc2NyaXB0aW9uJywgJ2FkZFJlbW92ZScgXVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImlzU2VsZWN0ZWQoIGl0ZW0gKVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uUm93Q2xpY2soIGl0ZW0gKVwiXG4gICAgICAgICAgICAgICAgKGtleXByZXNzKT1cIm9uUm93Q2xpY2soIGl0ZW0gKVwiXG4gICAgICAgICAgICA+PC9tYXQtcm93PlxuICAgICAgICA8L21hdC10YWJsZT5cbiAgICB9XG48L25yY2wtcm93LWxpc3QtZGVza3RvcD5cblxuQGlmICggdG90YWxSb3dDb3VudCA9PSAwICkge1xuICAgIDxucmNsLXJvdy1saXN0LXBhZ2luYXRpb25cbiAgICAgICAgcGFnaW5hdGlvbklkPVwibGlzdC1zZWxlY3RcIlxuICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgICBbcGFnZU51bWJlcl09XCJwYWdlTnVtYmVyXCJcbiAgICAgICAgW3Jvd0NvdW50XT1cInRvdGFsUm93Q291bnRcIlxuICAgICAgICAocGFnZU51bWJlckNoYW5nZSk9XCJvblBhZ2VOdW1iZXJDaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgW25vUm93c01lc3NhZ2VdPVwibm9Sb3dzTWVzc2FnZVwiXG4gICAgPjwvbnJjbC1yb3ctbGlzdC1wYWdpbmF0aW9uPlxufVxuIl19
@@ -3,10 +3,10 @@ import { NrclBase } from "../../directives/nrcl.base";
3
3
  import * as i0 from "@angular/core";
4
4
  export class RowListDesktopComponent extends NrclBase {
5
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RowListDesktopComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: RowListDesktopComponent, selector: "nrcl-row-list-desktop", usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid #c6c8cb}:host:empty{border-bottom:none}:host ::ng-deep .mat-mdc-table{width:100%}:host ::ng-deep .mat-mdc-table .mat-mdc-row{background-color:#fff;cursor:pointer}:host ::ng-deep .mat-mdc-table .mat-mdc-row .mat-mdc-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000;overflow-wrap:break-word}:host ::ng-deep .mat-mdc-table .mat-mdc-row:hover{background-color:#d7d7d7}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(odd):not(:hover){background-color:#f2f2f2}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(2n):not(:hover){background-color:#fff}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell .mat-sort-header-content{text-align:left;align-items:flex-end;font-size:15px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: RowListDesktopComponent, selector: "nrcl-row-list-desktop", usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid #c6c8cb}:host:empty{border-bottom:none}:host ::ng-deep .mat-mdc-table{width:100%}:host ::ng-deep .mat-mdc-table .mat-mdc-row{background-color:#fff;cursor:pointer}:host ::ng-deep .mat-mdc-table .mat-mdc-row .mat-mdc-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000;overflow-wrap:break-word}:host ::ng-deep .mat-mdc-table .mat-mdc-row:hover{background-color:#d7d7d7}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(odd):not(:hover):not(.selected){background-color:#f2f2f2}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(2n):not(:hover):not(.selected){background-color:#fff}:host ::ng-deep .mat-mdc-table .mat-mdc-row.selected{background-color:#b6d7a8}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell .mat-sort-header-content{text-align:left;align-items:flex-end;font-size:15px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7
7
  }
8
8
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RowListDesktopComponent, decorators: [{
9
9
  type: Component,
10
- args: [{ selector: "nrcl-row-list-desktop", changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:block;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid #c6c8cb}:host:empty{border-bottom:none}:host ::ng-deep .mat-mdc-table{width:100%}:host ::ng-deep .mat-mdc-table .mat-mdc-row{background-color:#fff;cursor:pointer}:host ::ng-deep .mat-mdc-table .mat-mdc-row .mat-mdc-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000;overflow-wrap:break-word}:host ::ng-deep .mat-mdc-table .mat-mdc-row:hover{background-color:#d7d7d7}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(odd):not(:hover){background-color:#f2f2f2}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(2n):not(:hover){background-color:#fff}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell .mat-sort-header-content{text-align:left;align-items:flex-end;font-size:15px}\n"] }]
10
+ args: [{ selector: "nrcl-row-list-desktop", changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{display:block;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid #c6c8cb}:host:empty{border-bottom:none}:host ::ng-deep .mat-mdc-table{width:100%}:host ::ng-deep .mat-mdc-table .mat-mdc-row{background-color:#fff;cursor:pointer}:host ::ng-deep .mat-mdc-table .mat-mdc-row .mat-mdc-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000;overflow-wrap:break-word}:host ::ng-deep .mat-mdc-table .mat-mdc-row:hover{background-color:#d7d7d7}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(odd):not(:hover):not(.selected){background-color:#f2f2f2}:host ::ng-deep .mat-mdc-table .mat-mdc-row:nth-child(2n):not(:hover):not(.selected){background-color:#fff}:host ::ng-deep .mat-mdc-table .mat-mdc-row.selected{background-color:#b6d7a8}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell{font-family:var(--nrcl-font-family);font-size:var(--nrcl-font-size);padding:5px;color:#000}:host ::ng-deep .mat-mdc-table .mat-mdc-header-cell .mat-sort-header-content{text-align:left;align-items:flex-end;font-size:15px}\n"] }]
11
11
  }] });
12
12
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LWxpc3QtZGVza3RvcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9yb3ctbGlzdC1kZXNrdG9wL3Jvdy1saXN0LWRlc2t0b3AuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvcm93LWxpc3QtZGVza3RvcC9yb3ctbGlzdC1kZXNrdG9wLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFRdEQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFFBQVE7K0dBQXhDLHVCQUF1QjttR0FBdkIsdUJBQXVCLG9GQ1pwQyw2QkFDQTs7NEZEV2EsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNJLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOcmNsQmFzZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL25yY2wuYmFzZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJucmNsLXJvdy1saXN0LWRlc2t0b3BcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3Jvdy1saXN0LWRlc2t0b3AuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybDogXCIuL3Jvdy1saXN0LWRlc2t0b3AuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBSb3dMaXN0RGVza3RvcENvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIHtcbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { ChangeDetectorRef, Directive, inject } from "@angular/core";
2
+ import { MAT_DIALOG_DATA, MatDialogRef } from "@angular/material/dialog";
3
+ import * as i0 from "@angular/core";
4
+ export class EditDialogBase {
5
+ constructor() {
6
+ this.dialogRef = inject((MatDialogRef));
7
+ this.changeDetectorRef = inject(ChangeDetectorRef);
8
+ this.saveLabel = 'Save';
9
+ this._saveEnabled = false;
10
+ this.cancelLabel = 'Cancel';
11
+ this._isLoading = false;
12
+ this.data = inject(MAT_DIALOG_DATA);
13
+ }
14
+ get saveEnabled() { return this._saveEnabled; }
15
+ set saveEnabled(v) { this._saveEnabled = v; }
16
+ get isLoading() { return this._isLoading; }
17
+ set isLoading(v) {
18
+ if (this._isLoading == v)
19
+ return;
20
+ this._isLoading = v;
21
+ this.changeDetectorRef.detectChanges();
22
+ }
23
+ onSaveClick() {
24
+ this.ok();
25
+ }
26
+ onCancelClick() {
27
+ this.cancel();
28
+ }
29
+ ok() {
30
+ this.dialogRef.close(this.result);
31
+ }
32
+ cancel() {
33
+ this.dialogRef.close('cancel');
34
+ }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditDialogBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
36
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: EditDialogBase, ngImport: i0 }); }
37
+ }
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditDialogBase, decorators: [{
39
+ type: Directive
40
+ }] });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1kaWFsb2cuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9kaXJlY3RpdmVzL2VkaXQtZGlhbG9nLmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFNekUsTUFBTSxPQUFPLGNBQWM7SUFEM0I7UUFFSSxjQUFTLEdBQUcsTUFBTSxDQUFFLENBQUEsWUFBOEQsQ0FBQSxDQUFFLENBQUE7UUFDcEYsc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFJL0MsY0FBUyxHQUFHLE1BQU0sQ0FBQTtRQUVWLGlCQUFZLEdBQUcsS0FBSyxDQUFBO1FBSTVCLGdCQUFXLEdBQUcsUUFBUSxDQUFBO1FBRWQsZUFBVSxHQUFHLEtBQUssQ0FBQTtRQVUxQixTQUFJLEdBQVcsTUFBTSxDQUFFLGVBQWUsQ0FBRSxDQUFBO0tBaUIzQztJQWhDRyxJQUFJLFdBQVcsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUEsQ0FBQyxDQUFDO0lBQzlDLElBQUksV0FBVyxDQUFFLENBQVUsSUFBSyxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFLdkQsSUFBSSxTQUFTLEtBQUssT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFBLENBQUMsQ0FBQztJQUMxQyxJQUFJLFNBQVMsQ0FBRSxDQUFVO1FBQ3JCLElBQUssSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDO1lBQUcsT0FBTTtRQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQTtRQUNuQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDMUMsQ0FBQztJQU1ELFdBQVc7UUFDUCxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUE7SUFDYixDQUFDO0lBRUQsYUFBYTtRQUNULElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNqQixDQUFDO0lBRUQsRUFBRTtRQUNFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFFLElBQUksQ0FBQyxNQUFNLENBQUUsQ0FBQTtJQUN2QyxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFFLFFBQVEsQ0FBRSxDQUFBO0lBQ3BDLENBQUM7K0dBeENRLGNBQWM7bUdBQWQsY0FBYzs7NEZBQWQsY0FBYztrQkFEMUIsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcbmltcG9ydCB7IEVkaXREaWFsb2dDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9lZGl0LWRpYWxvZy9lZGl0LWRpYWxvZy5jb21wb25lbnRcIjtcblxuZXhwb3J0IHR5cGUgRWRpdERpYWxvZ0Jhc2VSZXN1bHQ8Uj4gPSBSIHwgJ2NhbmNlbCdcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgRWRpdERpYWxvZ0Jhc2U8Q09ORklHLCBSRVNVTFQgPSBhbnk+IHtcbiAgICBkaWFsb2dSZWYgPSBpbmplY3QoIE1hdERpYWxvZ1JlZjxFZGl0RGlhbG9nQ29tcG9uZW50LEVkaXREaWFsb2dCYXNlUmVzdWx0PFJFU1VMVD4+IClcbiAgICBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdCggQ2hhbmdlRGV0ZWN0b3JSZWYgKVxuXG4gICAgdGl0bGU6IHN0cmluZ1xuICAgIFxuICAgIHNhdmVMYWJlbCA9ICdTYXZlJ1xuXG4gICAgcHJpdmF0ZSBfc2F2ZUVuYWJsZWQgPSBmYWxzZVxuICAgIGdldCBzYXZlRW5hYmxlZCgpIHsgcmV0dXJuIHRoaXMuX3NhdmVFbmFibGVkIH1cbiAgICBzZXQgc2F2ZUVuYWJsZWQoIHY6IGJvb2xlYW4gKSB7IHRoaXMuX3NhdmVFbmFibGVkID0gdiB9XG5cbiAgICBjYW5jZWxMYWJlbCA9ICdDYW5jZWwnXG5cbiAgICBwcml2YXRlIF9pc0xvYWRpbmcgPSBmYWxzZVxuICAgIGdldCBpc0xvYWRpbmcoKSB7IHJldHVybiB0aGlzLl9pc0xvYWRpbmcgfVxuICAgIHNldCBpc0xvYWRpbmcoIHY6IGJvb2xlYW4gKSB7IFxuICAgICAgICBpZiAoIHRoaXMuX2lzTG9hZGluZyA9PSB2ICkgcmV0dXJuXG4gICAgICAgIHRoaXMuX2lzTG9hZGluZyA9IHZcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKClcbiAgICB9XG5cbiAgICByZXN1bHQ6IFJFU1VMVFxuXG4gICAgZGF0YTogQ09ORklHID0gaW5qZWN0KCBNQVRfRElBTE9HX0RBVEEgKVxuICAgIFxuICAgIG9uU2F2ZUNsaWNrKCkge1xuICAgICAgICB0aGlzLm9rKClcbiAgICB9XG5cbiAgICBvbkNhbmNlbENsaWNrKCkge1xuICAgICAgICB0aGlzLmNhbmNlbCgpXG4gICAgfVxuICAgIFxuICAgIG9rKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSggdGhpcy5yZXN1bHQgKVxuICAgIH1cblxuICAgIGNhbmNlbCgpe1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSggJ2NhbmNlbCcgKVxuICAgIH1cbn1cbiJdfQ==