fix: improve HoverableTooltip behavior and UX
feat: add market currency selector for exchange 3rd party services
This commit is contained in:
parent
d0573daa74
commit
4427258dd5
26 changed files with 646 additions and 320 deletions
|
|
@ -1,6 +1,10 @@
|
|||
const _ = require('lodash/fp')
|
||||
const { ALL_CRYPTOS } = require('@lamassu/coins')
|
||||
|
||||
const configManager = require('./new-config-manager')
|
||||
const ccxt = require('./plugins/exchange/ccxt')
|
||||
const mockExchange = require('./plugins/exchange/mock-exchange')
|
||||
const accounts = require('./new-admin/config/accounts')
|
||||
|
||||
function lookupExchange (settings, cryptoCode) {
|
||||
const exchange = configManager.getWalletSettings(cryptoCode, settings.config).exchange
|
||||
|
|
@ -45,8 +49,25 @@ function active (settings, cryptoCode) {
|
|||
return !!lookupExchange(settings, cryptoCode)
|
||||
}
|
||||
|
||||
function getMarkets () {
|
||||
const filterExchanges = _.filter(it => it.class === 'exchange')
|
||||
const availableExchanges = _.map(it => it.code, filterExchanges(accounts.ACCOUNT_LIST))
|
||||
|
||||
return _.reduce(
|
||||
(acc, value) =>
|
||||
Promise.all([acc, ccxt.getMarkets(value, ALL_CRYPTOS)])
|
||||
.then(([a, markets]) => Promise.resolve({
|
||||
...a,
|
||||
[value]: markets
|
||||
})),
|
||||
Promise.resolve({}),
|
||||
availableExchanges
|
||||
)
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
buy,
|
||||
sell,
|
||||
active
|
||||
active,
|
||||
getMarkets
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue