@clr/angular
Version:
Angular components for Clarity
38 lines • 3.57 kB
JavaScript
/*
* Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.
* This software is released under MIT license.
* The full license information can be found in LICENSE in the root directory of this project.
*/
export class SingleSelectComboboxModel {
containsItem(item) {
return this.model === item;
}
select(item) {
this.model = item;
}
unselect(item) {
if (this.containsItem(item)) {
this.model = null;
}
}
isEmpty() {
return !this.model;
}
pop() {
const item = this.model;
this.model = null;
return item;
}
toString(displayField) {
if (!this.model) {
return '';
}
if (displayField && this.model[displayField]) {
return this.model[displayField];
}
else {
return this.model.toString();
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXNlbGVjdC1jb21ib2JveC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL2Zvcm1zL2NvbWJvYm94L21vZGVsL3NpbmdsZS1zZWxlY3QtY29tYm9ib3gubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUlILE1BQU0sT0FBTyx5QkFBeUI7SUFHcEMsWUFBWSxDQUFDLElBQU87UUFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQU87UUFDWixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDO0lBRUQsUUFBUSxDQUFDLElBQU87UUFDZCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxHQUFHO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxRQUFRLENBQUMsWUFBcUI7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsSUFBSSxZQUFZLElBQUssSUFBSSxDQUFDLEtBQWEsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUNyRCxPQUFRLElBQUksQ0FBQyxLQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDMUM7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUM5QjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMyBWTXdhcmUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgQ29tYm9ib3hNb2RlbCB9IGZyb20gJy4vY29tYm9ib3gubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgU2luZ2xlU2VsZWN0Q29tYm9ib3hNb2RlbDxUPiBpbXBsZW1lbnRzIENvbWJvYm94TW9kZWw8VD4ge1xuICBtb2RlbDogVDtcblxuICBjb250YWluc0l0ZW0oaXRlbTogVCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1vZGVsID09PSBpdGVtO1xuICB9XG5cbiAgc2VsZWN0KGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsID0gaXRlbTtcbiAgfVxuXG4gIHVuc2VsZWN0KGl0ZW06IFQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb250YWluc0l0ZW0oaXRlbSkpIHtcbiAgICAgIHRoaXMubW9kZWwgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIGlzRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLm1vZGVsO1xuICB9XG5cbiAgcG9wKCk6IFQge1xuICAgIGNvbnN0IGl0ZW0gPSB0aGlzLm1vZGVsO1xuICAgIHRoaXMubW9kZWwgPSBudWxsO1xuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgdG9TdHJpbmcoZGlzcGxheUZpZWxkPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMubW9kZWwpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgaWYgKGRpc3BsYXlGaWVsZCAmJiAodGhpcy5tb2RlbCBhcyBhbnkpW2Rpc3BsYXlGaWVsZF0pIHtcbiAgICAgIHJldHVybiAodGhpcy5tb2RlbCBhcyBhbnkpW2Rpc3BsYXlGaWVsZF07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1vZGVsLnRvU3RyaW5nKCk7XG4gICAgfVxuICB9XG59XG4iXX0=