@junte/ui
Version:
Quality Angular UI components kit
108 lines (107 loc) • 9.66 kB
TypeScript
import { AfterContentInit, ElementRef, EventEmitter, OnDestroy, OnInit, QueryList, Renderer2, TemplateRef } from '@angular/core';
import { ControlValueAccessor, FormBuilder } from '@angular/forms';
import { NGXLogger } from 'ngx-logger';
import { DeviceService } from '../../layout/responsive/device.service';
import { Feature } from '../../core/enums/feature';
import { Placement } from '../../core/enums/placement';
import { Size } from '../../core/enums/size';
import { State } from '../../core/enums/state';
import { UI } from '../../core/enums/ui';
import { Width } from '../../core/enums/width';
import { BreakpointService } from '../../layout/responsive/breakpoint.service';
import { PopoverService } from '../../overlays/popover/popover.service';
import { SelectMode } from './enums';
import { IOption, Key, Options } from './model';
import * as ɵngcc0 from '@angular/core';
export declare class SelectOptionComponent {
ui: typeof UI;
icon: string;
key: Key;
label: string;
value: any;
static ɵfac: ɵngcc0.ɵɵFactoryDef<SelectOptionComponent, never>;
static ɵcmp: ɵngcc0.ɵɵComponentDefWithMeta<SelectOptionComponent, "jnt-select-option", never, { "icon": "icon"; "key": "key"; "label": "label"; "value": "value"; }, {}, never, never>;
}
export declare class SelectComponent implements OnInit, AfterContentInit, OnDestroy, ControlValueAccessor {
private hostRef;
private renderer;
private fb;
private popover;
private logger;
private breakpoint;
device: DeviceService;
readonly host = "jnt-select-host";
private reference;
private destroyed;
private _features;
ui: typeof UI;
get mobile(): boolean;
private fetcher;
private _placement;
options: Options;
changes: {
selected: number;
options: number;
};
selected: Key[];
loading: boolean;
queryControl: import("@angular/forms").FormControl;
form: import("@angular/forms").FormGroup;
labelField: string;
keyField: string;
placeholder: string;
required: boolean;
_mode: SelectMode;
_size: Size;
_width: Width;
label: string;
icon: string;
queryInput: ElementRef<HTMLInputElement>;
selectedList: ElementRef<HTMLUListElement>;
query: ElementRef<HTMLInputElement>;
state: State;
optionTemplate: TemplateRef<any>;
emptyOptionsTemplate: TemplateRef<any>;
optionsHeaderTemplate: TemplateRef<any>;
optionsFromMarkup: QueryList<SelectOptionComponent>;
optionsTemplate: TemplateRef<any>;
updated: EventEmitter<any>;
opened: boolean;
set placement(placement: Placement);
get placement(): Placement;
set mode(mode: SelectMode);
get mode(): SelectMode;
set features(features: Feature[]);
get features(): Feature[];
disabled: boolean;
set size(size: Size);
set width(width: Width);
get empty(): boolean;
loader: any;
clickOutside(path: HTMLElement[]): void;
focused({ target }: {
target: HTMLElement;
path: HTMLElement[];
}): void;
blurred(): void;
onChange: (value: Key | Key[]) => void;
onTouched: () => void;
registerOnChange: (fn: any) => any;
registerOnTouched: (fn: any) => any;
constructor(hostRef: ElementRef, renderer: Renderer2, fb: FormBuilder, popover: PopoverService, logger: NGXLogger, breakpoint: BreakpointService, device: DeviceService);
ngOnInit(): void;
ngAfterContentInit(): void;
ngOnDestroy(): void;
private picked;
trackOption(index: number, option: IOption): string | number;
toggle(option: IOption): void;
select(option: IOption): void;
remove(key: Key): void;
open(): void;
close(): void;
writeValue(value: Key | Key[]): void;
setDisabledState(disabled: boolean): void;
static ɵfac: ɵngcc0.ɵɵFactoryDef<SelectComponent, never>;
static ɵcmp: ɵngcc0.ɵɵComponentDefWithMeta<SelectComponent, "jnt-select", never, { "labelField": "labelField"; "keyField": "keyField"; "placeholder": "placeholder"; "required": "required"; "disabled": "disabled"; "loader": "loader"; "placement": "placement"; "mode": "mode"; "features": "features"; "size": "size"; "width": "width"; "label": "label"; "icon": "icon"; "state": "state"; "optionTemplate": "optionTemplate"; "emptyOptionsTemplate": "emptyOptionsTemplate"; "optionsHeaderTemplate": "optionsHeaderTemplate"; }, { "updated": "selected"; }, ["optionsFromMarkup"], never>;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5kLnRzIiwic291cmNlcyI6WyJzZWxlY3QuY29tcG9uZW50LmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztBQWNBOzs7Ozs7OztBQU1BOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBZ0ZBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3ksIE9uSW5pdCwgUXVlcnlMaXN0LCBSZW5kZXJlcjIsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOR1hMb2dnZXIgfSBmcm9tICduZ3gtbG9nZ2VyJztcbmltcG9ydCB7IERldmljZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9sYXlvdXQvcmVzcG9uc2l2ZS9kZXZpY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnLi4vLi4vY29yZS9lbnVtcy9mZWF0dXJlJztcbmltcG9ydCB7IFBsYWNlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvZW51bXMvcGxhY2VtZW50JztcbmltcG9ydCB7IFNpemUgfSBmcm9tICcuLi8uLi9jb3JlL2VudW1zL3NpemUnO1xuaW1wb3J0IHsgU3RhdGUgfSBmcm9tICcuLi8uLi9jb3JlL2VudW1zL3N0YXRlJztcbmltcG9ydCB7IFVJIH0gZnJvbSAnLi4vLi4vY29yZS9lbnVtcy91aSc7XG5pbXBvcnQgeyBXaWR0aCB9IGZyb20gJy4uLy4uL2NvcmUvZW51bXMvd2lkdGgnO1xuaW1wb3J0IHsgQnJlYWtwb2ludFNlcnZpY2UgfSBmcm9tICcuLi8uLi9sYXlvdXQvcmVzcG9uc2l2ZS9icmVha3BvaW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUG9wb3ZlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9vdmVybGF5cy9wb3BvdmVyL3BvcG92ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTZWxlY3RNb2RlIH0gZnJvbSAnLi9lbnVtcyc7XG5pbXBvcnQgeyBJT3B0aW9uLCBLZXksIE9wdGlvbnMgfSBmcm9tICcuL21vZGVsJztcbmV4cG9ydCBkZWNsYXJlIGNsYXNzIFNlbGVjdE9wdGlvbkNvbXBvbmVudCB7XG4gICAgdWk6IHR5cGVvZiBVSTtcbiAgICBpY29uOiBzdHJpbmc7XG4gICAga2V5OiBLZXk7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICB2YWx1ZTogYW55O1xufVxuZXhwb3J0IGRlY2xhcmUgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICBwcml2YXRlIGhvc3RSZWY7XG4gICAgcHJpdmF0ZSByZW5kZXJlcjtcbiAgICBwcml2YXRlIGZiO1xuICAgIHByaXZhdGUgcG9wb3ZlcjtcbiAgICBwcml2YXRlIGxvZ2dlcjtcbiAgICBwcml2YXRlIGJyZWFrcG9pbnQ7XG4gICAgZGV2aWNlOiBEZXZpY2VTZXJ2aWNlO1xuICAgIHJlYWRvbmx5IGhvc3QgPSBcImpudC1zZWxlY3QtaG9zdFwiO1xuICAgIHByaXZhdGUgcmVmZXJlbmNlO1xuICAgIHByaXZhdGUgZGVzdHJveWVkO1xuICAgIHByaXZhdGUgX2ZlYXR1cmVzO1xuICAgIHVpOiB0eXBlb2YgVUk7XG4gICAgZ2V0IG1vYmlsZSgpOiBib29sZWFuO1xuICAgIHByaXZhdGUgZmV0Y2hlcjtcbiAgICBwcml2YXRlIF9wbGFjZW1lbnQ7XG4gICAgb3B0aW9uczogT3B0aW9ucztcbiAgICBjaGFuZ2VzOiB7XG4gICAgICAgIHNlbGVjdGVkOiBudW1iZXI7XG4gICAgICAgIG9wdGlvbnM6IG51bWJlcjtcbiAgICB9O1xuICAgIHNlbGVjdGVkOiBLZXlbXTtcbiAgICBsb2FkaW5nOiBib29sZWFuO1xuICAgIHF1ZXJ5Q29udHJvbDogaW1wb3J0KFwiQGFuZ3VsYXIvZm9ybXNcIikuRm9ybUNvbnRyb2w7XG4gICAgZm9ybTogaW1wb3J0KFwiQGFuZ3VsYXIvZm9ybXNcIikuRm9ybUdyb3VwO1xuICAgIGxhYmVsRmllbGQ6IHN0cmluZztcbiAgICBrZXlGaWVsZDogc3RyaW5nO1xuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgcmVxdWlyZWQ6IGJvb2xlYW47XG4gICAgX21vZGU6IFNlbGVjdE1vZGU7XG4gICAgX3NpemU6IFNpemU7XG4gICAgX3dpZHRoOiBXaWR0aDtcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIGljb246IHN0cmluZztcbiAgICBxdWVyeUlucHV0OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICAgIHNlbGVjdGVkTGlzdDogRWxlbWVudFJlZjxIVE1MVUxpc3RFbGVtZW50PjtcbiAgICBxdWVyeTogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgICBzdGF0ZTogU3RhdGU7XG4gICAgb3B0aW9uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgZW1wdHlPcHRpb25zVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgb3B0aW9uc0hlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIG9wdGlvbnNGcm9tTWFya3VwOiBRdWVyeUxpc3Q8U2VsZWN0T3B0aW9uQ29tcG9uZW50PjtcbiAgICBvcHRpb25zVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgdXBkYXRlZDogRXZlbnRFbWl0dGVyPGFueT47XG4gICAgb3BlbmVkOiBib29sZWFuO1xuICAgIHNldCBwbGFjZW1lbnQocGxhY2VtZW50OiBQbGFjZW1lbnQpO1xuICAgIGdldCBwbGFjZW1lbnQoKTogUGxhY2VtZW50O1xuICAgIHNldCBtb2RlKG1vZGU6IFNlbGVjdE1vZGUpO1xuICAgIGdldCBtb2RlKCk6IFNlbGVjdE1vZGU7XG4gICAgc2V0IGZlYXR1cmVzKGZlYXR1cmVzOiBGZWF0dXJlW10pO1xuICAgIGdldCBmZWF0dXJlcygpOiBGZWF0dXJlW107XG4gICAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgc2V0IHNpemUoc2l6ZTogU2l6ZSk7XG4gICAgc2V0IHdpZHRoKHdpZHRoOiBXaWR0aCk7XG4gICAgZ2V0IGVtcHR5KCk6IGJvb2xlYW47XG4gICAgbG9hZGVyOiBhbnk7XG4gICAgY2xpY2tPdXRzaWRlKHBhdGg6IEhUTUxFbGVtZW50W10pOiB2b2lkO1xuICAgIGZvY3VzZWQoeyB0YXJnZXQgfToge1xuICAgICAgICB0YXJnZXQ6IEhUTUxFbGVtZW50O1xuICAgICAgICBwYXRoOiBIVE1MRWxlbWVudFtdO1xuICAgIH0pOiB2b2lkO1xuICAgIGJsdXJyZWQoKTogdm9pZDtcbiAgICBvbkNoYW5nZTogKHZhbHVlOiBLZXkgfCBLZXlbXSkgPT4gdm9pZDtcbiAgICBvblRvdWNoZWQ6ICgpID0+IHZvaWQ7XG4gICAgcmVnaXN0ZXJPbkNoYW5nZTogKGZuOiBhbnkpID0+IGFueTtcbiAgICByZWdpc3Rlck9uVG91Y2hlZDogKGZuOiBhbnkpID0+IGFueTtcbiAgICBjb25zdHJ1Y3Rvcihob3N0UmVmOiBFbGVtZW50UmVmLCByZW5kZXJlcjogUmVuZGVyZXIyLCBmYjogRm9ybUJ1aWxkZXIsIHBvcG92ZXI6IFBvcG92ZXJTZXJ2aWNlLCBsb2dnZXI6IE5HWExvZ2dlciwgYnJlYWtwb2ludDogQnJlYWtwb2ludFNlcnZpY2UsIGRldmljZTogRGV2aWNlU2VydmljZSk7XG4gICAgbmdPbkluaXQoKTogdm9pZDtcbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZDtcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkO1xuICAgIHByaXZhdGUgcGlja2VkO1xuICAgIHRyYWNrT3B0aW9uKGluZGV4OiBudW1iZXIsIG9wdGlvbjogSU9wdGlvbik6IHN0cmluZyB8IG51bWJlcjtcbiAgICB0b2dnbGUob3B0aW9uOiBJT3B0aW9uKTogdm9pZDtcbiAgICBzZWxlY3Qob3B0aW9uOiBJT3B0aW9uKTogdm9pZDtcbiAgICByZW1vdmUoa2V5OiBLZXkpOiB2b2lkO1xuICAgIG9wZW4oKTogdm9pZDtcbiAgICBjbG9zZSgpOiB2b2lkO1xuICAgIHdyaXRlVmFsdWUodmFsdWU6IEtleSB8IEtleVtdKTogdm9pZDtcbiAgICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKTogdm9pZDtcbn1cbiJdfQ==