react/react · error · Error
startGestureTransition is not yet supported in react-art.
Error message
startGestureTransition is not yet supported in react-art.
What it means
getCurrentGestureOffset is part of the gesture-transition host-config surface. react-art sets GestureTimeline to null and throws here because gesture-driven view transitions are not supported on the ART renderer. Any feature that reads the current gesture offset while rendering to ART will hit this.
Source
Thrown at packages/react-art/src/ReactFiberConfigART.js:570
export function addViewTransitionFinishedListener(
transition: RunningViewTransition,
callback: () => void,
) {
callback();
}
export type ViewTransitionInstance = null | {name: string, ...};
export function createViewTransitionInstance(
name: string,
): ViewTransitionInstance {
return null;
}
export type GestureTimeline = null;
export function getCurrentGestureOffset(provider: GestureTimeline): number {
throw new Error('startGestureTransition is not yet supported in react-art.');
}
export function clearContainer(container) {
// TODO Implement this
}
export function getInstanceFromNode(node): null {
return null;
}
export function beforeActiveInstanceBlur(internalInstanceHandle: Object) {
// noop
}
export function afterActiveInstanceBlur() {
// noop
}
View on GitHub (pinned to 22e4f993c7)
Solutions
- Do not use gesture transitions in react-art trees — ART does not implement them.
- Gate gesture-transition code so it only runs for DOM-rendered output.
- If required, implement getCurrentGestureOffset (and GestureTimeline) for the ART renderer.
Example fix
// before: gesture transition active in ART tree startGestureTransition(...); // later: getCurrentGestureOffset(...) -> throws // after: disable gesture transitions for ART // (do not call startGestureTransition when rendering to ART)
Defensive patterns
Strategy: validation
Validate before calling
function supportsGestureTransitions(renderer: 'art'|'dom'): boolean { return renderer === 'dom'; }
if (!supportsGestureTransitions(currentRenderer)) {
// do not call startGestureTransition / getCurrentGestureOffset
} Type guard
function isGestureCapable(hostConfig: any): boolean {
// ART throws in getCurrentGestureOffset; capability-check before calling
try { return hostConfig.GestureTimeline != null /* ART sets it to null */ === false; } catch { return false; }
} Prevention
- Do not use gesture transitions in react-art.
- Gate gesture-transition code on renderer capability.
- Keep gesture APIs DOM-only in shared component code.
When it happens
Trigger: Using startGestureTransition / gesture-based view transitions in a tree rendered by react-art; a reconciler or component that calls getCurrentGestureOffset on the ART host config; sharing gesture-transition code between DOM and ART renderers.
Common situations: Adopting the experimental gesture transition APIs in an ART-rendered app; component libraries that unconditionally wire up gesture transitions; reconciler upgrades that call getCurrentGestureOffset more eagerly.
Related errors
- Not implemented.
- ReactART does not support the type "${type}"
- ReactART: Can not insert node before itself
AI-assisted analysis of react/react@22e4f993c7 (2026-08-12).
Data as JSON: /api/errors/a0c4ec0bd04be317.
Report an issue: GitHub.