1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- 'use strict';
- const scanForPorts = require('./scanForPorts');
- const flash = require('./flash');
- const {ipcMain} = require('electron');
- function onPortScanComplete(err, ports, event) {
- if (err) {
- event.sender.send('portError', { message: err.message });
- }
- else if (ports.length === 0) {
- event.sender.send('noPortError', { message: 'No serial ports detected.' });
- }
- else {
- event.sender.send('portsFound', ports);
- }
- }
- function setupScanForPorts() {
- ipcMain.on('scanForPorts', event => {
- scanForPorts(
- (err, ports) => {
- onPortScanComplete(err, ports.map(port => port.comName), event);
- }
- );
- });
- }
- function setupFlash() {
- ipcMain.on('flash', (event, port, manifestURL) => {
- flash(port, manifestURL, err => {
- event.sender.send('flashError', {message: err.message});
- },
- (percent, message) => {
- event.sender.send('flashProgress', {percent, message});
- },
- () => {
- event.sender.send('flashComplete');
- });
- });
- }
- function initializeIpcHandlers() {
- setupScanForPorts();
- setupFlash();
- }
- module.exports = initializeIpcHandlers;
|