2.0 KiB
2.0 KiB
作品货架统一 2026-04-25
背景
创作中心目前已经把 RPG、大鱼吃小鱼、拼图三类作品展示在同一个网格里,但前端组件仍直接消费三类原始 works:
- RPG 使用
status、title、subtitle、canEnterWorld。 - 大鱼使用
status、title、资源完成度字段。 - 拼图使用
publicationStatus、levelName、authorDisplayName、themeTags。
这导致筛选、计数、按钮文案、卡片标题、副标题、标签、删除忙碌态都在 UI 组件里做三套判断。后续再接新作品类型时,货架组件会继续膨胀。
目标
- 新增前端统一作品货架视图模型
CreationWorkShelfItem。 - 由归一化函数把 RPG / Big Fish / Puzzle works 映射成统一字段。
CustomWorldCreationHub只负责筛选、空态和动作分发。CustomWorldWorkCard只负责渲染统一字段,不再理解三类原始 schema。
非目标
- 本轮不新增后端统一 works 聚合接口。
- 不改变三类现有 works API contract。
- 不改变平台首页公开广场的 gallery 合并逻辑。
- 不改变删除、体验、恢复草稿的业务规则。
统一字段
CreationWorkShelfItem 至少包含:
id:稳定货架 id。kind:rpg | big-fish | puzzle。status:draft | published。title / subtitle / summary / updatedAt。coverImageSrc / coverRenderMode / coverCharacterImageSrcs。badges:状态、类型、阶段、标签等展示徽标。metrics:角色数、地点数、素材完成度、游玩数等底部指标。openActionLabel:卡片无障碍文案与主动作语义。source:保留原始 work,用于平台壳层执行动作。
验收
- 创作中心三类作品仍在同一个网格展示。
- 草稿 / 已发布筛选计数统一从
CreationWorkShelfItem.status读取。 - 卡片渲染不再直接判断
publicationStatus或不同 works schema 的标题字段。 - 现有创作中心交互测试通过。