#!/usr/bin/env node const assert = require('assert') const _ = require('lodash/fp') // const db = require('../lib/db') const settingsLoader = require('../lib/settings-loader') const schema = require('../lamassu-schema.json') const newFields = [] const DEFAULT_CRYPTO = _.first(_.find(['code', 'cryptoCurrencies'], schema.fields).default) assert(DEFAULT_CRYPTO) Promise.resolve() .then(() => { schema.groups.forEach(group => { return group.fields.forEach(fieldCode => { const field = schema.fields.find(r => r.code === fieldCode) if (!field) throw new Error('No such field: ' + fieldCode) if (_.isNil(field.default)) return if (group.machineScope === 'specific') return const crypto = group.cryptoScope === 'specific' ? DEFAULT_CRYPTO : 'global' return newFields.push({ fieldLocator: { fieldScope: { crypto, machine: 'global' }, code: fieldCode, fieldType: field.fieldType, fieldClass: field.fieldClass }, fieldValue: { fieldType: field.fieldType, value: field.default } }) }) }) return settingsLoader.save(newFields) }) .then(() => { console.log('Success.') process.exit(0) }) .catch(err => { console.error(err) process.exit(1) })