import React, { useState } from 'react'; import { Phase, Language, Theme } from '../types'; import { Activity, Target, Crosshair, Map, FileText, CheckCircle, Lock, Moon, Sun, Languages, ShieldCheck, Terminal, LayoutTemplate, TrendingUp, Shield, Menu, X } from 'lucide-react'; interface LayoutProps { currentPhase: Phase; maxAllowedPhase: Phase; onPhaseSelect: (phase: Phase) => void; children: React.ReactNode; theme: Theme; toggleTheme: () => void; language: Language; setLanguage: (lang: Language) => void; labels: any; } const getStepIcon = (id: Phase) => { switch(id) { case Phase.Input: return Terminal; case Phase.ProductAnalysis: return Activity; case Phase.ICPDiscovery: return Target; case Phase.WhaleHunting: return Crosshair; case Phase.Strategy: return Map; case Phase.AssetGeneration: return FileText; case Phase.SalesEnablement: return ShieldCheck; case Phase.LandingPage: return LayoutTemplate; case Phase.BusinessCase: return TrendingUp; case Phase.TechTranslator: return Shield; default: return Activity; } } export const Layout: React.FC = ({ currentPhase, maxAllowedPhase, onPhaseSelect, children, theme, toggleTheme, language, setLanguage, labels }) => { const [isSidebarOpen, setIsSidebarOpen] = useState(false); const steps = [ { id: Phase.Input, label: labels.initTitle ? 'Input' : 'Input' }, { id: Phase.ProductAnalysis, label: labels.phase1 }, { id: Phase.ICPDiscovery, label: labels.phase2 }, { id: Phase.WhaleHunting, label: labels.phase3 }, { id: Phase.Strategy, label: labels.phase4 }, { id: Phase.AssetGeneration, label: labels.phase5 }, { id: Phase.SalesEnablement, label: labels.phase6 }, { id: Phase.LandingPage, label: labels.phase7 }, { id: Phase.BusinessCase, label: labels.phase8 }, { id: Phase.TechTranslator, label: labels.phase9 }, ]; return (
{/* Mobile Backdrop */} {isSidebarOpen && (
setIsSidebarOpen(false)} /> )} {/* Sidebar */}

ROBOPLANET v2.5

GTM Architect Engine

System Status: ONLINE
Language: {language.toUpperCase()}
Mode: {theme.toUpperCase()}
{/* Main Content */}
{/* Mobile Header Toggle */}

ROBOPLANET

{children}
); };