fix: 完善剧本完成状态限制并优化表单对齐与配色
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
import type { InjectionKey, ShallowRef } from 'vue'
|
||||
import type { Project } from './types'
|
||||
|
||||
/** 由项目布局发布给应用侧栏的访问状态;不额外请求或持久化项目数据。 */
|
||||
export interface ProjectAccess {
|
||||
projectId: string
|
||||
completed: boolean
|
||||
}
|
||||
|
||||
/** 侧栏与项目布局共享同一份判定,初次读取和切换项目时默认锁定。 */
|
||||
export const projectAccessKey: InjectionKey<ShallowRef<ProjectAccess | null>> = Symbol('project-access')
|
||||
|
||||
/** 仅正式项目状态 completed 解锁下游;已有部分剧集或旧 checkpoint 不代表剧本完成。 */
|
||||
export function isProjectComplete(project: Pick<Project, 'id' | 'status'> | null, projectId: string): boolean {
|
||||
return !!projectId && project?.id === projectId && project.status === 'completed'
|
||||
}
|
||||
Reference in New Issue
Block a user