@alyle/ui
Version:
Minimal Design, a set of components for Angular
45 lines (44 loc) • 2.06 kB
TypeScript
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;
}