Commit d5643469 authored by Chi Kei Chan's avatar Chi Kei Chan

Fix exchange rate calc

parent 22b6c0b0
...@@ -46,7 +46,6 @@ const initialState = { ...@@ -46,7 +46,6 @@ const initialState = {
const TOKEN_LABEL_FALLBACK = { const TOKEN_LABEL_FALLBACK = {
'0x89d24A6b4CcB1B6fAA2625fE562bDD9a23260359': 'DAI', '0x89d24A6b4CcB1B6fAA2625fE562bDD9a23260359': 'DAI',
'0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2': 'MKR', '0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2': 'MKR',
'0x9B913956036a3462330B0642B20D3879ce68b450': 'BAT + ETH'
}; };
// selectors // selectors
...@@ -101,7 +100,7 @@ export const selectors = () => (dispatch, getState) => { ...@@ -101,7 +100,7 @@ export const selectors = () => (dispatch, getState) => {
}; };
}; };
const Balance = (value, label = '', decimals = 18) => ({ const Balance = (value, label = '', decimals = 0) => ({
value: BN(value), value: BN(value),
label: label.toUpperCase(), label: label.toUpperCase(),
decimals: +decimals, decimals: +decimals,
......
...@@ -201,8 +201,8 @@ class Send extends Component { ...@@ -201,8 +201,8 @@ class Send extends Component {
outputReserve: outputReserveB, outputReserve: outputReserveB,
}); });
const exchangeRate = outputAmountB.dividedBy(inputAmountA);
const outputValue = outputAmountB.dividedBy(BN(10 ** outputDecimalsB)).toFixed(7); const outputValue = outputAmountB.dividedBy(BN(10 ** outputDecimalsB)).toFixed(7);
const exchangeRate = BN(outputValue).dividedBy(BN(oldInputValue));
const appendState = {}; const appendState = {};
...@@ -241,10 +241,10 @@ class Send extends Component { ...@@ -241,10 +241,10 @@ class Send extends Component {
outputReserve: outputReserveA, outputReserve: outputReserveA,
}); });
const exchangeRate = outputAmountB.dividedBy(inputAmountA);
const inputValue = inputAmountA.isNegative() const inputValue = inputAmountA.isNegative()
? 'N/A' ? 'N/A'
: inputAmountA.dividedBy(BN(10 ** inputDecimalsA)).toFixed(7); : inputAmountA.dividedBy(BN(10 ** inputDecimalsA)).toFixed(7);
const exchangeRate = BN(oldOutputValue).dividedBy(BN(inputValue));
const appendState = {}; const appendState = {};
...@@ -298,8 +298,8 @@ class Send extends Component { ...@@ -298,8 +298,8 @@ class Send extends Component {
const inputAmount = BN(oldInputValue).multipliedBy(10 ** inputDecimals); const inputAmount = BN(oldInputValue).multipliedBy(10 ** inputDecimals);
const outputAmount = calculateEtherTokenOutput({ inputAmount, inputReserve, outputReserve }); const outputAmount = calculateEtherTokenOutput({ inputAmount, inputReserve, outputReserve });
const exchangeRate = outputAmount.dividedBy(inputAmount);
const outputValue = outputAmount.dividedBy(BN(10 ** outputDecimals)).toFixed(7); const outputValue = outputAmount.dividedBy(BN(10 ** outputDecimals)).toFixed(7);
const exchangeRate = BN(outputValue).dividedBy(BN(oldInputValue));
const appendState = {}; const appendState = {};
...@@ -322,10 +322,10 @@ class Send extends Component { ...@@ -322,10 +322,10 @@ class Send extends Component {
const outputAmount = BN(oldOutputValue).multipliedBy(10 ** outputDecimals); const outputAmount = BN(oldOutputValue).multipliedBy(10 ** outputDecimals);
const inputAmount = calculateEtherTokenInput({ outputAmount, inputReserve, outputReserve }); const inputAmount = calculateEtherTokenInput({ outputAmount, inputReserve, outputReserve });
const exchangeRate = outputAmount.dividedBy(inputAmount);
const inputValue = inputAmount.isNegative() const inputValue = inputAmount.isNegative()
? 'N/A' ? 'N/A'
: inputAmount.dividedBy(BN(10 ** inputDecimals)).toFixed(7); : inputAmount.dividedBy(BN(10 ** inputDecimals)).toFixed(7);
const exchangeRate = BN(oldOutputValue).dividedBy(BN(inputValue));
const appendState = {}; const appendState = {};
...@@ -711,7 +711,6 @@ class Send extends Component { ...@@ -711,7 +711,6 @@ class Send extends Component {
const { value: inputBalance, decimals: inputDecimals } = selectors().getBalance(account, inputCurrency); const { value: inputBalance, decimals: inputDecimals } = selectors().getBalance(account, inputCurrency);
const { value: outputBalance, decimals: outputDecimals } = selectors().getBalance(account, outputCurrency); const { value: outputBalance, decimals: outputDecimals } = selectors().getBalance(account, outputCurrency);
const { inputError, outputError, isValid } = this.validate(); const { inputError, outputError, isValid } = this.validate();
return ( return (
......
...@@ -197,8 +197,8 @@ class Swap extends Component { ...@@ -197,8 +197,8 @@ class Swap extends Component {
outputReserve: outputReserveB, outputReserve: outputReserveB,
}); });
const exchangeRate = outputAmountB.dividedBy(inputAmountA);
const outputValue = outputAmountB.dividedBy(BN(10 ** outputDecimalsB)).toFixed(7); const outputValue = outputAmountB.dividedBy(BN(10 ** outputDecimalsB)).toFixed(7);
const exchangeRate = BN(outputValue).dividedBy(BN(oldInputValue));
const appendState = {}; const appendState = {};
...@@ -237,10 +237,10 @@ class Swap extends Component { ...@@ -237,10 +237,10 @@ class Swap extends Component {
outputReserve: outputReserveA, outputReserve: outputReserveA,
}); });
const exchangeRate = outputAmountB.dividedBy(inputAmountA);
const inputValue = inputAmountA.isNegative() const inputValue = inputAmountA.isNegative()
? 'N/A' ? 'N/A'
: inputAmountA.dividedBy(BN(10 ** inputDecimalsA)).toFixed(7); : inputAmountA.dividedBy(BN(10 ** inputDecimalsA)).toFixed(7);
const exchangeRate = BN(oldOutputValue).dividedBy(BN(inputValue));
const appendState = {}; const appendState = {};
...@@ -294,8 +294,8 @@ class Swap extends Component { ...@@ -294,8 +294,8 @@ class Swap extends Component {
const inputAmount = BN(oldInputValue).multipliedBy(10 ** inputDecimals); const inputAmount = BN(oldInputValue).multipliedBy(10 ** inputDecimals);
const outputAmount = calculateEtherTokenOutput({ inputAmount, inputReserve, outputReserve }); const outputAmount = calculateEtherTokenOutput({ inputAmount, inputReserve, outputReserve });
const exchangeRate = outputAmount.dividedBy(inputAmount);
const outputValue = outputAmount.dividedBy(BN(10 ** outputDecimals)).toFixed(7); const outputValue = outputAmount.dividedBy(BN(10 ** outputDecimals)).toFixed(7);
const exchangeRate = BN(outputValue).dividedBy(BN(oldInputValue));
const appendState = {}; const appendState = {};
...@@ -318,10 +318,10 @@ class Swap extends Component { ...@@ -318,10 +318,10 @@ class Swap extends Component {
const outputAmount = BN(oldOutputValue).multipliedBy(10 ** outputDecimals); const outputAmount = BN(oldOutputValue).multipliedBy(10 ** outputDecimals);
const inputAmount = calculateEtherTokenInput({ outputAmount, inputReserve, outputReserve }); const inputAmount = calculateEtherTokenInput({ outputAmount, inputReserve, outputReserve });
const exchangeRate = outputAmount.dividedBy(inputAmount);
const inputValue = inputAmount.isNegative() const inputValue = inputAmount.isNegative()
? 'N/A' ? 'N/A'
: inputAmount.dividedBy(BN(10 ** inputDecimals)).toFixed(7); : inputAmount.dividedBy(BN(10 ** inputDecimals)).toFixed(7);
const exchangeRate = BN(oldOutputValue).dividedBy(BN(inputValue));
const appendState = {}; const appendState = {};
......
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