@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.
- package/components/edit-dialog/edit-dialog.component.d.ts +15 -0
- package/components/gap/gap.component.d.ts +10 -7
- package/components/indicator-select/indicator-select.component.d.ts +7 -0
- package/components/list-select/list-select.component.d.ts +25 -0
- package/directives/edit-dialog.base.d.ts +25 -0
- package/esm2022/components/edit-dialog/edit-dialog.component.mjs +43 -0
- package/esm2022/components/expansion-panel/section/expansion-panel-section.component.mjs +3 -3
- package/esm2022/components/gap/gap.component.mjs +50 -17
- package/esm2022/components/indicator-select/indicator-select.component.mjs +35 -0
- package/esm2022/components/list-select/list-select.component.mjs +101 -0
- package/esm2022/components/row-list-desktop/row-list-desktop.component.mjs +2 -2
- package/esm2022/directives/edit-dialog.base.mjs +41 -0
- package/esm2022/directives/row-list.base.mjs +4 -4
- package/esm2022/nr-ngx-component-lib.module.mjs +28 -6
- package/esm2022/public-api.mjs +6 -1
- package/esm2022/services/dialog.service.mjs +35 -0
- package/fesm2022/bcgov-nr-ngx-component-lib.mjs +330 -50
- package/fesm2022/bcgov-nr-ngx-component-lib.mjs.map +1 -1
- package/nr-ngx-component-lib.module.d.ts +27 -23
- package/package.json +1 -1
- package/public-api.d.ts +5 -0
- package/services/dialog.service.d.ts +12 -0
|
@@ -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:
|
|
5
|
-
vertical:
|
|
6
|
-
divider:
|
|
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
|
|
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
|
|
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,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZXhwYW5zaW9uLXBhbmVsL3NlY3Rpb24vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZXhwYW5zaW9uLXBhbmVsL3NlY3Rpb24vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7QUFPekQsTUFBTSxPQUFPLDhCQUErQixTQUFRLFFBQVE7K0dBQS9DLDhCQUE4QjttR0FBOUIsOEJBQThCLDJGQ1IzQyxvREFHQTs7NEZES2EsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNJLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4uLy4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb25cIixcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXhwYW5zaW9uLXBhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9leHBhbnNpb24tcGFuZWwtc2VjdGlvbi5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEV4cGFuc2lvblBhbmVsU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIHtcbn1cbiIsIjxucmNsLWdhcCBkaXZpZGVyLz5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
|
|
@@ -1,31 +1,64 @@
|
|
|
1
|
-
import {
|
|
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.
|
|
8
|
-
|
|
9
|
-
|
|
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: "
|
|
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
|
-
|
|
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
|
-
|
|
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==
|