diff --git a/clients/validator/src/index.ts b/clients/validator/src/index.ts index 5ed0cde383..ff227a5d01 100644 --- a/clients/validator/src/index.ts +++ b/clients/validator/src/index.ts @@ -64,15 +64,23 @@ export default class ValidatorClient implements INymClient { readonly vestingContract: string; + readonly mainnetDenom = "unym"; + + readonly mainnetPrefix = "n"; + private constructor( client: SigningClient | QueryClient, prefix: string, mixnetContract: string, - vestingContract: string, + vestingContract: string ) { this.client = client; this.prefix = prefix; - this.denom = `u${prefix}`; + if (prefix == this.mainnetPrefix) { + this.denom = this.mainnetDenom; + } else { + this.denom = `u${prefix}`; + } this.mixnetContract = mixnetContract; this.vestingContract = vestingContract; diff --git a/clients/validator/src/stargate-helper.ts b/clients/validator/src/stargate-helper.ts index 168d8d9a3c..768ff8a8e4 100644 --- a/clients/validator/src/stargate-helper.ts +++ b/clients/validator/src/stargate-helper.ts @@ -1,8 +1,19 @@ import axios from 'axios'; import { GasPrice } from '@cosmjs/stargate'; +const mainnetPrefix = 'n'; +const mainnetDenom = 'nym'; + export function nymGasPrice(prefix: string): GasPrice { - return GasPrice.fromString(`0.025u${prefix}`); // TODO: ideally this ugly conversion shouldn't be hardcoded here. + if (typeof prefix === 'string') { + if (prefix === mainnetPrefix) { + prefix = mainnetDenom; + } + return GasPrice.fromString(`0.025u${prefix}`); // TODO: ideally this ugly conversion shouldn't be hardcoded here. + } + else { + throw new Error(`${prefix} is not of type string`); + } } export const downloadWasm = async (url: string): Promise => {