From b5bacfb22893da42313abc8bbf3851db2b8cc342 Mon Sep 17 00:00:00 2001 From: "Valentin D. Pinkman" Date: Mon, 18 Feb 2019 15:51:31 +0100 Subject: [PATCH] update for nano x --- package.json | 1 + src/analytics/segment.js | 3 ++- src/components/ManagerPage/DeviceInfos.js | 7 ++++--- src/components/ManagerPage/FirmwareUpdate.js | 13 +++++++------ src/renderer/events.js | 11 ++++++++--- src/types/common.js | 5 +---- static/i18n/en/app.json | 4 +--- 7 files changed, 24 insertions(+), 20 deletions(-) diff --git a/package.json b/package.json index d0ff8dda..66670729 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,7 @@ } }, "dependencies": { + "@ledgerhq/devices": "^4.39.0", "@ledgerhq/errors": "^4.39.0", "@ledgerhq/hw-app-btc": "^4.39.0", "@ledgerhq/hw-app-eth": "^4.39.0", diff --git a/src/analytics/segment.js b/src/analytics/segment.js index 0d5f01e7..dacff414 100644 --- a/src/analytics/segment.js +++ b/src/analytics/segment.js @@ -3,6 +3,7 @@ import uuid from 'uuid/v4' import logger from 'logger' import invariant from 'invariant' +import { getDeviceModel } from '@ledgerhq/devices' import { getSystemLocale } from 'helpers/systemLocale' import { langAndRegionSelector, shareAnalyticsSelector } from 'reducers/settings' import { getCurrentDevice } from 'reducers/devices' @@ -34,7 +35,7 @@ const extraProperties = store => { const systemLocale = getSystemLocale() const device = getCurrentDevice(state) const deviceInfo = device && { - productId: device.productId, + productId: getDeviceModel(device.modelId).usbProductId, } return { appVersion: __APP_VERSION__, diff --git a/src/components/ManagerPage/DeviceInfos.js b/src/components/ManagerPage/DeviceInfos.js index df2c87c2..b60e5db0 100644 --- a/src/components/ManagerPage/DeviceInfos.js +++ b/src/components/ManagerPage/DeviceInfos.js @@ -5,7 +5,7 @@ import React, { PureComponent } from 'react' import Text from 'components/base/Text' import Box, { Card } from 'components/base/Box' import Button from 'components/base/Button' - +import { getDeviceModel } from '@ledgerhq/devices' import type { Device, MemoryInfos } from 'types/common' import MemInfos from './MemInfos' @@ -43,10 +43,11 @@ class DeviceInfos extends PureComponent { return {'You dont have any device connected'} } + const deviceInfos = getDeviceModel(device.modelId) + const title = ( - {device.manufacturer} - {` ${device.product}`} + {`${deviceInfos.productName}`} ) return ( diff --git a/src/components/ManagerPage/FirmwareUpdate.js b/src/components/ManagerPage/FirmwareUpdate.js index 9eb9d547..85af33fa 100644 --- a/src/components/ManagerPage/FirmwareUpdate.js +++ b/src/components/ManagerPage/FirmwareUpdate.js @@ -3,10 +3,10 @@ import React, { PureComponent, Fragment } from 'react' import { translate } from 'react-i18next' +import { getDeviceModel } from '@ledgerhq/devices' +import type { DeviceInfo, FirmwareUpdateContext } from '@ledgerhq/live-common/lib/types/manager' import type { Device, T } from 'types/common' - -import type { DeviceInfo, FirmwareUpdateContext } from '@ledgerhq/live-common/lib/types/manager' import type { StepId } from 'components/modals/UpdateFirmware' import getLatestFirmwareForDevice from 'commands/getLatestFirmwareForDevice' @@ -81,18 +81,19 @@ class FirmwareUpdate extends PureComponent { render() { const { deviceInfo, t, device } = this.props const { firmware, modal, stepId, ready } = this.state + + const deviceSpecs = getDeviceModel(device.modelId) + return ( - {device.product === 'Blue' ? : } + {deviceSpecs.id === 'blue' ? : } - {device.product === 'Blue' - ? t('manager.firmware.titleBlue') - : t('manager.firmware.titleNano')} + {deviceSpecs.productName} t('manager.yourDeviceIsGenuine')}> diff --git a/src/renderer/events.js b/src/renderer/events.js index f233913c..0ef0920c 100644 --- a/src/renderer/events.js +++ b/src/renderer/events.js @@ -51,14 +51,19 @@ export default ({ store }: { store: Object }) => { function syncDevices() { syncDeviceSub = listenDevices.send().subscribe( - ({ device, type }) => { + ({ device, deviceModel, type }) => { if (device) { + const stateDevice = { + path: device.path, + modelId: deviceModel ? deviceModel.id : 'nanoS', + type: 'hid', + } if (type === 'add') { d.device('Device - add') - store.dispatch(addDevice(device)) + store.dispatch(addDevice(stateDevice)) } else if (type === 'remove') { d.device('Device - remove') - store.dispatch(removeDevice(device)) + store.dispatch(removeDevice(stateDevice)) } } }, diff --git a/src/types/common.js b/src/types/common.js index 84ccc162..c219b115 100644 --- a/src/types/common.js +++ b/src/types/common.js @@ -1,11 +1,8 @@ // @flow export type Device = { - manufacturer: string, path: string, - product: string, - productId: string, - vendorId: string, + modelId: string, } // -------------------- Settings diff --git a/static/i18n/en/app.json b/static/i18n/en/app.json index 9aed68e6..e3dbe1b8 100644 --- a/static/i18n/en/app.json +++ b/static/i18n/en/app.json @@ -254,8 +254,6 @@ }, "firmware": { "installed": "Firmware version {{version}}", - "titleNano": "Ledger Nano S", - "titleBlue": "Ledger Blue", "update": "Update", "latest": "Firmware version {{version}} is available", "disclaimerTitle": "You are about to install <1><0>firmware version {{version}}.", @@ -933,4 +931,4 @@ "description": "Please contact Ledger Support" } } -} +} \ No newline at end of file