@porscheinformatik/clr-addons 15.5.1 → 15.5.3

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.
@@ -4,11 +4,11 @@
4
4
  * The full license information can be found in LICENSE in the root directory of this project.
5
5
  */
6
6
  import { Component, ContentChildren, EventEmitter, Input, Output, QueryList, TemplateRef, ViewChildren, } from '@angular/core';
7
- import { ClarityIcons, plusIcon, trashIcon } from '@cds/core/icon';
7
+ import { ClarityIcons, plusCircleIcon, trashIcon } from '@cds/core/icon';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/common";
10
10
  import * as i2 from "@clr/angular";
11
- ClarityIcons.addIcons(trashIcon, plusIcon);
11
+ ClarityIcons.addIcons(trashIcon, plusCircleIcon);
12
12
  export class ClrGenericQuickList {
13
13
  constructor() {
14
14
  this.allItems = [];
@@ -56,10 +56,10 @@ export class ClrGenericQuickList {
56
56
  }
57
57
  }
58
58
  ClrGenericQuickList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrGenericQuickList, deps: [], target: i0.ɵɵFactoryTarget.Component });
59
- ClrGenericQuickList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrGenericQuickList, selector: "clr-generic-quick-list", inputs: { allItems: ["clrAllItems", "allItems"], addLabel: ["clrAddLabel", "addLabel"], addPossible: ["clrAddPossible", "addPossible"], blankItem: ["clrBlankItem", "blankItem"], controlClasses: ["clrControlClasses", "controlClasses"], required: ["clrMandatory", "required"], readonly: "readonly", compactMode: "compactMode" }, outputs: { added: "clrAdded", removed: "clrRemoved" }, host: { properties: { "class.generic-quick-list": "true", "class.clr-form-control": "true" } }, queries: [{ propertyName: "itemTemplate", predicate: TemplateRef }], viewQueries: [{ propertyName: "itemRows", predicate: ["row"], descendants: true }], ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] });
59
+ ClrGenericQuickList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrGenericQuickList, selector: "clr-generic-quick-list", inputs: { allItems: ["clrAllItems", "allItems"], addLabel: ["clrAddLabel", "addLabel"], addPossible: ["clrAddPossible", "addPossible"], blankItem: ["clrBlankItem", "blankItem"], controlClasses: ["clrControlClasses", "controlClasses"], required: ["clrMandatory", "required"], readonly: "readonly", compactMode: "compactMode" }, outputs: { added: "clrAdded", removed: "clrRemoved" }, host: { properties: { "class.generic-quick-list": "true", "class.clr-form-control": "true" } }, queries: [{ propertyName: "itemTemplate", predicate: TemplateRef }], viewQueries: [{ propertyName: "itemRows", predicate: ["row"], descendants: true }], ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }] });
60
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrGenericQuickList, decorators: [{
61
61
  type: Component,
62
- args: [{ selector: 'clr-generic-quick-list', host: { '[class.generic-quick-list]': 'true', '[class.clr-form-control]': 'true' }, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
62
+ args: [{ selector: 'clr-generic-quick-list', host: { '[class.generic-quick-list]': 'true', '[class.clr-form-control]': 'true' }, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
63
63
  }], propDecorators: { allItems: [{
64
64
  type: Input,
65
65
  args: ['clrAllItems']
@@ -95,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
95
95
  type: ViewChildren,
96
96
  args: ['row']
97
97
  }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1xdWljay1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZ2VuZXJpYy1xdWljay1saXN0L2dlbmVyaWMtcXVpY2stbGlzdC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2dlbmVyaWMtcXVpY2stbGlzdC9nZW5lcmljLXF1aWNrLWxpc3QuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFDWCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFFbkUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFXM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUxoQztRQU13QixhQUFRLEdBQUcsRUFBUyxDQUFDO1FBQ3JCLGFBQVEsR0FBRyxvQkFBb0IsQ0FBQztRQUM3QixnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNyQixjQUFTLEdBQUcsRUFBUyxDQUFDO1FBRXRCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFL0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFVCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6QixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQWtEcEQ7SUF6Q0MsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsT0FBTztRQUNMLE1BQU0sT0FBTyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEMsT0FBTyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQU87UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQzFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQTBCLEVBQUUsRUFBRTtZQUM3RCxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRTtnQkFDakQsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUN6RCxxRUFBcUUsQ0FDdEUsQ0FBQztnQkFDRixJQUFJLGNBQWMsRUFBRTtvQkFDbEIsc0dBQXNHO29CQUN0RyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7aUJBQzFDO2FBQ0Y7WUFDRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7Z0hBNURVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHlqQkFhYixXQUFXLGlIQzlDOUIsa3FEQStDQTsyRkRkYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0Usd0JBQXdCLFFBQzVCLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sRUFBRTs4QkFJNUQsUUFBUTtzQkFBN0IsS0FBSzt1QkFBQyxhQUFhO2dCQUNFLFFBQVE7c0JBQTdCLEtBQUs7dUJBQUMsYUFBYTtnQkFDSyxXQUFXO3NCQUFuQyxLQUFLO3VCQUFDLGdCQUFnQjtnQkFDQSxTQUFTO3NCQUEvQixLQUFLO3VCQUFDLGNBQWM7Z0JBQ08sY0FBYztzQkFBekMsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBQ0gsUUFBUTtzQkFBOUIsS0FBSzt1QkFBQyxjQUFjO2dCQUNaLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFYyxLQUFLO3NCQUF4QixNQUFNO3VCQUFDLFVBQVU7Z0JBQ0ksT0FBTztzQkFBNUIsTUFBTTt1QkFBQyxZQUFZO2dCQUVVLFlBQVk7c0JBQXpDLGVBQWU7dUJBQUMsV0FBVztnQkFDUCxRQUFRO3NCQUE1QixZQUFZO3VCQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4IFBvcnNjaGUgSW5mb3JtYXRpay4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGFyaXR5SWNvbnMsIHBsdXNJY29uLCB0cmFzaEljb24gfSBmcm9tICdAY2RzL2NvcmUvaWNvbic7XG5cbkNsYXJpdHlJY29ucy5hZGRJY29ucyh0cmFzaEljb24sIHBsdXNJY29uKTtcblxuZXhwb3J0IGludGVyZmFjZSBDbHJHZW5lcmljUXVpY2tMaXN0SXRlbSB7XG4gIGlkOiBhbnk7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci1nZW5lcmljLXF1aWNrLWxpc3QnLFxuICBob3N0OiB7ICdbY2xhc3MuZ2VuZXJpYy1xdWljay1saXN0XSc6ICd0cnVlJywgJ1tjbGFzcy5jbHItZm9ybS1jb250cm9sXSc6ICd0cnVlJyB9LFxuICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1xdWljay1saXN0Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBDbHJHZW5lcmljUXVpY2tMaXN0PFQgZXh0ZW5kcyBDbHJHZW5lcmljUXVpY2tMaXN0SXRlbT4gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgnY2xyQWxsSXRlbXMnKSBhbGxJdGVtcyA9IFtdIGFzIFRbXTtcbiAgQElucHV0KCdjbHJBZGRMYWJlbCcpIGFkZExhYmVsID0gJ0FERCAoVHJhbnNsYXRlIG1lKSc7XG4gIEBJbnB1dCgnY2xyQWRkUG9zc2libGUnKSBhZGRQb3NzaWJsZSA9IHRydWU7XG4gIEBJbnB1dCgnY2xyQmxhbmtJdGVtJykgYmxhbmtJdGVtID0ge30gYXMgYW55O1xuICBASW5wdXQoJ2NsckNvbnRyb2xDbGFzc2VzJykgY29udHJvbENsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCdjbHJNYW5kYXRvcnknKSByZXF1aXJlZCA9IGZhbHNlO1xuICBASW5wdXQoKSByZWFkb25seTogc3RyaW5nO1xuICBASW5wdXQoKSBjb21wYWN0TW9kZSA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoJ2NsckFkZGVkJykgYWRkZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoJ2NsclJlbW92ZWQnKSByZW1vdmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVSZWYpIGl0ZW1UZW1wbGF0ZTogUXVlcnlMaXN0PFRlbXBsYXRlUmVmPGFueT4+O1xuICBAVmlld0NoaWxkcmVuKCdyb3cnKSBpdGVtUm93czogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuXG4gIHJvd0NvdW50Rm9jdXM6IG51bWJlcjtcblxuICBwcml2YXRlIHRpbWVvdXQ6IE5vZGVKUy5UaW1lb3V0O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlcXVpcmVkICYmIHRoaXMuYWxsSXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmFkZEl0ZW0oKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy50aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLnNldEZvY3VzT25BZGQoKSk7XG4gIH1cblxuICBhZGRJdGVtKCk6IHZvaWQge1xuICAgIGNvbnN0IG5ld0l0ZW0gPSB7IC4uLnRoaXMuYmxhbmtJdGVtIH07XG4gICAgbmV3SXRlbS5pZCA9IE1hdGguY2VpbChNYXRoLnJhbmRvbSgpICogMTAwMDAwKTtcbiAgICB0aGlzLmFsbEl0ZW1zLnB1c2gobmV3SXRlbSk7XG4gICAgdGhpcy5hZGRlZC5lbWl0KG5ld0l0ZW0pO1xuICB9XG5cbiAgcmVtb3ZlSXRlbShpdGVtOiBUKTogdm9pZCB7XG4gICAgdGhpcy5hbGxJdGVtcy5zcGxpY2UodGhpcy5hbGxJdGVtcy5pbmRleE9mKGl0ZW0pLCAxKTtcbiAgICB0aGlzLnJlbW92ZWQuZW1pdChpdGVtKTtcbiAgfVxuXG4gIHNldEZvY3VzT25BZGQoKTogdm9pZCB7XG4gICAgdGhpcy5yb3dDb3VudEZvY3VzID0gdGhpcy5pdGVtUm93cy5sZW5ndGg7XG4gICAgdGhpcy5pdGVtUm93cy5jaGFuZ2VzLnN1YnNjcmliZSgoZWxzOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj4pID0+IHtcbiAgICAgIGlmIChlbHMubGVuZ3RoID4gdGhpcy5yb3dDb3VudEZvY3VzICYmICEhZWxzLmxhc3QpIHtcbiAgICAgICAgY29uc3QgZmlyc3RGb2N1c2FibGUgPSBlbHMubGFzdC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICAgXCJidXR0b24sIGEsIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhLCBbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9Jy0xJ10pXCJcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGZpcnN0Rm9jdXNhYmxlKSB7XG4gICAgICAgICAgLy8gbmVlZGVkIGlmIHRoZSBmaXJzdCBmb2N1c2FibGUgYmluZHMgdG8gZm9jdXMgYXR0cmlidXRlIC0+IEV4cHJlc3Npb25IYXNDaGFuZ2VkQWZ0ZXJJdEhhc0JlZW5DaGVja2VkXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiBmaXJzdEZvY3VzYWJsZS5mb2N1cygpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5yb3dDb3VudEZvY3VzID0gZWxzLmxlbmd0aDtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXQpO1xuICB9XG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJsYWJlbFwiPjwvbmctY29udGVudD5cbjxkaXYgY2xhc3M9XCJjbHItY29udHJvbC1jb250YWluZXJcIiBbbmdDbGFzc109XCJjb250cm9sQ2xhc3Nlc1wiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCIuaGVhZGVyLWNvbnRhaW5lclwiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGFsbEl0ZW1zOyBpbmRleCBhcyBpXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRyb2xzLXdyYXBwZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9scy1jb250YWluZXJcIiAqbmdJZj1cIml0ZW1UZW1wbGF0ZVwiICNyb3c+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGUuZ2V0KDApOyBjb250ZXh0OiB7JGltcGxpY2l0Oml0ZW19XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCIhKHJlYWRvbmx5IHx8IHJlYWRvbmx5ID09PSAnJylcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJidG4gYnRuLWljb24gYnRuLWxpbmsgYnRuLXRyYXNoXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieydidG4tdHJhc2gtZXh0JzogIShjb21wYWN0TW9kZSAmJiBpID09PSBhbGxJdGVtcy5sZW5ndGggLSAxKX1cIlxuICAgICAgICBbZGlzYWJsZWRdPVwicmVxdWlyZWQgJiYgYWxsSXRlbXMubGVuZ3RoID09PSAxXCJcbiAgICAgICAgKGNsaWNrKT1cInJlbW92ZUl0ZW0oaXRlbSlcIlxuICAgICAgPlxuICAgICAgICA8Y2RzLWljb24gc2hhcGU9XCJ0cmFzaFwiPjwvY2RzLWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCIhKHJlYWRvbmx5IHx8IHJlYWRvbmx5ID09PSAnJykgJiYgY29tcGFjdE1vZGUgJiYgaSA9PT0gYWxsSXRlbXMubGVuZ3RoIC0gMVwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cImJ0biBidG4taWNvbiBidG4tbGluayBxdWljay1saXN0LWFkZGNvbXBhY3RcIlxuICAgICAgICAoY2xpY2spPVwiYWRkSXRlbSgpXCJcbiAgICAgID5cbiAgICAgICAgPGNkcy1pY29uIHNoYXBlPVwicGx1c1wiPjwvY2RzLWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cIiEocmVhZG9ubHkgfHwgcmVhZG9ubHkgPT09ICcnKSAmJiBhbGxJdGVtcy5sZW5ndGggPT09IDAgJiYgY29tcGFjdE1vZGVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwiYnRuIGJ0bi1pY29uIGJ0bi1saW5rIHF1aWNrLWxpc3QtYWRkY29tcGFjdFwiXG4gICAgKGNsaWNrKT1cImFkZEl0ZW0oKVwiXG4gID5cbiAgICA8Y2RzLWljb24gc2hhcGU9XCJwbHVzXCI+PC9jZHMtaWNvbj5cbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cIiEocmVhZG9ubHkgfHwgcmVhZG9ubHkgPT09ICcnKSAmJiAhY29tcGFjdE1vZGVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rIGJ0bi1zbSBidG4tYWRkXCJcbiAgICAoY2xpY2spPVwiYWRkSXRlbSgpXCJcbiAgICBbZGlzYWJsZWRdPVwiIWFkZFBvc3NpYmxlXCJcbiAgPlxuICAgIHt7YWRkTGFiZWx9fVxuICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1xdWljay1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZ2VuZXJpYy1xdWljay1saXN0L2dlbmVyaWMtcXVpY2stbGlzdC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2dlbmVyaWMtcXVpY2stbGlzdC9nZW5lcmljLXF1aWNrLWxpc3QuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFDWCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFFekUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFXakQsTUFBTSxPQUFPLG1CQUFtQjtJQUxoQztRQU13QixhQUFRLEdBQUcsRUFBUyxDQUFDO1FBQ3JCLGFBQVEsR0FBRyxvQkFBb0IsQ0FBQztRQUM3QixnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNyQixjQUFTLEdBQUcsRUFBUyxDQUFDO1FBRXRCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFL0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFVCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6QixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQWtEcEQ7SUF6Q0MsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsT0FBTztRQUNMLE1BQU0sT0FBTyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEMsT0FBTyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQU87UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQzFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQTBCLEVBQUUsRUFBRTtZQUM3RCxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRTtnQkFDakQsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUN6RCxxRUFBcUUsQ0FDdEUsQ0FBQztnQkFDRixJQUFJLGNBQWMsRUFBRTtvQkFDbEIsc0dBQXNHO29CQUN0RyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7aUJBQzFDO2FBQ0Y7WUFDRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7Z0hBNURVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHlqQkFhYixXQUFXLGlIQzlDOUIsc3ZEQWlEQTsyRkRoQmEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLHdCQUF3QixRQUM1QixFQUFFLDRCQUE0QixFQUFFLE1BQU0sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLEVBQUU7OEJBSTVELFFBQVE7c0JBQTdCLEtBQUs7dUJBQUMsYUFBYTtnQkFDRSxRQUFRO3NCQUE3QixLQUFLO3VCQUFDLGFBQWE7Z0JBQ0ssV0FBVztzQkFBbkMsS0FBSzt1QkFBQyxnQkFBZ0I7Z0JBQ0EsU0FBUztzQkFBL0IsS0FBSzt1QkFBQyxjQUFjO2dCQUNPLGNBQWM7c0JBQXpDLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUNILFFBQVE7c0JBQTlCLEtBQUs7dUJBQUMsY0FBYztnQkFDWixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRWMsS0FBSztzQkFBeEIsTUFBTTt1QkFBQyxVQUFVO2dCQUNJLE9BQU87c0JBQTVCLE1BQU07dUJBQUMsWUFBWTtnQkFFVSxZQUFZO3NCQUF6QyxlQUFlO3VCQUFDLFdBQVc7Z0JBQ1AsUUFBUTtzQkFBNUIsWUFBWTt1QkFBQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOCBQb3JzY2hlIEluZm9ybWF0aWsuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xhcml0eUljb25zLCBwbHVzQ2lyY2xlSWNvbiwgdHJhc2hJY29uIH0gZnJvbSAnQGNkcy9jb3JlL2ljb24nO1xuXG5DbGFyaXR5SWNvbnMuYWRkSWNvbnModHJhc2hJY29uLCBwbHVzQ2lyY2xlSWNvbik7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2xyR2VuZXJpY1F1aWNrTGlzdEl0ZW0ge1xuICBpZDogYW55O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjbHItZ2VuZXJpYy1xdWljay1saXN0JyxcbiAgaG9zdDogeyAnW2NsYXNzLmdlbmVyaWMtcXVpY2stbGlzdF0nOiAndHJ1ZScsICdbY2xhc3MuY2xyLWZvcm0tY29udHJvbF0nOiAndHJ1ZScgfSxcbiAgdGVtcGxhdGVVcmw6ICcuL2dlbmVyaWMtcXVpY2stbGlzdC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyR2VuZXJpY1F1aWNrTGlzdDxUIGV4dGVuZHMgQ2xyR2VuZXJpY1F1aWNrTGlzdEl0ZW0+IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoJ2NsckFsbEl0ZW1zJykgYWxsSXRlbXMgPSBbXSBhcyBUW107XG4gIEBJbnB1dCgnY2xyQWRkTGFiZWwnKSBhZGRMYWJlbCA9ICdBREQgKFRyYW5zbGF0ZSBtZSknO1xuICBASW5wdXQoJ2NsckFkZFBvc3NpYmxlJykgYWRkUG9zc2libGUgPSB0cnVlO1xuICBASW5wdXQoJ2NsckJsYW5rSXRlbScpIGJsYW5rSXRlbSA9IHt9IGFzIGFueTtcbiAgQElucHV0KCdjbHJDb250cm9sQ2xhc3NlcycpIGNvbnRyb2xDbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgnY2xyTWFuZGF0b3J5JykgcmVxdWlyZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgcmVhZG9ubHk6IHN0cmluZztcbiAgQElucHV0KCkgY29tcGFjdE1vZGUgPSBmYWxzZTtcblxuICBAT3V0cHV0KCdjbHJBZGRlZCcpIGFkZGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCdjbHJSZW1vdmVkJykgcmVtb3ZlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAQ29udGVudENoaWxkcmVuKFRlbXBsYXRlUmVmKSBpdGVtVGVtcGxhdGU6IFF1ZXJ5TGlzdDxUZW1wbGF0ZVJlZjxhbnk+PjtcbiAgQFZpZXdDaGlsZHJlbigncm93JykgaXRlbVJvd3M6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICByb3dDb3VudEZvY3VzOiBudW1iZXI7XG5cbiAgcHJpdmF0ZSB0aW1lb3V0OiBOb2RlSlMuVGltZW91dDtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiB0aGlzLmFsbEl0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5hZGRJdGVtKCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZXRGb2N1c09uQWRkKCkpO1xuICB9XG5cbiAgYWRkSXRlbSgpOiB2b2lkIHtcbiAgICBjb25zdCBuZXdJdGVtID0geyAuLi50aGlzLmJsYW5rSXRlbSB9O1xuICAgIG5ld0l0ZW0uaWQgPSBNYXRoLmNlaWwoTWF0aC5yYW5kb20oKSAqIDEwMDAwMCk7XG4gICAgdGhpcy5hbGxJdGVtcy5wdXNoKG5ld0l0ZW0pO1xuICAgIHRoaXMuYWRkZWQuZW1pdChuZXdJdGVtKTtcbiAgfVxuXG4gIHJlbW92ZUl0ZW0oaXRlbTogVCk6IHZvaWQge1xuICAgIHRoaXMuYWxsSXRlbXMuc3BsaWNlKHRoaXMuYWxsSXRlbXMuaW5kZXhPZihpdGVtKSwgMSk7XG4gICAgdGhpcy5yZW1vdmVkLmVtaXQoaXRlbSk7XG4gIH1cblxuICBzZXRGb2N1c09uQWRkKCk6IHZvaWQge1xuICAgIHRoaXMucm93Q291bnRGb2N1cyA9IHRoaXMuaXRlbVJvd3MubGVuZ3RoO1xuICAgIHRoaXMuaXRlbVJvd3MuY2hhbmdlcy5zdWJzY3JpYmUoKGVsczogUXVlcnlMaXN0PEVsZW1lbnRSZWY+KSA9PiB7XG4gICAgICBpZiAoZWxzLmxlbmd0aCA+IHRoaXMucm93Q291bnRGb2N1cyAmJiAhIWVscy5sYXN0KSB7XG4gICAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlID0gZWxzLmxhc3QubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgIFwiYnV0dG9uLCBhLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PSctMSddKVwiXG4gICAgICAgICk7XG4gICAgICAgIGlmIChmaXJzdEZvY3VzYWJsZSkge1xuICAgICAgICAgIC8vIG5lZWRlZCBpZiB0aGUgZmlyc3QgZm9jdXNhYmxlIGJpbmRzIHRvIGZvY3VzIGF0dHJpYnV0ZSAtPiBFeHByZXNzaW9uSGFzQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZFxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gZmlyc3RGb2N1c2FibGUuZm9jdXMoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMucm93Q291bnRGb2N1cyA9IGVscy5sZW5ndGg7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0KTtcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwibGFiZWxcIj48L25nLWNvbnRlbnQ+XG48ZGl2IGNsYXNzPVwiY2xyLWNvbnRyb2wtY29udGFpbmVyXCIgW25nQ2xhc3NdPVwiY29udHJvbENsYXNzZXNcIj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiLmhlYWRlci1jb250YWluZXJcIj48L25nLWNvbnRlbnQ+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBhbGxJdGVtczsgaW5kZXggYXMgaVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb250cm9scy13cmFwcGVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29udHJvbHMtY29udGFpbmVyXCIgKm5nSWY9XCJpdGVtVGVtcGxhdGVcIiAjcm93PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlLmdldCgwKTsgY29udGV4dDogeyRpbXBsaWNpdDppdGVtfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1pY29uIGJ0bi1saW5rIGJ0bi10cmFzaFwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnYnRuLXRyYXNoLWV4dCc6ICEoY29tcGFjdE1vZGUgJiYgaSA9PT0gYWxsSXRlbXMubGVuZ3RoIC0gMSl9XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInJlcXVpcmVkICYmIGFsbEl0ZW1zLmxlbmd0aCA9PT0gMVwiXG4gICAgICAgIChjbGljayk9XCJyZW1vdmVJdGVtKGl0ZW0pXCJcbiAgICAgID5cbiAgICAgICAgPGNkcy1pY29uIHNoYXBlPVwidHJhc2hcIj48L2Nkcy1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpICYmIGNvbXBhY3RNb2RlICYmIGkgPT09IGFsbEl0ZW1zLmxlbmd0aCAtIDFcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJidG4gYnRuLWljb24gYnRuLWxpbmsgcXVpY2stbGlzdC1hZGRjb21wYWN0XCJcbiAgICAgICAgKGNsaWNrKT1cImFkZEl0ZW0oKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhYWRkUG9zc2libGVcIlxuICAgICAgPlxuICAgICAgICA8Y2RzLWljb24gc2hhcGU9XCJwbHVzLWNpcmNsZVwiPjwvY2RzLWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cIiEocmVhZG9ubHkgfHwgcmVhZG9ubHkgPT09ICcnKSAmJiBhbGxJdGVtcy5sZW5ndGggPT09IDAgJiYgY29tcGFjdE1vZGVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwiYnRuIGJ0bi1pY29uIGJ0bi1saW5rIHF1aWNrLWxpc3QtYWRkY29tcGFjdFwiXG4gICAgKGNsaWNrKT1cImFkZEl0ZW0oKVwiXG4gICAgW2Rpc2FibGVkXT1cIiFhZGRQb3NzaWJsZVwiXG4gID5cbiAgICA8Y2RzLWljb24gc2hhcGU9XCJwbHVzLWNpcmNsZVwiPjwvY2RzLWljb24+XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uXG4gICAgKm5nSWY9XCIhKHJlYWRvbmx5IHx8IHJlYWRvbmx5ID09PSAnJykgJiYgIWNvbXBhY3RNb2RlXCJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cImJ0biBidG4tbGluayBidG4tc20gYnRuLWFkZFwiXG4gICAgKGNsaWNrKT1cImFkZEl0ZW0oKVwiXG4gICAgW2Rpc2FibGVkXT1cIiFhZGRQb3NzaWJsZVwiXG4gID5cbiAgICB7e2FkZExhYmVsfX1cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
@@ -75,7 +75,7 @@ export class ClrNotification {
75
75
  }
76
76
  }
77
77
  ClrNotification.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrNotification, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
78
- ClrNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrNotification, selector: "clr-notification", inputs: { timeout: "timeout", notificationType: "notificationType", dismissable: "dismissable", progressbar: "progressbar" }, outputs: { closed: "closed" }, host: { properties: { "class.notification": "true" } }, viewQueries: [{ propertyName: "clrAlert", first: true, predicate: ClrAlert, descendants: true, static: true }], ngImport: i0, template: "<div class=\"notification__wrapper\" [@slideDown] [@move]=\"state\" [@fade]=\"state\">\n <div class=\"progress top\" [ngClass]=\"notificationType\" *ngIf=\"progressbar && timeout > 0\">\n <progress class=\"progress\" [max]=\"timeout\" [value]=\"progressStatus\"></progress>\n </div>\n <clr-alert\n [clrAlertType]=\"notificationType\"\n [clrAlertAppLevel]=\"true\"\n [clrAlertClosable]=\"dismissable\"\n (clrAlertClosedChange)=\"close()\"\n >\n <div class=\"alert-item\">\n <span class=\"alert-text\">\n <ng-content select=\"[clr-notification-message]\"></ng-content>\n </span>\n </div>\n </clr-alert>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertClosed", "clrAlertType", "clrAlertIcon"], outputs: ["clrAlertClosedChange"] }, { kind: "directive", type: i2.ClrAlertText, selector: ".alert-text" }], animations: [
78
+ ClrNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrNotification, selector: "clr-notification", inputs: { timeout: "timeout", notificationType: "notificationType", dismissable: "dismissable", progressbar: "progressbar" }, outputs: { closed: "closed" }, host: { properties: { "class.notification": "true" } }, viewQueries: [{ propertyName: "clrAlert", first: true, predicate: ClrAlert, descendants: true, static: true }], ngImport: i0, template: "<div class=\"notification__wrapper\" [@slideDown] [@move]=\"state\" [@fade]=\"state\">\n <div class=\"progress top\" [ngClass]=\"notificationType\" *ngIf=\"progressbar && timeout > 0\">\n <progress class=\"progress\" [max]=\"timeout\" [value]=\"progressStatus\"></progress>\n </div>\n <clr-alert\n [clrAlertType]=\"notificationType\"\n [clrAlertAppLevel]=\"true\"\n [clrAlertClosable]=\"dismissable\"\n (clrAlertClosedChange)=\"close()\"\n >\n <div class=\"alert-item\">\n <span class=\"alert-text\">\n <ng-content select=\"[clr-notification-message]\"></ng-content>\n </span>\n </div>\n </clr-alert>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "directive", type: i2.ClrAlertText, selector: ".alert-text" }], animations: [
79
79
  trigger('slideDown', [
80
80
  transition(':enter', [
81
81
  style({ transform: 'translateY(-200%)' }),
@@ -4,18 +4,19 @@
4
4
  * The full license information can be found in LICENSE in the root directory of this project.
5
5
  */
6
6
  import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
7
- import { ClarityIcons, trashIcon, plusIcon } from '@cds/core/icon';
7
+ import { ClarityIcons, plusCircleIcon, trashIcon } from '@cds/core/icon';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/common";
10
10
  import * as i2 from "@angular/forms";
11
11
  import * as i3 from "@clr/angular";
12
- ClarityIcons.addIcons(trashIcon, plusIcon);
12
+ ClarityIcons.addIcons(trashIcon, plusCircleIcon);
13
13
  export class ClrAddOption {
14
14
  constructor() {
15
15
  this.mandatory = false;
16
16
  this.allValues = [];
17
17
  this.excludedValues = [];
18
18
  this.disabled = false;
19
+ this.disableAddButton = true;
19
20
  this.showAddButton = false;
20
21
  this.valueChanged = new EventEmitter();
21
22
  this.remove = new EventEmitter();
@@ -40,10 +41,10 @@ export class ClrAddOption {
40
41
  }
41
42
  }
42
43
  ClrAddOption.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrAddOption, deps: [], target: i0.ɵɵFactoryTarget.Component });
43
- ClrAddOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrAddOption, selector: "clr-add-option", inputs: { blankOption: "blankOption", value: "value", mandatory: "mandatory", allValues: "allValues", excludedValues: "excludedValues", readonly: "readonly", disabled: "disabled", showAddButton: "showAddButton" }, outputs: { valueChanged: "valueChanged", remove: "remove", add: "add" }, host: { properties: { "class.quick-list-option": "true" } }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n>\n <cds-icon shape=\"plus\"></cds-icon>\n</button>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.CdsIconCustomTag, selector: "cds-icon" }] });
44
+ ClrAddOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrAddOption, selector: "clr-add-option", inputs: { blankOption: "blankOption", value: "value", mandatory: "mandatory", allValues: "allValues", excludedValues: "excludedValues", readonly: "readonly", disabled: "disabled", disableAddButton: "disableAddButton", showAddButton: "showAddButton" }, outputs: { valueChanged: "valueChanged", remove: "remove", add: "add" }, host: { properties: { "class.quick-list-option": "true" } }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n [disabled]=\"disableAddButton\"\n>\n <cds-icon shape=\"plus-circle\"></cds-icon>\n</button>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.CdsIconCustomTag, selector: "cds-icon" }] });
44
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrAddOption, decorators: [{
45
46
  type: Component,
46
- args: [{ selector: 'clr-add-option', host: { '[class.quick-list-option]': 'true' }, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n>\n <cds-icon shape=\"plus\"></cds-icon>\n</button>\n" }]
47
+ args: [{ selector: 'clr-add-option', host: { '[class.quick-list-option]': 'true' }, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n [disabled]=\"disableAddButton\"\n>\n <cds-icon shape=\"plus-circle\"></cds-icon>\n</button>\n" }]
47
48
  }], propDecorators: { blankOption: [{
48
49
  type: Input
49
50
  }], value: [{
@@ -58,6 +59,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
58
59
  type: Input
59
60
  }], disabled: [{
60
61
  type: Input
62
+ }], disableAddButton: [{
63
+ type: Input
61
64
  }], showAddButton: [{
62
65
  type: Input
63
66
  }], valueChanged: [{
@@ -70,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
70
73
  type: ViewChild,
71
74
  args: ['select', { static: false }]
72
75
  }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW9wdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvYWRkLW9wdGlvbi50cyIsIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvYWRkLW9wdGlvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRW5FLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBTzNDLE1BQU0sT0FBTyxZQUFZO0lBTHpCO1FBUVcsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQWdDLEVBQUUsQ0FBQztRQUM1QyxtQkFBYyxHQUFnQyxFQUFFLENBQUM7UUFFakQsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUVyQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUF3QixDQUFDO1FBQ3hELFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ2xDLFFBQUcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBeUIxQztJQXJCQyxJQUFJLGFBQWEsQ0FBQyxFQUFVO1FBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsU0FBUztRQUNQLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuRyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsY0FBYztRQUNaLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBa0MsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzRSxDQUFDOzt5R0FwQ1UsWUFBWTs2RkFBWixZQUFZLG9mQ2hCekIsZ3JDQWlDQTsyRkRqQmEsWUFBWTtrQkFMeEIsU0FBUzsrQkFDRSxnQkFBZ0IsUUFFcEIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLEVBQUU7OEJBR3BDLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLEdBQUc7c0JBQVosTUFBTTtnQkFFaUMsTUFBTTtzQkFBN0MsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIFBvcnNjaGUgSW5mb3JtYXRpay4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsclF1aWNrTGlzdFZhbHVlIH0gZnJvbSAnLi9hZGQtb3B0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xhcml0eUljb25zLCB0cmFzaEljb24sIHBsdXNJY29uIH0gZnJvbSAnQGNkcy9jb3JlL2ljb24nO1xuXG5DbGFyaXR5SWNvbnMuYWRkSWNvbnModHJhc2hJY29uLCBwbHVzSWNvbik7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci1hZGQtb3B0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1vcHRpb24uaHRtbCcsXG4gIGhvc3Q6IHsgJ1tjbGFzcy5xdWljay1saXN0LW9wdGlvbl0nOiAndHJ1ZScgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyQWRkT3B0aW9uPFQ+IHtcbiAgQElucHV0KCkgYmxhbmtPcHRpb246IENsclF1aWNrTGlzdFZhbHVlPFQ+O1xuICBASW5wdXQoKSB2YWx1ZTogQ2xyUXVpY2tMaXN0VmFsdWU8VD47XG4gIEBJbnB1dCgpIG1hbmRhdG9yeSA9IGZhbHNlO1xuICBASW5wdXQoKSBhbGxWYWx1ZXM6IEFycmF5PENsclF1aWNrTGlzdFZhbHVlPFQ+PiA9IFtdO1xuICBASW5wdXQoKSBleGNsdWRlZFZhbHVlczogQXJyYXk8Q2xyUXVpY2tMaXN0VmFsdWU8VD4+ID0gW107XG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dBZGRCdXR0b24gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxDbHJRdWlja0xpc3RWYWx1ZTxUPj4oKTtcbiAgQE91dHB1dCgpIHJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGFkZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkKCdzZWxlY3QnLCB7IHN0YXRpYzogZmFsc2UgfSkgc2VsZWN0OiBFbGVtZW50UmVmO1xuXG4gIHNldCBzZWxlY3RlZFZhbHVlKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5hbGxWYWx1ZXMuZmluZCh2YWwgPT4gdmFsLmlkID09PSBpZCk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZWQuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZFZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWUuaWQ7XG4gIH1cblxuICBnZXRWYWx1ZXMoKTogQ2xyUXVpY2tMaXN0VmFsdWU8VD5bXSB7XG4gICAgY29uc3QgZXhjbHVkZWRJZHMgPSB0aGlzLmV4Y2x1ZGVkVmFsdWVzLmZpbHRlcih2YWwgPT4gdmFsLmlkICE9PSB0aGlzLnZhbHVlLmlkKS5tYXAodmFsID0+IHZhbC5pZCk7XG4gICAgcmV0dXJuIHRoaXMuYWxsVmFsdWVzLmZpbHRlcih2YWwgPT4gIWV4Y2x1ZGVkSWRzLmluY2x1ZGVzKHZhbC5pZCkpO1xuICB9XG5cbiAgdHJhc2hEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tYW5kYXRvcnkgJiYgdGhpcy5leGNsdWRlZFZhbHVlcy5sZW5ndGggPT09IDE7XG4gIH1cblxuICBmb2N1c0NvbXBvbmVudCgpOiB2b2lkIHtcbiAgICAhIXRoaXMuc2VsZWN0ICYmICh0aGlzLnNlbGVjdC5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmZvY3VzKCk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCIhKHJlYWRvbmx5IHx8IHJlYWRvbmx5ID09PSAnJyk7IGVsc2UgcmVhZG9ubHlWaWV3XCIgY2xhc3M9XCJjbHItc2VsZWN0LXdyYXBwZXIgcXVpY2stbGlzdC1pbnB1dFwiPlxuICA8c2VsZWN0ICNzZWxlY3QgY2xyLXNlbGVjdCBjbGFzcz1cInF1aWNrLWxpc3Qtc2VsZWN0XCIgbmFtZT1cIm9wdGlvbnNcIiBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVmFsdWVcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cbiAgICA8b3B0aW9uICpuZ0lmPVwiYmxhbmtPcHRpb24uaWQgPT09IHNlbGVjdGVkVmFsdWVcIiBbc2VsZWN0ZWRdPVwidHJ1ZVwiIFtkaXNhYmxlZF09XCJ0cnVlXCIgW25nVmFsdWVdPVwiYmxhbmtPcHRpb24uaWRcIj5cbiAgICAgIHt7YmxhbmtPcHRpb24ubGFiZWx9fVxuICAgIDwvb3B0aW9uPlxuICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHZhbCBvZiBnZXRWYWx1ZXMoKVwiIFtzZWxlY3RlZF09XCJ2YWwuaWQgPT09IHNlbGVjdGVkVmFsdWVcIiBbbmdWYWx1ZV09XCJ2YWwuaWRcIj5cbiAgICAgIHt7dmFsLmxhYmVsfX1cbiAgICA8L29wdGlvbj5cbiAgPC9zZWxlY3Q+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNyZWFkb25seVZpZXc+XG4gIDxzcGFuPnt7dmFsdWUubGFiZWx9fTwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxidXR0b25cbiAgKm5nSWY9XCIhKHJlYWRvbmx5IHx8IHJlYWRvbmx5ID09PSAnJylcIlxuICB0eXBlPVwiYnV0dG9uXCJcbiAgY2xhc3M9XCJidG4gYnRuLWljb24gYnRuLWxpbmsgcXVpY2stbGlzdC10cmFzaFwiXG4gIFtuZ0NsYXNzXT1cInsncXVpY2stbGlzdC10cmFzaC1leHQnOiAhc2hvd0FkZEJ1dHRvbn1cIlxuICBbZGlzYWJsZWRdPVwidHJhc2hEaXNhYmxlZCgpIHx8IGRpc2FibGVkXCJcbiAgKGNsaWNrKT1cInJlbW92ZS5lbWl0KClcIlxuPlxuICA8Y2RzLWljb24gc2hhcGU9XCJ0cmFzaFwiPjwvY2RzLWljb24+XG48L2J1dHRvbj5cbjxidXR0b25cbiAgKm5nSWY9XCIhKHJlYWRvbmx5IHx8IHJlYWRvbmx5ID09PSAnJykgJiYgc2hvd0FkZEJ1dHRvblwiXG4gIHR5cGU9XCJidXR0b25cIlxuICBjbGFzcz1cImJ0biBidG4taWNvbiBidG4tbGluayBxdWljay1saXN0LWFkZGNvbXBhY3RcIlxuICAoY2xpY2spPVwiYWRkLmVtaXQoKVwiXG4+XG4gIDxjZHMtaWNvbiBzaGFwZT1cInBsdXNcIj48L2Nkcy1pY29uPlxuPC9idXR0b24+XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW9wdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvYWRkLW9wdGlvbi50cyIsIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvYWRkLW9wdGlvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRXpFLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBT2pELE1BQU0sT0FBTyxZQUFZO0lBTHpCO1FBUVcsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQWdDLEVBQUUsQ0FBQztRQUM1QyxtQkFBYyxHQUFnQyxFQUFFLENBQUM7UUFFakQsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDeEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFckIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztRQUN4RCxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNsQyxRQUFHLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztLQXlCMUM7SUFyQkMsSUFBSSxhQUFhLENBQUMsRUFBVTtRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFNBQVM7UUFDUCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbkcsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGNBQWM7UUFDWixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWtDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDM0UsQ0FBQzs7eUdBckNVLFlBQVk7NkZBQVosWUFBWSwwaEJDaEJ6QiwwdENBa0NBOzJGRGxCYSxZQUFZO2tCQUx4QixTQUFTOytCQUNFLGdCQUFnQixRQUVwQixFQUFFLDJCQUEyQixFQUFFLE1BQU0sRUFBRTs4QkFHcEMsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLEdBQUc7c0JBQVosTUFBTTtnQkFFaUMsTUFBTTtzQkFBN0MsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIzIFBvcnNjaGUgSW5mb3JtYXRpay4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsclF1aWNrTGlzdFZhbHVlIH0gZnJvbSAnLi9hZGQtb3B0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xhcml0eUljb25zLCBwbHVzQ2lyY2xlSWNvbiwgdHJhc2hJY29uIH0gZnJvbSAnQGNkcy9jb3JlL2ljb24nO1xuXG5DbGFyaXR5SWNvbnMuYWRkSWNvbnModHJhc2hJY29uLCBwbHVzQ2lyY2xlSWNvbik7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci1hZGQtb3B0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1vcHRpb24uaHRtbCcsXG4gIGhvc3Q6IHsgJ1tjbGFzcy5xdWljay1saXN0LW9wdGlvbl0nOiAndHJ1ZScgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyQWRkT3B0aW9uPFQ+IHtcbiAgQElucHV0KCkgYmxhbmtPcHRpb246IENsclF1aWNrTGlzdFZhbHVlPFQ+O1xuICBASW5wdXQoKSB2YWx1ZTogQ2xyUXVpY2tMaXN0VmFsdWU8VD47XG4gIEBJbnB1dCgpIG1hbmRhdG9yeSA9IGZhbHNlO1xuICBASW5wdXQoKSBhbGxWYWx1ZXM6IEFycmF5PENsclF1aWNrTGlzdFZhbHVlPFQ+PiA9IFtdO1xuICBASW5wdXQoKSBleGNsdWRlZFZhbHVlczogQXJyYXk8Q2xyUXVpY2tMaXN0VmFsdWU8VD4+ID0gW107XG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRpc2FibGVBZGRCdXR0b24gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93QWRkQnV0dG9uID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Q2xyUXVpY2tMaXN0VmFsdWU8VD4+KCk7XG4gIEBPdXRwdXQoKSByZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBhZGQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgnc2VsZWN0JywgeyBzdGF0aWM6IGZhbHNlIH0pIHNlbGVjdDogRWxlbWVudFJlZjtcblxuICBzZXQgc2VsZWN0ZWRWYWx1ZShpZDogc3RyaW5nKSB7XG4gICAgdGhpcy52YWx1ZSA9IHRoaXMuYWxsVmFsdWVzLmZpbmQodmFsID0+IHZhbC5pZCA9PT0gaWQpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cblxuICBnZXQgc2VsZWN0ZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnZhbHVlLmlkO1xuICB9XG5cbiAgZ2V0VmFsdWVzKCk6IENsclF1aWNrTGlzdFZhbHVlPFQ+W10ge1xuICAgIGNvbnN0IGV4Y2x1ZGVkSWRzID0gdGhpcy5leGNsdWRlZFZhbHVlcy5maWx0ZXIodmFsID0+IHZhbC5pZCAhPT0gdGhpcy52YWx1ZS5pZCkubWFwKHZhbCA9PiB2YWwuaWQpO1xuICAgIHJldHVybiB0aGlzLmFsbFZhbHVlcy5maWx0ZXIodmFsID0+ICFleGNsdWRlZElkcy5pbmNsdWRlcyh2YWwuaWQpKTtcbiAgfVxuXG4gIHRyYXNoRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubWFuZGF0b3J5ICYmIHRoaXMuZXhjbHVkZWRWYWx1ZXMubGVuZ3RoID09PSAxO1xuICB9XG5cbiAgZm9jdXNDb21wb25lbnQoKTogdm9pZCB7XG4gICAgISF0aGlzLnNlbGVjdCAmJiAodGhpcy5zZWxlY3QubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50KS5mb2N1cygpO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpOyBlbHNlIHJlYWRvbmx5Vmlld1wiIGNsYXNzPVwiY2xyLXNlbGVjdC13cmFwcGVyIHF1aWNrLWxpc3QtaW5wdXRcIj5cbiAgPHNlbGVjdCAjc2VsZWN0IGNsci1zZWxlY3QgY2xhc3M9XCJxdWljay1saXN0LXNlbGVjdFwiIG5hbWU9XCJvcHRpb25zXCIgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFZhbHVlXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+XG4gICAgPG9wdGlvbiAqbmdJZj1cImJsYW5rT3B0aW9uLmlkID09PSBzZWxlY3RlZFZhbHVlXCIgW3NlbGVjdGVkXT1cInRydWVcIiBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtuZ1ZhbHVlXT1cImJsYW5rT3B0aW9uLmlkXCI+XG4gICAgICB7e2JsYW5rT3B0aW9uLmxhYmVsfX1cbiAgICA8L29wdGlvbj5cbiAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCB2YWwgb2YgZ2V0VmFsdWVzKClcIiBbc2VsZWN0ZWRdPVwidmFsLmlkID09PSBzZWxlY3RlZFZhbHVlXCIgW25nVmFsdWVdPVwidmFsLmlkXCI+XG4gICAgICB7e3ZhbC5sYWJlbH19XG4gICAgPC9vcHRpb24+XG4gIDwvc2VsZWN0PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjcmVhZG9ubHlWaWV3PlxuICA8c3Bhbj57e3ZhbHVlLmxhYmVsfX08L3NwYW4+XG48L25nLXRlbXBsYXRlPlxuXG48YnV0dG9uXG4gICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpXCJcbiAgdHlwZT1cImJ1dHRvblwiXG4gIGNsYXNzPVwiYnRuIGJ0bi1pY29uIGJ0bi1saW5rIHF1aWNrLWxpc3QtdHJhc2hcIlxuICBbbmdDbGFzc109XCJ7J3F1aWNrLWxpc3QtdHJhc2gtZXh0JzogIXNob3dBZGRCdXR0b259XCJcbiAgW2Rpc2FibGVkXT1cInRyYXNoRGlzYWJsZWQoKSB8fCBkaXNhYmxlZFwiXG4gIChjbGljayk9XCJyZW1vdmUuZW1pdCgpXCJcbj5cbiAgPGNkcy1pY29uIHNoYXBlPVwidHJhc2hcIj48L2Nkcy1pY29uPlxuPC9idXR0b24+XG48YnV0dG9uXG4gICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpICYmIHNob3dBZGRCdXR0b25cIlxuICB0eXBlPVwiYnV0dG9uXCJcbiAgY2xhc3M9XCJidG4gYnRuLWljb24gYnRuLWxpbmsgcXVpY2stbGlzdC1hZGRjb21wYWN0XCJcbiAgKGNsaWNrKT1cImFkZC5lbWl0KClcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZUFkZEJ1dHRvblwiXG4+XG4gIDxjZHMtaWNvbiBzaGFwZT1cInBsdXMtY2lyY2xlXCI+PC9jZHMtaWNvbj5cbjwvYnV0dG9uPlxuIl19
@@ -8,12 +8,12 @@ import { CLR_BLANK_OPTION } from './add-option.service';
8
8
  import { ClrAddOption } from './add-option';
9
9
  import { ClrAbstractFormComponent } from '../abstract-form-component/abstract-form-component';
10
10
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
11
- import { ClarityIcons, plusIcon } from '@cds/core/icon';
11
+ import { ClarityIcons, plusCircleIcon } from '@cds/core/icon';
12
12
  import * as i0 from "@angular/core";
13
13
  import * as i1 from "@angular/common";
14
14
  import * as i2 from "@clr/angular";
15
15
  import * as i3 from "./add-option";
16
- ClarityIcons.addIcons(plusIcon);
16
+ ClarityIcons.addIcons(plusCircleIcon);
17
17
  export class ClrQuickList extends ClrAbstractFormComponent {
18
18
  constructor() {
19
19
  super(...arguments);
@@ -83,7 +83,7 @@ ClrQuickList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
83
83
  useExisting: forwardRef(() => ClrQuickList),
84
84
  multi: true,
85
85
  },
86
- ], viewQueries: [{ propertyName: "options", predicate: ClrAddOption, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [showAddButton]=\"compactMode && !addNotPossible() && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i3.ClrAddOption, selector: "clr-add-option", inputs: ["blankOption", "value", "mandatory", "allValues", "excludedValues", "readonly", "disabled", "showAddButton"], outputs: ["valueChanged", "remove", "add"] }] });
86
+ ], viewQueries: [{ propertyName: "options", predicate: ClrAddOption, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [disableAddButton]=\"addNotPossible() || disabled\"\n [showAddButton]=\"compactMode && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i3.ClrAddOption, selector: "clr-add-option", inputs: ["blankOption", "value", "mandatory", "allValues", "excludedValues", "readonly", "disabled", "disableAddButton", "showAddButton"], outputs: ["valueChanged", "remove", "add"] }] });
87
87
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrQuickList, decorators: [{
88
88
  type: Component,
89
89
  args: [{ selector: 'clr-quick-list', host: { '[class.quick-list]': 'true' }, providers: [
@@ -92,7 +92,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
92
92
  useExisting: forwardRef(() => ClrQuickList),
93
93
  multi: true,
94
94
  },
95
- ], template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [showAddButton]=\"compactMode && !addNotPossible() && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
95
+ ], template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [disableAddButton]=\"addNotPossible() || disabled\"\n [showAddButton]=\"compactMode && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
96
96
  }], propDecorators: { blankOption: [{
97
97
  type: Input,
98
98
  args: ['clrBlankOption']
@@ -125,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
125
125
  type: ViewChildren,
126
126
  args: [ClrAddOption]
127
127
  }] } });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2stbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvcXVpY2stbGlzdC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvcXVpY2stbGlzdC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxnQkFBZ0IsRUFBcUIsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRXhELFlBQVksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7QUFjaEMsTUFBTSxPQUFPLFlBQWdCLFNBQVEsd0JBQXdCO0lBWjdEOztRQWEyQixnQkFBVyxHQUF5QixnQkFBZ0IsQ0FBQztRQUN2RCxjQUFTLEdBQTJCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDckIsV0FBTSxHQUEyQixFQUFFLENBQUM7UUFDbEMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNYLG1CQUFjLEdBQUcsZUFBZSxDQUFDO1FBRXBELGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ0Qsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBMEIsQ0FBQztRQUN4RCxxQkFBZ0IsR0FBRyxJQUFJLFlBQVks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LFlBQVksdUVDdkM1QixxdkNBcUNBOzJGRFZhLFlBQVk7a0JBWnhCLFNBQVM7K0JBQ0UsZ0JBQWdCLFFBQ3BCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLGFBRTNCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQzs0QkFDM0MsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OEJBR3dCLFdBQVc7c0JBQW5DLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQUNBLFNBQVM7c0JBQS9CLEtBQUs7dUJBQUMsY0FBYztnQkFDRSxTQUFTO3NCQUEvQixLQUFLO3VCQUFDLGNBQWM7Z0JBQ0QsTUFBTTtzQkFBekIsS0FBSzt1QkFBQyxXQUFXO2dCQUNJLFFBQVE7c0JBQTdCLEtBQUs7dUJBQUMsYUFBYTtnQkFDUSxjQUFjO3NCQUF6QyxLQUFLO3VCQUFDLG1CQUFtQjtnQkFDakIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNzQixhQUFhO3NCQUF4QyxNQUFNO3VCQUFDLGtCQUFrQjtnQkFDSyxnQkFBZ0I7c0JBQTlDLE1BQU07dUJBQUMscUJBQXFCO2dCQUVELE9BQU87c0JBQWxDLFlBQVk7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMyBQb3JzY2hlIEluZm9ybWF0aWsuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDTFJfQkxBTktfT1BUSU9OLCBDbHJRdWlja0xpc3RWYWx1ZSB9IGZyb20gJy4vYWRkLW9wdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IENsckFkZE9wdGlvbiB9IGZyb20gJy4vYWRkLW9wdGlvbic7XG5pbXBvcnQgeyBDbHJBYnN0cmFjdEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi9hYnN0cmFjdC1mb3JtLWNvbXBvbmVudC9hYnN0cmFjdC1mb3JtLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENsYXJpdHlJY29ucywgcGx1c0ljb24gfSBmcm9tICdAY2RzL2NvcmUvaWNvbic7XG5cbkNsYXJpdHlJY29ucy5hZGRJY29ucyhwbHVzSWNvbik7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci1xdWljay1saXN0JyxcbiAgaG9zdDogeyAnW2NsYXNzLnF1aWNrLWxpc3RdJzogJ3RydWUnIH0sXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWljay1saXN0Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENsclF1aWNrTGlzdCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDbHJRdWlja0xpc3Q8VD4gZXh0ZW5kcyBDbHJBYnN0cmFjdEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoJ2NsckJsYW5rT3B0aW9uJykgYmxhbmtPcHRpb246IENsclF1aWNrTGlzdFZhbHVlPFQ+ID0gQ0xSX0JMQU5LX09QVElPTjtcbiAgQElucHV0KCdjbHJBbGxWYWx1ZXMnKSBhbGxWYWx1ZXM6IENsclF1aWNrTGlzdFZhbHVlPFQ+W10gPSBbdGhpcy5ibGFua09wdGlvbl07XG4gIEBJbnB1dCgnY2xyTWFuZGF0b3J5JykgbWFuZGF0b3J5ID0gZmFsc2U7XG4gIEBJbnB1dCgnY2xyVmFsdWVzJykgdmFsdWVzOiBDbHJRdWlja0xpc3RWYWx1ZTxUPltdID0gW107XG4gIEBJbnB1dCgnY2xyQWRkTGFiZWwnKSBhZGRMYWJlbCA9ICdBREQnO1xuICBASW5wdXQoJ2NsckNvbnRyb2xDbGFzc2VzJykgY29udHJvbENsYXNzZXMgPSAnY2xyLWNvbC1tZC0xMCc7XG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbXBhY3RNb2RlID0gZmFsc2U7XG4gIEBPdXRwdXQoJ2NsclZhbHVlc0NoYW5nZWQnKSB2YWx1ZXNDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxDbHJRdWlja0xpc3RWYWx1ZTxUPltdPigpO1xuICBAT3V0cHV0KCdjbHJFbXB0eU9wdGlvbkFkZGVkJykgZW1wdHlPcHRpb25BZGRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkcmVuKENsckFkZE9wdGlvbikgb3B0aW9uczogUXVlcnlMaXN0PENsckFkZE9wdGlvbjxUPj47XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmFsdWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy52YWx1ZXMucHVzaCguLi50aGlzLmdldEVtcHR5VmFsdWVzKCkpO1xuICAgIH1cbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IENsclF1aWNrTGlzdFZhbHVlPFQ+W10pOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlcyA9IHZhbHVlPy5sZW5ndGggPyBbLi4udmFsdWVdIDogdGhpcy5nZXRFbXB0eVZhbHVlcygpO1xuICB9XG5cbiAgZ2V0RW1wdHlWYWx1ZXMoKTogQ2xyUXVpY2tMaXN0VmFsdWU8VD5bXSB7XG4gICAgcmV0dXJuIHRoaXMubWFuZGF0b3J5ID8gW3RoaXMuYmxhbmtPcHRpb25dIDogW107XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlZCh2YWx1ZTogQ2xyUXVpY2tMaXN0VmFsdWU8VD4sIGk6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZXNbaV0gPSB2YWx1ZTtcbiAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlZCgpO1xuICAgICAgdGhpcy5mb2N1c09wdGlvbih2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgb25SZW1vdmVWYWx1ZShpOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlcy5zcGxpY2UoaSwgMSk7XG4gICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2VkKCk7XG4gIH1cblxuICBhZGRCbGFua09wdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaGFzQmxhbmtPcHRpb24oKSkge1xuICAgICAgdGhpcy52YWx1ZXMucHVzaCh0aGlzLmJsYW5rT3B0aW9uKTtcbiAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlZCgpO1xuICAgICAgdGhpcy5lbXB0eU9wdGlvbkFkZGVkLmVtaXQoKTtcbiAgICAgIHRoaXMuZm9jdXNPcHRpb24odGhpcy5ibGFua09wdGlvbik7XG4gICAgfVxuICB9XG5cbiAgZW1pdFZhbHVlQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlc0NoYW5nZWQuZW1pdCh0aGlzLnZhbHVlcyk7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlcyk7XG4gIH1cblxuICBmb2N1c09wdGlvbihvcHRpb246IENsclF1aWNrTGlzdFZhbHVlPFQ+KTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBvcHQgPSB0aGlzLm9wdGlvbnMuZmluZChvID0+IG8udmFsdWUuaWQgPT09IG9wdGlvbi5pZCk7XG4gICAgICBpZiAob3B0KSB7XG4gICAgICAgIG9wdC5mb2N1c0NvbXBvbmVudCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaGFzQmxhbmtPcHRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzLm1hcCh2YWwgPT4gdmFsLmlkKS5pbmNsdWRlcyh0aGlzLmJsYW5rT3B0aW9uLmlkKTtcbiAgfVxuXG4gIGFkZE5vdFBvc3NpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmhhc0JsYW5rT3B0aW9uKCkgfHwgdGhpcy52YWx1ZXMubGVuZ3RoID09PSB0aGlzLmFsbFZhbHVlcy5sZW5ndGg7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImxhYmVsXCI+PC9uZy1jb250ZW50PlxuPGRpdiBjbGFzcz1cImNsci1jb250cm9sLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cImNvbnRyb2xDbGFzc2VzXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHZhbHVlIG9mIHZhbHVlczsgaW5kZXggYXMgaVwiPlxuICAgIDxjbHItYWRkLW9wdGlvblxuICAgICAgW2FsbFZhbHVlc109XCJhbGxWYWx1ZXNcIlxuICAgICAgW2V4Y2x1ZGVkVmFsdWVzXT1cInZhbHVlc1wiXG4gICAgICAocmVtb3ZlKT1cIm9uUmVtb3ZlVmFsdWUoaSlcIlxuICAgICAgKGFkZCk9XCJhZGRCbGFua09wdGlvbigpXCJcbiAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAodmFsdWVDaGFuZ2VkKT1cIm9uVmFsdWVDaGFuZ2VkKCRldmVudCwgaSlcIlxuICAgICAgW2JsYW5rT3B0aW9uXT1cImJsYW5rT3B0aW9uXCJcbiAgICAgIFttYW5kYXRvcnldPVwibWFuZGF0b3J5XCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3Nob3dBZGRCdXR0b25dPVwiY29tcGFjdE1vZGUgJiYgIWFkZE5vdFBvc3NpYmxlKCkgJiYgaSA9PT0gdmFsdWVzLmxlbmd0aCAtIDFcIlxuICAgID5cbiAgICA8L2Nsci1hZGQtb3B0aW9uPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpICYmIHZhbHVlcy5sZW5ndGggPT09IDAgJiYgY29tcGFjdE1vZGVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwiYnRuIGJ0bi1pY29uIGJ0bi1saW5rIHF1aWNrLWxpc3QtYWRkY29tcGFjdFwiXG4gICAgKGNsaWNrKT1cImFkZEJsYW5rT3B0aW9uKClcIlxuICAgIFtkaXNhYmxlZF09XCJhZGROb3RQb3NzaWJsZSgpIHx8IGRpc2FibGVkXCJcbiAgPlxuICAgIDxjZHMtaWNvbiBzaGFwZT1cInBsdXNcIj48L2Nkcy1pY29uPlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpICYmICFjb21wYWN0TW9kZVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJidG4gYnRuLWxpbmsgYnRuLXNtIHF1aWNrLWxpc3QtYWRkXCJcbiAgICAoY2xpY2spPVwiYWRkQmxhbmtPcHRpb24oKVwiXG4gICAgW2Rpc2FibGVkXT1cImFkZE5vdFBvc3NpYmxlKCkgfHwgZGlzYWJsZWRcIlxuICA+XG4gICAge3thZGRMYWJlbH19XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2stbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvcXVpY2stbGlzdC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL3F1aWNrLWxpc3QvcXVpY2stbGlzdC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxnQkFBZ0IsRUFBcUIsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRTlELFlBQVksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUM7QUFjdEMsTUFBTSxPQUFPLFlBQWdCLFNBQVEsd0JBQXdCO0lBWjdEOztRQWEyQixnQkFBVyxHQUF5QixnQkFBZ0IsQ0FBQztRQUN2RCxjQUFTLEdBQTJCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDckIsV0FBTSxHQUEyQixFQUFFLENBQUM7UUFDbEMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNYLG1CQUFjLEdBQUcsZUFBZSxDQUFDO1FBRXBELGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ0Qsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBMEIsQ0FBQztRQUN4RCxxQkFBZ0IsR0FBRyxJQUFJLFlBQVks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LFlBQVksdUVDdkM1QixreUNBc0NBOzJGRFhhLFlBQVk7a0JBWnhCLFNBQVM7K0JBQ0UsZ0JBQWdCLFFBQ3BCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLGFBRTNCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQzs0QkFDM0MsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OEJBR3dCLFdBQVc7c0JBQW5DLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQUNBLFNBQVM7c0JBQS9CLEtBQUs7dUJBQUMsY0FBYztnQkFDRSxTQUFTO3NCQUEvQixLQUFLO3VCQUFDLGNBQWM7Z0JBQ0QsTUFBTTtzQkFBekIsS0FBSzt1QkFBQyxXQUFXO2dCQUNJLFFBQVE7c0JBQTdCLEtBQUs7dUJBQUMsYUFBYTtnQkFDUSxjQUFjO3NCQUF6QyxLQUFLO3VCQUFDLG1CQUFtQjtnQkFDakIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNzQixhQUFhO3NCQUF4QyxNQUFNO3VCQUFDLGtCQUFrQjtnQkFDSyxnQkFBZ0I7c0JBQTlDLE1BQU07dUJBQUMscUJBQXFCO2dCQUVELE9BQU87c0JBQWxDLFlBQVk7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMyBQb3JzY2hlIEluZm9ybWF0aWsuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDTFJfQkxBTktfT1BUSU9OLCBDbHJRdWlja0xpc3RWYWx1ZSB9IGZyb20gJy4vYWRkLW9wdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IENsckFkZE9wdGlvbiB9IGZyb20gJy4vYWRkLW9wdGlvbic7XG5pbXBvcnQgeyBDbHJBYnN0cmFjdEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi9hYnN0cmFjdC1mb3JtLWNvbXBvbmVudC9hYnN0cmFjdC1mb3JtLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENsYXJpdHlJY29ucywgcGx1c0NpcmNsZUljb24gfSBmcm9tICdAY2RzL2NvcmUvaWNvbic7XG5cbkNsYXJpdHlJY29ucy5hZGRJY29ucyhwbHVzQ2lyY2xlSWNvbik7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci1xdWljay1saXN0JyxcbiAgaG9zdDogeyAnW2NsYXNzLnF1aWNrLWxpc3RdJzogJ3RydWUnIH0sXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWljay1saXN0Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENsclF1aWNrTGlzdCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDbHJRdWlja0xpc3Q8VD4gZXh0ZW5kcyBDbHJBYnN0cmFjdEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoJ2NsckJsYW5rT3B0aW9uJykgYmxhbmtPcHRpb246IENsclF1aWNrTGlzdFZhbHVlPFQ+ID0gQ0xSX0JMQU5LX09QVElPTjtcbiAgQElucHV0KCdjbHJBbGxWYWx1ZXMnKSBhbGxWYWx1ZXM6IENsclF1aWNrTGlzdFZhbHVlPFQ+W10gPSBbdGhpcy5ibGFua09wdGlvbl07XG4gIEBJbnB1dCgnY2xyTWFuZGF0b3J5JykgbWFuZGF0b3J5ID0gZmFsc2U7XG4gIEBJbnB1dCgnY2xyVmFsdWVzJykgdmFsdWVzOiBDbHJRdWlja0xpc3RWYWx1ZTxUPltdID0gW107XG4gIEBJbnB1dCgnY2xyQWRkTGFiZWwnKSBhZGRMYWJlbCA9ICdBREQnO1xuICBASW5wdXQoJ2NsckNvbnRyb2xDbGFzc2VzJykgY29udHJvbENsYXNzZXMgPSAnY2xyLWNvbC1tZC0xMCc7XG4gIEBJbnB1dCgpIHJlYWRvbmx5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbXBhY3RNb2RlID0gZmFsc2U7XG4gIEBPdXRwdXQoJ2NsclZhbHVlc0NoYW5nZWQnKSB2YWx1ZXNDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxDbHJRdWlja0xpc3RWYWx1ZTxUPltdPigpO1xuICBAT3V0cHV0KCdjbHJFbXB0eU9wdGlvbkFkZGVkJykgZW1wdHlPcHRpb25BZGRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkcmVuKENsckFkZE9wdGlvbikgb3B0aW9uczogUXVlcnlMaXN0PENsckFkZE9wdGlvbjxUPj47XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmFsdWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy52YWx1ZXMucHVzaCguLi50aGlzLmdldEVtcHR5VmFsdWVzKCkpO1xuICAgIH1cbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IENsclF1aWNrTGlzdFZhbHVlPFQ+W10pOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlcyA9IHZhbHVlPy5sZW5ndGggPyBbLi4udmFsdWVdIDogdGhpcy5nZXRFbXB0eVZhbHVlcygpO1xuICB9XG5cbiAgZ2V0RW1wdHlWYWx1ZXMoKTogQ2xyUXVpY2tMaXN0VmFsdWU8VD5bXSB7XG4gICAgcmV0dXJuIHRoaXMubWFuZGF0b3J5ID8gW3RoaXMuYmxhbmtPcHRpb25dIDogW107XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlZCh2YWx1ZTogQ2xyUXVpY2tMaXN0VmFsdWU8VD4sIGk6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZXNbaV0gPSB2YWx1ZTtcbiAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlZCgpO1xuICAgICAgdGhpcy5mb2N1c09wdGlvbih2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgb25SZW1vdmVWYWx1ZShpOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlcy5zcGxpY2UoaSwgMSk7XG4gICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2VkKCk7XG4gIH1cblxuICBhZGRCbGFua09wdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaGFzQmxhbmtPcHRpb24oKSkge1xuICAgICAgdGhpcy52YWx1ZXMucHVzaCh0aGlzLmJsYW5rT3B0aW9uKTtcbiAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlZCgpO1xuICAgICAgdGhpcy5lbXB0eU9wdGlvbkFkZGVkLmVtaXQoKTtcbiAgICAgIHRoaXMuZm9jdXNPcHRpb24odGhpcy5ibGFua09wdGlvbik7XG4gICAgfVxuICB9XG5cbiAgZW1pdFZhbHVlQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlc0NoYW5nZWQuZW1pdCh0aGlzLnZhbHVlcyk7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlcyk7XG4gIH1cblxuICBmb2N1c09wdGlvbihvcHRpb246IENsclF1aWNrTGlzdFZhbHVlPFQ+KTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBvcHQgPSB0aGlzLm9wdGlvbnMuZmluZChvID0+IG8udmFsdWUuaWQgPT09IG9wdGlvbi5pZCk7XG4gICAgICBpZiAob3B0KSB7XG4gICAgICAgIG9wdC5mb2N1c0NvbXBvbmVudCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaGFzQmxhbmtPcHRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzLm1hcCh2YWwgPT4gdmFsLmlkKS5pbmNsdWRlcyh0aGlzLmJsYW5rT3B0aW9uLmlkKTtcbiAgfVxuXG4gIGFkZE5vdFBvc3NpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmhhc0JsYW5rT3B0aW9uKCkgfHwgdGhpcy52YWx1ZXMubGVuZ3RoID09PSB0aGlzLmFsbFZhbHVlcy5sZW5ndGg7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImxhYmVsXCI+PC9uZy1jb250ZW50PlxuPGRpdiBjbGFzcz1cImNsci1jb250cm9sLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cImNvbnRyb2xDbGFzc2VzXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHZhbHVlIG9mIHZhbHVlczsgaW5kZXggYXMgaVwiPlxuICAgIDxjbHItYWRkLW9wdGlvblxuICAgICAgW2FsbFZhbHVlc109XCJhbGxWYWx1ZXNcIlxuICAgICAgW2V4Y2x1ZGVkVmFsdWVzXT1cInZhbHVlc1wiXG4gICAgICAocmVtb3ZlKT1cIm9uUmVtb3ZlVmFsdWUoaSlcIlxuICAgICAgKGFkZCk9XCJhZGRCbGFua09wdGlvbigpXCJcbiAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAodmFsdWVDaGFuZ2VkKT1cIm9uVmFsdWVDaGFuZ2VkKCRldmVudCwgaSlcIlxuICAgICAgW2JsYW5rT3B0aW9uXT1cImJsYW5rT3B0aW9uXCJcbiAgICAgIFttYW5kYXRvcnldPVwibWFuZGF0b3J5XCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW2Rpc2FibGVBZGRCdXR0b25dPVwiYWRkTm90UG9zc2libGUoKSB8fCBkaXNhYmxlZFwiXG4gICAgICBbc2hvd0FkZEJ1dHRvbl09XCJjb21wYWN0TW9kZSAmJiBpID09PSB2YWx1ZXMubGVuZ3RoIC0gMVwiXG4gICAgPlxuICAgIDwvY2xyLWFkZC1vcHRpb24+XG4gIDwvbmctY29udGFpbmVyPlxuICA8YnV0dG9uXG4gICAgKm5nSWY9XCIhKHJlYWRvbmx5IHx8IHJlYWRvbmx5ID09PSAnJykgJiYgdmFsdWVzLmxlbmd0aCA9PT0gMCAmJiBjb21wYWN0TW9kZVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJidG4gYnRuLWljb24gYnRuLWxpbmsgcXVpY2stbGlzdC1hZGRjb21wYWN0XCJcbiAgICAoY2xpY2spPVwiYWRkQmxhbmtPcHRpb24oKVwiXG4gICAgW2Rpc2FibGVkXT1cImFkZE5vdFBvc3NpYmxlKCkgfHwgZGlzYWJsZWRcIlxuICA+XG4gICAgPGNkcy1pY29uIHNoYXBlPVwicGx1cy1jaXJjbGVcIj48L2Nkcy1pY29uPlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwiIShyZWFkb25seSB8fCByZWFkb25seSA9PT0gJycpICYmICFjb21wYWN0TW9kZVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJidG4gYnRuLWxpbmsgYnRuLXNtIHF1aWNrLWxpc3QtYWRkXCJcbiAgICAoY2xpY2spPVwiYWRkQmxhbmtPcHRpb24oKVwiXG4gICAgW2Rpc2FibGVkXT1cImFkZE5vdFBvc3NpYmxlKCkgfHwgZGlzYWJsZWRcIlxuICA+XG4gICAge3thZGRMYWJlbH19XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component, NgModule, Injectable, EventEmitter, Input, Output, Directive, ViewChild, ContentChildren, TemplateRef, ViewChildren, HostBinding, ElementRef, Renderer2, forwardRef, Inject, ContentChild, Optional, HostListener, InjectionToken, LOCALE_ID, Self } from '@angular/core';
3
- import { ClarityIcons, arrowIcon, angleIcon, timesIcon, trashIcon, plusIcon, exclamationCircleIcon, searchIcon, ellipsisVerticalIcon, pencilIcon, historyIcon, treeViewIcon, organizationIcon, calendarIcon, checkCircleIcon, windowCloseIcon } from '@cds/core/icon';
3
+ import { ClarityIcons, arrowIcon, angleIcon, timesIcon, trashIcon, plusCircleIcon, exclamationCircleIcon, searchIcon, ellipsisVerticalIcon, pencilIcon, historyIcon, treeViewIcon, organizationIcon, calendarIcon, checkCircleIcon, windowCloseIcon } from '@cds/core/icon';
4
4
  import * as i1 from '@angular/common';
5
5
  import { CommonModule, DOCUMENT, getLocaleDateFormat, FormatWidth } from '@angular/common';
6
6
  import * as i1$1 from '@clr/angular';
@@ -1011,7 +1011,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
1011
1011
  * This software is released under MIT license.
1012
1012
  * The full license information can be found in LICENSE in the root directory of this project.
1013
1013
  */
1014
- ClarityIcons.addIcons(trashIcon, plusIcon);
1014
+ ClarityIcons.addIcons(trashIcon, plusCircleIcon);
1015
1015
  class ClrGenericQuickList {
1016
1016
  constructor() {
1017
1017
  this.allItems = [];
@@ -1059,10 +1059,10 @@ class ClrGenericQuickList {
1059
1059
  }
1060
1060
  }
1061
1061
  ClrGenericQuickList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrGenericQuickList, deps: [], target: i0.ɵɵFactoryTarget.Component });
1062
- ClrGenericQuickList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrGenericQuickList, selector: "clr-generic-quick-list", inputs: { allItems: ["clrAllItems", "allItems"], addLabel: ["clrAddLabel", "addLabel"], addPossible: ["clrAddPossible", "addPossible"], blankItem: ["clrBlankItem", "blankItem"], controlClasses: ["clrControlClasses", "controlClasses"], required: ["clrMandatory", "required"], readonly: "readonly", compactMode: "compactMode" }, outputs: { added: "clrAdded", removed: "clrRemoved" }, host: { properties: { "class.generic-quick-list": "true", "class.clr-form-control": "true" } }, queries: [{ propertyName: "itemTemplate", predicate: TemplateRef }], viewQueries: [{ propertyName: "itemRows", predicate: ["row"], descendants: true }], ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.CdsIconCustomTag, selector: "cds-icon" }] });
1062
+ ClrGenericQuickList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrGenericQuickList, selector: "clr-generic-quick-list", inputs: { allItems: ["clrAllItems", "allItems"], addLabel: ["clrAddLabel", "addLabel"], addPossible: ["clrAddPossible", "addPossible"], blankItem: ["clrBlankItem", "blankItem"], controlClasses: ["clrControlClasses", "controlClasses"], required: ["clrMandatory", "required"], readonly: "readonly", compactMode: "compactMode" }, outputs: { added: "clrAdded", removed: "clrRemoved" }, host: { properties: { "class.generic-quick-list": "true", "class.clr-form-control": "true" } }, queries: [{ propertyName: "itemTemplate", predicate: TemplateRef }], viewQueries: [{ propertyName: "itemRows", predicate: ["row"], descendants: true }], ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.CdsIconCustomTag, selector: "cds-icon" }] });
1063
1063
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrGenericQuickList, decorators: [{
1064
1064
  type: Component,
1065
- args: [{ selector: 'clr-generic-quick-list', host: { '[class.generic-quick-list]': 'true', '[class.clr-form-control]': 'true' }, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
1065
+ args: [{ selector: 'clr-generic-quick-list', host: { '[class.generic-quick-list]': 'true', '[class.clr-form-control]': 'true' }, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-content select=\".header-container\"></ng-content>\n\n <ng-container *ngFor=\"let item of allItems; index as i\">\n <div class=\"controls-wrapper\">\n <div class=\"controls-container\" *ngIf=\"itemTemplate\" #row>\n <ng-container *ngTemplateOutlet=\"itemTemplate.get(0); context: {$implicit:item}\"></ng-container>\n </div>\n <button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link btn-trash\"\n [ngClass]=\"{'btn-trash-ext': !(compactMode && i === allItems.length - 1)}\"\n [disabled]=\"required && allItems.length === 1\"\n (click)=\"removeItem(item)\"\n >\n <cds-icon shape=\"trash\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && compactMode && i === allItems.length - 1\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n </div>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && allItems.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm btn-add\"\n (click)=\"addItem()\"\n [disabled]=\"!addPossible\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
1066
1066
  }], propDecorators: { allItems: [{
1067
1067
  type: Input,
1068
1068
  args: ['clrAllItems']
@@ -2121,7 +2121,7 @@ class ClrNotification {
2121
2121
  }
2122
2122
  }
2123
2123
  ClrNotification.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrNotification, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
2124
- ClrNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrNotification, selector: "clr-notification", inputs: { timeout: "timeout", notificationType: "notificationType", dismissable: "dismissable", progressbar: "progressbar" }, outputs: { closed: "closed" }, host: { properties: { "class.notification": "true" } }, viewQueries: [{ propertyName: "clrAlert", first: true, predicate: ClrAlert, descendants: true, static: true }], ngImport: i0, template: "<div class=\"notification__wrapper\" [@slideDown] [@move]=\"state\" [@fade]=\"state\">\n <div class=\"progress top\" [ngClass]=\"notificationType\" *ngIf=\"progressbar && timeout > 0\">\n <progress class=\"progress\" [max]=\"timeout\" [value]=\"progressStatus\"></progress>\n </div>\n <clr-alert\n [clrAlertType]=\"notificationType\"\n [clrAlertAppLevel]=\"true\"\n [clrAlertClosable]=\"dismissable\"\n (clrAlertClosedChange)=\"close()\"\n >\n <div class=\"alert-item\">\n <span class=\"alert-text\">\n <ng-content select=\"[clr-notification-message]\"></ng-content>\n </span>\n </div>\n </clr-alert>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$1.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertClosed", "clrAlertType", "clrAlertIcon"], outputs: ["clrAlertClosedChange"] }, { kind: "directive", type: i1$1.ClrAlertText, selector: ".alert-text" }], animations: [
2124
+ ClrNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrNotification, selector: "clr-notification", inputs: { timeout: "timeout", notificationType: "notificationType", dismissable: "dismissable", progressbar: "progressbar" }, outputs: { closed: "closed" }, host: { properties: { "class.notification": "true" } }, viewQueries: [{ propertyName: "clrAlert", first: true, predicate: ClrAlert, descendants: true, static: true }], ngImport: i0, template: "<div class=\"notification__wrapper\" [@slideDown] [@move]=\"state\" [@fade]=\"state\">\n <div class=\"progress top\" [ngClass]=\"notificationType\" *ngIf=\"progressbar && timeout > 0\">\n <progress class=\"progress\" [max]=\"timeout\" [value]=\"progressStatus\"></progress>\n </div>\n <clr-alert\n [clrAlertType]=\"notificationType\"\n [clrAlertAppLevel]=\"true\"\n [clrAlertClosable]=\"dismissable\"\n (clrAlertClosedChange)=\"close()\"\n >\n <div class=\"alert-item\">\n <span class=\"alert-text\">\n <ng-content select=\"[clr-notification-message]\"></ng-content>\n </span>\n </div>\n </clr-alert>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$1.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "directive", type: i1$1.ClrAlertText, selector: ".alert-text" }], animations: [
2125
2125
  trigger('slideDown', [
2126
2126
  transition(':enter', [
2127
2127
  style({ transform: 'translateY(-200%)' }),
@@ -3160,13 +3160,14 @@ const CLR_BLANK_OPTION = { id: '-BLANK-', label: '- Select an option -', value:
3160
3160
  * This software is released under MIT license.
3161
3161
  * The full license information can be found in LICENSE in the root directory of this project.
3162
3162
  */
3163
- ClarityIcons.addIcons(trashIcon, plusIcon);
3163
+ ClarityIcons.addIcons(trashIcon, plusCircleIcon);
3164
3164
  class ClrAddOption {
3165
3165
  constructor() {
3166
3166
  this.mandatory = false;
3167
3167
  this.allValues = [];
3168
3168
  this.excludedValues = [];
3169
3169
  this.disabled = false;
3170
+ this.disableAddButton = true;
3170
3171
  this.showAddButton = false;
3171
3172
  this.valueChanged = new EventEmitter();
3172
3173
  this.remove = new EventEmitter();
@@ -3191,10 +3192,10 @@ class ClrAddOption {
3191
3192
  }
3192
3193
  }
3193
3194
  ClrAddOption.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrAddOption, deps: [], target: i0.ɵɵFactoryTarget.Component });
3194
- ClrAddOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrAddOption, selector: "clr-add-option", inputs: { blankOption: "blankOption", value: "value", mandatory: "mandatory", allValues: "allValues", excludedValues: "excludedValues", readonly: "readonly", disabled: "disabled", showAddButton: "showAddButton" }, outputs: { valueChanged: "valueChanged", remove: "remove", add: "add" }, host: { properties: { "class.quick-list-option": "true" } }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n>\n <cds-icon shape=\"plus\"></cds-icon>\n</button>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$1.CdsIconCustomTag, selector: "cds-icon" }] });
3195
+ ClrAddOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrAddOption, selector: "clr-add-option", inputs: { blankOption: "blankOption", value: "value", mandatory: "mandatory", allValues: "allValues", excludedValues: "excludedValues", readonly: "readonly", disabled: "disabled", disableAddButton: "disableAddButton", showAddButton: "showAddButton" }, outputs: { valueChanged: "valueChanged", remove: "remove", add: "add" }, host: { properties: { "class.quick-list-option": "true" } }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n [disabled]=\"disableAddButton\"\n>\n <cds-icon shape=\"plus-circle\"></cds-icon>\n</button>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$1.CdsIconCustomTag, selector: "cds-icon" }] });
3195
3196
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrAddOption, decorators: [{
3196
3197
  type: Component,
3197
- args: [{ selector: 'clr-add-option', host: { '[class.quick-list-option]': 'true' }, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n>\n <cds-icon shape=\"plus\"></cds-icon>\n</button>\n" }]
3198
+ args: [{ selector: 'clr-add-option', host: { '[class.quick-list-option]': 'true' }, template: "<div *ngIf=\"!(readonly || readonly === ''); else readonlyView\" class=\"clr-select-wrapper quick-list-input\">\n <select #select clr-select class=\"quick-list-select\" name=\"options\" [(ngModel)]=\"selectedValue\" [disabled]=\"disabled\">\n <option *ngIf=\"blankOption.id === selectedValue\" [selected]=\"true\" [disabled]=\"true\" [ngValue]=\"blankOption.id\">\n {{blankOption.label}}\n </option>\n <option *ngFor=\"let val of getValues()\" [selected]=\"val.id === selectedValue\" [ngValue]=\"val.id\">\n {{val.label}}\n </option>\n </select>\n</div>\n\n<ng-template #readonlyView>\n <span>{{value.label}}</span>\n</ng-template>\n\n<button\n *ngIf=\"!(readonly || readonly === '')\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-trash\"\n [ngClass]=\"{'quick-list-trash-ext': !showAddButton}\"\n [disabled]=\"trashDisabled() || disabled\"\n (click)=\"remove.emit()\"\n>\n <cds-icon shape=\"trash\"></cds-icon>\n</button>\n<button\n *ngIf=\"!(readonly || readonly === '') && showAddButton\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"add.emit()\"\n [disabled]=\"disableAddButton\"\n>\n <cds-icon shape=\"plus-circle\"></cds-icon>\n</button>\n" }]
3198
3199
  }], propDecorators: { blankOption: [{
3199
3200
  type: Input
3200
3201
  }], value: [{
@@ -3209,6 +3210,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
3209
3210
  type: Input
3210
3211
  }], disabled: [{
3211
3212
  type: Input
3213
+ }], disableAddButton: [{
3214
+ type: Input
3212
3215
  }], showAddButton: [{
3213
3216
  type: Input
3214
3217
  }], valueChanged: [{
@@ -3227,7 +3230,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
3227
3230
  * This software is released under MIT license.
3228
3231
  * The full license information can be found in LICENSE in the root directory of this project.
3229
3232
  */
3230
- ClarityIcons.addIcons(plusIcon);
3233
+ ClarityIcons.addIcons(plusCircleIcon);
3231
3234
  class ClrQuickList extends ClrAbstractFormComponent {
3232
3235
  constructor() {
3233
3236
  super(...arguments);
@@ -3297,7 +3300,7 @@ ClrQuickList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
3297
3300
  useExisting: forwardRef(() => ClrQuickList),
3298
3301
  multi: true,
3299
3302
  },
3300
- ], viewQueries: [{ propertyName: "options", predicate: ClrAddOption, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [showAddButton]=\"compactMode && !addNotPossible() && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: ClrAddOption, selector: "clr-add-option", inputs: ["blankOption", "value", "mandatory", "allValues", "excludedValues", "readonly", "disabled", "showAddButton"], outputs: ["valueChanged", "remove", "add"] }] });
3303
+ ], viewQueries: [{ propertyName: "options", predicate: ClrAddOption, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [disableAddButton]=\"addNotPossible() || disabled\"\n [showAddButton]=\"compactMode && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: ClrAddOption, selector: "clr-add-option", inputs: ["blankOption", "value", "mandatory", "allValues", "excludedValues", "readonly", "disabled", "disableAddButton", "showAddButton"], outputs: ["valueChanged", "remove", "add"] }] });
3301
3304
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrQuickList, decorators: [{
3302
3305
  type: Component,
3303
3306
  args: [{ selector: 'clr-quick-list', host: { '[class.quick-list]': 'true' }, providers: [
@@ -3306,7 +3309,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
3306
3309
  useExisting: forwardRef(() => ClrQuickList),
3307
3310
  multi: true,
3308
3311
  },
3309
- ], template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [showAddButton]=\"compactMode && !addNotPossible() && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
3312
+ ], template: "<ng-content select=\"label\"></ng-content>\n<div class=\"clr-control-container\" [ngClass]=\"controlClasses\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <clr-add-option\n [allValues]=\"allValues\"\n [excludedValues]=\"values\"\n (remove)=\"onRemoveValue(i)\"\n (add)=\"addBlankOption()\"\n [value]=\"value\"\n (valueChanged)=\"onValueChanged($event, i)\"\n [blankOption]=\"blankOption\"\n [mandatory]=\"mandatory\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [disableAddButton]=\"addNotPossible() || disabled\"\n [showAddButton]=\"compactMode && i === values.length - 1\"\n >\n </clr-add-option>\n </ng-container>\n <button\n *ngIf=\"!(readonly || readonly === '') && values.length === 0 && compactMode\"\n type=\"button\"\n class=\"btn btn-icon btn-link quick-list-addcompact\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n <cds-icon shape=\"plus-circle\"></cds-icon>\n </button>\n <button\n *ngIf=\"!(readonly || readonly === '') && !compactMode\"\n type=\"button\"\n class=\"btn btn-link btn-sm quick-list-add\"\n (click)=\"addBlankOption()\"\n [disabled]=\"addNotPossible() || disabled\"\n >\n {{addLabel}}\n </button>\n</div>\n" }]
3310
3313
  }], propDecorators: { blankOption: [{
3311
3314
  type: Input,
3312
3315
  args: ['clrBlankOption']