// @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() } }) }