对齐后端 dev 059e597,新增项目风格编辑锁定、身份文本生成、身份参考图与母版切换。 整理六个工作区入口,接通人物及场景母版继承说明、形态图片来源追溯。 补充草稿保护、正式 ID 校验、费用确认及部分失败回执,67 项测试和静态检查、构建通过。 未修改后端,未调用真实模型;本环境未完成浏览器视觉验收。
22 lines
911 B
TypeScript
22 lines
911 B
TypeScript
import { computed } from 'vue'
|
|
import { useProjectContext } from '../projects/context'
|
|
import { getOperation } from './operations'
|
|
import { workflowCheckpoints } from './selectors'
|
|
|
|
/** 资产编辑沿用项目级互斥;剧本生成或拆解期间不修改其下游资产。 */
|
|
export function useProjectMutationGuard() {
|
|
const context = useProjectContext()
|
|
const projectId = computed(() => context.project.value?.id ?? '')
|
|
const operation = computed(() => getOperation(projectId.value))
|
|
const blocked = computed(
|
|
() =>
|
|
!projectId.value ||
|
|
!!context.error.value ||
|
|
operation.value.pending ||
|
|
context.project.value?.status === 'generating' ||
|
|
workflowCheckpoints(context.checkpoints.value, 'breakdown').at(-1)?.state.workflowExecution?.status ===
|
|
'running'
|
|
)
|
|
return { projectId, operation, blocked }
|
|
}
|