@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
39 lines • 4.89 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 {
// TODO: rebranding to actor-list-field
_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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1saXN0LXZhbHVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9kYXRhLWZpZWxkcy91c2VyLWxpc3QtZmllbGQvbW9kZWxzL3VzZXItbGlzdC12YWx1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRS9ELE1BQU0sT0FBTyxhQUFhO0lBQ3RCLHVDQUF1QztJQUUvQixXQUFXLENBQXlCO0lBRTVDLFlBQVksVUFBa0M7UUFDMUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsS0FBNkI7UUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDN0IsQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUFnQjtRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBNkI7UUFDOUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3ZELENBQUM7SUFFTSxPQUFPO1FBQ1YsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxDQUFDLEVBQUU7WUFDNUIsT0FBTyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ2hEO1FBQ0QsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBRU0sUUFBUTtRQUNYLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUM1RyxPQUFPLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUN6RCxDQUFDO0lBRU0sZUFBZSxDQUFDLE1BQWM7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUdKIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVc2VkIGJ5IFtVc2VyTGlzdEZpZWxkXXtAbGluayBVc2VyTGlzdEZpZWxkfS5cbiAqXG4gKiBSZXByZXNlbnRzIHRoZSB2YWx1ZSBvZiB0aGUgdXNlciBsaXN0LlxuICovXG5pbXBvcnQgeyBVc2VyVmFsdWUgfSBmcm9tICcuLi8uLi91c2VyLWZpZWxkL21vZGVscy91c2VyLXZhbHVlJztcblxuZXhwb3J0IGNsYXNzIFVzZXJMaXN0VmFsdWUge1xuICAgIC8vIFRPRE86IHJlYnJhbmRpbmcgdG8gYWN0b3ItbGlzdC1maWVsZFxuXG4gICAgcHJpdmF0ZSBfdXNlclZhbHVlczogTWFwPHN0cmluZywgVXNlclZhbHVlPjtcblxuICAgIGNvbnN0cnVjdG9yKHVzZXJWYWx1ZXM6IE1hcDxzdHJpbmcsIFVzZXJWYWx1ZT4pIHtcbiAgICAgICAgdGhpcy5fdXNlclZhbHVlcyA9IHVzZXJWYWx1ZXM7XG4gICAgfVxuXG4gICAgZ2V0IHVzZXJWYWx1ZXMoKTogTWFwPHN0cmluZywgVXNlclZhbHVlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl91c2VyVmFsdWVzO1xuICAgIH1cblxuICAgIHNldCB1c2VyVmFsdWVzKHZhbHVlOiBNYXA8c3RyaW5nLCBVc2VyVmFsdWU+KSB7XG4gICAgICAgIHRoaXMuX3VzZXJWYWx1ZXMgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVXNlclZhbHVlKHZhbHVlOiBVc2VyVmFsdWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdXNlclZhbHVlcy5zZXQodmFsdWUuaWQsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVXNlclZhbHVlcyh2YWx1ZTogTWFwPHN0cmluZywgVXNlclZhbHVlPik6IHZvaWQge1xuICAgICAgICB2YWx1ZS5mb3JFYWNoKCh2LCBrKSA9PiB0aGlzLl91c2VyVmFsdWVzLnNldChrLCB2KSlcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TGFzdCgpOiBVc2VyVmFsdWUge1xuICAgICAgICBpZiAodGhpcy5fdXNlclZhbHVlcy5zaXplID09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgVXNlclZhbHVlKCcnLCAnJywgJycsICcnLCAnJywgJycpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuX3VzZXJWYWx1ZXMudmFsdWVzKCkpLnBvcCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCB1c2VyTmFtZXMgPSBBcnJheS5mcm9tKHRoaXMuX3VzZXJWYWx1ZXMudmFsdWVzKCkpLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiBhY2MgKyBjdXJyLmZ1bGxOYW1lICsgJywnLCAnJylcbiAgICAgICAgcmV0dXJuIHVzZXJOYW1lcy5zbGljZSgwLCB1c2VyTmFtZXMubGFzdEluZGV4T2YoJywnKSlcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlVXNlclZhbHVlKHVzZXJJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3VzZXJWYWx1ZXMuZGVsZXRlKHVzZXJJZCk7XG4gICAgfVxuXG5cbn1cbiJdfQ==