UNPKG

@sandlada/mdc

Version:

@sandlada/mdc is an open source component library that follows the Material Design 3 design specifications.

56 lines 2.43 kB
import type { SideSheetEdge } from './side-sheet.interface'; /** * A side-sheet animation's arguments. See `Element.prototype.animate`. */ export type SideSheetAnimationArgs = Parameters<Element['animate']>; /** * A collection of side-sheet animations. Each element of the sheet may have * multiple animations. */ export interface SideSheetAnimation { /** * Animations for the scrim backdrop. */ scrim?: SideSheetAnimationArgs[]; /** * Animations for the container of the side sheet. */ container?: SideSheetAnimationArgs[]; } /** * The default side-sheet open animation. The `sheetEdge` argument picks the * off-screen keyframe direction — `end` slides in from the inline-end edge, * `start` slides in from the inline-start edge. * * - Scrim: opacity 0 → 0.32 over 500ms, linear. * - Container: translateX(±100%) → translateX(0) over 500ms, Emphasized. */ export declare const SideSheetDefaultOpenAnimation: (sheetEdge: SideSheetEdge) => SideSheetAnimation; /** * The default side-sheet close animation. Mirror of `SideSheetDefaultOpenAnimation` * with shorter durations and the accelerating easing curve. * * - Scrim: opacity 0.32 → 0 over 150ms, linear. * - Container: translateX(0) → translateX(±100%) over 150ms, EmphasizedAccelerate. */ export declare const SideSheetDefaultCloseAnimation: (sheetEdge: SideSheetEdge) => SideSheetAnimation; /** * The drag-snap-back animation. Animates the container from the current drag * offset back to its resting position (translateX 0), and the scrim from its current * (interpolated) opacity back to the peak. * * - Scrim: opacity scrimCurrent -> 0.32 over 250ms, linear. * - Container: translateX(fromDx) -> translateX(0) over 250ms, * EmphasizedDecelerate. */ export declare const SideSheetDragSnapBackAnimation: (sheetEdge: SideSheetEdge, fromDx: number, scrimCurrent: number) => SideSheetAnimation; /** * The drag-commit-close animation. Animates the container from the current * drag offset out the viewport edge, and fades the scrim to 0. * * - Scrim: opacity scrimCurrent -> 0 over 200ms, linear. * - Container: translateX(fromDx) -> translateX(±100%) over 200ms, * EmphasizedAccelerate. */ export declare const SideSheetDragCommitCloseAnimation: (sheetEdge: SideSheetEdge, fromDx: number, scrimCurrent: number) => SideSheetAnimation; //# sourceMappingURL=side-sheet.animation.d.ts.map