Browse Source

Clean USB bridge

master
Loëck Vézien 7 years ago
parent
commit
335de0966a
No known key found for this signature in database GPG Key ID: CBCDCE384E853AC4
  1. 4
      package.json
  2. 4
      src/main/bridge.js
  3. 3
      src/main/index.js
  4. 12
      src/main/usb.js
  5. 17
      yarn.lock

4
package.json

@ -57,7 +57,7 @@
"babel-preset-react": "^6.24.1", "babel-preset-react": "^6.24.1",
"babel-preset-stage-0": "^6.24.1", "babel-preset-stage-0": "^6.24.1",
"electron-builder": "^19.49.0", "electron-builder": "^19.49.0",
"electron-rebuild": "^1.6.0", "electron-rebuild": "^1.6.1",
"electron-webpack": "1.11.0", "electron-webpack": "1.11.0",
"eslint": "^4.13.1", "eslint": "^4.13.1",
"eslint-config-airbnb": "^16.1.0", "eslint-config-airbnb": "^16.1.0",
@ -69,7 +69,7 @@
"eslint-plugin-react": "^7.5.1", "eslint-plugin-react": "^7.5.1",
"flow-bin": "^0.63.1", "flow-bin": "^0.63.1",
"flow-typed": "^2.2.3", "flow-typed": "^2.2.3",
"prettier": "^1.10.1", "prettier": "^1.10.2",
"react-hot-loader": "^4.0.0-beta.12" "react-hot-loader": "^4.0.0-beta.12"
} }
} }

4
src/main/bridge.js

@ -18,9 +18,9 @@ ipcMain.on('msg', (event: any, payload) => {
}) })
} }
compute.send([type, data]) compute.send({ type, data })
compute.on('message', payload => { compute.on('message', payload => {
const [type, data, options = {}] = payload const { type, data, options = {} } = payload
send(type, data) send(type, data)
if (options.kill) { if (options.kill) {
compute.kill() compute.kill()

3
src/main/index.js

@ -1,8 +1,5 @@
// @flow // @flow
process.title = 'ledger-wallet-desktop'
require('../globals') require('../globals')
require('./bridge') require('./bridge')
require('./app') require('./app')

12
src/main/usb.js

@ -6,7 +6,7 @@ const { isLedgerDevice } = require('ledgerco/lib/utils')
const ledgerco = require('ledgerco') const ledgerco = require('ledgerco')
function send(type, data, options = { kill: true }) { function send(type, data, options = { kill: true }) {
process.send([type, data, options]) process.send({ type, data, options })
} }
async function getWalletInfos(path, wallet) { async function getWalletInfos(path, wallet) {
@ -30,13 +30,13 @@ const handlers = {
isListenDevices = true isListenDevices = true
const handleChangeDevice = (device, event) => const handleChangeDevice = eventName => device =>
isLedgerDevice(device) && send(event, device, { kill: false }) isLedgerDevice(device) && send(eventName, device, { kill: false })
HID.listenDevices.start() HID.listenDevices.start()
HID.listenDevices.events.on('add', handleChangeDevice) HID.listenDevices.events.on('add', handleChangeDevice('device.add'))
HID.listenDevices.events.on('remove', handleChangeDevice) HID.listenDevices.events.on('remove', handleChangeDevice('device.remove'))
}, },
all: () => send('devices.update', HID.devices().filter(isLedgerDevice)), all: () => send('devices.update', HID.devices().filter(isLedgerDevice)),
}, },
@ -55,7 +55,7 @@ const handlers = {
} }
process.on('message', payload => { process.on('message', payload => {
const [type, data] = payload const { type, data } = payload
const handler = objectPath.get(handlers, type) const handler = objectPath.get(handlers, type)
if (!handler) { if (!handler) {

17
yarn.lock

@ -2263,6 +2263,10 @@ detect-indent@^4.0.0:
dependencies: dependencies:
repeating "^2.0.0" repeating "^2.0.0"
detect-libc@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
detect-node@^2.0.3: detect-node@^2.0.3:
version "2.0.3" version "2.0.3"
resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127"
@ -2518,12 +2522,13 @@ electron-publish@19.52.0:
fs-extra-p "^4.5.0" fs-extra-p "^4.5.0"
mime "^2.1.0" mime "^2.1.0"
electron-rebuild@^1.6.0: electron-rebuild@^1.6.1:
version "1.6.0" version "1.6.1"
resolved "https://registry.yarnpkg.com/electron-rebuild/-/electron-rebuild-1.6.0.tgz#e8d26f4d8e9fe5388df35864b3658e5cfd4dcb7e" resolved "https://registry.yarnpkg.com/electron-rebuild/-/electron-rebuild-1.6.1.tgz#3c7ab64db31e5e78ef76fedd7a53aec087b723c5"
dependencies: dependencies:
colors "^1.1.2" colors "^1.1.2"
debug "^2.6.3" debug "^2.6.3"
detect-libc "^1.0.3"
fs-extra "^3.0.1" fs-extra "^3.0.1"
node-abi "^2.0.0" node-abi "^2.0.0"
node-gyp "^3.6.0" node-gyp "^3.6.0"
@ -5487,9 +5492,9 @@ preserve@^0.2.0:
version "0.2.0" version "0.2.0"
resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
prettier@^1.10.1: prettier@^1.10.2:
version "1.10.1" version "1.10.2"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.10.1.tgz#01423fea6957ea23618d37d339ef0e7f7c967fc6" resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.10.2.tgz#1af8356d1842276a99a5b5529c82dd9e9ad3cc93"
pretty-bytes@^1.0.2: pretty-bytes@^1.0.2:
version "1.0.4" version "1.0.4"

Loading…
Cancel
Save