caip
CAIP standard utils
ChainId (CAIP-2)
Object-oriented
import { ChainId } from "caip";
const chainId = new ChainId("eip155:1");
const chainId = new ChainId({ namespace: "eip155", reference: "1" });
chainId.toString();
chainId.toJSON();
Functional
import { ChainId } from "caip";
ChainId.parse("eip155:1");
ChainId.format({ namespace: "eip155", reference: "1" });
AccountId (CAIP-10)
Object-oriented
import { AccountId } from "caip";
const accountId = new AccountId(
"eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"
);
const accountId = new AccountId({
chainId: { namespace: "eip155", reference: "1" },
address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
const accountId = new AccountId({
chainId: "eip155:1",
address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
accountId.toString();
accountId.toJSON();
Functional
import { AccountId } from "caip";
AccountId.parse("eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb");
AccountId.format({
chainId: { namespace: "eip155", reference: "1" },
address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
AccountId.format({
chainId: "eip155:1",
address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
AssetId (CAIP-19)
Object-oriented
import { AssetId } from "caip";
const assetId = new AssetId(
"eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb/1"
);
const assetId = new AssetId({
chainId: { namespace: "eip155", reference: "1" },
assetName: {
namespace: "erc721",
reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
},
tokenId: "1",
});
const assetId = new AssetId({
chainId: "eip155:1",
assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
tokenId: "1",
});
assetId.toString();
assetId.toJSON();
Functional
import { AssetId } from "caip";
AssetId.parse("eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb/1");
AssetId.format({
chainId: { namespace: "eip155", reference: "1" },
assetName: {
namespace: "erc721",
reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
},
tokenId: "1",
});
AssetId.format({
chainId: "eip155:1",
assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
tokenId: "1",
});
AssetType (CAIP-19)
Object-oriented
import { AssetType } from "caip";
const assetType = new AssetType(
"eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"
);
const assetType = new AssetType({
chainId: { namespace: "eip155", reference: "1" },
assetName: {
namespace: "erc721",
reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
},
});
const assetType = new AssetType({
chainId: "eip155:1",
assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
assetType.toString();
assetType.toJSON();
Functional
import { AssetType } from "caip";
AssetType.parse("eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb");
AssetType.format({
chainId: { namespace: "eip155", reference: "1" },
assetName: {
namespace: "erc721",
reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
},
});
AssetType.format({
chainId: "eip155:1",
assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});