'use client'; import { Column, Grid, Loading, Row } from '@umami/react-zen'; import Script from 'next/script'; import { useEffect } from 'react'; import { MobileNav } from '@/app/(main)/MobileNav'; import { SideNav } from '@/app/(main)/SideNav'; import { TopNav } from '@/app/(main)/TopNav'; import { useConfig, useLoginQuery, useNavigation } from '@/components/hooks'; import { LAST_TEAM_CONFIG } from '@/lib/constants'; import { removeItem, setItem } from '@/lib/storage'; import { UpdateNotice } from './UpdateNotice'; export function App({ children }) { const { user, isLoading, error } = useLoginQuery(); const config = useConfig(); const { pathname, teamId } = useNavigation(); useEffect(() => { if (teamId) { setItem(LAST_TEAM_CONFIG, teamId); } else { removeItem(LAST_TEAM_CONFIG); } }, [teamId]); if (isLoading || !config) { return ; } if (error) { window.location.href = config.cloudMode ? `${process.env.cloudUrl}/login` : `${process.env.basePath || ''}/login`; return null; } if (!user || !config) { return null; } return ( {children} {process.env.NODE_ENV === 'production' && !pathname.includes('/share/') && (