UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

59 lines (58 loc) 2.52 kB
import { EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { Observable, ReplaySubject } from 'rxjs'; import { UserListItem, UserListService } from '../../../../user/services/user-list.service'; import { UserValue } from '../../../../data-fields/user-field/models/user-value'; import { AbstractBaseUserAssignListComponent } from "../base-user-assign-list/abstract-base-user-assign-list.component"; import * as i0 from "@angular/core"; /** * Is responsible for displaying, filtering, loading and selecting users. */ export declare abstract class AbstractUserAssignListComponent extends AbstractBaseUserAssignListComponent implements OnInit, OnDestroy { /** * The user that is initially selected, or `undefined` if none is */ initiallySelectedUser: UserValue | undefined; /** * Emit selected user to parent component. */ userSelected: EventEmitter<UserValue>; /** * UserValue array stream, that represents users loading from backend. */ users$: Observable<Array<UserListItem>>; /** * Stream of selected user with his value that we can subscribe to like the observable. */ protected _selectedUser$: ReplaySubject<string>; /** * Inject and initialize attributes. * @param _userListService Service to get paginated loading users from backend. */ constructor(_userListService: UserListService); /** * On initialize component set value to stream selectedUser with preselected user. * Observes search user control stream on value change. */ ngOnInit(): void; ngOnDestroy(): void; /** * ID of the currently selected user */ get selectedUser$(): Observable<string>; /** * Sets current user to the selected user. * * Emit selected user to parent component. * * Marks selected user in users list. * @param selectedUser [UserValue]{@link UserValue} */ select(selectedUser: UserListItem): void; /** * Marks user as selected in users list. * @param selectedUser Current select user value. */ protected _markSelectedUser(selectedUser: UserListItem): void; static ɵfac: i0.ɵɵFactoryDeclaration<AbstractUserAssignListComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<AbstractUserAssignListComponent, "ncc-abstract-user-assign-list", never, { "initiallySelectedUser": { "alias": "initiallySelectedUser"; "required": false; }; }, { "userSelected": "userSelected"; }, never, never, false, never>; }