transition prop on EaseView controls how animated property changes are played. It accepts either a single transition config applied to all properties, or a per-property map for fine-grained control.
transition is omitted, the default is a timing animation of 300ms with easeInOut easing.
TimingTransition
Animates from one value to another over a fixed duration using an easing curve.'timing'
required
Must be
'timing' to use a timing transition.number
default:"300"
Duration of the animation in milliseconds.
EasingType
default:"'easeInOut'"
Easing curve for the animation. Accepts a preset name or a
[x1, y1, x2, y2] cubic bezier tuple.Available presets:For custom curves, pass a
[x1, y1, x2, y2] tuple matching the CSS cubic-bezier() function. x values must be between 0 and 1; y values can exceed this range for overshoot effects.number
default:"0"
Delay in milliseconds before the animation starts. Useful for staggering animations across multiple elements.
'repeat' | 'reverse'
Enables infinite looping for timing animations. Requires
initialAnimate to define the start value.'repeat'— restarts the animation frominitialAnimatevalues each cycle'reverse'— alternates direction each cycle (forward, backward, forward, …)
Loop only works with timing animations. Spring transitions do not support looping.
SpringTransition
Animates using a physics-based spring model. Great for interactive elements where natural, organic motion is desired. Spring animations have no fixed duration — they settle when the physics simulation reaches equilibrium.'spring'
required
Must be
'spring' to use a spring transition.number
default:"15"
Friction applied to the spring. Higher values reduce oscillation and cause the animation to settle faster. Very high values (e.g.,
100) produce a critically damped motion with no bounce.number
default:"120"
Spring constant. Higher values produce a stiffer, faster animation. Lower values produce a softer, slower motion.
number
default:"1"
Mass of the animated object. Higher values produce slower animation with more momentum and overshoot. Lower values produce lighter, snappier motion.
number
default:"0"
Delay in milliseconds before the spring animation starts.
Spring presets
NoneTransition
Applies values instantly without any animation.onTransitionEnd fires immediately with { finished: true }.
Useful for respecting reduced-motion preferences or resetting state without animation.
'none'
required
Must be
'none'. No other properties are accepted.TransitionMap
Pass an object (without atype key) to configure different transitions per property category. Any category not explicitly listed falls back to the default config — or to the library default (timing 300ms easeInOut) if default is also omitted.
SingleTransition
Fallback transition for any property category not explicitly listed in the map.
SingleTransition
Transition config for all transform properties:
translateX, translateY, scaleX, scaleY, rotate, rotateX, rotateY.SingleTransition
Transition config for
opacity.SingleTransition
Transition config for
borderRadius.SingleTransition
Transition config for
backgroundColor.TransitionMap example
Default transition
When notransition prop is provided, all properties use:
Related
- EaseView — the component that accepts the
transitionprop - AnimateProps — the properties being animated
- Types — full TypeScript type reference