UNPKG

@obliczeniowo/elementary

Version:
100 lines (95 loc) 5.21 kB
import * as i0 from '@angular/core'; import { EventEmitter, OnInit, OnDestroy, TemplateRef, SimpleChanges } from '@angular/core'; import { Subscription } from 'rxjs'; import * as i6 from '@angular/forms'; import { ControlValueAccessor, FormControl } from '@angular/forms'; import { AbstractSearchDomain } from '@obliczeniowo/elementary/classes'; import * as i8 from '@obliczeniowo/elementary/input'; import { InputWrappersDefaultSettingsService } from '@obliczeniowo/elementary/input'; import * as i3 from '@angular/common'; import * as i4 from '@angular/cdk/overlay'; import * as i5 from '@angular/cdk/drag-drop'; import * as i7 from '@obliczeniowo/elementary/buttons'; declare class DragBarComponent { touchedDragBar: boolean; onTouched: EventEmitter<boolean>; onClose: EventEmitter<void>; click(event: any): void; static ɵfac: i0.ɵɵFactoryDeclaration<DragBarComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DragBarComponent, "obl-drag-bar", never, {}, { "onTouched": "onTouched"; "onClose": "onClose"; }, never, never, false, never>; } interface DropdownSelectItem<T> { id: string | number; text: string; templateData?: T; } declare class DropdownSelectComponent implements OnInit, OnDestroy, ControlValueAccessor { private readonly settings; protected touchedDragBar: boolean; /** * Control the select items data flow. * * If you want to override this one for getting data from BE source for example just create * own class that extends AbstractSearchModel and do what you need to do to filter out items * list */ model: i0.InputSignal<AbstractSearchDomain<DropdownSelectItem<any>>>; items: DropdownSelectItem<any>[]; /** Label to display over the field (default undefined so it will have no label at all) */ label: i0.InputSignal<string | undefined>; /** * Enable type text animation for label */ labelAnimation: boolean; /** Template for suffix, if exist display after select item */ templateSuffix: i0.InputSignal<TemplateRef<any> | undefined>; /** Template for prefix, if exist display before select item */ templatePrefix: i0.InputSignal<TemplateRef<any> | undefined>; /** Define if search control should shows up */ search: boolean; regExp?: { on?: boolean; }; /** */ select: string | number; /** disable choosing element, search (if added) is available and dropdown list too */ disabled: boolean; /** emit when selected item is changed by user */ changed: EventEmitter<DropdownSelectItem<any>>; /** search control */ searchControl: FormControl; /** selected item */ selected: DropdownSelectItem<any> | undefined; /** define if list is opened */ isOpen: boolean; /** define if element is touched */ touched: boolean; protected subscription: Subscription; constructor(settings: InputWrappersDefaultSettingsService); onChange: (value: string | number) => void; onTouched: () => void; registerOnValidatorChange(fn: () => void): void; toggleReg(): void; writeValue(id: number | string): void; registerOnChange(onChange: any): void; registerOnTouched(onTouched: any): void; markAsTouched(): void; ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; close(touched?: boolean): void; open(): void; toggle(event: any, touched?: boolean): void; onSelect(item: DropdownSelectItem<any>, dragBar: DragBarComponent): void; onTouchedDragBar(touched: boolean, element: any): void; setDisabledState(disabled: boolean): void; static ɵfac: i0.ɵɵFactoryDeclaration<DropdownSelectComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DropdownSelectComponent, "obl-dropdown-select", never, { "model": { "alias": "model"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "labelAnimation": { "alias": "labelAnimation"; "required": false; }; "templateSuffix": { "alias": "templateSuffix"; "required": false; "isSignal": true; }; "templatePrefix": { "alias": "templatePrefix"; "required": false; "isSignal": true; }; "search": { "alias": "search"; "required": false; }; "regExp": { "alias": "regExp"; "required": false; }; "select": { "alias": "select"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "changed": "changed"; }, never, ["[suffix]"], false, never>; } declare class DropdownSelectModule { static ɵfac: i0.ɵɵFactoryDeclaration<DropdownSelectModule, never>; static ɵmod: i0.ɵɵNgModuleDeclaration<DropdownSelectModule, [typeof DropdownSelectComponent, typeof DragBarComponent], [typeof i3.CommonModule, typeof i4.OverlayModule, typeof i5.DragDropModule, typeof i6.FormsModule, typeof i7.ButtonsModule, typeof i8.InputModule, typeof i6.ReactiveFormsModule], [typeof DropdownSelectComponent, typeof DragBarComponent]>; static ɵinj: i0.ɵɵInjectorDeclaration<DropdownSelectModule>; } export { DragBarComponent, DropdownSelectComponent, DropdownSelectModule }; export type { DropdownSelectItem };