Files
duty-teller/webapp-next/src/components/AppShell.tsx
Nikolay Tatarinov 40e2b5adc4 feat: enhance theme handling and layout components for Telegram Mini App
- Updated theme resolution logic to utilize a shared inline script for consistent theme application across routes.
- Introduced `AppShell` and `ReadyGate` components to manage app readiness and theme synchronization, improving user experience.
- Enhanced `GlobalError` and `NotFound` pages with a unified full-screen layout for better accessibility and visual consistency.
- Refactored CSS to implement safe area insets for sticky headers and content safety, ensuring proper layout on various devices.
- Added unit tests for new functionality and improved existing tests for better coverage and reliability.
2026-03-06 16:48:24 +03:00

18 lines
372 B
TypeScript

/**
* App shell: wraps children with ReadyGate so any route can trigger miniAppReady().
* Rendered inside TelegramProvider so theme and SDK are available.
*/
"use client";
import { ReadyGate } from "@/components/ReadyGate";
export function AppShell({ children }: { children: React.ReactNode }) {
return (
<>
<ReadyGate />
{children}
</>
);
}