合并master并保留Spine序列帧修复

合并master当前工程、后端、前端和文档更新

按已确认方案解决Spine序列帧多模态、帧数和快速编辑冲突

保留当前分支底部工具栏宽度与隐藏滚动条样式
This commit is contained in:
2026-08-14 21:33:26 +08:00
338 changed files with 69729 additions and 8828 deletions
@@ -135,10 +135,13 @@ export function resolveImageReferenceSubmissionSource(reference: {
return reference.objectKey?.trim() || reference.src;
}
export function resolveRegisteredEditorReferenceId(reference: {
resourceId?: string | null;
sourceAssetId?: string | null;
}) {
export function resolveRegisteredEditorReferenceId(
reference: {
resourceId?: string | null;
sourceAssetId?: string | null;
},
referenceLabel: '原图' | '参考图' = '原图',
) {
const resourceId = reference.resourceId?.trim();
if (
resourceId &&
@@ -148,10 +151,12 @@ export function resolveRegisteredEditorReferenceId(reference: {
return resourceId;
}
const assetId = reference.sourceAssetId?.trim();
if (assetId) {
if (assetId && !assetId.startsWith('upload-')) {
return assetId;
}
throw new Error('参考图尚未登记为项目资源或素材,请重新选择或上传后再试');
throw new Error(
`${referenceLabel}尚未登记为项目资源或素材,请重新选择或上传后再试`,
);
}
function buildSeedanceVideoReferenceInput(
@@ -737,6 +742,7 @@ export function buildImageGenerationSubmissionPlan({
? {
referenceId: resolveRegisteredEditorReferenceId(
dialog.specReference,
'参考图',
),
}
: {}),
@@ -1116,7 +1122,10 @@ export function buildIconSpritesheetGenerationSubmissionPlan(
}
let referenceId: string;
try {
referenceId = resolveRegisteredEditorReferenceId(dialog.iconSpecReference);
referenceId = resolveRegisteredEditorReferenceId(
dialog.iconSpecReference,
'参考图',
);
} catch (error) {
return {
ok: false,