feat: only open development tools in development mode (add new service to determine dev mode)
This commit is contained in:
parent
f28e938a4d
commit
5f3da78721
|
@ -1,18 +1,15 @@
|
||||||
import { app, BrowserWindow } from 'electron';
|
import { app, BrowserWindow } from 'electron';
|
||||||
import BrowserWindowConstructorOptions = Electron.BrowserWindowConstructorOptions;
|
import BrowserWindowConstructorOptions = Electron.BrowserWindowConstructorOptions;
|
||||||
import minimist from 'minimist';
|
|
||||||
import os from 'os';
|
import os from 'os';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import packageJson from '../package.json';
|
import packageJson from '../package.json';
|
||||||
import './main/controllers/api';
|
import './main/controllers/api';
|
||||||
|
import { isDev } from './main/services/dev';
|
||||||
import * as session from './main/services/session';
|
import * as session from './main/services/session';
|
||||||
|
|
||||||
export let mainWindow: Electron.BrowserWindow;
|
export let mainWindow: Electron.BrowserWindow;
|
||||||
|
|
||||||
export let appPath = path.resolve(
|
export let appPath = path.resolve(app.getPath('userData'), `${packageJson.version}${isDev() ? '-dev' : ''}`);
|
||||||
app.getPath('userData'),
|
|
||||||
`${packageJson.version}${minimist(process.argv).dev ? '-dev' : ''}`
|
|
||||||
);
|
|
||||||
|
|
||||||
async function createWindow(): Promise<void> {
|
async function createWindow(): Promise<void> {
|
||||||
session.setHeaders();
|
session.setHeaders();
|
||||||
|
@ -47,7 +44,9 @@ async function createWindow(): Promise<void> {
|
||||||
await mainWindow.loadFile('frontend/index.html');
|
await mainWindow.loadFile('frontend/index.html');
|
||||||
|
|
||||||
// Open the DevTools.
|
// Open the DevTools.
|
||||||
|
if (isDev()) {
|
||||||
mainWindow.webContents.openDevTools();
|
mainWindow.webContents.openDevTools();
|
||||||
|
}
|
||||||
|
|
||||||
// Emitted when the window is closed.
|
// Emitted when the window is closed.
|
||||||
mainWindow.on('closed', () => {
|
mainWindow.on('closed', () => {
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
import minimist from 'minimist';
|
||||||
|
|
||||||
|
export function isDev(): boolean {
|
||||||
|
return !!minimist(process.argv).dev;
|
||||||
|
}
|
|
@ -0,0 +1,23 @@
|
||||||
|
import rewiremock from 'rewiremock';
|
||||||
|
import '../../../mocks/electron';
|
||||||
|
|
||||||
|
import { expect } from 'chai';
|
||||||
|
import 'mocha';
|
||||||
|
import { isDev } from '../../../src/main/services/dev';
|
||||||
|
|
||||||
|
describe('Development Mode Service', () => {
|
||||||
|
before(() => {
|
||||||
|
rewiremock.enable();
|
||||||
|
});
|
||||||
|
|
||||||
|
after(() => {
|
||||||
|
rewiremock.disable();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('correctly identifies the development process argument', async () => {
|
||||||
|
process.argv.push('--dev');
|
||||||
|
expect(isDev()).to.be.true;
|
||||||
|
process.argv = process.argv.filter((value) => value !== '--dev');
|
||||||
|
expect(isDev()).to.be.false;
|
||||||
|
});
|
||||||
|
});
|
Loading…
Reference in New Issue