@onemrvapublic/design-system 18.2.23 → 18.2.24-develop.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/mat-multi-select/src/onemrva-mat-multi-select.component.mjs +2 -5
- package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs +1 -4
- package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs.map +1 -1
- package/mat-multi-select/src/onemrva-mat-multi-select.component.d.ts +2 -3
- package/package.json +1 -1
|
@@ -124,9 +124,6 @@ export class OnemrvaMatMultiSelectComponent extends MatFormFieldControl {
|
|
|
124
124
|
this.searchFilter.updateValueAndValidity({ emitEvent: true });
|
|
125
125
|
}
|
|
126
126
|
}
|
|
127
|
-
ngOnChanges(changes) {
|
|
128
|
-
console.log(changes);
|
|
129
|
-
}
|
|
130
127
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OnemrvaMatMultiSelectComponent, deps: [{ token: i1.TranslateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
131
128
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OnemrvaMatMultiSelectComponent, selector: "onemrva-mat-multi-select", inputs: { multiple: "multiple", formControl: "formControl", role: ["attr.role", "role"], label: ["attr.aria-label", "label"], invalid: ["attr.aria-invalid", "invalid"], showFilter: "showFilter", selectionToggle: "selectionToggle", dataCy: ["attr.data-cy", "dataCy"] }, host: { properties: { "style.opacity": "this.opacity" } }, providers: [
|
|
132
129
|
{
|
|
@@ -147,7 +144,7 @@ export class OnemrvaMatMultiSelectComponent extends MatFormFieldControl {
|
|
|
147
144
|
// provide: MAT_OPTION_PARENT_COMPONENT,
|
|
148
145
|
// useExisting: OnemrvaMatMultiSelectComponent,
|
|
149
146
|
// },
|
|
150
|
-
], queries: [{ propertyName: "matOptions", predicate: MatOption }], usesInheritance: true,
|
|
147
|
+
], queries: [{ propertyName: "matOptions", predicate: MatOption }], usesInheritance: true, ngImport: i0, template: "<mat-select\n [multiple]=\"multiple\"\n [formControl]=\"formControl\"\n [attr.data-cy]=\"dataCy\"\n [attr.aria-label]=\"label\"\n>\n <div class=\"selection-choice\" *ngIf=\"multiple && selectionToggle\">\n <a\n tabindex=\"1\"\n class=\"small\"\n [ngClass]=\"{ disabled: isAllSelected() }\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"small grey\"> | </span>\n <a\n tabindex=\"2\"\n class=\"small\"\n [ngClass]=\"{ disabled: isNoneSelected() }\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n <div class=\"option-list\">\n <mat-option *ngIf=\"showFilter\">\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n ></mat-select-search>\n </mat-option>\n <ng-container *ngFor=\"let matOption of matOptions$ | async\">\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.innerHTML }}\n </mat-option>\n </ng-container>\n </div>\n</mat-select>\n<div class=\"mat-select-counter\" *ngIf=\"multiple && counter > 0\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatSelectSearchComponent, selector: "mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
151
148
|
}
|
|
152
149
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OnemrvaMatMultiSelectComponent, decorators: [{
|
|
153
150
|
type: Component,
|
|
@@ -198,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
198
195
|
type: HostBinding,
|
|
199
196
|
args: ['style.opacity']
|
|
200
197
|
}] } });
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lbXJ2YS1tYXQtbXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZW1ydmEvZGVzaWduLXN5c3RlbS9tYXQtbXVsdGktc2VsZWN0L3NyYy9vbmVtcnZhLW1hdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lbXJ2YS9kZXNpZ24tc3lzdGVtL21hdC1tdWx0aS1zZWxlY3Qvc3JjL29uZW1ydmEtbWF0LW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFJTCxTQUFTLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsWUFBWSxFQUNaLEdBQUcsRUFDSCxVQUFVLEVBQ1YsU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQUVkLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQTBCaEIsTUFBTSxPQUFPLDhCQUNYLFNBQVEsbUJBQXdCO0lBMENoQyxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUNTLFNBQTJCLEVBQzNCLEVBQXFCO1FBRTVCLEtBQUssRUFBRSxDQUFDO1FBSEQsY0FBUyxHQUFULFNBQVMsQ0FB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QUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzs0QkFDN0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0QsSUFBSTt3QkFDSixrQ0FBa0M7d0JBQ2xDLGlEQUFpRDt3QkFDakQsS0FBSzt3QkFDTCxJQUFJO3dCQUNKLDBDQUEwQzt3QkFDMUMsaURBQWlEO3dCQUNqRCxLQUFLO3FCQUNOO3FIQVdELFFBQVE7c0JBRFAsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBS0MsSUFBSTtzQkFEVixLQUFLO3VCQUFDLFdBQVc7Z0JBS1gsS0FBSztzQkFEWCxLQUFLO3VCQUFDLGlCQUFpQjtnQkFLakIsT0FBTztzQkFEYixLQUFLO3VCQUFDLG1CQUFtQjtnQkFJMUIsVUFBVTtzQkFEVCxLQUFLO2dCQUlOLGVBQWU7c0JBRGQsS0FBSztnQkFLQyxNQUFNO3NCQURaLEtBQUs7dUJBQUMsY0FBYztnQkFNckIsVUFBVTtzQkFEVCxlQUFlO3VCQUFDLFNBQVM7Z0JBTXRCLE9BQU87c0JBRFYsV0FBVzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXRPcHRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7XG4gIGRlYm91bmNlVGltZSxcbiAgbWFwLFxuICBPYnNlcnZhYmxlLFxuICBzdGFydFdpdGgsXG4gIFN1YmplY3QsXG4gIHRha2VVbnRpbCxcbn0gZnJvbSAncnhqcyc7XG5cbmxldCBORVhUX0lEID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb25lbXJ2YS1tYXQtbXVsdGktc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICdvbmVtcnZhLW1hdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBNYXRGb3JtRmllbGRDb250cm9sLFxuICAgICAgdXNlRXhpc3Rpbmc6IE9uZW1ydmFNYXRNdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICAgIG11bHRpOiBmYWxzZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT25lbXJ2YU1hdE11bHRpU2VsZWN0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAgLy8ge1xuICAgIC8vICAgcHJvdmlkZTogTWF0Rm9ybUZpZWxkQ29udHJvbCxcbiAgICAvLyAgIHVzZUV4aXN0aW5nOiBPbmVtcnZhTWF0TXVsdGlTZWxlY3RDb21wb25lbnQsXG4gICAgLy8gfSxcbiAgICAvLyB7XG4gICAgLy8gICBwcm92aWRlOiBNQVRfT1BUSU9OX1BBUkVOVF9DT01QT05FTlQsXG4gICAgLy8gICB1c2VFeGlzdGluZzogT25lbXJ2YU1hdE11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgIC8vIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE9uZW1ydmFNYXRNdWx0aVNlbGVjdENvbXBvbmVudFxuICBleHRlbmRzIE1hdEZvcm1GaWVsZENvbnRyb2w8YW55PlxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlckNvbnRlbnRDaGVja2VkLCBPbkNoYW5nZXNcbntcbiAgY291bnRlciA9IDA7XG4gIF92YWx1ZXM6IGFueVtdID0gW107XG4gIHB1YmxpYyBvdmVycmlkZSBzdGF0ZUNoYW5nZXM6IE9ic2VydmFibGU8YW55PiA9IG5ldyBPYnNlcnZhYmxlPGFueT4oKTtcblxuICBASW5wdXQoKVxuICBtdWx0aXBsZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgZm9ybUNvbnRyb2whOiBGb3JtQ29udHJvbDtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ2F0dHIucm9sZScpXG4gIHB1YmxpYyByb2xlID0gJ3NlbGVjdCc7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdhdHRyLmFyaWEtbGFiZWwnKVxuICBwdWJsaWMgbGFiZWwgPSAnJztcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ2F0dHIuYXJpYS1pbnZhbGlkJylcbiAgcHVibGljIGludmFsaWQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBzaG93RmlsdGVyID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBzZWxlY3Rpb25Ub2dnbGUgPSB0cnVlO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgnYXR0ci5kYXRhLWN5JylcbiAgcHVibGljIGRhdGFDeSA9IGBvbmVtcnZhLW1hdC1tdWx0aS1zZWxlY3QtJHtORVhUX0lEKyt9YDtcblxuICBzZWFyY2hGaWx0ZXI6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sPHN0cmluZz4oJycpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oTWF0T3B0aW9uKVxuICBtYXRPcHRpb25zOiBRdWVyeUxpc3Q8TWF0T3B0aW9uPiA9IG5ldyBRdWVyeUxpc3Q8TWF0T3B0aW9uPigpO1xuICBtYXRPcHRpb25zJD86IE9ic2VydmFibGU8TWF0T3B0aW9uPGFueT5bXT47XG4gIHByaXZhdGUgb25EZXN0cm95JDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUub3BhY2l0eScpXG4gIGdldCBvcGFjaXR5KCkge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gMC4yNSA6IDE7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICAvLyBGdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIHJhdGluZyBjaGFuZ2VzLlxuICBvbkNoYW5nZSA9IChfdmFsdWVzOiBhbnlbXSkgPT4ge1xuICAgIC8vXG4gIH07XG5cbiAgLy8gRnVuY3Rpb24gdG8gY2FsbCB3aGVuIHRoZSBpbnB1dCBpcyB0b3VjaGVkICh3aGVuIGEgc3RhciBpcyBjbGlja2VkKS5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge1xuICAgIC8vXG4gIH07XG5cbiAgLy8gQWxsb3dzIEFuZ3VsYXIgdG8gdXBkYXRlIHRoZSBtb2RlbCAocmF0aW5nKS5cbiAgLy8gVXBkYXRlIHRoZSBtb2RlbCBhbmQgY2hhbmdlcyBuZWVkZWQgZm9yIHRoZSB2aWV3IGhlcmUuXG4gIHdyaXRlVmFsdWUodmFsdWVzOiBhbnlbXSB8IGFueSB8IHVuZGVmaW5lZCB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZXMpKSB0aGlzLmNvdW50ZXIgPSB2YWx1ZXMubGVuZ3RoO1xuICAgIGVsc2UgdGhpcy5jb3VudGVyID0gdGhpcy5fdmFsdWVzLmxlbmd0aDtcbiAgICB0aGlzLl92YWx1ZXMgPSB2YWx1ZXM7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLl92YWx1ZXMpO1xuICB9XG5cbiAgLy8gQWxsb3dzIEFuZ3VsYXIgdG8gcmVnaXN0ZXIgYSBmdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIG1vZGVsIChyYXRpbmcpIGNoYW5nZXMuXG4gIC8vIFNhdmUgdGhlIGZ1bmN0aW9uIGFzIGEgcHJvcGVydHkgdG8gY2FsbCBsYXRlciBoZXJlLlxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueVtdKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgLy8gQWxsb3dzIEFuZ3VsYXIgdG8gcmVnaXN0ZXIgYSBmdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIGlucHV0IGhhcyBiZWVuIHRvdWNoZWQuXG4gIC8vIFNhdmUgdGhlIGZ1bmN0aW9uIGFzIGEgcHJvcGVydHkgdG8gY2FsbCBsYXRlciBoZXJlLlxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBpc0FsbFNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLmNvdW50ZXIgPT09IHRoaXMubWF0T3B0aW9ucy5sZW5ndGg7XG4gIH1cblxuICBzZWxlY3RBbGwoKSB7XG4gICAgdGhpcy5fdmFsdWVzID0gdGhpcy5tYXRPcHRpb25zLm1hcChvcHRpb24gPT4ge1xuICAgICAgcmV0dXJuIG9wdGlvbi52YWx1ZTtcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMuX3ZhbHVlcyk7XG4gIH1cblxuICBpc05vbmVTZWxlY3RlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb3VudGVyID09PSAwO1xuICB9XG5cbiAgZGVzZWxlY3RBbGwoXyRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuX3ZhbHVlcyA9IFtdO1xuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy5fdmFsdWVzKTtcbiAgfVxuXG4gIG9uQ29udGFpbmVyQ2xpY2soX2V2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgLy9cbiAgfVxuXG4gIHNldERlc2NyaWJlZEJ5SWRzKF9pZHM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgLy9cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25EZXN0cm95JC5uZXh0KCcnKTtcbiAgICB0aGlzLm9uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3B0aW9uU2l6ZSA9IDA7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXRPcHRpb25zJCA9IHRoaXMuc2VhcmNoRmlsdGVyLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgZGVib3VuY2VUaW1lKDIwMCksXG4gICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgbWFwKCh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMub3B0aW9uU2l6ZSA9IHRoaXMubWF0T3B0aW9ucy5sZW5ndGg7XG4gICAgICAgIGlmICh0aGlzLl92YWx1ZXMgIT09IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmNvdW50ZXIgPSB0aGlzLl92YWx1ZXMubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5tYXRPcHRpb25zLmZpbHRlcihfbyA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5tYXRPcHRpb25zLmZpbHRlcihvcHRpb24gPT4ge1xuICAgICAgICAgIHJldHVybiBvcHRpb24/Ll90ZXh0Py5uYXRpdmVFbGVtZW50LmlubmVySFRNTFxuICAgICAgICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgIC5pbmNsdWRlcyh2YWx1ZS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICApO1xuICAgIHRoaXMuZm9ybUNvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUodmFsdWVzID0+IHtcbiAgICAgICAgdGhpcy5fdmFsdWVzID0gdmFsdWVzO1xuICAgICAgICB0aGlzLmNvdW50ZXIgPSB0aGlzLl92YWx1ZXMubGVuZ3RoO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWF0T3B0aW9ucy5sZW5ndGggIT09IHRoaXMub3B0aW9uU2l6ZSkge1xuICAgICAgdGhpcy5vcHRpb25TaXplID0gdGhpcy5tYXRPcHRpb25zLmxlbmd0aDtcbiAgICAgIHRoaXMuY291bnRlciA9IDA7XG4gICAgICB0aGlzLnNlYXJjaEZpbHRlci51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgZW1pdEV2ZW50OiB0cnVlIH0pO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZyhjaGFuZ2VzKTtcbiAgfVxufVxuIiwiPG1hdC1zZWxlY3RcbiAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcbiAgW2F0dHIuZGF0YS1jeV09XCJkYXRhQ3lcIlxuICBbYXR0ci5hcmlhLWxhYmVsXT1cImxhYmVsXCJcbj5cbiAgPGRpdiBjbGFzcz1cInNlbGVjdGlvbi1jaG9pY2VcIiAqbmdJZj1cIm11bHRpcGxlICYmIHNlbGVjdGlvblRvZ2dsZVwiPlxuICAgIDxhXG4gICAgICB0YWJpbmRleD1cIjFcIlxuICAgICAgY2xhc3M9XCJzbWFsbFwiXG4gICAgICBbbmdDbGFzc109XCJ7IGRpc2FibGVkOiBpc0FsbFNlbGVjdGVkKCkgfVwiXG4gICAgICAoY2xpY2spPVwic2VsZWN0QWxsKClcIlxuICAgICAgPnt7ICdzZWxlY3Quc2VsZWN0LmFsbCcgfCB0cmFuc2xhdGUgfX08L2FcbiAgICA+PHNwYW4gY2xhc3M9XCJzbWFsbCBncmV5XCI+Jm5ic3A7Jm5ic3A7fCZuYnNwOyZuYnNwOzwvc3Bhbj5cbiAgICA8YVxuICAgICAgdGFiaW5kZXg9XCIyXCJcbiAgICAgIGNsYXNzPVwic21hbGxcIlxuICAgICAgW25nQ2xhc3NdPVwieyBkaXNhYmxlZDogaXNOb25lU2VsZWN0ZWQoKSB9XCJcbiAgICAgIChjbGljayk9XCJkZXNlbGVjdEFsbCgkZXZlbnQpXCJcbiAgICAgID57eyAnc2VsZWN0LmRlc2VsZWN0LmFsbCcgfCB0cmFuc2xhdGUgfX08L2FcbiAgICA+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwib3B0aW9uLWxpc3RcIj5cbiAgICA8bWF0LW9wdGlvbiAqbmdJZj1cInNob3dGaWx0ZXJcIj5cbiAgICAgIDxtYXQtc2VsZWN0LXNlYXJjaFxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoRmlsdGVyXCJcbiAgICAgICAgYXJpYUxhYmVsPVwie3sgJ3NlbGVjdC5zZWFyY2guZmlsdGVyJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIG5vRW50cmllc0ZvdW5kTGFiZWw9XCJ7eyAnc2VsZWN0LnNlYXJjaC5ub3RGb3VuZCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBwbGFjZWhvbGRlckxhYmVsPVwie3sgJ3NlbGVjdC5zZWFyY2guZmlsdGVyJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICA+PC9tYXQtc2VsZWN0LXNlYXJjaD5cbiAgICA8L21hdC1vcHRpb24+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWF0T3B0aW9uIG9mIG1hdE9wdGlvbnMkIHwgYXN5bmNcIj5cbiAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgIFtkaXNhYmxlZF09XCJtYXRPcHRpb24uZGlzYWJsZWRcIlxuICAgICAgICBbdmFsdWVdPVwibWF0T3B0aW9uLnZhbHVlXCJcbiAgICAgICAgW2F0dHIuZGF0YS1jeV09XCJtYXRPcHRpb24uX2dldEhvc3RFbGVtZW50KCkuZGF0YXNldFsnY3knXVwiXG4gICAgICA+XG4gICAgICAgIHt7IG1hdE9wdGlvbi5fdGV4dD8ubmF0aXZlRWxlbWVudD8uaW5uZXJIVE1MIH19XG4gICAgICA8L21hdC1vcHRpb24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9tYXQtc2VsZWN0PlxuPGRpdiBjbGFzcz1cIm1hdC1zZWxlY3QtY291bnRlclwiICpuZ0lmPVwibXVsdGlwbGUgJiYgY291bnRlciA+IDBcIj5cbiAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+e3sgY291bnRlciB9fTwvc3BhblxuICA+PG1hdC1pY29uIChjbGljayk9XCJkZXNlbGVjdEFsbCgkZXZlbnQpXCI+Y2xvc2U8L21hdC1pY29uPlxuPC9kaXY+XG4iXX0=
|
|
198
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lbXJ2YS1tYXQtbXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZW1ydmEvZGVzaWduLXN5c3RlbS9tYXQtbXVsdGktc2VsZWN0L3NyYy9vbmVtcnZhLW1hdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lbXJ2YS9kZXNpZ24tc3lzdGVtL21hdC1tdWx0aS1zZWxlY3Qvc3JjL29uZW1ydmEtbWF0LW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFJTCxTQUFTLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsWUFBWSxFQUNaLEdBQUcsRUFDSCxVQUFVLEVBQ1YsU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQUVkLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQTBCaEIsTUFBTSxPQUFPLDhCQUNYLFNBQVEsbUJBQXdCO0lBMENoQyxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUNTLFNBQTJCLEVBQzNCLEVBQXFCO1FBRTVCLEtBQUssRUFBRSxDQUFDO1FBSEQsY0FBUyxHQUFULFNBQVMsQ0FB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QUFrQzt3QkFDbEMsaURBQWlEO3dCQUNqRCxLQUFLO3dCQUNMLElBQUk7d0JBQ0osMENBQTBDO3dCQUMxQyxpREFBaUQ7d0JBQ2pELEtBQUs7cUJBQ047cUhBV0QsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFLQyxJQUFJO3NCQURWLEtBQUs7dUJBQUMsV0FBVztnQkFLWCxLQUFLO3NCQURYLEtBQUs7dUJBQUMsaUJBQWlCO2dCQUtqQixPQUFPO3NCQURiLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUkxQixVQUFVO3NCQURULEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUtDLE1BQU07c0JBRFosS0FBSzt1QkFBQyxjQUFjO2dCQU1yQixVQUFVO3NCQURULGVBQWU7dUJBQUMsU0FBUztnQkFNdEIsT0FBTztzQkFEVixXQUFXO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdE9wdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtcbiAgZGVib3VuY2VUaW1lLFxuICBtYXAsXG4gIE9ic2VydmFibGUsXG4gIHN0YXJ0V2l0aCxcbiAgU3ViamVjdCxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzJztcblxubGV0IE5FWFRfSUQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvbmVtcnZhLW1hdC1tdWx0aS1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJ29uZW1ydmEtbWF0LW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1hdEZvcm1GaWVsZENvbnRyb2wsXG4gICAgICB1c2VFeGlzdGluZzogT25lbXJ2YU1hdE11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgICAgbXVsdGk6IGZhbHNlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBPbmVtcnZhTWF0TXVsdGlTZWxlY3RDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICAvLyB7XG4gICAgLy8gICBwcm92aWRlOiBNYXRGb3JtRmllbGRDb250cm9sLFxuICAgIC8vICAgdXNlRXhpc3Rpbmc6IE9uZW1ydmFNYXRNdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICAvLyB9LFxuICAgIC8vIHtcbiAgICAvLyAgIHByb3ZpZGU6IE1BVF9PUFRJT05fUEFSRU5UX0NPTVBPTkVOVCxcbiAgICAvLyAgIHVzZUV4aXN0aW5nOiBPbmVtcnZhTWF0TXVsdGlTZWxlY3RDb21wb25lbnQsXG4gICAgLy8gfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgT25lbXJ2YU1hdE11bHRpU2VsZWN0Q29tcG9uZW50XG4gIGV4dGVuZHMgTWF0Rm9ybUZpZWxkQ29udHJvbDxhbnk+XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudENoZWNrZWRcbntcbiAgY291bnRlciA9IDA7XG4gIF92YWx1ZXM6IGFueVtdID0gW107XG4gIHB1YmxpYyBvdmVycmlkZSBzdGF0ZUNoYW5nZXM6IE9ic2VydmFibGU8YW55PiA9IG5ldyBPYnNlcnZhYmxlPGFueT4oKTtcblxuICBASW5wdXQoKVxuICBtdWx0aXBsZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgZm9ybUNvbnRyb2whOiBGb3JtQ29udHJvbDtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ2F0dHIucm9sZScpXG4gIHB1YmxpYyByb2xlID0gJ3NlbGVjdCc7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdhdHRyLmFyaWEtbGFiZWwnKVxuICBwdWJsaWMgbGFiZWwgPSAnJztcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ2F0dHIuYXJpYS1pbnZhbGlkJylcbiAgcHVibGljIGludmFsaWQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBzaG93RmlsdGVyID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBzZWxlY3Rpb25Ub2dnbGUgPSB0cnVlO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgnYXR0ci5kYXRhLWN5JylcbiAgcHVibGljIGRhdGFDeSA9IGBvbmVtcnZhLW1hdC1tdWx0aS1zZWxlY3QtJHtORVhUX0lEKyt9YDtcblxuICBzZWFyY2hGaWx0ZXI6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sPHN0cmluZz4oJycpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oTWF0T3B0aW9uKVxuICBtYXRPcHRpb25zOiBRdWVyeUxpc3Q8TWF0T3B0aW9uPiA9IG5ldyBRdWVyeUxpc3Q8TWF0T3B0aW9uPigpO1xuICBtYXRPcHRpb25zJD86IE9ic2VydmFibGU8TWF0T3B0aW9uPGFueT5bXT47XG4gIHByaXZhdGUgb25EZXN0cm95JDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUub3BhY2l0eScpXG4gIGdldCBvcGFjaXR5KCkge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gMC4yNSA6IDE7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICAvLyBGdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIHJhdGluZyBjaGFuZ2VzLlxuICBvbkNoYW5nZSA9IChfdmFsdWVzOiBhbnlbXSkgPT4ge1xuICAgIC8vXG4gIH07XG5cbiAgLy8gRnVuY3Rpb24gdG8gY2FsbCB3aGVuIHRoZSBpbnB1dCBpcyB0b3VjaGVkICh3aGVuIGEgc3RhciBpcyBjbGlja2VkKS5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge1xuICAgIC8vXG4gIH07XG5cbiAgLy8gQWxsb3dzIEFuZ3VsYXIgdG8gdXBkYXRlIHRoZSBtb2RlbCAocmF0aW5nKS5cbiAgLy8gVXBkYXRlIHRoZSBtb2RlbCBhbmQgY2hhbmdlcyBuZWVkZWQgZm9yIHRoZSB2aWV3IGhlcmUuXG4gIHdyaXRlVmFsdWUodmFsdWVzOiBhbnlbXSB8IGFueSB8IHVuZGVmaW5lZCB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZXMpKSB0aGlzLmNvdW50ZXIgPSB2YWx1ZXMubGVuZ3RoO1xuICAgIGVsc2UgdGhpcy5jb3VudGVyID0gdGhpcy5fdmFsdWVzLmxlbmd0aDtcbiAgICB0aGlzLl92YWx1ZXMgPSB2YWx1ZXM7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLl92YWx1ZXMpO1xuICB9XG5cbiAgLy8gQWxsb3dzIEFuZ3VsYXIgdG8gcmVnaXN0ZXIgYSBmdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIG1vZGVsIChyYXRpbmcpIGNoYW5nZXMuXG4gIC8vIFNhdmUgdGhlIGZ1bmN0aW9uIGFzIGEgcHJvcGVydHkgdG8gY2FsbCBsYXRlciBoZXJlLlxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueVtdKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgLy8gQWxsb3dzIEFuZ3VsYXIgdG8gcmVnaXN0ZXIgYSBmdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIGlucHV0IGhhcyBiZWVuIHRvdWNoZWQuXG4gIC8vIFNhdmUgdGhlIGZ1bmN0aW9uIGFzIGEgcHJvcGVydHkgdG8gY2FsbCBsYXRlciBoZXJlLlxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBpc0FsbFNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLmNvdW50ZXIgPT09IHRoaXMubWF0T3B0aW9ucy5sZW5ndGg7XG4gIH1cblxuICBzZWxlY3RBbGwoKSB7XG4gICAgdGhpcy5fdmFsdWVzID0gdGhpcy5tYXRPcHRpb25zLm1hcChvcHRpb24gPT4ge1xuICAgICAgcmV0dXJuIG9wdGlvbi52YWx1ZTtcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMuX3ZhbHVlcyk7XG4gIH1cblxuICBpc05vbmVTZWxlY3RlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb3VudGVyID09PSAwO1xuICB9XG5cbiAgZGVzZWxlY3RBbGwoXyRldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuX3ZhbHVlcyA9IFtdO1xuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy5fdmFsdWVzKTtcbiAgfVxuXG4gIG9uQ29udGFpbmVyQ2xpY2soX2V2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgLy9cbiAgfVxuXG4gIHNldERlc2NyaWJlZEJ5SWRzKF9pZHM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgLy9cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25EZXN0cm95JC5uZXh0KCcnKTtcbiAgICB0aGlzLm9uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgb3B0aW9uU2l6ZSA9IDA7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXRPcHRpb25zJCA9IHRoaXMuc2VhcmNoRmlsdGVyLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgZGVib3VuY2VUaW1lKDIwMCksXG4gICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgbWFwKCh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMub3B0aW9uU2l6ZSA9IHRoaXMubWF0T3B0aW9ucy5sZW5ndGg7XG4gICAgICAgIGlmICh0aGlzLl92YWx1ZXMgIT09IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmNvdW50ZXIgPSB0aGlzLl92YWx1ZXMubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5tYXRPcHRpb25zLmZpbHRlcihfbyA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5tYXRPcHRpb25zLmZpbHRlcihvcHRpb24gPT4ge1xuICAgICAgICAgIHJldHVybiBvcHRpb24/Ll90ZXh0Py5uYXRpdmVFbGVtZW50LmlubmVySFRNTFxuICAgICAgICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgIC5pbmNsdWRlcyh2YWx1ZS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICApO1xuICAgIHRoaXMuZm9ybUNvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUodmFsdWVzID0+IHtcbiAgICAgICAgdGhpcy5fdmFsdWVzID0gdmFsdWVzO1xuICAgICAgICB0aGlzLmNvdW50ZXIgPSB0aGlzLl92YWx1ZXMubGVuZ3RoO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWF0T3B0aW9ucy5sZW5ndGggIT09IHRoaXMub3B0aW9uU2l6ZSkge1xuICAgICAgdGhpcy5vcHRpb25TaXplID0gdGhpcy5tYXRPcHRpb25zLmxlbmd0aDtcbiAgICAgIHRoaXMuY291bnRlciA9IDA7XG4gICAgICB0aGlzLnNlYXJjaEZpbHRlci51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgZW1pdEV2ZW50OiB0cnVlIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPG1hdC1zZWxlY3RcbiAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcbiAgW2F0dHIuZGF0YS1jeV09XCJkYXRhQ3lcIlxuICBbYXR0ci5hcmlhLWxhYmVsXT1cImxhYmVsXCJcbj5cbiAgPGRpdiBjbGFzcz1cInNlbGVjdGlvbi1jaG9pY2VcIiAqbmdJZj1cIm11bHRpcGxlICYmIHNlbGVjdGlvblRvZ2dsZVwiPlxuICAgIDxhXG4gICAgICB0YWJpbmRleD1cIjFcIlxuICAgICAgY2xhc3M9XCJzbWFsbFwiXG4gICAgICBbbmdDbGFzc109XCJ7IGRpc2FibGVkOiBpc0FsbFNlbGVjdGVkKCkgfVwiXG4gICAgICAoY2xpY2spPVwic2VsZWN0QWxsKClcIlxuICAgICAgPnt7ICdzZWxlY3Quc2VsZWN0LmFsbCcgfCB0cmFuc2xhdGUgfX08L2FcbiAgICA+PHNwYW4gY2xhc3M9XCJzbWFsbCBncmV5XCI+Jm5ic3A7Jm5ic3A7fCZuYnNwOyZuYnNwOzwvc3Bhbj5cbiAgICA8YVxuICAgICAgdGFiaW5kZXg9XCIyXCJcbiAgICAgIGNsYXNzPVwic21hbGxcIlxuICAgICAgW25nQ2xhc3NdPVwieyBkaXNhYmxlZDogaXNOb25lU2VsZWN0ZWQoKSB9XCJcbiAgICAgIChjbGljayk9XCJkZXNlbGVjdEFsbCgkZXZlbnQpXCJcbiAgICAgID57eyAnc2VsZWN0LmRlc2VsZWN0LmFsbCcgfCB0cmFuc2xhdGUgfX08L2FcbiAgICA+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwib3B0aW9uLWxpc3RcIj5cbiAgICA8bWF0LW9wdGlvbiAqbmdJZj1cInNob3dGaWx0ZXJcIj5cbiAgICAgIDxtYXQtc2VsZWN0LXNlYXJjaFxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoRmlsdGVyXCJcbiAgICAgICAgYXJpYUxhYmVsPVwie3sgJ3NlbGVjdC5zZWFyY2guZmlsdGVyJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIG5vRW50cmllc0ZvdW5kTGFiZWw9XCJ7eyAnc2VsZWN0LnNlYXJjaC5ub3RGb3VuZCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBwbGFjZWhvbGRlckxhYmVsPVwie3sgJ3NlbGVjdC5zZWFyY2guZmlsdGVyJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICA+PC9tYXQtc2VsZWN0LXNlYXJjaD5cbiAgICA8L21hdC1vcHRpb24+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWF0T3B0aW9uIG9mIG1hdE9wdGlvbnMkIHwgYXN5bmNcIj5cbiAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgIFtkaXNhYmxlZF09XCJtYXRPcHRpb24uZGlzYWJsZWRcIlxuICAgICAgICBbdmFsdWVdPVwibWF0T3B0aW9uLnZhbHVlXCJcbiAgICAgICAgW2F0dHIuZGF0YS1jeV09XCJtYXRPcHRpb24uX2dldEhvc3RFbGVtZW50KCkuZGF0YXNldFsnY3knXVwiXG4gICAgICA+XG4gICAgICAgIHt7IG1hdE9wdGlvbi5fdGV4dD8ubmF0aXZlRWxlbWVudD8uaW5uZXJIVE1MIH19XG4gICAgICA8L21hdC1vcHRpb24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9tYXQtc2VsZWN0PlxuPGRpdiBjbGFzcz1cIm1hdC1zZWxlY3QtY291bnRlclwiICpuZ0lmPVwibXVsdGlwbGUgJiYgY291bnRlciA+IDBcIj5cbiAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+e3sgY291bnRlciB9fTwvc3BhblxuICA+PG1hdC1pY29uIChjbGljayk9XCJkZXNlbGVjdEFsbCgkZXZlbnQpXCI+Y2xvc2U8L21hdC1pY29uPlxuPC9kaXY+XG4iXX0=
|
|
@@ -131,9 +131,6 @@ class OnemrvaMatMultiSelectComponent extends MatFormFieldControl {
|
|
|
131
131
|
this.searchFilter.updateValueAndValidity({ emitEvent: true });
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
|
-
ngOnChanges(changes) {
|
|
135
|
-
console.log(changes);
|
|
136
|
-
}
|
|
137
134
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OnemrvaMatMultiSelectComponent, deps: [{ token: i1.TranslateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
138
135
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OnemrvaMatMultiSelectComponent, selector: "onemrva-mat-multi-select", inputs: { multiple: "multiple", formControl: "formControl", role: ["attr.role", "role"], label: ["attr.aria-label", "label"], invalid: ["attr.aria-invalid", "invalid"], showFilter: "showFilter", selectionToggle: "selectionToggle", dataCy: ["attr.data-cy", "dataCy"] }, host: { properties: { "style.opacity": "this.opacity" } }, providers: [
|
|
139
136
|
{
|
|
@@ -154,7 +151,7 @@ class OnemrvaMatMultiSelectComponent extends MatFormFieldControl {
|
|
|
154
151
|
// provide: MAT_OPTION_PARENT_COMPONENT,
|
|
155
152
|
// useExisting: OnemrvaMatMultiSelectComponent,
|
|
156
153
|
// },
|
|
157
|
-
], queries: [{ propertyName: "matOptions", predicate: MatOption }], usesInheritance: true,
|
|
154
|
+
], queries: [{ propertyName: "matOptions", predicate: MatOption }], usesInheritance: true, ngImport: i0, template: "<mat-select\n [multiple]=\"multiple\"\n [formControl]=\"formControl\"\n [attr.data-cy]=\"dataCy\"\n [attr.aria-label]=\"label\"\n>\n <div class=\"selection-choice\" *ngIf=\"multiple && selectionToggle\">\n <a\n tabindex=\"1\"\n class=\"small\"\n [ngClass]=\"{ disabled: isAllSelected() }\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"small grey\"> | </span>\n <a\n tabindex=\"2\"\n class=\"small\"\n [ngClass]=\"{ disabled: isNoneSelected() }\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n <div class=\"option-list\">\n <mat-option *ngIf=\"showFilter\">\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n ></mat-select-search>\n </mat-option>\n <ng-container *ngFor=\"let matOption of matOptions$ | async\">\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.innerHTML }}\n </mat-option>\n </ng-container>\n </div>\n</mat-select>\n<div class=\"mat-select-counter\" *ngIf=\"multiple && counter > 0\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatSelectSearchComponent, selector: "mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
158
155
|
}
|
|
159
156
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OnemrvaMatMultiSelectComponent, decorators: [{
|
|
160
157
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onemrvapublic-design-system-mat-multi-select.mjs","sources":["../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.ts","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.html","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.module.ts","../../../../projects/onemrva/design-system/mat-multi-select/onemrvapublic-design-system-mat-multi-select.ts"],"sourcesContent":["import {\n AfterContentChecked,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n forwardRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport { FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { TranslateService } from '@ngx-translate/core';\nimport { MatOption } from '@angular/material/core';\nimport {\n debounceTime,\n map,\n Observable,\n startWith,\n Subject,\n takeUntil,\n} from 'rxjs';\n\nlet NEXT_ID = 0;\n\n@Component({\n selector: 'onemrva-mat-multi-select',\n templateUrl: 'onemrva-mat-multi-select.component.html',\n providers: [\n {\n provide: MatFormFieldControl,\n useExisting: OnemrvaMatMultiSelectComponent,\n multi: false,\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => OnemrvaMatMultiSelectComponent),\n multi: true,\n },\n // {\n // provide: MatFormFieldControl,\n // useExisting: OnemrvaMatMultiSelectComponent,\n // },\n // {\n // provide: MAT_OPTION_PARENT_COMPONENT,\n // useExisting: OnemrvaMatMultiSelectComponent,\n // },\n ],\n})\nexport class OnemrvaMatMultiSelectComponent\n extends MatFormFieldControl<any>\n implements OnInit, OnDestroy, AfterContentChecked, OnChanges\n{\n counter = 0;\n _values: any[] = [];\n public override stateChanges: Observable<any> = new Observable<any>();\n\n @Input()\n multiple = true;\n\n @Input()\n formControl!: FormControl;\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.role')\n public role = 'select';\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.aria-label')\n public label = '';\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.aria-invalid')\n public invalid = false;\n\n @Input()\n showFilter = true;\n\n @Input()\n selectionToggle = true;\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.data-cy')\n public dataCy = `onemrva-mat-multi-select-${NEXT_ID++}`;\n\n searchFilter: FormControl = new FormControl<string>('');\n\n @ContentChildren(MatOption)\n matOptions: QueryList<MatOption> = new QueryList<MatOption>();\n matOptions$?: Observable<MatOption<any>[]>;\n private onDestroy$: Subject<any> = new Subject<any>();\n\n @HostBinding('style.opacity')\n get opacity() {\n return this.disabled ? 0.25 : 1;\n }\n\n constructor(\n public translate: TranslateService,\n public cd: ChangeDetectorRef,\n ) {\n super();\n }\n\n // Function to call when the rating changes.\n onChange = (_values: any[]) => {\n //\n };\n\n // Function to call when the input is touched (when a star is clicked).\n onTouched = () => {\n //\n };\n\n // Allows Angular to update the model (rating).\n // Update the model and changes needed for the view here.\n writeValue(values: any[] | any | undefined | null): void {\n if (Array.isArray(values)) this.counter = values.length;\n else this.counter = this._values.length;\n this._values = values;\n this.onChange(this._values);\n }\n\n // Allows Angular to register a function to call when the model (rating) changes.\n // Save the function as a property to call later here.\n registerOnChange(fn: (value: any[]) => void): void {\n this.onChange = fn;\n }\n\n // Allows Angular to register a function to call when the input has been touched.\n // Save the function as a property to call later here.\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n isAllSelected() {\n return this.counter === this.matOptions.length;\n }\n\n selectAll() {\n this._values = this.matOptions.map(option => {\n return option.value;\n });\n this.formControl.setValue(this._values);\n }\n\n isNoneSelected() {\n return this.counter === 0;\n }\n\n deselectAll(_$event: MouseEvent) {\n this._values = [];\n this.formControl.setValue(this._values);\n }\n\n onContainerClick(_event: MouseEvent): void {\n //\n }\n\n setDescribedByIds(_ids: string[]): void {\n //\n }\n\n ngOnDestroy(): void {\n this.onDestroy$.next('');\n this.onDestroy$.complete();\n }\n\n private optionSize = 0;\n\n ngOnInit(): void {\n this.matOptions$ = this.searchFilter.valueChanges.pipe(\n debounceTime(200),\n startWith(''),\n map((value: string) => {\n this.optionSize = this.matOptions.length;\n if (this._values !== null) {\n this.counter = this._values.length;\n }\n if (value === '') {\n return this.matOptions.filter(_o => {\n return true;\n });\n }\n return this.matOptions.filter(option => {\n return option?._text?.nativeElement.innerHTML\n .toLowerCase()\n .includes(value.toLowerCase());\n });\n }),\n );\n this.formControl.valueChanges\n .pipe(takeUntil(this.onDestroy$))\n .subscribe(values => {\n this._values = values;\n this.counter = this._values.length;\n });\n }\n\n ngAfterContentChecked(): void {\n if (this.matOptions.length !== this.optionSize) {\n this.optionSize = this.matOptions.length;\n this.counter = 0;\n this.searchFilter.updateValueAndValidity({ emitEvent: true });\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n console.log(changes);\n }\n}\n","<mat-select\n [multiple]=\"multiple\"\n [formControl]=\"formControl\"\n [attr.data-cy]=\"dataCy\"\n [attr.aria-label]=\"label\"\n>\n <div class=\"selection-choice\" *ngIf=\"multiple && selectionToggle\">\n <a\n tabindex=\"1\"\n class=\"small\"\n [ngClass]=\"{ disabled: isAllSelected() }\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"small grey\"> | </span>\n <a\n tabindex=\"2\"\n class=\"small\"\n [ngClass]=\"{ disabled: isNoneSelected() }\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n <div class=\"option-list\">\n <mat-option *ngIf=\"showFilter\">\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n ></mat-select-search>\n </mat-option>\n <ng-container *ngFor=\"let matOption of matOptions$ | async\">\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.innerHTML }}\n </mat-option>\n </ng-container>\n </div>\n</mat-select>\n<div class=\"mat-select-counter\" *ngIf=\"multiple && counter > 0\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OnemrvaMatMultiSelectComponent } from './onemrva-mat-multi-select.component';\nimport { MatSelectModule } from '@angular/material/select';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\n\n@NgModule({\n declarations: [OnemrvaMatMultiSelectComponent],\n imports: [\n CommonModule,\n FormsModule,\n TranslateModule,\n MatFormFieldModule,\n MatSelectModule,\n MatInputModule,\n MatIconModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n ],\n exports: [OnemrvaMatMultiSelectComponent],\n})\nexport class OnemrvaMatMultiSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"onemrvapublic-design-system-mat-multi-select.mjs","sources":["../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.ts","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.component.html","../../../../projects/onemrva/design-system/mat-multi-select/src/onemrva-mat-multi-select.module.ts","../../../../projects/onemrva/design-system/mat-multi-select/onemrvapublic-design-system-mat-multi-select.ts"],"sourcesContent":["import {\n AfterContentChecked,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n forwardRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport { FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { TranslateService } from '@ngx-translate/core';\nimport { MatOption } from '@angular/material/core';\nimport {\n debounceTime,\n map,\n Observable,\n startWith,\n Subject,\n takeUntil,\n} from 'rxjs';\n\nlet NEXT_ID = 0;\n\n@Component({\n selector: 'onemrva-mat-multi-select',\n templateUrl: 'onemrva-mat-multi-select.component.html',\n providers: [\n {\n provide: MatFormFieldControl,\n useExisting: OnemrvaMatMultiSelectComponent,\n multi: false,\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => OnemrvaMatMultiSelectComponent),\n multi: true,\n },\n // {\n // provide: MatFormFieldControl,\n // useExisting: OnemrvaMatMultiSelectComponent,\n // },\n // {\n // provide: MAT_OPTION_PARENT_COMPONENT,\n // useExisting: OnemrvaMatMultiSelectComponent,\n // },\n ],\n})\nexport class OnemrvaMatMultiSelectComponent\n extends MatFormFieldControl<any>\n implements OnInit, OnDestroy, AfterContentChecked\n{\n counter = 0;\n _values: any[] = [];\n public override stateChanges: Observable<any> = new Observable<any>();\n\n @Input()\n multiple = true;\n\n @Input()\n formControl!: FormControl;\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.role')\n public role = 'select';\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.aria-label')\n public label = '';\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.aria-invalid')\n public invalid = false;\n\n @Input()\n showFilter = true;\n\n @Input()\n selectionToggle = true;\n\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('attr.data-cy')\n public dataCy = `onemrva-mat-multi-select-${NEXT_ID++}`;\n\n searchFilter: FormControl = new FormControl<string>('');\n\n @ContentChildren(MatOption)\n matOptions: QueryList<MatOption> = new QueryList<MatOption>();\n matOptions$?: Observable<MatOption<any>[]>;\n private onDestroy$: Subject<any> = new Subject<any>();\n\n @HostBinding('style.opacity')\n get opacity() {\n return this.disabled ? 0.25 : 1;\n }\n\n constructor(\n public translate: TranslateService,\n public cd: ChangeDetectorRef,\n ) {\n super();\n }\n\n // Function to call when the rating changes.\n onChange = (_values: any[]) => {\n //\n };\n\n // Function to call when the input is touched (when a star is clicked).\n onTouched = () => {\n //\n };\n\n // Allows Angular to update the model (rating).\n // Update the model and changes needed for the view here.\n writeValue(values: any[] | any | undefined | null): void {\n if (Array.isArray(values)) this.counter = values.length;\n else this.counter = this._values.length;\n this._values = values;\n this.onChange(this._values);\n }\n\n // Allows Angular to register a function to call when the model (rating) changes.\n // Save the function as a property to call later here.\n registerOnChange(fn: (value: any[]) => void): void {\n this.onChange = fn;\n }\n\n // Allows Angular to register a function to call when the input has been touched.\n // Save the function as a property to call later here.\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n isAllSelected() {\n return this.counter === this.matOptions.length;\n }\n\n selectAll() {\n this._values = this.matOptions.map(option => {\n return option.value;\n });\n this.formControl.setValue(this._values);\n }\n\n isNoneSelected() {\n return this.counter === 0;\n }\n\n deselectAll(_$event: MouseEvent) {\n this._values = [];\n this.formControl.setValue(this._values);\n }\n\n onContainerClick(_event: MouseEvent): void {\n //\n }\n\n setDescribedByIds(_ids: string[]): void {\n //\n }\n\n ngOnDestroy(): void {\n this.onDestroy$.next('');\n this.onDestroy$.complete();\n }\n\n private optionSize = 0;\n\n ngOnInit(): void {\n this.matOptions$ = this.searchFilter.valueChanges.pipe(\n debounceTime(200),\n startWith(''),\n map((value: string) => {\n this.optionSize = this.matOptions.length;\n if (this._values !== null) {\n this.counter = this._values.length;\n }\n if (value === '') {\n return this.matOptions.filter(_o => {\n return true;\n });\n }\n return this.matOptions.filter(option => {\n return option?._text?.nativeElement.innerHTML\n .toLowerCase()\n .includes(value.toLowerCase());\n });\n }),\n );\n this.formControl.valueChanges\n .pipe(takeUntil(this.onDestroy$))\n .subscribe(values => {\n this._values = values;\n this.counter = this._values.length;\n });\n }\n\n ngAfterContentChecked(): void {\n if (this.matOptions.length !== this.optionSize) {\n this.optionSize = this.matOptions.length;\n this.counter = 0;\n this.searchFilter.updateValueAndValidity({ emitEvent: true });\n }\n }\n}\n","<mat-select\n [multiple]=\"multiple\"\n [formControl]=\"formControl\"\n [attr.data-cy]=\"dataCy\"\n [attr.aria-label]=\"label\"\n>\n <div class=\"selection-choice\" *ngIf=\"multiple && selectionToggle\">\n <a\n tabindex=\"1\"\n class=\"small\"\n [ngClass]=\"{ disabled: isAllSelected() }\"\n (click)=\"selectAll()\"\n >{{ 'select.select.all' | translate }}</a\n ><span class=\"small grey\"> | </span>\n <a\n tabindex=\"2\"\n class=\"small\"\n [ngClass]=\"{ disabled: isNoneSelected() }\"\n (click)=\"deselectAll($event)\"\n >{{ 'select.deselect.all' | translate }}</a\n >\n </div>\n <div class=\"option-list\">\n <mat-option *ngIf=\"showFilter\">\n <mat-select-search\n [formControl]=\"searchFilter\"\n ariaLabel=\"{{ 'select.search.filter' | translate }}\"\n noEntriesFoundLabel=\"{{ 'select.search.notFound' | translate }}\"\n placeholderLabel=\"{{ 'select.search.filter' | translate }}\"\n ></mat-select-search>\n </mat-option>\n <ng-container *ngFor=\"let matOption of matOptions$ | async\">\n <mat-option\n [disabled]=\"matOption.disabled\"\n [value]=\"matOption.value\"\n [attr.data-cy]=\"matOption._getHostElement().dataset['cy']\"\n >\n {{ matOption._text?.nativeElement?.innerHTML }}\n </mat-option>\n </ng-container>\n </div>\n</mat-select>\n<div class=\"mat-select-counter\" *ngIf=\"multiple && counter > 0\">\n <span class=\"text\">{{ counter }}</span\n ><mat-icon (click)=\"deselectAll($event)\">close</mat-icon>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OnemrvaMatMultiSelectComponent } from './onemrva-mat-multi-select.component';\nimport { MatSelectModule } from '@angular/material/select';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\n\n@NgModule({\n declarations: [OnemrvaMatMultiSelectComponent],\n imports: [\n CommonModule,\n FormsModule,\n TranslateModule,\n MatFormFieldModule,\n MatSelectModule,\n MatInputModule,\n MatIconModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n ],\n exports: [OnemrvaMatMultiSelectComponent],\n})\nexport class OnemrvaMatMultiSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { AfterContentChecked, ChangeDetectorRef,
|
|
1
|
+
import { AfterContentChecked, ChangeDetectorRef, OnDestroy, OnInit, QueryList } from '@angular/core';
|
|
2
2
|
import { FormControl } from '@angular/forms';
|
|
3
3
|
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
4
4
|
import { TranslateService } from '@ngx-translate/core';
|
|
5
5
|
import { MatOption } from '@angular/material/core';
|
|
6
6
|
import { Observable } from 'rxjs';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
-
export declare class OnemrvaMatMultiSelectComponent extends MatFormFieldControl<any> implements OnInit, OnDestroy, AfterContentChecked
|
|
8
|
+
export declare class OnemrvaMatMultiSelectComponent extends MatFormFieldControl<any> implements OnInit, OnDestroy, AfterContentChecked {
|
|
9
9
|
translate: TranslateService;
|
|
10
10
|
cd: ChangeDetectorRef;
|
|
11
11
|
counter: number;
|
|
@@ -40,7 +40,6 @@ export declare class OnemrvaMatMultiSelectComponent extends MatFormFieldControl<
|
|
|
40
40
|
private optionSize;
|
|
41
41
|
ngOnInit(): void;
|
|
42
42
|
ngAfterContentChecked(): void;
|
|
43
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
44
43
|
static ɵfac: i0.ɵɵFactoryDeclaration<OnemrvaMatMultiSelectComponent, never>;
|
|
45
44
|
static ɵcmp: i0.ɵɵComponentDeclaration<OnemrvaMatMultiSelectComponent, "onemrva-mat-multi-select", never, { "multiple": { "alias": "multiple"; "required": false; }; "formControl": { "alias": "formControl"; "required": false; }; "role": { "alias": "attr.role"; "required": false; }; "label": { "alias": "attr.aria-label"; "required": false; }; "invalid": { "alias": "attr.aria-invalid"; "required": false; }; "showFilter": { "alias": "showFilter"; "required": false; }; "selectionToggle": { "alias": "selectionToggle"; "required": false; }; "dataCy": { "alias": "attr.data-cy"; "required": false; }; }, {}, ["matOptions"], never, false, never>;
|
|
46
45
|
}
|