Files
behavior3editor/vite.config.ts
T
codetypes 2e5c08b2ad reimplement the editor use lastest antd and other libs, feature of this commit:
1. file manger
2. highlight for click input or output
3. selector of subtress
4. autocomplete for input or output
2024-04-17 10:35:51 +08:00

60 lines
1.6 KiB
TypeScript

import { rmSync } from "node:fs";
import path from "node:path";
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import electron from "vite-electron-plugin";
import { customStart, loadViteEnv } from "vite-electron-plugin/plugin";
import renderer from "vite-plugin-electron-renderer";
import pkg from "./package.json";
// https://vitejs.dev/config/
export default defineConfig(({ command }) => {
rmSync("dist-electron", { recursive: true, force: true });
const sourcemap = true; //command === "serve" || !!process.env.VSCODE_DEBUG;
return {
build: {
sourcemap: true,
},
resolve: {
alias: {
"@": path.join(__dirname, "src"),
},
},
plugins: [
react(),
electron({
include: ["electron"],
transformOptions: {
sourcemap,
},
plugins: [
...(!!process.env.VSCODE_DEBUG
? [
// Will start Electron via VSCode Debug
customStart(() =>
console.log(/* For `.vscode/.debug.script.mjs` */ "[startup] Electron App")
),
]
: []),
// Allow use `import.meta.env.VITE_SOME_KEY` in Electron-Main
loadViteEnv(),
],
}),
// Use Node.js API in the Renderer-process
renderer(),
],
server: !!process.env.VSCODE_DEBUG
? (() => {
const url = new URL(pkg.debug.env.VITE_DEV_SERVER_URL);
return {
host: url.hostname,
port: +url.port,
};
})()
: undefined,
clearScreen: false,
};
});