feat: 实现 OpenCode 页面生命周期管理 XCOpenCodeWeb.exe
- 新增 electron/services/xcOpenCodeWebService.ts 服务管理模块 - 标签页打开时启动 XCOpenCodeWeb.exe,关闭时停止 - 使用 iframe 在 OpenCode 页面显示 Web 服务 (端口 3002) - 添加 bin 目录打包配置 - 添加 TypeScript 类型定义
This commit is contained in:
@@ -6,6 +6,7 @@ import log from 'electron-log';
|
||||
import { generatePdf } from './services/pdfGenerator';
|
||||
import { selectHtmlFile } from './services/htmlImport';
|
||||
import { opencodeService } from './services/opencodeService';
|
||||
import { xcOpenCodeWebService } from './services/xcOpenCodeWebService';
|
||||
import { electronState } from './state';
|
||||
|
||||
log.initialize();
|
||||
@@ -361,6 +362,18 @@ ipcMain.handle('opencode-stop-server', async () => {
|
||||
return await opencodeService.stop();
|
||||
});
|
||||
|
||||
ipcMain.handle('xc-opencode-web-get-status', () => {
|
||||
return xcOpenCodeWebService.getStatus();
|
||||
});
|
||||
|
||||
ipcMain.handle('xc-opencode-web-start', async () => {
|
||||
return await xcOpenCodeWebService.start();
|
||||
});
|
||||
|
||||
ipcMain.handle('xc-opencode-web-stop', async () => {
|
||||
return await xcOpenCodeWebService.stop();
|
||||
});
|
||||
|
||||
async function startServer() {
|
||||
if (electronState.isDevelopment()) {
|
||||
log.info('In dev mode, assuming external servers are running.');
|
||||
|
||||
Reference in New Issue
Block a user