diff --git a/.gitignore b/.gitignore index fa4e7c02..be68f684 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ # build output dist +app/renderer # dependencies node_modules diff --git a/app/index.html b/app/index.html index a1309b99..04a2a4fa 100644 --- a/app/index.html +++ b/app/index.html @@ -31,7 +31,7 @@
- + diff --git a/app/index.js b/app/index.js index 6b1c2c3f..afdc80a6 100644 --- a/app/index.js +++ b/app/index.js @@ -9,6 +9,19 @@ if (['--help', '-v', '--version'].includes(process.argv[1])) { process.exit(); } +const checkSquirrel = () => { + let squirrel; + + try { + squirrel = require('electron-squirrel-startup'); + } catch (err) {} + + if (squirrel) { + // eslint-disable-next-line unicorn/no-process-exit + process.exit(); + } +}; + // handle startup squirrel events if (process.platform === 'win32') { // eslint-disable-next-line import/order @@ -18,19 +31,16 @@ if (process.platform === 'win32') { case '--squirrel-install': case '--squirrel-updated': systemContextMenu.add(() => { - // eslint-disable-next-line curly, unicorn/no-process-exit - if (require('electron-squirrel-startup')) process.exit(); + checkSquirrel(); }); break; case '--squirrel-uninstall': systemContextMenu.remove(() => { - // eslint-disable-next-line curly, unicorn/no-process-exit - if (require('electron-squirrel-startup')) process.exit(); + checkSquirrel(); }); break; default: - // eslint-disable-next-line curly, unicorn/no-process-exit - if (require('electron-squirrel-startup')) process.exit(); + checkSquirrel(); } } diff --git a/lib/components/header.js b/lib/components/header.js index 2a711bb7..19d2a9e7 100644 --- a/lib/components/header.js +++ b/lib/components/header.js @@ -106,8 +106,8 @@ export default class Header extends Component { const {hambMenu, winCtrls} = this.getWindowHeaderConfig(); const left = winCtrls === 'left'; const maxButtonHref = this.props.maximized ? - './dist/assets/icons.svg#restore-window' : - './dist/assets/icons.svg#maximize-window'; + './renderer/assets/icons.svg#restore-window' : + './renderer/assets/icons.svg#maximize-window'; return (
- + } {title} @@ -137,7 +137,7 @@ export default class Header extends Component { className={css('shape', left && 'minimizeWindowLeft')} onClick={this.handleMinimizeClick} > - + - + } diff --git a/package.json b/package.json index 30c8f50c..0951e039 100644 --- a/package.json +++ b/package.json @@ -12,8 +12,8 @@ "prepush": "npm test", "postinstall": "electron-builder install-app-deps && npm run rebuild-node-pty", "rebuild-node-pty": "electron-rebuild -f -w app/node_modules/node-pty -m app", - "dist": "npm run build && cross-env BABEL_ENV=production babel --out-file app/dist/bundle.js --no-comments --minified app/dist/bundle.js && build", - "clean": "node ./bin/rimraf-standalone.js node_modules && node ./bin/rimraf-standalone.js ./app/node_modules && node ./bin/rimraf-standalone.js ./app/dist" + "dist": "npm run build && cross-env BABEL_ENV=production babel --out-file app/renderer/bundle.js --no-comments --minified app/renderer/bundle.js && build", + "clean": "node ./bin/rimraf-standalone.js node_modules && node ./bin/rimraf-standalone.js ./app/node_modules && node ./bin/rimraf-standalone.js ./app/renderer" }, "xo": { "extends": "xo-react", diff --git a/webpack.config.js b/webpack.config.js index 5edfec2d..b6c10394 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -13,7 +13,7 @@ module.exports = { devtool: isProd ? 'hidden-source-map' : 'cheap-module-source-map', entry: './lib/index.js', output: { - path: path.join(__dirname, 'app', 'dist'), + path: path.join(__dirname, 'app', 'renderer'), filename: 'bundle.js' }, module: {