antares/src/main/ipc-handlers/updates.js

45 lines
1.1 KiB
JavaScript
Raw Normal View History

2020-06-19 18:03:52 +02:00
import { ipcMain } from 'electron';
import { autoUpdater } from 'electron-updater';
let mainWindow;
2020-08-21 15:56:29 +02:00
autoUpdater.allowPrerelease = true;
2020-06-19 18:03:52 +02:00
export default () => {
ipcMain.on('check-for-updates', event => {
2020-06-19 18:03:52 +02:00
mainWindow = event;
autoUpdater.checkForUpdatesAndNotify().catch(() => {
mainWindow.reply('check-failed');
2020-06-19 18:03:52 +02:00
});
});
ipcMain.on('restart-to-update', () => {
2020-06-19 18:03:52 +02:00
autoUpdater.quitAndInstall();
});
// auto-updater events
autoUpdater.on('checking-for-update', () => {
mainWindow.reply('checking-for-update');
2020-06-19 18:03:52 +02:00
});
autoUpdater.on('update-available', () => {
mainWindow.reply('update-available');
2020-06-19 18:03:52 +02:00
});
autoUpdater.on('update-not-available', () => {
mainWindow.reply('update-not-available');
2020-06-19 18:03:52 +02:00
});
autoUpdater.on('download-progress', data => {
mainWindow.reply('download-progress', data);
2020-06-19 18:03:52 +02:00
});
autoUpdater.on('update-downloaded', () => {
mainWindow.reply('update-downloaded');
2020-06-19 18:03:52 +02:00
});
autoUpdater.logger = require('electron-log');
autoUpdater.logger.transports.console.format = '{h}:{i}:{s} {text}';
autoUpdater.logger.transports.file.level = 'info';
};