Snap Types
Types for snap-back animation and alignment targets.
DraxSnapbackTargetPreset (enum)
enum DraxSnapbackTargetPreset {
Default, // Snap back to original position
None, // No snap animation
}
DraxSnapbackTarget
type DraxSnapbackTarget = DraxSnapbackTargetPreset | Position;
Return from onDragEnd, onDragDrop, onReceiveDragDrop, etc. to control snap behavior:
Position— snap to that absolute coordinateDraxSnapbackTargetPreset.None— no snap animationDraxSnapbackTargetPreset.Default— default snap-backundefined/void— default behavior
DraxSnapData
Data provided to a custom snapAnimator function.
interface DraxSnapData {
hoverPosition: SharedValue<Position>; // Animate this
toValue: Position; // Target position
delay: number; // Delay before start
duration: number; // Animation duration
scrollPosition?: SharedValue<Position>; // Parent scroll position
finishedCallback: (finished: boolean) => void; // Call when done
}
DraxSnapEndEventData
Data for onSnapEnd and onReceiveSnapEnd.
interface DraxSnapEndEventData {
dragged: { id: string; parentId?: string; payload: unknown };
receiver?: { id: string; parentId?: string; payload: unknown };
}
SnapAlignment
type SnapAlignment =
| 'center'
| 'top-left' | 'top-center' | 'top-right'
| 'center-left' | 'center-right'
| 'bottom-left' | 'bottom-center' | 'bottom-right';