viem 0.0.0-main.20230814T212021 → 0.0.0-multicall-types-20230815163843
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/dist/cjs/actions/getContract.js.map +1 -1
- package/dist/cjs/actions/public/multicall.js +3 -4
- package/dist/cjs/actions/public/multicall.js.map +1 -1
- package/dist/cjs/chains/index.js +1 -2
- package/dist/cjs/chains/index.js.map +1 -1
- package/dist/cjs/clients/decorators/public.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/errors/version.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/abi/decodeAbiParameters.js.map +1 -1
- package/dist/cjs/utils/abi/decodeDeployData.js.map +1 -1
- package/dist/cjs/utils/abi/decodeErrorResult.js.map +1 -1
- package/dist/cjs/utils/abi/decodeFunctionResult.js.map +1 -1
- package/dist/cjs/utils/abi/encodeAbiParameters.js.map +1 -1
- package/dist/cjs/utils/abi/encodeDeployData.js.map +1 -1
- package/dist/cjs/utils/abi/encodeEventTopics.js.map +1 -1
- package/dist/cjs/utils/abi/encodePacked.js.map +1 -1
- package/dist/cjs/utils/poll.js +1 -1
- package/dist/cjs/utils/poll.js.map +1 -1
- package/dist/cjs/utils/typedData.js +2 -2
- package/dist/cjs/utils/typedData.js.map +1 -1
- package/dist/esm/actions/getContract.js.map +1 -1
- package/dist/esm/actions/public/multicall.js +3 -5
- package/dist/esm/actions/public/multicall.js.map +1 -1
- package/dist/esm/chains/index.js +0 -1
- package/dist/esm/chains/index.js.map +1 -1
- package/dist/esm/clients/decorators/public.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/errors/version.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/abi/decodeAbiParameters.js.map +1 -1
- package/dist/esm/utils/abi/decodeDeployData.js.map +1 -1
- package/dist/esm/utils/abi/decodeErrorResult.js.map +1 -1
- package/dist/esm/utils/abi/decodeFunctionResult.js.map +1 -1
- package/dist/esm/utils/abi/encodeAbiParameters.js.map +1 -1
- package/dist/esm/utils/abi/encodeDeployData.js.map +1 -1
- package/dist/esm/utils/abi/encodeEventTopics.js.map +1 -1
- package/dist/esm/utils/abi/encodePacked.js.map +1 -1
- package/dist/esm/utils/poll.js +1 -1
- package/dist/esm/utils/poll.js.map +1 -1
- package/dist/esm/utils/typedData.js +2 -2
- package/dist/esm/utils/typedData.js.map +1 -1
- package/dist/types/accounts/types.d.ts +1 -1
- package/dist/types/accounts/types.d.ts.map +1 -1
- package/dist/types/accounts/utils/signTypedData.d.ts +1 -1
- package/dist/types/accounts/utils/signTypedData.d.ts.map +1 -1
- package/dist/types/actions/getContract.d.ts +5 -5
- package/dist/types/actions/getContract.d.ts.map +1 -1
- package/dist/types/actions/public/createContractEventFilter.d.ts +3 -3
- package/dist/types/actions/public/createContractEventFilter.d.ts.map +1 -1
- package/dist/types/actions/public/createEventFilter.d.ts +5 -5
- package/dist/types/actions/public/createEventFilter.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/getFilterChanges.d.ts +1 -1
- package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
- package/dist/types/actions/public/getFilterLogs.d.ts +1 -1
- package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
- package/dist/types/actions/public/getLogs.d.ts +4 -4
- package/dist/types/actions/public/getLogs.d.ts.map +1 -1
- package/dist/types/actions/public/multicall.d.ts +5 -5
- package/dist/types/actions/public/multicall.d.ts.map +1 -1
- package/dist/types/actions/public/readContract.d.ts +1 -1
- package/dist/types/actions/public/readContract.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/watchContractEvent.d.ts +3 -3
- package/dist/types/actions/public/watchContractEvent.d.ts.map +1 -1
- package/dist/types/actions/public/watchEvent.d.ts +4 -4
- package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
- package/dist/types/actions/wallet/deployContract.d.ts +3 -3
- package/dist/types/actions/wallet/deployContract.d.ts.map +1 -1
- package/dist/types/actions/wallet/signTypedData.d.ts +1 -1
- package/dist/types/actions/wallet/signTypedData.d.ts.map +1 -1
- package/dist/types/actions/wallet/writeContract.d.ts +1 -1
- package/dist/types/actions/wallet/writeContract.d.ts.map +1 -1
- package/dist/types/chains/index.d.ts +36 -154
- package/dist/types/chains/index.d.ts.map +1 -1
- package/dist/types/clients/decorators/public.d.ts +11 -11
- package/dist/types/clients/decorators/public.d.ts.map +1 -1
- package/dist/types/clients/decorators/wallet.d.ts +3 -3
- package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/errors/version.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/contract.d.ts +2 -2
- package/dist/types/types/contract.d.ts.map +1 -1
- package/dist/types/types/multicall.d.ts +8 -8
- package/dist/types/types/multicall.d.ts.map +1 -1
- package/dist/types/types/typedData.d.ts +3 -3
- package/dist/types/types/typedData.d.ts.map +1 -1
- package/dist/types/utils/abi/decodeAbiParameters.d.ts +2 -2
- package/dist/types/utils/abi/decodeAbiParameters.d.ts.map +1 -1
- package/dist/types/utils/abi/decodeDeployData.d.ts +3 -3
- package/dist/types/utils/abi/decodeDeployData.d.ts.map +1 -1
- package/dist/types/utils/abi/decodeErrorResult.d.ts +3 -3
- package/dist/types/utils/abi/decodeErrorResult.d.ts.map +1 -1
- package/dist/types/utils/abi/decodeEventLog.d.ts +3 -3
- package/dist/types/utils/abi/decodeEventLog.d.ts.map +1 -1
- package/dist/types/utils/abi/decodeFunctionResult.d.ts +4 -4
- package/dist/types/utils/abi/decodeFunctionResult.d.ts.map +1 -1
- package/dist/types/utils/abi/encodeAbiParameters.d.ts +2 -2
- package/dist/types/utils/abi/encodeAbiParameters.d.ts.map +1 -1
- package/dist/types/utils/abi/encodeDeployData.d.ts +3 -3
- package/dist/types/utils/abi/encodeDeployData.d.ts.map +1 -1
- package/dist/types/utils/abi/encodeErrorResult.d.ts +4 -4
- package/dist/types/utils/abi/encodeErrorResult.d.ts.map +1 -1
- package/dist/types/utils/abi/encodeEventTopics.d.ts +4 -4
- package/dist/types/utils/abi/encodeEventTopics.d.ts.map +1 -1
- package/dist/types/utils/abi/encodeFunctionData.d.ts +4 -4
- package/dist/types/utils/abi/encodeFunctionData.d.ts.map +1 -1
- package/dist/types/utils/abi/encodeFunctionResult.d.ts +4 -4
- package/dist/types/utils/abi/encodeFunctionResult.d.ts.map +1 -1
- package/dist/types/utils/abi/encodePacked.d.ts +3 -3
- package/dist/types/utils/abi/encodePacked.d.ts.map +1 -1
- package/dist/types/utils/abi/getAbiItem.d.ts +3 -3
- package/dist/types/utils/abi/getAbiItem.d.ts.map +1 -1
- package/dist/types/utils/signature/hashTypedData.d.ts +1 -1
- package/dist/types/utils/signature/hashTypedData.d.ts.map +1 -1
- package/dist/types/utils/signature/recoverTypedDataAddress.d.ts +1 -1
- package/dist/types/utils/signature/recoverTypedDataAddress.d.ts.map +1 -1
- package/dist/types/utils/signature/verifyTypedData.d.ts +1 -1
- package/dist/types/utils/signature/verifyTypedData.d.ts.map +1 -1
- package/dist/types/utils/typedData.d.ts +1 -1
- package/dist/types/utils/typedData.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/accounts/types.ts +1 -1
- package/src/accounts/utils/signTypedData.ts +1 -1
- package/src/actions/getContract.ts +6 -5
- package/src/actions/public/createContractEventFilter.ts +3 -3
- package/src/actions/public/createEventFilter.ts +6 -6
- package/src/actions/public/estimateContractGas.ts +1 -1
- package/src/actions/public/getFilterChanges.ts +1 -1
- package/src/actions/public/getFilterLogs.ts +1 -1
- package/src/actions/public/getLogs.ts +5 -5
- package/src/actions/public/multicall.ts +19 -12
- package/src/actions/public/readContract.ts +1 -1
- package/src/actions/public/simulateContract.ts +1 -1
- package/src/actions/public/watchContractEvent.ts +3 -3
- package/src/actions/public/watchEvent.ts +5 -5
- package/src/actions/wallet/deployContract.ts +3 -3
- package/src/actions/wallet/signTypedData.ts +1 -1
- package/src/actions/wallet/writeContract.ts +1 -1
- package/src/chains/index.ts +0 -1
- package/src/clients/decorators/public.ts +20 -15
- package/src/clients/decorators/wallet.ts +3 -3
- package/src/errors/version.ts +1 -1
- package/src/index.ts +1 -0
- package/src/types/contract.ts +1 -2
- package/src/types/multicall.ts +14 -11
- package/src/types/typedData.ts +2 -3
- package/src/utils/abi/decodeAbiParameters.ts +7 -8
- package/src/utils/abi/decodeDeployData.ts +3 -3
- package/src/utils/abi/decodeErrorResult.ts +3 -8
- package/src/utils/abi/decodeEventLog.ts +3 -3
- package/src/utils/abi/decodeFunctionResult.ts +4 -6
- package/src/utils/abi/encodeAbiParameters.ts +8 -9
- package/src/utils/abi/encodeDeployData.ts +3 -3
- package/src/utils/abi/encodeErrorResult.ts +4 -4
- package/src/utils/abi/encodeEventTopics.ts +4 -9
- package/src/utils/abi/encodeFunctionData.ts +4 -4
- package/src/utils/abi/encodeFunctionResult.ts +4 -4
- package/src/utils/abi/encodePacked.ts +6 -8
- package/src/utils/abi/getAbiItem.ts +3 -3
- package/src/utils/poll.ts +1 -1
- package/src/utils/signature/hashTypedData.ts +1 -1
- package/src/utils/signature/recoverTypedDataAddress.ts +1 -1
- package/src/utils/signature/verifyTypedData.ts +1 -1
- package/src/utils/typedData.ts +2 -3
@@ -1,9 +1,4 @@
|
|
1
|
-
import type {
|
2
|
-
Abi,
|
3
|
-
AbiParameter,
|
4
|
-
AbiParameterToPrimitiveType,
|
5
|
-
Narrow,
|
6
|
-
} from 'abitype'
|
1
|
+
import type { Abi, AbiParameter, AbiParameterToPrimitiveType } from 'abitype'
|
7
2
|
|
8
3
|
import { AbiEventNotFoundError } from '../../errors/abi.js'
|
9
4
|
import { FilterTypeNotSupportedError } from '../../errors/log.js'
|
@@ -29,13 +24,13 @@ export type EncodeEventTopicsParameters<
|
|
29
24
|
> = {
|
30
25
|
eventName?: _EventName
|
31
26
|
} & (TEventName extends string
|
32
|
-
? { abi:
|
27
|
+
? { abi: TAbi; args?: GetEventArgs<TAbi, TEventName> }
|
33
28
|
: _EventName extends string
|
34
|
-
? { abi: [
|
29
|
+
? { abi: [TAbi[number]]; args?: GetEventArgs<TAbi, _EventName> }
|
35
30
|
: never)
|
36
31
|
|
37
32
|
export function encodeEventTopics<
|
38
|
-
TAbi extends Abi | readonly unknown[],
|
33
|
+
const TAbi extends Abi | readonly unknown[],
|
39
34
|
TEventName extends string | undefined = undefined,
|
40
35
|
>({ abi, eventName, args }: EncodeEventTopicsParameters<TAbi, TEventName>) {
|
41
36
|
let abiItem = abi[0] as AbiItem
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { Abi
|
1
|
+
import type { Abi } from 'abitype'
|
2
2
|
|
3
3
|
import { AbiFunctionNotFoundError } from '../../errors/abi.js'
|
4
4
|
import type {
|
@@ -20,13 +20,13 @@ export type EncodeFunctionDataParameters<
|
|
20
20
|
> = {
|
21
21
|
functionName?: _FunctionName
|
22
22
|
} & (TFunctionName extends string
|
23
|
-
? { abi:
|
23
|
+
? { abi: TAbi } & GetFunctionArgs<TAbi, TFunctionName>
|
24
24
|
: _FunctionName extends string
|
25
|
-
? { abi: [
|
25
|
+
? { abi: [TAbi[number]] } & GetFunctionArgs<TAbi, _FunctionName>
|
26
26
|
: never)
|
27
27
|
|
28
28
|
export function encodeFunctionData<
|
29
|
-
TAbi extends Abi | readonly unknown[],
|
29
|
+
const TAbi extends Abi | readonly unknown[],
|
30
30
|
TFunctionName extends string | undefined = undefined,
|
31
31
|
>({
|
32
32
|
abi,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { Abi
|
1
|
+
import type { Abi } from 'abitype'
|
2
2
|
|
3
3
|
import {
|
4
4
|
AbiFunctionNotFoundError,
|
@@ -22,16 +22,16 @@ export type EncodeFunctionResultParameters<
|
|
22
22
|
> = {
|
23
23
|
functionName?: _FunctionName
|
24
24
|
} & (TFunctionName extends string
|
25
|
-
? { abi:
|
25
|
+
? { abi: TAbi; result?: ContractFunctionResult<TAbi, TFunctionName> }
|
26
26
|
: _FunctionName extends string
|
27
27
|
? {
|
28
|
-
abi: [
|
28
|
+
abi: [TAbi[number]]
|
29
29
|
result?: ContractFunctionResult<TAbi, _FunctionName>
|
30
30
|
}
|
31
31
|
: never)
|
32
32
|
|
33
33
|
export function encodeFunctionResult<
|
34
|
-
TAbi extends Abi | readonly unknown[],
|
34
|
+
const TAbi extends Abi | readonly unknown[],
|
35
35
|
TFunctionName extends string | undefined = undefined,
|
36
36
|
>({
|
37
37
|
abi,
|
@@ -2,7 +2,6 @@ import type {
|
|
2
2
|
AbiParameterToPrimitiveType,
|
3
3
|
AbiType,
|
4
4
|
Address,
|
5
|
-
Narrow,
|
6
5
|
SolidityAddress,
|
7
6
|
SolidityArrayWithoutTuple,
|
8
7
|
SolidityBool,
|
@@ -32,18 +31,17 @@ type PackedAbiType =
|
|
32
31
|
| SolidityString
|
33
32
|
| SolidityArrayWithoutTuple
|
34
33
|
|
35
|
-
type EncodePackedValues<
|
34
|
+
type EncodePackedValues<
|
35
|
+
TPackedAbiTypes extends readonly PackedAbiType[] | readonly unknown[],
|
36
|
+
> = {
|
36
37
|
[K in keyof TPackedAbiTypes]: TPackedAbiTypes[K] extends AbiType
|
37
38
|
? AbiParameterToPrimitiveType<{ type: TPackedAbiTypes[K] }>
|
38
39
|
: unknown
|
39
40
|
}
|
40
41
|
|
41
42
|
export function encodePacked<
|
42
|
-
TPackedAbiTypes extends PackedAbiType[] | unknown[],
|
43
|
-
>(
|
44
|
-
types: Narrow<TPackedAbiTypes>,
|
45
|
-
values: EncodePackedValues<TPackedAbiTypes>,
|
46
|
-
): Hex {
|
43
|
+
const TPackedAbiTypes extends readonly PackedAbiType[] | readonly unknown[],
|
44
|
+
>(types: TPackedAbiTypes, values: EncodePackedValues<TPackedAbiTypes>): Hex {
|
47
45
|
if (types.length !== values.length)
|
48
46
|
throw new AbiEncodingLengthMismatchError({
|
49
47
|
expectedLength: types.length as number,
|
@@ -59,7 +57,7 @@ export function encodePacked<
|
|
59
57
|
return concat(data)
|
60
58
|
}
|
61
59
|
|
62
|
-
function encode<TPackedAbiType extends PackedAbiType | unknown>(
|
60
|
+
function encode<const TPackedAbiType extends PackedAbiType | unknown>(
|
63
61
|
type: TPackedAbiType,
|
64
62
|
value: EncodePackedValues<[TPackedAbiType]>[0],
|
65
63
|
isArray = false,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { Abi, AbiParameter, Address
|
1
|
+
import type { Abi, AbiParameter, Address } from 'abitype'
|
2
2
|
|
3
3
|
import type { GetFunctionArgs, InferItemName } from '../../types/contract.js'
|
4
4
|
import { isAddress } from '../address/isAddress.js'
|
@@ -7,7 +7,7 @@ export type GetAbiItemParameters<
|
|
7
7
|
TAbi extends Abi | readonly unknown[] = Abi,
|
8
8
|
TItemName extends string = string,
|
9
9
|
> = {
|
10
|
-
abi:
|
10
|
+
abi: TAbi
|
11
11
|
name: InferItemName<TAbi, TItemName>
|
12
12
|
} & Partial<GetFunctionArgs<TAbi, TItemName>>
|
13
13
|
|
@@ -22,7 +22,7 @@ export type GetAbiItemReturnType<
|
|
22
22
|
>
|
23
23
|
|
24
24
|
export function getAbiItem<
|
25
|
-
TAbi extends Abi | readonly unknown[],
|
25
|
+
const TAbi extends Abi | readonly unknown[],
|
26
26
|
TItemName extends string,
|
27
27
|
>({
|
28
28
|
abi,
|
package/src/utils/poll.ts
CHANGED
@@ -21,7 +21,7 @@ export function poll<TData>(
|
|
21
21
|
const unwatch = () => (active = false)
|
22
22
|
|
23
23
|
const watch = async () => {
|
24
|
-
let data: TData | void
|
24
|
+
let data: TData | void = undefined
|
25
25
|
if (emitOnBegin) data = await fn({ unpoll: unwatch })
|
26
26
|
|
27
27
|
const initialWait = (await initialWaitTime?.(data)) ?? interval
|
@@ -23,7 +23,7 @@ export type HashTypedDataParameters<
|
|
23
23
|
export type HashTypedDataReturnType = Hex
|
24
24
|
|
25
25
|
export function hashTypedData<
|
26
|
-
TTypedData extends TypedData | { [key: string]: unknown },
|
26
|
+
const TTypedData extends TypedData | { [key: string]: unknown },
|
27
27
|
TPrimaryType extends string = string,
|
28
28
|
>({
|
29
29
|
domain: domain_,
|
@@ -15,7 +15,7 @@ export type RecoverTypedDataAddressParameters<
|
|
15
15
|
export type RecoverTypedDataAddressReturnType = Address
|
16
16
|
|
17
17
|
export async function recoverTypedDataAddress<
|
18
|
-
TTypedData extends TypedData | { [key: string]: unknown },
|
18
|
+
const TTypedData extends TypedData | { [key: string]: unknown },
|
19
19
|
TPrimaryType extends string = string,
|
20
20
|
>({
|
21
21
|
domain,
|
@@ -35,7 +35,7 @@ export type VerifyTypedDataReturnType = boolean
|
|
35
35
|
* @returns Whether or not the signature is valid. {@link VerifyTypedDataReturnType}
|
36
36
|
*/
|
37
37
|
export async function verifyTypedData<
|
38
|
-
TTypedData extends TypedData | { [key: string]: unknown },
|
38
|
+
const TTypedData extends TypedData | { [key: string]: unknown },
|
39
39
|
TPrimaryType extends string = string,
|
40
40
|
>({
|
41
41
|
address,
|
package/src/utils/typedData.ts
CHANGED
@@ -11,7 +11,7 @@ import { numberToHex } from './encoding/toHex.js'
|
|
11
11
|
import { bytesRegex, integerRegex } from './regex.js'
|
12
12
|
|
13
13
|
export function validateTypedData<
|
14
|
-
TTypedData extends TypedData | { [key: string]: unknown },
|
14
|
+
const TTypedData extends TypedData | { [key: string]: unknown },
|
15
15
|
TPrimaryType extends string = string,
|
16
16
|
>({
|
17
17
|
domain,
|
@@ -63,8 +63,7 @@ export function validateTypedData<
|
|
63
63
|
}
|
64
64
|
|
65
65
|
// Validate domain types.
|
66
|
-
if (types
|
67
|
-
validateData(types['EIP712Domain'], domain)
|
66
|
+
if (types.EIP712Domain && domain) validateData(types.EIP712Domain, domain)
|
68
67
|
|
69
68
|
if (primaryType !== 'EIP712Domain') {
|
70
69
|
// Validate message types.
|