Add Kujira chain id
This commit is contained in:
parent
607a339cfb
commit
bb8873ffea
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@certusone/wormhole-sdk",
|
"name": "@certusone/wormhole-sdk",
|
||||||
"version": "0.10.2",
|
"version": "0.10.3",
|
||||||
"description": "SDK for interacting with Wormhole",
|
"description": "SDK for interacting with Wormhole",
|
||||||
"homepage": "https://wormhole.com",
|
"homepage": "https://wormhole.com",
|
||||||
"main": "./lib/cjs/index.js",
|
"main": "./lib/cjs/index.js",
|
||||||
|
|
|
@ -14,14 +14,18 @@ import {
|
||||||
CosmWasmChainId,
|
CosmWasmChainId,
|
||||||
CosmWasmChainName,
|
CosmWasmChainName,
|
||||||
isTerraChain,
|
isTerraChain,
|
||||||
|
CHAIN_ID_KUJIRA,
|
||||||
|
CHAIN_ID_OSMOSIS,
|
||||||
} from "../utils";
|
} from "../utils";
|
||||||
|
|
||||||
export const isNativeDenomInjective = (denom: string) => denom === "inj";
|
export const isNativeDenomInjective = (denom: string) => denom === "inj";
|
||||||
export const isNativeDenomXpla = (denom: string) => denom === "axpla";
|
export const isNativeDenomXpla = (denom: string) => denom === "axpla";
|
||||||
export const isNativeDenomSei = (denom: string) => denom === "usei";
|
export const isNativeDenomSei = (denom: string) => denom === "usei";
|
||||||
export const isNativeDenomWormchain = (denom: string) => denom === "uworm";
|
export const isNativeDenomWormchain = (denom: string) => denom === "uworm";
|
||||||
|
export const isNativeDenomOsmosis = (denom: string) => denom === "uosmo";
|
||||||
export const isNativeDenomCosmosHub = (denom: string) => denom === "uatom";
|
export const isNativeDenomCosmosHub = (denom: string) => denom === "uatom";
|
||||||
export const isNativeDenomEvmos = (denom: string) => denom === "aevmos";
|
export const isNativeDenomEvmos = (denom: string) => denom === "aevmos";
|
||||||
|
export const isNativeDenomKujira = (denom: string) => denom === "ukuji";
|
||||||
|
|
||||||
export function isNativeCosmWasmDenom(
|
export function isNativeCosmWasmDenom(
|
||||||
chainId: CosmWasmChainId,
|
chainId: CosmWasmChainId,
|
||||||
|
@ -33,8 +37,10 @@ export function isNativeCosmWasmDenom(
|
||||||
(chainId === CHAIN_ID_XPLA && isNativeDenomXpla(address)) ||
|
(chainId === CHAIN_ID_XPLA && isNativeDenomXpla(address)) ||
|
||||||
(chainId === CHAIN_ID_SEI && isNativeDenomSei(address)) ||
|
(chainId === CHAIN_ID_SEI && isNativeDenomSei(address)) ||
|
||||||
(chainId === CHAIN_ID_WORMCHAIN && isNativeDenomWormchain(address)) ||
|
(chainId === CHAIN_ID_WORMCHAIN && isNativeDenomWormchain(address)) ||
|
||||||
|
(chainId === CHAIN_ID_OSMOSIS && isNativeDenomOsmosis(address)) ||
|
||||||
(chainId === CHAIN_ID_COSMOSHUB && isNativeDenomCosmosHub(address)) ||
|
(chainId === CHAIN_ID_COSMOSHUB && isNativeDenomCosmosHub(address)) ||
|
||||||
(chainId === CHAIN_ID_EVMOS && isNativeDenomEvmos(address))
|
(chainId === CHAIN_ID_EVMOS && isNativeDenomEvmos(address)) ||
|
||||||
|
(chainId === CHAIN_ID_KUJIRA && isNativeDenomKujira(address))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,7 @@ import {
|
||||||
CHAIN_ID_BTC,
|
CHAIN_ID_BTC,
|
||||||
CHAIN_ID_COSMOSHUB,
|
CHAIN_ID_COSMOSHUB,
|
||||||
CHAIN_ID_EVMOS,
|
CHAIN_ID_EVMOS,
|
||||||
|
CHAIN_ID_KUJIRA,
|
||||||
} from "./consts";
|
} from "./consts";
|
||||||
import { hashLookup } from "./near";
|
import { hashLookup } from "./near";
|
||||||
import { getExternalAddressFromType, isValidAptosType } from "./aptos";
|
import { getExternalAddressFromType, isValidAptosType } from "./aptos";
|
||||||
|
@ -126,6 +127,8 @@ export const tryUint8ArrayToNative = (
|
||||||
throw Error("uint8ArrayToNative: CosmosHub not supported yet.");
|
throw Error("uint8ArrayToNative: CosmosHub not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_EVMOS) {
|
} else if (chainId === CHAIN_ID_EVMOS) {
|
||||||
throw Error("uint8ArrayToNative: Evmos not supported yet.");
|
throw Error("uint8ArrayToNative: Evmos not supported yet.");
|
||||||
|
} else if (chainId === CHAIN_ID_KUJIRA) {
|
||||||
|
throw Error("uint8ArrayToNative: Kujira not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_SUI) {
|
} else if (chainId === CHAIN_ID_SUI) {
|
||||||
throw Error("uint8ArrayToNative: Sui not supported yet.");
|
throw Error("uint8ArrayToNative: Sui not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_APTOS) {
|
} else if (chainId === CHAIN_ID_APTOS) {
|
||||||
|
@ -262,20 +265,22 @@ export const tryNativeToHexString = (
|
||||||
} else if (chainId === CHAIN_ID_NEAR) {
|
} else if (chainId === CHAIN_ID_NEAR) {
|
||||||
return uint8ArrayToHex(arrayify(sha256(Buffer.from(address))));
|
return uint8ArrayToHex(arrayify(sha256(Buffer.from(address))));
|
||||||
} else if (chainId === CHAIN_ID_OSMOSIS) {
|
} else if (chainId === CHAIN_ID_OSMOSIS) {
|
||||||
throw Error("hexToNativeString: Osmosis not supported yet.");
|
throw Error("nativeToHexString: Osmosis not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_COSMOSHUB) {
|
} else if (chainId === CHAIN_ID_COSMOSHUB) {
|
||||||
throw Error("uint8ArrayToNative: CosmosHub not supported yet.");
|
throw Error("nativeToHexString: CosmosHub not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_EVMOS) {
|
} else if (chainId === CHAIN_ID_EVMOS) {
|
||||||
throw Error("uint8ArrayToNative: Evmos not supported yet.");
|
throw Error("nativeToHexString: Evmos not supported yet.");
|
||||||
|
} else if (chainId === CHAIN_ID_KUJIRA) {
|
||||||
|
throw Error("nativeToHexString: Kujira not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_SUI) {
|
} else if (chainId === CHAIN_ID_SUI) {
|
||||||
if (!isValidSuiType(address) && isValidSuiAddress(address)) {
|
if (!isValidSuiType(address) && isValidSuiAddress(address)) {
|
||||||
return uint8ArrayToHex(
|
return uint8ArrayToHex(
|
||||||
zeroPad(arrayify(address, { allowMissingPrefix: true }), 32)
|
zeroPad(arrayify(address, { allowMissingPrefix: true }), 32)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
throw Error("hexToNativeString: Sui types not supported yet.");
|
throw Error("nativeToHexString: Sui types not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_BTC) {
|
} else if (chainId === CHAIN_ID_BTC) {
|
||||||
throw Error("hexToNativeString: Btc not supported yet.");
|
throw Error("nativeToHexString: Btc not supported yet.");
|
||||||
} else if (chainId === CHAIN_ID_APTOS) {
|
} else if (chainId === CHAIN_ID_APTOS) {
|
||||||
if (isValidAptosType(address)) {
|
if (isValidAptosType(address)) {
|
||||||
return getExternalAddressFromType(address);
|
return getExternalAddressFromType(address);
|
||||||
|
@ -285,7 +290,7 @@ export const tryNativeToHexString = (
|
||||||
zeroPad(arrayify(address, { allowMissingPrefix: true }), 32)
|
zeroPad(arrayify(address, { allowMissingPrefix: true }), 32)
|
||||||
);
|
);
|
||||||
} else if (chainId === CHAIN_ID_UNSET) {
|
} else if (chainId === CHAIN_ID_UNSET) {
|
||||||
throw Error("hexToNativeString: Chain id unset");
|
throw Error("nativeToHexString: Chain id unset");
|
||||||
} else {
|
} else {
|
||||||
// If this case is reached
|
// If this case is reached
|
||||||
const _: never = chainId;
|
const _: never = chainId;
|
||||||
|
|
|
@ -34,6 +34,7 @@ export const CHAINS = {
|
||||||
wormchain: 3104,
|
wormchain: 3104,
|
||||||
cosmoshub: 4000,
|
cosmoshub: 4000,
|
||||||
evmos: 4001,
|
evmos: 4001,
|
||||||
|
kujira: 4002,
|
||||||
sepolia: 10002,
|
sepolia: 10002,
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
|
@ -84,6 +85,7 @@ export const CosmWasmChainNames = [
|
||||||
"osmosis",
|
"osmosis",
|
||||||
"evmos",
|
"evmos",
|
||||||
"cosmoshub",
|
"cosmoshub",
|
||||||
|
"kujira",
|
||||||
] as const;
|
] as const;
|
||||||
export type CosmWasmChainName = typeof CosmWasmChainNames[number];
|
export type CosmWasmChainName = typeof CosmWasmChainNames[number];
|
||||||
|
|
||||||
|
@ -292,6 +294,11 @@ const MAINNET = {
|
||||||
token_bridge: undefined,
|
token_bridge: undefined,
|
||||||
nft_bridge: undefined,
|
nft_bridge: undefined,
|
||||||
},
|
},
|
||||||
|
kujira: {
|
||||||
|
core: undefined,
|
||||||
|
token_bridge: undefined,
|
||||||
|
nft_bridge: undefined,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const TESTNET = {
|
const TESTNET = {
|
||||||
|
@ -481,6 +488,11 @@ const TESTNET = {
|
||||||
token_bridge: undefined,
|
token_bridge: undefined,
|
||||||
nft_bridge: undefined,
|
nft_bridge: undefined,
|
||||||
},
|
},
|
||||||
|
kujira: {
|
||||||
|
core: undefined,
|
||||||
|
token_bridge: undefined,
|
||||||
|
nft_bridge: undefined,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const DEVNET = {
|
const DEVNET = {
|
||||||
|
@ -669,6 +681,11 @@ const DEVNET = {
|
||||||
token_bridge: undefined,
|
token_bridge: undefined,
|
||||||
nft_bridge: undefined,
|
nft_bridge: undefined,
|
||||||
},
|
},
|
||||||
|
kujira: {
|
||||||
|
core: undefined,
|
||||||
|
token_bridge: undefined,
|
||||||
|
nft_bridge: undefined,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -745,6 +762,7 @@ export const CHAIN_ID_WORMCHAIN = CHAINS["wormchain"];
|
||||||
export const CHAIN_ID_GATEWAY = CHAIN_ID_WORMCHAIN;
|
export const CHAIN_ID_GATEWAY = CHAIN_ID_WORMCHAIN;
|
||||||
export const CHAIN_ID_COSMOSHUB = CHAINS["cosmoshub"];
|
export const CHAIN_ID_COSMOSHUB = CHAINS["cosmoshub"];
|
||||||
export const CHAIN_ID_EVMOS = CHAINS["evmos"];
|
export const CHAIN_ID_EVMOS = CHAINS["evmos"];
|
||||||
|
export const CHAIN_ID_KUJIRA = CHAINS["kujira"];
|
||||||
export const CHAIN_ID_SEPOLIA = CHAINS["sepolia"];
|
export const CHAIN_ID_SEPOLIA = CHAINS["sepolia"];
|
||||||
|
|
||||||
// This inverts the [[CHAINS]] object so that we can look up a chain by id
|
// This inverts the [[CHAINS]] object so that we can look up a chain by id
|
||||||
|
|
Loading…
Reference in New Issue