36 lines
1 KiB
JavaScript
36 lines
1 KiB
JavaScript
const _ = require('lodash/fp')
|
|
const { loadAccounts, saveAccounts } = require('./settings')
|
|
const { ACCOUNT_LIST } = require('../lib/new-admin/config/accounts')
|
|
const { ALL } = require('../lib/plugins/common/ccxt')
|
|
|
|
exports.up = function (next) {
|
|
return loadAccounts()
|
|
.then(accounts => {
|
|
const allExchanges = _.map(it => it.code)(
|
|
_.filter(it => it.class === 'exchange', ACCOUNT_LIST),
|
|
)
|
|
const configuredExchanges = _.intersection(allExchanges, _.keys(accounts))
|
|
|
|
const newAccounts = _.reduce(
|
|
(acc, value) => {
|
|
if (!_.isNil(accounts[value].currencyMarket)) return acc
|
|
if (_.includes('EUR', ALL[value].FIAT))
|
|
return { ...acc, [value]: { currencyMarket: 'EUR' } }
|
|
return {
|
|
...acc,
|
|
[value]: { currencyMarket: ALL[value].DEFAULT_FIAT_CURRENCY },
|
|
}
|
|
},
|
|
{},
|
|
configuredExchanges,
|
|
)
|
|
|
|
return saveAccounts(newAccounts)
|
|
})
|
|
.then(next)
|
|
.catch(next)
|
|
}
|
|
|
|
module.exports.down = function (next) {
|
|
next()
|
|
}
|