[6a3a178] | 1 | /**
|
---|
| 2 | * @license
|
---|
| 3 | * Copyright Google LLC All Rights Reserved.
|
---|
| 4 | *
|
---|
| 5 | * Use of this source code is governed by an MIT-style license that can be
|
---|
| 6 | * found in the LICENSE file at https://angular.io/license
|
---|
| 7 | */
|
---|
| 8 | import { ComponentRef, EmbeddedViewRef, OnDestroy, ElementRef, ChangeDetectorRef, EventEmitter } from '@angular/core';
|
---|
| 9 | import { AnimationEvent } from '@angular/animations';
|
---|
| 10 | import { BasePortalOutlet, ComponentPortal, TemplatePortal, CdkPortalOutlet, DomPortal } from '@angular/cdk/portal';
|
---|
| 11 | import { BreakpointObserver } from '@angular/cdk/layout';
|
---|
| 12 | import { MatBottomSheetConfig } from './bottom-sheet-config';
|
---|
| 13 | import { FocusTrapFactory } from '@angular/cdk/a11y';
|
---|
| 14 | /**
|
---|
| 15 | * Internal component that wraps user-provided bottom sheet content.
|
---|
| 16 | * @docs-private
|
---|
| 17 | */
|
---|
| 18 | export declare class MatBottomSheetContainer extends BasePortalOutlet implements OnDestroy {
|
---|
| 19 | private _elementRef;
|
---|
| 20 | private _changeDetectorRef;
|
---|
| 21 | private _focusTrapFactory;
|
---|
| 22 | /** The bottom sheet configuration. */
|
---|
| 23 | bottomSheetConfig: MatBottomSheetConfig;
|
---|
| 24 | private _breakpointSubscription;
|
---|
| 25 | /** The portal outlet inside of this container into which the content will be loaded. */
|
---|
| 26 | _portalOutlet: CdkPortalOutlet;
|
---|
| 27 | /** The state of the bottom sheet animations. */
|
---|
| 28 | _animationState: 'void' | 'visible' | 'hidden';
|
---|
| 29 | /** Emits whenever the state of the animation changes. */
|
---|
| 30 | _animationStateChanged: EventEmitter<AnimationEvent>;
|
---|
| 31 | /** The class that traps and manages focus within the bottom sheet. */
|
---|
| 32 | private _focusTrap;
|
---|
| 33 | /** Element that was focused before the bottom sheet was opened. */
|
---|
| 34 | private _elementFocusedBeforeOpened;
|
---|
| 35 | /** Server-side rendering-compatible reference to the global document object. */
|
---|
| 36 | private _document;
|
---|
| 37 | /** Whether the component has been destroyed. */
|
---|
| 38 | private _destroyed;
|
---|
| 39 | constructor(_elementRef: ElementRef<HTMLElement>, _changeDetectorRef: ChangeDetectorRef, _focusTrapFactory: FocusTrapFactory, breakpointObserver: BreakpointObserver, document: any,
|
---|
| 40 | /** The bottom sheet configuration. */
|
---|
| 41 | bottomSheetConfig: MatBottomSheetConfig);
|
---|
| 42 | /** Attach a component portal as content to this bottom sheet container. */
|
---|
| 43 | attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T>;
|
---|
| 44 | /** Attach a template portal as content to this bottom sheet container. */
|
---|
| 45 | attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C>;
|
---|
| 46 | /**
|
---|
| 47 | * Attaches a DOM portal to the bottom sheet container.
|
---|
| 48 | * @deprecated To be turned into a method.
|
---|
| 49 | * @breaking-change 10.0.0
|
---|
| 50 | */
|
---|
| 51 | attachDomPortal: (portal: DomPortal) => void;
|
---|
| 52 | /** Begin animation of bottom sheet entrance into view. */
|
---|
| 53 | enter(): void;
|
---|
| 54 | /** Begin animation of the bottom sheet exiting from view. */
|
---|
| 55 | exit(): void;
|
---|
| 56 | ngOnDestroy(): void;
|
---|
| 57 | _onAnimationDone(event: AnimationEvent): void;
|
---|
| 58 | _onAnimationStart(event: AnimationEvent): void;
|
---|
| 59 | private _toggleClass;
|
---|
| 60 | private _validatePortalAttached;
|
---|
| 61 | private _setPanelClass;
|
---|
| 62 | /** Moves the focus inside the focus trap. */
|
---|
| 63 | private _trapFocus;
|
---|
| 64 | /** Restores focus to the element that was focused before the bottom sheet was opened. */
|
---|
| 65 | private _restoreFocus;
|
---|
| 66 | /** Saves a reference to the element that was focused before the bottom sheet was opened. */
|
---|
| 67 | private _savePreviouslyFocusedElement;
|
---|
| 68 | }
|
---|