import { useState, useEffect, useMemo } from "react"; import { BookOpen, Smartphone, Monitor } from "lucide-react"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "../components/ui/tabs"; import { DEFAULT_GUIDE_LOCALES } from "../guideContent"; import { KIOSK_EVENT, loadGuideOverrides, mergeGuideLocales } from "../kioskStorage"; import { PAGE_CONTENT_INSET } from "../pageContentInset"; export function GuidePage() { const [guideRev, setGuideRev] = useState(0); const [langIdx, setLangIdx] = useState(0); useEffect(() => { const h = () => setGuideRev((r) => r + 1); window.addEventListener(KIOSK_EVENT, h); window.addEventListener("storage", h); return () => { window.removeEventListener(KIOSK_EVENT, h); window.removeEventListener("storage", h); }; }, []); const LOCALES = useMemo( () => mergeGuideLocales(DEFAULT_GUIDE_LOCALES, loadGuideOverrides()), [guideRev] ); const locale = LOCALES[langIdx]!; useEffect(() => { document.documentElement.lang = locale.htmlLang; return () => { document.documentElement.lang = "zh-CN"; }; }, [locale.htmlLang]); return (