viem 1.0.7 → 1.1.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/chains/package.json +3 -3
- package/dist/cjs/accounts/privateKeyToAccount.js +2 -2
- package/dist/cjs/accounts/privateKeyToAccount.js.map +1 -1
- package/dist/cjs/accounts/utils/signTransaction.js +3 -3
- package/dist/cjs/accounts/utils/signTransaction.js.map +1 -1
- package/dist/cjs/actions/public/call.js +3 -6
- package/dist/cjs/actions/public/call.js.map +1 -1
- package/dist/cjs/actions/public/estimateContractGas.js.map +1 -1
- package/dist/cjs/actions/public/estimateGas.js +3 -6
- package/dist/cjs/actions/public/estimateGas.js.map +1 -1
- package/dist/cjs/actions/public/getBlock.js +2 -4
- package/dist/cjs/actions/public/getBlock.js.map +1 -1
- package/dist/cjs/actions/public/getTransaction.js +2 -4
- package/dist/cjs/actions/public/getTransaction.js.map +1 -1
- package/dist/cjs/actions/public/getTransactionConfirmations.js.map +1 -1
- package/dist/cjs/actions/public/getTransactionReceipt.js +2 -4
- package/dist/cjs/actions/public/getTransactionReceipt.js.map +1 -1
- package/dist/cjs/actions/public/simulateContract.js.map +1 -1
- package/dist/cjs/actions/public/watchBlocks.js +3 -1
- package/dist/cjs/actions/public/watchBlocks.js.map +1 -1
- package/dist/cjs/actions/test/sendUnsignedTransaction.js +3 -6
- package/dist/cjs/actions/test/sendUnsignedTransaction.js.map +1 -1
- package/dist/cjs/actions/wallet/sendTransaction.js +5 -7
- package/dist/cjs/actions/wallet/sendTransaction.js.map +1 -1
- package/dist/cjs/chains/formatters/celo.js +62 -0
- package/dist/cjs/chains/formatters/celo.js.map +1 -0
- package/dist/cjs/chains/formatters/optimism.js +43 -0
- package/dist/cjs/chains/formatters/optimism.js.map +1 -0
- package/dist/cjs/{chains.js → chains/index.js} +16 -50
- package/dist/cjs/chains/index.js.map +1 -0
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/serializer.js +3 -0
- package/dist/cjs/types/serializer.js.map +1 -0
- package/dist/cjs/utils/chain.js +6 -2
- package/dist/cjs/utils/chain.js.map +1 -1
- package/dist/cjs/utils/formatters/block.js +2 -4
- package/dist/cjs/utils/formatters/block.js.map +1 -1
- package/dist/cjs/utils/formatters/formatter.js +21 -0
- package/dist/cjs/utils/formatters/formatter.js.map +1 -0
- package/dist/cjs/utils/formatters/transaction.js +3 -4
- package/dist/cjs/utils/formatters/transaction.js.map +1 -1
- package/dist/cjs/utils/formatters/transactionReceipt.js +3 -5
- package/dist/cjs/utils/formatters/transactionReceipt.js.map +1 -1
- package/dist/cjs/utils/formatters/transactionRequest.js +2 -4
- package/dist/cjs/utils/formatters/transactionRequest.js.map +1 -1
- package/dist/cjs/utils/index.js +6 -5
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/transaction/getTransactionType.js.map +1 -1
- package/dist/cjs/utils/transaction/serializeAccessList.js +26 -0
- package/dist/cjs/utils/transaction/serializeAccessList.js.map +1 -0
- package/dist/cjs/utils/transaction/serializeTransaction.js +3 -22
- package/dist/cjs/utils/transaction/serializeTransaction.js.map +1 -1
- package/dist/cjs/wallet.js.map +1 -1
- package/dist/esm/accounts/privateKeyToAccount.js +2 -2
- package/dist/esm/accounts/privateKeyToAccount.js.map +1 -1
- package/dist/esm/accounts/utils/signTransaction.js +4 -4
- package/dist/esm/accounts/utils/signTransaction.js.map +1 -1
- package/dist/esm/actions/public/call.js +3 -6
- package/dist/esm/actions/public/call.js.map +1 -1
- package/dist/esm/actions/public/estimateContractGas.js.map +1 -1
- package/dist/esm/actions/public/estimateGas.js +3 -6
- package/dist/esm/actions/public/estimateGas.js.map +1 -1
- package/dist/esm/actions/public/getBlock.js +2 -4
- package/dist/esm/actions/public/getBlock.js.map +1 -1
- package/dist/esm/actions/public/getTransaction.js +2 -4
- package/dist/esm/actions/public/getTransaction.js.map +1 -1
- package/dist/esm/actions/public/getTransactionConfirmations.js.map +1 -1
- package/dist/esm/actions/public/getTransactionReceipt.js +2 -4
- package/dist/esm/actions/public/getTransactionReceipt.js.map +1 -1
- package/dist/esm/actions/public/simulateContract.js.map +1 -1
- package/dist/esm/actions/public/watchBlocks.js +3 -1
- package/dist/esm/actions/public/watchBlocks.js.map +1 -1
- package/dist/esm/actions/test/sendUnsignedTransaction.js +3 -6
- package/dist/esm/actions/test/sendUnsignedTransaction.js.map +1 -1
- package/dist/esm/actions/wallet/sendTransaction.js +5 -7
- package/dist/esm/actions/wallet/sendTransaction.js.map +1 -1
- package/dist/esm/chains/formatters/celo.js +59 -0
- package/dist/esm/chains/formatters/celo.js.map +1 -0
- package/dist/esm/chains/formatters/optimism.js +40 -0
- package/dist/esm/chains/formatters/optimism.js.map +1 -0
- package/dist/esm/{chains.js → chains/index.js} +13 -47
- package/dist/esm/chains/index.js.map +1 -0
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/serializer.js +2 -0
- package/dist/esm/types/serializer.js.map +1 -0
- package/dist/esm/utils/chain.js +6 -2
- package/dist/esm/utils/chain.js.map +1 -1
- package/dist/esm/utils/formatters/block.js +2 -5
- package/dist/esm/utils/formatters/block.js.map +1 -1
- package/dist/esm/utils/formatters/formatter.js +17 -0
- package/dist/esm/utils/formatters/formatter.js.map +1 -0
- package/dist/esm/utils/formatters/transaction.js +4 -4
- package/dist/esm/utils/formatters/transaction.js.map +1 -1
- package/dist/esm/utils/formatters/transactionReceipt.js +3 -5
- package/dist/esm/utils/formatters/transactionReceipt.js.map +1 -1
- package/dist/esm/utils/formatters/transactionRequest.js +2 -4
- package/dist/esm/utils/formatters/transactionRequest.js.map +1 -1
- package/dist/esm/utils/index.js +3 -2
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/transaction/getTransactionType.js.map +1 -1
- package/dist/esm/utils/transaction/serializeAccessList.js +32 -0
- package/dist/esm/utils/transaction/serializeAccessList.js.map +1 -0
- package/dist/esm/utils/transaction/serializeTransaction.js +2 -21
- package/dist/esm/utils/transaction/serializeTransaction.js.map +1 -1
- package/dist/esm/wallet.js.map +1 -1
- package/dist/types/accounts/types.d.ts +7 -2
- package/dist/types/accounts/types.d.ts.map +1 -1
- package/dist/types/accounts/utils/signTransaction.d.ts +5 -3
- package/dist/types/accounts/utils/signTransaction.d.ts.map +1 -1
- package/dist/types/actions/public/call.d.ts +3 -7
- package/dist/types/actions/public/call.d.ts.map +1 -1
- package/dist/types/actions/public/estimateContractGas.d.ts +1 -1
- package/dist/types/actions/public/estimateContractGas.d.ts.map +1 -1
- package/dist/types/actions/public/estimateGas.d.ts +3 -7
- package/dist/types/actions/public/estimateGas.d.ts.map +1 -1
- package/dist/types/actions/public/getBlock.d.ts +2 -2
- package/dist/types/actions/public/getBlock.d.ts.map +1 -1
- package/dist/types/actions/public/getTransaction.d.ts +2 -2
- package/dist/types/actions/public/getTransaction.d.ts.map +1 -1
- package/dist/types/actions/public/getTransactionConfirmations.d.ts +2 -2
- package/dist/types/actions/public/getTransactionConfirmations.d.ts.map +1 -1
- package/dist/types/actions/public/getTransactionReceipt.d.ts +3 -3
- package/dist/types/actions/public/getTransactionReceipt.d.ts.map +1 -1
- package/dist/types/actions/public/simulateContract.d.ts +1 -1
- package/dist/types/actions/public/simulateContract.d.ts.map +1 -1
- package/dist/types/actions/public/verifyHash.d.ts +1 -1
- package/dist/types/actions/public/verifyHash.d.ts.map +1 -1
- package/dist/types/actions/public/verifyMessage.d.ts +1 -1
- package/dist/types/actions/public/verifyMessage.d.ts.map +1 -1
- package/dist/types/actions/public/verifyTypedData.d.ts +1 -1
- package/dist/types/actions/public/verifyTypedData.d.ts.map +1 -1
- package/dist/types/actions/public/watchBlocks.d.ts.map +1 -1
- package/dist/types/actions/test/sendUnsignedTransaction.d.ts +2 -8
- package/dist/types/actions/test/sendUnsignedTransaction.d.ts.map +1 -1
- package/dist/types/actions/wallet/sendTransaction.d.ts +2 -7
- package/dist/types/actions/wallet/sendTransaction.d.ts.map +1 -1
- package/dist/types/chains/formatters/celo.d.ts +235 -0
- package/dist/types/chains/formatters/celo.d.ts.map +1 -0
- package/dist/types/chains/formatters/optimism.d.ts +286 -0
- package/dist/types/chains/formatters/optimism.d.ts.map +1 -0
- package/dist/types/chains/index.d.ts +5246 -0
- package/dist/types/chains/index.d.ts.map +1 -0
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/index.d.ts +7 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/chain.d.ts +3 -1
- package/dist/types/types/chain.d.ts.map +1 -1
- package/dist/types/types/fee.d.ts +1 -0
- package/dist/types/types/fee.d.ts.map +1 -1
- package/dist/types/types/formatter.d.ts +8 -10
- package/dist/types/types/formatter.d.ts.map +1 -1
- package/dist/types/types/rpc.d.ts +1 -1
- package/dist/types/types/rpc.d.ts.map +1 -1
- package/dist/types/types/serializer.d.ts +7 -0
- package/dist/types/types/serializer.d.ts.map +1 -0
- package/dist/types/types/transaction.d.ts +14 -3
- package/dist/types/types/transaction.d.ts.map +1 -1
- package/dist/types/types/utils.d.ts +5 -5
- package/dist/types/types/utils.d.ts.map +1 -1
- package/dist/types/utils/chain.d.ts +4 -1
- package/dist/types/utils/chain.d.ts.map +1 -1
- package/dist/types/utils/formatters/block.d.ts +5 -11
- package/dist/types/utils/formatters/block.d.ts.map +1 -1
- package/dist/types/utils/formatters/formatter.d.ts +6 -0
- package/dist/types/utils/formatters/formatter.d.ts.map +1 -0
- package/dist/types/utils/formatters/transaction.d.ts +5 -11
- package/dist/types/utils/formatters/transaction.d.ts.map +1 -1
- package/dist/types/utils/formatters/transactionReceipt.d.ts +5 -11
- package/dist/types/utils/formatters/transactionReceipt.d.ts.map +1 -1
- package/dist/types/utils/formatters/transactionRequest.d.ts +5 -11
- package/dist/types/utils/formatters/transactionRequest.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +7 -6
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/transaction/getTransactionType.d.ts +2 -2
- package/dist/types/utils/transaction/getTransactionType.d.ts.map +1 -1
- package/dist/types/utils/transaction/serializeAccessList.d.ts +5 -0
- package/dist/types/utils/transaction/serializeAccessList.d.ts.map +1 -0
- package/dist/types/utils/transaction/serializeTransaction.d.ts +1 -0
- package/dist/types/utils/transaction/serializeTransaction.d.ts.map +1 -1
- package/dist/types/wallet.d.ts +1 -1
- package/dist/types/wallet.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/accounts/privateKeyToAccount.ts +2 -2
- package/src/accounts/types.ts +20 -2
- package/src/accounts/utils/signTransaction.ts +9 -6
- package/src/actions/public/call.ts +20 -30
- package/src/actions/public/estimateContractGas.ts +7 -1
- package/src/actions/public/estimateGas.ts +20 -30
- package/src/actions/public/getBlock.ts +3 -6
- package/src/actions/public/getTransaction.ts +3 -6
- package/src/actions/public/getTransactionConfirmations.ts +2 -7
- package/src/actions/public/getTransactionReceipt.ts +4 -7
- package/src/actions/public/simulateContract.ts +7 -1
- package/src/actions/public/verifyHash.ts +1 -1
- package/src/actions/public/verifyMessage.ts +1 -1
- package/src/actions/public/verifyTypedData.ts +1 -1
- package/src/actions/public/watchBlocks.ts +3 -1
- package/src/actions/test/sendUnsignedTransaction.ts +18 -32
- package/src/actions/wallet/sendTransaction.ts +27 -36
- package/src/chains/formatters/celo.ts +102 -0
- package/src/chains/formatters/optimism.ts +88 -0
- package/src/{chains.ts → chains/index.ts} +13 -56
- package/src/errors/version.ts +1 -1
- package/src/index.ts +6 -9
- package/src/types/chain.ts +8 -1
- package/src/types/fee.ts +1 -0
- package/src/types/formatter.ts +26 -17
- package/src/types/rpc.ts +1 -1
- package/src/types/serializer.ts +19 -0
- package/src/types/transaction.ts +24 -4
- package/src/types/utils.ts +5 -5
- package/src/utils/chain.ts +11 -4
- package/src/utils/formatters/block.ts +5 -17
- package/src/utils/formatters/formatter.ts +32 -0
- package/src/utils/formatters/transaction.ts +7 -21
- package/src/utils/formatters/transactionReceipt.ts +10 -22
- package/src/utils/formatters/transactionRequest.ts +7 -22
- package/src/utils/index.ts +6 -11
- package/src/utils/transaction/getTransactionType.ts +10 -9
- package/src/utils/transaction/serializeAccessList.ts +39 -0
- package/src/utils/transaction/serializeTransaction.ts +11 -34
- package/src/wallet.ts +0 -1
- package/dist/cjs/chains.js.map +0 -1
- package/dist/cjs/utils/formatters/format.js +0 -23
- package/dist/cjs/utils/formatters/format.js.map +0 -1
- package/dist/esm/chains.js.map +0 -1
- package/dist/esm/utils/formatters/format.js +0 -21
- package/dist/esm/utils/formatters/format.js.map +0 -1
- package/dist/types/chains.d.ts +0 -2834
- package/dist/types/chains.d.ts.map +0 -1
- package/dist/types/utils/formatters/format.d.ts +0 -38
- package/dist/types/utils/formatters/format.d.ts.map +0 -1
- package/src/utils/formatters/format.ts +0 -99
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type {
|
2
|
-
export type GetTransactionType<TTransactionSerializable extends TransactionSerializable = TransactionSerializable> = (TTransactionSerializable
|
1
|
+
import type { TransactionSerializable, TransactionSerializableEIP1559, TransactionSerializableEIP2930, TransactionSerializableGeneric, TransactionSerializableLegacy } from '../../types/transaction.js';
|
2
|
+
export type GetTransactionType<TTransactionSerializable extends TransactionSerializable = TransactionSerializable> = (TTransactionSerializable extends TransactionSerializableLegacy ? 'legacy' : never) | (TTransactionSerializable extends TransactionSerializableEIP1559 ? 'eip1559' : never) | (TTransactionSerializable extends TransactionSerializableEIP2930 ? 'eip2930' : never) | (TTransactionSerializable extends TransactionSerializableGeneric ? TTransactionSerializable['type'] : never);
|
3
3
|
export declare function getTransactionType<TTransactionSerializable extends TransactionSerializable>(transaction: TTransactionSerializable): GetTransactionType<TTransactionSerializable>;
|
4
4
|
//# sourceMappingURL=getTransactionType.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getTransactionType.d.ts","sourceRoot":"","sources":["../../../../src/utils/transaction/getTransactionType.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,
|
1
|
+
{"version":3,"file":"getTransactionType.d.ts","sourceRoot":"","sources":["../../../../src/utils/transaction/getTransactionType.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,uBAAuB,EACvB,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAA;AAEnC,MAAM,MAAM,kBAAkB,CAC5B,wBAAwB,SAAS,uBAAuB,GAAG,uBAAuB,IAEhF,CAAC,wBAAwB,SAAS,6BAA6B,GAC3D,QAAQ,GACR,KAAK,CAAC,GACV,CAAC,wBAAwB,SAAS,8BAA8B,GAC5D,SAAS,GACT,KAAK,CAAC,GACV,CAAC,wBAAwB,SAAS,8BAA8B,GAC5D,SAAS,GACT,KAAK,CAAC,GACV,CAAC,wBAAwB,SAAS,8BAA8B,GAC5D,wBAAwB,CAAC,MAAM,CAAC,GAChC,KAAK,CAAC,CAAA;AAEd,wBAAgB,kBAAkB,CAChC,wBAAwB,SAAS,uBAAuB,EAExD,WAAW,EAAE,wBAAwB,GACpC,kBAAkB,CAAC,wBAAwB,CAAC,CAiB9C"}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import type { Hex } from '../../types/misc.js';
|
2
|
+
import type { AccessList } from '../../types/transaction.js';
|
3
|
+
import { type RecursiveArray } from '../encoding/toRlp.js';
|
4
|
+
export declare function serializeAccessList(accessList?: AccessList): RecursiveArray<Hex>;
|
5
|
+
//# sourceMappingURL=serializeAccessList.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"serializeAccessList.d.ts","sourceRoot":"","sources":["../../../../src/utils/transaction/serializeAccessList.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAE5D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAW1D,wBAAgB,mBAAmB,CACjC,UAAU,CAAC,EAAE,UAAU,GACtB,cAAc,CAAC,GAAG,CAAC,CAoBrB"}
|
@@ -2,5 +2,6 @@ import type { Signature } from '../../types/misc.js';
|
|
2
2
|
import type { TransactionSerializable, TransactionSerialized, TransactionType } from '../../types/transaction.js';
|
3
3
|
import { type GetTransactionType } from './getTransactionType.js';
|
4
4
|
export type SerializedTransactionReturnType<TTransactionSerializable extends TransactionSerializable = TransactionSerializable, TTransactionType extends TransactionType = GetTransactionType<TTransactionSerializable>> = TransactionSerialized<TTransactionType>;
|
5
|
+
export type SerializeTransactionFn<TTransactionSerializable extends TransactionSerializable = TransactionSerializable> = typeof serializeTransaction<TTransactionSerializable>;
|
5
6
|
export declare function serializeTransaction<TTransactionSerializable extends TransactionSerializable>(transaction: TTransactionSerializable, signature?: Signature): SerializedTransactionReturnType<TTransactionSerializable>;
|
6
7
|
//# sourceMappingURL=serializeTransaction.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"serializeTransaction.d.ts","sourceRoot":"","sources":["../../../../src/utils/transaction/serializeTransaction.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"serializeTransaction.d.ts","sourceRoot":"","sources":["../../../../src/utils/transaction/serializeTransaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EACV,uBAAuB,EAIvB,qBAAqB,EAIrB,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAWnC,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,yBAAyB,CAAA;AAGhC,MAAM,MAAM,+BAA+B,CACzC,wBAAwB,SAAS,uBAAuB,GAAG,uBAAuB,EAClF,gBAAgB,SAAS,eAAe,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,IACrF,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;AAE3C,MAAM,MAAM,sBAAsB,CAChC,wBAAwB,SAAS,uBAAuB,GAAG,uBAAuB,IAChF,OAAO,oBAAoB,CAAC,wBAAwB,CAAC,CAAA;AAEzD,wBAAgB,oBAAoB,CAClC,wBAAwB,SAAS,uBAAuB,EAExD,WAAW,EAAE,wBAAwB,EACrC,SAAS,CAAC,EAAE,SAAS,GACpB,+BAA+B,CAAC,wBAAwB,CAAC,CAmB3D"}
|
package/dist/types/wallet.d.ts
CHANGED
@@ -3,7 +3,7 @@ export { getAddresses, type GetAddressesReturnType, } from './actions/wallet/get
|
|
3
3
|
export { getPermissions, type GetPermissionsReturnType, } from './actions/wallet/getPermissions.js';
|
4
4
|
export { requestAddresses, type RequestAddressesReturnType, } from './actions/wallet/requestAddresses.js';
|
5
5
|
export { requestPermissions, type RequestPermissionsReturnType, } from './actions/wallet/requestPermissions.js';
|
6
|
-
export { sendTransaction, type
|
6
|
+
export { sendTransaction, type SendTransactionParameters, type SendTransactionReturnType, } from './actions/wallet/sendTransaction.js';
|
7
7
|
export { signMessage, type SignMessageParameters, type SignMessageReturnType, } from './actions/wallet/signMessage.js';
|
8
8
|
export { signTypedData, type SignTypedDataParameters, type SignTypedDataReturnType, } from './actions/wallet/signTypedData.js';
|
9
9
|
export { switchChain, type SwitchChainParameters, } from './actions/wallet/switchChain.js';
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAChF,OAAO,EACL,YAAY,EACZ,KAAK,sBAAsB,GAC5B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,cAAc,EACd,KAAK,wBAAwB,GAC9B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,gBAAgB,EAChB,KAAK,0BAA0B,GAChC,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EACL,kBAAkB,EAClB,KAAK,4BAA4B,GAClC,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EACL,eAAe,EACf,KAAK,
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAChF,OAAO,EACL,YAAY,EACZ,KAAK,sBAAsB,GAC5B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,cAAc,EACd,KAAK,wBAAwB,GAC9B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,gBAAgB,EAChB,KAAK,0BAA0B,GAChC,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EACL,kBAAkB,EAClB,KAAK,4BAA4B,GAClC,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EACL,eAAe,EACf,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,GAC/B,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EACL,WAAW,EACX,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,aAAa,EACb,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,GAC7B,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,WAAW,EACX,KAAK,qBAAqB,GAC3B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,UAAU,EACV,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,gCAAgC,CAAA"}
|
package/package.json
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
"peerDependencies": {
|
16
16
|
"typescript": ">=5.0.4"
|
17
17
|
},
|
18
|
-
"version": "1.0
|
18
|
+
"version": "1.1.0",
|
19
19
|
"files": [
|
20
20
|
"dist",
|
21
21
|
"!dist/**/*.tsbuildinfo",
|
@@ -52,9 +52,9 @@
|
|
52
52
|
"default": "./dist/cjs/accounts/index.js"
|
53
53
|
},
|
54
54
|
"./chains": {
|
55
|
-
"types": "./dist/types/chains.d.ts",
|
56
|
-
"import": "./dist/esm/chains.js",
|
57
|
-
"default": "./dist/cjs/chains.js"
|
55
|
+
"types": "./dist/types/chains/index.d.ts",
|
56
|
+
"import": "./dist/esm/chains/index.js",
|
57
|
+
"default": "./dist/cjs/chains/index.js"
|
58
58
|
},
|
59
59
|
"./contract": {
|
60
60
|
"types": "./dist/types/contract.d.ts",
|
@@ -106,7 +106,7 @@
|
|
106
106
|
"./dist/types/accounts/index.d.ts"
|
107
107
|
],
|
108
108
|
"chains": [
|
109
|
-
"./dist/types/chains.d.ts"
|
109
|
+
"./dist/types/chains/index.d.ts"
|
110
110
|
],
|
111
111
|
"contract": [
|
112
112
|
"./dist/types/contract.d.ts"
|
@@ -24,8 +24,8 @@ export function privateKeyToAccount(privateKey: Hex): PrivateKeyAccount {
|
|
24
24
|
async signMessage({ message }) {
|
25
25
|
return signMessage({ message, privateKey })
|
26
26
|
},
|
27
|
-
async signTransaction(transaction) {
|
28
|
-
return signTransaction({ privateKey, transaction })
|
27
|
+
async signTransaction(transaction, { serializer } = {}) {
|
28
|
+
return signTransaction({ privateKey, transaction, serializer })
|
29
29
|
},
|
30
30
|
async signTypedData(typedData) {
|
31
31
|
return signTypedData({ ...typedData, privateKey })
|
package/src/accounts/types.ts
CHANGED
@@ -3,8 +3,14 @@ import type { HDKey } from '@scure/bip32'
|
|
3
3
|
import type { Address, TypedData } from 'abitype'
|
4
4
|
|
5
5
|
import type { Hash, Hex, SignableMessage } from '../types/misc.js'
|
6
|
-
import type {
|
6
|
+
import type {
|
7
|
+
TransactionSerializable,
|
8
|
+
TransactionSerialized,
|
9
|
+
} from '../types/transaction.js'
|
7
10
|
import type { TypedDataDefinition } from '../types/typedData.js'
|
11
|
+
import type { IsNarrowable } from '../types/utils.js'
|
12
|
+
import type { GetTransactionType } from '../utils/transaction/getTransactionType.js'
|
13
|
+
import type { SerializeTransactionFn } from '../utils/transaction/serializeTransaction.js'
|
8
14
|
|
9
15
|
export type Account<TAddress extends Address = Address> =
|
10
16
|
| JsonRpcAccount<TAddress>
|
@@ -14,7 +20,19 @@ export type AccountSource = Address | CustomSource
|
|
14
20
|
export type CustomSource = {
|
15
21
|
address: Address
|
16
22
|
signMessage: ({ message }: { message: SignableMessage }) => Promise<Hash>
|
17
|
-
signTransaction:
|
23
|
+
signTransaction: <TTransactionSerializable extends TransactionSerializable>(
|
24
|
+
transaction: TTransactionSerializable,
|
25
|
+
args?: {
|
26
|
+
serializer?: SerializeTransactionFn<TTransactionSerializable>
|
27
|
+
},
|
28
|
+
) => Promise<
|
29
|
+
IsNarrowable<
|
30
|
+
TransactionSerialized<GetTransactionType<TTransactionSerializable>>,
|
31
|
+
Hash
|
32
|
+
> extends true
|
33
|
+
? TransactionSerialized<GetTransactionType<TTransactionSerializable>>
|
34
|
+
: Hash
|
35
|
+
>
|
18
36
|
signTypedData: <
|
19
37
|
TTypedData extends TypedData | { [key: string]: unknown },
|
20
38
|
TPrimaryType extends string = string,
|
@@ -2,11 +2,13 @@ import type { Hex } from '../../types/misc.js'
|
|
2
2
|
import type {
|
3
3
|
TransactionSerializable,
|
4
4
|
TransactionSerialized,
|
5
|
-
TransactionType,
|
6
5
|
} from '../../types/transaction.js'
|
7
6
|
import { keccak256 } from '../../utils/hash/keccak256.js'
|
8
7
|
import type { GetTransactionType } from '../../utils/transaction/getTransactionType.js'
|
9
|
-
import {
|
8
|
+
import {
|
9
|
+
type SerializeTransactionFn,
|
10
|
+
serializeTransaction,
|
11
|
+
} from '../../utils/transaction/serializeTransaction.js'
|
10
12
|
|
11
13
|
import { sign } from './sign.js'
|
12
14
|
|
@@ -15,23 +17,24 @@ export type SignTransactionArgs<
|
|
15
17
|
> = {
|
16
18
|
privateKey: Hex
|
17
19
|
transaction: TTransactionSerializable
|
20
|
+
serializer?: SerializeTransactionFn<TTransactionSerializable>
|
18
21
|
}
|
19
22
|
export type SignTransactionReturnType<
|
20
23
|
TTransactionSerializable extends TransactionSerializable = TransactionSerializable,
|
21
|
-
|
22
|
-
> = TransactionSerialized<TTransactionType>
|
24
|
+
> = TransactionSerialized<GetTransactionType<TTransactionSerializable>>
|
23
25
|
|
24
26
|
export async function signTransaction<
|
25
27
|
TTransactionSerializable extends TransactionSerializable,
|
26
28
|
>({
|
27
29
|
privateKey,
|
28
30
|
transaction,
|
31
|
+
serializer = serializeTransaction,
|
29
32
|
}: SignTransactionArgs<TTransactionSerializable>): Promise<
|
30
33
|
SignTransactionReturnType<TTransactionSerializable>
|
31
34
|
> {
|
32
35
|
const signature = await sign({
|
33
|
-
hash: keccak256(
|
36
|
+
hash: keccak256(serializer(transaction)),
|
34
37
|
privateKey,
|
35
38
|
})
|
36
|
-
return
|
39
|
+
return serializer(transaction, signature)
|
37
40
|
}
|
@@ -14,35 +14,29 @@ import {
|
|
14
14
|
import { RawContractError } from '../../errors/contract.js'
|
15
15
|
import type { BlockTag } from '../../types/block.js'
|
16
16
|
import type { Chain } from '../../types/chain.js'
|
17
|
-
import type { Formatter } from '../../types/formatter.js'
|
18
17
|
import type { Hex } from '../../types/misc.js'
|
19
18
|
import type { RpcTransactionRequest } from '../../types/rpc.js'
|
20
19
|
import type { TransactionRequest } from '../../types/transaction.js'
|
21
|
-
import type { MergeIntersectionProperties } from '../../types/utils.js'
|
22
20
|
import { decodeFunctionResult } from '../../utils/abi/decodeFunctionResult.js'
|
23
21
|
import { encodeFunctionData } from '../../utils/abi/encodeFunctionData.js'
|
24
22
|
import { getChainContractAddress } from '../../utils/chain.js'
|
25
23
|
import { numberToHex } from '../../utils/encoding/toHex.js'
|
26
24
|
import { getCallError } from '../../utils/errors/getCallError.js'
|
27
25
|
import { extract } from '../../utils/formatters/extract.js'
|
28
|
-
import { type Formatted, format } from '../../utils/formatters/format.js'
|
29
26
|
import {
|
30
|
-
type
|
27
|
+
type FormattedTransactionRequest,
|
31
28
|
formatTransactionRequest,
|
32
29
|
} from '../../utils/formatters/transactionRequest.js'
|
33
30
|
import { createBatchScheduler } from '../../utils/promise/createBatchScheduler.js'
|
34
31
|
import { assertRequest } from '../../utils/transaction/assertRequest.js'
|
35
32
|
|
36
33
|
export type FormattedCall<
|
37
|
-
|
38
|
-
> =
|
39
|
-
Omit<Formatted<TFormatter, TransactionRequest, true>, 'from'>,
|
40
|
-
TransactionRequest
|
41
|
-
>
|
34
|
+
TChain extends Chain | undefined = Chain | undefined,
|
35
|
+
> = FormattedTransactionRequest<TChain>
|
42
36
|
|
43
37
|
export type CallParameters<
|
44
38
|
TChain extends Chain | undefined = Chain | undefined,
|
45
|
-
> = FormattedCall<
|
39
|
+
> = Omit<FormattedCall<TChain>, 'from'> & {
|
46
40
|
account?: Account | Address
|
47
41
|
batch?: boolean
|
48
42
|
} & (
|
@@ -116,26 +110,22 @@ export async function call<TChain extends Chain | undefined>(
|
|
116
110
|
const blockNumberHex = blockNumber ? numberToHex(blockNumber) : undefined
|
117
111
|
const block = blockNumberHex || blockTag
|
118
112
|
|
119
|
-
const
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
{
|
136
|
-
formatter: formatter || formatTransactionRequest,
|
137
|
-
},
|
138
|
-
) as TransactionRequest
|
113
|
+
const format =
|
114
|
+
client.chain?.formatters?.transactionRequest || formatTransactionRequest
|
115
|
+
const request = format({
|
116
|
+
// Pick out extra data that might exist on the chain's transaction request type.
|
117
|
+
...extract(rest, { formatter: format }),
|
118
|
+
from: account?.address,
|
119
|
+
accessList,
|
120
|
+
data,
|
121
|
+
gas,
|
122
|
+
gasPrice,
|
123
|
+
maxFeePerGas,
|
124
|
+
maxPriorityFeePerGas,
|
125
|
+
nonce,
|
126
|
+
to,
|
127
|
+
value,
|
128
|
+
} as TransactionRequest) as TransactionRequest
|
139
129
|
|
140
130
|
if (batch && shouldPerformMulticall({ request })) {
|
141
131
|
try {
|
@@ -23,7 +23,13 @@ export type EstimateContractGasParameters<
|
|
23
23
|
TAccount extends Account | undefined = undefined,
|
24
24
|
> = ContractFunctionConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'> &
|
25
25
|
Omit<EstimateGasParameters<TChain, TAccount>, 'data' | 'to' | 'value'> &
|
26
|
-
GetValue<
|
26
|
+
GetValue<
|
27
|
+
TAbi,
|
28
|
+
TFunctionName,
|
29
|
+
EstimateGasParameters<TChain> extends EstimateGasParameters
|
30
|
+
? EstimateGasParameters<TChain>['value']
|
31
|
+
: undefined
|
32
|
+
>
|
27
33
|
|
28
34
|
export type EstimateContractGasReturnType = bigint
|
29
35
|
|
@@ -8,31 +8,25 @@ import type { BaseError } from '../../errors/base.js'
|
|
8
8
|
import type { GetAccountParameter } from '../../types/account.js'
|
9
9
|
import type { BlockTag } from '../../types/block.js'
|
10
10
|
import type { Chain } from '../../types/chain.js'
|
11
|
-
import type { Formatter } from '../../types/formatter.js'
|
12
11
|
import type { TransactionRequest } from '../../types/transaction.js'
|
13
|
-
import type { MergeIntersectionProperties } from '../../types/utils.js'
|
14
12
|
import { numberToHex } from '../../utils/encoding/toHex.js'
|
15
13
|
import { getEstimateGasError } from '../../utils/errors/getEstimateGasError.js'
|
16
14
|
import { extract } from '../../utils/formatters/extract.js'
|
17
|
-
import { type Formatted, format } from '../../utils/formatters/format.js'
|
18
15
|
import {
|
19
|
-
type
|
16
|
+
type FormattedTransactionRequest,
|
20
17
|
formatTransactionRequest,
|
21
18
|
} from '../../utils/formatters/transactionRequest.js'
|
22
19
|
import { assertRequest } from '../../utils/transaction/assertRequest.js'
|
23
20
|
import { prepareRequest } from '../../utils/transaction/prepareRequest.js'
|
24
21
|
|
25
22
|
export type FormattedEstimateGas<
|
26
|
-
|
27
|
-
> =
|
28
|
-
Omit<Formatted<TFormatter, TransactionRequest, true>, 'from'>,
|
29
|
-
TransactionRequest
|
30
|
-
>
|
23
|
+
TChain extends Chain | undefined = Chain | undefined,
|
24
|
+
> = FormattedTransactionRequest<TChain>
|
31
25
|
|
32
26
|
export type EstimateGasParameters<
|
33
27
|
TChain extends Chain | undefined = Chain | undefined,
|
34
28
|
TAccount extends Account | undefined = undefined,
|
35
|
-
> = FormattedEstimateGas<
|
29
|
+
> = Omit<FormattedEstimateGas<TChain>, 'from'> &
|
36
30
|
GetAccountParameter<TAccount> &
|
37
31
|
(
|
38
32
|
| {
|
@@ -114,26 +108,22 @@ export async function estimateGas<
|
|
114
108
|
|
115
109
|
assertRequest(args)
|
116
110
|
|
117
|
-
const
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
{
|
134
|
-
formatter: formatter || formatTransactionRequest,
|
135
|
-
},
|
136
|
-
)
|
111
|
+
const format =
|
112
|
+
client.chain?.formatters?.transactionRequest || formatTransactionRequest
|
113
|
+
const request = format({
|
114
|
+
// Pick out extra data that might exist on the chain's transaction request type.
|
115
|
+
...extract(rest, { formatter: format }),
|
116
|
+
from: account.address,
|
117
|
+
accessList,
|
118
|
+
data,
|
119
|
+
gas,
|
120
|
+
gasPrice,
|
121
|
+
maxFeePerGas,
|
122
|
+
maxPriorityFeePerGas,
|
123
|
+
nonce,
|
124
|
+
to,
|
125
|
+
value,
|
126
|
+
} as TransactionRequest)
|
137
127
|
|
138
128
|
const balance = await (client as PublicClient).request({
|
139
129
|
method: 'eth_estimateGas',
|
@@ -9,11 +9,9 @@ import type { Hash } from '../../types/misc.js'
|
|
9
9
|
import type { RpcBlock } from '../../types/rpc.js'
|
10
10
|
import { numberToHex } from '../../utils/encoding/toHex.js'
|
11
11
|
import {
|
12
|
-
type BlockFormatter,
|
13
12
|
type FormattedBlock,
|
14
13
|
formatBlock,
|
15
14
|
} from '../../utils/formatters/block.js'
|
16
|
-
import { format } from '../../utils/formatters/format.js'
|
17
15
|
|
18
16
|
export type GetBlockParameters = {
|
19
17
|
/** Whether or not to include transaction data in the response. */
|
@@ -44,7 +42,7 @@ export type GetBlockParameters = {
|
|
44
42
|
|
45
43
|
export type GetBlockReturnType<
|
46
44
|
TChain extends Chain | undefined = Chain | undefined,
|
47
|
-
> = FormattedBlock<
|
45
|
+
> = FormattedBlock<TChain>
|
48
46
|
|
49
47
|
/**
|
50
48
|
* Returns information about a block at a block number, hash, or tag.
|
@@ -102,7 +100,6 @@ export async function getBlock<
|
|
102
100
|
|
103
101
|
if (!block) throw new BlockNotFoundError({ blockHash, blockNumber })
|
104
102
|
|
105
|
-
|
106
|
-
|
107
|
-
})
|
103
|
+
const format = client.chain?.formatters?.block || formatBlock
|
104
|
+
return format(block)
|
108
105
|
}
|
@@ -6,10 +6,8 @@ import type { Chain } from '../../types/chain.js'
|
|
6
6
|
import type { Hash } from '../../types/misc.js'
|
7
7
|
import type { RpcTransaction } from '../../types/rpc.js'
|
8
8
|
import { numberToHex } from '../../utils/encoding/toHex.js'
|
9
|
-
import { format } from '../../utils/formatters/format.js'
|
10
9
|
import {
|
11
10
|
type FormattedTransaction,
|
12
|
-
type TransactionFormatter,
|
13
11
|
formatTransaction,
|
14
12
|
} from '../../utils/formatters/transaction.js'
|
15
13
|
|
@@ -51,7 +49,7 @@ export type GetTransactionParameters =
|
|
51
49
|
}
|
52
50
|
|
53
51
|
export type GetTransactionReturnType<TChain extends Chain | undefined = Chain> =
|
54
|
-
FormattedTransaction<
|
52
|
+
FormattedTransaction<TChain>
|
55
53
|
|
56
54
|
/**
|
57
55
|
* Returns information about a [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) given a hash or block identifier.
|
@@ -117,7 +115,6 @@ export async function getTransaction<TChain extends Chain | undefined>(
|
|
117
115
|
index,
|
118
116
|
})
|
119
117
|
|
120
|
-
|
121
|
-
|
122
|
-
})
|
118
|
+
const format = client.chain?.formatters?.transaction || formatTransaction
|
119
|
+
return format(transaction)
|
123
120
|
}
|
@@ -2,10 +2,7 @@ import type { PublicClient } from '../../clients/createPublicClient.js'
|
|
2
2
|
import type { Transport } from '../../clients/transports/createTransport.js'
|
3
3
|
import type { Chain } from '../../types/chain.js'
|
4
4
|
import type { Hash } from '../../types/misc.js'
|
5
|
-
import type {
|
6
|
-
FormattedTransactionReceipt,
|
7
|
-
TransactionReceiptFormatter,
|
8
|
-
} from '../../utils/formatters/transactionReceipt.js'
|
5
|
+
import type { FormattedTransactionReceipt } from '../../utils/formatters/transactionReceipt.js'
|
9
6
|
|
10
7
|
import { getBlockNumber } from './getBlockNumber.js'
|
11
8
|
import { getTransaction } from './getTransaction.js'
|
@@ -21,9 +18,7 @@ export type GetTransactionConfirmationsParameters<
|
|
21
18
|
| {
|
22
19
|
hash?: never
|
23
20
|
/** The transaction receipt. */
|
24
|
-
transactionReceipt: FormattedTransactionReceipt<
|
25
|
-
TransactionReceiptFormatter<TChain>
|
26
|
-
>
|
21
|
+
transactionReceipt: FormattedTransactionReceipt<TChain>
|
27
22
|
}
|
28
23
|
|
29
24
|
export type GetTransactionConfirmationsReturnType = bigint
|
@@ -3,10 +3,8 @@ import type { Transport } from '../../clients/transports/createTransport.js'
|
|
3
3
|
import { TransactionReceiptNotFoundError } from '../../errors/transaction.js'
|
4
4
|
import type { Chain } from '../../types/chain.js'
|
5
5
|
import type { Hash } from '../../types/misc.js'
|
6
|
-
import { format } from '../../utils/formatters/format.js'
|
7
6
|
import {
|
8
7
|
type FormattedTransactionReceipt,
|
9
|
-
type TransactionReceiptFormatter,
|
10
8
|
formatTransactionReceipt,
|
11
9
|
} from '../../utils/formatters/transactionReceipt.js'
|
12
10
|
|
@@ -17,7 +15,7 @@ export type GetTransactionReceiptParameters = {
|
|
17
15
|
|
18
16
|
export type GetTransactionReceiptReturnType<
|
19
17
|
TChain extends Chain | undefined = Chain | undefined,
|
20
|
-
> = FormattedTransactionReceipt<
|
18
|
+
> = FormattedTransactionReceipt<TChain>
|
21
19
|
|
22
20
|
/**
|
23
21
|
* Returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms.html#transaction-receipt) given a [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash.
|
@@ -54,8 +52,7 @@ export async function getTransactionReceipt<TChain extends Chain | undefined>(
|
|
54
52
|
|
55
53
|
if (!receipt) throw new TransactionReceiptNotFoundError({ hash })
|
56
54
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
}) as GetTransactionReceiptReturnType<TChain>
|
55
|
+
const format =
|
56
|
+
client.chain?.formatters?.transactionReceipt || formatTransactionReceipt
|
57
|
+
return format(receipt) as GetTransactionReceiptReturnType<TChain>
|
61
58
|
}
|
@@ -38,7 +38,13 @@ export type SimulateContractParameters<
|
|
38
38
|
CallParameters<TChainOverride extends Chain ? TChainOverride : TChain>,
|
39
39
|
'batch' | 'to' | 'data' | 'value'
|
40
40
|
> &
|
41
|
-
GetValue<
|
41
|
+
GetValue<
|
42
|
+
TAbi,
|
43
|
+
TFunctionName,
|
44
|
+
CallParameters<TChain> extends CallParameters
|
45
|
+
? CallParameters<TChain>['value']
|
46
|
+
: undefined
|
47
|
+
>
|
42
48
|
|
43
49
|
export type SimulateContractReturnType<
|
44
50
|
TAbi extends Abi | readonly unknown[] = Abi,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import type { Address } from 'abitype'
|
2
2
|
|
3
|
-
import type { Chain } from '../../chains.js'
|
3
|
+
import type { Chain } from '../../chains/index.js'
|
4
4
|
import type { PublicClient } from '../../clients/createPublicClient.js'
|
5
5
|
import type { Transport } from '../../clients/transports/createTransport.js'
|
6
6
|
import { universalSignatureValidatorAbi } from '../../constants/abis.js'
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { Chain } from '../../chains.js'
|
1
|
+
import type { Chain } from '../../chains/index.js'
|
2
2
|
import type { PublicClient } from '../../clients/createPublicClient.js'
|
3
3
|
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
4
|
import type { ByteArray, Hex, SignableMessage } from '../../types/misc.js'
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { Chain } from '../../chains.js'
|
1
|
+
import type { Chain } from '../../chains/index.js'
|
2
2
|
import type { PublicClient } from '../../clients/createPublicClient.js'
|
3
3
|
import type { Transport } from '../../clients/transports/createTransport.js'
|
4
4
|
import type { ByteArray, Hex } from '../../types/misc.js'
|
@@ -3,6 +3,7 @@ import type { Transport } from '../../clients/transports/createTransport.js'
|
|
3
3
|
import type { BlockTag } from '../../types/block.js'
|
4
4
|
import type { Chain } from '../../types/chain.js'
|
5
5
|
import type { GetTransportConfig } from '../../types/transport.js'
|
6
|
+
import { formatBlock } from '../../utils/formatters/block.js'
|
6
7
|
import { observe } from '../../utils/observe.js'
|
7
8
|
import { poll } from '../../utils/poll.js'
|
8
9
|
import { stringify } from '../../utils/stringify.js'
|
@@ -170,7 +171,8 @@ export function watchBlocks<
|
|
170
171
|
params: ['newHeads'],
|
171
172
|
onData(data: any) {
|
172
173
|
if (!active) return
|
173
|
-
const
|
174
|
+
const format = client.chain?.formatters?.block || formatBlock
|
175
|
+
const block = format(data.result)
|
174
176
|
onBlock(block, prevBlock)
|
175
177
|
prevBlock = block
|
176
178
|
},
|