/** * AnimatedSlot — renders the (app) group as a native . * * Why Stack instead of Slot: Slot is stack-less. When a child route * (e.g. profile/[address]) pushes another child, Slot swaps content * with no history, so router.back() falls all the way through to the * URL root instead of returning to the caller (e.g. /chats/xyz → * /profile/abc → back should go to /chats/xyz, not to /chats). * * Tab switching stays flat because NavBar uses router.replace, which * maps to navigation.replace on the Stack → no history accumulation. * * animation: 'none' on tab roots keeps tab-swap instant (matches the * prior Slot look). Sub-routes (profile/*, compose, feed/*, chats/[id]) * inherit slide_from_right from their own nested _layout.tsx Stacks, * which is where the push animation happens. * * This file is named AnimatedSlot for git-history continuity — the * Animated.Value + translateX slide was removed earlier (got stuck at * ±width when interrupted by re-render cascades). */ import React from 'react'; import { Stack } from 'expo-router'; export function AnimatedSlot() { return ( ); }