TODOS refactor out AnimatePresence and AnimateSharedLayout as per the latest version of Framer Motion