@bimeister/pupakit.kit
Version:
PupaKit is an open source collection of Angular components based on an atomic approach to building interfaces, which guarantees better performance and greater development flexibility.
26 lines (25 loc) • 1.3 kB
TypeScript
import { Overlay } from '@angular/cdk/overlay';
import { Injector } from '@angular/core';
import { DropdownComponentBase } from '../declarations/classes/abstract/dropdown-component-base.abstract';
import { OpenedDropdown } from '../declarations/classes/opened-dropdown.class';
import { DropdownConfig } from '../declarations/interfaces/dropdown-config.interface';
import { DropdownDataType } from '../declarations/types/utility-types/dropdown-data.utility-type';
import * as i0 from "@angular/core";
export declare class DropdownsService {
protected readonly overlay: Overlay;
protected readonly injector: Injector;
private readonly dropdownStore;
constructor(overlay: Overlay, injector: Injector);
open<TComponent extends DropdownComponentBase<unknown>>(config: DropdownConfig<TComponent, DropdownDataType<TComponent>>): OpenedDropdown;
closeById(id: string): void;
closeAll(): void;
isOpen(id: string): boolean;
private getComponentPortal;
private getOverlayRef;
private getTargetPosition;
private getOverlayWidth;
private getOverlayPositionsByHorizontalPosition;
private getConnectionPositionPair;
static ɵfac: i0.ɵɵFactoryDeclaration<DropdownsService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<DropdownsService>;
}