digital-human.component.ts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { Component } from '@angular/core';
  2. import { CommonModule } from '@angular/common';
  3. /**
  4. * 数字人合成 Pipeline 独立组件(占位)
  5. *
  6. * ⚠️ 当前状态:占位(Placeholder)
  7. *
  8. * 数字人合成的完整实现仍保留在主 `App` 组件中:
  9. * - 模板:`app.html` 中 `*ngIf="currentTab === 'digital-human'"` 的整段(约 700 行)
  10. * - 状态/方法:`app.ts` 中所有 `dh*` 前缀字段与方法(约 1000+ 行)
  11. *
  12. * 因为该流程已成熟、依赖与状态高度耦合主组件(共享 voiceProfiles / managedVideos /
  13. * JimengService 实例、refreshView / showToast 等基础设施),强行抽离的回归风险远高于
  14. * 收益,因此 P0 仅在 `pipeline-registry.ts` 中将其声明为模式入口,UI 仍由主组件渲染。
  15. *
  16. * 此占位组件存在的意义:
  17. * 1. 让 `src/app/pages/pipelines/` 目录结构对齐其它五种生成模式
  18. * 2. 为未来"完全抽离"提供锚点(先保留 routing,再逐步迁移代码)
  19. *
  20. * 详细迁移计划见 `docs/MIGRATION_DIGITAL_HUMAN.md`。
  21. */
  22. @Component({
  23. selector: 'app-digital-human-placeholder',
  24. standalone: true,
  25. imports: [CommonModule],
  26. template: `
  27. <section class="dh-page-placeholder">
  28. <p>数字人合成 UI 由主组件渲染。</p>
  29. <p>本占位组件保留供未来抽离时使用。</p>
  30. </section>
  31. `,
  32. styles: [`
  33. .dh-page-placeholder {
  34. padding: 40px;
  35. text-align: center;
  36. color: #94a3b8;
  37. }
  38. `],
  39. })
  40. export class DigitalHumanPlaceholderComponent {}