59 lines
2.1 KiB
TypeScript
59 lines
2.1 KiB
TypeScript
/**
|
|
* @license
|
|
* Copyright Google LLC All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.dev/license
|
|
*/
|
|
|
|
import {ViewContainerRef, InjectionToken} from '@angular/core';
|
|
import {AriaLivePoliteness} from '@angular/cdk/a11y';
|
|
import {Direction} from '@angular/cdk/bidi';
|
|
|
|
/** Injection token that can be used to access the data that was passed in to a snack bar. */
|
|
export const MAT_SNACK_BAR_DATA = new InjectionToken<any>('MatSnackBarData');
|
|
|
|
/** Possible values for horizontalPosition on MatSnackBarConfig. */
|
|
export type MatSnackBarHorizontalPosition = 'start' | 'center' | 'end' | 'left' | 'right';
|
|
|
|
/** Possible values for verticalPosition on MatSnackBarConfig. */
|
|
export type MatSnackBarVerticalPosition = 'top' | 'bottom';
|
|
|
|
/**
|
|
* Configuration used when opening a snack-bar.
|
|
*/
|
|
export class MatSnackBarConfig<D = any> {
|
|
/** The politeness level for the MatAriaLiveAnnouncer announcement. */
|
|
politeness?: AriaLivePoliteness = 'assertive';
|
|
|
|
/**
|
|
* Message to be announced by the LiveAnnouncer. When opening a snackbar without a custom
|
|
* component or template, the announcement message will default to the specified message.
|
|
*/
|
|
announcementMessage?: string = '';
|
|
|
|
/**
|
|
* The view container that serves as the parent for the snackbar for the purposes of dependency
|
|
* injection. Note: this does not affect where the snackbar is inserted in the DOM.
|
|
*/
|
|
viewContainerRef?: ViewContainerRef;
|
|
|
|
/** The length of time in milliseconds to wait before automatically dismissing the snack bar. */
|
|
duration?: number = 0;
|
|
|
|
/** Extra CSS classes to be added to the snack bar container. */
|
|
panelClass?: string | string[];
|
|
|
|
/** Text layout direction for the snack bar. */
|
|
direction?: Direction;
|
|
|
|
/** Data being injected into the child component. */
|
|
data?: D | null = null;
|
|
|
|
/** The horizontal position to place the snack bar. */
|
|
horizontalPosition?: MatSnackBarHorizontalPosition = 'center';
|
|
|
|
/** The vertical position to place the snack bar. */
|
|
verticalPosition?: MatSnackBarVerticalPosition = 'bottom';
|
|
}
|