UNPKG

@alyle/ui

Version:

Minimal Design, a set of components for Angular

45 lines (44 loc) 2.06 kB
import { ComponentRef, ComponentFactoryResolver, ApplicationRef, TemplateRef, Injector, Type } from '@angular/core'; import { Observable, Subject } from 'rxjs'; import { LyOverlayConfig } from './overlay-config'; import { LyOverlayContainer } from './overlay-container'; import { ScrollDispatcher, ViewportRuler } from '@angular/cdk/scrolling'; import { OverlayReference } from './overlay-reference'; export declare class OverlayFactory<T = any> implements OverlayReference { private _componentFactoryResolver; private _appRef; private _overlayContainer; private _injector; /** Stream of keydown events dispatched to this overlay. */ readonly _keydownEvents: Subject<KeyboardEvent>; private _viewRef; private _el; private _backdropElement; private _compRef; private _compRefOverlayBackdrop?; private _windowSRSub; private _isDetached; private _isRemoved; private _newInjector; /** Function that will be called on scroll or resize event */ onResizeScroll: (() => void) | null; get injector(): Injector | undefined; get containerElement(): HTMLDivElement; get backdropElement(): Element; get componentRef(): ComponentRef<T>; get isDestroyed(): boolean; constructor(_componentFactoryResolver: ComponentFactoryResolver, _appRef: ApplicationRef, _templateRefOrComponent: TemplateRef<any> | Type<T> | string, _overlayContainer: LyOverlayContainer, _context: any, _injector: Injector, _scrollDispatcher: ScrollDispatcher, _viewportRuler: ViewportRuler, _config?: LyOverlayConfig); updateBackdrop(hasBackdrop: boolean): void; /** Gets an observable of keydown events targeted to this overlay. */ keydownEvents(): Observable<KeyboardEvent>; private _updateStyles; private _appendComponentToBody; private _updateBackdropPosition; private _generateComponent; /** Detaches a view from dirty checking again of ApplicationRef. */ detach(): void; /** Remove element of DOM */ remove(): void; /** Detach & remove */ destroy(): void; }