Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
102 changes: 73 additions & 29 deletions common/src/hedera-modules/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,35 +8,35 @@ export class Environment {
/**
* Mainnet API
*/
public static readonly HEDERA_MAINNET_API: string = 'https://mainnet.mirrornode.hedera.com/api/v1';
public static HEDERA_MAINNET_API: string = 'https://mainnet.mirrornode.hedera.com/api/v1';
/**
* Mainnet message API
*/
public static readonly HEDERA_MAINNET_MESSAGE_API: string = Environment.HEDERA_MAINNET_API + '/topics/messages';
public static HEDERA_MAINNET_MESSAGE_API: string = Environment.HEDERA_MAINNET_API + '/topics/messages';
/**
* Mainnet topic API
*/
public static readonly HEDERA_MAINNET_TOPIC_API: string = Environment.HEDERA_MAINNET_API + '/topics/';
public static HEDERA_MAINNET_TOPIC_API: string = Environment.HEDERA_MAINNET_API + '/topics';
/**
* Mainnet account API
*/
public static readonly HEDERA_MAINNET_ACCOUNT_API: string = Environment.HEDERA_MAINNET_API + '/accounts/';
public static HEDERA_MAINNET_ACCOUNT_API: string = Environment.HEDERA_MAINNET_API + '/accounts';
/**
* Mainnet balances API
*/
public static readonly HEDERA_MAINNET_BALANCES_API: string = Environment.HEDERA_MAINNET_API + '/balances';
public static HEDERA_MAINNET_BALANCES_API: string = Environment.HEDERA_MAINNET_API + '/balances';
/**
* Mainnet contract API
*/
public static readonly HEDERA_MAINNET_CONTRACT_API: string = Environment.HEDERA_MAINNET_API + '/contracts/';
public static HEDERA_MAINNET_CONTRACT_API: string = Environment.HEDERA_MAINNET_API + '/contracts';
/**
* Mainnet tokens API
*/
public static readonly HEDERA_MAINNET_TOKENS_API: string = Environment.HEDERA_MAINNET_API + '/tokens';
public static HEDERA_MAINNET_TOKENS_API: string = Environment.HEDERA_MAINNET_API + '/tokens';
/**
* Mainnet tokens API
*/
public static readonly HEDERA_MAINNET_TRANSACTIONS_API: string = Environment.HEDERA_MAINNET_API + '/transactions';
public static HEDERA_MAINNET_TRANSACTIONS_API: string = Environment.HEDERA_MAINNET_API + '/transactions';

/**
* Testnet API
Expand All @@ -49,19 +49,19 @@ export class Environment {
/**
* Testnet topic API
*/
public static readonly HEDERA_TESTNET_TOPIC_API: string = Environment.HEDERA_TESTNET_API + '/topics/';
public static readonly HEDERA_TESTNET_TOPIC_API: string = Environment.HEDERA_TESTNET_API + '/topics';
/**
* Testnet account API
*/
public static readonly HEDERA_TESTNET_ACCOUNT_API: string = Environment.HEDERA_TESTNET_API + '/accounts/';
public static readonly HEDERA_TESTNET_ACCOUNT_API: string = Environment.HEDERA_TESTNET_API + '/accounts';
/**
* Testnet balances API
*/
public static readonly HEDERA_TESTNET_BALANCES_API: string = Environment.HEDERA_TESTNET_API + '/balances';
/**
* Testnet contract API
*/
public static readonly HEDERA_TESTNET_CONTRACT_API: string = Environment.HEDERA_TESTNET_API + '/contracts/';
public static readonly HEDERA_TESTNET_CONTRACT_API: string = Environment.HEDERA_TESTNET_API + '/contracts';
/**
* Testnet tokens API
*/
Expand All @@ -82,19 +82,19 @@ export class Environment {
/**
* Preview topic API
*/
public static readonly HEDERA_PREVIEW_TOPIC_API: string = Environment.HEDERA_PREVIEW_API + '/topics/';
public static readonly HEDERA_PREVIEW_TOPIC_API: string = Environment.HEDERA_PREVIEW_API + '/topics';
/**
* Preview account API
*/
public static readonly HEDERA_PREVIEW_ACCOUNT_API: string = Environment.HEDERA_PREVIEW_API + '/accounts/';
public static readonly HEDERA_PREVIEW_ACCOUNT_API: string = Environment.HEDERA_PREVIEW_API + '/accounts';
/**
* Preview balances API
*/
public static readonly HEDERA_PREVIEW_BALANCES_API: string = Environment.HEDERA_PREVIEW_API + '/balances';
/**
* Preview contract API
*/
public static readonly HEDERA_PREVIEW_CONTRACT_API: string = Environment.HEDERA_PREVIEW_API + '/contracts/';
public static readonly HEDERA_PREVIEW_CONTRACT_API: string = Environment.HEDERA_PREVIEW_API + '/contracts';
/**
* Preview tokens API
*/
Expand All @@ -115,23 +115,23 @@ export class Environment {
/**
* Localnode topic API
*/
public static HEDERA_LOCALNODE_TOPIC_API: string = Environment.HEDERA_LOCALNODE_API + `/topics/`;
public static HEDERA_LOCALNODE_TOPIC_API: string = Environment.HEDERA_LOCALNODE_API + `/topics`;
/**
* Localnode account API
*/
public static HEDERA_LOCALNODE_ACCOUNT_API: string = Environment.HEDERA_LOCALNODE_API + `/accounts/`;
public static HEDERA_LOCALNODE_ACCOUNT_API: string = Environment.HEDERA_LOCALNODE_API + `/accounts`;
/**
* Localnode balances API
*/
public static HEDERA_LOCALNODE_BALANCES_API: string = Environment.HEDERA_LOCALNODE_API + '/balances';
/**
* Localnode contract API
*/
public static HEDERA_LOCALNODE_CONTRACT_API: string = Environment.HEDERA_LOCALNODE_API + `/contracts/`;
public static HEDERA_LOCALNODE_CONTRACT_API: string = Environment.HEDERA_LOCALNODE_API + `/contracts`;
/**
* Localnode tokens API
*/
public static HEDERA_LOCALNODE_TOKENS_API: string = Environment.HEDERA_LOCALNODE_API + `/tokens/`;
public static HEDERA_LOCALNODE_TOKENS_API: string = Environment.HEDERA_LOCALNODE_API + `/tokens`;
/**
* Localnode tokens API
*/
Expand Down Expand Up @@ -198,6 +198,11 @@ export class Environment {
* @private
*/
private static _mirrorNodes: string[] = [];
/**
* Hedera mirror nodes
* @private
*/
private static _mirrorNodesBaseApi: string = '/api/v1';

/**
* Set network
Expand Down Expand Up @@ -255,27 +260,41 @@ export class Environment {

if (Environment._mirrorNodes && Environment._mirrorNodes.length > 0) {
const mirrornodeUrl = ensurePrefix(Environment._mirrorNodes[0], ['http://', 'https://'], 'https://');
Environment._messagesApi = `${mirrornodeUrl}/api/v1/topics/messages`;
Environment._topicsApi = `${mirrornodeUrl}/api/v1/topics/`;
Environment._accountsApi = `${mirrornodeUrl}/api/v1/accounts/`;
Environment._balancesApi = `${mirrornodeUrl}/api/v1/balances/`;
Environment._contractsApi = `${mirrornodeUrl}/api/v1/contracts/`;
Environment._tokensApi = `${mirrornodeUrl}/api/v1/tokens/`;
Environment._messagesApi = `${mirrornodeUrl}${Environment._mirrorNodesBaseApi}/topics/messages`;
Environment._topicsApi = `${mirrornodeUrl}${Environment._mirrorNodesBaseApi}/topics`;
Environment._accountsApi = `${mirrornodeUrl}${Environment._mirrorNodesBaseApi}/accounts`;
Environment._balancesApi = `${mirrornodeUrl}${Environment._mirrorNodesBaseApi}/balances`;
Environment._contractsApi = `${mirrornodeUrl}${Environment._mirrorNodesBaseApi}/contracts`;
Environment._tokensApi = `${mirrornodeUrl}${Environment._mirrorNodesBaseApi}/tokens`;
}
}

/**
* Set mainnet address
*/
public static setMainnetApiUrl(apiUrl) {
Environment.HEDERA_MAINNET_API = apiUrl;
Environment.HEDERA_MAINNET_MESSAGE_API = Environment.HEDERA_MAINNET_API + '/topics/messages';
Environment.HEDERA_MAINNET_TOPIC_API = Environment.HEDERA_MAINNET_API + '/topics';
Environment.HEDERA_MAINNET_ACCOUNT_API = Environment.HEDERA_MAINNET_API + '/accounts';
Environment.HEDERA_MAINNET_BALANCES_API = Environment.HEDERA_MAINNET_API + '/balances';
Environment.HEDERA_MAINNET_CONTRACT_API = Environment.HEDERA_MAINNET_API + '/contracts';
Environment.HEDERA_MAINNET_TOKENS_API = Environment.HEDERA_MAINNET_API + '/tokens';
Environment.HEDERA_MAINNET_TRANSACTIONS_API = Environment.HEDERA_MAINNET_API + '/transactions';
}

/**
* Set localnode address
*/
public static setLocalNodeAddress(address) {
Environment._localnodeaddress = address || 'localhost';
Environment.HEDERA_LOCALNODE_API = `${Environment._localnodeprotocol}://${Environment._localnodeaddress}:5551/api/v1`;
Environment.HEDERA_LOCALNODE_MESSAGE_API = Environment.HEDERA_LOCALNODE_API + `/topics/messages`;
Environment.HEDERA_LOCALNODE_TOPIC_API = Environment.HEDERA_LOCALNODE_API + `/topics/`;
Environment.HEDERA_LOCALNODE_ACCOUNT_API = Environment.HEDERA_LOCALNODE_API + `/accounts/`;
Environment.HEDERA_LOCALNODE_TOPIC_API = Environment.HEDERA_LOCALNODE_API + `/topics`;
Environment.HEDERA_LOCALNODE_ACCOUNT_API = Environment.HEDERA_LOCALNODE_API + `/accounts`;
Environment.HEDERA_LOCALNODE_BALANCES_API = Environment.HEDERA_LOCALNODE_API + `/balances`;
Environment.HEDERA_LOCALNODE_CONTRACT_API = Environment.HEDERA_LOCALNODE_API + `/contracts/`;
Environment.HEDERA_LOCALNODE_TOKENS_API = Environment.HEDERA_LOCALNODE_API + `/tokens/`;
Environment.HEDERA_LOCALNODE_CONTRACT_API = Environment.HEDERA_LOCALNODE_API + `/contracts`;
Environment.HEDERA_LOCALNODE_TOKENS_API = Environment.HEDERA_LOCALNODE_API + `/tokens`;
}

/**
Expand All @@ -301,6 +320,24 @@ export class Environment {
Environment._mirrorNodes = mirrorNodes;
}

/**
* Set hedera mirror nodes base api
* @param baseApi Base api
*/
public static setMirrorNodesBaseApi(baseApi: string = '') {
let api = baseApi;

if (api.length > 0 && !api.startsWith('/')) {
api = '/' + api;
}

if (api.endsWith('/') && api.length > 1) {
api = api.slice(0, -1);
}

Environment._mirrorNodesBaseApi = api;
}

/**
* Create client
*/
Expand Down Expand Up @@ -427,4 +464,11 @@ export class Environment {
public static get mirrorNodes(): string[] {
return Environment._mirrorNodes;
}
}

/**
* Mirror nodes
*/
public static get mirrorNodesBaseApi(): string {
return Environment._mirrorNodesBaseApi;
}
}
9 changes: 9 additions & 0 deletions common/src/helpers/workers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,9 @@ export class Workers extends NatsService {
if (!task.data.mirrorNodes) {
task.data.mirrorNodes = Environment.mirrorNodes;
}
if (!task.data.mirrorNodesBaseApi) {
task.data.mirrorNodesBaseApi = Environment.mirrorNodesBaseApi;
}
if (!task.data.localNodeAddress) {
task.data.localNodeAddress = Environment.localNodeAddress;
}
Expand Down Expand Up @@ -194,6 +197,9 @@ export class Workers extends NatsService {
if (!task.data.mirrorNodes) {
task.data.mirrorNodes = Environment.mirrorNodes;
}
if (!task.data.mirrorNodesBaseApi) {
task.data.mirrorNodesBaseApi = Environment.mirrorNodesBaseApi;
}
if (!task.data.localNodeAddress) {
task.data.localNodeAddress = Environment.localNodeAddress;
}
Expand Down Expand Up @@ -476,6 +482,9 @@ export class Workers extends NatsService {
if (!task.data.mirrorNodes) {
task.data.mirrorNodes = Environment.mirrorNodes;
}
if (!task.data.mirrorNodesBaseApi) {
task.data.mirrorNodesBaseApi = Environment.mirrorNodesBaseApi;
}
if (!task.data.localNodeAddress) {
task.data.localNodeAddress = Environment.localNodeAddress;
}
Expand Down
15 changes: 9 additions & 6 deletions configs/.env..guardian.system
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,18 @@ RETIRE_SINGLE_FILE_ID="0.0.6371651"
RETIRE_DOUBLE_FILE_ID="0.0.6371652"
MAX_HEDERA_TIMEOUT="600"

# OVERRIDE_NETWORK_CONFIGURATION="true" # if true, the OVERRIDE configurations will be applied on top of the base configuration defined by the HEDERA_NET value
# Mainnet
# HEDERA_CUSTOM_NODES={"35.237.200.180:50211":"0.0.3"}
# HEDERA_CUSTOM_NODES={"35.237.200.180:50211":"0.0.3","35.186.191.247:50211":"0.0.4","35.192.2.25:50211":"0.0.5","35.199.161.108:50211":"0.0.6","35.203.82.240:50211":"0.0.7","35.236.5.219:50211":"0.0.8","35.197.192.225:50211":"0.0.9","35.242.233.154:50211":"0.0.10","35.240.118.96:50211":"0.0.11","35.204.86.32:50211":"0.0.12","35.234.132.107:50211":"0.0.13","35.236.2.27:50211":"0.0.14","35.228.11.53:50211":"0.0.15","34.91.181.183:50211":"0.0.16","34.86.212.247:50211":"0.0.17","172.105.247.67:50211":"0.0.18","34.89.87.138:50211":"0.0.19","34.82.78.255:50211":"0.0.20","34.76.140.109:50211":"0.0.21","34.64.141.166:50211":"0.0.22","35.232.244.145:50211":"0.0.23","34.89.103.38:50211":"0.0.24","34.93.112.7:50211":"0.0.25","34.87.150.174:50211":"0.0.26","34.125.200.96:50211":"0.0.27","35.198.220.75:50211":"0.0.28","34.142.71.129:50211":"0.0.29","35.234.249.150:50211":"0.0.30","34.107.78.179:50211":"0.0.31"}
# HEDERA_CUSTOM_MIRROR_NODES=["mainnet-public.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_CONSENSUS_NODES={"35.237.200.180:50211":"0.0.3"}
# OVERRIDE_HEDERA_CONSENSUS_NODES={"35.237.200.180:50211":"0.0.3","35.186.191.247:50211":"0.0.4","35.192.2.25:50211":"0.0.5","35.199.161.108:50211":"0.0.6","35.203.82.240:50211":"0.0.7","35.236.5.219:50211":"0.0.8","35.197.192.225:50211":"0.0.9","35.242.233.154:50211":"0.0.10","35.240.118.96:50211":"0.0.11","35.204.86.32:50211":"0.0.12","35.234.132.107:50211":"0.0.13","35.236.2.27:50211":"0.0.14","35.228.11.53:50211":"0.0.15","34.91.181.183:50211":"0.0.16","34.86.212.247:50211":"0.0.17","172.105.247.67:50211":"0.0.18","34.89.87.138:50211":"0.0.19","34.82.78.255:50211":"0.0.20","34.76.140.109:50211":"0.0.21","34.64.141.166:50211":"0.0.22","35.232.244.145:50211":"0.0.23","34.89.103.38:50211":"0.0.24","34.93.112.7:50211":"0.0.25","34.87.150.174:50211":"0.0.26","34.125.200.96:50211":"0.0.27","35.198.220.75:50211":"0.0.28","34.142.71.129:50211":"0.0.29","35.234.249.150:50211":"0.0.30","34.107.78.179:50211":"0.0.31"}
# OVERRIDE_HEDERA_MIRROR_NODES=["mainnet-public.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_MIRROR_NODES_BASE_API="/api/v1"

# Testnet
# HEDERA_CUSTOM_NODES={"0.testnet.hedera.com:50211":"0.0.3"}
# HEDERA_CUSTOM_NODES={"0.testnet.hedera.com:50211":"0.0.3", "1.testnet.hedera.com:50211":"0.0.4", "2.testnet.hedera.com:50211":"0.0.5", "3.testnet.hedera.com:50211":"0.0.6", "4.testnet.hedera.com:50211":"0.0.7", "5.testnet.hedera.com:50211":"0.0.8", "6.testnet.hedera.com:50211":"0.0.9"}
# HEDERA_CUSTOM_MIRROR_NODES=["testnet.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_CONSENSUS_NODES={"0.testnet.hedera.com:50211":"0.0.3"}
# OVERRIDE_HEDERA_CONSENSUS_NODES={"0.testnet.hedera.com:50211":"0.0.3", "1.testnet.hedera.com:50211":"0.0.4", "2.testnet.hedera.com:50211":"0.0.5", "3.testnet.hedera.com:50211":"0.0.6", "4.testnet.hedera.com:50211":"0.0.7", "5.testnet.hedera.com:50211":"0.0.8", "6.testnet.hedera.com:50211":"0.0.9"}
# OVERRIDE_HEDERA_MIRROR_NODES=["testnet.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_MIRROR_NODES_BASE_API="/api/v1"


# MAX_TRANSACTION_FEE="10"
Expand Down
16 changes: 10 additions & 6 deletions configs/.env.develop.guardian.system
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,19 @@ RETIRE_SINGLE_FILE_ID="0.0.6371651"
RETIRE_DOUBLE_FILE_ID="0.0.6371652"
MAX_HEDERA_TIMEOUT="600"

# OVERRIDE_NETWORK_CONFIGURATION="true" # if true, the OVERRIDE configurations will be applied on top of the base configuration defined by the HEDERA_NET value
# Mainnet
# HEDERA_CUSTOM_NODES={"35.237.200.180:50211":"0.0.3"}
# HEDERA_CUSTOM_NODES={"35.237.200.180:50211":"0.0.3","35.186.191.247:50211":"0.0.4","35.192.2.25:50211":"0.0.5","35.199.161.108:50211":"0.0.6","35.203.82.240:50211":"0.0.7","35.236.5.219:50211":"0.0.8","35.197.192.225:50211":"0.0.9","35.242.233.154:50211":"0.0.10","35.240.118.96:50211":"0.0.11","35.204.86.32:50211":"0.0.12","35.234.132.107:50211":"0.0.13","35.236.2.27:50211":"0.0.14","35.228.11.53:50211":"0.0.15","34.91.181.183:50211":"0.0.16","34.86.212.247:50211":"0.0.17","172.105.247.67:50211":"0.0.18","34.89.87.138:50211":"0.0.19","34.82.78.255:50211":"0.0.20","34.76.140.109:50211":"0.0.21","34.64.141.166:50211":"0.0.22","35.232.244.145:50211":"0.0.23","34.89.103.38:50211":"0.0.24","34.93.112.7:50211":"0.0.25","34.87.150.174:50211":"0.0.26","34.125.200.96:50211":"0.0.27","35.198.220.75:50211":"0.0.28","34.142.71.129:50211":"0.0.29","35.234.249.150:50211":"0.0.30","34.107.78.179:50211":"0.0.31"}
# HEDERA_CUSTOM_MIRROR_NODES=["mainnet-public.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_CONSENSUS_NODES={"35.237.200.180:50211":"0.0.3"}
# OVERRIDE_HEDERA_CONSENSUS_NODES={"35.237.200.180:50211":"0.0.3","35.186.191.247:50211":"0.0.4","35.192.2.25:50211":"0.0.5","35.199.161.108:50211":"0.0.6","35.203.82.240:50211":"0.0.7","35.236.5.219:50211":"0.0.8","35.197.192.225:50211":"0.0.9","35.242.233.154:50211":"0.0.10","35.240.118.96:50211":"0.0.11","35.204.86.32:50211":"0.0.12","35.234.132.107:50211":"0.0.13","35.236.2.27:50211":"0.0.14","35.228.11.53:50211":"0.0.15","34.91.181.183:50211":"0.0.16","34.86.212.247:50211":"0.0.17","172.105.247.67:50211":"0.0.18","34.89.87.138:50211":"0.0.19","34.82.78.255:50211":"0.0.20","34.76.140.109:50211":"0.0.21","34.64.141.166:50211":"0.0.22","35.232.244.145:50211":"0.0.23","34.89.103.38:50211":"0.0.24","34.93.112.7:50211":"0.0.25","34.87.150.174:50211":"0.0.26","34.125.200.96:50211":"0.0.27","35.198.220.75:50211":"0.0.28","34.142.71.129:50211":"0.0.29","35.234.249.150:50211":"0.0.30","34.107.78.179:50211":"0.0.31"}
# OVERRIDE_HEDERA_MIRROR_NODES=["mainnet-public.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_MIRROR_NODES_BASE_API="/api/v1"

# Testnet
# HEDERA_CUSTOM_NODES={"0.testnet.hedera.com:50211":"0.0.3"}
# HEDERA_CUSTOM_NODES={"0.testnet.hedera.com:50211":"0.0.3", "1.testnet.hedera.com:50211":"0.0.4", "2.testnet.hedera.com:50211":"0.0.5", "3.testnet.hedera.com:50211":"0.0.6", "4.testnet.hedera.com:50211":"0.0.7", "5.testnet.hedera.com:50211":"0.0.8", "6.testnet.hedera.com:50211":"0.0.9"}
# HEDERA_CUSTOM_MIRROR_NODES=["testnet.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_CONSENSUS_NODES={"0.testnet.hedera.com:50211":"0.0.3"}
# OVERRIDE_HEDERA_CONSENSUS_NODES={"0.testnet.hedera.com:50211":"0.0.3", "1.testnet.hedera.com:50211":"0.0.4", "2.testnet.hedera.com:50211":"0.0.5", "3.testnet.hedera.com:50211":"0.0.6", "4.testnet.hedera.com:50211":"0.0.7", "5.testnet.hedera.com:50211":"0.0.8", "6.testnet.hedera.com:50211":"0.0.9"}
# OVERRIDE_HEDERA_MIRROR_NODES=["testnet.mirrornode.hedera.com:443"]
# OVERRIDE_HEDERA_MIRROR_NODES_BASE_API="/api/v1"


# MAX_TRANSACTION_FEE="10"

Expand Down
Loading
Loading