feat: wire real app components into registry

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
M1ngdaXie
2026-03-26 14:36:21 -07:00
parent 4425047f8d
commit f75b1b3d1f

View File

@@ -1,8 +1,12 @@
import React from 'react';
import type { AppConfig } from '../types';
// Lazy imports — swap with real components in Task 14
const Placeholder = () => React.createElement('div', { style: { padding: 24, color: '#fff' } }, 'Coming soon');
import AboutMe from '../apps/AboutMe';
import Projects from '../apps/Projects';
import Terminal from '../apps/Terminal';
import Links from '../apps/Links';
import Alfred from '../apps/Alfred';
import Chengyu from '../apps/Chengyu';
import Poker from '../apps/Poker';
import Trash from '../apps/Trash';
export const APPS: AppConfig[] = [
{
@@ -12,7 +16,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #0a84ff, #bf5af2)',
defaultSize: { width: 560, height: 420 },
defaultPosition: { x: 120, y: 80 },
component: Placeholder,
component: AboutMe,
desktopPosition: { col: 0, row: 0 },
},
{
@@ -22,7 +26,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #30d158, #0a84ff)',
defaultSize: { width: 660, height: 500 },
defaultPosition: { x: 160, y: 100 },
component: Placeholder,
component: Projects,
desktopPosition: { col: 1, row: 0 },
},
{
@@ -32,7 +36,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #1e1e28, #3a3a4a)',
defaultSize: { width: 640, height: 420 },
defaultPosition: { x: 200, y: 120 },
component: Placeholder,
component: Terminal,
desktopPosition: { col: 0, row: 1 },
},
{
@@ -42,7 +46,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #64d2ff, #0a84ff)',
defaultSize: { width: 400, height: 360 },
defaultPosition: { x: 240, y: 140 },
component: Placeholder,
component: Links,
desktopPosition: { col: 1, row: 1 },
},
{
@@ -52,7 +56,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #ff453a, #bf5af2)',
defaultSize: { width: 520, height: 380 },
defaultPosition: { x: 280, y: 160 },
component: Placeholder,
component: Alfred,
desktopPosition: { col: 0, row: 2 },
},
{
@@ -62,7 +66,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #ffd60a, #ff453a)',
defaultSize: { width: 460, height: 360 },
defaultPosition: { x: 320, y: 180 },
component: Placeholder,
component: Chengyu,
desktopPosition: { col: 1, row: 2 },
},
{
@@ -72,7 +76,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #30d158, #ffd60a)',
defaultSize: { width: 500, height: 400 },
defaultPosition: { x: 360, y: 200 },
component: Placeholder,
component: Poker,
desktopPosition: { col: 0, row: 3 },
},
{
@@ -82,7 +86,7 @@ export const APPS: AppConfig[] = [
iconGradient: 'linear-gradient(135deg, #636366, #48484a)',
defaultSize: { width: 380, height: 300 },
defaultPosition: { x: 400, y: 220 },
component: Placeholder,
component: Trash,
desktopPosition: { col: 1, row: 3 },
},
];