@reown/appkit-common
Version:
The full stack toolkit to build onchain app UX.
38 lines • 1.26 kB
JavaScript
export const ParseUtil = {
validateCaipAddress(address) {
if (address.split(':')?.length !== 3) {
throw new Error('Invalid CAIP Address');
}
return address;
},
parseCaipAddress(caipAddress) {
const parts = caipAddress.split(':');
if (parts.length !== 3) {
throw new Error(`Invalid CAIP-10 address: ${caipAddress}`);
}
const [chainNamespace, chainId, address] = parts;
if (!chainNamespace || !chainId || !address) {
throw new Error(`Invalid CAIP-10 address: ${caipAddress}`);
}
return {
chainNamespace: chainNamespace,
chainId: chainId,
address
};
},
parseCaipNetworkId(caipNetworkId) {
const parts = caipNetworkId.split(':');
if (parts.length !== 2) {
throw new Error(`Invalid CAIP-2 network id: ${caipNetworkId}`);
}
const [chainNamespace, chainId] = parts;
if (!chainNamespace || !chainId) {
throw new Error(`Invalid CAIP-2 network id: ${caipNetworkId}`);
}
return {
chainNamespace: chainNamespace,
chainId: chainId
};
}
};
//# sourceMappingURL=ParseUtil.js.map