Lazy-loads `framer-motion` on demand to power optional row-reorder FLIP animations in table components, keeping the motion library out of the default bundle when the feature is unused. ## Key Components ### `TableMotionRuntime` (interface) Holds the resolved Framer Motion primitives needed for row-reorder animation: - `motionDiv` — `motion.div` component used to wrap animated table rows - `LayoutGroup` — coordinates FLIP animations across sibling rows ### `useTableMotion(enabled)` (hook) Accepts a single boolean (`enabled`) and returns `TableMotionRuntime | null`. - Returns `null` immediately (and always) when `enabled` is `false` — no import is triggered - Fires a single dynamic `import('framer-motion')` when `enabled` becomes `true` - Returns `null` during the async load; callers render plain DOM so first paint is non-animated - Silently catches chunk-load failures and stays `null`, gracefully degrading to non-animated rows rather than throwing an unhandled rejection - Cleans up via an `active` flag to prevent state updates after unmount ## Usage Example ```typescript import { useTableMotion } from './use-table-motion' function TableRow({ reorderEnabled }: { reorderEnabled: boolean }) { const motion = useTableMotion(reorderEnabled) // Falls back to a plain