@hyperlane-xyz/sdk
Version:
The official SDK for the Hyperlane Network
27 lines • 1.07 kB
JavaScript
import { CosmWasmClient } from '@cosmjs/cosmwasm-stargate';
import { StargateClient } from '@cosmjs/stargate';
import { CosmosNativeProvider } from '@hyperlane-xyz/cosmos-sdk/runtime';
import { assert } from '@hyperlane-xyz/utils';
import { ProviderType } from '../ProviderType.js';
export const defaultCosmJsProviderBuilder = (rpcUrls) => {
assert(rpcUrls.length > 0, 'No RPC URLs provided');
return {
type: ProviderType.CosmJs,
provider: StargateClient.connect(rpcUrls[0].http),
};
};
export const defaultCosmJsWasmProviderBuilder = (rpcUrls) => {
assert(rpcUrls.length > 0, 'No RPC URLs provided');
return {
type: ProviderType.CosmJsWasm,
provider: CosmWasmClient.connect(rpcUrls[0].http),
};
};
export const defaultCosmJsNativeProviderBuilder = (rpcUrls, network) => {
assert(rpcUrls.length > 0, 'No RPC URLs provided');
return {
type: ProviderType.CosmJsNative,
provider: CosmosNativeProvider.connect(rpcUrls.map((rpc) => rpc.http), network),
};
};
//# sourceMappingURL=cosmos.js.map