Repository navigation
0.3.0
Highlights
- Added
SharedElement.LiveandSharedElement.LiveTargetfor moving a stateful native subtree between screens without remounting it. (0851796) - Added custom gesture-driven back transitions through
useInteractiveTransition. (a656393, 0851796) - Added velocity-aware
settle(), explicitfinish()andcancel(), and UI-thread settlement from the finger's release position. (0851796) - Added
useChoreographyBlocker()andChoreographyScreen readyfor coordinating asynchronous destination preparation. (0851796) - Added
createSharedElementComponent()for registering ref-forwarding components without an additional wrapper. (0851796) - Extended
useChoreographyProgress()with screen role, session phase, direction, group ID, and session ID. (0851796) - Added compound
(screenId, groupId, id)element identities so the same ID can safely appear in multiple groups. (a656393) - Improved target-screen crossfading, live-card expansion, transition clipping, and interruption handling. (0851796)
- Added a complete live-player example with persistent playback state and an interactive drag-to-dismiss handle. (0851796)
Architecture
Normal shared elements now capture a frozen ElementPresentation containing React content, style, and metrics. Live elements use react-native-teleport to move the real native subtree through the transition overlay and into the destination host.
Breaking Changes
- Removed bitmap snapshot support introduced in
0.2.0. (85ef443) - Removed
snapshotMode,ElementBitmap, andSharedElementSnapshotMode. (85ef443) - Renamed the renderer snapshot model from
ElementSnapshottoElementPresentation. (85ef443)
Native-stack's built-in swipe progress is not connected automatically. Applications can implement custom gestures with useInteractiveTransition.
Full changelog: v0.2.0...v0.3.0