diff --git a/src/widgets/control-center-sheet/ui/ControlCenterSheetWidget.tsx b/src/widgets/control-center-sheet/ui/ControlCenterSheetWidget.tsx index 8614c6d..9ca7c8e 100644 --- a/src/widgets/control-center-sheet/ui/ControlCenterSheetWidget.tsx +++ b/src/widgets/control-center-sheet/ui/ControlCenterSheetWidget.tsx @@ -10,6 +10,7 @@ import { import { getRoomCardBackgroundStyle, type RoomTheme } from '@/entities/room'; import type { SoundPreset, TimerPreset } from '@/entities/session'; import { cn } from '@/shared/lib/cn'; +import { useReducedMotion } from '@/shared/lib/useReducedMotion'; interface ControlCenterSheetWidgetProps { plan: PlanTier; @@ -87,7 +88,14 @@ export const ControlCenterSheetWidget = ({ onApplyPack, onLockedClick, }: ControlCenterSheetWidgetProps) => { + const reducedMotion = useReducedMotion(); const isPro = plan === 'pro'; + const interactiveMotionClass = reducedMotion + ? 'transition-none' + : 'transition-[transform,background-color,border-color,box-shadow,color,opacity] duration-[220ms] ease-out'; + const colorMotionClass = reducedMotion + ? 'transition-none' + : 'transition-colors duration-[220ms] ease-out'; const selectedRoom = useMemo(() => { return rooms.find((room) => room.id === selectedRoomId) ?? rooms[0]; @@ -99,9 +107,12 @@ export const ControlCenterSheetWidget = ({ return (
{pack.name}
diff --git a/src/widgets/space-sheet-shell/ui/SpaceSideSheet.tsx b/src/widgets/space-sheet-shell/ui/SpaceSideSheet.tsx index 32d4d2c..db2d229 100644 --- a/src/widgets/space-sheet-shell/ui/SpaceSideSheet.tsx +++ b/src/widgets/space-sheet-shell/ui/SpaceSideSheet.tsx @@ -2,8 +2,7 @@ import { useEffect, useRef, useState, type ReactNode } from 'react'; import { cn } from '@/shared/lib/cn'; - -const SHEET_TRANSITION_MS = 300; +import { useReducedMotion } from '@/shared/lib/useReducedMotion'; interface SpaceSideSheetProps { open: boolean; @@ -28,6 +27,8 @@ export const SpaceSideSheet = ({ dismissible = true, headerAction, }: SpaceSideSheetProps) => { + const reducedMotion = useReducedMotion(); + const transitionMs = reducedMotion ? 0 : 260; const closeTimerRef = useRef