## 背景 `AppCreationWizard` 组件(#743)已在 `@object-ui/plugin-designer` 中完成开发(PR #739, #745 已合并),包括: - 4步向导(基本信息 → 对象选择 → 导航构建 → 品牌个性化) - 完整 i18n(94 keys × 10 locales) - 取消确认 / 保存草稿 / 步骤校验 - 165 个单元测试全部通过 - 已注册到 `ComponentRegistry` 为 `app-creation-wizard` **但该组件尚未集成到 Console 应用(`apps/console`)中**,用户无法在实际界面中使用「新建应用」功能。 ## 开发内容 ### 1. Console 路由与页面 - [ ] 在 `apps/console/src/App.tsx` 添加新建应用路由(如 `/create-app` 或全局入口) - [ ] 创建 `apps/console/src/pages/CreateAppPage.tsx` 页面,渲染 `AppCreationWizard` - [ ] 从 `useMetadata()` 获取 `objects` 列表,传入 `availableObjects` prop - [ ] 处理 `onComplete` 回调 — 调用 `wizardDraftToAppSchema()` 转换后通过 API 创建应用(或 mock 模式下写入 metadata) - [ ] 处理 `onCancel` 回调 — 返回上一页/首页 - [ ] 处理 `onSaveDraft` 回调 — 保存草稿到 localStorage 或 API - [ ] 创建成功后导航到新应用首页 `/apps/:newAppName` ### 2. 入口触达 - [ ] 在 `AppSidebar` 侧边栏 App Switcher 中添加「+ 新建应用」按钮 - [ ] 在首页/无应用时(`No Apps Configured` 空状态)添加「创建第一个应用」CTA - [ ] 在 `CommandPalette`(⌘+K)中添加「Create New App」命令 ### 3. 编辑已有应用 - [ ] 在 `AppSidebar` 或应用设置中添加「编辑应用」入口 - [ ] 复用 `AppCreationWizard` 的 `initialDraft` prop 加载已有应用配置 - [ ] 编辑模式下更新而非新建 ### 4. DefineApp API 集成 - [ ] 对接 `@objectstack/client` 的 DefineApp API 或 kernel AppPlugin - [ ] MSW mock handler 支持应用 CRUD(创建/更新/删除) - [ ] 创建成功后刷新 metadata(`useMetadata().refresh()`) - [ ] 错误处理与 toast 通知 ### 5. NavigationDesigner 独立集成 - [ ] 在应用设置页面中集成 `NavigationDesigner` 组件 - [ ] 支持在已有应用上修改导航结构并保存 ### 6. 测试 - [ ] Console 集成测试:从入口 → 完成4步向导 → 创建成功 → 跳转 - [ ] Console 集成测试:编辑已有应用 - [ ] Console 集成测试:取消/保存草稿流程 - [ ] Console 集成测试:CommandPalette 触发创建应用 - [ ] `pnpm test` 全量通过 ### 7. 文档与 Roadmap - [ ] 更新 Console 文档(`content/docs/guide/console.md` 和 `console-architecture.md`),补充 Create App 路由与页面说明 - [ ] 更新 `ROADMAP.md`,在 P1.11 下增加 Console 集成子项 - [ ] 补充 Storybook story(如有独立的 Console-level story) ## 关键引用 - 组件实现:`packages/plugin-designer/src/AppCreationWizard.tsx` - 类型定义:`packages/types/src/app.ts`(`AppWizardDraft`, `wizardDraftToAppSchema`) - ComponentRegistry 注册:`packages/plugin-designer/src/index.tsx` - Console 主路由:`apps/console/src/App.tsx` - Console 侧边栏:`apps/console/src/components/AppSidebar.tsx` - Console CommandPalette:`apps/console/src/components/CommandPalette.tsx` - 关联 Issue:#743 ## 交付要求 - Console 中可完整走通「新建应用」全流程 - 可从 Sidebar、CommandPalette、空状态页三个入口触达 - 支持编辑已有应用配置 - `pnpm test` 必须全量通过 - 更新 Roadmap 和开发文档
背景
AppCreationWizard组件(#743)已在@object-ui/plugin-designer中完成开发(PR #739, #745 已合并),包括:ComponentRegistry为app-creation-wizard但该组件尚未集成到 Console 应用(
apps/console)中,用户无法在实际界面中使用「新建应用」功能。开发内容
1. Console 路由与页面
apps/console/src/App.tsx添加新建应用路由(如/create-app或全局入口)apps/console/src/pages/CreateAppPage.tsx页面,渲染AppCreationWizarduseMetadata()获取objects列表,传入availableObjectsproponComplete回调 — 调用wizardDraftToAppSchema()转换后通过 API 创建应用(或 mock 模式下写入 metadata)onCancel回调 — 返回上一页/首页onSaveDraft回调 — 保存草稿到 localStorage 或 API/apps/:newAppName2. 入口触达
AppSidebar侧边栏 App Switcher 中添加「+ 新建应用」按钮No Apps Configured空状态)添加「创建第一个应用」CTACommandPalette(⌘+K)中添加「Create New App」命令3. 编辑已有应用
AppSidebar或应用设置中添加「编辑应用」入口AppCreationWizard的initialDraftprop 加载已有应用配置4. DefineApp API 集成
@objectstack/client的 DefineApp API 或 kernel AppPluginuseMetadata().refresh())5. NavigationDesigner 独立集成
NavigationDesigner组件6. 测试
pnpm test全量通过7. 文档与 Roadmap
content/docs/guide/console.md和console-architecture.md),补充 Create App 路由与页面说明ROADMAP.md,在 P1.11 下增加 Console 集成子项关键引用
packages/plugin-designer/src/AppCreationWizard.tsxpackages/types/src/app.ts(AppWizardDraft,wizardDraftToAppSchema)packages/plugin-designer/src/index.tsxapps/console/src/App.tsxapps/console/src/components/AppSidebar.tsxapps/console/src/components/CommandPalette.tsx交付要求
pnpm test必须全量通过