feat(engine): 添加编辑器模式标志控制编辑器UI显示 (#274)

* feat(engine): 添加编辑器模式标志控制编辑器UI显示

- 在 Rust 引擎中添加 isEditor 标志,控制网格、gizmos、坐标轴指示器的显示
- 运行时模式下自动隐藏所有编辑器专用 UI
- 编辑器预览和浏览器运行时通过 setEditorMode(false) 禁用编辑器 UI
- 添加 Scene.isEditorMode 延迟组件生命周期回调,直到 begin() 调用
- 修复用户组件注册到 Core ComponentRegistry 以支持序列化
- 修复 Run in Browser 时用户组件加载问题

* fix: 复制引擎模块的类型定义文件到 dist/engine

* fix: 修复用户项目 tsconfig paths 类型定义路径

- 从 module.json 读取实际包名而不是使用目录名
- 修复 .d.ts 文件复制逻辑,支持 .mjs 扩展名
This commit is contained in:
YHH
2025-12-04 22:43:26 +08:00
committed by GitHub
parent 0d9bab910e
commit d7454e3ca4
16 changed files with 393 additions and 40 deletions

View File

@@ -213,6 +213,15 @@ function copyEngineModulesPlugin(): Plugin {
if (fs.existsSync(sourceMapPath)) {
fs.copyFileSync(sourceMapPath, path.join(moduleOutputDir, 'index.js.map'));
}
// Copy type definitions if exists
// 复制类型定义文件(如果存在)
// Handle both .js and .mjs extensions
// 处理 .js 和 .mjs 两种扩展名
const distDir = path.dirname(module.distPath);
const dtsPath = path.join(distDir, 'index.d.ts');
if (fs.existsSync(dtsPath)) {
fs.copyFileSync(dtsPath, path.join(moduleOutputDir, 'index.d.ts'));
}
hasRuntime = true;
// Copy additional included files (e.g., chunks)