@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
38 lines • 4.74 kB
JavaScript
/**
* Used by [UserListField]{@link UserListField}.
*
* Represents the value of the user list.
*/
import { UserValue } from '../../user-field/models/user-value';
export class UserListValue {
_userValues;
constructor(userValues) {
this._userValues = userValues;
}
get userValues() {
return this._userValues;
}
set userValues(value) {
this._userValues = value;
}
addUserValue(value) {
this._userValues.set(value.id, value);
}
addUserValues(value) {
value.forEach((v, k) => this._userValues.set(k, v));
}
getLast() {
if (this._userValues.size == 0) {
return new UserValue('', '', '', '', '');
}
return Array.from(this._userValues.values()).pop();
}
toString() {
const userNames = Array.from(this._userValues.values()).reduce((acc, curr) => acc + curr.fullName + ',', '');
return userNames.slice(0, userNames.lastIndexOf(','));
}
removeUserValue(userId) {
this._userValues.delete(userId);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1saXN0LXZhbHVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9kYXRhLWZpZWxkcy91c2VyLWxpc3QtZmllbGQvbW9kZWxzL3VzZXItbGlzdC12YWx1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRS9ELE1BQU0sT0FBTyxhQUFhO0lBRWQsV0FBVyxDQUF5QjtJQUU1QyxZQUFZLFVBQWtDO1FBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksVUFBVSxDQUFDLEtBQTZCO1FBQ3hDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFTSxZQUFZLENBQUMsS0FBZ0I7UUFDaEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQTZCO1FBQzlDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN2RCxDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFFO1lBQzVCLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQzVDO1FBQ0QsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBRU0sUUFBUTtRQUNYLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUM1RyxPQUFPLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUN6RCxDQUFDO0lBRU0sZUFBZSxDQUFDLE1BQWM7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUdKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVc2VkIGJ5IFtVc2VyTGlzdEZpZWxkXXtAbGluayBVc2VyTGlzdEZpZWxkfS5cbiAqXG4gKiBSZXByZXNlbnRzIHRoZSB2YWx1ZSBvZiB0aGUgdXNlciBsaXN0LlxuICovXG5pbXBvcnQgeyBVc2VyVmFsdWUgfSBmcm9tICcuLi8uLi91c2VyLWZpZWxkL21vZGVscy91c2VyLXZhbHVlJztcblxuZXhwb3J0IGNsYXNzIFVzZXJMaXN0VmFsdWUge1xuXG4gICAgcHJpdmF0ZSBfdXNlclZhbHVlczogTWFwPHN0cmluZywgVXNlclZhbHVlPjtcblxuICAgIGNvbnN0cnVjdG9yKHVzZXJWYWx1ZXM6IE1hcDxzdHJpbmcsIFVzZXJWYWx1ZT4pIHtcbiAgICAgICAgdGhpcy5fdXNlclZhbHVlcyA9IHVzZXJWYWx1ZXM7XG4gICAgfVxuXG4gICAgZ2V0IHVzZXJWYWx1ZXMoKTogTWFwPHN0cmluZywgVXNlclZhbHVlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl91c2VyVmFsdWVzO1xuICAgIH1cblxuICAgIHNldCB1c2VyVmFsdWVzKHZhbHVlOiBNYXA8c3RyaW5nLCBVc2VyVmFsdWU+KSB7XG4gICAgICAgIHRoaXMuX3VzZXJWYWx1ZXMgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVXNlclZhbHVlKHZhbHVlOiBVc2VyVmFsdWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdXNlclZhbHVlcy5zZXQodmFsdWUuaWQsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVXNlclZhbHVlcyh2YWx1ZTogTWFwPHN0cmluZywgVXNlclZhbHVlPik6IHZvaWQge1xuICAgICAgICB2YWx1ZS5mb3JFYWNoKCh2LCBrKSA9PiB0aGlzLl91c2VyVmFsdWVzLnNldChrLCB2KSlcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TGFzdCgpOiBVc2VyVmFsdWUge1xuICAgICAgICBpZiAodGhpcy5fdXNlclZhbHVlcy5zaXplID09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgVXNlclZhbHVlKCcnLCAnJywgJycsICcnLCAnJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5fdXNlclZhbHVlcy52YWx1ZXMoKSkucG9wKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHVzZXJOYW1lcyA9IEFycmF5LmZyb20odGhpcy5fdXNlclZhbHVlcy52YWx1ZXMoKSkucmVkdWNlKChhY2MsIGN1cnIpID0+IGFjYyArIGN1cnIuZnVsbE5hbWUgKyAnLCcsICcnKVxuICAgICAgICByZXR1cm4gdXNlck5hbWVzLnNsaWNlKDAsIHVzZXJOYW1lcy5sYXN0SW5kZXhPZignLCcpKVxuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVVc2VyVmFsdWUodXNlcklkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdXNlclZhbHVlcy5kZWxldGUodXNlcklkKTtcbiAgICB9XG5cblxufVxuIl19