15774a1c02
Project CI / AI game creator shell Rust shard 1/4 (push) Successful in 7m24s
Project CI / AI game creator shell Rust shard 4/4 (push) Successful in 7m25s
Project CI / AI game creator shell Rust shard 2/4 (push) Successful in 7m28s
Project CI / AI game creator shell Rust shard 3/4 (push) Successful in 7m31s
Project CI / AI game creator shell Rust smoke (push) Successful in 1m57s
Project CI / AI game creator shell Rust crates (push) Successful in 2m41s
Project CI / Repository checks (push) Successful in 4m10s
Project CI / Native shell tests (push) Successful in 11m20s
Project CI / Frontend tests (push) Successful in 10m30s
Project CI / AI game creator shell web tests (push) Successful in 5m41s
Project CI / Backend tests (push) Successful in 14m9s
接入真实项目打开、切换和关闭生命周期并修复退出等待竞态 新增后台项目列表及按原目录校验导出的 ZIP 下载 补充快照完整性元数据、后台权限和取消清理 固定默认 AGC 存储目标并支持空文件与特殊字符路径 补充自动化测试及真实 OSS 只读导出验证 记录本地数据库 404 导致完整 HTTP 联调和安装版实机验证待补
17 lines
559 B
TypeScript
17 lines
559 B
TypeScript
import { useEffect } from 'react';
|
|
|
|
import { resolveTauriInvoke } from '../../app/tauri';
|
|
import { projectSnapshotWorkspaceRegistration } from '../../services/projectSnapshotWorkspace';
|
|
|
|
export function useProjectSnapshotWorkspace(projectPath: string | null) {
|
|
const invoke = resolveTauriInvoke();
|
|
const registration = invoke
|
|
? projectSnapshotWorkspaceRegistration(invoke)
|
|
: null;
|
|
|
|
useEffect(() => registration?.acquire(), [registration]);
|
|
useEffect(() => {
|
|
void registration?.setProject(projectPath);
|
|
}, [projectPath, registration]);
|
|
}
|