3D 资源没有预览图时封面留空,不再拿模型对象顶上去

- api-server:`project_editor_client_media_src` 对 `model3d` 在没有预览(`thumbnail_src` 与存储的 `image_src` 都缺)时直接返回空,不再回落到模型对象;用例改成断言空串,并补「存储的 image_src 是空白」一例
- docs/adr 0003:写明这是唯一允许「有对象但 `imageSrc` 为空」的类别,消费方按空值显示占位;被否决项里补上「拿模型对象冒充 imageSrc 的投影回落」
- docs/technical Tripo 集成方案:资源表说明改成「有预览才填」,验收项 11 改成「预览缺失时留空、不得回落成模型对象」
- 画布侧 `Model3dViewerModel` 的注释同步:历史布局里仍可能留着指向模型本体的地址,图片元素不能加载它
This commit is contained in:
2026-09-24 19:51:47 +08:00
parent 2dfb60a34e
commit 453e351fc6
4 changed files with 30 additions and 15 deletions
@@ -23,8 +23,9 @@ const MODEL3D_VIEWER_SUPPORTED_FORMAT_TEXT =
/**
* 判断一个媒体地址是否其实指向模型本体。
*
* 后端投影正常情况下把 `imageSrc` 指到预览图;预览图缺失时它会回落到模型对象,
* 此时图片元素不能去加载模型文件,必须改显示 3D 占位。
* 后端投影只把预览图放进 `imageSrc`(没有预览就留空,不再拿模型对象顶封面),
* 但历史布局与旧快照里可能还留着指向模型本体的地址:图片元素不能去加载模型文件,
* 必须改显示 3D 占位。
*/
export function isModel3dFileSource(value: string | null | undefined) {
return resolveModel3dViewerFormat({ url: value }) !== null;