Add FIAT_PRICE category to backend config

This commit is contained in:
natsoni
2024-03-10 16:34:43 +01:00
parent ccf1121f19
commit b11164005c
6 changed files with 38 additions and 11 deletions

View File

@@ -36,8 +36,7 @@
"MAX_PUSH_TX_SIZE_WEIGHT": 4000000,
"ALLOW_UNREACHABLE": true,
"PRICE_UPDATES_PER_HOUR": 1,
"MAX_TRACKED_ADDRESSES": 100,
"CURRENCY_API_KEY": "your-api-key-from-freecurrencyapi.com"
"MAX_TRACKED_ADDRESSES": 100
},
"CORE_RPC": {
"HOST": "127.0.0.1",
@@ -156,5 +155,9 @@
"MEMPOOL_SERVICES": {
"API": "https://mempool.space/api",
"ACCELERATIONS": false
},
"FIAT_PRICE": {
"ENABLED": true,
"API_KEY": "your-api-key-from-freecurrencyapi.com"
}
}

View File

@@ -37,8 +37,7 @@
"MAX_PUSH_TX_SIZE_WEIGHT": 4000000,
"ALLOW_UNREACHABLE": true,
"PRICE_UPDATES_PER_HOUR": 1,
"MAX_TRACKED_ADDRESSES": 1,
"CURRENCY_API_KEY": "__MEMPOOL_CURRENCY_API_KEY__"
"MAX_TRACKED_ADDRESSES": 1
},
"CORE_RPC": {
"HOST": "__CORE_RPC_HOST__",
@@ -148,5 +147,9 @@
"ENABLED": false,
"UNIX_SOCKET_PATH": "/tmp/redis.sock",
"BATCH_QUERY_BASE_SIZE": 5000
},
"FIAT_PRICE": {
"ENABLED": true,
"API_KEY": "__MEMPOOL_CURRENCY_API_KEY__"
}
}

View File

@@ -51,7 +51,6 @@ describe('Mempool Backend Config', () => {
ALLOW_UNREACHABLE: true,
PRICE_UPDATES_PER_HOUR: 1,
MAX_TRACKED_ADDRESSES: 1,
CURRENCY_API_KEY: ''
});
expect(config.ELECTRUM).toStrictEqual({ HOST: '127.0.0.1', PORT: 3306, TLS_ENABLED: true });
@@ -153,6 +152,11 @@ describe('Mempool Backend Config', () => {
UNIX_SOCKET_PATH: '',
BATCH_QUERY_BASE_SIZE: 5000,
});
expect(config.FIAT_PRICE).toStrictEqual({
ENABLED: true,
API_KEY: '',
});
});
});

View File

@@ -42,7 +42,6 @@ interface IConfig {
ALLOW_UNREACHABLE: boolean;
PRICE_UPDATES_PER_HOUR: number;
MAX_TRACKED_ADDRESSES: number;
CURRENCY_API_KEY: string;
};
ESPLORA: {
REST_API_URL: string;
@@ -159,6 +158,10 @@ interface IConfig {
UNIX_SOCKET_PATH: string;
BATCH_QUERY_BASE_SIZE: number;
},
FIAT_PRICE: {
ENABLED: boolean;
API_KEY: string;
},
}
const defaults: IConfig = {
@@ -201,7 +204,6 @@ const defaults: IConfig = {
'ALLOW_UNREACHABLE': true,
'PRICE_UPDATES_PER_HOUR': 1,
'MAX_TRACKED_ADDRESSES': 1,
'CURRENCY_API_KEY': '',
},
'ESPLORA': {
'REST_API_URL': 'http://127.0.0.1:3000',
@@ -318,6 +320,10 @@ const defaults: IConfig = {
'UNIX_SOCKET_PATH': '',
'BATCH_QUERY_BASE_SIZE': 5000,
},
'FIAT_PRICE': {
'ENABLED': true,
'API_KEY': '',
},
};
class Config implements IConfig {
@@ -339,6 +345,7 @@ class Config implements IConfig {
REPLICATION: IConfig['REPLICATION'];
MEMPOOL_SERVICES: IConfig['MEMPOOL_SERVICES'];
REDIS: IConfig['REDIS'];
FIAT_PRICE: IConfig['FIAT_PRICE'];
constructor() {
const configs = this.merge(configFromFile, defaults);
@@ -360,6 +367,7 @@ class Config implements IConfig {
this.REPLICATION = configs.REPLICATION;
this.MEMPOOL_SERVICES = configs.MEMPOOL_SERVICES;
this.REDIS = configs.REDIS;
this.FIAT_PRICE = configs.FIAT_PRICE;
}
merge = (...objects: object[]): IConfig => {