Commit 35d9254b authored by Noah Zinsmeister's avatar Noah Zinsmeister Committed by GitHub

Merge pull request #264 from NoahZinsmeister/netlify

upgrade dependencies, fix lint errors
parents a06d9c3c 9c93c1a9
# Uniswap Frontend # Uniswap Frontend
[![Netlify Status](https://api.netlify.com/api/v1/badges/fa110555-b3c7-4eeb-b840-88a835009c62/deploy-status)](https://app.netlify.com/sites/uniswap/deploys)
This an an open source interface for Uniswap - a protocol for decentralized exchange of Ethereum tokens. This an an open source interface for Uniswap - a protocol for decentralized exchange of Ethereum tokens.
* Website: [uniswap.io/](https://uniswap.io/) * Website: [uniswap.io/](https://uniswap.io/)
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
"classnames": "^2.2.6", "classnames": "^2.2.6",
"d3": "^4.13.0", "d3": "^4.13.0",
"deep-equal": "^1.0.1", "deep-equal": "^1.0.1",
"ethers": "^4.0.27",
"fuse": "^0.4.0", "fuse": "^0.4.0",
"i18next": "^13.0.1", "i18next": "^13.0.1",
"i18next-browser-languagedetector": "^2.2.4", "i18next-browser-languagedetector": "^2.2.4",
...@@ -16,16 +17,16 @@ ...@@ -16,16 +17,16 @@
"node-sass": "^4.9.3", "node-sass": "^4.9.3",
"npm": "^6.0.0", "npm": "^6.0.0",
"prop-types": "^15.6.2", "prop-types": "^15.6.2",
"react": "^16.2.0", "react": "^16.8.6",
"react-cookies": "^0.1.0", "react-cookies": "^0.1.0",
"react-dom": "^16.2.0", "react-dom": "^16.8.6",
"react-ga": "^2.5.3", "react-ga": "^2.5.3",
"react-helmet": "^5.2.0", "react-helmet": "^5.2.0",
"react-i18next": "^8.4.0", "react-i18next": "^8.4.0",
"react-redux": "^5.0.7", "react-redux": "^5.0.7",
"react-responsive": "^5.0.0", "react-responsive": "^5.0.0",
"react-router-dom": "^4.3.1", "react-router-dom": "^4.3.1",
"react-scripts": "2.0.4", "react-scripts": "^2.1.8",
"react-scroll-to-component": "^1.0.2", "react-scroll-to-component": "^1.0.2",
"react-select": "^1.2.1", "react-select": "^1.2.1",
"react-transition-group": "1.x", "react-transition-group": "1.x",
...@@ -33,7 +34,7 @@ ...@@ -33,7 +34,7 @@
"redux-subscriber": "^1.1.0", "redux-subscriber": "^1.1.0",
"redux-thunk": "^2.2.0", "redux-thunk": "^2.2.0",
"ua-parser-js": "^0.7.18", "ua-parser-js": "^0.7.18",
"web3": "^1.0.0-beta.36" "web3": "1.0.0-beta.52"
}, },
"scripts": { "scripts": {
"start": "react-scripts start", "start": "react-scripts start",
......
...@@ -65,12 +65,12 @@ class ContextualInfo extends Component { ...@@ -65,12 +65,12 @@ class ContextualInfo extends Component {
{!this.state.showDetails ? ( {!this.state.showDetails ? (
<> <>
<span>{openDetailsText}</span> <span>{openDetailsText}</span>
<img src={DropdownBlue} /> <img src={DropdownBlue} alt='dropdown' />
</> </>
) : ( ) : (
<> <>
<span>{closeDetailsText}</span> <span>{closeDetailsText}</span>
<img src={DropupBlue} /> <img src={DropupBlue} alt='dropup' />
</> </>
)} )}
</div>, </div>,
......
...@@ -230,7 +230,7 @@ class CurrencyInputPanel extends Component { ...@@ -230,7 +230,7 @@ class CurrencyInputPanel extends Component {
this.setState({ searchQuery: e.target.value }); this.setState({ searchQuery: e.target.value });
}} }}
/> />
<img src={SearchIcon} className="token-modal__search-icon" /> <img src={SearchIcon} className="token-modal__search-icon" alt='search' />
</div> </div>
<div className="token-modal__token-list"> <div className="token-modal__token-list">
{this.renderTokenList()} {this.renderTokenList()}
......
...@@ -88,7 +88,7 @@ class BlockingWarning extends Component { ...@@ -88,7 +88,7 @@ class BlockingWarning extends Component {
const correctNetworkId = process.env.REACT_APP_NETWORK_ID || 1; const correctNetworkId = process.env.REACT_APP_NETWORK_ID || 1;
const correctNetwork = process.env.REACT_APP_NETWORK || 'Main Ethereum Network'; const correctNetwork = process.env.REACT_APP_NETWORK || 'Main Ethereum Network';
const wrongNetwork = networkId != correctNetworkId; const wrongNetwork = networkId !== correctNetworkId;
if (wrongNetwork && initialized) { if (wrongNetwork && initialized) {
content = [ content = [
...@@ -114,14 +114,14 @@ class BlockingWarning extends Component { ...@@ -114,14 +114,14 @@ class BlockingWarning extends Component {
isMobile() isMobile()
? ( ? (
[ [
<img src={CoinbaseWalletLogo} key="coinbase-wallet" onClick={() => window.open(getCoinbaseWalletLink(), '_blank')} />, <img alt='coinbase' src={CoinbaseWalletLogo} key="coinbase-wallet" onClick={() => window.open(getCoinbaseWalletLink(), '_blank')} />,
<img src={TrustLogo} key="trust" onClick={() => window.open(getTrustLink(), '_blank')} /> <img alt='trust' src={TrustLogo} key="trust" onClick={() => window.open(getTrustLink(), '_blank')} />
] ]
) )
: ( : (
[ [
<img src={MetamaskLogo} key="metamask" onClick={() => window.open(getMetamaskLink(), '_blank')} />, <img alt='metamask' src={MetamaskLogo} key="metamask" onClick={() => window.open(getMetamaskLink(), '_blank')} />,
<img src={BraveLogo} key="brave" onClick={() => window.open(getBraveLink(), '_blank')} /> <img alt='brave' src={BraveLogo} key="brave" onClick={() => window.open(getBraveLink(), '_blank')} />
] ]
) )
} }
......
...@@ -50,7 +50,7 @@ class NavigationTabs extends Component { ...@@ -50,7 +50,7 @@ class NavigationTabs extends Component {
{ {
showBetaMessage && ( showBetaMessage && (
<div className="beta-message" onClick={dismissBetaMessage}> <div className="beta-message" onClick={dismissBetaMessage}>
💀 {t("betaWarning")} <span role='img' aria-label='warning'>💀</span> {t("betaWarning")}
</div> </div>
) )
} }
......
import React from 'react'; import React from 'react';
import { connect } from 'react-redux';
import PropTypes from 'prop-types';
import './oversized-panel.scss'; import './oversized-panel.scss';
......
...@@ -21,10 +21,6 @@ class QrCode extends Component { ...@@ -21,10 +21,6 @@ class QrCode extends Component {
stream: null, stream: null,
}; };
constructor(props) {
super(props);
}
componentDidUpdate() { componentDidUpdate() {
const { videoOpen, stream } = this.state; const { videoOpen, stream } = this.state;
...@@ -102,12 +98,8 @@ class QrCode extends Component { ...@@ -102,12 +98,8 @@ class QrCode extends Component {
} }
render() { render() {
const {
onValueReceived,
} = this.props;
return [ return [
<img key="icon" src={QrCodeSVG} onClick={() => { <img key="icon" src={QrCodeSVG} alt='code' onClick={() => {
this.state.videoOpen ? this.closeVideo() : this.openVideo(); this.state.videoOpen ? this.closeVideo() : this.openVideo();
}} />, }} />,
this.renderQrReader() this.renderQrReader()
......
import React, { Component } from 'react'; import React from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import classnames from 'classnames'; import classnames from 'classnames';
......
import React, { Component } from 'react'; import React, { Component } from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import EthereumLogo from '../../assets/images/ethereum-logo.svg'; import EthereumLogo from '../../assets/images/ethereum-logo.svg';
import GenericTokenLogo from '../../assets/images/generic-token-logo.png';
const RINKEBY_TOKEN_MAP = { const RINKEBY_TOKEN_MAP = {
'0xDA5B056Cfb861282B4b59d29c9B395bcC238D29B': '0x0d8775f648430679a709e98d2b0cb6250d2887ef', '0xDA5B056Cfb861282B4b59d29c9B395bcC238D29B': '0x0d8775f648430679a709e98d2b0cb6250d2887ef',
...@@ -45,11 +44,12 @@ export default class TokenLogo extends Component { ...@@ -45,11 +44,12 @@ export default class TokenLogo extends Component {
} }
if (!path) { if (!path) {
return <div className={className} style={{ width: size, fontSize: size }}>🤔</div> return <div className={className} style={{ width: size, fontSize: size }}><span role='img' aria-label='thinking'>🤔</span></div>
} }
return ( return (
<img <img
alt='images'
src={path} src={path}
className={className} className={className}
style={{ style={{
......
...@@ -2,10 +2,10 @@ import React, { Component } from 'react'; ...@@ -2,10 +2,10 @@ import React, { Component } from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import classnames from 'classnames'; import classnames from 'classnames';
import Web3 from 'web3';
import Jazzicon from 'jazzicon'; import Jazzicon from 'jazzicon';
import { CSSTransitionGroup } from "react-transition-group"; import { CSSTransitionGroup } from "react-transition-group";
import { withNamespaces } from 'react-i18next'; import { withNamespaces } from 'react-i18next';
import { ethers } from 'ethers'
import './web3-status.scss'; import './web3-status.scss';
import Modal from '../Modal'; import Modal from '../Modal';
...@@ -13,6 +13,8 @@ function getEtherscanLink(tx) { ...@@ -13,6 +13,8 @@ function getEtherscanLink(tx) {
return `https://etherscan.io/tx/${tx}`; return `https://etherscan.io/tx/${tx}`;
} }
console.log(ethers)
class Web3Status extends Component { class Web3Status extends Component {
state = { state = {
isShowingModal: false, isShowingModal: false,
...@@ -93,7 +95,7 @@ class Web3Status extends Component { ...@@ -93,7 +95,7 @@ class Web3Status extends Component {
return; return;
} }
if (!address|| address.length < 42 || !Web3.utils.isHexStrict(address)) { if (!address || address.length < 42 || !ethers.utils.isHexString(address)) {
return; return;
} }
...@@ -119,11 +121,11 @@ function getPendingText(pendingTransactions, pendingLabel) { ...@@ -119,11 +121,11 @@ function getPendingText(pendingTransactions, pendingLabel) {
} }
function getText(text, disconnectedText) { function getText(text, disconnectedText) {
if (!text || text.length < 42 || !Web3.utils.isHexStrict(text)) { if (!text || text.length < 42 || !ethers.utils.isHexString(text)) {
return disconnectedText; return disconnectedText;
} }
const address = Web3.utils.toChecksumAddress(text); const address = ethers.utils.getAddress(text);
return `${address.substring(0, 6)}...${address.substring(38)}`; return `${address.substring(0, 6)}...${address.substring(38)}`;
} }
......
...@@ -220,7 +220,7 @@ export const sync = () => async (dispatch, getState) => { ...@@ -220,7 +220,7 @@ export const sync = () => async (dispatch, getState) => {
watched, watched,
contracts, contracts,
networkId, networkId,
transactions: { pending, confirmed }, transactions: { pending },
} = getState().web3connect; } = getState().web3connect;
// Sync Account // Sync Account
......
// eslint-disable-next-line no-unused-escape // eslint-disable-next-line no-useless-escape
const SPECIAL_CHARS_REGEX = /[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g const SPECIAL_CHARS_REGEX = /[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g
export default function (text, pattern, tokenSeparator = / +/g) { export default function (text, pattern, tokenSeparator = / +/g) {
......
/* eslint-disable */
/* /*
@asset(/libraries/qr-scanner/qr-scanner-worker.min.js) */ @asset(/libraries/qr-scanner/qr-scanner-worker.min.js) */
'use strict';export default class QrScanner{constructor(video,onDecode,canvasSize=QrScanner.DEFAULT_CANVAS_SIZE){this.$video=video;this.$canvas=document.createElement("canvas");this._onDecode=onDecode;this._active=false;this.$canvas.width=canvasSize;this.$canvas.height=canvasSize;this._sourceRect={x:0,y:0,width:canvasSize,height:canvasSize};this.$video.addEventListener("canplay",()=>this._updateSourceRect());this.$video.addEventListener("play",()=>{this._updateSourceRect();this._scanFrame()},false); 'use strict';export default class QrScanner{constructor(video,onDecode,canvasSize=QrScanner.DEFAULT_CANVAS_SIZE){this.$video=video;this.$canvas=document.createElement("canvas");this._onDecode=onDecode;this._active=false;this.$canvas.width=canvasSize;this.$canvas.height=canvasSize;this._sourceRect={x:0,y:0,width:canvasSize,height:canvasSize};this.$video.addEventListener("canplay",()=>this._updateSourceRect());this.$video.addEventListener("play",()=>{this._updateSourceRect();this._scanFrame()},false);
......
...@@ -10,8 +10,6 @@ import NavigationTabs from '../../components/NavigationTabs'; ...@@ -10,8 +10,6 @@ import NavigationTabs from '../../components/NavigationTabs';
import { selectors, addPendingTx } from '../../ducks/web3connect'; import { selectors, addPendingTx } from '../../ducks/web3connect';
import PlusBlue from '../../assets/images/plus-blue.svg'; import PlusBlue from '../../assets/images/plus-blue.svg';
import PlusGrey from '../../assets/images/plus-grey.svg'; import PlusGrey from '../../assets/images/plus-grey.svg';
import DropdownBlue from "../../assets/images/dropdown-blue.svg";
import DropupBlue from "../../assets/images/dropup-blue.svg";
import { getBlockDeadline } from '../../helpers/web3-utils'; import { getBlockDeadline } from '../../helpers/web3-utils';
import { retry } from '../../helpers/promise-utils'; import { retry } from '../../helpers/promise-utils';
import ModeSelector from './ModeSelector'; import ModeSelector from './ModeSelector';
...@@ -56,7 +54,7 @@ class AddLiquidity extends Component { ...@@ -56,7 +54,7 @@ class AddLiquidity extends Component {
const { inputValue, outputValue, inputCurrency, outputCurrency, lastEditedField } = this.state; const { inputValue, outputValue, inputCurrency, outputCurrency, lastEditedField } = this.state;
return isConnected !== nextProps.isConnected || return isConnected !== nextProps.isConnected ||
t != nextProps.t || t !== nextProps.t ||
account !== nextProps.account || account !== nextProps.account ||
exchangeAddresses !== nextProps.exchangeAddresses || exchangeAddresses !== nextProps.exchangeAddresses ||
web3 !== nextProps.web3 || web3 !== nextProps.web3 ||
...@@ -455,7 +453,7 @@ class AddLiquidity extends Component { ...@@ -455,7 +453,7 @@ class AddLiquidity extends Component {
action: 'Open', action: 'Open',
}); });
const { value: tokenReserve, decimals, label } = selectors().getTokenBalance(outputCurrency, fromToken[outputCurrency]); const { value: tokenReserve, label } = selectors().getTokenBalance(outputCurrency, fromToken[outputCurrency]);
const { value: ethReserve } = selectors().getBalance(fromToken[outputCurrency]); const { value: ethReserve } = selectors().getBalance(fromToken[outputCurrency]);
const { decimals: poolTokenDecimals } = selectors().getBalance(account, fromToken[outputCurrency]); const { decimals: poolTokenDecimals } = selectors().getBalance(account, fromToken[outputCurrency]);
...@@ -473,8 +471,8 @@ class AddLiquidity extends Component { ...@@ -473,8 +471,8 @@ class AddLiquidity extends Component {
const SLIPPAGE = 0.025; const SLIPPAGE = 0.025;
const minOutput = BN(outputValue).multipliedBy(1 - SLIPPAGE); const minOutput = BN(outputValue).multipliedBy(1 - SLIPPAGE);
const maxOutput = BN(outputValue).multipliedBy(1 + SLIPPAGE); const maxOutput = BN(outputValue).multipliedBy(1 + SLIPPAGE);
const minPercentage = minOutput.dividedBy(minOutput.plus(tokenReserve)).multipliedBy(100); // const minPercentage = minOutput.dividedBy(minOutput.plus(tokenReserve)).multipliedBy(100);
const maxPercentage = maxOutput.dividedBy(maxOutput.plus(tokenReserve)).multipliedBy(100); // const maxPercentage = maxOutput.dividedBy(maxOutput.plus(tokenReserve)).multipliedBy(100);
const liquidityMinted = BN(inputValue).multipliedBy(totalSupply.dividedBy(ethReserve)); const liquidityMinted = BN(inputValue).multipliedBy(totalSupply.dividedBy(ethReserve));
const adjTotalSupply = totalSupply.dividedBy(10 ** poolTokenDecimals); const adjTotalSupply = totalSupply.dividedBy(10 ** poolTokenDecimals);
...@@ -524,7 +522,7 @@ class AddLiquidity extends Component { ...@@ -524,7 +522,7 @@ class AddLiquidity extends Component {
? ( ? (
<div className="pool__new-exchange-warning"> <div className="pool__new-exchange-warning">
<div className="pool__new-exchange-warning-text"> <div className="pool__new-exchange-warning-text">
🚰 {t("firstLiquidity")} <span role='img' aria-label='liquidity'>🚰</span> {t("firstLiquidity")}
</div> </div>
<div className="pool__new-exchange-warning-text"> <div className="pool__new-exchange-warning-text">
{ t("initialExchangeRate", { label }) } { t("initialExchangeRate", { label }) }
...@@ -545,7 +543,7 @@ class AddLiquidity extends Component { ...@@ -545,7 +543,7 @@ class AddLiquidity extends Component {
/> />
<OversizedPanel> <OversizedPanel>
<div className="swap__down-arrow-background"> <div className="swap__down-arrow-background">
<img className="swap__down-arrow" src={isValid ? PlusBlue : PlusGrey} /> <img className="swap__down-arrow" src={isValid ? PlusBlue : PlusGrey} alt='plus' />
</div> </div>
</OversizedPanel> </OversizedPanel>
<CurrencyInputPanel <CurrencyInputPanel
...@@ -586,7 +584,7 @@ class AddLiquidity extends Component { ...@@ -586,7 +584,7 @@ class AddLiquidity extends Component {
export default connect( export default connect(
state => ({ state => ({
isConnected: Boolean(state.web3connect.account) && state.web3connect.networkId == (process.env.REACT_APP_NETWORK_ID||1), isConnected: Boolean(state.web3connect.account) && state.web3connect.networkId === (process.env.REACT_APP_NETWORK_ID||1),
account: state.web3connect.account, account: state.web3connect.account,
balances: state.web3connect.balances, balances: state.web3connect.balances,
web3: state.web3connect.web3, web3: state.web3connect.web3,
......
...@@ -222,7 +222,7 @@ class CreateExchange extends Component { ...@@ -222,7 +222,7 @@ class CreateExchange extends Component {
export default withRouter( export default withRouter(
connect( connect(
state => ({ state => ({
isConnected: Boolean(state.web3connect.account) && state.web3connect.networkId == (process.env.REACT_APP_NETWORK_ID||1), isConnected: Boolean(state.web3connect.account) && state.web3connect.networkId === (process.env.REACT_APP_NETWORK_ID||1),
account: state.web3connect.account, account: state.web3connect.account,
balances: state.web3connect.balances, balances: state.web3connect.balances,
web3: state.web3connect.web3, web3: state.web3connect.web3,
......
...@@ -86,7 +86,7 @@ class ModeSelector extends Component { ...@@ -86,7 +86,7 @@ class ModeSelector extends Component {
<span className="pool__liquidity-label"> <span className="pool__liquidity-label">
{this.props.title} {this.props.title}
</span> </span>
<img src={Dropdown} /> <img src={Dropdown} alt='dropdown' />
</div> </div>
{this.renderModal()} {this.renderModal()}
</OversizedPanel> </OversizedPanel>
......
...@@ -198,7 +198,6 @@ class RemoveLiquidity extends Component { ...@@ -198,7 +198,6 @@ class RemoveLiquidity extends Component {
const { const {
t, t,
exchangeAddresses: { fromToken }, exchangeAddresses: { fromToken },
web3,
selectors, selectors,
account, account,
} = this.props; } = this.props;
...@@ -215,9 +214,9 @@ class RemoveLiquidity extends Component { ...@@ -215,9 +214,9 @@ class RemoveLiquidity extends Component {
}); });
const SLIPPAGE = 0.025; const SLIPPAGE = 0.025;
const { value: liquidityBalance, decimals } = getBalance(account, exchangeAddress); const { decimals } = getBalance(account, exchangeAddress);
const { value: ethReserve } = getBalance(exchangeAddress); const { value: ethReserve } = getBalance(exchangeAddress);
const { value: tokenReserve, label, decimals: reserveDecimals } = getBalance(exchangeAddress, tokenAddress); const { value: tokenReserve, label } = getBalance(exchangeAddress, tokenAddress);
const ethPer = ethReserve.dividedBy(totalSupply); const ethPer = ethReserve.dividedBy(totalSupply);
const tokenPer = tokenReserve.dividedBy(totalSupply); const tokenPer = tokenReserve.dividedBy(totalSupply);
...@@ -377,7 +376,7 @@ class RemoveLiquidity extends Component { ...@@ -377,7 +376,7 @@ class RemoveLiquidity extends Component {
/> />
<OversizedPanel> <OversizedPanel>
<div className="swap__down-arrow-background"> <div className="swap__down-arrow-background">
<img className="swap__down-arrow" src={isValid ? ArrowDownBlue : ArrowDownGrey} /> <img className="swap__down-arrow" src={isValid ? ArrowDownBlue : ArrowDownGrey} alt='arrow' />
</div> </div>
</OversizedPanel> </OversizedPanel>
{ this.renderOutput() } { this.renderOutput() }
...@@ -401,7 +400,7 @@ class RemoveLiquidity extends Component { ...@@ -401,7 +400,7 @@ class RemoveLiquidity extends Component {
export default connect( export default connect(
state => ({ state => ({
isConnected: Boolean(state.web3connect.account) && state.web3connect.networkId == (process.env.REACT_APP_NETWORK_ID||1), isConnected: Boolean(state.web3connect.account) && state.web3connect.networkId === (process.env.REACT_APP_NETWORK_ID||1),
web3: state.web3connect.web3, web3: state.web3connect.web3,
balances: state.web3connect.balances, balances: state.web3connect.balances,
account: state.web3connect.account, account: state.web3connect.account,
......
...@@ -11,8 +11,6 @@ import AddressInputPanel from '../../components/AddressInputPanel'; ...@@ -11,8 +11,6 @@ import AddressInputPanel from '../../components/AddressInputPanel';
import CurrencyInputPanel from '../../components/CurrencyInputPanel'; import CurrencyInputPanel from '../../components/CurrencyInputPanel';
import ContextualInfo from '../../components/ContextualInfo'; import ContextualInfo from '../../components/ContextualInfo';
import OversizedPanel from '../../components/OversizedPanel'; import OversizedPanel from '../../components/OversizedPanel';
import DropdownBlue from "../../assets/images/dropdown-blue.svg";
import DropupBlue from "../../assets/images/dropup-blue.svg";
import ArrowDownBlue from '../../assets/images/arrow-down-blue.svg'; import ArrowDownBlue from '../../assets/images/arrow-down-blue.svg';
import ArrowDownGrey from '../../assets/images/arrow-down-grey.svg'; import ArrowDownGrey from '../../assets/images/arrow-down-grey.svg';
import { getBlockDeadline } from '../../helpers/web3-utils'; import { getBlockDeadline } from '../../helpers/web3-utils';
...@@ -586,7 +584,6 @@ class Send extends Component { ...@@ -586,7 +584,6 @@ class Send extends Component {
outputValue, outputValue,
outputCurrency, outputCurrency,
recipient, recipient,
inputAmountB,
lastEditedField, lastEditedField,
} = this.state; } = this.state;
const { t, selectors, account } = this.props; const { t, selectors, account } = this.props;
...@@ -600,10 +597,10 @@ class Send extends Component { ...@@ -600,10 +597,10 @@ class Send extends Component {
const TOKEN_ALLOWED_SLIPPAGE = 0.04; const TOKEN_ALLOWED_SLIPPAGE = 0.04;
const type = getSendType(inputCurrency, outputCurrency); const type = getSendType(inputCurrency, outputCurrency);
const { label: inputLabel, decimals: inputDecimals } = selectors().getBalance(account, inputCurrency); const { label: inputLabel } = selectors().getBalance(account, inputCurrency);
const { label: outputLabel, decimals: outputDecimals } = selectors().getBalance(account, outputCurrency); const { label: outputLabel } = selectors().getBalance(account, outputCurrency);
const label = lastEditedField === INPUT ? outputLabel : inputLabel; // const label = lastEditedField === INPUT ? outputLabel : inputLabel;
let minOutput; let minOutput;
let maxInput; let maxInput;
...@@ -749,7 +746,7 @@ class Send extends Component { ...@@ -749,7 +746,7 @@ class Send extends Component {
/> />
<OversizedPanel> <OversizedPanel>
<div className="swap__down-arrow-background"> <div className="swap__down-arrow-background">
<img onClick={this.flipInputOutput} className="swap__down-arrow swap__down-arrow--clickable" src={isValid ? ArrowDownBlue : ArrowDownGrey} /> <img onClick={this.flipInputOutput} className="swap__down-arrow swap__down-arrow--clickable" alt='arrow' src={isValid ? ArrowDownBlue : ArrowDownGrey} />
</div> </div>
</OversizedPanel> </OversizedPanel>
<CurrencyInputPanel <CurrencyInputPanel
...@@ -766,7 +763,7 @@ class Send extends Component { ...@@ -766,7 +763,7 @@ class Send extends Component {
/> />
<OversizedPanel> <OversizedPanel>
<div className="swap__down-arrow-background"> <div className="swap__down-arrow-background">
<img className="swap__down-arrow" src={isValid ? ArrowDownBlue : ArrowDownGrey} /> <img className="swap__down-arrow" src={isValid ? ArrowDownBlue : ArrowDownGrey} alt='arrow' />
</div> </div>
</OversizedPanel> </OversizedPanel>
<AddressInputPanel <AddressInputPanel
...@@ -796,7 +793,7 @@ class Send extends Component { ...@@ -796,7 +793,7 @@ class Send extends Component {
export default connect( export default connect(
state => ({ state => ({
balances: state.web3connect.balances, balances: state.web3connect.balances,
isConnected: !!state.web3connect.account && state.web3connect.networkId == (process.env.REACT_APP_NETWORK_ID||1), isConnected: !!state.web3connect.account && state.web3connect.networkId === (process.env.REACT_APP_NETWORK_ID||1),
account: state.web3connect.account, account: state.web3connect.account,
web3: state.web3connect.web3, web3: state.web3connect.web3,
exchangeAddresses: state.addresses.exchangeAddresses, exchangeAddresses: state.addresses.exchangeAddresses,
......
...@@ -12,8 +12,6 @@ import NavigationTabs from '../../components/NavigationTabs'; ...@@ -12,8 +12,6 @@ import NavigationTabs from '../../components/NavigationTabs';
import CurrencyInputPanel from '../../components/CurrencyInputPanel'; import CurrencyInputPanel from '../../components/CurrencyInputPanel';
import ContextualInfo from '../../components/ContextualInfo'; import ContextualInfo from '../../components/ContextualInfo';
import OversizedPanel from '../../components/OversizedPanel'; import OversizedPanel from '../../components/OversizedPanel';
import DropdownBlue from "../../assets/images/dropdown-blue.svg";
import DropupBlue from "../../assets/images/dropup-blue.svg";
import ArrowDownBlue from '../../assets/images/arrow-down-blue.svg'; import ArrowDownBlue from '../../assets/images/arrow-down-blue.svg';
import ArrowDownGrey from '../../assets/images/arrow-down-grey.svg'; import ArrowDownGrey from '../../assets/images/arrow-down-grey.svg';
import { getBlockDeadline } from '../../helpers/web3-utils'; import { getBlockDeadline } from '../../helpers/web3-utils';
...@@ -584,10 +582,10 @@ class Swap extends Component { ...@@ -584,10 +582,10 @@ class Swap extends Component {
const TOKEN_ALLOWED_SLIPPAGE = 0.04; const TOKEN_ALLOWED_SLIPPAGE = 0.04;
const type = getSwapType(inputCurrency, outputCurrency); const type = getSwapType(inputCurrency, outputCurrency);
const { label: inputLabel, decimals: inputDecimals } = selectors().getBalance(account, inputCurrency); const { label: inputLabel } = selectors().getBalance(account, inputCurrency);
const { label: outputLabel, decimals: outputDecimals } = selectors().getBalance(account, outputCurrency); const { label: outputLabel } = selectors().getBalance(account, outputCurrency);
const label = lastEditedField === INPUT ? outputLabel : inputLabel; // const label = lastEditedField === INPUT ? outputLabel : inputLabel;
let minOutput; let minOutput;
let maxInput; let maxInput;
...@@ -732,7 +730,7 @@ class Swap extends Component { ...@@ -732,7 +730,7 @@ class Swap extends Component {
/> />
<OversizedPanel> <OversizedPanel>
<div className="swap__down-arrow-background"> <div className="swap__down-arrow-background">
<img onClick={this.flipInputOutput} className="swap__down-arrow swap__down-arrow--clickable" src={isValid ? ArrowDownBlue : ArrowDownGrey} /> <img onClick={this.flipInputOutput} className="swap__down-arrow swap__down-arrow--clickable" alt='swap' src={isValid ? ArrowDownBlue : ArrowDownGrey} />
</div> </div>
</OversizedPanel> </OversizedPanel>
<CurrencyInputPanel <CurrencyInputPanel
...@@ -769,7 +767,7 @@ class Swap extends Component { ...@@ -769,7 +767,7 @@ class Swap extends Component {
export default connect( export default connect(
state => ({ state => ({
balances: state.web3connect.balances, balances: state.web3connect.balances,
isConnected: !!state.web3connect.account && state.web3connect.networkId == (process.env.REACT_APP_NETWORK_ID||1), isConnected: !!state.web3connect.account && state.web3connect.networkId === (process.env.REACT_APP_NETWORK_ID||1),
account: state.web3connect.account, account: state.web3connect.account,
web3: state.web3connect.web3, web3: state.web3connect.web3,
exchangeAddresses: state.addresses.exchangeAddresses, exchangeAddresses: state.addresses.exchangeAddresses,
......
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment