()
| 227 | |
| 228 | |
| 229 | const renderContent = () => { |
| 230 | switch (view) { |
| 231 | case "welcome": |
| 232 | return ( |
| 233 | <div className="flex items-center justify-center p-4" style={{ height: "100%" }}> |
| 234 | <div className="w-full max-w-4xl"> |
| 235 | {/* Welcome Header */} |
| 236 | <motion.div |
| 237 | initial={{ opacity: 0, y: 8 }} |
| 238 | animate={{ opacity: 1, y: 0 }} |
| 239 | transition={{ duration: 0.15 }} |
| 240 | className="mb-12 text-center" |
| 241 | > |
| 242 | <h1 className="text-4xl font-bold tracking-tight"> |
| 243 | <span className="rotating-symbol"></span> |
| 244 | Welcome to opcode |
| 245 | </h1> |
| 246 | </motion.div> |
| 247 | |
| 248 | {/* Navigation Cards */} |
| 249 | <div className="grid grid-cols-1 md:grid-cols-2 gap-6 max-w-2xl mx-auto"> |
| 250 | {/* CC Agents Card */} |
| 251 | <motion.div |
| 252 | initial={{ opacity: 0, y: 8 }} |
| 253 | animate={{ opacity: 1, y: 0 }} |
| 254 | transition={{ duration: 0.15, delay: 0.05 }} |
| 255 | > |
| 256 | <Card |
| 257 | className="h-64 cursor-pointer transition-all duration-200 hover:scale-105 hover:shadow-lg border border-border/50 shimmer-hover trailing-border" |
| 258 | onClick={() => handleViewChange("cc-agents")} |
| 259 | > |
| 260 | <div className="h-full flex flex-col items-center justify-center p-8"> |
| 261 | <Bot className="h-16 w-16 mb-4 text-primary" /> |
| 262 | <h2 className="text-xl font-semibold">CC Agents</h2> |
| 263 | </div> |
| 264 | </Card> |
| 265 | </motion.div> |
| 266 | |
| 267 | {/* Projects Card */} |
| 268 | <motion.div |
| 269 | initial={{ opacity: 0, y: 8 }} |
| 270 | animate={{ opacity: 1, y: 0 }} |
| 271 | transition={{ duration: 0.15, delay: 0.1 }} |
| 272 | > |
| 273 | <Card |
| 274 | className="h-64 cursor-pointer transition-all duration-200 hover:scale-105 hover:shadow-lg border border-border/50 shimmer-hover trailing-border" |
| 275 | onClick={() => handleViewChange("projects")} |
| 276 | > |
| 277 | <div className="h-full flex flex-col items-center justify-center p-8"> |
| 278 | <FolderCode className="h-16 w-16 mb-4 text-primary" /> |
| 279 | <h2 className="text-xl font-semibold">Projects</h2> |
| 280 | </div> |
| 281 | </Card> |
| 282 | </motion.div> |
| 283 | |
| 284 | </div> |
| 285 | </div> |
| 286 | </div> |
no test coverage detected