viem 0.0.0-w-20230818182852 → 0.0.0-w-20230818191151
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/types/actions/public/multicall.d.ts +1 -1
- package/dist/types/actions/public/multicall.d.ts.map +1 -1
- package/dist/types/types/multicall.d.ts +10 -12
- package/dist/types/types/multicall.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/actions/public/multicall.ts +1 -1
- package/src/types/multicall.ts +22 -27
@@ -19,7 +19,7 @@ export type MulticallReturnType<contracts extends readonly unknown[] = readonly
|
|
19
19
|
error?: Error;
|
20
20
|
} = {
|
21
21
|
error: Error;
|
22
|
-
}> = MulticallResults<contracts
|
22
|
+
}> = MulticallResults<Narrow<contracts>, allowFailure, {
|
23
23
|
mutability: 'pure' | 'view';
|
24
24
|
} & options>;
|
25
25
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAK5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,0BAA0B,CAAA;AAMjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAG/C,MAAM,MAAM,mBAAmB,CAC7B,SAAS,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,iBAAiB,EAAE,EACnE,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,OAAO,SAAS;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CACjC,GAAG,EAAE,IACJ,IAAI,CAAC,cAAc,EAAE,aAAa,GAAG,UAAU,CAAC,GAAG;IACrD,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,SAAS,EAAE,kBAAkB,CAC3B,MAAM,CAAC,SAAS,CAAC,EACjB;QAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,OAAO,CAC1C,CAAA;IACD,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,mBAAmB,CAC7B,SAAS,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,iBAAiB,EAAE,EACnE,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,OAAO,SAAS;IACd,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,IAClB,gBAAgB,CAClB,SAAS,
|
1
|
+
{"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAK5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,0BAA0B,CAAA;AAMjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAG/C,MAAM,MAAM,mBAAmB,CAC7B,SAAS,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,iBAAiB,EAAE,EACnE,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,OAAO,SAAS;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CACjC,GAAG,EAAE,IACJ,IAAI,CAAC,cAAc,EAAE,aAAa,GAAG,UAAU,CAAC,GAAG;IACrD,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,SAAS,EAAE,kBAAkB,CAC3B,MAAM,CAAC,SAAS,CAAC,EACjB;QAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,OAAO,CAC1C,CAAA;IACD,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,mBAAmB,CAC7B,SAAS,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,iBAAiB,EAAE,EACnE,YAAY,SAAS,OAAO,GAAG,IAAI,EACnC,OAAO,SAAS;IACd,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,IAClB,gBAAgB,CAClB,MAAM,CAAC,SAAS,CAAC,EACjB,YAAY,EACZ;IAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,OAAO,CAC1C,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAsB,SAAS,CAC7B,KAAK,CAAC,SAAS,SAAS,SAAS,OAAO,EAAE,EAC1C,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,YAAY,SAAS,OAAO,GAAG,IAAI,EAEnC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,EAChC,UAAU,EAAE,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,GACvD,OAAO,CAAC,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAqHvD"}
|
@@ -12,15 +12,6 @@ export type MulticallContract<abi extends Abi | readonly unknown[] = Abi, mutabi
|
|
12
12
|
functionName: functionName | FunctionName<abi extends Abi ? abi : Abi, mutability>;
|
13
13
|
args: Widen<args> | Args<abi extends Abi ? abi : Abi, mutability, functionName>;
|
14
14
|
};
|
15
|
-
export type MulticallResponse<result = unknown, error = unknown, allowFailure extends boolean = true> = allowFailure extends true ? {
|
16
|
-
error?: undefined;
|
17
|
-
result: result;
|
18
|
-
status: 'success';
|
19
|
-
} | {
|
20
|
-
error: unknown extends error ? Error : error;
|
21
|
-
result?: undefined;
|
22
|
-
status: 'failure';
|
23
|
-
} : result;
|
24
15
|
export type MulticallContracts<contracts extends readonly unknown[], options extends {
|
25
16
|
mutability: AbiStateMutability;
|
26
17
|
optional?: boolean;
|
@@ -47,10 +38,17 @@ export type MulticallResults<contracts extends readonly unknown[] = readonly Mul
|
|
47
38
|
error: Error;
|
48
39
|
mutability: AbiStateMutability;
|
49
40
|
}> = {
|
50
|
-
[index in keyof contracts]:
|
51
|
-
result
|
52
|
-
] extends [never] ? unknown : result : unknown, options['error'], allowFailure>;
|
41
|
+
[index in keyof contracts]: ContractFunctionReturnType<contracts[index], options['mutability']> extends infer result ? [result] extends [never] ? MulticallResponse<unknown, options['error'], allowFailure> : MulticallResponse<result, options['error'], allowFailure> : never;
|
53
42
|
};
|
43
|
+
export type MulticallResponse<result = unknown, error = unknown, allowFailure extends boolean = true> = allowFailure extends true ? {
|
44
|
+
error?: undefined;
|
45
|
+
result: result;
|
46
|
+
status: 'success';
|
47
|
+
} | {
|
48
|
+
error: unknown extends error ? Error : error;
|
49
|
+
result?: undefined;
|
50
|
+
status: 'failure';
|
51
|
+
} : result;
|
54
52
|
type GetMulticallContract<contract, mutability extends AbiStateMutability> = contract extends {
|
55
53
|
abi: infer abi extends Abi;
|
56
54
|
} ? contract extends {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../../src/types/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAE/D,OAAO,KAAK,EACV,IAAI,EACJ,0BAA0B,EAC1B,YAAY,EACZ,KAAK,EACN,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,MAAM,MAAM,iBAAiB,CAC3B,GAAG,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,GAAG,GAAG,EAC1C,UAAU,SAAS,kBAAkB,GAAG,kBAAkB,EAC1D,YAAY,SAAS,YAAY,CAC/B,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,EAC3B,UAAU,CACX,GAAG,MAAM,EACV,IAAI,SAAS,IAAI,CACf,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,EAC3B,UAAU,EACV,YAAY,CACb,GAAG,IAAI,CAAC,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,UAAU,EAAE,YAAY,CAAC,IAC7D,SAAS,EAAE,SAAS,IAAI,GACxB;IACE,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,GAAG,CAAA;IACR,YAAY,EACR,YAAY,GACZ,YAAY,CAAC,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,UAAU,CAAC,CAAA;IACzD,IAAI,CAAC,EACD,KAAK,CAAC,IAAI,CAAC,GACX,IAAI,CAAC,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,UAAU,EAAE,YAAY,CAAC,GAC3D,SAAS,CAAA;CACd,GACD;IACE,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,GAAG,CAAA;IACR,YAAY,EACR,YAAY,GACZ,YAAY,CAAC,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,UAAU,CAAC,CAAA;IACzD,IAAI,EACA,KAAK,CAAC,IAAI,CAAC,GACX,IAAI,CAAC,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,UAAU,EAAE,YAAY,CAAC,CAAA;CAChE,CAAA;AAEL,MAAM,MAAM,
|
1
|
+
{"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../../src/types/multicall.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/types/multicall.ts
CHANGED
@@ -43,20 +43,6 @@ export type MulticallContract<
|
|
43
43
|
| Args<abi extends Abi ? abi : Abi, mutability, functionName>
|
44
44
|
}
|
45
45
|
|
46
|
-
export type MulticallResponse<
|
47
|
-
result = unknown,
|
48
|
-
error = unknown,
|
49
|
-
allowFailure extends boolean = true,
|
50
|
-
> = allowFailure extends true
|
51
|
-
?
|
52
|
-
| { error?: undefined; result: result; status: 'success' }
|
53
|
-
| {
|
54
|
-
error: unknown extends error ? Error : error
|
55
|
-
result?: undefined
|
56
|
-
status: 'failure'
|
57
|
-
}
|
58
|
-
: result
|
59
|
-
|
60
46
|
export type MulticallContracts<
|
61
47
|
contracts extends readonly unknown[],
|
62
48
|
options extends {
|
@@ -137,21 +123,30 @@ export type MulticallResults<
|
|
137
123
|
mutability: AbiStateMutability
|
138
124
|
} = { error: Error; mutability: AbiStateMutability },
|
139
125
|
> = {
|
140
|
-
[index in keyof contracts]:
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
?
|
146
|
-
|
147
|
-
|
148
|
-
: result
|
149
|
-
: unknown,
|
150
|
-
options['error'],
|
151
|
-
allowFailure
|
152
|
-
>
|
126
|
+
[index in keyof contracts]: ContractFunctionReturnType<
|
127
|
+
contracts[index],
|
128
|
+
options['mutability']
|
129
|
+
> extends infer result
|
130
|
+
? [result] extends [never]
|
131
|
+
? MulticallResponse<unknown, options['error'], allowFailure>
|
132
|
+
: MulticallResponse<result, options['error'], allowFailure>
|
133
|
+
: never
|
153
134
|
}
|
154
135
|
|
136
|
+
export type MulticallResponse<
|
137
|
+
result = unknown,
|
138
|
+
error = unknown,
|
139
|
+
allowFailure extends boolean = true,
|
140
|
+
> = allowFailure extends true
|
141
|
+
?
|
142
|
+
| { error?: undefined; result: result; status: 'success' }
|
143
|
+
| {
|
144
|
+
error: unknown extends error ? Error : error
|
145
|
+
result?: undefined
|
146
|
+
status: 'failure'
|
147
|
+
}
|
148
|
+
: result
|
149
|
+
|
155
150
|
type GetMulticallContract<
|
156
151
|
contract,
|
157
152
|
mutability extends AbiStateMutability,
|