diff --git a/client/components/ArmSwitcherModal.tsx b/client/components/ArmSwitcherModal.tsx deleted file mode 100644 index a8c8962d..00000000 --- a/client/components/ArmSwitcherModal.tsx +++ /dev/null @@ -1,320 +0,0 @@ -import { useState } from "react"; -import { useNavigate } from "react-router-dom"; -import { ArrowLeft } from "lucide-react"; - -interface Arm { - id: string; - label: string; - color: string; - bgGradient: string; - textColor: string; - href: string; - icon: string; - tip: string; -} - -const ARMS: Arm[] = [ - { - id: "staff", - label: "Admin", - color: "#7c3aed", - bgGradient: "from-purple-600 to-purple-400", - textColor: "text-purple-400", - href: "/admin", - icon: "https://cdn.builder.io/api/v1/image/assets%2Ffc53d607e21d497595ac97e0637001a1%2Fc0414efd7af54ef4b821a05d469150d0?format=webp&width=800", - tip: "Admin panel & staff management", - }, - { - id: "labs", - label: "Labs", - color: "#FBBF24", - bgGradient: "from-yellow-600 to-yellow-400", - textColor: "text-yellow-400", - href: "/labs", - icon: "https://cdn.builder.io/api/v1/image/assets%2Ffc53d607e21d497595ac97e0637001a1%2Fd93f7113d34347469e74421c3a3412e5?format=webp&width=800", - tip: "R&D pushing innovation boundaries", - }, - { - id: "gameforge", - label: "GameForge", - color: "#22C55E", - bgGradient: "from-green-600 to-green-400", - textColor: "text-green-400", - href: "/gameforge", - icon: "https://cdn.builder.io/api/v1/image/assets%2Ffc53d607e21d497595ac97e0637001a1%2Fcd3534c1caa0497abfd44224040c6059?format=webp&width=800", - tip: "Games shipped monthly at speed", - }, - { - id: "corp", - label: "Corp", - color: "#3B82F6", - bgGradient: "from-blue-600 to-blue-400", - textColor: "text-blue-400", - href: "/corp", - icon: "https://cdn.builder.io/api/v1/image/assets%2Ffc53d607e21d497595ac97e0637001a1%2Fae654ecc18b241bdab273893e8231970?format=webp&width=800", - tip: "Enterprise solutions for scale", - }, - { - id: "foundation", - label: "Foundation", - color: "#EF4444", - bgGradient: "from-red-600 to-red-400", - textColor: "text-red-400", - href: "/foundation", - icon: "https://cdn.builder.io/api/v1/image/assets%2Ffc53d607e21d497595ac97e0637001a1%2Fc02cb1bf5056479bbb3ea4bd91f0d472?format=webp&width=800", - tip: "Community & education initiatives", - }, - { - id: "devlink", - label: "Dev-Link", - color: "#06B6D4", - bgGradient: "from-cyan-600 to-cyan-400", - textColor: "text-cyan-400", - href: "/dev-link", - icon: "https://cdn.builder.io/api/v1/image/assets%2Ffc53d607e21d497595ac97e0637001a1%2F9a96b43cbd7b49bb9d5434580319c793?format=webp&width=800", - tip: "Professional network for creators", - }, - { - id: "nexus", - label: "Nexus", - color: "#A855F7", - bgGradient: "from-purple-600 to-purple-400", - textColor: "text-purple-400", - href: "/nexus", - icon: "https://cdn.builder.io/api/v1/image/assets%2Ffc53d607e21d497595ac97e0637001a1%2F6df123b87a144b1fb99894d94198d97b?format=webp&width=800", - tip: "Talent marketplace & collaboration", - }, -]; - -interface ArmSwitcherModalProps { - isOpen: boolean; - onClose: () => void; -} - -export default function ArmSwitcherModal({ - isOpen, - onClose, -}: ArmSwitcherModalProps) { - const navigate = useNavigate(); - const [selectedArm, setSelectedArm] = useState(null); - const [isNavigating, setIsNavigating] = useState(false); - - const handleSelectArm = (armId: string) => { - setSelectedArm(armId); - }; - - const handleProceed = () => { - if (selectedArm) { - const arm = ARMS.find((a) => a.id === selectedArm); - if (arm) { - setIsNavigating(true); - setTimeout(() => { - navigate(arm.href); - onClose(); - setSelectedArm(null); - setIsNavigating(false); - }, 600); - } - } - }; - - const handleBack = () => { - if (selectedArm) { - setSelectedArm(null); - } else { - onClose(); - } - }; - - const selectedArmData = selectedArm - ? ARMS.find((a) => a.id === selectedArm) - : null; - - if (!isOpen) return null; - - return ( -
-
- {/* Header */} -
- -

- {selectedArm ? selectedArmData?.label : "Select Arm"} -

-
-
- - {/* Content */} -
- {!selectedArm ? ( - // Arm Grid - Minimal -
- {ARMS.map((arm) => ( - - ))} -
- ) : selectedArmData && !isNavigating ? ( - // Landing Page - Minimal -
- {/* Icon */} -
-
- {selectedArmData.label} -
-
- - {/* Title & Tip */} -
-

- {selectedArmData.label} -

-

{selectedArmData.tip}

-
- - {/* Progress Bars */} -
- {[0, 1, 2, 3, 4].map((i) => ( -
- ))} -
-
- ) : ( - // Loading State -
-
- {[0, 1, 2, 3, 4].map((i) => ( -
- ))} -
-

Initializing...

-
- )} -
- - {/* Footer - Buttons */} -
- {selectedArm && !isNavigating ? ( - <> - - - - ) : !isNavigating ? ( - - ) : null} -
- - -
-
- ); -}