@mysten/sui 0.0.0-experimental-20240529040124
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +905 -0
- package/LICENSE +201 -0
- package/README.md +520 -0
- package/bcs/package.json +6 -0
- package/client/package.json +6 -0
- package/cryptography/package.json +6 -0
- package/dist/cjs/bcs/bcs.d.ts +2283 -0
- package/dist/cjs/bcs/bcs.js +306 -0
- package/dist/cjs/bcs/bcs.js.map +7 -0
- package/dist/cjs/bcs/effects.d.ts +793 -0
- package/dist/cjs/bcs/effects.js +203 -0
- package/dist/cjs/bcs/effects.js.map +7 -0
- package/dist/cjs/bcs/index.d.ts +3081 -0
- package/dist/cjs/bcs/index.js +73 -0
- package/dist/cjs/bcs/index.js.map +7 -0
- package/dist/cjs/bcs/type-tag-serializer.d.ts +6 -0
- package/dist/cjs/bcs/type-tag-serializer.js +113 -0
- package/dist/cjs/bcs/type-tag-serializer.js.map +7 -0
- package/dist/cjs/bcs/types.d.ts +114 -0
- package/dist/cjs/bcs/types.js +27 -0
- package/dist/cjs/bcs/types.js.map +7 -0
- package/dist/cjs/client/client.d.ts +229 -0
- package/dist/cjs/client/client.js +582 -0
- package/dist/cjs/client/client.js.map +7 -0
- package/dist/cjs/client/errors.d.ts +12 -0
- package/dist/cjs/client/errors.js +60 -0
- package/dist/cjs/client/errors.js.map +7 -0
- package/dist/cjs/client/http-transport.d.ts +40 -0
- package/dist/cjs/client/http-transport.js +125 -0
- package/dist/cjs/client/http-transport.js.map +7 -0
- package/dist/cjs/client/index.d.ts +5 -0
- package/dist/cjs/client/index.js +36 -0
- package/dist/cjs/client/index.js.map +7 -0
- package/dist/cjs/client/network.d.ts +1 -0
- package/dist/cjs/client/network.js +38 -0
- package/dist/cjs/client/network.js.map +7 -0
- package/dist/cjs/client/rpc-websocket-client.d.ts +49 -0
- package/dist/cjs/client/rpc-websocket-client.js +206 -0
- package/dist/cjs/client/rpc-websocket-client.js.map +7 -0
- package/dist/cjs/client/types/chain.d.ts +99 -0
- package/dist/cjs/client/types/chain.js +17 -0
- package/dist/cjs/client/types/chain.js.map +7 -0
- package/dist/cjs/client/types/changes.d.ts +19 -0
- package/dist/cjs/client/types/changes.js +17 -0
- package/dist/cjs/client/types/changes.js.map +7 -0
- package/dist/cjs/client/types/coins.d.ts +6 -0
- package/dist/cjs/client/types/coins.js +17 -0
- package/dist/cjs/client/types/coins.js.map +7 -0
- package/dist/cjs/client/types/common.d.ts +2 -0
- package/dist/cjs/client/types/common.js +17 -0
- package/dist/cjs/client/types/common.js.map +7 -0
- package/dist/cjs/client/types/generated.d.ts +1376 -0
- package/dist/cjs/client/types/generated.js +17 -0
- package/dist/cjs/client/types/generated.js.map +7 -0
- package/dist/cjs/client/types/index.d.ts +6 -0
- package/dist/cjs/client/types/index.js +24 -0
- package/dist/cjs/client/types/index.js.map +7 -0
- package/dist/cjs/client/types/params.d.ts +585 -0
- package/dist/cjs/client/types/params.js +17 -0
- package/dist/cjs/client/types/params.js.map +7 -0
- package/dist/cjs/cryptography/index.d.ts +7 -0
- package/dist/cjs/cryptography/index.js +47 -0
- package/dist/cjs/cryptography/index.js.map +7 -0
- package/dist/cjs/cryptography/intent.d.ts +6 -0
- package/dist/cjs/cryptography/intent.js +35 -0
- package/dist/cjs/cryptography/intent.js.map +7 -0
- package/dist/cjs/cryptography/keypair.d.ts +63 -0
- package/dist/cjs/cryptography/keypair.js +105 -0
- package/dist/cjs/cryptography/keypair.js.map +7 -0
- package/dist/cjs/cryptography/mnemonics.d.ts +27 -0
- package/dist/cjs/cryptography/mnemonics.js +47 -0
- package/dist/cjs/cryptography/mnemonics.js.map +7 -0
- package/dist/cjs/cryptography/publickey.d.ts +56 -0
- package/dist/cjs/cryptography/publickey.js +112 -0
- package/dist/cjs/cryptography/publickey.js.map +7 -0
- package/dist/cjs/cryptography/signature-scheme.d.ts +21 -0
- package/dist/cjs/cryptography/signature-scheme.js +45 -0
- package/dist/cjs/cryptography/signature-scheme.js.map +7 -0
- package/dist/cjs/cryptography/signature.d.ts +60 -0
- package/dist/cjs/cryptography/signature.js +75 -0
- package/dist/cjs/cryptography/signature.js.map +7 -0
- package/dist/cjs/faucet/faucet.d.ts +42 -0
- package/dist/cjs/faucet/faucet.js +103 -0
- package/dist/cjs/faucet/faucet.js.map +7 -0
- package/dist/cjs/faucet/index.d.ts +1 -0
- package/dist/cjs/faucet/index.js +29 -0
- package/dist/cjs/faucet/index.js.map +7 -0
- package/dist/cjs/graphql/client.d.ts +42 -0
- package/dist/cjs/graphql/client.js +93 -0
- package/dist/cjs/graphql/client.js.map +7 -0
- package/dist/cjs/graphql/generated/2024-01/tada-env.d.js +17 -0
- package/dist/cjs/graphql/generated/2024-01/tada-env.d.js.map +7 -0
- package/dist/cjs/graphql/generated/2024.1/tada-env.d.js +17 -0
- package/dist/cjs/graphql/generated/2024.1/tada-env.d.js.map +7 -0
- package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js +12 -0
- package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js.map +7 -0
- package/dist/cjs/graphql/generated/2024.4/tada-env.d.js +17 -0
- package/dist/cjs/graphql/generated/2024.4/tada-env.d.js.map +7 -0
- package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js +12 -0
- package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js.map +7 -0
- package/dist/cjs/graphql/index.d.ts +1 -0
- package/dist/cjs/graphql/index.js +26 -0
- package/dist/cjs/graphql/index.js.map +7 -0
- package/dist/cjs/graphql/schemas/2024.1/index.d.ts +8971 -0
- package/dist/cjs/graphql/schemas/2024.1/index.js +31 -0
- package/dist/cjs/graphql/schemas/2024.1/index.js.map +7 -0
- package/dist/cjs/graphql/schemas/2024.4/index.d.ts +8995 -0
- package/dist/cjs/graphql/schemas/2024.4/index.js +31 -0
- package/dist/cjs/graphql/schemas/2024.4/index.js.map +7 -0
- package/dist/cjs/graphql/types.d.ts +70 -0
- package/dist/cjs/graphql/types.js +17 -0
- package/dist/cjs/graphql/types.js.map +7 -0
- package/dist/cjs/keypairs/ed25519/ed25519-hd-key.d.ts +13 -0
- package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js +101 -0
- package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js.map +7 -0
- package/dist/cjs/keypairs/ed25519/index.d.ts +2 -0
- package/dist/cjs/keypairs/ed25519/index.js +28 -0
- package/dist/cjs/keypairs/ed25519/index.js.map +7 -0
- package/dist/cjs/keypairs/ed25519/keypair.d.ts +74 -0
- package/dist/cjs/keypairs/ed25519/keypair.js +151 -0
- package/dist/cjs/keypairs/ed25519/keypair.js.map +7 -0
- package/dist/cjs/keypairs/ed25519/publickey.d.ts +30 -0
- package/dist/cjs/keypairs/ed25519/publickey.js +99 -0
- package/dist/cjs/keypairs/ed25519/publickey.js.map +7 -0
- package/dist/cjs/keypairs/secp256k1/index.d.ts +2 -0
- package/dist/cjs/keypairs/secp256k1/index.js +28 -0
- package/dist/cjs/keypairs/secp256k1/index.js.map +7 -0
- package/dist/cjs/keypairs/secp256k1/keypair.d.ts +73 -0
- package/dist/cjs/keypairs/secp256k1/keypair.js +143 -0
- package/dist/cjs/keypairs/secp256k1/keypair.js.map +7 -0
- package/dist/cjs/keypairs/secp256k1/publickey.d.ts +30 -0
- package/dist/cjs/keypairs/secp256k1/publickey.js +94 -0
- package/dist/cjs/keypairs/secp256k1/publickey.js.map +7 -0
- package/dist/cjs/keypairs/secp256r1/index.d.ts +2 -0
- package/dist/cjs/keypairs/secp256r1/index.js +28 -0
- package/dist/cjs/keypairs/secp256r1/index.js.map +7 -0
- package/dist/cjs/keypairs/secp256r1/keypair.d.ts +73 -0
- package/dist/cjs/keypairs/secp256r1/keypair.js +137 -0
- package/dist/cjs/keypairs/secp256r1/keypair.js.map +7 -0
- package/dist/cjs/keypairs/secp256r1/publickey.d.ts +30 -0
- package/dist/cjs/keypairs/secp256r1/publickey.js +94 -0
- package/dist/cjs/keypairs/secp256r1/publickey.js.map +7 -0
- package/dist/cjs/multisig/index.d.ts +2 -0
- package/dist/cjs/multisig/index.js +28 -0
- package/dist/cjs/multisig/index.js.map +7 -0
- package/dist/cjs/multisig/publickey.d.ts +110 -0
- package/dist/cjs/multisig/publickey.js +260 -0
- package/dist/cjs/multisig/publickey.js.map +7 -0
- package/dist/cjs/multisig/signer.d.ts +19 -0
- package/dist/cjs/multisig/signer.js +115 -0
- package/dist/cjs/multisig/signer.js.map +7 -0
- package/dist/cjs/package.json +5 -0
- package/dist/cjs/transactions/Commands.d.ts +110 -0
- package/dist/cjs/transactions/Commands.js +140 -0
- package/dist/cjs/transactions/Commands.js.map +7 -0
- package/dist/cjs/transactions/Inputs.d.ts +22 -0
- package/dist/cjs/transactions/Inputs.js +80 -0
- package/dist/cjs/transactions/Inputs.js.map +7 -0
- package/dist/cjs/transactions/ObjectCache.d.ts +85 -0
- package/dist/cjs/transactions/ObjectCache.js +246 -0
- package/dist/cjs/transactions/ObjectCache.js.map +7 -0
- package/dist/cjs/transactions/Transaction.d.ts +672 -0
- package/dist/cjs/transactions/Transaction.js +459 -0
- package/dist/cjs/transactions/Transaction.js.map +7 -0
- package/dist/cjs/transactions/TransactionData.d.ts +64 -0
- package/dist/cjs/transactions/TransactionData.js +249 -0
- package/dist/cjs/transactions/TransactionData.js.map +7 -0
- package/dist/cjs/transactions/__tests__/Transaction.test.d.ts +1 -0
- package/dist/cjs/transactions/__tests__/bcs.test.d.ts +1 -0
- package/dist/cjs/transactions/data/internal.d.ts +2689 -0
- package/dist/cjs/transactions/data/internal.js +210 -0
- package/dist/cjs/transactions/data/internal.js.map +7 -0
- package/dist/cjs/transactions/data/v1.d.ts +1839 -0
- package/dist/cjs/transactions/data/v1.js +440 -0
- package/dist/cjs/transactions/data/v1.js.map +7 -0
- package/dist/cjs/transactions/data/v2.d.ts +450 -0
- package/dist/cjs/transactions/data/v2.js +123 -0
- package/dist/cjs/transactions/data/v2.js.map +7 -0
- package/dist/cjs/transactions/executor/caching.d.ts +29 -0
- package/dist/cjs/transactions/executor/caching.js +109 -0
- package/dist/cjs/transactions/executor/caching.js.map +7 -0
- package/dist/cjs/transactions/executor/parallel.d.ts +22 -0
- package/dist/cjs/transactions/executor/parallel.js +316 -0
- package/dist/cjs/transactions/executor/parallel.js.map +7 -0
- package/dist/cjs/transactions/executor/queue.d.ts +11 -0
- package/dist/cjs/transactions/executor/queue.js +92 -0
- package/dist/cjs/transactions/executor/queue.js.map +7 -0
- package/dist/cjs/transactions/executor/serial.d.ts +27 -0
- package/dist/cjs/transactions/executor/serial.js +140 -0
- package/dist/cjs/transactions/executor/serial.js.map +7 -0
- package/dist/cjs/transactions/hash.d.ts +7 -0
- package/dist/cjs/transactions/hash.js +32 -0
- package/dist/cjs/transactions/hash.js.map +7 -0
- package/dist/cjs/transactions/index.d.ts +13 -0
- package/dist/cjs/transactions/index.js +47 -0
- package/dist/cjs/transactions/index.js.map +7 -0
- package/dist/cjs/transactions/intents/CoinWithBalance.d.ts +6 -0
- package/dist/cjs/transactions/intents/CoinWithBalance.js +168 -0
- package/dist/cjs/transactions/intents/CoinWithBalance.js.map +7 -0
- package/dist/cjs/transactions/json-rpc-resolver.d.ts +12 -0
- package/dist/cjs/transactions/json-rpc-resolver.js +353 -0
- package/dist/cjs/transactions/json-rpc-resolver.js.map +7 -0
- package/dist/cjs/transactions/pure.d.ts +185 -0
- package/dist/cjs/transactions/pure.js +41 -0
- package/dist/cjs/transactions/pure.js.map +7 -0
- package/dist/cjs/transactions/serializer.d.ts +7 -0
- package/dist/cjs/transactions/serializer.js +176 -0
- package/dist/cjs/transactions/serializer.js.map +7 -0
- package/dist/cjs/transactions/utils.d.ts +8 -0
- package/dist/cjs/transactions/utils.js +66 -0
- package/dist/cjs/transactions/utils.js.map +7 -0
- package/dist/cjs/utils/constants.d.ts +9 -0
- package/dist/cjs/utils/constants.js +42 -0
- package/dist/cjs/utils/constants.js.map +7 -0
- package/dist/cjs/utils/format.d.ts +2 -0
- package/dist/cjs/utils/format.js +36 -0
- package/dist/cjs/utils/format.js.map +7 -0
- package/dist/cjs/utils/index.d.ts +5 -0
- package/dist/cjs/utils/index.js +53 -0
- package/dist/cjs/utils/index.js.map +7 -0
- package/dist/cjs/utils/sui-types.d.ts +27 -0
- package/dist/cjs/utils/sui-types.js +90 -0
- package/dist/cjs/utils/sui-types.js.map +7 -0
- package/dist/cjs/utils/suins.d.ts +2 -0
- package/dist/cjs/utils/suins.js +57 -0
- package/dist/cjs/utils/suins.js.map +7 -0
- package/dist/cjs/verify/index.d.ts +1 -0
- package/dist/cjs/verify/index.js +29 -0
- package/dist/cjs/verify/index.js.map +7 -0
- package/dist/cjs/verify/verify.d.ts +11 -0
- package/dist/cjs/verify/verify.js +101 -0
- package/dist/cjs/verify/verify.js.map +7 -0
- package/dist/cjs/version.d.ts +2 -0
- package/dist/cjs/version.js +27 -0
- package/dist/cjs/version.js.map +7 -0
- package/dist/cjs/zklogin/address.d.ts +1 -0
- package/dist/cjs/zklogin/address.js +44 -0
- package/dist/cjs/zklogin/address.js.map +7 -0
- package/dist/cjs/zklogin/bcs.d.ts +46 -0
- package/dist/cjs/zklogin/bcs.js +42 -0
- package/dist/cjs/zklogin/bcs.js.map +7 -0
- package/dist/cjs/zklogin/index.d.ts +5 -0
- package/dist/cjs/zklogin/index.js +33 -0
- package/dist/cjs/zklogin/index.js.map +7 -0
- package/dist/cjs/zklogin/jwt-utils.d.ts +5 -0
- package/dist/cjs/zklogin/jwt-utils.js +102 -0
- package/dist/cjs/zklogin/jwt-utils.js.map +7 -0
- package/dist/cjs/zklogin/publickey.d.ts +69 -0
- package/dist/cjs/zklogin/publickey.js +197 -0
- package/dist/cjs/zklogin/publickey.js.map +7 -0
- package/dist/cjs/zklogin/signature.d.ts +23 -0
- package/dist/cjs/zklogin/signature.js +48 -0
- package/dist/cjs/zklogin/signature.js.map +7 -0
- package/dist/cjs/zklogin/utils.d.ts +2 -0
- package/dist/cjs/zklogin/utils.js +46 -0
- package/dist/cjs/zklogin/utils.js.map +7 -0
- package/dist/esm/bcs/bcs.d.ts +2283 -0
- package/dist/esm/bcs/bcs.js +286 -0
- package/dist/esm/bcs/bcs.js.map +7 -0
- package/dist/esm/bcs/effects.d.ts +793 -0
- package/dist/esm/bcs/effects.js +183 -0
- package/dist/esm/bcs/effects.js.map +7 -0
- package/dist/esm/bcs/index.d.ts +3081 -0
- package/dist/esm/bcs/index.js +83 -0
- package/dist/esm/bcs/index.js.map +7 -0
- package/dist/esm/bcs/type-tag-serializer.d.ts +6 -0
- package/dist/esm/bcs/type-tag-serializer.js +93 -0
- package/dist/esm/bcs/type-tag-serializer.js.map +7 -0
- package/dist/esm/bcs/types.d.ts +114 -0
- package/dist/esm/bcs/types.js +7 -0
- package/dist/esm/bcs/types.js.map +7 -0
- package/dist/esm/client/client.d.ts +229 -0
- package/dist/esm/client/client.js +568 -0
- package/dist/esm/client/client.js.map +7 -0
- package/dist/esm/client/errors.d.ts +12 -0
- package/dist/esm/client/errors.js +40 -0
- package/dist/esm/client/errors.js.map +7 -0
- package/dist/esm/client/http-transport.d.ts +40 -0
- package/dist/esm/client/http-transport.js +105 -0
- package/dist/esm/client/http-transport.js.map +7 -0
- package/dist/esm/client/index.d.ts +5 -0
- package/dist/esm/client/index.js +20 -0
- package/dist/esm/client/index.js.map +7 -0
- package/dist/esm/client/network.d.ts +1 -0
- package/dist/esm/client/network.js +18 -0
- package/dist/esm/client/network.js.map +7 -0
- package/dist/esm/client/rpc-websocket-client.d.ts +49 -0
- package/dist/esm/client/rpc-websocket-client.js +186 -0
- package/dist/esm/client/rpc-websocket-client.js.map +7 -0
- package/dist/esm/client/types/chain.d.ts +99 -0
- package/dist/esm/client/types/chain.js +1 -0
- package/dist/esm/client/types/chain.js.map +7 -0
- package/dist/esm/client/types/changes.d.ts +19 -0
- package/dist/esm/client/types/changes.js +1 -0
- package/dist/esm/client/types/changes.js.map +7 -0
- package/dist/esm/client/types/coins.d.ts +6 -0
- package/dist/esm/client/types/coins.js +1 -0
- package/dist/esm/client/types/coins.js.map +7 -0
- package/dist/esm/client/types/common.d.ts +2 -0
- package/dist/esm/client/types/common.js +1 -0
- package/dist/esm/client/types/common.js.map +7 -0
- package/dist/esm/client/types/generated.d.ts +1376 -0
- package/dist/esm/client/types/generated.js +1 -0
- package/dist/esm/client/types/generated.js.map +7 -0
- package/dist/esm/client/types/index.d.ts +6 -0
- package/dist/esm/client/types/index.js +7 -0
- package/dist/esm/client/types/index.js.map +7 -0
- package/dist/esm/client/types/params.d.ts +585 -0
- package/dist/esm/client/types/params.js +1 -0
- package/dist/esm/client/types/params.js.map +7 -0
- package/dist/esm/cryptography/index.d.ts +7 -0
- package/dist/esm/cryptography/index.js +47 -0
- package/dist/esm/cryptography/index.js.map +7 -0
- package/dist/esm/cryptography/intent.d.ts +6 -0
- package/dist/esm/cryptography/intent.js +15 -0
- package/dist/esm/cryptography/intent.js.map +7 -0
- package/dist/esm/cryptography/keypair.d.ts +63 -0
- package/dist/esm/cryptography/keypair.js +85 -0
- package/dist/esm/cryptography/keypair.js.map +7 -0
- package/dist/esm/cryptography/mnemonics.d.ts +27 -0
- package/dist/esm/cryptography/mnemonics.js +27 -0
- package/dist/esm/cryptography/mnemonics.js.map +7 -0
- package/dist/esm/cryptography/publickey.d.ts +56 -0
- package/dist/esm/cryptography/publickey.js +92 -0
- package/dist/esm/cryptography/publickey.js.map +7 -0
- package/dist/esm/cryptography/signature-scheme.d.ts +21 -0
- package/dist/esm/cryptography/signature-scheme.js +25 -0
- package/dist/esm/cryptography/signature-scheme.js.map +7 -0
- package/dist/esm/cryptography/signature.d.ts +60 -0
- package/dist/esm/cryptography/signature.js +59 -0
- package/dist/esm/cryptography/signature.js.map +7 -0
- package/dist/esm/faucet/faucet.d.ts +42 -0
- package/dist/esm/faucet/faucet.js +83 -0
- package/dist/esm/faucet/faucet.js.map +7 -0
- package/dist/esm/faucet/index.d.ts +1 -0
- package/dist/esm/faucet/index.js +15 -0
- package/dist/esm/faucet/index.js.map +7 -0
- package/dist/esm/graphql/client.d.ts +42 -0
- package/dist/esm/graphql/client.js +73 -0
- package/dist/esm/graphql/client.js.map +7 -0
- package/dist/esm/graphql/generated/2024-01/tada-env.d.js +1 -0
- package/dist/esm/graphql/generated/2024-01/tada-env.d.js.map +7 -0
- package/dist/esm/graphql/generated/2024.1/tada-env.d.js +1 -0
- package/dist/esm/graphql/generated/2024.1/tada-env.d.js.map +7 -0
- package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js +17 -0
- package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js.map +7 -0
- package/dist/esm/graphql/generated/2024.4/tada-env.d.js +1 -0
- package/dist/esm/graphql/generated/2024.4/tada-env.d.js.map +7 -0
- package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js +17 -0
- package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js.map +7 -0
- package/dist/esm/graphql/index.d.ts +1 -0
- package/dist/esm/graphql/index.js +9 -0
- package/dist/esm/graphql/index.js.map +7 -0
- package/dist/esm/graphql/schemas/2024.1/index.d.ts +8971 -0
- package/dist/esm/graphql/schemas/2024.1/index.js +10 -0
- package/dist/esm/graphql/schemas/2024.1/index.js.map +7 -0
- package/dist/esm/graphql/schemas/2024.4/index.d.ts +8995 -0
- package/dist/esm/graphql/schemas/2024.4/index.js +10 -0
- package/dist/esm/graphql/schemas/2024.4/index.js.map +7 -0
- package/dist/esm/graphql/types.d.ts +70 -0
- package/dist/esm/graphql/types.js +1 -0
- package/dist/esm/graphql/types.js.map +7 -0
- package/dist/esm/keypairs/ed25519/ed25519-hd-key.d.ts +13 -0
- package/dist/esm/keypairs/ed25519/ed25519-hd-key.js +71 -0
- package/dist/esm/keypairs/ed25519/ed25519-hd-key.js.map +7 -0
- package/dist/esm/keypairs/ed25519/index.d.ts +2 -0
- package/dist/esm/keypairs/ed25519/index.js +11 -0
- package/dist/esm/keypairs/ed25519/index.js.map +7 -0
- package/dist/esm/keypairs/ed25519/keypair.d.ts +74 -0
- package/dist/esm/keypairs/ed25519/keypair.js +121 -0
- package/dist/esm/keypairs/ed25519/keypair.js.map +7 -0
- package/dist/esm/keypairs/ed25519/publickey.d.ts +30 -0
- package/dist/esm/keypairs/ed25519/publickey.js +69 -0
- package/dist/esm/keypairs/ed25519/publickey.js.map +7 -0
- package/dist/esm/keypairs/secp256k1/index.d.ts +2 -0
- package/dist/esm/keypairs/secp256k1/index.js +11 -0
- package/dist/esm/keypairs/secp256k1/index.js.map +7 -0
- package/dist/esm/keypairs/secp256k1/keypair.d.ts +73 -0
- package/dist/esm/keypairs/secp256k1/keypair.js +123 -0
- package/dist/esm/keypairs/secp256k1/keypair.js.map +7 -0
- package/dist/esm/keypairs/secp256k1/publickey.d.ts +30 -0
- package/dist/esm/keypairs/secp256k1/publickey.js +74 -0
- package/dist/esm/keypairs/secp256k1/publickey.js.map +7 -0
- package/dist/esm/keypairs/secp256r1/index.d.ts +2 -0
- package/dist/esm/keypairs/secp256r1/index.js +11 -0
- package/dist/esm/keypairs/secp256r1/index.js.map +7 -0
- package/dist/esm/keypairs/secp256r1/keypair.d.ts +73 -0
- package/dist/esm/keypairs/secp256r1/keypair.js +117 -0
- package/dist/esm/keypairs/secp256r1/keypair.js.map +7 -0
- package/dist/esm/keypairs/secp256r1/publickey.d.ts +30 -0
- package/dist/esm/keypairs/secp256r1/publickey.js +74 -0
- package/dist/esm/keypairs/secp256r1/publickey.js.map +7 -0
- package/dist/esm/multisig/index.d.ts +2 -0
- package/dist/esm/multisig/index.js +8 -0
- package/dist/esm/multisig/index.js.map +7 -0
- package/dist/esm/multisig/publickey.d.ts +110 -0
- package/dist/esm/multisig/publickey.js +243 -0
- package/dist/esm/multisig/publickey.js.map +7 -0
- package/dist/esm/multisig/signer.d.ts +19 -0
- package/dist/esm/multisig/signer.js +95 -0
- package/dist/esm/multisig/signer.js.map +7 -0
- package/dist/esm/package.json +5 -0
- package/dist/esm/transactions/Commands.d.ts +110 -0
- package/dist/esm/transactions/Commands.js +120 -0
- package/dist/esm/transactions/Commands.js.map +7 -0
- package/dist/esm/transactions/Inputs.d.ts +22 -0
- package/dist/esm/transactions/Inputs.js +60 -0
- package/dist/esm/transactions/Inputs.js.map +7 -0
- package/dist/esm/transactions/ObjectCache.d.ts +85 -0
- package/dist/esm/transactions/ObjectCache.js +226 -0
- package/dist/esm/transactions/ObjectCache.js.map +7 -0
- package/dist/esm/transactions/Transaction.d.ts +672 -0
- package/dist/esm/transactions/Transaction.js +439 -0
- package/dist/esm/transactions/Transaction.js.map +7 -0
- package/dist/esm/transactions/TransactionData.d.ts +64 -0
- package/dist/esm/transactions/TransactionData.js +229 -0
- package/dist/esm/transactions/TransactionData.js.map +7 -0
- package/dist/esm/transactions/__tests__/Transaction.test.d.ts +1 -0
- package/dist/esm/transactions/__tests__/bcs.test.d.ts +1 -0
- package/dist/esm/transactions/data/internal.d.ts +2689 -0
- package/dist/esm/transactions/data/internal.js +208 -0
- package/dist/esm/transactions/data/internal.js.map +7 -0
- package/dist/esm/transactions/data/v1.d.ts +1839 -0
- package/dist/esm/transactions/data/v1.js +437 -0
- package/dist/esm/transactions/data/v1.js.map +7 -0
- package/dist/esm/transactions/data/v2.d.ts +450 -0
- package/dist/esm/transactions/data/v2.js +118 -0
- package/dist/esm/transactions/data/v2.js.map +7 -0
- package/dist/esm/transactions/executor/caching.d.ts +29 -0
- package/dist/esm/transactions/executor/caching.js +89 -0
- package/dist/esm/transactions/executor/caching.js.map +7 -0
- package/dist/esm/transactions/executor/parallel.d.ts +22 -0
- package/dist/esm/transactions/executor/parallel.js +296 -0
- package/dist/esm/transactions/executor/parallel.js.map +7 -0
- package/dist/esm/transactions/executor/queue.d.ts +11 -0
- package/dist/esm/transactions/executor/queue.js +72 -0
- package/dist/esm/transactions/executor/queue.js.map +7 -0
- package/dist/esm/transactions/executor/serial.d.ts +27 -0
- package/dist/esm/transactions/executor/serial.js +120 -0
- package/dist/esm/transactions/executor/serial.js.map +7 -0
- package/dist/esm/transactions/hash.d.ts +7 -0
- package/dist/esm/transactions/hash.js +12 -0
- package/dist/esm/transactions/hash.js.map +7 -0
- package/dist/esm/transactions/index.d.ts +13 -0
- package/dist/esm/transactions/index.js +33 -0
- package/dist/esm/transactions/index.js.map +7 -0
- package/dist/esm/transactions/intents/CoinWithBalance.d.ts +6 -0
- package/dist/esm/transactions/intents/CoinWithBalance.js +148 -0
- package/dist/esm/transactions/intents/CoinWithBalance.js.map +7 -0
- package/dist/esm/transactions/json-rpc-resolver.d.ts +12 -0
- package/dist/esm/transactions/json-rpc-resolver.js +333 -0
- package/dist/esm/transactions/json-rpc-resolver.js.map +7 -0
- package/dist/esm/transactions/pure.d.ts +185 -0
- package/dist/esm/transactions/pure.js +21 -0
- package/dist/esm/transactions/pure.js.map +7 -0
- package/dist/esm/transactions/serializer.d.ts +7 -0
- package/dist/esm/transactions/serializer.js +156 -0
- package/dist/esm/transactions/serializer.js.map +7 -0
- package/dist/esm/transactions/utils.d.ts +8 -0
- package/dist/esm/transactions/utils.js +46 -0
- package/dist/esm/transactions/utils.js.map +7 -0
- package/dist/esm/utils/constants.d.ts +9 -0
- package/dist/esm/utils/constants.js +22 -0
- package/dist/esm/utils/constants.js.map +7 -0
- package/dist/esm/utils/format.d.ts +2 -0
- package/dist/esm/utils/format.js +16 -0
- package/dist/esm/utils/format.js.map +7 -0
- package/dist/esm/utils/index.d.ts +5 -0
- package/dist/esm/utils/index.js +52 -0
- package/dist/esm/utils/index.js.map +7 -0
- package/dist/esm/utils/sui-types.d.ts +27 -0
- package/dist/esm/utils/sui-types.js +70 -0
- package/dist/esm/utils/sui-types.js.map +7 -0
- package/dist/esm/utils/suins.d.ts +2 -0
- package/dist/esm/utils/suins.js +37 -0
- package/dist/esm/utils/suins.js.map +7 -0
- package/dist/esm/verify/index.d.ts +1 -0
- package/dist/esm/verify/index.js +15 -0
- package/dist/esm/verify/index.js.map +7 -0
- package/dist/esm/verify/verify.d.ts +11 -0
- package/dist/esm/verify/verify.js +81 -0
- package/dist/esm/verify/verify.js.map +7 -0
- package/dist/esm/version.d.ts +2 -0
- package/dist/esm/version.js +7 -0
- package/dist/esm/version.js.map +7 -0
- package/dist/esm/zklogin/address.d.ts +1 -0
- package/dist/esm/zklogin/address.js +24 -0
- package/dist/esm/zklogin/address.js.map +7 -0
- package/dist/esm/zklogin/bcs.d.ts +46 -0
- package/dist/esm/zklogin/bcs.js +22 -0
- package/dist/esm/zklogin/bcs.js.map +7 -0
- package/dist/esm/zklogin/index.d.ts +5 -0
- package/dist/esm/zklogin/index.js +13 -0
- package/dist/esm/zklogin/index.js.map +7 -0
- package/dist/esm/zklogin/jwt-utils.d.ts +5 -0
- package/dist/esm/zklogin/jwt-utils.js +82 -0
- package/dist/esm/zklogin/jwt-utils.js.map +7 -0
- package/dist/esm/zklogin/publickey.d.ts +69 -0
- package/dist/esm/zklogin/publickey.js +177 -0
- package/dist/esm/zklogin/publickey.js.map +7 -0
- package/dist/esm/zklogin/signature.d.ts +23 -0
- package/dist/esm/zklogin/signature.js +28 -0
- package/dist/esm/zklogin/signature.js.map +7 -0
- package/dist/esm/zklogin/utils.d.ts +2 -0
- package/dist/esm/zklogin/utils.js +26 -0
- package/dist/esm/zklogin/utils.js.map +7 -0
- package/dist/tsconfig.esm.tsbuildinfo +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/faucet/package.json +6 -0
- package/graphql/package.json +6 -0
- package/graphql/schemas/2024.1/package.json +6 -0
- package/graphql/schemas/2024.4/package.json +6 -0
- package/keypairs/ed25519/package.json +6 -0
- package/keypairs/secp256k1/package.json +6 -0
- package/keypairs/secp256r1/package.json +6 -0
- package/multisig/package.json +6 -0
- package/package.json +160 -0
- package/src/bcs/bcs.ts +300 -0
- package/src/bcs/effects.ts +200 -0
- package/src/bcs/index.ts +87 -0
- package/src/bcs/type-tag-serializer.ts +106 -0
- package/src/bcs/types.ts +113 -0
- package/src/client/client.ts +814 -0
- package/src/client/errors.ts +45 -0
- package/src/client/http-transport.ts +130 -0
- package/src/client/index.ts +21 -0
- package/src/client/network.ts +17 -0
- package/src/client/rpc-websocket-client.ts +234 -0
- package/src/client/types/chain.ts +122 -0
- package/src/client/types/changes.ts +11 -0
- package/src/client/types/coins.ts +9 -0
- package/src/client/types/common.ts +5 -0
- package/src/client/types/generated.ts +1508 -0
- package/src/client/types/index.ts +9 -0
- package/src/client/types/params.ts +584 -0
- package/src/cryptography/index.ts +36 -0
- package/src/cryptography/intent.ts +22 -0
- package/src/cryptography/keypair.ts +130 -0
- package/src/cryptography/mnemonics.ts +49 -0
- package/src/cryptography/publickey.ts +133 -0
- package/src/cryptography/signature-scheme.ts +28 -0
- package/src/cryptography/signature.ts +86 -0
- package/src/faucet/faucet.ts +130 -0
- package/src/faucet/index.ts +10 -0
- package/src/graphql/client.ts +110 -0
- package/src/graphql/generated/2024-01/tada-env.d.ts +202 -0
- package/src/graphql/generated/2024.1/schema.graphql +4168 -0
- package/src/graphql/generated/2024.1/tada-env.d.ts +201 -0
- package/src/graphql/generated/2024.1/tsconfig.tada.json +11 -0
- package/src/graphql/generated/2024.4/schema.graphql +4183 -0
- package/src/graphql/generated/2024.4/tada-env.d.ts +202 -0
- package/src/graphql/generated/2024.4/tsconfig.tada.json +11 -0
- package/src/graphql/index.ts +12 -0
- package/src/graphql/schemas/2024.1/index.ts +17 -0
- package/src/graphql/schemas/2024.4/index.ts +17 -0
- package/src/graphql/types.ts +86 -0
- package/src/keypairs/ed25519/ed25519-hd-key.ts +93 -0
- package/src/keypairs/ed25519/index.ts +9 -0
- package/src/keypairs/ed25519/keypair.ts +151 -0
- package/src/keypairs/ed25519/publickey.ts +86 -0
- package/src/keypairs/secp256k1/index.ts +9 -0
- package/src/keypairs/secp256k1/keypair.ts +151 -0
- package/src/keypairs/secp256k1/publickey.ts +91 -0
- package/src/keypairs/secp256r1/index.ts +9 -0
- package/src/keypairs/secp256r1/keypair.ts +147 -0
- package/src/keypairs/secp256r1/publickey.ts +91 -0
- package/src/multisig/index.ts +5 -0
- package/src/multisig/publickey.ts +356 -0
- package/src/multisig/signer.ts +92 -0
- package/src/transactions/Commands.ts +178 -0
- package/src/transactions/Inputs.ts +68 -0
- package/src/transactions/ObjectCache.ts +296 -0
- package/src/transactions/Transaction.ts +553 -0
- package/src/transactions/TransactionData.ts +296 -0
- package/src/transactions/__tests__/Transaction.test.ts +184 -0
- package/src/transactions/__tests__/bcs.test.ts +205 -0
- package/src/transactions/data/internal.ts +321 -0
- package/src/transactions/data/v1.ts +501 -0
- package/src/transactions/data/v2.ts +146 -0
- package/src/transactions/executor/caching.ts +94 -0
- package/src/transactions/executor/parallel.ts +335 -0
- package/src/transactions/executor/queue.ts +65 -0
- package/src/transactions/executor/serial.ts +131 -0
- package/src/transactions/hash.ts +20 -0
- package/src/transactions/index.ts +41 -0
- package/src/transactions/intents/CoinWithBalance.ts +204 -0
- package/src/transactions/json-rpc-resolver.ts +482 -0
- package/src/transactions/pure.ts +32 -0
- package/src/transactions/serializer.ts +205 -0
- package/src/transactions/utils.ts +66 -0
- package/src/utils/constants.ts +15 -0
- package/src/utils/format.ts +19 -0
- package/src/utils/index.ts +29 -0
- package/src/utils/sui-types.ts +110 -0
- package/src/utils/suins.ts +43 -0
- package/src/verify/index.ts +11 -0
- package/src/verify/verify.ts +111 -0
- package/src/version.ts +7 -0
- package/src/zklogin/address.ts +27 -0
- package/src/zklogin/bcs.ts +26 -0
- package/src/zklogin/index.ts +8 -0
- package/src/zklogin/jwt-utils.ts +113 -0
- package/src/zklogin/publickey.ts +190 -0
- package/src/zklogin/signature.ts +37 -0
- package/src/zklogin/utils.ts +33 -0
- package/transactions/package.json +6 -0
- package/utils/package.json +6 -0
- package/verify/package.json +6 -0
- package/zklogin/package.json +6 -0
package/README.md
ADDED
|
@@ -0,0 +1,520 @@
|
|
|
1
|
+
# Docs site
|
|
2
|
+
|
|
3
|
+
For more complete docs, visit the [Sui TypeScript SDK docs](https://sdk.mystenlabs.com/)
|
|
4
|
+
|
|
5
|
+
# Sui TypeScript SDK
|
|
6
|
+
|
|
7
|
+
This is the Sui TypeScript SDK built on the Sui
|
|
8
|
+
[JSON RPC API](https://github.com/MystenLabs/sui/blob/main/docs/content/references/sui-api.mdx). It
|
|
9
|
+
provides utility classes and functions for applications to sign transactions and interact with the
|
|
10
|
+
Sui network.
|
|
11
|
+
|
|
12
|
+
WARNING: Note that we are still iterating on the RPC and SDK API before TestNet, therefore please
|
|
13
|
+
expect frequent breaking changes in the short-term. We expect the API to stabilize after the
|
|
14
|
+
upcoming TestNet launch.
|
|
15
|
+
|
|
16
|
+
## Working with Devnet
|
|
17
|
+
|
|
18
|
+
The SDK will be published to [npm registry](https://www.npmjs.com/package/@mysten/sui) with the same
|
|
19
|
+
bi-weekly release cycle as the Devnet validators and
|
|
20
|
+
[RPC Server](https://github.com/MystenLabs/sui/blob/main/docs/content/references/sui-api.mdx). To
|
|
21
|
+
use the SDK in your project, you can do:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
$ npm install @mysten/sui
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
You can also use your preferred npm client, such as yarn or pnpm.
|
|
28
|
+
|
|
29
|
+
## Working with local network
|
|
30
|
+
|
|
31
|
+
Note that the `latest` tag for the [published SDK](https://www.npmjs.com/package/@mysten/sui) might
|
|
32
|
+
go out of sync with the RPC server on the `main` branch until the next release. If you're developing
|
|
33
|
+
against a local network, we recommend using the `experimental`-tagged packages, which contain the
|
|
34
|
+
latest changes from `main`.
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
npm install @mysten/sui@experimental
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Refer to the
|
|
41
|
+
[JSON RPC](https://github.com/MystenLabs/sui/blob/main/docs/content/references/sui-api.mdx) topic
|
|
42
|
+
for instructions about how to start a local network and local RPC server.
|
|
43
|
+
|
|
44
|
+
## Building Locally
|
|
45
|
+
|
|
46
|
+
To get started you need to install [pnpm](https://pnpm.io/), then run the following command:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# Install all dependencies
|
|
50
|
+
$ pnpm install
|
|
51
|
+
# Run the build for the TypeScript SDK
|
|
52
|
+
$ pnpm sdk build
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
> All `pnpm` commands below are intended to be run in the root of the Sui repo.
|
|
56
|
+
|
|
57
|
+
## Type Doc
|
|
58
|
+
|
|
59
|
+
You can view the generated [Type Doc](https://typedoc.org/) for the
|
|
60
|
+
[current release of the SDK](https://www.npmjs.com/package/@mysten/sui) at
|
|
61
|
+
http://typescript-sdk-docs.s3-website-us-east-1.amazonaws.com/.
|
|
62
|
+
|
|
63
|
+
For the latest docs for the `main` branch, run `pnpm doc` and open the
|
|
64
|
+
[doc/index.html](doc/index.html) in your browser.
|
|
65
|
+
|
|
66
|
+
## Testing
|
|
67
|
+
|
|
68
|
+
To run unit tests
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
pnpm --filter @mysten/sui test:unit
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
To run E2E tests against local network
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
pnpm --filter @mysten/sui prepare:e2e
|
|
78
|
+
|
|
79
|
+
// This will run all e2e tests
|
|
80
|
+
pnpm --filter @mysten/sui test:e2e
|
|
81
|
+
|
|
82
|
+
// Alternatively you can choose to run only one test file
|
|
83
|
+
npx vitest txn-builder.test.ts
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Troubleshooting:
|
|
87
|
+
|
|
88
|
+
If you see errors like `ECONNRESET or "socket hang up"`, run `node -v` to make sure your node
|
|
89
|
+
version is `v18.x.x`. Refer to this
|
|
90
|
+
[guide](https://blog.logrocket.com/how-switch-node-js-versions-nvm/) to switch node version.
|
|
91
|
+
|
|
92
|
+
Some more follow up here is if you used homebrew to install node, there could be multiple paths to
|
|
93
|
+
node on your machine.
|
|
94
|
+
https://stackoverflow.com/questions/52676244/node-version-not-updating-after-nvm-use-on-mac
|
|
95
|
+
|
|
96
|
+
To run E2E tests against Devnet
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
VITE_FAUCET_URL='https://faucet.devnet.sui.io:443/gas' VITE_FULLNODE_URL='https://fullnode.devnet.sui.io' pnpm --filter @mysten/sui exec vitest e2e
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Connecting to Sui Network
|
|
103
|
+
|
|
104
|
+
The `SuiClient` class provides a connection to the JSON-RPC Server and should be used for all
|
|
105
|
+
read-only operations. The default URLs to connect with the RPC server are:
|
|
106
|
+
|
|
107
|
+
- local: http://127.0.0.1:9000
|
|
108
|
+
- Devnet: https://fullnode.devnet.sui.io
|
|
109
|
+
|
|
110
|
+
```typescript
|
|
111
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
112
|
+
|
|
113
|
+
// create a client connected to devnet
|
|
114
|
+
const client = new SuiClient({ url: getFullnodeUrl('devnet') });
|
|
115
|
+
|
|
116
|
+
// get coins owned by an address
|
|
117
|
+
await client.getCoins({
|
|
118
|
+
owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
119
|
+
});
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
For local development, you can run `cargo run --bin sui-test-validator` to spin up a local network
|
|
123
|
+
with a local validator, a fullnode, and a faucet server. Refer to
|
|
124
|
+
[this guide](https://docs.sui.io/build/sui-local-network) for more information.
|
|
125
|
+
|
|
126
|
+
```typescript
|
|
127
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
128
|
+
|
|
129
|
+
// create a client connected to devnet
|
|
130
|
+
const client = new SuiClient({ url: getFullnodeUrl('localnet') });
|
|
131
|
+
|
|
132
|
+
// get coins owned by an address
|
|
133
|
+
await client.getCoins({
|
|
134
|
+
owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
135
|
+
});
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
You can also construct your own in custom connections, with the URL for your own fullnode
|
|
139
|
+
|
|
140
|
+
```typescript
|
|
141
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
142
|
+
|
|
143
|
+
// create a client connected to devnet
|
|
144
|
+
const client = new SuiClient({
|
|
145
|
+
url: 'https://fullnode.devnet.sui.io',
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
// get coins owned by an address
|
|
149
|
+
await client.getCoins({
|
|
150
|
+
owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
151
|
+
});
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## Getting coins from the faucet
|
|
155
|
+
|
|
156
|
+
You can request sui from the faucet when running against devnet, testnet, or localnet
|
|
157
|
+
|
|
158
|
+
```typescript
|
|
159
|
+
import { getFaucetHost, requestSuiFromFaucetV0 } from '@mysten/sui/faucet';
|
|
160
|
+
|
|
161
|
+
await requestSuiFromFaucetV0({
|
|
162
|
+
host: getFaucetHost('testnet'),
|
|
163
|
+
recipient: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
164
|
+
});
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## Writing APIs
|
|
168
|
+
|
|
169
|
+
For a primer for building transactions, refer to
|
|
170
|
+
[this guide](https://docs.sui.io/build/prog-trans-ts-sdk).
|
|
171
|
+
|
|
172
|
+
### Transfer Object
|
|
173
|
+
|
|
174
|
+
```typescript
|
|
175
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
176
|
+
import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
|
|
177
|
+
import { TransactionBlock } from '@mysten/sui/transactions';
|
|
178
|
+
|
|
179
|
+
// Generate a new Ed25519 Keypair
|
|
180
|
+
const keypair = new Ed25519Keypair();
|
|
181
|
+
const client = new SuiClient({
|
|
182
|
+
url: getFullnodeUrl('testnet'),
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
const tx = new TransactionBlock();
|
|
186
|
+
tx.transferObjects(
|
|
187
|
+
['0xe19739da1a701eadc21683c5b127e62b553e833e8a15a4f292f4f48b4afea3f2'],
|
|
188
|
+
'0x1d20dcdb2bca4f508ea9613994683eb4e76e9c4ed371169677c1be02aaf0b12a',
|
|
189
|
+
);
|
|
190
|
+
const result = await client.signAndExecuteTransactionBlock({
|
|
191
|
+
signer: keypair,
|
|
192
|
+
transactionBlock: tx,
|
|
193
|
+
});
|
|
194
|
+
console.log({ result });
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### Transfer Sui
|
|
198
|
+
|
|
199
|
+
To transfer `1000` MIST to another address:
|
|
200
|
+
|
|
201
|
+
```typescript
|
|
202
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
203
|
+
import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
|
|
204
|
+
import { TransactionBlock } from '@mysten/sui/transactions';
|
|
205
|
+
|
|
206
|
+
// Generate a new Ed25519 Keypair
|
|
207
|
+
const keypair = new Ed25519Keypair();
|
|
208
|
+
const client = new SuiClient({
|
|
209
|
+
url: getFullnodeUrl('testnet'),
|
|
210
|
+
});
|
|
211
|
+
|
|
212
|
+
const tx = new TransactionBlock();
|
|
213
|
+
const [coin] = tx.splitCoins(tx.gas, [1000]);
|
|
214
|
+
tx.transferObjects([coin], keypair.getPublicKey().toSuiAddress());
|
|
215
|
+
const result = await client.signAndExecuteTransactionBlock({
|
|
216
|
+
signer: keypair,
|
|
217
|
+
transactionBlock: tx,
|
|
218
|
+
});
|
|
219
|
+
console.log({ result });
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
### Merge coins
|
|
223
|
+
|
|
224
|
+
```typescript
|
|
225
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
226
|
+
import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
|
|
227
|
+
import { TransactionBlock } from '@mysten/sui/transactions';
|
|
228
|
+
|
|
229
|
+
// Generate a new Ed25519 Keypair
|
|
230
|
+
const keypair = new Ed25519Keypair();
|
|
231
|
+
const client = new SuiClient({
|
|
232
|
+
url: getFullnodeUrl('testnet'),
|
|
233
|
+
});
|
|
234
|
+
|
|
235
|
+
const tx = new TransactionBlock();
|
|
236
|
+
tx.mergeCoins('0xe19739da1a701eadc21683c5b127e62b553e833e8a15a4f292f4f48b4afea3f2', [
|
|
237
|
+
'0x127a8975134a4824d9288722c4ee4fc824cd22502ab4ad9f6617f3ba19229c1b',
|
|
238
|
+
]);
|
|
239
|
+
const result = await client.signAndExecuteTransactionBlock({
|
|
240
|
+
signer: keypair,
|
|
241
|
+
transactionBlock: tx,
|
|
242
|
+
});
|
|
243
|
+
console.log({ result });
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Move Call
|
|
247
|
+
|
|
248
|
+
```typescript
|
|
249
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
250
|
+
import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
|
|
251
|
+
import { TransactionBlock } from '@mysten/sui/transactions';
|
|
252
|
+
|
|
253
|
+
// Generate a new Ed25519 Keypair
|
|
254
|
+
const keypair = new Ed25519Keypair();
|
|
255
|
+
const client = new SuiClient({
|
|
256
|
+
url: getFullnodeUrl('testnet'),
|
|
257
|
+
});
|
|
258
|
+
const packageObjectId = '0x...';
|
|
259
|
+
const tx = new TransactionBlock();
|
|
260
|
+
tx.moveCall({
|
|
261
|
+
target: `${packageObjectId}::nft::mint`,
|
|
262
|
+
arguments: [tx.pure.string('Example NFT')],
|
|
263
|
+
});
|
|
264
|
+
const result = await client.signAndExecuteTransactionBlock({
|
|
265
|
+
signer: keypair,
|
|
266
|
+
transactionBlock: tx,
|
|
267
|
+
});
|
|
268
|
+
console.log({ result });
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Publish Modules
|
|
272
|
+
|
|
273
|
+
To publish a package:
|
|
274
|
+
|
|
275
|
+
```typescript
|
|
276
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
277
|
+
import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
|
|
278
|
+
import { TransactionBlock } from '@mysten/sui/transactions';
|
|
279
|
+
|
|
280
|
+
const { execSync } = require('child_process');
|
|
281
|
+
// Generate a new Ed25519 Keypair
|
|
282
|
+
const keypair = new Ed25519Keypair();
|
|
283
|
+
const client = new SuiClient({
|
|
284
|
+
url: getFullnodeUrl('testnet'),
|
|
285
|
+
});
|
|
286
|
+
const { modules, dependencies } = JSON.parse(
|
|
287
|
+
execSync(`${cliPath} move build --dump-bytecode-as-base64 --path ${packagePath}`, {
|
|
288
|
+
encoding: 'utf-8',
|
|
289
|
+
}),
|
|
290
|
+
);
|
|
291
|
+
const tx = new TransactionBlock();
|
|
292
|
+
const [upgradeCap] = tx.publish({
|
|
293
|
+
modules,
|
|
294
|
+
dependencies,
|
|
295
|
+
});
|
|
296
|
+
tx.transferObjects([upgradeCap], await client.getAddress());
|
|
297
|
+
const result = await client.signAndExecuteTransactionBlock({
|
|
298
|
+
signer: keypair,
|
|
299
|
+
transactionBlock: tx,
|
|
300
|
+
});
|
|
301
|
+
console.log({ result });
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
## Reading APIs
|
|
305
|
+
|
|
306
|
+
### Get Owned Objects
|
|
307
|
+
|
|
308
|
+
Fetch objects owned by the address
|
|
309
|
+
`0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231`
|
|
310
|
+
|
|
311
|
+
```typescript
|
|
312
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
313
|
+
|
|
314
|
+
const client = new SuiClient({
|
|
315
|
+
url: getFullnodeUrl('testnet'),
|
|
316
|
+
});
|
|
317
|
+
const objects = await client.getOwnedObjects({
|
|
318
|
+
owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
319
|
+
});
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
### Get Object
|
|
323
|
+
|
|
324
|
+
Fetch object details for the object with id
|
|
325
|
+
`0xe19739da1a701eadc21683c5b127e62b553e833e8a15a4f292f4f48b4afea3f2`
|
|
326
|
+
|
|
327
|
+
```typescript
|
|
328
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
329
|
+
|
|
330
|
+
const client = new SuiClient({
|
|
331
|
+
url: getFullnodeUrl('testnet'),
|
|
332
|
+
});
|
|
333
|
+
const txn = await client.getObject({
|
|
334
|
+
id: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
335
|
+
// fetch the object content field
|
|
336
|
+
options: { showContent: true },
|
|
337
|
+
});
|
|
338
|
+
// You can also fetch multiple objects in one batch request
|
|
339
|
+
const txns = await client.multiGetObjects({
|
|
340
|
+
ids: [
|
|
341
|
+
'0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
342
|
+
'0x9ad3de788483877fe348aef7f6ba3e52b9cfee5f52de0694d36b16a6b50c1429',
|
|
343
|
+
],
|
|
344
|
+
// only fetch the object type
|
|
345
|
+
options: { showType: true },
|
|
346
|
+
});
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
### Get Transaction
|
|
350
|
+
|
|
351
|
+
Fetch transaction details from transaction digests:
|
|
352
|
+
|
|
353
|
+
```typescript
|
|
354
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
355
|
+
|
|
356
|
+
const client = new SuiClient({
|
|
357
|
+
url: getFullnodeUrl('testnet'),
|
|
358
|
+
});
|
|
359
|
+
const txn = await client.getTransactionBlock({
|
|
360
|
+
digest: '9XFneskU8tW7UxQf7tE5qFRfcN4FadtC2Z3HAZkgeETd=',
|
|
361
|
+
// only fetch the effects field
|
|
362
|
+
options: {
|
|
363
|
+
showEffects: true,
|
|
364
|
+
showInput: false,
|
|
365
|
+
showEvents: false,
|
|
366
|
+
showObjectChanges: false,
|
|
367
|
+
showBalanceChanges: false,
|
|
368
|
+
},
|
|
369
|
+
});
|
|
370
|
+
|
|
371
|
+
// You can also fetch multiple transactions in one batch request
|
|
372
|
+
const txns = await client.multiGetTransactionBlocks({
|
|
373
|
+
digests: [
|
|
374
|
+
'9XFneskU8tW7UxQf7tE5qFRfcN4FadtC2Z3HAZkgeETd=',
|
|
375
|
+
'17mn5W1CczLwitHCO9OIUbqirNrQ0cuKdyxaNe16SAME=',
|
|
376
|
+
],
|
|
377
|
+
// fetch both the input transaction data as well as effects
|
|
378
|
+
options: { showInput: true, showEffects: true },
|
|
379
|
+
});
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
### Get Checkpoints
|
|
383
|
+
|
|
384
|
+
Get latest 100 Checkpoints in descending order and print Transaction Digests for each one of them.
|
|
385
|
+
|
|
386
|
+
```typescript
|
|
387
|
+
client.getCheckpoints({ descendingOrder: true }).then(function (checkpointPage: CheckpointPage) {
|
|
388
|
+
console.log(checkpointPage);
|
|
389
|
+
|
|
390
|
+
checkpointPage.data.forEach((checkpoint) => {
|
|
391
|
+
console.log('---------------------------------------------------------------');
|
|
392
|
+
console.log(
|
|
393
|
+
' ----------- Transactions for Checkpoint: ',
|
|
394
|
+
checkpoint.sequenceNumber,
|
|
395
|
+
' -------- ',
|
|
396
|
+
);
|
|
397
|
+
console.log('---------------------------------------------------------------');
|
|
398
|
+
checkpoint.transactions.forEach((tx) => {
|
|
399
|
+
console.log(tx);
|
|
400
|
+
});
|
|
401
|
+
console.log('***************************************************************');
|
|
402
|
+
});
|
|
403
|
+
});
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
Get Checkpoint 1994010 and print details.
|
|
407
|
+
|
|
408
|
+
```typescript
|
|
409
|
+
client.getCheckpoint({ id: '1994010' }).then(function (checkpoint: Checkpoint) {
|
|
410
|
+
console.log('Checkpoint Sequence Num ', checkpoint.sequenceNumber);
|
|
411
|
+
console.log('Checkpoint timestampMs ', checkpoint.timestampMs);
|
|
412
|
+
console.log('Checkpoint # of Transactions ', checkpoint.transactions.length);
|
|
413
|
+
});
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
### Get Coins
|
|
417
|
+
|
|
418
|
+
Fetch coins of type `0x65b0553a591d7b13376e03a408e112c706dc0909a79080c810b93b06f922c458::usdc::USDC`
|
|
419
|
+
owned by an address:
|
|
420
|
+
|
|
421
|
+
```typescript
|
|
422
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
423
|
+
|
|
424
|
+
const client = new SuiClient({
|
|
425
|
+
url: getFullnodeUrl('testnet'),
|
|
426
|
+
});
|
|
427
|
+
const coins = await client.getCoins({
|
|
428
|
+
owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
429
|
+
coinType: '0x65b0553a591d7b13376e03a408e112c706dc0909a79080c810b93b06f922c458::usdc::USDC',
|
|
430
|
+
});
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
Fetch all coin objects owned by an address:
|
|
434
|
+
|
|
435
|
+
```typescript
|
|
436
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
437
|
+
|
|
438
|
+
const client = new SuiClient({
|
|
439
|
+
url: getFullnodeUrl('testnet'),
|
|
440
|
+
});
|
|
441
|
+
const allCoins = await client.getAllCoins({
|
|
442
|
+
owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
443
|
+
});
|
|
444
|
+
```
|
|
445
|
+
|
|
446
|
+
Fetch the total coin balance for one coin type, owned by an address:
|
|
447
|
+
|
|
448
|
+
```typescript
|
|
449
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
450
|
+
|
|
451
|
+
const client = new SuiClient({
|
|
452
|
+
url: getFullnodeUrl('testnet'),
|
|
453
|
+
});
|
|
454
|
+
// If coin type is not specified, it defaults to 0x2::sui::SUI
|
|
455
|
+
const coinBalance = await client.getBalance({
|
|
456
|
+
owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
457
|
+
coinType: '0x65b0553a591d7b13376e03a408e112c706dc0909a79080c810b93b06f922c458::usdc::USDC',
|
|
458
|
+
});
|
|
459
|
+
```
|
|
460
|
+
|
|
461
|
+
### Events API
|
|
462
|
+
|
|
463
|
+
Querying events created by transactions sent by account
|
|
464
|
+
`0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231`
|
|
465
|
+
|
|
466
|
+
```typescript
|
|
467
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
468
|
+
|
|
469
|
+
const client = new SuiClient({
|
|
470
|
+
url: getFullnodeUrl('testnet'),
|
|
471
|
+
});
|
|
472
|
+
const events = client.queryEvents({
|
|
473
|
+
query: { Sender: toolbox.address() },
|
|
474
|
+
limit: 2,
|
|
475
|
+
});
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
Subscribe to all events created by transactions sent by account
|
|
479
|
+
`0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231`
|
|
480
|
+
|
|
481
|
+
```typescript
|
|
482
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
483
|
+
|
|
484
|
+
const client = new SuiClient({
|
|
485
|
+
url: getFullnodeUrl('testnet'),
|
|
486
|
+
});
|
|
487
|
+
// calls RPC method 'suix_subscribeEvent' with params:
|
|
488
|
+
// [ { Sender: '0xbff6ccc8707aa517b4f1b95750a2a8c666012df3' } ]
|
|
489
|
+
const unsubscribe = await client.subscribeEvent({
|
|
490
|
+
filter: {
|
|
491
|
+
Sender: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
|
|
492
|
+
},
|
|
493
|
+
onMessage(event) {
|
|
494
|
+
// handle subscription notification message here. This function is called once per subscription message.
|
|
495
|
+
},
|
|
496
|
+
});
|
|
497
|
+
|
|
498
|
+
// later, to unsubscribe:
|
|
499
|
+
await unsubscribe();
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
Subscribe to all events created by a package's `nft` module
|
|
503
|
+
|
|
504
|
+
```typescript
|
|
505
|
+
import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
|
|
506
|
+
|
|
507
|
+
const client = new SuiClient({
|
|
508
|
+
url: getFullnodeUrl('testnet'),
|
|
509
|
+
});
|
|
510
|
+
const somePackage = '0x...';
|
|
511
|
+
const devnetNftFilter = {
|
|
512
|
+
MoveModule: { package: somePackage, module: 'nft' },
|
|
513
|
+
};
|
|
514
|
+
const devNftSub = await client.subscribeEvent({
|
|
515
|
+
filter: devnetNftFilter,
|
|
516
|
+
onMessage(event) {
|
|
517
|
+
// handle subscription notification message here
|
|
518
|
+
},
|
|
519
|
+
});
|
|
520
|
+
```
|
package/bcs/package.json
ADDED