КомпонентыНовое

Выдвижная панель с меню

Боковая панель выезжает на пружине, а кнопка меню плавно сливается с ней. Панель можно утащить пальцем, закрыть кликом по фону или крестиком.

Настройки

backgroundColor
accentColor

Основано на Motion Drawer (MIT лицензия) · Условия использования

Параметры

15 параметров
ПараметрТипПо умолчаниюОписание
childrenReactNode—Содержимое панели, например меню.
widthnumber280Ширина панели в пикселях.
direction'left' | 'right'"left"С какой стороны выезжает панель.
buttonOpeningVariants'merge' | 'push' | 'stay'"merge"Как уходит кнопка меню: сливается с панелью, уезжает вместе с ней или гаснет на месте.
enableDragbooleantrueПанель можно утащить пальцем или мышью, чтобы закрыть.
dragThresholdnumber0.3Какую долю ширины нужно протащить, чтобы панель закрылась.
backgroundColorstring"#111111"Цвет панели.
accentColorstring"#ffffff"Цвет иконки меню и линии края панели.
overlayColorstring"rgba(0, 0, 0, 0.55)"Цвет затемнения за панелью.
containedbooleanfalseПанель и кнопка встают внутри ближайшего родителя с position: relative, а не поверх всего окна.
isOpenboolean—Управляемое состояние: открыта ли панель.
onToggle(isOpen: boolean) => void—Вызывается при открытии и закрытии.
showToggleButtonbooleantrueПоказывать кнопку меню и крестик.
animationConfig{ type?, damping?, stiffness?, duration? }—Настройки пружины выезда.
classNamestring—Дополнительные классы.

Зависимости

Пакетов: 4

npm install motion lucide-react clsx tailwind-merge

Похожие компоненты

Смотреть все