FeedbackGenerated from the public API
MotionIntensityProvider
The provider that scales every motion decision in a subtree, including off.
@luc/ui/motionLive preview
A scope, not a prop: components read the resolved profile, and reduced motion resolves to `none` in one place.
Resolved intensity: expressive
pointer effects on
<MotionIntensityProvider intensity="expressive" pointer ambient>
<IntensityReadout />
</MotionIntensityProvider>Usage
import { MotionIntensityProvider } from "@luc/ui/motion";<MotionIntensityProvider intensity="expressive" pointer ambient>
<IntensityReadout />
</MotionIntensityProvider>API
| Export | Kind | Signature |
|---|---|---|
MotionIntensityProvider | 4 documented props | ({ intensity, pointer, ambient, children, }: MotionIntensityProviderProps) => import("@types/react").JSX.Element |
useMotionIntensity | export | () => MotionIntensity |
useMotionProfile | export | () => IntensityProfile & { intensity: MotionIntensity; } |
usePointerMotionEnabled | export | () => boolean |
MotionIntensityProvider props
Type: MotionIntensityProviderProps
Values the compiler reads from the declaration.
| Prop | Type | Default | Notes |
|---|---|---|---|
ambient? | boolean | undefined | — | |
children | ReactNode | — | |
intensity? | MotionIntensity | undefined | — | |
pointer? | boolean | undefined | — | Hard overrides for the two behavioural halves of the profile. Useful when a screen wants expressive motion but no cursor effects (a touch-first page), or the opposite (a static re… |
Accessibility
The accessibility contract is the one the primitive underneath the component already honours — the platform element for a control, or the ARIA pattern the component implements — and the Showcase's own pages are scanned for violations with axe.
What happens on the server, and when hydration changes it.
Family
Feedback
A press, a change, a selection — acknowledged without shouting.
Related