✅ Completed
作为 前端开发者, 我想要 创建一个共享UI组件包, 以便 可以在多个前端应用中复用UI组件、hooks、工具类等,提高开发效率和代码一致性。
@d8d/shared-ui-components,包含正确的包配置和依赖管理注意: 不包含带有API客户端依赖的业务组件(如AvatarSelector、FileSelector、MinioUploader等),这些组件应该保留在各自的应用中。 新增: 需要复制无API依赖的通用管理后台组件,如DataTablePagination表格分页组件到共享包中,供其他包按路径导入使用。
[x] 创建共享UI组件包基础结构 (AC: 1)
packages/shared-ui-components/ 目录package.json 为 @d8d/shared-ui-components[x] 抽离基础UI组件库 (AC: 2)
web/src/client/components/ui/ 目录到共享包(46个组件)[x] 复制管理后台通用组件 (AC: 2)
DataTablePagination 表格分页组件到共享包[x] 抽离共享hooks (AC: 3)
web/src/client/hooks/use-mobile.ts 到共享包[x] 抽离工具类 (AC: 4)
web/src/client/lib/utils.ts 到共享包[x] 抽离共享类型定义和常量 (AC: 5)
[x] 配置workspace包依赖复用机制 (AC: 6)
pnpm-workspace.yaml 包含新包[x] 实现单元测试和集成测试 (AC: 8)
[x] 验证现有功能无回归 (AC: 7)
基于故事007.010(订单模块多租户复制)和之前故事的经验教训:
技术挑战和解决方案 [Source: docs/prd/epic-007-multi-tenant-package-replication.md#实施经验总结]
最佳实践 [Source: docs/prd/epic-007-multi-tenant-package-replication.md#最佳实践]
共享包结构 [Source: docs/architecture/source-tree.md#包架构层次]
packages/shared-ui-components/packages/shared-ui-components/src/components/packages/shared-ui-components/src/hooks/packages/shared-ui-components/src/utils/packages/shared-ui-components/src/types/packages/shared-ui-components/tests/unit/管理后台组件 [Source: docs/architecture/component-architecture.md#前端组件架构]
基础UI组件 [Source: docs/architecture/component-architecture.md#前端组件架构]
前端技术栈 [Source: docs/architecture/tech-stack.md#现有技术栈维护]
包架构 [Source: docs/architecture/source-tree.md#包架构层次]
性能要求 [Source: docs/prd/epic-007-multi-tenant-package-replication.md#成功标准]
packages/shared-ui-components/tests/unit/| 日期 | 版本 | 描述 | 作者 |
|---|---|---|---|
| 2025-11-15 | 1.0 | 初始故事创建 | Bob (Scrum Master) |
@d8d/shared-ui-components 包packages/shared-ui-components/package.json - 共享包配置packages/shared-ui-components/src/components/admin/ - 管理后台组件packages/shared-ui-components/src/components/admin/DataTablePagination.tsx - 表格分页组件packages/shared-ui-components/src/components/admin/index.ts - 管理后台组件导出packages/shared-ui-components/src/components/ui/ - 基础UI组件packages/shared-ui-components/src/hooks/ - 共享hookspackages/shared-ui-components/src/utils/ - 工具类packages/shared-ui-components/src/types/ - 类型定义packages/shared-ui-components/tests/unit/ - 单元测试packages/shared-ui-components/tests/unit/DataTablePagination.test.tsx - 分页组件测试packages/shared-ui-components/tsconfig.json - TypeScript配置packages/shared-ui-components/vitest.config.ts - 测试配置此部分将在质量保证审查过程中由QA代理填充