You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

51 lines
1.5 KiB

// @ts-nocheck
import { exec, spawn, ChildProcess } from "child_process"
import { join } from "path"
import * as electron from "electron"
import { main } from "../../package.json"
import { electronLog } from "../log"
export function devElectron() {
return new Promise((resolve, reject) => {
let electronProcess = spawn(electron as unknown as string, ['--inspect=5858',join(__dirname, `../../${main}`)], {
stdio: "pipe",
// env: Object.assign(process.env, { NODE_ENV: argv.env }),
})
if (electronProcess) {
electronProcess.stderr.on("data", data => {
electronLog(`${data}`, "red")
})
electronProcess.stdout.on("data", data => {
electronLog(`${data}`, "yellow")
})
resolve(electronProcess)
} else {
reject()
}
})
}
export function buildElectron() {
return new Promise((resolve, reject) => {
let tscProcess = spawn("node", [join(__dirname, "../../node_modules/@electron-forge/cli/dist/electron-forge.js"), "package"], {
stdio: "pipe",
// env: Object.assign(process.env, { NODE_ENV: argv.env }),
})
if (tscProcess) {
tscProcess.stdout.on("data", data => {
console.log(`[electron build]: ${data}`)
})
tscProcess.stdout.on("end", data => {
console.log(`[electron build end]`)
resolve(tscProcess)
})
tscProcess.stderr.on("data", data => {
console.error(`[electron build err]: ${data}`)
reject()
})
} else {
reject()
}
})
}