UNPKG

@angular/cdk

Version:

Angular Material Component Development Kit

106 lines (103 loc) 4.54 kB
import { OverlayContainer } from './_overlay-module-chunk.mjs'; export { BlockScrollStrategy, CDK_CONNECTED_OVERLAY_DEFAULT_CONFIG, CdkConnectedOverlay, CdkOverlayOrigin, CloseScrollStrategy, ConnectedOverlayPositionChange, ConnectionPositionPair, FlexibleConnectedPositionStrategy, GlobalPositionStrategy, NoopScrollStrategy, OVERLAY_DEFAULT_CONFIG, Overlay, OverlayConfig, OverlayKeyboardDispatcher, OverlayModule, OverlayOutsideClickDispatcher, OverlayPositionBuilder, OverlayRef, RepositionScrollStrategy, STANDARD_DROPDOWN_ADJACENT_POSITIONS, STANDARD_DROPDOWN_BELOW_POSITIONS, ScrollStrategyOptions, ScrollingVisibility, createBlockScrollStrategy, createCloseScrollStrategy, createFlexibleConnectedPositionStrategy, createGlobalPositionStrategy, createNoopScrollStrategy, createOverlayRef, createRepositionScrollStrategy, validateHorizontalPosition, validateVerticalPosition } from './_overlay-module-chunk.mjs'; import * as i0 from '@angular/core'; import { inject, RendererFactory2, Injectable } from '@angular/core'; export { CdkScrollable, ScrollDispatcher, ViewportRuler, CdkFixedSizeVirtualScroll as ɵɵCdkFixedSizeVirtualScroll, CdkScrollableModule as ɵɵCdkScrollableModule, CdkVirtualForOf as ɵɵCdkVirtualForOf, CdkVirtualScrollViewport as ɵɵCdkVirtualScrollViewport, CdkVirtualScrollableElement as ɵɵCdkVirtualScrollableElement, CdkVirtualScrollableWindow as ɵɵCdkVirtualScrollableWindow } from './scrolling.mjs'; export { Dir as ɵɵDir } from './bidi.mjs'; import '@angular/common'; import './_platform-chunk.mjs'; import './_shadow-dom-chunk.mjs'; import './_test-environment-chunk.mjs'; import './_style-loader-chunk.mjs'; import 'rxjs'; import './_css-pixel-value-chunk.mjs'; import './_array-chunk.mjs'; import './portal.mjs'; import './_scrolling-chunk.mjs'; import 'rxjs/operators'; import './_id-generator-chunk.mjs'; import './_directionality-chunk.mjs'; import './_keycodes-chunk.mjs'; import './keycodes.mjs'; import './_element-chunk.mjs'; import './_recycle-view-repeater-strategy-chunk.mjs'; import './_data-source-chunk.mjs'; class FullscreenOverlayContainer extends OverlayContainer { _renderer = inject(RendererFactory2).createRenderer(null, null); _fullScreenEventName; _cleanupFullScreenListener; constructor() { super(); } ngOnDestroy() { super.ngOnDestroy(); this._cleanupFullScreenListener?.(); } _createContainer() { const eventName = this._getEventName(); super._createContainer(); this._adjustParentForFullscreenChange(); if (eventName) { this._cleanupFullScreenListener?.(); this._cleanupFullScreenListener = this._renderer.listen('document', eventName, () => { this._adjustParentForFullscreenChange(); }); } } _adjustParentForFullscreenChange() { if (this._containerElement) { const fullscreenElement = this.getFullscreenElement(); const parent = fullscreenElement || this._document.body; parent.appendChild(this._containerElement); } } _getEventName() { if (!this._fullScreenEventName) { const _document = this._document; if (_document.fullscreenEnabled) { this._fullScreenEventName = 'fullscreenchange'; } else if (_document.webkitFullscreenEnabled) { this._fullScreenEventName = 'webkitfullscreenchange'; } else if (_document.mozFullScreenEnabled) { this._fullScreenEventName = 'mozfullscreenchange'; } else if (_document.msFullscreenEnabled) { this._fullScreenEventName = 'MSFullscreenChange'; } } return this._fullScreenEventName; } getFullscreenElement() { const _document = this._document; return _document.fullscreenElement || _document.webkitFullscreenElement || _document.mozFullScreenElement || _document.msFullscreenElement || null; } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: FullscreenOverlayContainer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: FullscreenOverlayContainer, providedIn: 'root' }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: FullscreenOverlayContainer, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: () => [] }); export { FullscreenOverlayContainer, OverlayContainer }; //# sourceMappingURL=overlay.mjs.map