UNPKG

@tapsellorg/angular-material-library

Version:

Angular library for Tapsell

60 lines (59 loc) 2.22 kB
import { Subject } from 'rxjs'; import { AbstractControl } from '@angular/forms'; import { PghFilterChipsMarkerDirective } from './filter-chips.directive'; import { TemplateRef } from '@angular/core'; export interface PghFilterChipItemsConnectorOptions { directiveConnector$: Subject<PghFilterChipsMarkerDirective>; } export declare class PghFilterChipsItem<T extends any = any> { markerDirective: PghFilterChipsMarkerDirective; config: PghFilterChipConfig; private _value$; readonly filterControl?: AbstractControl | null; value?: T | T[]; updateOn: PghFilterFieldUpdateOn; valueDisplayedName?: string; private _isActive; private _isOverlayOpen; get isActive(): boolean; set isActive(value: boolean); get isOverlayOpen(): boolean; set isOverlayOpen(value: boolean); /** * Used for submit * When a new value is emitted to this observable, The filters are submitted */ value$: import("rxjs").Observable<T | T[] | undefined>; constructor(markerDirective: PghFilterChipsMarkerDirective, config: PghFilterChipConfig, initValue?: PghFilterChipInitValue<T> | PghFilterChipInitValue<T>[] | null); private setSingleValue; private setMultipleValue; valueSetter: (value: T | T[], { closeOverlay, displayedName }?: PghFilterChipValueSetterConfig) => void; closeOverlay: () => void; private initFilterControlSetups; private emitUpdatedValue; onDestroy(): void; clear(): void; openOverlay(): void; } export interface PghFilterChipConfig { field: string; name: string; filterControl?: AbstractControl | null; panelClass?: string | null; updateOn?: PghFilterFieldUpdateOn | null; debounceValueChangeDelay?: number | null; chipTemplate?: TemplateRef<any> | null; alwaysActive?: boolean | null; placeholder?: string | null; noClearButton?: boolean | null; } export type PghFilterFieldUpdateOn = 'valueChange' | 'closeOverlay'; export interface PghFilterChipValueSetterConfig { closeOverlay?: boolean; displayedName?: string; } export interface PghFilterChipInitValue<T = any> { value: T; name?: string; } export type PghFilterChipsSearchEvent = Record<string, any>;