lamassu-server/packages/server/migrations/1732874039534-market-currency.js
2025-12-31 19:04:13 +01:00

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()
}