Files
2025-09-29 15:01:01 +08:00

36 lines
975 B
JavaScript

const Path = require('path');
const Chalk = require('chalk');
const FileSystem = require('fs');
const Vite = require('vite');
const compileTs = require('./private/tsc');
const copyAssets = require('./copy-assets');
function buildRenderer() {
return Vite.build({
configFile: Path.join(__dirname, '..', 'vite.config.js'),
base: './',
mode: 'production'
});
}
function buildMain() {
const mainPath = Path.join(__dirname, '..', 'src', 'main');
return compileTs(mainPath);
}
FileSystem.rmSync(Path.join(__dirname, '..', 'build'), {
recursive: true,
force: true,
})
console.log(Chalk.blueBright('Transpiling renderer & main...'));
Promise.allSettled([
buildRenderer(),
buildMain(),
]).then(async () => {
console.log(Chalk.blueBright('Copying necessary assets...'));
await copyAssets();
console.log(Chalk.greenBright('Renderer & main successfully transpiled! (ready to be built with electron-builder)'));
});