修改前端架构到Electron ,增加llm_api页面,增加chat SSE渲染,修改若安按钮,卡片名称修改等小功能,增加agent-core,增加SQlite,增加llm UDS Pipe websocke

This commit is contained in:
mark
2026-09-27 14:18:57 +08:00
parent b064c0cbca
commit c800a503da
3427 changed files with 1290962 additions and 32816 deletions
+24
View File
@@ -0,0 +1,24 @@
import colors from 'picocolors';
import { createLogger } from 'vite';
import { s as startElectron } from './lib-BmEkZIgk.mjs';
import { build } from './lib-D1n7TA6K.mjs';
import 'node:path';
import 'node:fs';
import 'node:url';
import 'node:module';
import 'esbuild';
import 'node:child_process';
import 'node:crypto';
import 'node:fs/promises';
import 'magic-string';
async function preview(inlineConfig = {}, options) {
if (!options.skipBuild) {
await build(inlineConfig);
}
const logger = createLogger(inlineConfig.logLevel);
startElectron(inlineConfig.root);
logger.info(colors.green(`\nstart electron app...\n`));
}
export { preview };
+112
View File
@@ -0,0 +1,112 @@
'use strict';
var vite = require('vite');
var colors = require('picocolors');
var config = require('./lib-CMs-qhOt.cjs');
require('node:path');
require('node:fs');
require('node:url');
require('node:module');
require('esbuild');
require('node:child_process');
require('node:crypto');
require('node:fs/promises');
require('magic-string');
async function createServer(inlineConfig = {}, options) {
process.env.NODE_ENV_ELECTRON_VITE = 'development';
const config$1 = await config.resolveConfig(inlineConfig, 'serve', 'development');
if (config$1.config) {
const logger = vite.createLogger(inlineConfig.logLevel);
let server;
let ps;
const errorHook = (e) => {
logger.error(`${colors.bgRed(colors.white(' ERROR '))} ${colors.red(e.message)}`);
};
const mainViteConfig = config$1.config?.main;
if (mainViteConfig && !options.rendererOnly) {
const watchHook = () => {
logger.info(colors.green(`\nrebuild the electron main process successfully`));
if (ps) {
logger.info(colors.cyan(`\n waiting for electron to exit...`));
ps.removeAllListeners();
ps.kill();
ps = config.startElectron(inlineConfig.root);
logger.info(colors.green(`\nrestart electron app...`));
}
};
await doBuild(mainViteConfig, watchHook, errorHook);
logger.info(colors.green(`\nbuild the electron main process successfully`));
}
const preloadViteConfig = config$1.config?.preload;
if (preloadViteConfig && !options.rendererOnly) {
logger.info(colors.gray(`\n-----\n`));
const watchHook = () => {
logger.info(colors.green(`\nrebuild the electron preload files successfully`));
if (server) {
logger.info(colors.cyan(`\n trigger renderer reload`));
server.ws.send({ type: 'full-reload' });
}
};
await doBuild(preloadViteConfig, watchHook, errorHook);
logger.info(colors.green(`\nbuild the electron preload files successfully`));
}
if (options.rendererOnly) {
logger.warn(`\n${colors.yellow(colors.bold('warn'))}:${colors.yellow(' you have skipped the main process and preload scripts building')}`);
}
const rendererViteConfig = config$1.config?.renderer;
if (rendererViteConfig) {
logger.info(colors.gray(`\n-----\n`));
server = await vite.createServer(rendererViteConfig);
if (!server.httpServer) {
throw new Error('HTTP server not available');
}
await server.listen();
const conf = server.config.server;
const protocol = conf.https ? 'https:' : 'http:';
const host = config.resolveHostname(conf.host);
const port = conf.port;
process.env.ELECTRON_RENDERER_URL = `${protocol}//${host}:${port}`;
const slogger = server.config.logger;
slogger.info(colors.green(`dev server running for the electron renderer process at:\n`), {
clear: !slogger.hasWarned && !options.rendererOnly
});
server.printUrls();
}
ps = config.startElectron(inlineConfig.root);
logger.info(colors.green(`\nstart electron app...\n`));
}
}
async function doBuild(config, watchHook, errorHook) {
return new Promise(resolve => {
if (config.build?.watch) {
let firstBundle = true;
const closeBundle = () => {
if (firstBundle) {
firstBundle = false;
resolve();
}
else {
watchHook();
}
};
config = vite.mergeConfig(config, {
plugins: [
{
name: 'vite:electron-watcher',
closeBundle
}
]
});
}
vite.build(config)
.then(() => {
if (!config.build?.watch) {
resolve();
}
})
.catch(e => errorHook(e));
});
}
exports.createServer = createServer;
+47
View File
@@ -0,0 +1,47 @@
'use strict';
var vite = require('vite');
var config = require('./lib-CMs-qhOt.cjs');
require('node:path');
require('node:fs');
require('node:url');
require('node:module');
require('picocolors');
require('esbuild');
require('node:child_process');
require('node:crypto');
require('node:fs/promises');
require('magic-string');
/**
* Bundles the electron app for production.
*/
async function build(inlineConfig = {}) {
process.env.NODE_ENV_ELECTRON_VITE = 'production';
const config$1 = await config.resolveConfig(inlineConfig, 'build', 'production');
if (config$1.config) {
const mainViteConfig = config$1.config?.main;
if (mainViteConfig) {
if (mainViteConfig.build?.watch) {
mainViteConfig.build.watch = null;
}
await vite.build(mainViteConfig);
}
const preloadViteConfig = config$1.config?.preload;
if (preloadViteConfig) {
if (preloadViteConfig.build?.watch) {
preloadViteConfig.build.watch = null;
}
await vite.build(preloadViteConfig);
}
const rendererViteConfig = config$1.config?.renderer;
if (rendererViteConfig) {
if (rendererViteConfig.build?.watch) {
rendererViteConfig.build.watch = null;
}
await vite.build(rendererViteConfig);
}
}
}
exports.build = build;
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+45
View File
@@ -0,0 +1,45 @@
import { build as build$1 } from 'vite';
import { r as resolveConfig } from './lib-BmEkZIgk.mjs';
import 'node:path';
import 'node:fs';
import 'node:url';
import 'node:module';
import 'picocolors';
import 'esbuild';
import 'node:child_process';
import 'node:crypto';
import 'node:fs/promises';
import 'magic-string';
/**
* Bundles the electron app for production.
*/
async function build(inlineConfig = {}) {
process.env.NODE_ENV_ELECTRON_VITE = 'production';
const config = await resolveConfig(inlineConfig, 'build', 'production');
if (config.config) {
const mainViteConfig = config.config?.main;
if (mainViteConfig) {
if (mainViteConfig.build?.watch) {
mainViteConfig.build.watch = null;
}
await build$1(mainViteConfig);
}
const preloadViteConfig = config.config?.preload;
if (preloadViteConfig) {
if (preloadViteConfig.build?.watch) {
preloadViteConfig.build.watch = null;
}
await build$1(preloadViteConfig);
}
const rendererViteConfig = config.config?.renderer;
if (rendererViteConfig) {
if (rendererViteConfig.build?.watch) {
rendererViteConfig.build.watch = null;
}
await build$1(rendererViteConfig);
}
}
}
export { build };
+110
View File
@@ -0,0 +1,110 @@
import { createLogger, createServer as createServer$1, mergeConfig, build } from 'vite';
import colors from 'picocolors';
import { r as resolveConfig, c as resolveHostname, s as startElectron } from './lib-BmEkZIgk.mjs';
import 'node:path';
import 'node:fs';
import 'node:url';
import 'node:module';
import 'esbuild';
import 'node:child_process';
import 'node:crypto';
import 'node:fs/promises';
import 'magic-string';
async function createServer(inlineConfig = {}, options) {
process.env.NODE_ENV_ELECTRON_VITE = 'development';
const config = await resolveConfig(inlineConfig, 'serve', 'development');
if (config.config) {
const logger = createLogger(inlineConfig.logLevel);
let server;
let ps;
const errorHook = (e) => {
logger.error(`${colors.bgRed(colors.white(' ERROR '))} ${colors.red(e.message)}`);
};
const mainViteConfig = config.config?.main;
if (mainViteConfig && !options.rendererOnly) {
const watchHook = () => {
logger.info(colors.green(`\nrebuild the electron main process successfully`));
if (ps) {
logger.info(colors.cyan(`\n waiting for electron to exit...`));
ps.removeAllListeners();
ps.kill();
ps = startElectron(inlineConfig.root);
logger.info(colors.green(`\nrestart electron app...`));
}
};
await doBuild(mainViteConfig, watchHook, errorHook);
logger.info(colors.green(`\nbuild the electron main process successfully`));
}
const preloadViteConfig = config.config?.preload;
if (preloadViteConfig && !options.rendererOnly) {
logger.info(colors.gray(`\n-----\n`));
const watchHook = () => {
logger.info(colors.green(`\nrebuild the electron preload files successfully`));
if (server) {
logger.info(colors.cyan(`\n trigger renderer reload`));
server.ws.send({ type: 'full-reload' });
}
};
await doBuild(preloadViteConfig, watchHook, errorHook);
logger.info(colors.green(`\nbuild the electron preload files successfully`));
}
if (options.rendererOnly) {
logger.warn(`\n${colors.yellow(colors.bold('warn'))}:${colors.yellow(' you have skipped the main process and preload scripts building')}`);
}
const rendererViteConfig = config.config?.renderer;
if (rendererViteConfig) {
logger.info(colors.gray(`\n-----\n`));
server = await createServer$1(rendererViteConfig);
if (!server.httpServer) {
throw new Error('HTTP server not available');
}
await server.listen();
const conf = server.config.server;
const protocol = conf.https ? 'https:' : 'http:';
const host = resolveHostname(conf.host);
const port = conf.port;
process.env.ELECTRON_RENDERER_URL = `${protocol}//${host}:${port}`;
const slogger = server.config.logger;
slogger.info(colors.green(`dev server running for the electron renderer process at:\n`), {
clear: !slogger.hasWarned && !options.rendererOnly
});
server.printUrls();
}
ps = startElectron(inlineConfig.root);
logger.info(colors.green(`\nstart electron app...\n`));
}
}
async function doBuild(config, watchHook, errorHook) {
return new Promise(resolve => {
if (config.build?.watch) {
let firstBundle = true;
const closeBundle = () => {
if (firstBundle) {
firstBundle = false;
resolve();
}
else {
watchHook();
}
};
config = mergeConfig(config, {
plugins: [
{
name: 'vite:electron-watcher',
closeBundle
}
]
});
}
build(config)
.then(() => {
if (!config.build?.watch) {
resolve();
}
})
.catch(e => errorHook(e));
});
}
export { createServer };
+26
View File
@@ -0,0 +1,26 @@
'use strict';
var colors = require('picocolors');
var vite = require('vite');
var config = require('./lib-CMs-qhOt.cjs');
var build = require('./lib-BVIIv3aq.cjs');
require('node:path');
require('node:fs');
require('node:url');
require('node:module');
require('esbuild');
require('node:child_process');
require('node:crypto');
require('node:fs/promises');
require('magic-string');
async function preview(inlineConfig = {}, options) {
if (!options.skipBuild) {
await build.build(inlineConfig);
}
const logger = vite.createLogger(inlineConfig.logLevel);
config.startElectron(inlineConfig.root);
logger.info(colors.green(`\nstart electron app...\n`));
}
exports.preview = preview;