mirror of
https://github.com/mempool/mempool.git
synced 2024-11-20 10:21:52 +01:00
51 lines
1.8 KiB
JavaScript
51 lines
1.8 KiB
JavaScript
var https = require('https');
|
|
var fs = require('fs');
|
|
|
|
const CONFIG_FILE_NAME = 'mempool-frontend-config.json';
|
|
let configContent = {};
|
|
|
|
var PATH = 'dist/mempool/browser/en-US/resources/';
|
|
if (process.argv[2] && process.argv[2] === 'dev') {
|
|
PATH = 'src/resources/';
|
|
}
|
|
|
|
try {
|
|
const rawConfig = fs.readFileSync(CONFIG_FILE_NAME);
|
|
configContent = JSON.parse(rawConfig);
|
|
console.log(`${CONFIG_FILE_NAME} file found, using provided config`);
|
|
} catch (e) {
|
|
if (e.code !== 'ENOENT') {
|
|
throw new Error(e);
|
|
} else {
|
|
console.log(`${CONFIG_FILE_NAME} file not found, using default config`);
|
|
}
|
|
}
|
|
|
|
function download(filename, url) {
|
|
https.get(url, (response) => {
|
|
if (response.statusCode < 200 || response.statusCode > 299) {
|
|
throw new Error('HTTP Error ' + response.statusCode + ' while fetching \'' + filename + '\'');
|
|
}
|
|
response.pipe(fs.createWriteStream(filename));
|
|
})
|
|
.on('error', function(e) {
|
|
throw new Error(e);
|
|
});
|
|
}
|
|
|
|
const poolsJsonUrl = 'https://raw.githubusercontent.com/btccom/Blockchain-Known-Pools/master/pools.json';
|
|
let assetsJsonUrl = 'https://raw.githubusercontent.com/mempool/asset_registry_db/master/index.json';
|
|
let assetsMinimalJsonUrl = 'https://raw.githubusercontent.com/mempool/asset_registry_db/master/index.minimal.json';
|
|
|
|
if (configContent.BASE_MODULE && configContent.BASE_MODULE === 'liquid') {
|
|
assetsJsonUrl = 'https://raw.githubusercontent.com/Blockstream/asset_registry_db/master/index.json';
|
|
assetsMinimalJsonUrl = 'https://raw.githubusercontent.com/Blockstream/asset_registry_db/master/index.minimal.json';
|
|
}
|
|
|
|
console.log('Downloading assets');
|
|
download(PATH + 'assets.json', assetsJsonUrl);
|
|
console.log('Downloading assets minimal');
|
|
download(PATH + 'assets.minimal.json', assetsMinimalJsonUrl);
|
|
console.log('Downloading mining pools info');
|
|
download(PATH + 'pools.json', poolsJsonUrl);
|