1.1.1 • Published 8 months ago

caip v1.1.1

Weekly downloads
2,081
License
MIT
Repository
github
Last release
8 months ago

caip npm version

CAIP standard utils

ChainId (CAIP-2)

Object-oriented

import { ChainId } from "caip";

const chainId = new ChainId("eip155:1");

// OR

const chainId = new ChainId({ namespace: "eip155", reference: "1" });

// THEN

chainId.toString();
// "eip155:1"

chainId.toJSON();
// { namespace: "eip155", reference: "1" }

Functional

import { ChainId } from "caip";

ChainId.parse("eip155:1");
// { namespace: "eip155", reference: "1" }

// AND

ChainId.format({ namespace: "eip155", reference: "1" });
// "eip155:1"

AccountId (CAIP-10)

Object-oriented

import { AccountId } from "caip";

const accountId = new AccountId(
  "eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"
);

// OR

const accountId = new AccountId({
  chainId: { namespace: "eip155", reference: "1" },
  address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});

// ALSO

const accountId = new AccountId({
  chainId: "eip155:1",
  address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});

// THEN

accountId.toString();
// "eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"

accountId.toJSON();
// { address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb", chainId: { namespace: "eip155", reference: "1" } }

Functional

import { AccountId } from "caip";

AccountId.parse("eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb");
// { address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb", chainId: { namespace: "eip155", reference: "1" } }

// AND

AccountId.format({
  chainId: { namespace: "eip155", reference: "1" },
  address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
//"eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"

// OR

AccountId.format({
  chainId: "eip155:1",
  address: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
//"eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"

AssetId (CAIP-19)

Object-oriented

import { AssetId } from "caip";

const assetId = new AssetId(
  "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb/1"
);

// OR

const assetId = new AssetId({
  chainId: { namespace: "eip155", reference: "1" },
  assetName: {
    namespace: "erc721",
    reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
  },
  tokenId: "1",
});

// ALSO

const assetId = new AssetId({
  chainId: "eip155:1",
  assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
  tokenId: "1",
});

// THEN

assetId.toString();
// "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb/1"

assetId.toJSON();
// {
//   chainId: { namespace: "eip155", reference: "1" },
//   assetName: { namespace: "erc721", reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb" },
//   tokenId: "1",
// }

Functional

import { AssetId } from "caip";

AssetId.parse("eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb/1");
// {
//   chainId: { namespace: "eip155", reference: "1" },
//   assetName: { namespace: "erc721", reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb" },
//   tokenId: "1",
// }

// AND

AssetId.format({
  chainId: { namespace: "eip155", reference: "1" },
  assetName: {
    namespace: "erc721",
    reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
  },
  tokenId: "1",
});
// "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb/1"

// OR

AssetId.format({
  chainId: "eip155:1",
  assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
  tokenId: "1",
});
// "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb/1"

AssetType (CAIP-19)

Object-oriented

import { AssetType } from "caip";

const assetType = new AssetType(
  "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"
);

// OR

const assetType = new AssetType({
  chainId: { namespace: "eip155", reference: "1" },
  assetName: {
    namespace: "erc721",
    reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
  },
});

// ALSO

const assetType = new AssetType({
  chainId: "eip155:1",
  assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});

// THEN

assetType.toString();
// "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"

assetType.toJSON();
// {
//   chainId: { namespace: "eip155", reference: "1" },
//   assetName: { namespace: "erc721", reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb" },
// }

Functional

import { AssetType } from "caip";

AssetType.parse("eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb");
// {
//   chainId: { namespace: "eip155", reference: "1" },
//   assetName: { namespace: "erc721", reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb" },
// }

// AND

AssetType.format({
  chainId: { namespace: "eip155", reference: "1" },
  assetName: {
    namespace: "erc721",
    reference: "0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
  },
});
// "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"

// OR

AssetType.format({
  chainId: "eip155:1",
  assetName: "erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb",
});
// "eip155:1/erc721:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb"
@iqprotocolmock/abstract-blockchain@everything-registry/sub-chunk-1284safe-did-resolvervess-sdkpkh-did-resolverpkh-pkpnft-did-resolver@alexkeating/core@akashaorg/core-sdk@blockchain-lab-um/ssi-snap@civic/pkh-did-resolver@ceramicnetwork/stream-caip10-link@ceramicnetwork/account-template@ceramicnetwork/common@ceramic-sdk/test-utils@ceramicnetwork/doctype-caip10-link@ceramicstudio/idx@ceramicstudio/multiauth@ceramicnetwork/blockchain-utils-linking@ceramicnetwork/blockchain-utils-validation@3id/did-manager@3id/manager@3id/window-auth-provider3id-blockchain-utils3id-connect3id-connect-codingsh@didtools/cacao@didtools/key-webauthn@didtools/pkh-ethereum@didtools/pkh-solana@didtools/pkh-stacks@didtools/pkh-tezos@dustil/blockchain-utils-linking@dustil/blockchain-utils-validation@dustil/common@dustil/stream-caip10-link@hashchat/js-hashchat@geo-web/content@iqprotocol/discovery@iqprotocol/eip155@iqprotocol/enterprise@iqprotocol/iq-space-sdk-js@iqprotocol/multiverse@iqprotocol/abstract-blockchain@iqprotocol/account@nikaru-dev/provider-walletconnect-2@mixobitc/common@mixobitc/sats@mixobitc/satwallet@rango-dev/provider-walletconnect-2@rango-dev/wallets-core@saonetwork/common@saonetwork/sid@saonetwork/toolkits@openibex/chain@openibex/ethereum@self.id/core@self.id/multiauth@star2020/vector-utils@composedb/graphql-scalars@daemon-land/3id-connect@connext/vector-utils@desci-labs/nodes-lib@cambrianprotocol/blockchain-utils-linking@cambrianprotocol/blockchain-utils-validation@cambrianprotocol/common@cambrianprotocol/stream-caip10-link@zalastax/nolb-cai@xgm/godmode@yojikita/mvu-identify@yeager-dev/provider-walletconnect-2@ukstv/3id-blockchain-utils@universusgame/sdk-js@veramo/did-provider-pkh@vessel-kit/anchoring@tuum-tech/identify@tuum-tech/identity-snapdid-safe-resolverdid-sessioncaip-apicaip-walletceramic-cacaofilecoin-link
1.1.1

8 months ago

1.1.0

3 years ago

1.1.0-beta.1

3 years ago

1.1.0-beta.0

3 years ago

1.0.0

3 years ago

1.0.0-beta.0

3 years ago

0.9.0

5 years ago

0.9.2

4 years ago

0.9.1

5 years ago

0.8.0

5 years ago

0.7.0

5 years ago

0.6.0

5 years ago

0.5.0

5 years ago

0.4.0

5 years ago

0.3.0

5 years ago

0.2.0

5 years ago

0.1.0

5 years ago