UNPKG

@yandex/ui

Version:

Yandex UI components

58 lines (57 loc) 2.11 kB
import { FC, PropsWithChildren, ReactNode } from 'react'; import { IPopupProps } from '../Popup/Popup'; import './Drawer.css'; declare type PartialPopupProps = Pick<IPopupProps, 'keepMounted' | 'className' | 'innerRef' | 'zIndex' | 'visible' | 'scope'>; export interface IDrawerAnimationParams { /** * Основные параметры анимации для rebound * @see https://github.com/facebook/rebound-js */ tension: number; friction: number; /** * Отключает спринговые анимации (напр. для прогонов автотестов) */ disabled?: boolean; /** * Отключает анимации на момент перетаскивания шторки пальцем (таким образом делая их отзывчивее) */ dragImmediate?: boolean; } export interface IDrawerProps extends PropsWithChildren<PartialPopupProps> { /** * Функция, которая будет вызвана при попытке закрытия шторки. */ onClose?: () => void; /** * Компонент шапки шторки. */ titleComponent?: ReactNode; /** * Делает шторку "статичной" */ dragDisabled?: boolean; /** * Меняет внешний вид для режима "шторка внутри шторки". */ nested?: boolean; /** * Направление, откуда появляется шторка. */ direction?: 'bottom' | 'left' | 'right'; /** * Максимальный размер шторки (ширина или высота в зависимости от direction). * Принимает любое валидное CSS значение. */ maxSize?: string; /** * Параметры анимации шторки. */ animation: IDrawerAnimationParams; } /** * Используется для создания шторки. * @param {IDrawerProps} props */ export declare const Drawer: FC<IDrawerProps>; export {};