@bigmi/core 0.1.0 → 0.2.0-beta.0
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 +2 -0
- package/README.md +6 -4
- package/dist/cjs/actions/getBalance.d.ts +6 -3
- package/dist/cjs/actions/getBalance.js.map +1 -1
- package/dist/cjs/actions/getBlock.d.ts +4 -1
- package/dist/cjs/actions/getBlock.js +3 -3
- package/dist/cjs/actions/getBlock.js.map +1 -1
- package/dist/cjs/actions/getBlockCount.d.ts +4 -1
- package/dist/cjs/actions/getBlockCount.js.map +1 -1
- package/dist/cjs/actions/getBlockStats.d.ts +4 -1
- package/dist/cjs/actions/getBlockStats.js +3 -3
- package/dist/cjs/actions/getBlockStats.js.map +1 -1
- package/dist/cjs/actions/getUTXOTransaction.d.ts +4 -1
- package/dist/cjs/actions/getUTXOTransaction.js +2 -2
- package/dist/cjs/actions/getUTXOTransaction.js.map +1 -1
- package/dist/cjs/actions/sendUTXOTransaction.d.ts +4 -1
- package/dist/cjs/actions/sendUTXOTransaction.js.map +1 -1
- package/dist/cjs/actions/signPsbt.d.ts +5 -2
- package/dist/cjs/actions/signPsbt.js.map +1 -1
- package/dist/cjs/actions/waitForTransaction.d.ts +3 -1
- package/dist/cjs/actions/waitForTransaction.js +16 -14
- package/dist/cjs/actions/waitForTransaction.js.map +1 -1
- package/dist/cjs/actions/watchBlockNumber.d.ts +3 -1
- package/dist/cjs/actions/watchBlockNumber.js +4 -4
- package/dist/cjs/actions/watchBlockNumber.js.map +1 -1
- package/dist/cjs/chains/bitcoin.d.ts +5 -17
- package/dist/cjs/chains/bitcoin.js +2 -2
- package/dist/cjs/chains/bitcoin.js.map +1 -1
- package/dist/cjs/chains/defineChain.d.ts +3 -0
- package/dist/cjs/chains/defineChain.js +12 -0
- package/dist/cjs/chains/defineChain.js.map +1 -0
- package/dist/cjs/clients/decorators/public.d.ts +18 -0
- package/dist/cjs/clients/decorators/public.js +18 -0
- package/dist/cjs/clients/decorators/public.js.map +1 -0
- package/dist/cjs/clients/decorators/wallet.d.ts +11 -0
- package/dist/cjs/clients/decorators/wallet.js +12 -0
- package/dist/cjs/clients/decorators/wallet.js.map +1 -0
- package/dist/cjs/errors/address.d.ts +9 -0
- package/dist/cjs/errors/address.js +17 -0
- package/dist/cjs/errors/address.js.map +1 -0
- package/dist/cjs/errors/base.d.ts +27 -0
- package/dist/cjs/errors/base.js +55 -0
- package/dist/cjs/errors/base.js.map +1 -0
- package/dist/cjs/errors/block.d.ts +11 -0
- package/dist/cjs/errors/block.js +18 -0
- package/dist/cjs/errors/block.js.map +1 -0
- package/dist/cjs/errors/config.d.ts +61 -0
- package/dist/cjs/errors/config.js +65 -0
- package/dist/cjs/errors/config.js.map +1 -0
- package/dist/cjs/errors/provider.d.ts +4 -0
- package/dist/cjs/errors/provider.js +15 -0
- package/dist/cjs/errors/provider.js.map +1 -0
- package/dist/cjs/errors/request.d.ts +80 -0
- package/dist/cjs/errors/request.js +72 -0
- package/dist/cjs/errors/request.js.map +1 -0
- package/dist/cjs/errors/rpc.d.ts +23 -0
- package/dist/cjs/errors/rpc.js +49 -0
- package/dist/cjs/errors/rpc.js.map +1 -0
- package/dist/cjs/errors/transaction.d.ts +31 -0
- package/dist/cjs/errors/transaction.js +40 -0
- package/dist/cjs/errors/transaction.js.map +1 -0
- package/dist/cjs/errors/transport.d.ts +7 -0
- package/dist/cjs/errors/transport.js +13 -0
- package/dist/cjs/errors/transport.js.map +1 -0
- package/dist/cjs/errors/utils.d.ts +6 -0
- package/dist/cjs/errors/utils.js +8 -0
- package/dist/cjs/errors/utils.js.map +1 -0
- package/dist/cjs/factories/createClient.d.ts +50 -0
- package/dist/cjs/factories/createClient.js +45 -0
- package/dist/cjs/factories/createClient.js.map +1 -0
- package/dist/cjs/factories/createTransport.d.ts +31 -0
- package/dist/cjs/factories/createTransport.js +23 -0
- package/dist/cjs/factories/createTransport.js.map +1 -0
- package/dist/cjs/index.d.ts +37 -4
- package/dist/cjs/index.js +63 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/transports/custom.d.ts +16 -0
- package/dist/cjs/transports/custom.js +17 -0
- package/dist/cjs/transports/custom.js.map +1 -0
- package/dist/cjs/transports/fallback.d.ts +56 -0
- package/dist/cjs/transports/fallback.js +165 -0
- package/dist/cjs/transports/fallback.js.map +1 -0
- package/dist/cjs/transports/getHttpRpcClient.d.ts +11 -1
- package/dist/cjs/transports/getHttpRpcClient.js +12 -10
- package/dist/cjs/transports/getHttpRpcClient.js.map +1 -1
- package/dist/cjs/transports/http.d.ts +28 -0
- package/dist/cjs/transports/http.js +72 -0
- package/dist/cjs/transports/http.js.map +1 -0
- package/dist/cjs/transports/types.d.ts +20 -5
- package/dist/cjs/transports/utxo.d.ts +1 -1
- package/dist/cjs/transports/utxo.js +6 -4
- package/dist/cjs/transports/utxo.js.map +1 -1
- package/dist/cjs/types/account.d.ts +9 -0
- package/dist/cjs/types/account.js +3 -0
- package/dist/cjs/types/account.js.map +1 -0
- package/dist/cjs/types/actions.d.ts +17 -0
- package/dist/cjs/types/actions.js +3 -0
- package/dist/cjs/types/actions.js.map +1 -0
- package/dist/cjs/types/address.d.ts +1 -0
- package/dist/cjs/types/address.js +3 -0
- package/dist/cjs/types/address.js.map +1 -0
- package/dist/cjs/types/base.d.ts +0 -0
- package/dist/cjs/types/base.js +2 -0
- package/dist/cjs/types/base.js.map +1 -0
- package/dist/cjs/types/block.d.ts +1 -0
- package/dist/cjs/{clients/types.js → types/block.js} +1 -1
- package/dist/cjs/types/block.js.map +1 -0
- package/dist/cjs/types/chain.d.ts +37 -0
- package/dist/cjs/types/chain.js +3 -0
- package/dist/cjs/types/chain.js.map +1 -0
- package/dist/cjs/types/client.d.ts +41 -0
- package/dist/cjs/types/client.js +3 -0
- package/dist/cjs/types/client.js.map +1 -0
- package/dist/cjs/types/hash.d.ts +1 -0
- package/dist/cjs/types/hash.js +3 -0
- package/dist/cjs/types/hash.js.map +1 -0
- package/dist/cjs/types/request.d.ts +43 -0
- package/dist/cjs/types/request.js +3 -0
- package/dist/cjs/types/request.js.map +1 -0
- package/dist/cjs/types/rpc.d.ts +34 -0
- package/dist/cjs/types/rpc.js +3 -0
- package/dist/cjs/types/rpc.js.map +1 -0
- package/dist/cjs/types/storage.d.ts +22 -0
- package/dist/cjs/types/storage.js +3 -0
- package/dist/cjs/types/storage.js.map +1 -0
- package/dist/cjs/types/transport.d.ts +29 -0
- package/dist/cjs/types/transport.js +3 -0
- package/dist/cjs/types/transport.js.map +1 -0
- package/dist/cjs/types/utils.d.ts +36 -0
- package/dist/cjs/types/utils.js +3 -0
- package/dist/cjs/types/utils.js.map +1 -0
- package/dist/cjs/utils/buildRequest.d.ts +5 -0
- package/dist/cjs/utils/buildRequest.js +102 -0
- package/dist/cjs/utils/buildRequest.js.map +1 -0
- package/dist/cjs/utils/converter.d.ts +3 -0
- package/dist/cjs/utils/converter.js +28 -0
- package/dist/cjs/utils/converter.js.map +1 -0
- package/dist/cjs/utils/createBatchScheduler.d.ts +20 -0
- package/dist/cjs/utils/createBatchScheduler.js +54 -0
- package/dist/cjs/utils/createBatchScheduler.js.map +1 -0
- package/dist/cjs/utils/deepEqual.d.ts +1 -0
- package/dist/cjs/utils/deepEqual.js +52 -0
- package/dist/cjs/utils/deepEqual.js.map +1 -0
- package/dist/cjs/utils/getAction.d.ts +10 -0
- package/dist/cjs/utils/getAction.js +15 -0
- package/dist/cjs/utils/getAction.js.map +1 -0
- package/dist/cjs/utils/getUTXOAddress.d.ts +3 -2
- package/dist/cjs/utils/getUTXOAddress.js.map +1 -1
- package/dist/cjs/utils/isUTXOAddress.js.map +1 -1
- package/dist/cjs/utils/lru.d.ts +6 -0
- package/dist/cjs/utils/lru.js +29 -0
- package/dist/cjs/utils/lru.js.map +1 -0
- package/dist/cjs/utils/observe.d.ts +1 -1
- package/dist/cjs/utils/parseAccount.d.ts +5 -0
- package/dist/cjs/utils/parseAccount.js +10 -0
- package/dist/cjs/utils/parseAccount.js.map +1 -0
- package/dist/cjs/utils/stringify.d.ts +3 -0
- package/dist/cjs/utils/stringify.js +9 -0
- package/dist/cjs/utils/stringify.js.map +1 -0
- package/dist/cjs/utils/uid.d.ts +1 -0
- package/dist/cjs/utils/uid.js +17 -0
- package/dist/cjs/utils/uid.js.map +1 -0
- package/dist/cjs/utils/wait.d.ts +1 -0
- package/dist/cjs/utils/wait.js +7 -0
- package/dist/cjs/utils/wait.js.map +1 -0
- package/dist/cjs/utils/withDedupe.d.ts +8 -0
- package/dist/cjs/utils/withDedupe.js +18 -0
- package/dist/cjs/utils/withDedupe.js.map +1 -0
- package/dist/cjs/utils/withResolvers.d.ts +6 -0
- package/dist/cjs/utils/withResolvers.js +13 -0
- package/dist/cjs/utils/withResolvers.js.map +1 -0
- package/dist/cjs/utils/withRetry.d.ts +14 -0
- package/dist/cjs/utils/withRetry.js +30 -0
- package/dist/cjs/utils/withRetry.js.map +1 -0
- package/dist/cjs/utils/withTimeout.d.ts +9 -0
- package/dist/cjs/utils/withTimeout.js +35 -0
- package/dist/cjs/utils/withTimeout.js.map +1 -0
- package/dist/cjs/version.d.ts +1 -0
- package/dist/cjs/version.js +5 -0
- package/dist/cjs/version.js.map +1 -0
- package/dist/esm/actions/getBalance.d.ts +6 -3
- package/dist/esm/actions/getBalance.js.map +1 -1
- package/dist/esm/actions/getBlock.d.ts +4 -1
- package/dist/esm/actions/getBlock.js +1 -1
- package/dist/esm/actions/getBlock.js.map +1 -1
- package/dist/esm/actions/getBlockCount.d.ts +4 -1
- package/dist/esm/actions/getBlockCount.js.map +1 -1
- package/dist/esm/actions/getBlockStats.d.ts +4 -1
- package/dist/esm/actions/getBlockStats.js +1 -1
- package/dist/esm/actions/getBlockStats.js.map +1 -1
- package/dist/esm/actions/getUTXOTransaction.d.ts +4 -1
- package/dist/esm/actions/getUTXOTransaction.js +1 -1
- package/dist/esm/actions/getUTXOTransaction.js.map +1 -1
- package/dist/esm/actions/sendUTXOTransaction.d.ts +4 -1
- package/dist/esm/actions/sendUTXOTransaction.js.map +1 -1
- package/dist/esm/actions/signPsbt.d.ts +5 -2
- package/dist/esm/actions/signPsbt.js.map +1 -1
- package/dist/esm/actions/waitForTransaction.d.ts +3 -1
- package/dist/esm/actions/waitForTransaction.js +4 -2
- package/dist/esm/actions/waitForTransaction.js.map +1 -1
- package/dist/esm/actions/watchBlockNumber.d.ts +3 -1
- package/dist/esm/actions/watchBlockNumber.js +2 -2
- package/dist/esm/actions/watchBlockNumber.js.map +1 -1
- package/dist/esm/chains/bitcoin.d.ts +5 -17
- package/dist/esm/chains/bitcoin.js +1 -1
- package/dist/esm/chains/bitcoin.js.map +1 -1
- package/dist/esm/chains/defineChain.d.ts +3 -0
- package/dist/esm/chains/defineChain.js +9 -0
- package/dist/esm/chains/defineChain.js.map +1 -0
- package/dist/esm/clients/decorators/public.d.ts +18 -0
- package/dist/esm/clients/decorators/public.js +15 -0
- package/dist/esm/clients/decorators/public.js.map +1 -0
- package/dist/esm/clients/decorators/wallet.d.ts +14 -0
- package/dist/esm/clients/decorators/wallet.js +9 -0
- package/dist/esm/clients/decorators/wallet.js.map +1 -0
- package/dist/esm/errors/address.d.ts +9 -0
- package/dist/esm/errors/address.js +13 -0
- package/dist/esm/errors/address.js.map +1 -0
- package/dist/esm/errors/base.d.ts +27 -0
- package/dist/esm/errors/base.js +50 -0
- package/dist/esm/errors/base.js.map +1 -0
- package/dist/esm/errors/block.d.ts +11 -0
- package/dist/esm/errors/block.js +14 -0
- package/dist/esm/errors/block.js.map +1 -0
- package/dist/esm/errors/config.d.ts +61 -0
- package/dist/esm/errors/config.js +55 -0
- package/dist/esm/errors/config.js.map +1 -0
- package/dist/esm/errors/provider.d.ts +4 -0
- package/dist/esm/errors/provider.js +11 -0
- package/dist/esm/errors/provider.js.map +1 -0
- package/dist/esm/errors/request.d.ts +80 -0
- package/dist/esm/errors/request.js +64 -0
- package/dist/esm/errors/request.js.map +1 -0
- package/dist/esm/errors/rpc.d.ts +53 -0
- package/dist/esm/errors/rpc.js +73 -0
- package/dist/esm/errors/rpc.js.map +1 -0
- package/dist/esm/errors/transaction.d.ts +31 -0
- package/dist/esm/errors/transaction.js +34 -0
- package/dist/esm/errors/transaction.js.map +1 -0
- package/dist/esm/errors/transport.d.ts +7 -0
- package/dist/esm/errors/transport.js +9 -0
- package/dist/esm/errors/transport.js.map +1 -0
- package/dist/esm/errors/utils.d.ts +6 -0
- package/dist/esm/errors/utils.js +3 -0
- package/dist/esm/errors/utils.js.map +1 -0
- package/dist/esm/factories/createClient.d.ts +85 -0
- package/dist/esm/factories/createClient.js +45 -0
- package/dist/esm/factories/createClient.js.map +1 -0
- package/dist/esm/factories/createTransport.d.ts +42 -0
- package/dist/esm/factories/createTransport.js +23 -0
- package/dist/esm/factories/createTransport.js.map +1 -0
- package/dist/esm/index.d.ts +37 -4
- package/dist/esm/index.js +26 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/transports/custom.d.ts +24 -0
- package/dist/esm/transports/custom.js +17 -0
- package/dist/esm/transports/custom.js.map +1 -0
- package/dist/esm/transports/fallback.d.ts +89 -0
- package/dist/esm/transports/fallback.js +172 -0
- package/dist/esm/transports/fallback.js.map +1 -0
- package/dist/esm/transports/getHttpRpcClient.d.ts +15 -1
- package/dist/esm/transports/getHttpRpcClient.js +4 -2
- package/dist/esm/transports/getHttpRpcClient.js.map +1 -1
- package/dist/esm/transports/http.d.ts +53 -0
- package/dist/esm/transports/http.js +74 -0
- package/dist/esm/transports/http.js.map +1 -0
- package/dist/esm/transports/types.d.ts +36 -5
- package/dist/esm/transports/utxo.d.ts +1 -1
- package/dist/esm/transports/utxo.js +3 -1
- package/dist/esm/transports/utxo.js.map +1 -1
- package/dist/esm/types/account.d.ts +9 -0
- package/dist/esm/types/account.js +2 -0
- package/dist/esm/types/account.js.map +1 -0
- package/dist/esm/types/actions.d.ts +20 -0
- package/dist/esm/types/actions.js +2 -0
- package/dist/esm/types/actions.js.map +1 -0
- package/dist/esm/types/address.d.ts +1 -0
- package/dist/esm/types/address.js +2 -0
- package/dist/esm/types/address.js.map +1 -0
- package/dist/esm/types/base.d.ts +0 -0
- package/dist/esm/types/base.js +2 -0
- package/dist/esm/types/base.js.map +1 -0
- package/dist/esm/types/block.d.ts +19 -0
- package/dist/esm/types/block.js +2 -0
- package/dist/esm/types/block.js.map +1 -0
- package/dist/esm/types/chain.d.ts +48 -0
- package/dist/esm/types/chain.js +2 -0
- package/dist/esm/types/chain.js.map +1 -0
- package/dist/esm/types/client.d.ts +68 -0
- package/dist/esm/types/client.js +2 -0
- package/dist/esm/types/client.js.map +1 -0
- package/dist/esm/types/hash.d.ts +1 -0
- package/dist/esm/types/hash.js +2 -0
- package/dist/esm/types/hash.js.map +1 -0
- package/dist/esm/types/request.d.ts +48 -0
- package/dist/esm/types/request.js +2 -0
- package/dist/esm/types/request.js.map +1 -0
- package/dist/esm/types/rpc.d.ts +34 -0
- package/dist/esm/types/rpc.js +2 -0
- package/dist/esm/types/rpc.js.map +1 -0
- package/dist/esm/types/storage.d.ts +22 -0
- package/dist/esm/types/storage.js +2 -0
- package/dist/esm/types/storage.js.map +1 -0
- package/dist/esm/types/transport.d.ts +37 -0
- package/dist/esm/types/transport.js +2 -0
- package/dist/esm/types/transport.js.map +1 -0
- package/dist/esm/types/utils.d.ts +72 -0
- package/dist/esm/types/utils.js +2 -0
- package/dist/esm/types/utils.js.map +1 -0
- package/dist/esm/utils/buildRequest.d.ts +6 -0
- package/dist/esm/utils/buildRequest.js +111 -0
- package/dist/esm/utils/buildRequest.js.map +1 -0
- package/dist/esm/utils/converter.d.ts +3 -0
- package/dist/esm/utils/converter.js +23 -0
- package/dist/esm/utils/converter.js.map +1 -0
- package/dist/esm/utils/createBatchScheduler.d.ts +21 -0
- package/dist/esm/utils/createBatchScheduler.js +52 -0
- package/dist/esm/utils/createBatchScheduler.js.map +1 -0
- package/dist/esm/utils/deepEqual.d.ts +2 -0
- package/dist/esm/utils/deepEqual.js +52 -0
- package/dist/esm/utils/deepEqual.js.map +1 -0
- package/dist/esm/utils/getAction.d.ts +17 -0
- package/dist/esm/utils/getAction.js +23 -0
- package/dist/esm/utils/getAction.js.map +1 -0
- package/dist/esm/utils/getUTXOAddress.d.ts +3 -2
- package/dist/esm/utils/getUTXOAddress.js.map +1 -1
- package/dist/esm/utils/isUTXOAddress.js.map +1 -1
- package/dist/esm/utils/lru.d.ts +11 -0
- package/dist/esm/utils/lru.js +30 -0
- package/dist/esm/utils/lru.js.map +1 -0
- package/dist/esm/utils/observe.d.ts +1 -1
- package/dist/esm/utils/parseAccount.d.ts +5 -0
- package/dist/esm/utils/parseAccount.js +7 -0
- package/dist/esm/utils/parseAccount.js.map +1 -0
- package/dist/esm/utils/stringify.d.ts +3 -0
- package/dist/esm/utils/stringify.js +5 -0
- package/dist/esm/utils/stringify.js.map +1 -0
- package/dist/esm/utils/uid.d.ts +1 -0
- package/dist/esm/utils/uid.js +14 -0
- package/dist/esm/utils/uid.js.map +1 -0
- package/dist/esm/utils/wait.d.ts +1 -0
- package/dist/esm/utils/wait.js +4 -0
- package/dist/esm/utils/wait.js.map +1 -0
- package/dist/esm/utils/withDedupe.d.ts +10 -0
- package/dist/esm/utils/withDedupe.js +16 -0
- package/dist/esm/utils/withDedupe.js.map +1 -0
- package/dist/esm/utils/withResolvers.d.ts +8 -0
- package/dist/esm/utils/withResolvers.js +11 -0
- package/dist/esm/utils/withResolvers.js.map +1 -0
- package/dist/esm/utils/withRetry.d.ts +14 -0
- package/dist/esm/utils/withRetry.js +27 -0
- package/dist/esm/utils/withRetry.js.map +1 -0
- package/dist/esm/utils/withTimeout.d.ts +9 -0
- package/dist/esm/utils/withTimeout.js +32 -0
- package/dist/esm/utils/withTimeout.js.map +1 -0
- package/dist/esm/version.d.ts +1 -0
- package/dist/esm/version.js +2 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/types/actions/getBalance.d.ts +6 -3
- package/dist/types/actions/getBalance.d.ts.map +1 -1
- package/dist/types/actions/getBlock.d.ts +4 -1
- package/dist/types/actions/getBlock.d.ts.map +1 -1
- package/dist/types/actions/getBlockCount.d.ts +4 -1
- package/dist/types/actions/getBlockCount.d.ts.map +1 -1
- package/dist/types/actions/getBlockStats.d.ts +4 -1
- package/dist/types/actions/getBlockStats.d.ts.map +1 -1
- package/dist/types/actions/getUTXOTransaction.d.ts +4 -1
- package/dist/types/actions/getUTXOTransaction.d.ts.map +1 -1
- package/dist/types/actions/sendUTXOTransaction.d.ts +4 -1
- package/dist/types/actions/sendUTXOTransaction.d.ts.map +1 -1
- package/dist/types/actions/signPsbt.d.ts +5 -2
- package/dist/types/actions/signPsbt.d.ts.map +1 -1
- package/dist/types/actions/waitForTransaction.d.ts +3 -1
- package/dist/types/actions/waitForTransaction.d.ts.map +1 -1
- package/dist/types/actions/watchBlockNumber.d.ts +3 -1
- package/dist/types/actions/watchBlockNumber.d.ts.map +1 -1
- package/dist/types/chains/bitcoin.d.ts +5 -17
- package/dist/types/chains/bitcoin.d.ts.map +1 -1
- package/dist/types/chains/defineChain.d.ts +4 -0
- package/dist/types/chains/defineChain.d.ts.map +1 -0
- package/dist/types/clients/decorators/public.d.ts +19 -0
- package/dist/types/clients/decorators/public.d.ts.map +1 -0
- package/dist/types/clients/decorators/wallet.d.ts +15 -0
- package/dist/types/clients/decorators/wallet.d.ts.map +1 -0
- package/dist/types/errors/address.d.ts +10 -0
- package/dist/types/errors/address.d.ts.map +1 -0
- package/dist/types/errors/base.d.ts +28 -0
- package/dist/types/errors/base.d.ts.map +1 -0
- package/dist/types/errors/block.d.ts +12 -0
- package/dist/types/errors/block.d.ts.map +1 -0
- package/dist/types/errors/config.d.ts +62 -0
- package/dist/types/errors/config.d.ts.map +1 -0
- package/dist/types/errors/provider.d.ts +5 -0
- package/dist/types/errors/provider.d.ts.map +1 -0
- package/dist/types/errors/request.d.ts +81 -0
- package/dist/types/errors/request.d.ts.map +1 -0
- package/dist/types/errors/rpc.d.ts +54 -0
- package/dist/types/errors/rpc.d.ts.map +1 -0
- package/dist/types/errors/transaction.d.ts +32 -0
- package/dist/types/errors/transaction.d.ts.map +1 -0
- package/dist/types/errors/transport.d.ts +8 -0
- package/dist/types/errors/transport.d.ts.map +1 -0
- package/dist/types/errors/utils.d.ts +7 -0
- package/dist/types/errors/utils.d.ts.map +1 -0
- package/dist/types/factories/createClient.d.ts +86 -0
- package/dist/types/factories/createClient.d.ts.map +1 -0
- package/dist/types/factories/createTransport.d.ts +43 -0
- package/dist/types/factories/createTransport.d.ts.map +1 -0
- package/dist/types/index.d.ts +37 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/transports/custom.d.ts +25 -0
- package/dist/types/transports/custom.d.ts.map +1 -0
- package/dist/types/transports/fallback.d.ts +90 -0
- package/dist/types/transports/fallback.d.ts.map +1 -0
- package/dist/types/transports/getHttpRpcClient.d.ts +15 -1
- package/dist/types/transports/getHttpRpcClient.d.ts.map +1 -1
- package/dist/types/transports/http.d.ts +54 -0
- package/dist/types/transports/http.d.ts.map +1 -0
- package/dist/types/transports/types.d.ts +36 -5
- package/dist/types/transports/types.d.ts.map +1 -1
- package/dist/types/transports/utxo.d.ts +1 -1
- package/dist/types/transports/utxo.d.ts.map +1 -1
- package/dist/types/types/account.d.ts +10 -0
- package/dist/types/types/account.d.ts.map +1 -0
- package/dist/types/types/actions.d.ts +21 -0
- package/dist/types/types/actions.d.ts.map +1 -0
- package/dist/types/types/address.d.ts +2 -0
- package/dist/types/types/address.d.ts.map +1 -0
- package/dist/types/types/base.d.ts +1 -0
- package/dist/types/types/base.d.ts.map +1 -0
- package/dist/types/types/block.d.ts +20 -0
- package/dist/types/types/block.d.ts.map +1 -0
- package/dist/types/types/chain.d.ts +49 -0
- package/dist/types/types/chain.d.ts.map +1 -0
- package/dist/types/types/client.d.ts +69 -0
- package/dist/types/types/client.d.ts.map +1 -0
- package/dist/types/types/hash.d.ts +2 -0
- package/dist/types/types/hash.d.ts.map +1 -0
- package/dist/types/types/request.d.ts +49 -0
- package/dist/types/types/request.d.ts.map +1 -0
- package/dist/types/types/rpc.d.ts +35 -0
- package/dist/types/types/rpc.d.ts.map +1 -0
- package/dist/types/types/storage.d.ts +23 -0
- package/dist/types/types/storage.d.ts.map +1 -0
- package/dist/types/types/transport.d.ts +38 -0
- package/dist/types/types/transport.d.ts.map +1 -0
- package/dist/types/types/utils.d.ts +73 -0
- package/dist/types/types/utils.d.ts.map +1 -0
- package/dist/types/utils/buildRequest.d.ts +7 -0
- package/dist/types/utils/buildRequest.d.ts.map +1 -0
- package/dist/types/utils/converter.d.ts +4 -0
- package/dist/types/utils/converter.d.ts.map +1 -0
- package/dist/types/utils/createBatchScheduler.d.ts +22 -0
- package/dist/types/utils/createBatchScheduler.d.ts.map +1 -0
- package/dist/types/utils/deepEqual.d.ts +3 -0
- package/dist/types/utils/deepEqual.d.ts.map +1 -0
- package/dist/types/utils/getAction.d.ts +18 -0
- package/dist/types/utils/getAction.d.ts.map +1 -0
- package/dist/types/utils/getUTXOAddress.d.ts +3 -2
- package/dist/types/utils/getUTXOAddress.d.ts.map +1 -1
- package/dist/types/utils/isUTXOAddress.d.ts.map +1 -1
- package/dist/types/utils/lru.d.ts +12 -0
- package/dist/types/utils/lru.d.ts.map +1 -0
- package/dist/types/utils/observe.d.ts +1 -1
- package/dist/types/utils/observe.d.ts.map +1 -1
- package/dist/types/utils/parseAccount.d.ts +6 -0
- package/dist/types/utils/parseAccount.d.ts.map +1 -0
- package/dist/types/utils/stringify.d.ts +4 -0
- package/dist/types/utils/stringify.d.ts.map +1 -0
- package/dist/types/utils/uid.d.ts +2 -0
- package/dist/types/utils/uid.d.ts.map +1 -0
- package/dist/types/utils/wait.d.ts +2 -0
- package/dist/types/utils/wait.d.ts.map +1 -0
- package/dist/types/utils/withDedupe.d.ts +11 -0
- package/dist/types/utils/withDedupe.d.ts.map +1 -0
- package/dist/types/utils/withResolvers.d.ts +9 -0
- package/dist/types/utils/withResolvers.d.ts.map +1 -0
- package/dist/types/utils/withRetry.d.ts +15 -0
- package/dist/types/utils/withRetry.d.ts.map +1 -0
- package/dist/types/utils/withTimeout.d.ts +10 -0
- package/dist/types/utils/withTimeout.d.ts.map +1 -0
- package/dist/types/version.d.ts +2 -0
- package/dist/types/version.d.ts.map +1 -0
- package/package.json +4 -3
- package/package.json.tmp +61 -0
- package/src/actions/getBalance.ts +6 -3
- package/src/actions/getBlock.ts +7 -7
- package/src/actions/getBlockCount.ts +4 -1
- package/src/actions/getBlockStats.ts +5 -7
- package/src/actions/getUTXOTransaction.ts +5 -7
- package/src/actions/sendUTXOTransaction.ts +4 -1
- package/src/actions/signPsbt.ts +5 -2
- package/src/actions/waitForTransaction.ts +9 -7
- package/src/actions/watchBlockNumber.ts +5 -2
- package/src/chains/bitcoin.ts +1 -1
- package/src/chains/defineChain.ts +14 -0
- package/src/clients/decorators/public.ts +62 -0
- package/src/clients/decorators/wallet.ts +37 -0
- package/src/errors/address.ts +16 -0
- package/src/errors/base.ts +85 -0
- package/src/errors/block.ts +24 -0
- package/src/errors/config.ts +102 -0
- package/src/errors/provider.ts +11 -0
- package/src/errors/request.ts +134 -0
- package/src/errors/rpc.ts +77 -0
- package/src/errors/transaction.ts +67 -0
- package/src/errors/transport.ts +15 -0
- package/src/errors/utils.ts +6 -0
- package/src/factories/createClient.ts +199 -0
- package/src/factories/createTransport.ts +93 -0
- package/src/index.ts +114 -13
- package/src/transports/custom.ts +56 -0
- package/src/transports/fallback.ts +332 -0
- package/src/transports/getHttpRpcClient.ts +28 -4
- package/src/transports/http.ts +176 -0
- package/src/transports/types.ts +38 -5
- package/src/transports/utxo.ts +6 -9
- package/src/types/account.ts +10 -0
- package/src/types/actions.ts +38 -0
- package/src/types/address.ts +1 -0
- package/src/types/base.ts +0 -0
- package/src/types/block.ts +19 -0
- package/src/types/chain.ts +72 -0
- package/src/types/client.ts +108 -0
- package/src/types/hash.ts +1 -0
- package/src/types/request.ts +87 -0
- package/src/types/rpc.ts +37 -0
- package/src/types/storage.ts +44 -0
- package/src/types/transport.ts +54 -0
- package/src/types/utils.ts +131 -0
- package/src/utils/buildRequest.ts +145 -0
- package/src/utils/converter.ts +25 -0
- package/src/utils/createBatchScheduler.ts +116 -0
- package/src/utils/deepEqual.ts +62 -0
- package/src/utils/getAction.ts +45 -0
- package/src/utils/getUTXOAddress.ts +4 -3
- package/src/utils/isUTXOAddress.ts +2 -1
- package/src/utils/lru.ts +35 -0
- package/src/utils/observe.ts +1 -1
- package/src/utils/parseAccount.ts +14 -0
- package/src/utils/stringify.ts +13 -0
- package/src/utils/uid.ts +14 -0
- package/src/utils/wait.ts +3 -0
- package/src/utils/withDedupe.ts +25 -0
- package/src/utils/withResolvers.ts +19 -0
- package/src/utils/withRetry.ts +60 -0
- package/src/utils/withTimeout.ts +47 -0
- package/src/version.ts +1 -0
- package/tsconfig.json +2 -1
- package/dist/cjs/clients/types.d.ts +0 -27
- package/dist/cjs/clients/types.js.map +0 -1
- package/dist/cjs/decorators/UTXOAPIActions.d.ts +0 -6
- package/dist/cjs/decorators/UTXOAPIActions.js +0 -10
- package/dist/cjs/decorators/UTXOAPIActions.js.map +0 -1
- package/dist/cjs/decorators/UTXOActions.d.ts +0 -10
- package/dist/cjs/decorators/UTXOActions.js +0 -14
- package/dist/cjs/decorators/UTXOActions.js.map +0 -1
- package/dist/esm/clients/types.d.ts +0 -43
- package/dist/esm/clients/types.js +0 -2
- package/dist/esm/clients/types.js.map +0 -1
- package/dist/esm/decorators/UTXOAPIActions.d.ts +0 -6
- package/dist/esm/decorators/UTXOAPIActions.js +0 -7
- package/dist/esm/decorators/UTXOAPIActions.js.map +0 -1
- package/dist/esm/decorators/UTXOActions.d.ts +0 -10
- package/dist/esm/decorators/UTXOActions.js +0 -11
- package/dist/esm/decorators/UTXOActions.js.map +0 -1
- package/dist/types/clients/types.d.ts +0 -44
- package/dist/types/clients/types.d.ts.map +0 -1
- package/dist/types/decorators/UTXOAPIActions.d.ts +0 -7
- package/dist/types/decorators/UTXOAPIActions.d.ts.map +0 -1
- package/dist/types/decorators/UTXOActions.d.ts +0 -11
- package/dist/types/decorators/UTXOActions.d.ts.map +0 -1
- package/src/clients/types.ts +0 -48
- package/src/decorators/UTXOAPIActions.ts +0 -20
- package/src/decorators/UTXOActions.ts +0 -37
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import {
|
|
2
|
+
type GetBalanceParameters,
|
|
3
|
+
type GetBalanceReturnType,
|
|
4
|
+
getBalance,
|
|
5
|
+
} from '../../actions/getBalance.js'
|
|
6
|
+
import {
|
|
7
|
+
type GetBlockParameters,
|
|
8
|
+
type GetBlockReturnType,
|
|
9
|
+
getBlock,
|
|
10
|
+
} from '../../actions/getBlock.js'
|
|
11
|
+
import {
|
|
12
|
+
type GetBlockCountReturnType,
|
|
13
|
+
getBlockCount,
|
|
14
|
+
} from '../../actions/getBlockCount.js'
|
|
15
|
+
import {
|
|
16
|
+
type GetBlockStatsParameters,
|
|
17
|
+
type GetBlockStatsReturnType,
|
|
18
|
+
getBlockStats,
|
|
19
|
+
} from '../../actions/getBlockStats.js'
|
|
20
|
+
import {
|
|
21
|
+
type GetUTXOTransactionParameters,
|
|
22
|
+
type GetUTXOTransactionReturnType,
|
|
23
|
+
getUTXOTransaction,
|
|
24
|
+
} from '../../actions/getUTXOTransaction.js'
|
|
25
|
+
|
|
26
|
+
import type { Client } from '../../factories/createClient.js'
|
|
27
|
+
import type { Transport } from '../../factories/createTransport.js'
|
|
28
|
+
import type { UTXOSchema } from '../../transports/types.js'
|
|
29
|
+
import type { Account } from '../../types/account.js'
|
|
30
|
+
|
|
31
|
+
import type { Chain } from '../../types/chain.js'
|
|
32
|
+
|
|
33
|
+
export type PublicActions = {
|
|
34
|
+
getBalance: (args: GetBalanceParameters) => Promise<GetBalanceReturnType>
|
|
35
|
+
|
|
36
|
+
getBlockCount: () => Promise<GetBlockCountReturnType>
|
|
37
|
+
|
|
38
|
+
getBlockStats: (
|
|
39
|
+
args: GetBlockStatsParameters
|
|
40
|
+
) => Promise<GetBlockStatsReturnType>
|
|
41
|
+
|
|
42
|
+
getUTXOTransaction: (
|
|
43
|
+
args: GetUTXOTransactionParameters
|
|
44
|
+
) => Promise<GetUTXOTransactionReturnType>
|
|
45
|
+
|
|
46
|
+
getBlock: (args: GetBlockParameters) => Promise<GetBlockReturnType>
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function publicActions<
|
|
50
|
+
transport extends Transport,
|
|
51
|
+
chain extends Chain | undefined = Chain | undefined,
|
|
52
|
+
account extends Account | undefined = Account | undefined,
|
|
53
|
+
schema extends UTXOSchema = UTXOSchema,
|
|
54
|
+
>(client: Client<transport, chain, account, schema>): PublicActions {
|
|
55
|
+
return {
|
|
56
|
+
getBlock: (args) => getBlock(client, args),
|
|
57
|
+
getBalance: (args) => getBalance(client, args),
|
|
58
|
+
getBlockCount: () => getBlockCount(client),
|
|
59
|
+
getBlockStats: (args) => getBlockStats(client, args),
|
|
60
|
+
getUTXOTransaction: (args) => getUTXOTransaction(client, args),
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import {
|
|
2
|
+
type SendUTXOTransactionParameters,
|
|
3
|
+
type SendUTXOTransactionReturnType,
|
|
4
|
+
sendUTXOTransaction,
|
|
5
|
+
} from '../../actions/sendUTXOTransaction.js'
|
|
6
|
+
import { signPsbt } from '../../actions/signPsbt.js'
|
|
7
|
+
import type { Transport } from '../../factories/createTransport.js'
|
|
8
|
+
import type { Account } from '../../types/account.js'
|
|
9
|
+
import type { Client } from '../../types/client.js'
|
|
10
|
+
|
|
11
|
+
import type {
|
|
12
|
+
SignPsbtParameters,
|
|
13
|
+
SignPsbtReturnType,
|
|
14
|
+
} from '../../transports/types.js'
|
|
15
|
+
import type { Chain } from '../../types/chain.js'
|
|
16
|
+
|
|
17
|
+
export type WalletActions = {
|
|
18
|
+
/**
|
|
19
|
+
* Creates, signs, and sends a new transaction to the network.
|
|
20
|
+
*/
|
|
21
|
+
sendUTXOTransaction: (
|
|
22
|
+
args: SendUTXOTransactionParameters
|
|
23
|
+
) => Promise<SendUTXOTransactionReturnType>
|
|
24
|
+
|
|
25
|
+
signPbst: (args: SignPsbtParameters) => Promise<SignPsbtReturnType>
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function walletActions<
|
|
29
|
+
transport extends Transport,
|
|
30
|
+
chain extends Chain | undefined = Chain | undefined,
|
|
31
|
+
account extends Account | undefined = Account | undefined,
|
|
32
|
+
>(client: Client<transport, chain, account>): WalletActions {
|
|
33
|
+
return {
|
|
34
|
+
sendUTXOTransaction: (args) => sendUTXOTransaction(client, args),
|
|
35
|
+
signPbst: (args) => signPsbt(client, args),
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseError } from './base.js'
|
|
2
|
+
|
|
3
|
+
export type InvalidAddressErrorType = InvalidAddressError & {
|
|
4
|
+
name: 'InvalidAddressError'
|
|
5
|
+
}
|
|
6
|
+
export class InvalidAddressError extends BaseError {
|
|
7
|
+
constructor({ address }: { address: string }) {
|
|
8
|
+
super(`Address "${address}" is invalid.`, {
|
|
9
|
+
metaMessages: [
|
|
10
|
+
'- Address must be a hex value of 20 bytes (40 hex characters).',
|
|
11
|
+
'- Address must match its checksum counterpart.',
|
|
12
|
+
],
|
|
13
|
+
name: 'InvalidAddressError',
|
|
14
|
+
})
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { version } from '../version.js'
|
|
2
|
+
|
|
3
|
+
type ErrorConfig = {
|
|
4
|
+
version?: string | undefined
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
let errorConfig: ErrorConfig = {
|
|
8
|
+
version: `bigmi@${version}`,
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export function setErrorConfig(config: ErrorConfig) {
|
|
12
|
+
errorConfig = config
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
type BaseErrorParameters = {
|
|
16
|
+
cause?: BaseError | Error | undefined
|
|
17
|
+
details?: string | undefined
|
|
18
|
+
docsSlug?: string | undefined
|
|
19
|
+
metaMessages?: string[] | undefined
|
|
20
|
+
name?: string | undefined
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export type BaseErrorType = BaseError & { name: 'BaseError' }
|
|
24
|
+
export class BaseError extends Error {
|
|
25
|
+
code?: number
|
|
26
|
+
details: string
|
|
27
|
+
docsPath?: string | undefined
|
|
28
|
+
metaMessages?: string[] | undefined
|
|
29
|
+
shortMessage: string
|
|
30
|
+
version: string
|
|
31
|
+
|
|
32
|
+
override name = 'BaseError'
|
|
33
|
+
|
|
34
|
+
constructor(shortMessage: string, args: BaseErrorParameters = {}) {
|
|
35
|
+
const details = (() => {
|
|
36
|
+
if (args.cause instanceof BaseError) {
|
|
37
|
+
return args.cause.details
|
|
38
|
+
}
|
|
39
|
+
if (args.cause?.message) {
|
|
40
|
+
return args.cause.message
|
|
41
|
+
}
|
|
42
|
+
return args.details!
|
|
43
|
+
})()
|
|
44
|
+
|
|
45
|
+
const message = [
|
|
46
|
+
shortMessage || 'An error occurred.',
|
|
47
|
+
'',
|
|
48
|
+
...(args.metaMessages ? [...args.metaMessages, ''] : []),
|
|
49
|
+
...(details ? [`Details: ${details}`] : []),
|
|
50
|
+
...(errorConfig.version ? [`Version: ${errorConfig.version}`] : []),
|
|
51
|
+
].join('\n')
|
|
52
|
+
|
|
53
|
+
super(message, args.cause ? { cause: args.cause } : undefined)
|
|
54
|
+
|
|
55
|
+
this.details = details
|
|
56
|
+
this.metaMessages = args.metaMessages
|
|
57
|
+
this.name = args.name ?? this.name
|
|
58
|
+
this.shortMessage = shortMessage
|
|
59
|
+
this.version = version
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
walk(): Error
|
|
63
|
+
walk(fn: (err: unknown) => boolean): Error | null
|
|
64
|
+
walk(fn?: any): any {
|
|
65
|
+
return walk(this, fn)
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
function walk(
|
|
70
|
+
err: unknown,
|
|
71
|
+
fn?: ((err: unknown) => boolean) | undefined
|
|
72
|
+
): unknown {
|
|
73
|
+
if (fn?.(err)) {
|
|
74
|
+
return err
|
|
75
|
+
}
|
|
76
|
+
if (
|
|
77
|
+
err &&
|
|
78
|
+
typeof err === 'object' &&
|
|
79
|
+
'cause' in err &&
|
|
80
|
+
err.cause !== undefined
|
|
81
|
+
) {
|
|
82
|
+
return walk(err.cause, fn)
|
|
83
|
+
}
|
|
84
|
+
return fn ? null : err
|
|
85
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Hash } from '../types/hash.js'
|
|
2
|
+
import { BaseError } from './base.js'
|
|
3
|
+
|
|
4
|
+
export type BlockNotFoundErrorType = BlockNotFoundError & {
|
|
5
|
+
name: 'BlockNotFoundError'
|
|
6
|
+
}
|
|
7
|
+
export class BlockNotFoundError extends BaseError {
|
|
8
|
+
constructor({
|
|
9
|
+
blockHash,
|
|
10
|
+
blockNumber,
|
|
11
|
+
}: {
|
|
12
|
+
blockHash?: Hash | undefined
|
|
13
|
+
blockNumber?: bigint | undefined
|
|
14
|
+
}) {
|
|
15
|
+
let identifier = 'Block'
|
|
16
|
+
if (blockHash) {
|
|
17
|
+
identifier = `Block at hash "${blockHash}"`
|
|
18
|
+
}
|
|
19
|
+
if (blockNumber) {
|
|
20
|
+
identifier = `Block at number "${blockNumber}"`
|
|
21
|
+
}
|
|
22
|
+
super(`${identifier} could not be found.`, { name: 'BlockNotFoundError' })
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { Address } from '../types/address.js'
|
|
2
|
+
|
|
3
|
+
import { BaseError } from './base.js'
|
|
4
|
+
|
|
5
|
+
export type ChainNotConfiguredErrorType = ChainNotConfiguredError & {
|
|
6
|
+
name: 'ChainNotConfiguredError'
|
|
7
|
+
}
|
|
8
|
+
export class ChainNotConfiguredError extends BaseError {
|
|
9
|
+
override name = 'ChainNotConfiguredError'
|
|
10
|
+
constructor() {
|
|
11
|
+
super('Chain not configured.')
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export type ConnectorAlreadyConnectedErrorType =
|
|
16
|
+
ConnectorAlreadyConnectedError & {
|
|
17
|
+
name: 'ConnectorAlreadyConnectedError'
|
|
18
|
+
}
|
|
19
|
+
export class ConnectorAlreadyConnectedError extends BaseError {
|
|
20
|
+
override name = 'ConnectorAlreadyConnectedError'
|
|
21
|
+
constructor() {
|
|
22
|
+
super('Connector already connected.')
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export type ConnectorNotConnectedErrorType = ConnectorNotConnectedError & {
|
|
27
|
+
name: 'ConnectorNotConnectedError'
|
|
28
|
+
}
|
|
29
|
+
export class ConnectorNotConnectedError extends BaseError {
|
|
30
|
+
override name = 'ConnectorNotConnectedError'
|
|
31
|
+
constructor() {
|
|
32
|
+
super('Connector not connected.')
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export type ConnectorNotFoundErrorType = ConnectorNotFoundError & {
|
|
37
|
+
name: 'ConnectorNotFoundError'
|
|
38
|
+
}
|
|
39
|
+
export class ConnectorNotFoundError extends BaseError {
|
|
40
|
+
override name = 'ConnectorNotFoundError'
|
|
41
|
+
constructor() {
|
|
42
|
+
super('Connector not found.')
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export type ConnectorAccountNotFoundErrorType =
|
|
47
|
+
ConnectorAccountNotFoundError & {
|
|
48
|
+
name: 'ConnectorAccountNotFoundError'
|
|
49
|
+
}
|
|
50
|
+
export class ConnectorAccountNotFoundError extends BaseError {
|
|
51
|
+
override name = 'ConnectorAccountNotFoundError'
|
|
52
|
+
constructor({
|
|
53
|
+
address,
|
|
54
|
+
connector,
|
|
55
|
+
}: {
|
|
56
|
+
address: Address
|
|
57
|
+
connector: string
|
|
58
|
+
}) {
|
|
59
|
+
super(`Account "${address}" not found for connector "${connector}".`)
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export type ConnectorChainMismatchErrorType = ConnectorAccountNotFoundError & {
|
|
64
|
+
name: 'ConnectorChainMismatchError'
|
|
65
|
+
}
|
|
66
|
+
export class ConnectorChainMismatchError extends BaseError {
|
|
67
|
+
override name = 'ConnectorChainMismatchError'
|
|
68
|
+
constructor({
|
|
69
|
+
connectionChainId,
|
|
70
|
+
connectorChainId,
|
|
71
|
+
}: {
|
|
72
|
+
connectionChainId: number
|
|
73
|
+
connectorChainId: number
|
|
74
|
+
}) {
|
|
75
|
+
super(
|
|
76
|
+
`The current chain of the connector (id: ${connectorChainId}) does not match the connection's chain (id: ${connectionChainId}).`,
|
|
77
|
+
{
|
|
78
|
+
metaMessages: [
|
|
79
|
+
`Current Chain ID: ${connectorChainId}`,
|
|
80
|
+
`Expected Chain ID: ${connectionChainId}`,
|
|
81
|
+
],
|
|
82
|
+
}
|
|
83
|
+
)
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export type ConnectorUnavailableReconnectingErrorType =
|
|
88
|
+
ConnectorUnavailableReconnectingError & {
|
|
89
|
+
name: 'ConnectorUnavailableReconnectingError'
|
|
90
|
+
}
|
|
91
|
+
export class ConnectorUnavailableReconnectingError extends BaseError {
|
|
92
|
+
override name = 'ConnectorUnavailableReconnectingError'
|
|
93
|
+
constructor({ connector }: { connector: { name: string } }) {
|
|
94
|
+
super(`Connector "${connector.name}" unavailable while reconnecting.`, {
|
|
95
|
+
details: [
|
|
96
|
+
'During the reconnection step, the only connector methods guaranteed to be available are: `id`, `name`, `type`, `uid`.',
|
|
97
|
+
'All other methods are not guaranteed to be available until reconnection completes and connectors are fully restored.',
|
|
98
|
+
'This error commonly occurs for connectors that asynchronously inject after reconnection has already started.',
|
|
99
|
+
].join(' '),
|
|
100
|
+
})
|
|
101
|
+
}
|
|
102
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseError } from './base.js'
|
|
2
|
+
|
|
3
|
+
export class ProviderNotFoundError extends BaseError {
|
|
4
|
+
constructor(message?: string) {
|
|
5
|
+
const name = 'ProviderNotFoundError'
|
|
6
|
+
const defaultMessage = 'The provider for this connector was not found'
|
|
7
|
+
super(`${name}: ${message || defaultMessage}`, {
|
|
8
|
+
name,
|
|
9
|
+
})
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { stringify } from '../utils/stringify.js'
|
|
2
|
+
|
|
3
|
+
import { BaseError } from './base.js'
|
|
4
|
+
import { getUrl } from './utils.js'
|
|
5
|
+
|
|
6
|
+
export type HttpRequestErrorType = HttpRequestError & {
|
|
7
|
+
name: 'HttpRequestError'
|
|
8
|
+
}
|
|
9
|
+
export class HttpRequestError extends BaseError {
|
|
10
|
+
body?: { [x: string]: unknown } | { [y: string]: unknown }[] | undefined
|
|
11
|
+
headers?: Headers | undefined
|
|
12
|
+
status?: number | undefined
|
|
13
|
+
url: string
|
|
14
|
+
|
|
15
|
+
constructor({
|
|
16
|
+
body,
|
|
17
|
+
cause,
|
|
18
|
+
details,
|
|
19
|
+
headers,
|
|
20
|
+
status,
|
|
21
|
+
url,
|
|
22
|
+
}: {
|
|
23
|
+
body?: { [x: string]: unknown } | { [y: string]: unknown }[] | undefined
|
|
24
|
+
cause?: Error | undefined
|
|
25
|
+
details?: string | undefined
|
|
26
|
+
headers?: Headers | undefined
|
|
27
|
+
status?: number | undefined
|
|
28
|
+
url: string
|
|
29
|
+
}) {
|
|
30
|
+
super('HTTP request failed.', {
|
|
31
|
+
cause,
|
|
32
|
+
details,
|
|
33
|
+
metaMessages: [
|
|
34
|
+
status && `Status: ${status}`,
|
|
35
|
+
`URL: ${getUrl(url)}`,
|
|
36
|
+
body && `Request body: ${stringify(body)}`,
|
|
37
|
+
].filter(Boolean) as string[],
|
|
38
|
+
name: 'HttpRequestError',
|
|
39
|
+
})
|
|
40
|
+
this.body = body
|
|
41
|
+
this.headers = headers
|
|
42
|
+
this.status = status
|
|
43
|
+
this.url = url
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export type WebSocketRequestErrorType = WebSocketRequestError & {
|
|
48
|
+
name: 'WebSocketRequestError'
|
|
49
|
+
}
|
|
50
|
+
export class WebSocketRequestError extends BaseError {
|
|
51
|
+
constructor({
|
|
52
|
+
body,
|
|
53
|
+
cause,
|
|
54
|
+
details,
|
|
55
|
+
url,
|
|
56
|
+
}: {
|
|
57
|
+
body?: { [key: string]: unknown } | undefined
|
|
58
|
+
cause?: Error | undefined
|
|
59
|
+
details?: string | undefined
|
|
60
|
+
url: string
|
|
61
|
+
}) {
|
|
62
|
+
super('WebSocket request failed.', {
|
|
63
|
+
cause,
|
|
64
|
+
details,
|
|
65
|
+
metaMessages: [
|
|
66
|
+
`URL: ${getUrl(url)}`,
|
|
67
|
+
body && `Request body: ${stringify(body)}`,
|
|
68
|
+
].filter(Boolean) as string[],
|
|
69
|
+
name: 'WebSocketRequestError',
|
|
70
|
+
})
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export type RpcRequestErrorType = RpcRequestError & {
|
|
75
|
+
name: 'RpcRequestError'
|
|
76
|
+
}
|
|
77
|
+
export class RpcRequestError extends BaseError {
|
|
78
|
+
override code: number
|
|
79
|
+
data?: unknown
|
|
80
|
+
|
|
81
|
+
constructor({
|
|
82
|
+
body,
|
|
83
|
+
error,
|
|
84
|
+
url,
|
|
85
|
+
}: {
|
|
86
|
+
body: { [x: string]: unknown } | { [y: string]: unknown }[]
|
|
87
|
+
error: { code: number; data?: unknown; message: string }
|
|
88
|
+
url: string
|
|
89
|
+
}) {
|
|
90
|
+
super('RPC Request failed.', {
|
|
91
|
+
cause: error as any,
|
|
92
|
+
details: error.message,
|
|
93
|
+
metaMessages: [`URL: ${getUrl(url)}`, `Request body: ${stringify(body)}`],
|
|
94
|
+
name: 'RpcRequestError',
|
|
95
|
+
})
|
|
96
|
+
this.code = error.code
|
|
97
|
+
this.data = error.data
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export type SocketClosedErrorType = SocketClosedError & {
|
|
102
|
+
name: 'SocketClosedError'
|
|
103
|
+
}
|
|
104
|
+
export class SocketClosedError extends BaseError {
|
|
105
|
+
constructor({
|
|
106
|
+
url,
|
|
107
|
+
}: {
|
|
108
|
+
url?: string | undefined
|
|
109
|
+
} = {}) {
|
|
110
|
+
super('The socket has been closed.', {
|
|
111
|
+
metaMessages: [url && `URL: ${getUrl(url)}`].filter(Boolean) as string[],
|
|
112
|
+
name: 'SocketClosedError',
|
|
113
|
+
})
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export type TimeoutErrorType = TimeoutError & {
|
|
118
|
+
name: 'TimeoutError'
|
|
119
|
+
}
|
|
120
|
+
export class TimeoutError extends BaseError {
|
|
121
|
+
constructor({
|
|
122
|
+
body,
|
|
123
|
+
url,
|
|
124
|
+
}: {
|
|
125
|
+
body: { [x: string]: unknown } | { [y: string]: unknown }[]
|
|
126
|
+
url: string
|
|
127
|
+
}) {
|
|
128
|
+
super('The request took too long to respond.', {
|
|
129
|
+
details: 'The request timed out.',
|
|
130
|
+
metaMessages: [`URL: ${getUrl(url)}`, `Request body: ${stringify(body)}`],
|
|
131
|
+
name: 'TimeoutError',
|
|
132
|
+
})
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { BaseError } from './base.js'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @enum {number} RpcErrorCode
|
|
5
|
+
* @description JSON-RPC error codes
|
|
6
|
+
* @see https://www.jsonrpc.org/specification#error_object
|
|
7
|
+
*/
|
|
8
|
+
export enum RpcErrorCode {
|
|
9
|
+
/**
|
|
10
|
+
* Parse error Invalid JSON
|
|
11
|
+
**/
|
|
12
|
+
PARSE_ERROR = -32700,
|
|
13
|
+
/**
|
|
14
|
+
* The JSON sent is not a valid Request object.
|
|
15
|
+
**/
|
|
16
|
+
INVALID_REQUEST = -32600,
|
|
17
|
+
/**
|
|
18
|
+
* The method does not exist/is not available.
|
|
19
|
+
**/
|
|
20
|
+
METHOD_NOT_FOUND = -32601,
|
|
21
|
+
/**
|
|
22
|
+
* Invalid method parameter(s).
|
|
23
|
+
*/
|
|
24
|
+
INVALID_PARAMS = -32602,
|
|
25
|
+
/**
|
|
26
|
+
* Internal JSON-RPC error.
|
|
27
|
+
* This is a generic error, used when the server encounters an error in performing the request.
|
|
28
|
+
**/
|
|
29
|
+
INTERNAL_ERROR = -32603,
|
|
30
|
+
/**
|
|
31
|
+
* user rejected/canceled the request
|
|
32
|
+
*/
|
|
33
|
+
USER_REJECTION = -32000,
|
|
34
|
+
/**
|
|
35
|
+
* method is not supported for the address provided
|
|
36
|
+
*/
|
|
37
|
+
METHOD_NOT_SUPPORTED = -32001,
|
|
38
|
+
/**
|
|
39
|
+
* The client does not have permission to access the requested resource.
|
|
40
|
+
*/
|
|
41
|
+
ACCESS_DENIED = -32002,
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export class UserRejectedRequestError extends BaseError {
|
|
45
|
+
override code = RpcErrorCode.USER_REJECTION
|
|
46
|
+
constructor(message?: string) {
|
|
47
|
+
const name = 'UserRejectedRequestError'
|
|
48
|
+
const errMessage =
|
|
49
|
+
message || 'The user rejected your request, please try again'
|
|
50
|
+
super(`${name}: ${errMessage}`, {
|
|
51
|
+
name,
|
|
52
|
+
})
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export class MethodNotSupportedRpcError extends BaseError {
|
|
57
|
+
override code = RpcErrorCode.METHOD_NOT_SUPPORTED
|
|
58
|
+
constructor(method?: string) {
|
|
59
|
+
const name = 'MethodNotSupportedError'
|
|
60
|
+
const message = `The method ${method} you are calling is not supported`
|
|
61
|
+
super(`${name}: ${message}`, {
|
|
62
|
+
name,
|
|
63
|
+
})
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export class ParseError extends BaseError {
|
|
68
|
+
override code = RpcErrorCode.PARSE_ERROR
|
|
69
|
+
constructor(message?: string) {
|
|
70
|
+
const name = 'ParseError'
|
|
71
|
+
const errMessage =
|
|
72
|
+
message || 'Invalid JSON, there was an error parsing your request.'
|
|
73
|
+
super(`${name}: ${errMessage}`, {
|
|
74
|
+
name,
|
|
75
|
+
})
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { BlockTag } from '../types/block.js'
|
|
2
|
+
import type { Hash } from '../types/hash.js'
|
|
3
|
+
import { BaseError } from './base.js'
|
|
4
|
+
|
|
5
|
+
export type TransactionNotFoundErrorType = TransactionNotFoundError & {
|
|
6
|
+
name: 'TransactionNotFoundError'
|
|
7
|
+
}
|
|
8
|
+
export class TransactionNotFoundError extends BaseError {
|
|
9
|
+
constructor({
|
|
10
|
+
blockHash,
|
|
11
|
+
blockNumber,
|
|
12
|
+
blockTag,
|
|
13
|
+
hash,
|
|
14
|
+
index,
|
|
15
|
+
}: {
|
|
16
|
+
blockHash?: Hash | undefined
|
|
17
|
+
blockNumber?: bigint | undefined
|
|
18
|
+
blockTag?: BlockTag | undefined
|
|
19
|
+
hash?: Hash | undefined
|
|
20
|
+
index?: number | undefined
|
|
21
|
+
}) {
|
|
22
|
+
let identifier = 'Transaction'
|
|
23
|
+
if (blockTag && index !== undefined) {
|
|
24
|
+
identifier = `Transaction at block time "${blockTag}" at index "${index}"`
|
|
25
|
+
}
|
|
26
|
+
if (blockHash && index !== undefined) {
|
|
27
|
+
identifier = `Transaction at block hash "${blockHash}" at index "${index}"`
|
|
28
|
+
}
|
|
29
|
+
if (blockNumber && index !== undefined) {
|
|
30
|
+
identifier = `Transaction at block number "${blockNumber}" at index "${index}"`
|
|
31
|
+
}
|
|
32
|
+
if (hash) {
|
|
33
|
+
identifier = `Transaction with hash "${hash}"`
|
|
34
|
+
}
|
|
35
|
+
super(`${identifier} could not be found.`, {
|
|
36
|
+
name: 'TransactionNotFoundError',
|
|
37
|
+
})
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export type TransactionReceiptNotFoundErrorType =
|
|
42
|
+
TransactionReceiptNotFoundError & {
|
|
43
|
+
name: 'TransactionReceiptNotFoundError'
|
|
44
|
+
}
|
|
45
|
+
export class TransactionReceiptNotFoundError extends BaseError {
|
|
46
|
+
constructor({ hash }: { hash: Hash }) {
|
|
47
|
+
super(
|
|
48
|
+
`Transaction receipt with hash "${hash}" could not be found. The Transaction may not be processed on a block yet.`,
|
|
49
|
+
{
|
|
50
|
+
name: 'TransactionReceiptNotFoundError',
|
|
51
|
+
}
|
|
52
|
+
)
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export type WaitForTransactionReceiptTimeoutErrorType =
|
|
57
|
+
WaitForTransactionReceiptTimeoutError & {
|
|
58
|
+
name: 'WaitForTransactionReceiptTimeoutError'
|
|
59
|
+
}
|
|
60
|
+
export class WaitForTransactionReceiptTimeoutError extends BaseError {
|
|
61
|
+
constructor({ hash }: { hash: Hash }) {
|
|
62
|
+
super(
|
|
63
|
+
`Timed out while waiting for transaction with hash "${hash}" to be confirmed.`,
|
|
64
|
+
{ name: 'WaitForTransactionReceiptTimeoutError' }
|
|
65
|
+
)
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { BaseError } from './base.js'
|
|
2
|
+
|
|
3
|
+
export type UrlRequiredErrorType = UrlRequiredError & {
|
|
4
|
+
name: 'UrlRequiredError'
|
|
5
|
+
}
|
|
6
|
+
export class UrlRequiredError extends BaseError {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(
|
|
9
|
+
'No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.',
|
|
10
|
+
{
|
|
11
|
+
name: 'UrlRequiredError',
|
|
12
|
+
}
|
|
13
|
+
)
|
|
14
|
+
}
|
|
15
|
+
}
|