1
0
mirror of https://github.com/trezor/trezor-wallet synced 2024-11-27 10:48:22 +00:00

merge master

This commit is contained in:
slowbackspace 2019-02-28 15:29:07 +01:00
commit 74b466be05
32 changed files with 7151 additions and 6957 deletions

View File

@ -1,17 +1,22 @@
## 1.1.0-beta
__added__
- Ripple support enabled
- Ripple support
- responsive sidebar
- QR code scanner in send form
- clear send form button
- backup notification modal
__updated__
- connect v7
- babel v7
- ethereum tokens list
- most of dependencies
__changed__
- update dependencies
- upgrade babel7
- split icons for T1 and TT
- icons for T1 and TT
- device header styles
- input styles
- split sign and verify title
- sign and verify title
__fixed__
- beta disclaimer wrapper position

View File

@ -1,6 +1,6 @@
{
"name": "trezor-wallet",
"version": "1.0.3-beta",
"version": "1.1.0-beta",
"author": "TREZOR <info@trezor.io>",
"description": "",
"bin": {
@ -78,9 +78,9 @@
"styled-components": "^4.1.3",
"styled-normalize": "^8.0.6",
"trezor-bridge-communicator": "1.0.2",
"trezor-connect": "7.0.0-beta.2",
"trezor-connect": "7.0.0-beta.3",
"wallet-address-validator": "^0.2.4",
"web3": "1.0.0-beta.38",
"web3": "1.0.0-beta.35",
"webpack": "^4.29.3",
"webpack-build-notifier": "^0.1.30",
"webpack-bundle-analyzer": "^3.0.3",

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -205,7 +205,7 @@ const discoverAccount = (device: TrezorDevice, discoveryProcess: Discovery): Asy
}
// handle outdated firmware error
if (error.message === UI.FIRMWARE) {
if (error.message === UI.FIRMWARE_OLD) {
dispatch({
type: DISCOVERY.FIRMWARE_OUTDATED,
device,

View File

@ -59,6 +59,17 @@ export const onPassphraseSubmit = (passphrase: string): AsyncAction => async (di
});
};
export const onReceiveConfirmation = (confirmation: any): AsyncAction => async (dispatch: Dispatch): Promise<void> => {
await TrezorConnect.uiResponse({
type: UI.RECEIVE_CONFIRMATION,
payload: confirmation,
});
dispatch({
type: MODAL.CLOSE,
});
};
export const onRememberDevice = (device: TrezorDevice): Action => ({
type: CONNECT.REMEMBER,
device,
@ -173,6 +184,7 @@ export const onQrScan = (parsedUri: parsedURI, networkType: string): ThunkAction
export default {
onPinSubmit,
onPassphraseSubmit,
onReceiveConfirmation,
onRememberDevice,
onForgetDevice,
onForgetSingleDevice,

View File

@ -94,6 +94,10 @@ export const showAddress = (path: Array<number>): AsyncAction => async (dispatch
type: RECEIVE.HIDE_ADDRESS,
});
// special case: device no-backup permissions not granted
// $FlowIssue: remove this after trezor-connect@7.0.0 release
if (response.payload.code === 403) return;
dispatch({
type: NOTIFICATION.ADD,
payload: {

View File

@ -347,6 +347,17 @@ export const gotoFirmwareUpdate = (): ThunkAction => (dispatch: Dispatch, getSta
dispatch(goto(`/device/${devUrl}/firmware-update`));
};
/*
* Go to NoBackup page
*/
export const gotoBackup = (): ThunkAction => (dispatch: Dispatch, getState: GetState): void => {
const { selectedDevice } = getState().wallet;
if (!selectedDevice || !selectedDevice.features) return;
const devUrl: string = `${selectedDevice.features.device_id}${selectedDevice.instance ? `:${selectedDevice.instance}` : ''}`;
dispatch(goto(`/device/${devUrl}/backup`));
};
/*
* Try to redirect to initial url
*/

View File

@ -3,6 +3,7 @@ import TrezorConnect, {
DEVICE, DEVICE_EVENT, UI_EVENT, TRANSPORT_EVENT, BLOCKCHAIN_EVENT,
} from 'trezor-connect';
import { CONTEXT_NONE } from 'actions/constants/modal';
import urlConstants from 'constants/urls';
import * as CONNECT from 'actions/constants/TrezorConnect';
import * as NOTIFICATION from 'actions/constants/notification';
import { getDuplicateInstanceNumber } from 'reducers/utils';
@ -120,7 +121,7 @@ export const init = (): AsyncAction => async (dispatch: Dispatch, getState: GetS
if (buildUtils.isDev()) {
window.__TREZOR_CONNECT_SRC = typeof LOCAL === 'string' ? LOCAL : 'https://sisyfos.trezor.io/connect/'; // eslint-disable-line no-underscore-dangle
// window.__TREZOR_CONNECT_SRC = typeof LOCAL === 'string' ? LOCAL : 'https://connect.trezor.io/5/'; // eslint-disable-line no-underscore-dangle
// window.__TREZOR_CONNECT_SRC = typeof LOCAL === 'string' ? LOCAL : 'https://localhost:8088/'; // eslint-disable-line no-underscore-dangle
window.TrezorConnect = TrezorConnect;
}
@ -131,6 +132,10 @@ export const init = (): AsyncAction => async (dispatch: Dispatch, getState: GetS
popup: false,
webusb: true,
pendingTransportEvent: (getState().devices.length < 1),
manifest: {
email: 'info@trezor.io',
appUrl: urlConstants.NEXT_WALLET,
},
});
} catch (error) {
dispatch({

View File

@ -7,3 +7,4 @@ export const CONTEXT_DEVICE: 'modal_ctx_device' = 'modal_ctx_device';
export const CONTEXT_EXTERNAL_WALLET: 'modal_ctx_external-wallet' = 'modal_ctx_external-wallet';
export const OPEN_SCAN_QR: 'modal__open_scan_qr' = 'modal__open_scan_qr';
export const CONTEXT_SCAN_QR: 'modal__ctx_scan_qr' = 'modal__ctx_scan_qr';
export const CONTEXT_CONFIRMATION: 'modal__ctx_confirmation' = 'modal__ctx_confirmation';

View File

@ -28,7 +28,7 @@ const Backdrop = ({
);
Backdrop.propTypes = {
show: PropTypes.bool.isRequired,
show: PropTypes.bool,
className: PropTypes.string,
animated: PropTypes.bool,
onClick: PropTypes.func,

View File

@ -63,7 +63,7 @@ const Footer = ({ opened, toggle, isLanding }: Props) => (
<Left>
<Copy>&copy; {getYear(new Date())}</Copy>
<StyledLink href="http://satoshilabs.com" isGreen>SatoshiLabs</StyledLink>
<StyledLink href="./assets/tos.pdf" isGreen>
<StyledLink href="https://trezor.io/static/pdf/tos.pdf" isGreen>
<FormattedMessage {...l10nMessages.TR_TERMS} />
</StyledLink>
<StyledLink onClick={toggle} isGreen>{ opened ? 'Hide Log' : 'Show Log' }</StyledLink>

View File

@ -0,0 +1,85 @@
/* @flow */
import React from 'react';
import PropTypes from 'prop-types';
import styled from 'styled-components';
import icons from 'config/icons';
import { getOldWalletUrl } from 'utils/url';
import colors from 'config/colors';
import { H2 } from 'components/Heading';
import P from 'components/Paragraph';
import Icon from 'components/Icon';
import Button from 'components/Button';
import Link from 'components/Link';
import type { TrezorDevice } from 'flowtype';
import type { Props as BaseProps } from '../../Container';
type Props = {
onReceiveConfirmation: $ElementType<$ElementType<BaseProps, 'modalActions'>, 'onReceiveConfirmation'>;
device: ?TrezorDevice;
}
const Wrapper = styled.div`
max-width: 370px;
padding: 30px 48px;
`;
const StyledLink = styled(Link)`
position: absolute;
right: 15px;
top: 15px;
`;
const BackupButton = styled(Button)`
width: 100%;
margin-bottom: 10px;
`;
const ProceedButton = styled(Button)`
background: transparent;
border-color: ${colors.WARNING_PRIMARY};
color: ${colors.WARNING_PRIMARY};
&:focus,
&:hover,
&:active {
color: ${colors.WHITE};
background: ${colors.WARNING_PRIMARY};
box-shadow: none;
}
`;
const StyledP = styled(P)`
padding-bottom: 20px;
`;
const Row = styled.div`
display: flex;
flex-direction: column;
`;
const Confirmation = (props: Props) => (
<Wrapper>
<StyledLink onClick={() => props.onReceiveConfirmation(false)}>
<Icon size={24} color={colors.TEXT_SECONDARY} icon={icons.CLOSE} />
</StyledLink>
<H2>Your Trezor is not backed up</H2>
<Icon size={48} color={colors.WARNING_PRIMARY} icon={icons.WARNING} />
<StyledP isSmaller>If your device is ever lost or damaged, your funds will be lost. Backup your device first, to protect your coins against such events.</StyledP>
<Row>
<Link href={`${getOldWalletUrl(props.device)}/?backup`}>
<BackupButton onClick={() => props.onReceiveConfirmation(false)}>Create a backup in 3 minutes</BackupButton>
</Link>
<ProceedButton isWhite onClick={() => props.onReceiveConfirmation(true)}>Show address, I will take the risk</ProceedButton>
</Row>
</Wrapper>
);
Confirmation.propTypes = {
onReceiveConfirmation: PropTypes.func.isRequired,
};
export default Confirmation;

View File

@ -2,7 +2,7 @@
import React, { PureComponent } from 'react';
import PropTypes from 'prop-types';
import styled from 'styled-components';
import { getOldWalletUrl } from 'utils/url';
import icons from 'config/icons';
import colors from 'config/colors';
@ -34,11 +34,23 @@ const StyledLink = styled(Link)`
const Wrapper = styled.div`
max-width: 370px;
padding: 30px 48px;
padding: 30px 0px;
`;
const Content = styled.div`
padding: 0px 48px;
`;
const StyledP = styled(P)`
padding: 20px 0px;
padding-bottom: 20px;
`;
const Divider = styled.div`
width: 100%;
height: 1px;
background: ${colors.DIVIDER};
margin: 20px 0px;
`;
const Row = styled.div`
@ -50,6 +62,24 @@ const Row = styled.div`
}
`;
const BackupButton = styled(Button)`
width: 100%;
`;
const WarnButton = styled(Button)`
background: transparent;
border-color: ${colors.WARNING_PRIMARY};
color: ${colors.WARNING_PRIMARY};
&:focus,
&:hover,
&:active {
color: ${colors.WHITE};
background: ${colors.WARNING_PRIMARY};
box-shadow: none;
}
`;
class ConfirmUnverifiedAddress extends PureComponent<Props> {
componentDidMount(): void {
this.keyboardHandler = this.keyboardHandler.bind(this);
@ -100,22 +130,44 @@ class ConfirmUnverifiedAddress extends PureComponent<Props> {
: <FormattedMessage {...l10nMessages.TR_PLEASE_DISABLE_PASSPHRASE} />;
}
const needsBackup = device.features && device.features.needs_backup;
return (
<Wrapper>
<StyledLink onClick={onCancel}>
<Icon size={24} color={colors.TEXT_SECONDARY} icon={icons.CLOSE} />
</StyledLink>
<H2>{ deviceStatus }</H2>
<StyledP isSmaller>
<FormattedMessage
{...l10nMessages.TR_TO_PREVENT_PHISHING_ATTACKS_COMMA}
values={{ claim }}
/>
</StyledP>
<Row>
<Button onClick={() => (!account ? this.verifyAddress() : 'false')}><FormattedMessage {...l10nMessages.TR_TRY_AGAIN} /></Button>
<Button isWhite onClick={() => this.showUnverifiedAddress()}><FormattedMessage {...l10nMessages.TR_SHOW_UNVERIFIED_ADDRESS} /></Button>
</Row>
<Content>
<StyledLink onClick={onCancel}>
<Icon size={24} color={colors.TEXT_SECONDARY} icon={icons.CLOSE} />
</StyledLink>
<H2>{ deviceStatus }</H2>
<StyledP isSmaller>
<FormattedMessage
{...l10nMessages.TR_TO_PREVENT_PHISHING_ATTACKS_COMMA}
values={{ claim }}
/>
</StyledP>
</Content>
<Content>
<Row>
<Button onClick={() => (!account ? this.verifyAddress() : 'false')}><FormattedMessage {...l10nMessages.TR_TRY_AGAIN} /></Button>
<WarnButton isWhite onClick={() => this.showUnverifiedAddress()}><FormattedMessage {...l10nMessages.TR_SHOW_UNVERIFIED_ADDRESS} /></WarnButton>
</Row>
</Content>
{needsBackup && <Divider />}
{needsBackup && (
<>
<Content>
<H2>Device {device.label} is not backed up</H2>
<StyledP isSmaller>If your device is ever lost or damaged, your funds will be lost. Backup your device first, to protect your coins against such events.</StyledP>
</Content>
<Content>
<Row>
<Link href={`${getOldWalletUrl(device)}/?backup`}>
<BackupButton>Create a backup in 3 minutes</BackupButton>
</Link>
</Row>
</Content>
</>
)}
</Wrapper>
);
}

View File

@ -19,6 +19,7 @@ import PassphraseType from 'components/modals/passphrase/Type';
import ConfirmSignTx from 'components/modals/confirm/SignTx';
import ConfirmAction from 'components/modals/confirm/Action';
import ConfirmUnverifiedAddress from 'components/modals/confirm/UnverifiedAddress';
import ConfirmNoBackup from 'components/modals/confirm/NoBackup';
import ForgetDevice from 'components/modals/device/Forget';
import RememberDevice from 'components/modals/device/Remember';
import DuplicateDevice from 'components/modals/device/Duplicate';
@ -189,6 +190,19 @@ const getQrModal = (props: Props) => {
);
};
const getConfirmationModal = (props: Props) => {
const { modal, modalActions, wallet } = props;
if (modal.context !== MODAL.CONTEXT_CONFIRMATION) return null;
switch (modal.windowType) {
case 'no-backup':
return (<ConfirmNoBackup device={wallet.selectedDevice} onReceiveConfirmation={modalActions.onReceiveConfirmation} />);
default:
return null;
}
};
// modal container component
const Modal = (props: Props) => {
const { modal } = props;
@ -205,6 +219,9 @@ const Modal = (props: Props) => {
case MODAL.CONTEXT_SCAN_QR:
component = getQrModal(props);
break;
case MODAL.CONTEXT_CONFIRMATION:
component = getConfirmationModal(props);
break;
default:
break;
}

View File

@ -0,0 +1,25 @@
/* @flow */
import * as React from 'react';
import Notification from 'components/Notification';
import type { Props } from '../../index';
export default (props: Props) => {
const { selectedDevice } = props.wallet;
const needsBackup = selectedDevice && selectedDevice.features && selectedDevice.features.needs_backup;
if (!needsBackup) return null;
return (
<Notification
key="no-backup"
type="warning"
title="Your Trezor is not backed up!"
message="If your device is ever lost or damaged, your funds will be lost. Backup your device first, to protect your coins against such events."
actions={
[{
label: 'Create a backup',
callback: props.routerActions.gotoBackup,
}]
}
/>
);
};

View File

@ -13,6 +13,7 @@ import * as RouterActions from 'actions/RouterActions';
import OnlineStatus from './components/OnlineStatus';
import UpdateBridge from './components/UpdateBridge';
import UpdateFirmware from './components/UpdateFirmware';
import NoBackup from './components/NoBackup';
export type StateProps = {
connect: $ElementType<State, 'connect'>;
@ -36,6 +37,7 @@ const Notifications = (props: Props) => (
<OnlineStatus {...props} />
<UpdateBridge {...props} />
<UpdateFirmware {...props} />
<NoBackup {...props} />
</React.Fragment>
);

View File

@ -47,6 +47,21 @@ export default (props: Props) => {
)}
/>,
);
} else if (location.state.send) {
notifications.push(
<Notification
key="xrp-warning"
type="warning"
title="Do not send to accounts requiring a destination tag!"
message={(
<>
Destination tag is an arbitrary number which serves as a unique identifier of your transaction. Some services may require this to process your transaction. The current firmware version <strong>does not support</strong> destination tags yet.
<br /><br />
If the receiver requires a destination tag, do not use Trezor to send XRP. We are working on adding this feature.
</>
)}
/>,
);
}
}

5
src/constants/urls.js Normal file
View File

@ -0,0 +1,5 @@
export default {
NEXT_WALLET: 'https://beta-wallet.trezor.io/next',
OLD_WALLET: 'https://wallet.trezor.io',
OLD_WALLET_BETA: 'https://beta-wallet.trezor.io',
};

View File

@ -38,6 +38,7 @@ import type {
Device,
Features,
DeviceStatus,
FirmwareRelease,
DeviceFirmwareStatus,
DeviceMode,
DeviceMessageType,
@ -55,6 +56,7 @@ export type AcquiredDevice = $Exact<{
+label: string,
+features: Features,
+firmware: DeviceFirmwareStatus,
+firmwareRelease: ?FirmwareRelease,
status: DeviceStatus,
+mode: DeviceMode,
state: ?string,

View File

@ -20,7 +20,10 @@ export type State = {
windowType?: string;
} | {
context: typeof MODAL.CONTEXT_SCAN_QR,
}
} | {
context: typeof MODAL.CONTEXT_CONFIRMATION,
windowType: string;
};
const initialState: State = {
context: MODAL.CONTEXT_NONE,
@ -98,6 +101,12 @@ export default function modal(state: State = initialState, action: Action): Stat
context: MODAL.CONTEXT_SCAN_QR,
};
case UI.REQUEST_CONFIRMATION:
return {
context: MODAL.CONTEXT_CONFIRMATION,
windowType: action.payload.view,
};
default:
return state;
}

View File

@ -62,6 +62,11 @@ export const routes: Array<Route> = [
pattern: '/device/:device/firmware-update',
fields: ['device', 'firmware-update'],
},
{
name: 'wallet-backup',
pattern: '/device/:device/backup',
fields: ['device', 'backup'],
},
{
name: 'wallet-device-settings',
pattern: '/device/:device/settings',

24
src/utils/url.js Normal file
View File

@ -0,0 +1,24 @@
/* @flow */
import urlConstants from 'constants/urls';
import type { TrezorDevice } from 'flowtype';
const getOldWalletUrl = (device: ?TrezorDevice): string => {
if (!device || !device.firmwareRelease) return urlConstants.OLD_WALLET_BETA;
const release = device.firmwareRelease;
const url = release.channel === 'beta' ? urlConstants.OLD_WALLET_BETA : urlConstants.OLD_WALLET;
return url;
};
// TODO: use uri template to build urls
const getOldWalletReleaseUrl = (device: ?TrezorDevice): string => {
if (!device || !device.firmwareRelease) return urlConstants.OLD_WALLET_BETA;
const release = device.firmwareRelease;
const url = getOldWalletUrl(device);
const version = release.version.join('.');
return `${url}?fw=${version}`;
};
export {
getOldWalletUrl,
getOldWalletReleaseUrl,
};

View File

@ -82,16 +82,16 @@ const getFeeInputState = (feeErrors: string, feeWarnings: string): string => {
return state;
};
const getDestinationTagInputState = (errors: string, warnings: string): string => {
let state = '';
if (warnings && !errors) {
state = 'warning';
}
if (errors) {
state = 'error';
}
return state;
};
// const getDestinationTagInputState = (errors: string, warnings: string): string => {
// let state = '';
// if (warnings && !errors) {
// state = 'warning';
// }
// if (errors) {
// state = 'error';
// }
// return state;
// };
const Left = styled.div`
display: flex;
@ -109,11 +109,11 @@ const AdvancedForm = (props: Props) => {
warnings,
infos,
fee,
destinationTag,
// destinationTag,
} = props.sendForm;
const {
onFeeChange,
onDestinationTagChange,
// onDestinationTagChange,
} = props.sendFormActions;
return (
@ -150,7 +150,7 @@ const AdvancedForm = (props: Props) => {
/>
</InputRow>
<InputRow>
{/* <InputRow>
<StyledInput
state={getDestinationTagInputState(errors.destinationTag, warnings.destinationTag)}
autoComplete="off"
@ -180,7 +180,7 @@ const AdvancedForm = (props: Props) => {
value={destinationTag}
onChange={event => onDestinationTagChange(event.target.value)}
/>
</InputRow>
</InputRow> */}
<AdvancedSettingsSendButtonWrapper>
{ props.children }

View File

@ -6,6 +6,7 @@ import styled from 'styled-components';
import Icon from 'components/Icon';
import colors from 'config/colors';
import ICONS from 'config/icons';
import Tooltip from 'components/Tooltip';
import { FONT_SIZE, FONT_WEIGHT } from 'config/variables';
import type { Network, State as ReducersState } from 'flowtype';
import l10nMessages from './index.messages';
@ -58,6 +59,7 @@ const FiatValue = styled.div`
margin: 7px 0;
min-height: 25px;
color: ${colors.TEXT_PRIMARY};
align-items: center;
`;
const FiatValueRate = styled.div`
@ -88,6 +90,15 @@ const Label = styled.div`
color: ${colors.TEXT_SECONDARY};
`;
const StyledIcon = styled(Icon)`
cursor: pointer;
margin-top: -5px;
`;
const TooltipWrapper = styled.div`
display: flex;
align-items: center;
`;
class AccountBalance extends PureComponent<Props, State> {
constructor(props: Props) {
@ -117,6 +128,20 @@ class AccountBalance extends PureComponent<Props, State> {
fiat = accountBalance.times(fiatRateValue).toFixed(2);
}
const NoRatesTooltip = (
<Tooltip
maxWidth={285}
placement="top"
content="Fiat rates are not currently available."
>
<StyledIcon
icon={ICONS.HELP}
color={colors.TEXT_SECONDARY}
size={26}
/>
</Tooltip>
);
return (
<Wrapper isHidden={this.state.isHidden}>
<HideBalanceIconWrapper
@ -134,18 +159,20 @@ class AccountBalance extends PureComponent<Props, State> {
<React.Fragment>
<BalanceWrapper>
<Label><FormattedMessage {...l10nMessages.TR_BALANCE} /></Label>
{fiatRate && (
<FiatValue>${fiat}</FiatValue>
)}
<TooltipWrapper>
<FiatValue>{fiatRate ? `$ ${fiat}` : 'N/A'}</FiatValue>
{!fiatRate && NoRatesTooltip}
</TooltipWrapper>
<CoinBalance>{this.props.balance} {network.symbol}</CoinBalance>
</BalanceWrapper>
{fiatRate && (
<BalanceRateWrapper>
<Label><FormattedMessage {...l10nMessages.TR_RATE} /></Label>
<FiatValueRate>${fiatRateValue}</FiatValueRate>
<CoinBalance>1.00 {network.symbol}</CoinBalance>
</BalanceRateWrapper>
)}
<BalanceRateWrapper>
<Label><FormattedMessage {...l10nMessages.TR_RATE} /></Label>
<TooltipWrapper>
<FiatValueRate>{fiatRate ? `$ ${fiatRateValue}` : 'N/A'}</FiatValueRate>
{!fiatRate && NoRatesTooltip}
</TooltipWrapper>
<CoinBalance>1 {network.symbol}</CoinBalance>
</BalanceRateWrapper>
</React.Fragment>
)}
</Wrapper>

View File

@ -6,7 +6,7 @@ import Icon from 'components/Icon';
import colors from 'config/colors';
import ICONS from 'config/icons';
import { FONT_SIZE, FONT_WEIGHT } from 'config/variables';
import Tooltip from 'components/Tooltip';
import type { Network, State as ReducersState } from 'flowtype';
type Props = {
@ -57,6 +57,7 @@ const FiatValue = styled.div`
margin: 7px 0;
min-height: 25px;
color: ${colors.TEXT_PRIMARY};
align-items: center;
`;
const FiatValueRate = styled.div`
@ -65,8 +66,8 @@ const FiatValueRate = styled.div`
min-height: 25px;
margin: 7px 0;
display: flex;
align-items: center;
color: ${colors.TEXT_PRIMARY};
align-items: center;
`;
const BalanceWrapper = styled.div`
@ -87,6 +88,15 @@ const Label = styled.div`
color: ${colors.TEXT_SECONDARY};
`;
const StyledIcon = styled(Icon)`
cursor: pointer;
margin-top: -5px;
`;
const TooltipWrapper = styled.div`
display: flex;
align-items: center;
`;
class AccountBalance extends PureComponent<Props, State> {
constructor(props: Props) {
@ -116,6 +126,20 @@ class AccountBalance extends PureComponent<Props, State> {
fiat = accountBalance.times(fiatRateValue).toFixed(2);
}
const NoRatesTooltip = (
<Tooltip
maxWidth={285}
placement="top"
content="Fiat rates are not currently available."
>
<StyledIcon
icon={ICONS.HELP}
color={colors.TEXT_SECONDARY}
size={26}
/>
</Tooltip>
);
return (
<Wrapper isHidden={this.state.isHidden}>
<HideBalanceIconWrapper
@ -133,24 +157,28 @@ class AccountBalance extends PureComponent<Props, State> {
<React.Fragment>
<BalanceWrapper>
<Label>Balance</Label>
{fiatRate && (
<FiatValue>${fiat}</FiatValue>
)}
<TooltipWrapper>
<FiatValue>{fiatRate ? `$ ${fiat}` : 'N/A'}</FiatValue>
{!fiatRate && NoRatesTooltip}
</TooltipWrapper>
<CoinBalance>{this.props.balance} {network.symbol}</CoinBalance>
</BalanceWrapper>
{this.props.reserve !== '0' && (
<BalanceWrapper>
<Label>Reserve</Label>
<CoinBalance>{this.props.reserve} {network.symbol}</CoinBalance>
<FiatValueRate>{this.props.reserve} {network.symbol}</FiatValueRate>
</BalanceWrapper>
)}
{fiatRate && (
<BalanceRateWrapper>
<Label>Rate</Label>
<FiatValueRate>${fiatRateValue}</FiatValueRate>
<CoinBalance>1.00 {network.symbol}</CoinBalance>
</BalanceRateWrapper>
)}
<BalanceRateWrapper>
<Label>Rate</Label>
<TooltipWrapper>
<FiatValueRate>{fiatRate ? `$ ${fiatRateValue}` : 'N/A'}</FiatValueRate>
{!fiatRate && NoRatesTooltip}
</TooltipWrapper>
<CoinBalance>1 {network.symbol}</CoinBalance>
</BalanceRateWrapper>
</React.Fragment>
)}
</Wrapper>

View File

@ -1,3 +1,4 @@
/* @flow */
import React from 'react';
import styled from 'styled-components';
import { H1 } from 'components/Heading';
@ -7,9 +8,16 @@ import Button from 'components/Button';
import P from 'components/Paragraph';
import Link from 'components/Link';
import ICONS from 'config/icons';
import { getOldWalletUrl } from 'utils/url';
import Content from 'views/Wallet/components/Content';
import { connect } from 'react-redux';
import type { TrezorDevice } from 'flowtype';
type Props = {
device: ?TrezorDevice;
}
const Section = styled.section`
display: flex;
flex-direction: column;
@ -32,7 +40,7 @@ const StyledH1 = styled(H1)`
text-align: center;
`;
const DeviceSettings = () => (
const DeviceSettings = (props: Props) => (
<Content>
<Section>
<Row>
@ -43,7 +51,7 @@ const DeviceSettings = () => (
/>
<StyledH1>Device settings is under construction</StyledH1>
<StyledP>Please use Bitcoin wallet interface to change your device settings</StyledP>
<Link href="https://beta-wallet.trezor.io/">
<Link href={getOldWalletUrl(props.device)}>
<Button>Take me to the Bitcoin wallet</Button>
</Link>
</Row>

View File

@ -4,6 +4,7 @@ import React from 'react';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
import { FormattedMessage } from 'react-intl';
import { getOldWalletReleaseUrl } from 'utils/url';
import styled from 'styled-components';
import { H1 } from 'components/Heading';
@ -136,7 +137,7 @@ const FirmwareUpdate = (props: Props) => (
<StyledP>
<FormattedMessage {...l10nMessages.TR_PLEASE_USE_OLD_WALLET} />
</StyledP>
<Link href="https://beta-wallet.trezor.io">
<Link href={getOldWalletReleaseUrl(props.device)}>
<Button>
<FormattedMessage {...l10nCommonMessages.TR_TAKE_ME_TO_BITCOIN_WALLET} />
</Button>

View File

@ -1,14 +1,22 @@
/* @flow */
import styled from 'styled-components';
import { H1 } from 'components/Heading';
import Button from 'components/Button';
import { getOldWalletUrl } from 'utils/url';
import Paragraph from 'components/Paragraph';
import React from 'react';
import { connect } from 'react-redux';
import { FormattedMessage } from 'react-intl';
import l10nCommonMessages from 'views/common.messages';
import type { TrezorDevice } from 'flowtype';
import l10nMessages from './index.messages';
type Props = {
device: ?TrezorDevice;
}
const Wrapper = styled.div`
display: flex;
flex-direction: column;
@ -29,12 +37,12 @@ const StyledParagraph = styled(Paragraph)`
text-align: center;
`;
const Initialize = () => (
const Initialize = (props: Props) => (
<Wrapper data-test="Page__device__not__initialized">
<Row>
<H1><FormattedMessage {...l10nMessages.TR_YOUR_DEVICE_IS_NOT_INITIALIZED} /></H1>
<StyledParagraph><FormattedMessage {...l10nMessages.TR_PLEASE_USE_TO_START_INITIALIZATION} /></StyledParagraph>
<A href="https://beta-wallet.trezor.io/">
<A href={getOldWalletUrl(props.device)}>
<Button><FormattedMessage {...l10nCommonMessages.TR_TAKE_ME_TO_BITCOIN_WALLET} /></Button>
</A>
</Row>

View File

@ -0,0 +1,67 @@
/* @flow */
import React from 'react';
import styled from 'styled-components';
import { H1 } from 'components/Heading';
import P from 'components/Paragraph';
import Link from 'components/Link';
import { getOldWalletUrl } from 'utils/url';
import Button from 'components/Button';
import Icon from 'components/Icon';
import { FONT_SIZE } from 'config/variables';
import colors from 'config/colors';
import icons from 'config/icons';
import type { TrezorDevice } from 'flowtype';
type Props = {
device: ?TrezorDevice;
}
const Wrapper = styled.section`
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
padding: 90px 35px 40px 35px;
`;
const StyledNavLink = styled(Link)`
color: ${colors.TEXT_SECONDARY};
padding-top: 20px;
font-size: ${FONT_SIZE.BASE};
`;
const StyledH1 = styled(H1)`
text-align: center;
`;
const StyledP = styled(P)`
max-width: 550px;
padding-bottom: 15px;
`;
const Message = styled.div`
text-align: center;
padding: 0 0 15px 0;
`;
const FirmwareUpdate = (props: Props) => (
<Wrapper>
<Icon
size={128}
color={colors.WARNING_PRIMARY}
icon={icons.WARNING}
/>
<StyledH1>Your Trezor is not backed up!</StyledH1>
<Message>
<StyledP>If your device is ever lost or damaged, your funds will be lost. Backup your device first, to protect your coins against such events.</StyledP>
<P>Please use Bitcoin wallet interface to create a backup.</P>
</Message>
<Link href={`${getOldWalletUrl(props.device)}?backup=1`}>
<Button>Take me to the Bitcoin wallet</Button>
</Link>
<StyledNavLink to="/">Ill do that later.</StyledNavLink>
</Wrapper>
);
export default FirmwareUpdate;

View File

@ -28,6 +28,7 @@ import WalletDeviceSettings from 'views/Wallet/views/DeviceSettings';
import WalletSettings from 'views/Wallet/views/WalletSettings';
import WalletBootloader from 'views/Wallet/views/Bootloader';
import WalletFirmwareUpdate from 'views/Wallet/views/FirmwareUpdate';
import WalletNoBackup from 'views/Wallet/views/NoBackup';
import WalletInitialize from 'views/Wallet/views/Initialize';
import WalletSeedless from 'views/Wallet/views/Seedless';
import WalletAcquire from 'views/Wallet/views/Acquire';
@ -56,6 +57,7 @@ const App = () => (
<Route exact path={getPattern('wallet-initialize')} component={WalletInitialize} />
<Route exact path={getPattern('wallet-seedless')} component={WalletSeedless} />
<Route exact path={getPattern('wallet-firmware-update')} component={WalletFirmwareUpdate} />
<Route exact path={getPattern('wallet-backup')} component={WalletNoBackup} />
<Route exact path={getPattern('wallet-device-settings')} component={WalletDeviceSettings} />
<Route exact path={getPattern('wallet-account-summary')} component={AccountSummary} />
<Route path={getPattern('wallet-account-send')} component={AccountSend} />

664
yarn.lock
View File

@ -745,6 +745,13 @@
dependencies:
regenerator-runtime "^0.12.0"
"@babel/runtime@^7.3.1":
version "7.3.4"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.3.4.tgz#73d12ba819e365fcf7fd152aed56d6df97d21c83"
integrity sha512-IvfvnMdSaLBateu0jfsYIpZTxAc2cKEXEMiezGGN75QcBcecDUKd3PgLAncT0oOgxKy8dd8hrJKj9MfzgfZd6g==
dependencies:
regenerator-runtime "^0.12.0"
"@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.1.2", "@babel/template@^7.2.2":
version "7.2.2"
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz#005b3fdf0ed96e88041330379e0da9a708eb2907"
@ -984,7 +991,7 @@
resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-2.2.44.tgz#1d4a798e53f35212fd5ad4d04050620171cd5b5e"
integrity sha512-k2tWTQU8G4+iSMvqKi0Q9IIsWAp/n8xzdZS4Q4YVIltApoMA00wFBFdlJnmoaK1/z7B0Cy0yPe6GgXteSmdUNw==
"@types/node@*", "@types/node@^10.1.0", "@types/node@^10.3.2":
"@types/node@*", "@types/node@^10.1.0":
version "10.12.21"
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.21.tgz#7e8a0c34cf29f4e17a36e9bd0ea72d45ba03908e"
integrity sha512-CBgLNk4o3XMnqMc0rhb6lc77IwShMEglz05deDcn2lQxyXEZivfwgYJu7SMha9V5XcrP6qZuevTHV/QrN2vjKQ==
@ -1249,11 +1256,6 @@ add-dom-event-listener@1.x:
dependencies:
object-assign "4.x"
aes-js@3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d"
integrity sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0=
ajv-errors@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d"
@ -1343,6 +1345,11 @@ ansi-styles@^3.2.1:
dependencies:
color-convert "^1.9.0"
any-promise@1.3.0, any-promise@^1.0.0, any-promise@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
integrity sha1-q8av7tzqUugJzcA3au0845Y10X8=
anymatch@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb"
@ -2191,11 +2198,23 @@ bl@^1.0.0:
readable-stream "^2.3.5"
safe-buffer "^5.1.1"
block-stream@*:
version "0.0.9"
resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a"
integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=
dependencies:
inherits "~2.0.0"
bluebird@3.5.0:
version "3.5.0"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c"
integrity sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=
bluebird@^2.9.34:
version "2.11.0"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.11.0.tgz#534b9033c022c9579c56ba3b3e5a5caafbb650e1"
integrity sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=
bluebird@^3.5.0, bluebird@^3.5.1:
version "3.5.1"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"
@ -2209,7 +2228,7 @@ bn.js@4.11.6:
version "4.11.6"
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215"
bn.js@4.11.8, bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.0, bn.js@^4.11.3, bn.js@^4.11.6, bn.js@^4.4.0, bn.js@^4.8.0:
bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.0, bn.js@^4.11.3, bn.js@^4.11.6, bn.js@^4.4.0, bn.js@^4.8.0:
version "4.11.8"
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f"
@ -3774,16 +3793,6 @@ elegant-spinner@^1.0.1:
resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e"
integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=
elliptic@6.3.3:
version "6.3.3"
resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.3.3.tgz#5482d9646d54bcb89fd7d994fc9e2e9568876e3f"
integrity sha1-VILZZG1UvLif19mU/J4ulWiHbj8=
dependencies:
bn.js "^4.4.0"
brorand "^1.0.1"
hash.js "^1.0.0"
inherits "^2.0.1"
elliptic@^6.0.0, elliptic@^6.2.3:
version "6.4.0"
resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df"
@ -4169,24 +4178,7 @@ etag@~1.8.1:
version "1.8.1"
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
eth-ens-namehash@2.0.8:
version "2.0.8"
resolved "https://registry.yarnpkg.com/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz#229ac46eca86d52e0c991e7cb2aef83ff0f68bcf"
integrity sha1-IprEbsqG1S4MmR58sq74P/D2i88=
dependencies:
idna-uts46-hx "^2.3.1"
js-sha3 "^0.5.7"
eth-lib@0.2.8:
version "0.2.8"
resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.8.tgz#b194058bef4b220ad12ea497431d6cb6aa0623c8"
integrity sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==
dependencies:
bn.js "^4.11.6"
elliptic "^6.4.0"
xhr-request-promise "^0.1.2"
eth-lib@^0.1.26:
eth-lib@0.1.27, eth-lib@^0.1.26:
version "0.1.27"
resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.1.27.tgz#f0b0fd144f865d2d6bf8257a40004f2e75ca1dd6"
dependencies:
@ -4198,6 +4190,15 @@ eth-lib@^0.1.26:
ws "^3.0.0"
xhr-request-promise "^0.1.2"
eth-lib@0.2.7:
version "0.2.7"
resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.7.tgz#2f93f17b1e23aec3759cd4a3fe20c1286a3fc1ca"
integrity sha1-L5Pxex4jrsN1nNSj/iDBKGo/wco=
dependencies:
bn.js "^4.11.6"
elliptic "^6.4.0"
xhr-request-promise "^0.1.2"
ethereum-common@^0.0.18:
version "0.0.18"
resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.18.tgz#2fdc3576f232903358976eb39da783213ff9523f"
@ -4242,23 +4243,7 @@ ethereumjs-util@^6.0.0:
safe-buffer "^5.1.1"
secp256k1 "^3.0.1"
ethers@^4.0.0:
version "4.0.23"
resolved "https://registry.yarnpkg.com/ethers/-/ethers-4.0.23.tgz#930c7b1585241f61b29c262ffd8f21e82721ba30"
integrity sha512-9IwYV3LuESPF2cgwF42SL2vqrwWEsA2+15WVtO2dZb1F/twARaCWb7PrgoODldj+bmwKmUv3rG9PFfBkbumPwA==
dependencies:
"@types/node" "^10.3.2"
aes-js "3.0.0"
bn.js "^4.4.0"
elliptic "6.3.3"
hash.js "1.1.3"
js-sha3 "0.5.7"
scrypt-js "2.0.4"
setimmediate "1.0.4"
uuid "2.0.1"
xmlhttprequest "1.8.0"
ethjs-unit@^0.1.6:
ethjs-unit@0.1.6:
version "0.1.6"
resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699"
integrity sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=
@ -4293,14 +4278,24 @@ event-stream@~3.3.0:
stream-combiner "~0.0.4"
through "~2.3.1"
eventemitter3@3.1.0, eventemitter3@^3.0.0, eventemitter3@^3.1.0:
eventemitter3@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.1.1.tgz#47786bdaa087caf7b1b75e73abc5c7d540158cd0"
integrity sha1-R3hr2qCHyvext15zq8XH1UAVjNA=
eventemitter3@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163"
events@^1.0.0, events@^1.1.1:
events@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924"
events@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/events/-/events-3.0.0.tgz#9a0a0dfaf62893d92b875b8f2698ca4114973e88"
integrity sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==
eventsource@^1.0.7:
version "1.0.7"
resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0"
@ -4887,14 +4882,13 @@ fs-extra@4.0.1:
jsonfile "^3.0.0"
universalify "^0.1.0"
fs-extra@^4.0.2:
version "4.0.3"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"
integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==
fs-extra@^2.0.0, fs-extra@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.1.2.tgz#046c70163cef9aad46b0e4a7fa467fb22d71de35"
integrity sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=
dependencies:
graceful-fs "^4.1.2"
jsonfile "^4.0.0"
universalify "^0.1.0"
jsonfile "^2.1.0"
fs-extra@^7.0.1:
version "7.0.1"
@ -4911,6 +4905,16 @@ fs-minipass@^1.2.5:
dependencies:
minipass "^2.2.1"
fs-promise@^2.0.0:
version "2.0.3"
resolved "https://registry.yarnpkg.com/fs-promise/-/fs-promise-2.0.3.tgz#f64e4f854bcf689aa8bddcba268916db3db46854"
integrity sha1-9k5PhUvPaJqovdy6JokW2z20aFQ=
dependencies:
any-promise "^1.3.0"
fs-extra "^2.0.0"
mz "^2.6.0"
thenify-all "^1.6.0"
fs-readdir-recursive@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27"
@ -4945,6 +4949,16 @@ fsevents@^1.1.2, fsevents@^1.2.2, fsevents@^1.2.3:
nan "^2.9.2"
node-pre-gyp "^0.10.0"
fstream@^1.0.2, fstream@^1.0.8:
version "1.0.11"
resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171"
integrity sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=
dependencies:
graceful-fs "^4.1.2"
inherits "~2.0.0"
mkdirp ">=0.5 0"
rimraf "2"
function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
@ -5171,9 +5185,10 @@ gonzales-pe@^4.2.3:
dependencies:
minimist "1.1.x"
got@^7.1.0:
got@7.1.0, got@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/got/-/got-7.1.0.tgz#05450fd84094e6bbea56f451a43a9c289166385a"
integrity sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==
dependencies:
decompress-response "^3.2.0"
duplexer3 "^0.1.4"
@ -5328,7 +5343,7 @@ hash-base@^3.0.0:
inherits "^2.0.1"
safe-buffer "^5.0.1"
hash.js@1.1.3, hash.js@^1.0.0, hash.js@^1.0.3:
hash.js@^1.0.0, hash.js@^1.0.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846"
dependencies:
@ -5553,13 +5568,6 @@ iconv-lite@^0.4.24:
dependencies:
safer-buffer ">= 2.1.2 < 3"
idna-uts46-hx@^2.3.1:
version "2.3.1"
resolved "https://registry.yarnpkg.com/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz#a1dc5c4df37eee522bf66d969cc980e00e8711f9"
integrity sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==
dependencies:
punycode "2.1.0"
ieee754@^1.1.4:
version "1.1.12"
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b"
@ -5651,7 +5659,7 @@ inflight@^1.0.4:
once "^1.3.0"
wrappy "1"
inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3:
inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
@ -6542,11 +6550,6 @@ js-levenshtein@^1.1.3:
resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d"
integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==
js-sha3@0.5.7, js-sha3@^0.5.7:
version "0.5.7"
resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7"
integrity sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc=
js-sha3@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.3.1.tgz#86122802142f0828502a0d1dee1d95e253bb0243"
@ -6670,6 +6673,13 @@ json5@^2.1.0:
dependencies:
minimist "^1.2.0"
jsonfile@^2.1.0:
version "2.4.0"
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8"
integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug=
optionalDependencies:
graceful-fs "^4.1.6"
jsonfile@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66"
@ -7313,27 +7323,12 @@ minipass@^2.2.1, minipass@^2.2.4:
safe-buffer "^5.1.1"
yallist "^3.0.0"
minipass@^2.3.4:
version "2.3.5"
resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848"
integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==
dependencies:
safe-buffer "^5.1.2"
yallist "^3.0.0"
minizlib@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.1.0.tgz#11e13658ce46bc3a70a267aac58359d1e0c29ceb"
dependencies:
minipass "^2.2.1"
minizlib@^1.1.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614"
integrity sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==
dependencies:
minipass "^2.2.1"
mississippi@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f"
@ -7378,7 +7373,7 @@ mkdirp-promise@^5.0.1:
dependencies:
mkdirp "*"
mkdirp@*, mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0:
mkdirp@*, mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0:
version "0.5.1"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
@ -7411,6 +7406,11 @@ morgan@^1.9.1:
on-finished "~2.3.0"
on-headers "~1.0.1"
mout@^0.11.0:
version "0.11.1"
resolved "https://registry.yarnpkg.com/mout/-/mout-0.11.1.tgz#ba3611df5f0e5b1ffbfd01166b8f02d1f5fa2b99"
integrity sha1-ujYR318OWx/7/QEWa48C0fX6K5k=
move-concurrently@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
@ -7446,6 +7446,15 @@ mute-stream@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
mz@^2.6.0:
version "2.7.0"
resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32"
integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==
dependencies:
any-promise "^1.0.0"
object-assign "^4.0.1"
thenify-all "^1.0.0"
nan@2.10.0, nan@^2.9.2:
version "2.10.0"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f"
@ -7783,10 +7792,10 @@ object.pick@^1.3.0:
dependencies:
isobject "^3.0.1"
oboe@2.1.4:
version "2.1.4"
resolved "https://registry.yarnpkg.com/oboe/-/oboe-2.1.4.tgz#20c88cdb0c15371bb04119257d4fdd34b0aa49f6"
integrity sha1-IMiM2wwVNxuwQRklfU/dNLCqSfY=
oboe@2.1.3:
version "2.1.3"
resolved "https://registry.yarnpkg.com/oboe/-/oboe-2.1.3.tgz#2b4865dbd46be81225713f4e9bfe4bcf4f680a4f"
integrity sha1-K0hl29Rr6BIlcT9Om/5Lz09oCk8=
dependencies:
http-https "^1.0.0"
@ -8550,11 +8559,6 @@ punycode@1.3.2:
version "1.3.2"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
punycode@2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d"
integrity sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=
punycode@^1.2.4, punycode@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
@ -9446,7 +9450,7 @@ ret@~0.1.10:
version "0.1.15"
resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
rimraf@2.6.3, rimraf@^2.6.1, rimraf@^2.6.3:
rimraf@2, rimraf@2.6.3, rimraf@^2.6.1, rimraf@^2.6.3:
version "2.6.3"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
@ -9570,11 +9574,6 @@ schema-utils@^1.0.0:
ajv-errors "^1.0.0"
ajv-keywords "^3.1.0"
scrypt-js@2.0.4:
version "2.0.4"
resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-2.0.4.tgz#32f8c5149f0797672e551c07e230f834b6af5f16"
integrity sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==
scrypt.js@0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/scrypt.js/-/scrypt.js-0.2.0.tgz#af8d1465b71e9990110bedfc593b9479e03a8ada"
@ -9724,11 +9723,6 @@ set-value@^2.0.0:
is-plain-object "^2.0.3"
split-string "^3.0.1"
setimmediate@1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.4.tgz#20e81de622d4a02588ce0c8da8973cbcf1d3138f"
integrity sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48=
setimmediate@^1.0.4, setimmediate@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
@ -10400,22 +10394,23 @@ svg-tags@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764"
swarm-js@^0.1.39:
version "0.1.39"
resolved "https://registry.yarnpkg.com/swarm-js/-/swarm-js-0.1.39.tgz#79becb07f291d4b2a178c50fee7aa6e10342c0e8"
integrity sha512-QLMqL2rzF6n5s50BptyD6Oi0R1aWlJC5Y17SRIVXRj6OR1DRIPM7nepvrxxkjA1zNzFz6mUOMjfeqeDaWB7OOg==
swarm-js@0.1.37:
version "0.1.37"
resolved "https://registry.yarnpkg.com/swarm-js/-/swarm-js-0.1.37.tgz#27d485317a340bbeec40292af783cc10acfa4663"
integrity sha512-G8gi5fcXP/2upwiuOShJ258sIufBVztekgobr3cVgYXObZwJ5AXLqZn52AI+/ffft29pJexF9WNdUxjlkVehoQ==
dependencies:
bluebird "^3.5.0"
buffer "^5.0.5"
decompress "^4.0.0"
eth-lib "^0.1.26"
fs-extra "^4.0.2"
fs-extra "^2.1.2"
fs-promise "^2.0.0"
got "^7.1.0"
mime-types "^2.1.16"
mkdirp-promise "^5.0.1"
mock-fs "^4.1.0"
setimmediate "^1.0.5"
tar "^4.0.2"
tar.gz "^1.0.5"
xhr-request-promise "^0.1.2"
symbol-observable@1.0.1:
@ -10462,6 +10457,26 @@ tar-stream@^1.5.2:
to-buffer "^1.1.0"
xtend "^4.0.0"
tar.gz@^1.0.5:
version "1.0.7"
resolved "https://registry.yarnpkg.com/tar.gz/-/tar.gz-1.0.7.tgz#577ef2c595faaa73452ef0415fed41113212257b"
integrity sha512-uhGatJvds/3diZrETqMj4RxBR779LKlIE74SsMcn5JProZsfs9j0QBwWO1RW+IWNJxS2x8Zzra1+AW6OQHWphg==
dependencies:
bluebird "^2.9.34"
commander "^2.8.1"
fstream "^1.0.8"
mout "^0.11.0"
tar "^2.1.1"
tar@^2.1.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
integrity sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=
dependencies:
block-stream "*"
fstream "^1.0.2"
inherits "2"
tar@^4:
version "4.4.2"
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.2.tgz#60685211ba46b38847b1ae7ee1a24d744a2cd462"
@ -10474,19 +10489,6 @@ tar@^4:
safe-buffer "^5.1.2"
yallist "^3.0.2"
tar@^4.0.2:
version "4.4.8"
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d"
integrity sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==
dependencies:
chownr "^1.1.1"
fs-minipass "^1.2.5"
minipass "^2.3.4"
minizlib "^1.1.1"
mkdirp "^0.5.0"
safe-buffer "^5.1.2"
yallist "^3.0.2"
term-img@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/term-img/-/term-img-4.0.0.tgz#238363ddf6eb180a062fa2e232bb7b7eb6a7058d"
@ -10533,6 +10535,20 @@ text-table@^0.2.0:
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
thenify-all@^1.0.0, thenify-all@^1.6.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"
integrity sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=
dependencies:
thenify ">= 3.1.0 < 4"
"thenify@>= 3.1.0 < 4":
version "3.3.0"
resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.0.tgz#e69e38a1babe969b0108207978b9f62b88604839"
integrity sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=
dependencies:
any-promise "^1.0.0"
throat@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a"
@ -10666,13 +10682,14 @@ trezor-bridge-communicator@1.0.2:
request "^2.88.0"
whatwg-fetch "^3.0.0"
trezor-connect@7.0.0-beta.2:
version "7.0.0-beta.2"
resolved "https://registry.yarnpkg.com/trezor-connect/-/trezor-connect-7.0.0-beta.2.tgz#10dc04e1b60804263e9873cd503a4fc9d3e940d2"
trezor-connect@7.0.0-beta.3:
version "7.0.0-beta.3"
resolved "https://registry.yarnpkg.com/trezor-connect/-/trezor-connect-7.0.0-beta.3.tgz#34aff422e36745eac24a266bcdfa266282ac5255"
integrity sha512-aRh+Vzfqy/2GMJnsvtrzGhwi9j9wjOkBrNN62HTD2sDXLrcROlQMHBCd5lPjSZaJk1npjw5rrvhPS3G9IeyiVw==
dependencies:
babel-runtime "^6.26.0"
events "^1.1.1"
whatwg-fetch "^2.0.4"
"@babel/runtime" "^7.3.1"
events "^3.0.0"
whatwg-fetch "^3.0.0"
trezor-translations-manager@^1.0.4:
version "1.0.4"
@ -10796,6 +10813,11 @@ unbzip2-stream@^1.0.9:
buffer "^3.0.1"
through "^2.3.6"
underscore@1.8.3:
version "1.8.3"
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022"
integrity sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=
unherit@^1.0.4:
version "1.1.1"
resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.1.tgz#132748da3e88eab767e08fabfbb89c5e9d28628c"
@ -10952,7 +10974,7 @@ url-parse-lax@^1.0.0:
dependencies:
prepend-http "^1.0.1"
url-parse@1.4.4, url-parse@^1.4.3:
url-parse@^1.4.3:
version "1.4.4"
resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.4.tgz#cac1556e95faa0303691fec5cf9d5a1bc34648f8"
integrity sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg==
@ -11024,14 +11046,14 @@ uuid@2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.1.tgz#c2a30dedb3e535d72ccf82e343941a50ba8533ac"
uuid@3.3.2, uuid@^3.3.2:
version "3.3.2"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
uuid@^3.0.1, uuid@^3.1.0:
version "3.2.1"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14"
uuid@^3.3.2:
version "3.3.2"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
v8-compile-cache@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz#a428b28bb26790734c4fc8bc9fa106fccebf6a6c"
@ -11145,223 +11167,220 @@ wbuf@^1.1.0, wbuf@^1.7.3:
dependencies:
minimalistic-assert "^1.0.0"
web3-bzz@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.0.0-beta.38.tgz#9011fb9fd6a334de082df3a2ca35f13c3699cda4"
integrity sha512-V9ftqYLl+2ZUuyS9loHKY9VB++oLM9tnRD1RFLSdQlnJsRxWTjw+GWFd7r4JEa3qoImRFB1dsRC6cGcfBLYeXg==
web3-bzz@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.0.0-beta.35.tgz#9d5e1362b3db2afd77d65619b7cd46dd5845c192"
integrity sha512-BhAU0qhlr8zltm4gs/+P1gki2VkxHJaM2Rrh4DGesDW0lzwufRoNvWFlwx1bKHoFPWNbSmm9PRkHOYOINL/Tgw==
dependencies:
lodash "^4.17.11"
swarm-js "^0.1.39"
got "7.1.0"
swarm-js "0.1.37"
underscore "1.8.3"
web3-core-helpers@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.0.0-beta.38.tgz#acdcfa440e9e09238625510517bfd8af2faedd52"
integrity sha512-pbXQJ+IiMQZLZ64uYqyqqrWDStJ3814jrKm8ZYp5wkFRQhYaWQ4evUScbtq2KvvkUM9b0OdXpZj7jm1KcTXF5g==
web3-core-helpers@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.0.0-beta.35.tgz#d681d218a0c6e3283ee1f99a078ab9d3eef037f1"
integrity sha512-APOu3sEsamyqWt//8o4yq9KF25/uqGm+pQShson/sC4gKzmfJB07fLo2ond0X30E8fIqAPeVCotPXQxGciGUmA==
dependencies:
lodash "^4.17.11"
web3-eth-iban "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
underscore "1.8.3"
web3-eth-iban "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-core-method@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.0.0-beta.38.tgz#15f8d7cd2fda00fb763b16886e5c2278d64bb63a"
integrity sha512-o5MJXmrAGa2W6b8kcyHudRvvpTFvOtXCvs0ZSc5gTUuLC+6bwF3NVK3ZriwcpMzJRA4sbRE7YupB8A8bYHa0nw==
web3-core-method@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.0.0-beta.35.tgz#fc10e2d546cf4886038e6130bd5726b0952a4e5f"
integrity sha512-jidImCide8q0GpfsO4L73qoHrbkeWgwU3uOH5DKtJtv0ccmG086knNMRgryb/o9ZgetDWLmDEsJnHjBSoIwcbA==
dependencies:
eventemitter3 "3.1.0"
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-promievent "1.0.0-beta.38"
web3-core-subscriptions "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
underscore "1.8.3"
web3-core-helpers "1.0.0-beta.35"
web3-core-promievent "1.0.0-beta.35"
web3-core-subscriptions "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-core-promievent@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.0.0-beta.38.tgz#6f2bc40919c151d09951a8e464678e4f2140a062"
integrity sha512-nm/hV5YSBUCAx2as4blnc8ypR7MiX6rmFr1WaUmQwf94capqNaiP/IQWHKZZ6rNZQmQxmltsN/lrU951SMeWCQ==
web3-core-promievent@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.0.0-beta.35.tgz#4f1b24737520fa423fee3afee110fbe82bcb8691"
integrity sha512-GvqXqKq07OmHuVi5uNRg6k79a1/CI0ViCC+EtNv4CORHtDRmYEt5Bvdv6z6FJEiaaQkD0lKbFwNhLxutx7HItw==
dependencies:
eventemitter3 "^3.1.0"
any-promise "1.3.0"
eventemitter3 "1.1.1"
web3-core-subscriptions@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.0.0-beta.38.tgz#fa0ce652527e82c9e9368b9533253138b4ceb076"
integrity sha512-edVN264mncw9ApM9EqJZ7A5MehCLh6qnoGdcsU+F03X7uFzBZogLLNv3ZFtMHvrz7TnMSRF611lALLaU/l8rxg==
web3-core-requestmanager@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.0.0-beta.35.tgz#2b77cbf6303720ad68899b39fa7f584dc03dbc8f"
integrity sha512-S+zW2h17ZZQU9oe3yaCJE0E7aJS4C3Kf4kGPDv+nXjW0gKhQQhgVhw1Doq/aYQGqNSWJp7f1VHkz5gQWwg6RRg==
dependencies:
eventemitter3 "^3.1.0"
lodash "^4.17.11"
web3-core-helpers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
underscore "1.8.3"
web3-core-helpers "1.0.0-beta.35"
web3-providers-http "1.0.0-beta.35"
web3-providers-ipc "1.0.0-beta.35"
web3-providers-ws "1.0.0-beta.35"
web3-core@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.0.0-beta.38.tgz#d11ed226b427350607289bcae6c36ed07af4cde5"
integrity sha512-2hTYzk1dGkFiswcFKxYJYdkpAREY4fuccJIth2nMhddyt8vIxY58WodFijJkZaMGuUEDq+leMhbCF/8kiQckfg==
web3-core-subscriptions@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.0.0-beta.35.tgz#c1b76a2ad3c6e80f5d40b8ba560f01e0f4628758"
integrity sha512-gXzLrWvcGkGiWq1y33Z4Y80XI8XMrwowiQJkrPSjQ81K5PBKquOGwcMffLaKcwdmEy/NpsOXDeFo3eLE1Ghvvw==
dependencies:
lodash "^4.17.11"
web3-utils "1.0.0-beta.38"
eventemitter3 "1.1.1"
underscore "1.8.3"
web3-core-helpers "1.0.0-beta.35"
web3-eth-abi@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.0.0-beta.38.tgz#0c660e48bb9b2600fab537cb8d2ffa4a34023851"
integrity sha512-lMlb0tfuAhYn25Aw5wkBTsj3/7UXvRn7quFy5koicv7tEn7JA3QarRY3qjB6gpQY6miGyyHbhpGJ89TVmzMWHg==
web3-core@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.0.0-beta.35.tgz#0c44d3c50d23219b0b1531d145607a9bc7cd4b4f"
integrity sha512-ayGavbgVk4KL9Y88Uv411fBJ0SVgVfKhKEBweKYzmP0zOqneMzWt6YsyD1n6kRvjAbqA0AfUPEOKyMNjcx2tjw==
dependencies:
ethers "^4.0.0"
lodash "^4.17.11"
web3-utils "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.35"
web3-core-method "1.0.0-beta.35"
web3-core-requestmanager "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-eth-accounts@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.0.0-beta.38.tgz#962e31c94ab432971a91d2f2d58adabfefa56f79"
integrity sha512-MMNaWifbz9kTksXllxXBmIUsQCw97j6j1EN30pvlno0XyqmXpoYPmCjpF7uEhzT9qOSFFN32c3IjZRGTghXI5A==
web3-eth-abi@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.0.0-beta.35.tgz#2eb9c1c7c7233db04010defcb192293e0db250e6"
integrity sha512-KUDC+EtFFYG8z01ZleKrASdjj327/rtWHzEt6RWsEj7bBa0bGp9nEh+nqdZx/Sdgz1O8tnfFzJlrRcXpfr1vGg==
dependencies:
bn.js "4.11.6"
underscore "1.8.3"
web3-core-helpers "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-eth-accounts@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.0.0-beta.35.tgz#7d0e5a69f510dc93874471599eb7abfa9ddf3e63"
integrity sha512-duIgRsfht/0kAW/eQ0X9lKtVIykbETrnM2H7EnvplCzPHtQLodpib4o9JXfh9n6ZDgdDC7cuJoiVB9QJg089ew==
dependencies:
any-promise "1.3.0"
crypto-browserify "3.12.0"
eth-lib "0.2.8"
lodash "^4.17.11"
eth-lib "0.2.7"
scrypt.js "0.2.0"
uuid "3.3.2"
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
underscore "1.8.3"
uuid "2.0.1"
web3-core "1.0.0-beta.35"
web3-core-helpers "1.0.0-beta.35"
web3-core-method "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-eth-contract@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.0.0-beta.38.tgz#ee5466779ab4099a9fd9d25feee7a10c4d687117"
integrity sha512-JnLoA0AsL+/eTq3zxugthpQrNj5Jx/WXPeuxuwxLWlZWAz0sRcf9+Bc5gHVOWvDyqkaAeY2zFaYhTjtiQH7K+A==
web3-eth-contract@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.0.0-beta.35.tgz#5276242d8a3358d9f1ce92b71575c74f9015935c"
integrity sha512-foPohOg5O1UCGKGZOIs+kQK5IZdV2QQ7pAWwNxH8WHplUA+fre1MurXNpoxknUmH6mYplFhXjqgYq2MsrBpHrA==
dependencies:
lodash "^4.17.11"
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-core-promievent "1.0.0-beta.38"
web3-core-subscriptions "1.0.0-beta.38"
web3-eth-abi "1.0.0-beta.38"
web3-eth-accounts "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
underscore "1.8.3"
web3-core "1.0.0-beta.35"
web3-core-helpers "1.0.0-beta.35"
web3-core-method "1.0.0-beta.35"
web3-core-promievent "1.0.0-beta.35"
web3-core-subscriptions "1.0.0-beta.35"
web3-eth-abi "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-eth-ens@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.0.0-beta.38.tgz#0ea2a044dbb3edca6d038508b37a78f5bd3d560c"
integrity sha512-Xth9ThCnE00h19P6FDVjxsyX4/ItSXxQFXteidSlah1zElbMAJlEI2EvWz6ekZbU5Y2NNHcWRdUp2BMlUsO3lw==
web3-eth-iban@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.35.tgz#5aa10327a9abb26bcfc4ba79d7bad18a002b332c"
integrity sha512-H5wkcNcAIc+h/WoDIKv7ZYmrM2Xqu3O7jBQl1IWo73EDVQji+AoB2i3J8tuwI1yZRInRwrfpI3Zuwuf54hXHmQ==
dependencies:
eth-ens-namehash "2.0.8"
lodash "^4.17.11"
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-core-promievent "1.0.0-beta.38"
web3-eth-abi "1.0.0-beta.38"
web3-eth-contract "1.0.0-beta.38"
web3-net "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
bn.js "4.11.6"
web3-utils "1.0.0-beta.35"
web3-eth-iban@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.38.tgz#0f1fdab09131aa06a0c63a0c1c1840cc5fa2966f"
integrity sha512-9bhJDDeeRucICteEgr/wmMFRQANf+nNxn+lAdAi+kHRfI3LoTHII3yP9yM2GuUG4NdRzcIXlZXTn2j6gVV+TsA==
web3-eth-personal@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.0.0-beta.35.tgz#ecac95b7a53d04a567447062d5cae5f49879e89f"
integrity sha512-AcM9nnlxu7ZRRxPvkrFB9eLxMM4A2cPfj2aCg21Wb2EpMnhR+b/O1cT33k7ApRowoMpM+T9M8vx2oPNwXfaCOQ==
dependencies:
bn.js "4.11.8"
web3-utils "1.0.0-beta.38"
web3-core "1.0.0-beta.35"
web3-core-helpers "1.0.0-beta.35"
web3-core-method "1.0.0-beta.35"
web3-net "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-eth-personal@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.0.0-beta.38.tgz#2510de0250726e570355f67c91acf0b53c8b590b"
integrity sha512-nPVxN6OiZmstusBoJTRehdE9ETPLXPnzmRJrhxS+reRNQCsba8uG2pEdfNogY9suZlxLi0THOpG6cWKZ2EJkcA==
web3-eth@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.0.0-beta.35.tgz#c52c804afb95e6624b6f5e72a9af90fbf5005b68"
integrity sha512-04mcb2nGPXThawuuYICPOxv0xOHofvQKsjZeIq+89nyOC8DQMGTAErDkGyMHQYtjpth5XDhic0wuEsA80AmFZA==
dependencies:
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-net "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
underscore "1.8.3"
web3-core "1.0.0-beta.35"
web3-core-helpers "1.0.0-beta.35"
web3-core-method "1.0.0-beta.35"
web3-core-subscriptions "1.0.0-beta.35"
web3-eth-abi "1.0.0-beta.35"
web3-eth-accounts "1.0.0-beta.35"
web3-eth-contract "1.0.0-beta.35"
web3-eth-iban "1.0.0-beta.35"
web3-eth-personal "1.0.0-beta.35"
web3-net "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-eth@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.0.0-beta.38.tgz#8bac935aaa9c4698c2e4364fd1d63a540c838bd7"
integrity sha512-hPwM439QgMbDGaxVk9s+YG4x/yhVmg/8J+/sDZzQ2xTP9eg8KGFlgJ9krpQM2gDKlZzPt8c3idKbE66rw4kHDQ==
web3-net@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.0.0-beta.35.tgz#5c6688e0dea71fcd910ee9dc5437b94b7f6b3354"
integrity sha512-bbwaQ/KohGjIJ6HAKbZ6KrklCAaG6/B7hIbAbVLSFLxF+Yz9lmAgQYaDInpidpC/NLb3WOmcbRF+P77J4qMVIA==
dependencies:
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-core-promievent "1.0.0-beta.38"
web3-core-subscriptions "1.0.0-beta.38"
web3-eth-abi "1.0.0-beta.38"
web3-eth-accounts "1.0.0-beta.38"
web3-eth-contract "1.0.0-beta.38"
web3-eth-ens "1.0.0-beta.38"
web3-eth-iban "1.0.0-beta.38"
web3-eth-personal "1.0.0-beta.38"
web3-net "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
web3-core "1.0.0-beta.35"
web3-core-method "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
web3-net@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.0.0-beta.38.tgz#8bb397b83d5a1763c27da9738396dd7009171bdf"
integrity sha512-XxV/3G/9q0seoNK0mzokgZypRwoo0yXluvwzsoF0/TTUo0AbH5o/UOB3T4vQrJ9F8W698fb7+qlHcYoCPqiwXg==
web3-providers-http@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.0.0-beta.35.tgz#92059d9d6de6e9f82f4fae30b743efd841afc1e1"
integrity sha512-DcIMFq52Fb08UpWyZ3ZlES6NsNqJnco4hBS/Ej6eOcASfuUayPI+GLkYVZsnF3cBYqlH+DOKuArcKSuIxK7jIA==
dependencies:
lodash "^4.17.11"
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
web3-providers@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-providers/-/web3-providers-1.0.0-beta.38.tgz#a8621a7e10da5d10be79209ce3fa0055c9e0a734"
integrity sha512-K82NnuaJ1YmNnCvVNqqnBTM0OCMHWK/ief6ifg8caiIg4LxgvqbDFG7SlbaCV8h9eZiVfCF5bSCPYY2sQ3qTVQ==
dependencies:
eventemitter3 "3.1.0"
lodash "^4.17.11"
oboe "2.1.4"
url-parse "1.4.4"
websocket "git://github.com/frozeman/WebSocket-Node.git#browserifyCompatible"
web3-core-helpers "1.0.0-beta.35"
xhr2-cookies "1.1.0"
web3-shh@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.0.0-beta.38.tgz#d9396fa860a47ff6ae154c7022124cfc5f6c5df4"
integrity sha512-lcokXr2+VSyYiIJT/uJVyOPhMAWuOlJuGsRchM0Opi2UexNQkKkmOUC4hVWvz/aNVjArdDw3+nuMdn10rsYJvA==
web3-providers-ipc@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.0.0-beta.35.tgz#031afeb10fade2ebb0ef2fb82f5e58c04be842d9"
integrity sha512-iB0FG0HcpUnayfa8pn4guqEQ4Y1nrroi/jffdtQgFkrNt0sD3fMSwwC0AbmECqj3tDLl0e1slBR0RENll+ZF0g==
dependencies:
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-core-subscriptions "1.0.0-beta.38"
web3-net "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
oboe "2.1.3"
underscore "1.8.3"
web3-core-helpers "1.0.0-beta.35"
web3-utils@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.0.0-beta.38.tgz#8c805eb7c84ba4adf2a54038c4318c447c26cce1"
integrity sha512-cZJUNduERfwn/kcirM1OSo326nNDEI+ZSE79iUjGOsfjtFnI04VT7JxPOVRDXvzCc4vLZwNDt7MIa5YTCwbHvQ==
web3-providers-ws@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.0.0-beta.35.tgz#5d38603fd450243a26aae0ff7f680644e77fa240"
integrity sha512-Cx64NgDStynKaUGDIIOfaCd0fZusL8h5avKTkdTjUu2aHhFJhZoVBGVLhoDtUaqZGWIZGcBJOoVf2JkGUOjDRQ==
dependencies:
bn.js "4.11.8"
eth-lib "0.2.8"
ethjs-unit "^0.1.6"
lodash "^4.17.11"
underscore "1.8.3"
web3-core-helpers "1.0.0-beta.35"
websocket "git://github.com/frozeman/WebSocket-Node.git#browserifyCompatible"
web3-shh@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.0.0-beta.35.tgz#7e4a585f8beee0c1927390937c6537748a5d1a58"
integrity sha512-8qSonk/x0xabERS9Sr6AIADN/Ty+5KwARkkGIfSYHKqFpdMDz+76F7cUCxtoCZoS8K04xgZlDKYe0TJXLYA0Fw==
dependencies:
web3-core "1.0.0-beta.35"
web3-core-method "1.0.0-beta.35"
web3-core-subscriptions "1.0.0-beta.35"
web3-net "1.0.0-beta.35"
web3-utils@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.0.0-beta.35.tgz#ced9e1df47c65581c441c5f2af76b05a37a273d7"
integrity sha512-Dq6f0SOKj3BDFRgOPnE6ALbzBDCKVIW8mKWVf7tGVhTDHf+wQaWwQSC3aArFSqdExB75BPBPyDpuMTNszhljpA==
dependencies:
bn.js "4.11.6"
eth-lib "0.1.27"
ethjs-unit "0.1.6"
number-to-bn "1.7.0"
randomhex "0.1.5"
underscore "1.8.3"
utf8 "2.1.1"
web3@1.0.0-beta.38:
version "1.0.0-beta.38"
resolved "https://registry.yarnpkg.com/web3/-/web3-1.0.0-beta.38.tgz#1f0925f13c5217607b315bf85c2d664a93c4e76d"
integrity sha512-+Jc/lgMHvUBoKLCWFaUGWMGh+BqbT4rTVS9sLrWP03dQznpTuHxCk9dAUIEpO26qWcH6DHL7/jvY0ZWOjVg2aQ==
web3@1.0.0-beta.35:
version "1.0.0-beta.35"
resolved "https://registry.yarnpkg.com/web3/-/web3-1.0.0-beta.35.tgz#6475095bd451a96e50a32b997ddee82279292f11"
integrity sha512-xwDmUhvTcHQvvNnOPcPZZgCxKUsI2e+GbHy7JkTK3/Rmnutazy8x7fsAXT9myw7V1qpi3GgLoZ3fkglSUbg1Mg==
dependencies:
web3-bzz "1.0.0-beta.38"
web3-core "1.0.0-beta.38"
web3-core-helpers "1.0.0-beta.38"
web3-core-method "1.0.0-beta.38"
web3-eth "1.0.0-beta.38"
web3-eth-personal "1.0.0-beta.38"
web3-net "1.0.0-beta.38"
web3-providers "1.0.0-beta.38"
web3-shh "1.0.0-beta.38"
web3-utils "1.0.0-beta.38"
web3-bzz "1.0.0-beta.35"
web3-core "1.0.0-beta.35"
web3-eth "1.0.0-beta.35"
web3-eth-personal "1.0.0-beta.35"
web3-net "1.0.0-beta.35"
web3-shh "1.0.0-beta.35"
web3-utils "1.0.0-beta.35"
webidl-conversions@^4.0.2:
version "4.0.2"
@ -11544,7 +11563,7 @@ whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3:
dependencies:
iconv-lite "0.4.19"
whatwg-fetch@2.0.4, whatwg-fetch@^2.0.4:
whatwg-fetch@2.0.4:
version "2.0.4"
resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f"
@ -11711,11 +11730,6 @@ xmldom@0.1.x:
resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9"
integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk=
xmlhttprequest@1.8.0:
version "1.8.0"
resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc"
integrity sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=
xregexp@4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020"