@vechain/vebetterdao-contracts
Version:
Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.
40 lines (39 loc) • 1.27 kB
JavaScript
export * from "./type";
import { createLocalConfig } from "./envs/local";
import { createTestnetStagingConfig } from "./envs/testnetStaging";
import { createE2EConfig } from "./envs/e2e";
import { createTestnetConfig } from "./envs/testnet";
import { createMainnetConfig } from "./envs/mainnet";
export const AppEnv = {
LOCAL: "local",
E2E: "e2e",
TESTNET_STAGING: "testnet-staging",
TESTNET: "testnet",
MAINNET: "mainnet",
};
export const EnvConfigValues = Object.values(AppEnv);
export function getContractsConfig(env) {
switch (env) {
case AppEnv.LOCAL:
return createLocalConfig();
case AppEnv.E2E:
return createE2EConfig();
case AppEnv.TESTNET_STAGING:
return createTestnetStagingConfig();
case AppEnv.TESTNET:
return createTestnetConfig();
case AppEnv.MAINNET:
return createMainnetConfig();
default:
throw new Error(`Invalid ENV "${env}"`);
}
}
export function shouldEndorseXApps() {
return process.env.ENDORSE_XAPPS === "true";
}
export function shouldNotUpgradeContracts() {
return process.env.DO_NOT_UPGRADE === "true";
}
export function isE2E() {
return process.env.NEXT_PUBLIC_APP_ENV == "e2e";
}