From 5ee40675b9f986a9ff2e5d15a271d7de2145d0e9 Mon Sep 17 00:00:00 2001 From: Alexander Tseung Date: Mon, 30 Jul 2018 22:03:20 -0700 Subject: Refactor transactions list views. Add redesign components --- ui/app/selectors.js | 62 ++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 47 insertions(+), 15 deletions(-) (limited to 'ui/app/selectors.js') diff --git a/ui/app/selectors.js b/ui/app/selectors.js index d86462275..1b0100297 100644 --- a/ui/app/selectors.js +++ b/ui/app/selectors.js @@ -1,5 +1,9 @@ -const valuesFor = require('./util').valuesFor const abi = require('human-standard-token-abi') +import { createSelector } from 'reselect' + +import { + transactionsSelector, +} from './selectors/transactions' const { multiplyCurrencies, @@ -101,21 +105,49 @@ function getCurrentAccountWithSendEtherInfo (state) { return accounts.find(({ address }) => address === currentAddress) } -function transactionsSelector (state) { - const { network, selectedTokenAddress } = state.metamask - const unapprovedMsgs = valuesFor(state.metamask.unapprovedMsgs) - const shapeShiftTxList = (network === '1') ? state.metamask.shapeShiftTxList : undefined - const transactions = state.metamask.selectedAddressTxList || [] - const txsToRender = !shapeShiftTxList ? transactions.concat(unapprovedMsgs) : transactions.concat(unapprovedMsgs, shapeShiftTxList) +// // function shapeShiftTxListSelector (state) { +// // return state.metamask.shapeShiftTxList || [] +// // } + +// const transactionsSelector = createSelector( +// selectedTokenAddressSelector, +// unapprovedMsgsSelector, +// shapeShiftTxListSelector, +// selectedAddressTxListSelector, +// (selectedTokenAddress, unapprovedMsgs = {}, shapeShiftTxList = [], transactions = []) => { +// const unapprovedMsgsList = valuesFor(unapprovedMsgs) +// const txsToRender = transactions.concat(unapprovedMsgsList, shapeShiftTxList) + +// return selectedTokenAddress +// ? txsToRender +// .filter(({ txParams }) => txParams && txParams.to === selectedTokenAddress) +// .sort((a, b) => b.time - a.time) +// : txsToRender +// .sort((a, b) => b.time - a.time) +// } +// ) + +// // function transactionsSelector (state) { +// // const { selectedTokenAddress } = state.metamask +// // const unapprovedMsgs = valuesFor(state.metamask.unapprovedMsgs) +// // const shapeShiftTxList = shapeShiftTxListSelector(state) +// // const transactions = state.metamask.selectedAddressTxList || [] +// // const txsToRender = transactions.concat(unapprovedMsgs, shapeShiftTxList) + +// // return selectedTokenAddress +// // ? txsToRender +// // .filter(({ txParams }) => txParams && txParams.to === selectedTokenAddress) +// // .sort((a, b) => b.time - a.time) +// // : txsToRender +// // .sort((a, b) => b.time - a.time) +// // } + +export const pendingTransactionsSelector = createSelector( + transactionsSelector, + transactions => { - // console.log({txsToRender, selectedTokenAddress}) - return selectedTokenAddress - ? txsToRender - .filter(({ txParams }) => txParams && txParams.to === selectedTokenAddress) - .sort((a, b) => b.time - a.time) - : txsToRender - .sort((a, b) => b.time - a.time) -} + } +) function getGasIsLoading (state) { return state.appState.gasIsLoading -- cgit From 33a94332e48b280fcf4c9fb23aa4d349eaa8a54d Mon Sep 17 00:00:00 2001 From: Alexander Tseung Date: Sun, 5 Aug 2018 22:25:58 -0700 Subject: Show token amounts in TransactionListItem for token transfers --- ui/app/selectors.js | 45 --------------------------------------------- 1 file changed, 45 deletions(-) (limited to 'ui/app/selectors.js') diff --git a/ui/app/selectors.js b/ui/app/selectors.js index 1b0100297..1d5f4d4cb 100644 --- a/ui/app/selectors.js +++ b/ui/app/selectors.js @@ -1,5 +1,4 @@ const abi = require('human-standard-token-abi') -import { createSelector } from 'reselect' import { transactionsSelector, @@ -105,50 +104,6 @@ function getCurrentAccountWithSendEtherInfo (state) { return accounts.find(({ address }) => address === currentAddress) } -// // function shapeShiftTxListSelector (state) { -// // return state.metamask.shapeShiftTxList || [] -// // } - -// const transactionsSelector = createSelector( -// selectedTokenAddressSelector, -// unapprovedMsgsSelector, -// shapeShiftTxListSelector, -// selectedAddressTxListSelector, -// (selectedTokenAddress, unapprovedMsgs = {}, shapeShiftTxList = [], transactions = []) => { -// const unapprovedMsgsList = valuesFor(unapprovedMsgs) -// const txsToRender = transactions.concat(unapprovedMsgsList, shapeShiftTxList) - -// return selectedTokenAddress -// ? txsToRender -// .filter(({ txParams }) => txParams && txParams.to === selectedTokenAddress) -// .sort((a, b) => b.time - a.time) -// : txsToRender -// .sort((a, b) => b.time - a.time) -// } -// ) - -// // function transactionsSelector (state) { -// // const { selectedTokenAddress } = state.metamask -// // const unapprovedMsgs = valuesFor(state.metamask.unapprovedMsgs) -// // const shapeShiftTxList = shapeShiftTxListSelector(state) -// // const transactions = state.metamask.selectedAddressTxList || [] -// // const txsToRender = transactions.concat(unapprovedMsgs, shapeShiftTxList) - -// // return selectedTokenAddress -// // ? txsToRender -// // .filter(({ txParams }) => txParams && txParams.to === selectedTokenAddress) -// // .sort((a, b) => b.time - a.time) -// // : txsToRender -// // .sort((a, b) => b.time - a.time) -// // } - -export const pendingTransactionsSelector = createSelector( - transactionsSelector, - transactions => { - - } -) - function getGasIsLoading (state) { return state.appState.gasIsLoading } -- cgit From 07cb6adc314e645cc0429c696afab9738673a729 Mon Sep 17 00:00:00 2001 From: Esteban MIno Date: Wed, 29 Aug 2018 23:13:25 -0300 Subject: fix images for watched tokens --- ui/app/selectors.js | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'ui/app/selectors.js') diff --git a/ui/app/selectors.js b/ui/app/selectors.js index 1d5f4d4cb..484705b1f 100644 --- a/ui/app/selectors.js +++ b/ui/app/selectors.js @@ -14,6 +14,7 @@ const selectors = { getSelectedAccount, getSelectedToken, getSelectedTokenExchangeRate, + getSelectedTokenAssetImage, getTokenExchangeRate, conversionRateSelector, transactionsSelector, @@ -71,6 +72,13 @@ function getSelectedTokenExchangeRate (state) { return contractExchangeRates[address] || 0 } +function getSelectedTokenAssetImage (state) { + const assetImages = state.metamask.assetImages + const selectedToken = getSelectedToken(state) || {} + const { address } = selectedToken + return assetImages[address] +} + function getTokenExchangeRate (state, address) { const contractExchangeRates = state.metamask.contractExchangeRates return contractExchangeRates[address] || 0 -- cgit From c8e5068537b6f0fa0f68752f246058d2c24cb4b8 Mon Sep 17 00:00:00 2001 From: Esteban MIno Date: Thu, 30 Aug 2018 13:51:57 -0300 Subject: fix watched tokens images showing in tx list --- ui/app/selectors.js | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'ui/app/selectors.js') diff --git a/ui/app/selectors.js b/ui/app/selectors.js index 484705b1f..18d6709f7 100644 --- a/ui/app/selectors.js +++ b/ui/app/selectors.js @@ -15,6 +15,7 @@ const selectors = { getSelectedToken, getSelectedTokenExchangeRate, getSelectedTokenAssetImage, + getAssetImages, getTokenExchangeRate, conversionRateSelector, transactionsSelector, @@ -79,6 +80,11 @@ function getSelectedTokenAssetImage (state) { return assetImages[address] } +function getAssetImages (state) { + const assetImages = state.metamask.assetImages + return assetImages +} + function getTokenExchangeRate (state, address) { const contractExchangeRates = state.metamask.contractExchangeRates return contractExchangeRates[address] || 0 -- cgit From 63397047cf8ec1941dfebcec12b8d02dcb6508f2 Mon Sep 17 00:00:00 2001 From: Esteban MIno Date: Thu, 30 Aug 2018 15:09:59 -0300 Subject: fix integration test for asset images selectors --- ui/app/selectors.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'ui/app/selectors.js') diff --git a/ui/app/selectors.js b/ui/app/selectors.js index 18d6709f7..fb4517628 100644 --- a/ui/app/selectors.js +++ b/ui/app/selectors.js @@ -74,14 +74,14 @@ function getSelectedTokenExchangeRate (state) { } function getSelectedTokenAssetImage (state) { - const assetImages = state.metamask.assetImages + const assetImages = state.metamask.assetImages || {} const selectedToken = getSelectedToken(state) || {} const { address } = selectedToken return assetImages[address] } function getAssetImages (state) { - const assetImages = state.metamask.assetImages + const assetImages = state.metamask.assetImages || {} return assetImages } -- cgit