Files
astra-mobile/src/navigation/tabTransition.ts
T
2026-07-25 19:42:42 -04:00

21 lines
628 B
TypeScript

/**
* Bottom tabs use React Native's legacy native Animated driver. On Android,
* timing animations are pre-sampled at 60 fps. A short, critically damped
* native spring avoids translating two retained full-page scenes and leaves
* only an intentional cross-fade at the tab boundary.
*/
export const TAB_TRANSITION_SETTLE_MS = 160;
export const TAB_SCENE_ANIMATION = 'fade' as const;
export const TAB_TRANSITION_SPEC = {
animation: 'spring',
config: {
stiffness: 2500,
damping: 100,
mass: 1,
overshootClamping: true,
restDisplacementThreshold: 0.004,
restSpeedThreshold: 0.15,
},
} as const;