All files / config serverConstants.ts

100% Statements 8/8
100% Branches 0/0
100% Functions 1/1
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 595x 5x                                           5x                                                           5x 15x 15x 15x    
import { polygon, polygonAmoy } from "viem/chains";
import { configStore } from "./configStore";
 
export type EnvMode = "test" | "preProd" | "prod";
export type constantsAll =
  | "INSURANCE_POOL_ADDRESS"
  | "COMBO_PREMIUM_CALCULATOR_ADDRESS"
  | "SINGLE_PREMIUM_CALCULATOR_ADDRESS"
  | "TOKEN_ADDRESS"
  | "POLYGON_CHAIN"
  | "POLICY_MANAGER_ADDRESS"
  | "BASE_URL";
 
type Config = {
  INSURANCE_POOL_ADDRESS: string;
  COMBO_PREMIUM_CALCULATOR_ADDRESS: string;
  SINGLE_PREMIUM_CALCULATOR_ADDRESS: string;
  TOKEN_ADDRESS: string;
  POLYGON_CHAIN: typeof polygon | typeof polygonAmoy;
  BASE_URL: string;
  POLICY_MANAGER_ADDRESS: string;
};
 
export const CONSTANTS: Record<EnvMode, Config> = {
  test: {
    INSURANCE_POOL_ADDRESS: `0x34A07094A4e49A1cc745438Ba5aa033f2579DAAE`,
    COMBO_PREMIUM_CALCULATOR_ADDRESS: `0x516264651565970da1526D83184a29F58B80800E`,
    SINGLE_PREMIUM_CALCULATOR_ADDRESS: `0x0ADeD494115DEdB1EF1BA144e83c6580548BFf33`,
    TOKEN_ADDRESS: "0x683026Eb1b912795E4Eb1e73Da7e38C3F2f830c4",
    POLYGON_CHAIN: polygonAmoy,
    BASE_URL: `https://offchain-testnet.kohin.xyz/`,
    POLICY_MANAGER_ADDRESS: `0xaaB9d1d8B41c295Ce252bCCDB7182133FE1c8041`,
  },
  preProd: {
    INSURANCE_POOL_ADDRESS: `0x3E1D72AEF1034787F55371987488334Fe94d7bF3`,
    COMBO_PREMIUM_CALCULATOR_ADDRESS: `0x99c60c076BcdEA43F3154f1D5581C894b9a172a5`,
    SINGLE_PREMIUM_CALCULATOR_ADDRESS: `0x7cD561e020f6f558b79067F5E13C32589f0C6ef6`,
    TOKEN_ADDRESS: "0xc2132D05D31c914a87C6611C10748AEb04B58e8F",
    POLYGON_CHAIN: polygon,
    BASE_URL: `https://offchain-preprod.kohin.xyz/`,
    POLICY_MANAGER_ADDRESS: `0x7fb21e5126Ec2fb847d28480F654b026490d1D12`,
  },
  prod: {
    INSURANCE_POOL_ADDRESS: `0xd1A9e1C2C0D0E7459fdae16a94aDB08d8c6321A5`,
    COMBO_PREMIUM_CALCULATOR_ADDRESS: `0xEd2051dc499F41e421B26Cd148f5BED3DB792d1B`,
    SINGLE_PREMIUM_CALCULATOR_ADDRESS: "",
    TOKEN_ADDRESS: "0xc2132D05D31c914a87C6611C10748AEb04B58e8F",
    POLYGON_CHAIN: polygon,
    BASE_URL: `https://offchain-prod.kohin.xyz/`,
    POLICY_MANAGER_ADDRESS: `0xE2fd078C28410d7D3F3daeF56795aD8507B1Ed81`,
  },
};
 
export const getEnvConstant = (address: constantsAll) => {
  const envMode = configStore?.getEnvMode() as EnvMode;
  const result = CONSTANTS[envMode][address];
  return result;
};